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

Вокруг взаимодействующих объектов в лучшем случае должно быть два вида областей коллизии – hit box и hurt box. Hit box обеспечивает попадание удара по врагу, а hurt box регистрирует попадание по самому владельцу. При соприкосновении hurt box вашего героя с hit box врага первый получает урон. При соприкосновении hit box игрока с hurt box соперника урон получает враг. Если hit box главного персонажа будет больше, чем hit box монстров, игрок сочтет это вполне справедливым, равно как и ситуацию, в которой hurt box игрока меньше, чем hurt box монстра.

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


Выбор сложности

Не стоит считать добавление выбора уровня сложности панацеей от бед, о которых я говорю. Если вы введете низкую, среднюю и высокую сложности, то у вас будет выбор: сделать всё по-человечески или абы как. Второй вариант наблюдается чаще и не особо поощряется игроками: сбалансированной сложностью является только средняя, в то время как игра в многочисленные проекты на низкой или высокой сложности оказывается упрощена или усложнена искусственно. Под словом «искусственно» я подразумеваю простой и не особо продуманный пересчет баланса в пользу ослабления монстров и увеличения здоровья главному персонажу в случае понижения сложности и обратную процедуру в случае повышения. Монстры при этом ведут себя как и прежде, а платформы и прочие препятствия никоим образом не меняют своего положения. Изменяются только цифры. Это дешевый и скучный метод.

Вариант «сделать по-человечески» подразумевает более вдумчивый подход к созданию выбора сложности, смена которой будет влиять на дизайн уровней, на задержку между атаками врагов и на тысячи других мелочей, которые отнимут у вас времени столько же, сколько, пожалуй, отняло бы создание другой игры. Я никогда не рекомендую маленьким командам так сильно усложнять себе жизнь. Вместо этого можно задуматься о создании Assist Mode – режима, который позволяет откровенно жульничать. В souls-like игре Steelrising есть возможность в любой момент включить бессмертие, что делает проект доступнее для людей, не готовых получать по голове от каждого встреченного монстра. Настроек для помощи игроку в уже много раз упомянутой Celeste просто не счесть: игра позволяет любому тонко отрегулировать правила под себя. В итоге каждый может получить тот опыт, который сам сочтет честным. Если игроку не нравится механика выносливости в этой игре, он может ее отключить, равно как и избавиться от ограничений по количеству рывков или прыжков.

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


Конформизм

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

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

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

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

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

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

Программирование, программы, базы данных
Язык программирования 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 и стандартной библиотеки для быстрого создания надежных программ, а также ознакомьтесь с высокоуровневым программированием• Учитесь на примерах, в которых показаны передовые стили программирования и методики проектирования• Р

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

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