Файл: В начале был дизайнер.pdf

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 06.05.2024

Просмотров: 222

Скачиваний: 0

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

124
Нульмерные пространства
Действия всех игр происходят в пространстве? Давайте посмотрим на игру “20 вопросов”, где один игрок думает об объекте, а другой задает ему вопросы “да и нет”, пытаясь угадать, что это за объект. Тут нет игрового поля и двигающихся фигур – вся игра – это два разговаривающих человека. Можно сказать, что в этой игре нет пространства. С другой стороны, вы можете открыть для себя что-то полезное, если подумаете об игре, которая происходит в пространстве, что изображено на рисунке 10.8.
Рис. 10.8
Мозг отвечающего содержит секретный объект. Мозг спрашивающего – это то место, где происходит обработка предыдущих ответов, а пространство разговора между ними – это то, как они обмениваются информацией. В каждой игре есть некий вид информации или “состояние” (о чем мы поговорим в пункте Механика 2), который должен где-то существовать. То есть, если игра происходит в одной точке в нульмерном пространстве, полезно рассматривать ее как пространство. Вы можете обнаружить, что создание абстрактной модели для игры, пространство которой с первого взгляда кажется тривиальным, открывает доселе неизвестные грани вашего дизайна.
Способность рассматривать игровое пространство в функционально абстрактном смысле – очень важная черта геймдизайнера, которой и посвящается Линза #21:.
Линза #14: Линза Функционального Пространства
Чтобы воспользоваться этой линзой, подумайте о том, в каком именно пространстве происходят действия вашей игры, когда все внешние элементы отходят на задний план.
Спросите себя:
● Пространство этой игры раздельное или бесконечное?
● Сколько в ней есть размерностей?
● Что собой представляют границы пространства?
● Есть ли под-пространства? Как они соединены?
Есть ли еще полезные способы создать абстрактные модели пространства этой

125 игры?
Думая про игровые пространства, можно легко поддаться влиянию эстетики. Есть много способов представления игрового пространства, и все они хороши до тех пор, пока приносят пользу. Если вы думаете об игровом пространстве как о чем-то исключительно абстрактном, это помогает не отвлекаться на внешние аспекты и сосредоточиться на тех видах игровых взаимодействий, которые вы хотите видеть в вашей игре. Конечно, как только вы будете удовлетворены вашим абстрактным пространством, вы захотите применить к нему соответствующую эстетику. Если вы способны одновременно видеть абстрактное функциональное пространство и эстетику этого пространства, которую увидит игрок, а также то, как они соотносятся, вы можете уверенно принимать решения относительно формы вашего игрового мира.
Механика 2: Объекты, свойства и состояния
Пространство без ничего – это просто пространство. Внутри вашего игрового пространства обязательно должны быть объекты. Персонажи, знаки, табло, в общем, все, что можно видеть, и чем можно управлять в вашей игре — попадает под эту категорию. Объекты – это “существительные” игровых механик. Теоретически могут быть случаи, когда пространство само является объектом, но чаще пространство и объекты достаточно разные, чтобы их можно было легко отличать друг от друга. Объекты обычно имеют одно или несколько свойств, одно из которых часто является текущей позицией в игровом пространстве.
Свойства – это категории информации об объектах. Например, в гоночном симуляторе свойствами автомобиля может быть текущая и максимальная скорость. У каждого свойства есть текущее состояние. Состояние свойства “максимальной скорости” может составлять 150 миль в час, тогда как состояние свойства “текущей скорости” может составлять 75 миль в час, если этот показатель является той скоростью, с которой двигается автомобиль. Состояние максимальной скорости сильно не меняется, если только вы не приобретаете апгрейды для вашего мотора. В то же время текущая скорость
– это постоянно меняющийся показатель.
Если мы называем объекты существительными игровых механик, то свойства и состояния – это их прилагательные.
Свойства могут быть постоянными (такими как цвет шашки), которые не изменяются в течение игры, или динамичными (у шашки есть свойство “режима движения” с тремя возможными состояниями: “нормальное”, “дамка”, “захваченное”).
Нас интересуют, в первую очередь, динамичные состояния.
Вот еще два примера:
1 В шахматах у короля есть свойство “режима движения” с тремя важными состояниями (“свободное движение”, “шаг”, “мат”).


126 2 В Монополии всякую собственность на игровом поле можно рассматривать как динамичное свойство “количества построек” с шестью состояниями (0, 1, 2, 3, 4, отель), а также как свойство “закладной” с двумя состояниями (да, нет).
Важно ли информировать игрока о каждом изменении состояния? Не обязательно.
Некоторые изменения состояний лучше оставить скрытыми. Но есть и такие, о которых сообщать игроку очень важно. Обязательно следуйте правилу: если два объекта ведут себя одинаково, они должны выглядеть одинаково. Если они ведут себя по-разному, выглядеть они должны тоже по-разному.
Объекты в видеоиграх, особенно те, которые представляют собой персонажей с развитым AI, имеют столько свойств и состояний, что геймдизайнер может легко в них запутаться. Часто может быть полезным составить диаграмму состояний для каждого свойства, чтобы вы могли лучше понять, какие состояния связаны между собой и что является катализатором их изменений. В рамках игрового программирования, применение состояния свойства как “конечного автомата” может помочь контролировать всю эту сложность и облегчить процесс дебага. Рисунок 10.9 – это простая диаграмма для свойства “движения” привидения в Pac Man.
Рис. 10.9
Круг, который обозначен “в клетке” — это изначальное состояние привидения
(двойной круг часто используется для отображения стартовой позиции). Каждая стрелка показывает возможные смены состояния вместе с событиями, которые провоцируют эти смены. Диаграммы вроде этой очень полезны, когда нужно создать сложное поведение в игре. Они заставляют вас обдумать абсолютно все, что может произойти с объектом и что

127 провоцирует эти события. Применяя эту смену состояний в компьютерном коде, вы автоматически запрещаете нежелательные смены (такие как “В клетке” -> “Синий”), что помогает избавиться от сбивающих с толку багов. Эти диаграммы могут быть самыми сложными и иногда иерархичными. Например, вполне возможно, что в алгоритме настоящего Пак-Мана есть несколько суб-состояний “Преследовать Пак-Мана”, такие как
“Найти Пак-Мана”, “На хвосте у Пак-Мана”, “Двигаться через тоннель” и т.д.
Вы сами должны решать, какими будут свойства и состояния каждого объекта.
Часто есть много способов представлять одни и те же вещи. Например, в покере руки игрока можно определить как зону для игрового пространства, в которой находятся пять объектов в виде карт или вы можете решить, что вы не хотите думать о картах как об объектах и тогда просто называете руки игрока объектом, у которого есть пять свойств в виде карт. Как и со всем остальными аспектами геймдизайна, здесь “правильным” способом мышления будет тот, который больше всего подходит вам в данный момент.
Секреты
Касательно игровых свойств и их состояний очень важно решить, кто о каких будет знать. Во многих настольных играх вся информация открыта: иными словами, все о ней знают. В шахматах оба игрока могут видеть все фигуры на доске и все фигуры, которые были захвачены – нет никаких секретов — кроме того, о чем думают остальные игроки. В карточных играх скрытое или приватное состояние – это большая часть игры.
Вы знаете свои карты, но карты оппонента являются для вас тайной, которую вы должны разгадать. Например, покер, в основном заключается в необходимости угадать, какие карты находятся у вашего оппонента, пытаясь скрыть информацию о том, какие карты у вас на руках. Игра становится абсолютно другой, когда вы варьируете открытую и приватную информацию. В традиционном “draw poker” все состояния приватные – игроки могут только угадывать ваши карты, основываясь на том, сколько вы ставите. В “stud poker” некоторые ваши состояния публичные, а некоторые приватные. Это дает оппонентам больше информации о положении друг друга, что делает игру совершенно другой. Такие настольные игры как Морской бой и Stratego целиком основываются на угадывании состояний приватных свойств оппонента.
В видеоиграх мы сталкиваемся с чем-то новым: состояние, о котором знает только сама игра. Это поднимает вопрос о том как, с точки зрения игровой механики, нужно воспринимать виртуальных соперников: как других игроков или просто как часть игры.
Это хорошо показано в истории: В 1980 мой дедушка купил игровую консоль Intelevision, с которой шел картридж Las Vegas Poker and Blackjack. Ему она очень понравилась, но бабушка отказывалась играть. “Он жульничает”, настаивала она. Я сказал ей, что это глупо – это просто компьютер – как он может жульничать? Она объяснила мне: “Он знает все мои карты и все карты, которые в колоде! Как он может не жульничать?” И тогда я должен был признать, что мое объяснение того, что компьютер “не смотрит на них”, когда принимает решения относительно игры, звучали неубедительно. Но это показывает, что в игре было три составляющих, которым были известны состояния различных свойств: мой дедушка, который знал состояние своих карт; алгоритм внутреннего оппонента, который “знал” состояние своих карт; и наконец, главный


128 алгоритм игры, который знал все о картах обоих игроков, о каждой карте в колоде и обо всех остальных аспектах игры.
Значит, с точки зрения открытых/приватных свойств, есть смысл рассматривать виртуального оппонента как отдельную сущность, наравне с игроками. Сама же игра – это тоже отдельная сущность со специальным статусом. Поскольку сама она в игру не играет, то она дает ход процессам, которые делают геймплей возможным. Целия Пирс указывает на другой вид информации, которая скрыта от всех указанных выше сущностей: случайно получаемая информация — такая, как бросок игральных костей. В зависимости от ваших взглядов на судьбу, можно говорить о том, что эта информация даже не существует до того момента, когда она сгенерирована и отображена, так что определять это просто как приватную информацию немного глупо.
Сама же игра – это тоже отдельная сущность со специальным статусом. Поскольку сама она в игру не играет, то она дает ход процессам, которые делают геймплей возможным. Целия Пирс указывает на другой вид информации, которая скрыта от всех указанных выше сущностей: случайно получаемая информация — такая, как бросок игральных костей. В зависимости от ваших взглядов на судьбу, можно говорить о том, что эта информация даже не существует до того момента, когда она сгенерирована и отображена, так что определять это просто как приватную информацию немного глупо.
Чтобы ее понять, хорошо подойдет диаграмма Венна (Venn diagram), которую я называю “иерархией знающих”, с помощью которой можно визуально представить отношения между открытыми и приватными состояниями:
Каждый круг на Рис. 10.10 представляет собой “знающего”. “Знающие” – это God,
the Game и Player 1, 2, 3. Каждый пункт в игре является некой информацией – состоянием свойства.
1   ...   4   5   6   7   8   9   10   11   ...   30

Рис. 10.10
● A – полностью открытая информация, такая как положение фигуры на игровом поле или открытая карта. Всем игрокам она известна.
● B – состояние, о котором знают player 2 и 3, но которое скрыто от player 1.
Возможно, 2 и 3 имеют возможность видеть открытую карту, в то время как player

129 1 не имеет такой возможности. Или, может быть,player 2 и 3 – виртуальные оппоненты player 1, и их алгоритм подразумевает совместное использование информации с целью объединения против player 1.
● C – информация, известная только одному игроку, которым в этом случае является player 2. Это может быть, например, карта, которую он вытащил.
● D – информация, о которой знает игра, но которая не известна игрокам. В некоторых механических настольных играх это состояние существует в физической структуре самой настольной игры, но игрокам оно неизвестно. Stay
Alive — это классический пример такой игры, в которой пластиковый ползунок при перемещении открывает отверстия на игровом поле. Touche — это еще один интересный пример. Здесь под каждой клеткой игрового поля находятся магниты с неизвестной полярностью. Игра “знает” об этих состояниях, но игроки – нет.
Другой пример – настольные ролевые игры, в которых есть “dungeon master” или
“game master”. Этот персонаж не является игроком, но ему известна значительная часть информации об игровых состояниях, поскольку он представляет собой, так сказать, операционный механизм игры. В большинстве компьютерных игр значительная часть информации о внутренних состояниях не известна игрокам.
● E – случайно сгенерированная информация, о которой знает только God.
Игры, в которых игрок обязан держать в голове слишком много состояний
(слишком много игровых элементов, слишком много статистики каждого персонажа), могут запутать его, перенасытив ненужной информацией. В Главе 11 мы поговорим о технике оптимизации количества состояний, которые являются приемлемыми для игрока.
Если вы будете думать о вашей игре строго как о наборе объектов и свойств с изменяющимися состояниями, это откроет вам полезную перспективу, на которой основывается Линза #22:
Линза #22: Линза Динамического Состояния
Чтобы воспользоваться этой линзой, подумайте о том, какая информация меняется в процессе вашей игры и кому эта информация известна. Спросите себя:
● Из каких объектов состоит моя игра?
● Что является свойствами этих объектов?
● Какие возможные состояния есть у каждого свойства? Что провоцирует изменение состояний каждого свойства?
● Какие состояния известны только игре?
● Какие состояния известны всем игрокам?
● Какие состояния известны некоторым или только одному игроку?
● Изменится ли моя игра в лучшую сторону, если я изменю список тех, кому доступна приватная информация.
В игре нужно постоянно принимать решения. Вы принимаете решения, основываясь на


130 информации. Решения относительно различных свойств, их состояний и того, кто о них знает – это ядро механики вашей игры. Небольшое изменение списка “знающих” может радикально изменить вашу игру, иногда в лучшую, а иногда в худшую сторону. Этот список можно изменять даже по ходу игры – отличный способ добавить игре драматичности – сделать открытой некую важную информацию, которая до этого была приватной.
Механика 3: Действия
Следующая важная игровая механика – это действия. Действия – это “глаголы” игровых механик. Существуют два взгляда на действия или, иными словами, два способа ответить на вопрос “Что могут делать игроки?”.
Первый тип действий – это активные действия. Это просто те действия, которые игрок может совершать. Например, в игре шашки доступны три основных действия:
1 Двигать шашку вперед
2 Перепрыгивать через шашки оппонента
3 Двигать шашку назад (только в дамках)
Второй тип действий – результирующие действия. Это действия, которые нужно рассматривать с точки зрения игры в целом – они определяются тем, как именно игрок использует активные действия в процессе достижения цели. Список результирующих действий обычно длиннее списка активных действий. Давайте посмотрим на возможные результирующие действия в шашках:
● Защитить шашку от захвата, поставив сзади нее другую шашку
● Заставить оппонента совершить ненужный ему прыжок
● Пожертвовать шашкой, чтобы обмануть оппонента
● Построить “мост”, чтобы прикрыть задний ряд
● Поместить шашку в “ряд дамок”, чтобы сделать из нее дамку
● …и многие другие
Результирующие действия часто можно описать как незримые взаимодействия внутри самой игры, которые, к тому же, часто представляют собой стратегические ходы.
Эти действия не заложены в правила игры, а скорее являются действиями и стратегиями, которые возникают сами по себе в процессе игры. Большинство геймдизайнеров согласны с тем, что возникающие действия – это признак хорошей игры. Поэтому соотношение значимых результирующих действий и действий управления — это хороший способ измерить количество возникающего поведения, доступное вашей игре. Если игра сделана действительно со вкусом, она позволяет игроку при минимальном количестве действий управления, совершить максимальное количество эффект-ориентированных действий. Следует отметить, что это, в некотором смысле, субъективная мера, потому что количество “значимых” результирующих действий — это личное дело каждого.