Геймдизайн. Рецепты успеха лучших компьютерных игр от Super Mario и Doom до Assassin’s Creed и дальше - [119]

Шрифт
Интервал

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

Теперь мы еще больше увеличили цикл, включив в него другие дисциплины разработки. Текстовые окна заменяются на реальные диалоги. Звукорежиссеры передают атмосферу и звуки сцен. Мы ищем способы выразить нарратив о мире через игровое пространство. Писатели переделывают диалоги. Наконец, тестировщики справляются на отлично, мы исправляем технические неисправности и игра поставляется на рынок.

Это один из способов разработки шутера. Другие итерационные циклы могут значительно отличаться в зависимости от проекта и преследуемых целей. Этот конкретный процесс был основан на механике, поэтому начал его дизайнер боев, работающий над балансом и темпом. Для другой игры может потребоваться хороший нарратив, где сначала происходит итерация сюжета, а затем механики. Кроме того, существуют совершенно разные аспекты дизайна: дизайн персонажей, дизайн интерфейса и дизайн систем требуют разных методов. Некоторые будут представлять короткие циклы, сделанные одним человеком. У других будут длинные циклы продолжительностью в несколько недель с участием 10 разных специалистов. Некоторые разработчики тестируют игру в одиночку, другие тихонько наблюдают со стороны, кто-то использует метрики автоматизированного тестирования или отправляется в специализированные лаборатории.

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


Горизонт планирования

Сколько должен длиться итерационный цикл? Нужно ли тестировать игру каждый день? Каждую неделю? Каждый месяц?

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

ГОРИЗОНТ ПЛАНИРОВАНИЯ – это будущее время, на которое планируется работа.

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

Выбор горизонта планирования в основном зависит от степени точности ваших планов. Если вероятность того, что все пойдет по плану, достаточно высока, горизонт планирования должен быть долгосрочным. Именно так архитекторы проектируют здания вплоть до болтов и гаек – они абсолютно уверены в конфигурации. Если планы склонны меняться, ваш горизонт планирования должен быть краткосрочным. Это похоже на футбольный матч, когда все меняется в зависимости обстоятельств, которые невозможно спрогнозировать. Любой процесс разработки игры находится в некоторой точке между этими двумя крайностями.

Давайте рассмотрим некоторые более конкретные обстоятельства, которые влияют на горизонт планирования.

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

Чем игра менее оригинальна, тем глубже мы можем планировать. The Sims полностью изменились во время разработки, а The Sims 2 – нет, потому что ядро дизайна уже было хорошо разработано в первой игре. Точно так же разработчик шутера от первого лица может заимствовать из других игр всю уже имеющуюся информацию по этому жанру, чтобы понять, как будет работать его собственная игра.

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

Вот почему создание сиквела так сильно отличается от создания оригинала. Некоторые игровые франшизы делают пять сиквелов или больше, незначительно изменяя базовую механику. Это обеспечивает плавность процессов разработки, поскольку дизайн пятого сиквела может зависеть от огромного объема информации, полученной в предыдущих играх.

Исходные игры позволяют только краткосрочное планирование, так как они зависят от элементов, которые еще не были использованы.

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


Рекомендуем почитать
Изучаем Java EE 7

Java Enterprise Edition (Java EE) остается одной из ведущих технологий и платформ на основе Java. Данная книга представляет собой логичное пошаговое руководство, в котором подробно описаны многие спецификации и эталонные реализации Java EE 7. Работа с ними продемонстрирована на практических примерах. В этом фундаментальном издании также используется новейшая версия инструмента GlassFish, предназначенного для развертывания и администрирования примеров кода. Книга написана ведущим специалистом по обработке запросов на спецификацию Java EE, членом наблюдательного совета организации Java Community Process (JCP)


Pro Git

Разработчику часто требуется много сторонних инструментов, чтобы создавать и поддерживать проект. Система Git — один из таких инструментов и используется для контроля промежуточных версий вашего приложения, позволяя вам исправлять ошибки, откатывать к старой версии, разрабатывать проект в команде и сливать его потом. В книге вы узнаете об основах работы с Git: установка, ключевые команды, gitHub и многое другое.В книге рассматриваются следующие темы:основы Git;ветвление в Git;Git на сервере;распределённый Git;GitHub;инструменты Git;настройка Git;Git и другие системы контроля версий.


Java 7

Рассмотрено все необходимое для разработки, компиляции, отладки и запуска приложений Java. Изложены практические приемы использования как традиционных, так и новейших конструкций объектно-ориентированного языка Java, графической библиотеки классов Swing, расширенной библиотеки Java 2D, работа со звуком, печать, способы русификации программ. Приведено полное описание нововведений Java SE 7: двоичная запись чисел, строковые варианты разветвлений, "ромбовидный оператор", NIO2, новые средства многопоточности и др.


Фундаментальные алгоритмы и структуры данных в Delphi

Книга "Фундаментальные алгоритмы и структуры данных в Delphi" представляет собой уникальное учебное и справочное пособие по наиболее распространенным алгоритмам манипулирования данными, которые зарекомендовали себя как надежные и проверенные многими поколениями программистов. По данным журнала "Delphi Informant" за 2002 год, эта книга была признана сообществом разработчиков прикладных приложений на Delphi как «самая лучшая книга по практическому применению всех версий Delphi».В книге подробно рассматриваются базовые понятия алгоритмов и основополагающие структуры данных, алгоритмы сортировки, поиска, хеширования, синтаксического разбора, сжатия данных, а также многие другие темы, тесно связанные с прикладным программированием.


Питон — модули, пакеты, классы, экземпляры

Python - объектно-ориентированный язык сверхвысокого уровня. Python, в отличии от Java, не требует исключительно объектной ориентированности, но классы в Python так просто изучить и так удобно использовать, что даже новые и неискушенные пользователи быстро переходят на ОО-подход.


Как пасти котов. Наставление для программистов, руководящих другими программистами

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