Первая рабочая версия удара в Riot Line делала ровно то, что удар и должен делать: попадала внутри короткого активного окна, проверяла полосу цели и, если совпадало, удаляла врага. Механически верно. Ощущалось абсолютно никак. Враг, который просто исчезает при успешном попадании, неотличим от врага, исчезнувшего по любой другой причине, а игра про защитника, где бить по чему-то ощущается никак, — это игра про защитника, в которую никто не хочет продолжать играть.
Четыре маленьких эффекта, сложенных в один момент
Ничто из того, что это починило, не было сложным по отдельности. Важно было посадить все четыре ровно в один и тот же миг — в кадр, где регистрируется попадание:
- Пауза на попадании. Вся игра замирает на долю секунды в момент удара. Звучит так, будто должно ощущаться как подтормаживание; на деле читается как вес — тот же приём, которым файтинги пользуются десятилетиями.
- Отброс. Враг не просто исчезает, он улетает назад и вверх с настоящей скоростью, крутится в полёте и уменьшается в оставшееся время полёта, а не выщёлкивается из бытия.
- Толчок и тряска камеры. Короткий резкий рывок камеры на каждом успешном попадании, достаточно маленький, чтобы не сбивать с толку в бою, но достаточно заметный, чтобы глаза отметили удар даже боковым зрением.
- Всплеск частиц. Быстрая горстка ярких искр в точке касания, исчезающая за полсекунды. Дёшево рисовать, а работу по продаже ощущения «здесь что-то произошло» делает на удивление большую.
Те же четыре эффекта — для удара, которого не было
У ранней версии игры был второй, более тихий баг, о котором стоит упомянуть: враг, безнаказанно пробившийся через линию, потом просто застывал на месте, на полушаге, навсегда. Оказалось, код прорыва переводил врага в состояние «умирает», но никогда не сообщал, сколько это умирание должно длиться, так что проверка очистки сравнивалась со значением, которое никогда не задавалось, и не срабатывала. Врага не задумывали застывать на месте — ему просто некуда было деться. Настоящее решение переиспользовало ту же физику полёта и растворения, что и у успешного удара, только направленную вперёд, а не назад, ведь прорыв — это враг, который продавливается, а не которого отбрасывают. И получить удар, и прорваться должны были разрешаться в настоящий физический момент, иначе ни то ни другое не ощущалось значимым.
Почувствуйте сами



