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

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

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

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

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

• Переворот с опорой на руки. Сам по себе он не так уж не определен, но он уязвим к множеству каскадных неопределенностей систем более низкого уровня.

• Подсечка. Сама по себе она простая, но уязвима к каскадным неопределенностям нижних уровней.

Не следует идти напролом, работая над всем дизайном, как если бы была стопроцентная гарантия того, что он будет работать. Скорее всего, не будет. Как и в случае с Fantasy Castle, мы должны найти ядро и превратить все остальное в бэклог дизайна.

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



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


Зависимости и потребности внешнего дизайна

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

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

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

Глава 14. Управление

Бригадир Джон устал от рабочих, которые все портят. Поэтому он купил Puppetron – последнее слово в области управления. Ему больше не придется отдавать указания и надеяться, что они будут выполнены правильно. Теперь он мог надеть на голову шлем Puppetron и контролировать все действия рабочих силой мысли. Он стал подобен кукловоду, дергающему за тысячу веревочек, лично координируя действия каждого работника. Это было чудесно.

Бригадир Джон и его команда строили мост. Когда уже половина работ была выполнена, мост рухнул и всех убил.

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


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

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


Банальность зла

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

В качестве наиболее яркого примера можно привести исторический геноцид XX века. Убийственная бюрократия нацистской Германии, СССР и кхмерской Камбоджи включала в основном совершенно нормальных людей, которые, вероятно, стали бы хорошими исполнителями в другое время и в другом месте. Но в определенной организации с определенной культурой и иерархией они стали винтиками в машине смерти. Политический теоретик Ханна Арендт назвала это «банальностью зла». Она поняла, что ужасы бюрократии совершают не хохочущие сумасшедшие, а легионы канцелярских крыс, покорно следующих своим собственным побуждениям.


Рекомендуем почитать
Изучаем 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-проектами. Программист подобен кошке, которая гуляет сама по себе. Так уж исторически сложилось. Именно поэтому так непросто быть руководителем команды разработчиков. Даже если вы еще месяц назад были блестящим и дисциплинированным программистом и вдруг оказались в роли менеджера, вряд ли вы знаете, с чего надо начать, какой выбрать стиль руководства, как нанимать и увольнять сотрудников, проводить совещания, добиваться своевременного выполнения задач.