King, Witch and Dragon. DevLog #21

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

Небольшое резюме по поводу того, что за игру делаю:

King, Witch and Dragon - это 2.5D метроидвания наоборот или "Антивания".

По ходу игры главный герой постепенно теряет способности, а чтобы продвигаться вперёд, игрок должен приспосабливаться к новым ограничениям и искать альтернативные пути.

В прошлом девлоге я рассказал о том, что закончил блокинг 240 уникальных испытаний для игрока, которые завязаны на левел-дизайн, платформиг и специальные игровые объекты и механики на уровнях. Так называемые environmental puzzles.

Следующим шагом я решил проработать ИИ врагов и взаимодействие с ними.

Стартовые наработки

Я уже раннее уделял некоторое время базовой проработке ИИ врагов, чтобы снять основные риски и проверить базовые гипотезы.

Было реализовано распознавание окружения и поиск пути до игрока:

Демонстрация распознавания окружения и поиска пути

А также базовая логика атаки и получения урона.

Более подробно о том как это реализовано вы можете почитать в одном из предыдущих девлогов.

Я взял эти наработки за основу и начал их развивать. Вот что из этого получилось...

Летающие враги

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

Для них была написана специальная логика распознавания окружения с учётом особенностей их перемещения и текущего состояния врага.

Например, в спокойном состоянии патрулирования, враг "видит" стены вокруг и старается не подлетать к ним близко.

Розовые лучи - сенсоры. Зеленая линия - желаемое направление двжения. Желтая линия - текущее направление движения.

В то время как в режиме погони за игроком, враг будет пытаться найти край препятствия и облететь его.

Летающие враги, также как и их наземные коллеги, могут лупить игрока палкой по голове.

Дистанционные атаки

Также была добавлена возможность создавать врагов с дистанционной атакой (как наземных, так и воздушных).

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

А чтобы было ещё интереснее, я научил врагов "видеть" летящие в них снаряды и пытаться от них увернуться :)

Наземные враги пытаются перепрыгнуть снаряд.
Летающие враги стараются сместиться перпендикулярно направлению движения снаряда.

Но иногда они не успевают это сделать :)

Использование способностей персонажа против врагов

В игре очень много значения придаётся способностям персонажа и было бы странно не "подружить" врагов с ними.

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

GET OVER HERE!!!

Также, врагов можно атаковать и отбрасывать рывком змеи.

Крылья летучей мыши и Пучьи лапы не имеют прямого боевого применения, но позволяют проводить атаки паря в воздухе или ползая по стенам и потолку.

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

Kill with Skill

Но это только по началу... Все ведь помнят, что в этой игре персонаж будет постепенно терять способности и, соответственно, бои будут становиться всё сложнее и сложнее.

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

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

Кстати, начиная с последнего апдейта появилась возможность собирать тестовые билды под Mac OS, так что тестировать теперь можно на двух платформах.

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

Помогите сделать проект лучше и спасибо за внимание!

393393
63 комментария
41
Ответить

Комментарий недоступен

27
Ответить

Все верно сказано, если кому интересно будет это изучить, на языке аниматоров это- тайминг и спейсинг)

7
Ответить

Блять, выглядит мега-ахуенно. Удачи в разработке

27
Ответить

Комментарий недоступен

18
Ответить

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

7
Ответить

Да, это всё продумывалось ещё на этапе концепта.

перегруз игрока всеми механиками сразуБудет фаза туториала и постепенного получения способностей, в которой игрок сможет их попробовать и поиграться с ними в специально подготовленных ситуациях. Просто эта фаза будет занимать 20-25% времени всего прохождения, остальные 75-80% времени игрок будет способности постепенно терять.

вместо того, чтобы геймплей развивался, он концептуально упрощается

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

5
Ответить