Микропроцессорные средства и системы 1987 №3 1986 г.

Пажитнов А. Л. - логическая структура компьютерной игры.


УДК 68!.3.06-181.4
A. JI. Пажитнов

логическая структура
компьютерной игры*

Компьютерные игры (КИ) заняли прочнее место в
программном обеспечении ЭВМ. В западных странах
это уже целая индустрия. У нас в стране КИ планиру-
ются как основной компонент программного обеспече-
ния (ПО) для бьповых компьютеров. В производствен-
ной сфсре КИ будут использоваться в качестве обучаю-
щих тренажеров, а также как одно из средств пси-
хологической разгрузки персонала. Важное место зай-
мут игры и в обучении (одна из форм компьютерных
обучающих программ). В психологии КИ используются
в качестве диагностических и тренипговых методик.
Сами по себе КИ как предмет использования в других
областях человеческой деятельности и как новое явле-
ние культуры становятся объектом изучения психологии.

Проанализируем структуру типичней компьютерной
игры с точки зрения ее внутреннего устройства и функ-
ционирования во время игрового взаимодействия. Ре-
зультат такого анализа, возможно, поможет приблизить-
ся к пониманию законов создания КИ, а также оцени-
ть и классифицировать их.

Понятие игры и игровой деятельности вообще слиш-
ком широко, чтобы провести сколько-нибудь содержа-
тельный анализ. Поэтому ограничим наше рассмотрение
компьютерными играми реального времени на персо-
нальной ЭВМ (ПЭВМ) для одного играющего без при-
менения специального оборудования (дополнительных
клавиатур, «мыщек», «джойстиков» и пр.).

Игра такого рода с точки зрения играющего пред-
ставляет собой определенную задачу — в ней имеются
условия, цель и средства ее достижения. Решение зада-
чи — процесс, управляемый играющим в реальном вре-
мени по установленным правилам. Течение процесса
оценивается по установленному критерию.

Выделим в КИ три функциональные компоненты: иг-
ровую среду (ИС), взаимодействие с играющим и оцен-
ку игровой ситуации. При очевидной связи и взаимоза-
висимости их можно рассматривать как самостоятель-
ные.

Игровая среда — это совокупность всех объек-
тов и связей в игре и законов их изменения. Другими
словами, ИС — это основа, «мир», в котором развивает-
ся игровое действие. Так, в шахматах игровой средой
будет совокупность, в которую входят: доска, два на-
бора фигур, правила перемещения фигур по доске, а
также правила взятия (и превращения) фигур. В попу-
лярной КИ «Посадка на Луну» игровой средой будет
вектор, описывающий параметры «сажаемого на Луну
корабля» (массу, запас топлива, высоту, скорость), а
также некоторое уравнение, связывающее эти парамет-
ры. Для распространенной КИ «Расшап» ИС — это ла-
биринт, в котором передвигаются персонажи: один, уп-
равляемый играющим, и несколько «врагов», управляе-
мых программой,

* Статья представляет собой переработанный для журнала
текст доклада, прочитанного автором 13 мая 1986 г. в Боль-
шом зале Политехнического музея на семинаре «Компьютер-
ные игры».

Взаимодействие с играющим — это сово-
купность средств, предоставляемых играющему для из-
менений игровой среды, т. е для действий и измене-
ний в ИС, которые происходят, когда играющий нажи-
мает определенные клавиши дисплея. Заметим, что иг-
ры реального времени от игр-головоломок отличаются
именно этой компонентой: в играх реального времени
период времени между нажатиями существенно влияет
на хед игры,

Опенка игровой ситуации — это соотноше-
ния и условия, которые определяют задачу для играю-
щего в данной игре. Сюда включается система очков
и штрафов за игровые действия, описание начальной и
конечной игровой ситуации.

Из перечисленных компонент важнейшая, безуслов-»
но, — это игровая среда. Если она найдена удачно, то,
изменяя другие компоненты, можно создать вариант
игры с теми или иными свойствами (темпом, сложно-
стью).

После разработки игры на функциональном уровне
(когда создана ИС. определены средства взаимодейст-
вия с играющим и намечена система оценок) начинает-
ся этап разработки компьютерной программы, реализую-
щей данную игру.

Игровая программа состоит, как правило, из двух
частей: первая реализует внутреннюю (логическую)
структуру КИ, т. е. отображение игры в системе ма-
шинных данных и алгоритмов, вторая — отображает
процесс игры на экране терминала для играющего. Хо-
тя вторая часть, определяющая форму протекания игры9
связана больше с эстетическими и эргономическими кри-
териями и не является, на наш взгляд, основной при
создании новой игры, ей в настоящее время придается
огромное значение. В зарубежных КИ эксплуатируется
довольно небольшое количество идей, реализованных с
незначительными модификациями в правилах, но в ог-
ромном множестве внешних форм. В смысле программи-
рования изобразительная сторона игры — значительно
более трудоемкая часть, нежели логическая. Тем не ме-
нее основу игровой программы составляет ее логиче-
ская структура.

Подавляющее большинство КИ рассматриваемого на-
ми типа имеет более или менее сходную логическую
структуру. Выделим в ней три иерархических уровня
(плана) — оперативный, тактический и стратегический.
Эти уровни находят, как правило, адекватное представ-
ление в структуре компьютерной программы.

Оперативный план — это совокупность дейст-
вий внутри программы между двумя возможными воз-
действиями играющего. Это, как правило, передвижение
на один шаг всех движущихся персонажей, элементар-
ные изменения игровых ресурсов (времени игры и др.).
В оперативный план входит также опрос, было ли воз-
действие играющего и, если было, соответствующая ре-
акция на него. Все изменения ИС за данный шаг обя-
зательно отображаются на экране терминала.

Этот план наиболее тесно связан с компонентой КИ,
которую мы назвали взаимодействием с играющим.

Разработка этого плана — наиболее критическое мес-
то (ограничения реального времени чувствуются сильнее
всего). Поэтому разработчики стремятся к тому, чтобп
совокупность изменений ИС на этом уровне была мини«
мальной. Тогда можно иметь достаточный темп игры f
уделить большее внимание изобразительной части.

Тактический план — это совокупность игровые

Микроироцессорные средства и
системы.—1985.—№ 3.—С. 15.

7. Кочетков Г. £>. Компьютерные
игоы: свет и тени//Там же.— С.
16—20.

8. Дьюдни А. К. Путешествие с
роботами в Роботрополе и овла-
дение навыками конструирова-

ния электронных микросхем // В
мире науки.—1985.— № 9, — С,
94—99.

9. Видеоигры для имитации поля
боя // Электроника. — 1985. —
№ б.—С. 17—19.

10. Богомолов Ю Остальное де-
ло техники? // Советская культу-

ра.-— 1987.—17 февраля.

11. Литературная газета. — 1985.—
№ 35.— С. 8.

12. Communication of ACM.—1984.—
May.—P. 411.

13. Нандзё M, Тенденции развития
персональных ЭВМ // Computer
Report.—1984,— N 2.—С. 18—21.

действий, ведущих к достижению какой-либо локальной
цели. Это наименее четко выделяемый уровень в струк-
туре КИ. Хотя в некоторых играх он может вообще
отсутствовать, для большинства КИ характерна сле-
дующая ситуация. Играющий действиями на оператив-
ном уровне достшает в игре некоторого кульминацион-
ного положения, в результате чего он получает ощу-
тимый выигрыш (или проигрыш). После этого в ИС
происходят значительные изменения и начинается но-
вый «тур». Так, в играх со стрельбой играющий, пере-
двигая «пушку» (или цель), прицеливается, а затем
«стреляет» (нажимая клавишу, служащую спусковым
крючком), после чего фиксируется попадание (или про-
мах) и появляется новая цель.

Часть программы, реализующая подобный тур, и яв-
ляется тактическим уровнем игры. Тактический план, ес-
тественно, включает в себя оперативный план, но имеет
и собственную часть. В ней, как правило, более де-
тально оценивается игровая ситуация и более значи-
тельно изменяется ИС (соответственно меняется экспо-
зиция на экране). Это придает игре своеобразный ритм.
Для игр с переменной сложностью — таких, в которых
задача для играющего усложняется по мере роста его
совершенствования в игре — сложность очередного тура
выбирается именно в тактическом плане.

Тактический план игры лучше всего можно соотнести
с компонентой, которую мы назвали оценкой игровой
ситуации.

Стратегический план — это совокупность
действий по созданию и поддержке ИС. Сюда входит
тактический план, а также некоторые собственные дей-
ствия, а именно: инициализация всех объектов и пара-
метров, участвующих в игре; генерация основной игро-
вой экспозиции; отслеживание критерия окончания иг-
ры; фиксация результатов игры.

Поскольку именно на стратегическом уровне опреде-
ляются объекты и связи игры, то он лучше всего
соотносится с компонентой КИ, которую мы назвали
игровой средой. Эта часть программы наиболее разно-
образна в разных играх, именно в ней проявляется вся
изобретательность и оригинальность разработчика.

Исходя из проведенного анализа структуры КИ реаль-
ного времени можно предложить обобщенную схему
программы для реализации таких игр. Воспользуемся
нотацией языка Паскаль и наметим состав головной
программы КИ рассматриваемого типа (см. рисунок).
Содержание вызываемых процедур определяется, собст-
венно, конкретными правилами.

В процедуре Initialize-All инициализируются все эле-
менты и параметры ИС, не подлежащие изменению в
ходе игры. Как правило, такие действия необходимы,
так как не все языки программирования позволяют
иметь константы или инициализировать переменные оп-
ределенной структурной сложности.

В процедуре Draw-Poster на экране пишутся назва-
ние игры, имена авторов и другая справочная инфор-
мация. 1

Логическая функция Help-Needed задает играющему
вопрос, знаком ли он с правилами игры? Если нет, то
процедура Write-Help-Text выдает на экран терминала
сведения о том, как пользоваться игрой.

Цикл REPEAT—UNTIL реализует стратегический
план игры,

В процедуре Define-Players-Level у играющего уточ-
няется уровень сложности, на котором он хотел бы иг-
рать, и устанавливаются соответствующие параметры.
В зависимости от них в процедуре Initialize-Game ус-
танавливаются начальные значения для переменных ИС,
изменяющихся в ходе игры.

Внутри цикла WHILE Not-End-of-Ciame DO
BEGIN... bND реализуется тактический план игры.
О нем — ниже.

Стратегический уровень заканчивается вызовами двух
процедур: Give-Mark дает дифференцированную оцен-
ку проведенной игре; Save-Result служит для запоми-

BEG1N «С Main >

lnitialize_.All;

Draw_Poster;

IF Help_Needed

THEN Write_Halp_Texi *

•C ++*•++ Strategic level ++++++ >

REPEAT

Definej5 layers_Level5

Initialize J3ame;

WHILE Not_End_Of JBarae DO

-С ++++* Tactic level +++*+ y

BEGIN
Init ializeJIicroGame

(Level_0f_Player,Current_Result);
WHILE Not_End_Of_MicroGame~DQ

1 *++++ Operating level у

BEGIN

Step;

Ask.Management;

Delay(Current_.delay) j
END;

<C - Cp2ratin9 level - >

Change Score;

END;

•C —— Tactic level - >

Givo_Mark;

Save Jte suit;

UNTIL Once_More;

{.- Strategic level - >

END. С Main У

нання результата игры в таблице рекордов. После
окончания цикла логическая функция Once-More спра-
шивает играющего, хочет ли он сыграть еще.

Тактический план построен аналогично стратегиче-
скому. В начале в процедуре Initialize-Micro-Game
генерируется очередная игровая ситуация. (Мы изобра-
зили эту процедуру с параметрами, характеризующими
квалификацию играющего и достигнутые резулылты
с тем, чтобы подчеркнуть, что в принципе сложность
очередной тактической задачи может зависеть от этих
факторов.)

Далее следует цикл, реализующий оперативный план.

Последняя процедура тактического плана — Chan-
ge-Score— служит для подведения результатов для
очередной локальной ситуации в игре.

Управление циклом тактического плана осуществля-
ется логической функцией Not_End-of-Game, в кото-
рой проверяются все условия окончания игры. В неко-
торых случаях это может быть простая логическая пе-
ременная.

Оперативный план — самый внутренний цикл в схеме.
Им управляет, как и в случае тактического плана, ло-
гическая функция Not_End-of-Micro-Gamev которая
проверяет условия перехода к следующей игровой си-
туации. Чаще — это логическая переменная или про-
верка какого-то условия.

Процедура Step производит все локальные изменения
ИС за один шаг.

Процедура Аьк — Management проверяет, было ли в
течение данного цикла управляющее воздействие и (ес-
ли было) внесение соответствующих изменений в ход
игры.

Delay — процедура, реализующая задержку для соз-
дания приемлемого темпа игры. Она приведена здесь с
параметром, чтобы подчеркнуть, что для воссоздания
равномерного темпа игры величина задержки может ме-
няться. Чаще всего она изменяется в процедуре
Ask — Management, поскольку времена реакции на раз-
личные воздействия могут заметно отличаться.

В заключение описания данной схемы заметим, что
она не претендует на оптимальность реализации и пол-
ный охват всех возможных структур игр. Однако на

логическом уровне большинство КИ реального времени
могут быть сведены к подобной схеме.

Подобное рассмотрение структуры КИ дает возмож-
ность классифицировать игры и целенаправленно иjме-
нять их в процессе разработки, сообразуясь с той или
иной потребностью, ради которой пишется игра.

Каждый из рассмотренных планов игры можно соот-
нести с определенным характером деятельности в игре,
так как от играющего требуется тренированность раз-
личных психологических качеств.

Так, оперативный план ближе всего к психофизиоло-
гическим реакциям (ощущениям и психомоторике) Для
успешных действий на оперативном уровне требуются
концентрация внимания, быстрота реакций, психомо-
торная координация.

Тактический план относится к более высоким уров-
ням психической деятельности. Для успешных тактиче-
ских действий нужны эмоциональная устойчивость, зри-
тельная память, адекватное восприятие и осознание си-
туации, умение быстро принимать решение.

Стратегический план относится преимущественно к
интеллектуальной деятельности. Здесь играющему не-
обходимы те качества, которые позволяют решать за-
дачи: воображение, логическое и комбинаторное мыш-
ление и др.

Поэтому психологическая характеристика игры (а тем
самым и класс ее адресатов) может быть определена
из того, как распределена нагрузка игры по трем уров-
ням и как оцениваются действия на каждом из них.

Если на стратегическом уровне ставится тривиальная
задача, каждая новая ситуация в тактическом плане
проста, то для того, чтобы игра представляла хоть ка-
кой-то интерес, вся нагрузка приходится на оператив-
ный уровень. При этом получаются очень динамичные
игры, протекающие за короткое время с большим эмо-
циональным напряжением. Это наиболее любимые игры
для детей младшего и среднего школьного возраста.
Есть смысл назвать их «автоматными играми», посколь-
ку по содержанию и характеристикам они ничем не от-
личаются от игр игровых автоматов.

Игры с примитивной стратегической задачей, но боль-
шим разнообразием ситуаций, персонажей, препятствий
и целей (с нагруженным тактическим планом) — наи-
более популярный и захватывающий класс игр. Их мож-
но назвать «ситуативными» или «авантюрными». Такие
игры бывают содержательно интересны для играющего
только на этапе освоения игры. Затем, когда успеш-
ные реакции на типичные ситуации закрепляются, центр
нагрузки у играющего перемещается в оперативный
план, и если играющий продолжает играть в данную
игру, то не столько ради процесса игры, сколько ради
достижения высокого результата.

Игры со сложной задачей на стратегическом уровне,
как правило, протекают в низком темпе (оперативный
план сводится, по существу, к ограничению времени на
обдумывание очередного хода) и чаще имеют обеднен-
ный тактический план. Иногда тактический план в та-
ких играх не выделен, сливаясь со стратегическим.
Эти игры есть смысл назвать «компьютерными голово-
ломками». Обычно это скучноватые игры, не пользую-
щиеся широкой популярностью.

Лучшими, на наш взгляд, получаются игры, в кото-
рых все три плана нагружены равномерно. Если игро-
вая среда, для которой возможно подобное распределе-
ние нагрузки, получается, то это большая (и редкая)
удача разработчика. Такая среда, как правило, бывает
достаточно богатой и позволяет поставить внутри себя
большое разнообразие задач, а значит создать мною
вариантов игры и распределить их по уровням слож-
ности. Поэтому интерес к игре может быть поддержан
достаточно долго. Подобные игры имеют еще то пре-
имущество, что недостаточная тренированность на од-
ном из уровней может быть скомпенсирована на дру-
гом, и игра бывает интересна для широкого круга иг-
рающих.

Заметим, что такие «сбалансированные» игры часто

обладают тренинговым эффектом, поскольку недостаток
того или иного качества не мешает играющему полу-
чать средние результаты за счет наличия других, и тем
самым не отвращает его от игры. Стремление же полу-
чить лучший результат — стимул тренировки всех необ-
ходимых качеств.

Адрес для справок: 117333, Москва, ил. Вавилов а, 40,
ВЦ АН СССР.

Статья поступила 20 сентября 1986 г.




СОДЕРЖАНИЕ:


  Оставте Ваш отзыв:

  НИК/ИМЯ
  ПОЧТА (шифруется)
  КОД



Темы: Игры, Программное обеспечение, Пресса, Аппаратное обеспечение, Сеть, Демосцена, Люди, Программирование

Похожие статьи:
Рассказ - Нетерпение сердца (окончание).
Старье - обзор игры: Beamrider.
Бук - из жизни водопроводчиков.
E-Mail - Cейчас я (TJ) буду отвечать на ваши письма: Moroz 1999, Riskey, Scalessman.
B.B.S. Новости - Правила работы с сервером.

В этот день...   23 ноября