Хочу в геймдев! Основы игровой разработки для начинающих - Вячеслав Николаевич Уточкин
Такой подход часто применяется как в классических RPG, так и в любых играх с наличием зон спавна[58]. Это зоны на карте, которые состоят из некоторого количества точек спавна или являются их множеством. При старте игры, к примеру в некоторых популярных battle royale, алгоритм размещает разный лут[59] в разных местах. Еще один популярный кейс – это «Герои Меча и Магии», где существуют точки спавна артефактов, ресурсов и монстров. Однако что именно там появится, задается не обязательно жестко, а неким диапазонным вариантом. Это, безусловно, добавляет реиграбельности[60] этой классической игре. Сюда же с некоторой натяжкой можно отнести все MOBA или action-игры, где каждая игровая сессия проходит на случайной карте.
4. И последний уровень, когда фиксированный контент используется по минимуму или не используется вовсе. Это не уровень, а просто алгоритм, по которому он создается. Такая генерация позволяет получить уникальный игровой опыт. Базовые движки не дают полностью сгенерировать рандомный уровень, нужны будут специфические решения.
Яркий пример – подземелья в классической серии Diablo. Каждый новый заход на уровень может отличаться от предыдущего, потому что его карта будет генерироваться случайным образом, собираясь из заранее заготовленных шаблонов. Тот же способ отлично используют гиперказуальные игры, предлагающие игроку бесконечную прогрессию. Алгоритм имеет заранее заданные параметры сложности и набор ассетов, что позволяет ему выстраивать новые и новые уровни.
Обычно, работая над последними двумя вариантами, левел-дизайнеры сначала создают типовой и предельный уровни, причем собирают их вручную. Например, при одной конфигурации уровень получится крайне сложным, при другой – почти элементарным; этот уровень – только про сражение с монстрами, этот – только про головоломки и т. д. После этого программисты настраивают генерацию так, чтобы можно было взять любую точку в этих пределах.
При хорошем левел-дизайне чем больше контента сделано вручную, тем лучше он получается для первого прохождения, но реиграбельность его довольно низкая. А с процедурной генерацией – наоборот, такую игру интересно перепроходить снова и снова, но при разовом прохождении она будет уступать играм, созданным вручную, уделяющим большое внимание развлечению игрока.
БАЗОВЫЕ ПРАВИЛА ЛЕВЕЛ-ДИЗАЙНА
В отличие от гейм-дизайнера, левел-дизайнер должен много внимания уделять ГЕОМЕТРИИ уровня. Это физическое пространство уровня, на котором происходит геймплей, без арта, монстров и пр.
Рис. 15. Визуальный пример геометрии уровня
Именно геометрия вынуждает применять выбранные игровые механики, чтобы решить задачу уровня. Если игра предполагает несколько типов геймплея, но уровень построен таким образом, что выбирать один из них – неэффективно, значит, левел-дизайн недоработан. Допустим, персонаж может кидать гранаты, а локация представляет собой узкие коридоры с низкими потолками. Если в таких условиях кинуть гранату на дальнее расстояние нельзя, это оружие становится бесполезным, и механика не работает. Сталкиваясь с разными вызовами, игрок вырабатывает определенные шаблоны поведения. Так что нужно придумать очень хорошее объяснение, почему механика, которая много раз использовалась в аналогичной ситуации, перестала работать; почему, например, точно умея прыгать, главный герой не может преодолеть заборчик высотой ему по колено.
Другая типичная ошибка: одна и та же механика повторяется на каждом уровне. Естественно, что игровые ситуации могут повторяться, но, чтобы вызвать у игрока новые впечатления, лучше добавлять дополнительный компонент. Допустим, в игре есть стандартный бой с противником; если менять только визуальную составляющую, это может наскучить, лучше добавить дополнительную механику. Например, тот же бой, но нужно использовать еще и прыжок, а затем тот же бой, но с двумя противниками сразу, бой с двумя противниками, но на движущейся платформе, и так далее.
Именно геометрия помогает построить правильную динамику игры, так как сама по себе задает игровые ситуации и делает интересным даже базовое передвижение по уровню. Нужно внимательно следить, чтобы у игрока оставалось достаточно способов преодолеть то или иное расстояние: ходьба, прыжки, кувырки. При этом возникает большая проблема, если игроку кажется, что проход есть, но на самом деле область недоступна.
Игрок не должен теряться на уровне. Если он долго не может понять, в какую сторону двигаться и что ему делать, скорее всего, он просто закроет игру. Лучше добавить запоминающиеся ориентиры, чтобы пользователь всегда знал, откуда он пришел. Неподсвеченные двери, которые невозможно обнаружить, или, наоборот, нагромождение игровых объектов, юнитов, декора сбивают с толку и могут сломать ощущение реальности происходящего.
РАБОТА С РЕФЕРЕНСАМИ – важная часть левел-дизайна. В первую очередь рассматривают примеры из реального мира. Вспомните соборы в Assassin’s Creed; перенос реально существующих локаций и объектов в игровой мир может стать одной из важных особенностей проекта.
Можно брать за основу и левел-дизайн других игр. Собрав уровень с артом, вы получите первый вариант своей игры, с которым можно будет дальше работать. Для больших проектов левел-дизайн часто собирают из отдельных кусков: пример деревни, пример бункера, пример полянки с монстрами и т. д. При попытке сразу создать огромную зону для открытого мира есть риск месяцами работать над чем-то, что может не пригодиться.
Бывает, что левел-дизайнер решает, как собрать уровень, исходя из набора утверждений от гейм-дизайнера. Важно заранее согласовать возможности персонажа: на какую высоту он может подпрыгнуть или залезть, какие способности у него должны быть открыты, чтобы преодолеть то или иное препятствие. Даже такая тривиальная вещь, как ширина дверного проема, может влиять на геймплей. Если в игре есть узкий проход и вы не можете убежать от монстра через такую дверь, это, скорее всего, станет проблемой. Размеры дверных проемов и коридоров будут зависеть и от расположения камеры. При виде от первого лица можно делать относительно небольшие проемы и узкие коридоры, но чем дальше камера от персонажа (вид от третьего лица, изометрия), тем больше должны быть габариты объектов.
Стоит подумать и о времени. Если мы договорились, что карту можно пробежать от края до края за 5 минут, важно определиться и со скоростью персонажа. Это может сильно влиять на геймплей: разница скорости в 1 метр в секунду может определять, нужно ли, например, тщательно прицеливаться или важнее быстро перемещаться в нужные точки.
Гейм-дизайнер задает правила игрового мира. Допустим, 50 % времени игрок должен стрелять, 30 % – перемещаться между точками, 20 % – лечиться, захватывать точки и крафтить оружие. Левел-дизайнер же должен превратить эти данные в игровой мир.
Если есть задача сделать его атмосферным и живым, не получится просто добавить красивый храм посреди поля. К нему