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

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

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


Разные навыки

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

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

Это весьма распространенная проблема, потому что она возникает везде, где игроки взаимозависимы, а успех зависит от мастерства. Командные сражения Left 4 Dead, StarCraft II и версия зомби-нацистов в Call of Duty: Black Ops – все это отличные дизайны, и все они страдают от проблемы разных навыков.

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

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

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

Бывают и структурные решения. Массовые многопользовательские игры, такие как World of Warcraft, настроены так, что игроки могут играть в одиночку первые несколько часов, не испытывая давления со стороны других игроков, а после того, как они изучат основы, влиться в группу. Иначе говоря, предполагается, что начинающие игроки никогда не должны играть какую-либо роль в командной игре, откуда следует, что они не смогут навредить команде. Аналогичным образом во многих играх как одиночный, так и многопользовательский режим. Прежде чем погрузиться в многопользовательскую игру, игроки сначала учатся в однопользовательском режиме, где их неудачи ни на что не влияют. Это означает, что большинство пользователей, играющих по сети, не будут абсолютными новичками, даже если они не эксперты.

Наконец, игры могут уменьшить разные навыки благодаря хорошему адаптивному обучению. Например, в Left 4 Dead используется адаптивная система обучения, которая сообщает начинающим игрокам алгоритм действий в каждой критической ситуации. Когда зомби-охотник запрыгивает и отключает союзника, на экране мигает сообщение с указанием спасти своего друга. Это происходит при каждом важном действии в игре – выполнение задач, помощь союзникам и получение ресурсов. Таким образом, хотя у новичка может быть плохая цель или сырая стратегия, его, по крайней мере, не оставляют в полной неопределенности.

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

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

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

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


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