Хочу в геймдев! Основы игровой разработки для начинающих - Вячеслав Николаевич Уточкин
Обозначим за P величину, характеризующую силу и крутость сражающихся сущностей. Назовем ее, например, мощью. Тогда существо, обладающее мощью P1, большей, чем мощь P2 второго существа, в среднем будет одерживать над ним победу в бесконечном числе сражений. В некоторых играх на этом все и заканчивается. Но большинство из нас скажут: подождите, это же очень скучно! И тут на помощь приходят системы характеристик. Гейм-дизайнеры наделяют существ ловкостью, интеллектом, выносливостью и множеством других атрибутов. Для конкретной задачи можно использовать как устоявшуюся систему – из D&D, GURPS, SPECIAL, систему из Diablo и т. д., – так и разработанную самостоятельно. Про каждую из приведенных в пример систем характеристик можно найти массу информации в Сети. По сути, они представляют собой набор параметров персонажа и правил, по которым они влияют на ход боя. Какую бы систему вы ни взяли, за ней будет стоять математическая модель. Если говорить очень грубо, ее задача – свести все параметры сравниваемых объектов к их мощи. Например, одна единица силы может давать +1 к физическому урону и +5 к запасу здоровья. Задумываясь о боевом процессе глубже, мы приходим к выводу, что все характеристики можно привести к урону (или урону в секунду) и запасу здоровья.
Какой персонаж победит? Очевидно, что тот, кто успеет довести до нуля здоровье противника до того, как противник сделает с ним то же самое. Тогда, обозначив за D урон, а за H – запас здоровья, мы можем записать условие победы первого игрока над вторым:
H1/D2 > H2/D1
Вспоминая, что и урон, и запас здоровья, скорее всего, больше нуля, перенесем D1 и D2 в противоположную сторону неравенства:
H1*D1 > H2*D2
Но подождите! Мы же начинали с того, что если какая-то обобщенная характеристика игрока больше той же характеристики другого, то первый, скорее всего, побеждает второго. Так мы и пришли к простой формуле мощи:
P = H*D
Используемые в этой формуле значения урона и запаса здоровья часто называют эффективными или приведенными, потому что они сами рассчитаны из других характеристик персонажа: интеллекта, ловкости и т. д. К примеру, у персонажа с HP0 = 30 и сопротивлением урону 50 % эффективное HP будет 60 (то есть HP0 / 50 %). Таким образом, получив урон 30 (равный первоначальному HP), он потеряет только половину здоровья (15 из 30).
Конечно, представленная модель очень упрощенная, и в реальности все может быть гораздо сложнее. Но нам важно показать логику рассуждений и как вообще можно подойти к проработке собственной боевки. Реальные цифры подгоняются на основании плейтестов.
Есть способности, которые нельзя привести к одному показателю. Например, они могут быть слишком разными либо на первый план выходит навык игрока, а не численные характеристики объектов. Как математически сравнить возможность кидать фаерболы и телепортироваться? Сбалансировать такие вещи можно только с помощью плейтестов.
Рандом (случайность) – тоже инструмент баланса, и многие гейм-дизайнеры им пользуются. Элементы рандома вносят разнообразие и азарт, что добавляет остроты ощущений.
Мощь, навык игрока и рандом – три составляющие игрового баланса, влияющие на победу. Такой подход позволяет слабым игрокам побеждать сильных, не дает последним скучать и расслабляться. Боевые системы по-разному учитывают комбинацию из этих трех сущностей.
Hearthstone – игра, в которой почти идеально сочетаются параметры мощи, рандома и навыка. Здесь играет роль как сила выбранных карт, так и знание игроками разных колод (умение предугадать действия противника позволяет навязать свою тактику боя). В то же время каждая партия уникальна, так как оппонент подбирается случайным образом, а карты из колоды выпадают рандомно.
Если у вашей команды мало опыта, самостоятельно рассчитать игровой баланс и построить рабочую боевую систему будет непросто; имеет смысл обратиться к похожим играм. Перебирать движок чужой игры может оказаться тяжело, но у больших игр есть Wiki, где вы можете отыскать формулы расчетов. Даже если вы не хотите использовать готовые решения, стоит с ними ознакомиться, чтобы было от чего оттолкнуться. При анализе чужой игры тоже следует выписывать значения характеристик, соответствующие, например, уровням персонажа. Так вы сможете определить основные переменные и их зависимость друг от друга.
ДИСБАЛАНС
Иногда гейм-дизайнеры намеренно вводят дисбаланс, чтобы за счет большего количества стратегий победы сделать игру более интересной. Представьте, что вам на последнем ходу удалось победить многократно превосходящего по силе противника, – именно такие игровые моменты вызывают сильные эмоции, их любят стримеры и обозреватели.
Намеренный дисбаланс позволяет уравнять шансы компьютера и игрока или же дает заведомо слабым игрокам преимущества на старте.
Для части игр, где все должны быть более или менее равны, это может оказаться проблемой, для других – добавит разнообразия в геймплей. Стратегические игры нередко перерабатывают баланс юнитов уже после релиза, – это провоцирует игроков на поиск новых стратегий, приносящих интересный опыт.
Гейм-дизайнеры иногда используют термин «дисбаланс по Гарфилду». Он означает бесполезность или гиперполезность отдельных элементов игры. Один из авторов рассуждений на эту тему – Ричард Гарфилд, известный гейм-дизайнер, на счету которого такие карточные игры, как Star Wars TCG и DOTA Artefact. Но главное творение Ричарда стало мировой классикой: Magic: The Gathering.
ПЛЕЙТЕСТЫ И БАЛАНС
К сожалению, универсальной методологии не существует: идеальная математика не гарантирует, что на практике не вскроются несоответствия. Поэтому необходимы плейтесты. Допустим, что по цифрам все сбалансировано, наш персонаж наносит самый большой урон и имеет наибольшее количество жизни, но в реальности все равно постоянно проигрывает. Почему? Плейтесты могут показать, что, например, ему не хватает скорости и он просто не успевает добежать до оппонентов. Возможные результаты таких проверок – корректировка не только цифр, но и механик: например, нашему герою можно добавить способность замедлять противников.
Плейтесты также помогут определить «сложность» вашей игры. Если пока у вас небольшой опыт гейм-дизайнера, то правильно оценить ожидания аудитории может быть нелегко. На самом деле, если аудитория неоднородна, игра в любом случае окажется слишком простой для одних игроков и слишком сложной для других. Вы можете добавлять/менять правила и условия, за счет чего разделять сложность прохождения, чтобы угодить разным категориям игроков, или же ориентироваться на средние показатели, чтобы охватить самую широкую аудиторию.
Во время тестов стоит обратить внимание также на самые популярные решения игроков. Может быть, они покупают какой-то артефакт чаще всех остальных или же никогда не выбирают какое-то действие, хотя, по вашему мнению, оно должно быстрее привести к победе; анализ таких ситуаций поможет избежать появления одной выигрышной стратегии. Для казуальных игр