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

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

Почему же так случилось? Безусловно, проблема не в задумке игры. Существует много военных игр, некоторые из которых успешны, некоторые – нет. Counter-Strike стала успешной игрой благодаря механике, а также балансу игры, темпу, мастерству и решениям. Давайте разберем эти решения на стандартном примере из игры Counter-Strike.

Counter-Strike генерирует следующие решения.

Перезарядиться сейчас или позже? Что, если пока я перезаряжаюсь, за углом появится враг? А что, если у меня закончатся патроны во время боя?

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

Покупать ли сейчас оружие? Что будет, если у меня закончатся деньги, а они мне понадобятся? Если я умру в этом раунде, потому что у меня нет оружия?

Как и во всех играх, поддерживающих поток и требующих навыков, эти решения появляются постоянно и с большой скоростью. Двухминутный раунд может включать сто таких решений. Частота настолько высока, что мы не способны проанализировать хотя бы минуту этой игры. Чтобы посмотреть, как работает Counter-Strike, нужно замедлить движение и понаблюдать за мыслями игрока каждую секунду. В этом случае я рассмотрю первые 20 секунд типичного раунда.

Игрок Боб вступает в игру. Боб не сразу начинает играть; он должен сначала посмотреть текущий раунд. Так он может собрать основную информацию: текущая карта de_aztec, Боб в террористической группе, в каждой команде по пять игроков. Табло показывает, что его команда проигрывает. Наблюдая за завершением раунда, он видит, что в команде противника снайпер-эксперт по имени Алиса, которая действует в районе Главного двора с западной стороны.



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

На графике его темп до настоящего момента выглядит так:



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

Начинается следующий раунд. Боб с командой появляется на восточной стороне карты. Он может купить только дешевый пистолет-пулемет МР5 с уменьшенной дальностью стрельбы, поэтому он знает, что находится в невыгодной позиции на открытых площадках. Как он и решил, он идет северной дорогой через мост, потому что он не хочет столкнуться с Алисой, которая, как он предполагает, нападет на Главный двор. Боб хочет обойти ее и использовать свои навыки ближнего боя, чтобы уничтожить ее. «Если я смогу пройти через мост живым, – думает он, – я смогу ударить Алису с близкого расстояния. У меня хороший ближний бой, и ее снайперская винтовка будет бесполезна, если я буду прямо перед ее носом».

Рассмотрим информацию, доступную Бобу на данный момент. Он еще не знает, как движется другая команда, так как она находится на другом конце уровня, за стенами. «Я предполагаю, что они разделились и идут по всем своим путям, – думает он. – Вряд ли они все пойдут одним и тем же маршрутом». Он также не уверен в намерениях своих союзников. Он предпочитает играть с друзьями, так как они могут разрабатывать планы и понимать намерения друг друга. Но сегодня он играет на публичном сервере, известном своими опытными игроками. Все, что он знает о своих товарищах по команде, – это тот факт, что у них хорошие навыки. Благодаря этой метаигровой информации он может предположить, что они выберут оптимальные пути и выстрелят в нужный момент. Но это все, что он может предположить. Боб видит нескольких членов команды с винтовками для дальней стрельбы и делает вывод о том, что они попытаются агрессивно наступать через мост или Главный двор, а не отступить назад и попытаться устроить противнику засаду.

Трое союзников Боба проходят через Двустворчатые двери в Главный двор, а один идет с Бобом. Боб слышит выстрел. Глядя на счетчик убитых, Боб получает новую информацию: в Главном дворе Алиса убила одного из членов его команды. Это не влияет на план Боба; это то, что он ожидал. Поэтому он продолжает свой путь.

Однако приблизившись к мосту, на счетчике убитых Боб видит, что Алиса убита. Теперь карта в представлении Боба выглядит так:



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


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