GameDev 3.0. Этап 2.3. Дальний бой. Урок 7. Скрытное убийство
Стартовая страница
- Вступление. Добавление анимаций
- Объяснение механики
- Создание механики. Сфера коллизии
- Запись основных переменных
- Создание логики скрытного убийства на кнопку
- Перемещение персонажей в нужную точку
- Исправление бага логики в прыжке
- Отключение стелса на некоторых врагах. Если враг нас обнаруживает, мы не можем сделать стелс убийство
- Кастомные анимации стелса для врагов
- Камера шейк для стелс убийств
Вступление. Добавление анимаций
↑ Вверх
Объяснение механики
↑ Вверх
Создание механики. Сфера коллизии
↑ Вверх
Запись основных переменных
↑ Вверх
Создание логики скрытного убийства на кнопку
↑ Вверх
Перемещение персонажей в нужную точку
AM_NeckBreak_A_1 и AM_NeckBreak_B_1
У многих есть баг с стелс киллом, где мы можем спамить кнопку и бесконечно убивать врага. Для фикса, заходим в BP_thirdpersoncharacter, там находим логику стелса и ветку где вызываем ивент смерти врага. Перед этим ивентом добавляем Delay, как на первом скрине, и после анимонтажа, в ноду "-" пишем 0.5, как на втором скрине и данный баг пофиксится
Для того чтоб убрать отлет врага после стелс убийства, надо сделать следующее:
1. в BPM_AI создаете булевую переменную StealthKill?
2. в BP_Third... после play anim mont вызываете из StealsRef(BPM_AI) - set созданную вами переменную (stealsKill?) (скрин1)
3. в BPM_AI в логике i take damage, в конце перед нодой add velocity добавляете бранч и подключаете к ней вашу переменную (stealskills?) при true обходите addvelocity, на falls как обычно (скрин 2)
Чтобы мертвый враг не алертил других
Ребят, все у кого проблема со стелс килом после респавна, добавьте в BP_ForceToSpawnLocation на логику респавна живых противников из BPM_AI переменную Stealth? и включите её, должно помочь
Если не ошибаюсь, это потому что мы отключаем сферу у них, в тот фикс, после него вытяну с BPM_AI - Assassination Sphere и надо её включить, будет работать
"AssassinationSphere (коллизия стелс убийства) и после из нее вытаскиваем Generate Overlap Events и ставим галочку"
↑ Вверх
Исправление бага логики в прыжке
↑ Вверх
Отключение стелса на некоторых врагах. Если враг нас обнаруживает, мы не можем сделать стелс убийство
↑ Вверх
Кастомные анимации стелса для врагов
Создадим в BPM_AI переменную AM_Stealth_Char, тип Anim Montage -> Object Reference. Продублируем эту переменную и меняем название на AM_Stealth_Enemy. Сделаем их публичными, т.е. нажимаем на "глазик":
↑ Вверх
Камера шейк для стелс убийств
https://teletype.in/@vladimir_izhbuldin/4RQMml1l1f4#E4uh
https://teletype.in/@vladimir_izhbuldin/4RQMml1l1f4#nYHR
MatineeCameraShake (в 5.2 и выше - LegacyCameraShake):