Читаем Ошибки разработчиков видеоигр. От идеи до провала полностью

К очень непопулярному продукту под названием Exorcist Fairy (рис. 4) один из игроков оставил лаконичный обзор с пальцем вниз и написал следующее: «У персонажа не хватает маны, чтобы открыть ворота». Я увидел его обзор до того, как пройти эту замечательную игрушку, и, когда я сам добрался до этих ворот, я сопоставил время в игре и точно понял, про какое место он говорит. Персонаж в Exorcist Fairy способен выпускать молнии, которые заряжают рычаги, поднимающие ворота. Чем дольше мы удерживаем кнопку, тем больше молний выпускаем и тем сильнее заряжается рычаг. Но молнии расходуют ману, и в некоторых ситуациях она успевает кончиться до того, как рычаг зарядится достаточно, чтобы открыть проход в следующую локацию.

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

Но объяснила ли это игра? Нет. Как и в примере с Pascal’s Wager, авторы Exorcist Fairy не удосужились разжевывать механику, подразумевающую необходимость собирать усиления.

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


Рис. 4. Exorcist fairy. Разработчик 青岛三脚猫工作室, 2021


Человек, игравший во все части Dark Souls, хорошо осведомлен о том, что огромная часть информации о правилах игры и об игровом мире зарыта во всяких меню и в описаниях предметов. Отталкиваясь от такого базового правила соулс-игр, разработчики Pascal’s Wager не сочли нужным прямым текстом объяснять все особенности управления монахиней. Их собственный игровой опыт подсказывал им, что игрок первым делом самостоятельно полезет читать описания всей экипировки и всех ее способностей. Игровой же опыт человека, не разобравшегося со способностью восстанавливать здоровье своему персонажу и оставившего негативный отзыв, явно отличался от опыта разработчиков. С таким относительно базовым правилом игры в продукты подобного жанра он был не знаком. И в этом определенно нет его вины.

Точно такая же ситуация сложилась и с Exorcist Fairy: поиск усилений, которые необходимо применить в ранее посещенных местах, – это ключевой элемент любой метроидвании. Тупики на карте в играх подобного жанра – дело самое обыкновенное, и, чтобы такой тупик преодолеть, всегда необходимо побегать по уровням в поисках новых предметов экипировки, улучшений и способностей. Автор того злосчастного обзора был лишен подобного игрового опыта и оттого счел ситуацию с воротами патовой. Разработчики же, будучи знакомыми с канонами жанра, не удосужились эти каноны лишний раз объяснить.

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

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

Перейти на страницу:

Похожие книги

Язык программирования C++. Пятое издание
Язык программирования C++. Пятое издание

Лучшее руководство по программированию и справочник по языку, полностью пересмотренное и обновленное под стандарт С++11!Р'С‹ держите в руках новое издание популярного и исчерпывающего бестселлера по языку программирования С++, которое было полностью пересмотрено и обновлено под стандарт С++11. Оно поможет вам быстро изучить язык и использовать его весьма эффективными и передовыми способами. Р' соответствии с самыми передовыми и современными методиками изложения материала авторы демонстрируют использование базового языка и его стандартной библиотеки для разработки эффективного, читабельного и мощного кода.С самого начала этой книги читатель знакомится со стандартной библиотекой С++, ее самыми популярными функциями и средствами, что позволяет сразу же приступить к написанию полезных программ, еще не овладев всеми нюансами языка. Большинство примеров из книги было пересмотрено так, чтобы использовать новые средства языка и продемонстрировать РёС… наилучшие СЃРїРѕСЃРѕР±С‹ применения. Эта книга — не только проверенное руководство для новичков в С++, она содержит также авторитетное обсуждение базовых концепций и методик языка С++ и является ценным ресурсом для опытных программистов, особенно желающих побыстрей узнать об усовершенствованиях С++11.Стенли Р'. Липпман работал старшим консультантом в Jet Propulsion Laboratory, архитектором РіСЂСѓРїРїС‹ Visual С++ корпорации Microsoft, техническим сотрудником Bell Laboratories и главным инженером- программистом по анимации в кинокомпаниях Disney, DreamWorks, Pixar и PDI.Р–РѕР·и Лажойе, работающий ныне в кинокомпании Pixar, был членом канадской РіСЂСѓРїРїС‹ разработчиков компилятора C/C++ корпорации IBM, а также возглавлял рабочую группу базового языка С++ в составе международной организации по стандартизации ANSI/ISO.Барбара Э. Му имеет почти тридцатилетний опыт программирования. На протяжении пятнадцати лет она работала в компании AT&T, сотрудничая с Бьярне Страуструпом, автором языка С++, и несколько лет руководила РіСЂСѓРїРїРѕР№ разработчиков С++.• Узнайте, как использовать новые средства языка С++11 и стандартной библиотеки для быстрого создания надежных программ, а также ознакомьтесь с высокоуровневым программированием• Учитесь на примерах, в которых показаны передовые стили программирования и методики проектирования• Р

Барбара Э. Му , Жози Лажойе , Стенли Б. Липпман

Программирование, программы, базы данных
Programming with POSIX® Threads
Programming with POSIX® Threads

With this practical book, you will attain a solid understanding of threads and will discover how to put this powerful mode of programming to work in real-world applications. The primary advantage of threaded programming is that it enables your applications to accomplish more than one task at the same time by using the number-crunching power of multiprocessor parallelism and by automatically exploiting I/O concurrency in your code, even on a single processor machine. The result: applications that are faster, more responsive to users, and often easier to maintain. Threaded programming is particularly well suited to network programming where it helps alleviate the bottleneck of slow network I/O. This book offers an in-depth description of the IEEE operating system interface standard, POSIX (Portable Operating System Interface) threads, commonly called Pthreads. Written for experienced C programmers, but assuming no previous knowledge of threads, the book explains basic concepts such as asynchronous programming, the lifecycle of a thread, and synchronization. You then move to more advanced topics such as attributes objects, thread-specific data, and realtime scheduling. An entire chapter is devoted to "real code," with a look at barriers, read/write locks, the work queue manager, and how to utilize existing libraries. In addition, the book tackles one of the thorniest problems faced by thread programmers-debugging-with valuable suggestions on how to avoid code errors and performance problems from the outset. Numerous annotated examples are used to illustrate real-world concepts. A Pthreads mini-reference and a look at future standardization are also included.

David Butenhof

Программирование, программы, базы данных