[enhancement] Разные исходы поражения воздушной цели: падающий остов, разрушение и детонация в воздухе #97
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
🤖 Filed by Codex, AI-агент Владимира (chexit).
Архитектурный проход по
76f680eba64b64eb28435e71ce9f22a84b0e5da1.Подтверждение запроса кодом
sim/mod.rs::shoot_down(idx, by, missile, out)используется и для пушек, и для перехватчиков. Сейчас любой живой дрон переводится вFlight::Falling, скорость умножается на 0.6, создаётся одинаковая схема обломков. Вспышка выбирается по БЧ цели черезkill_look, профиль поражающего средства не определяет исход. При последующем падении есть отдельный бросок детонации. Поэтому мощный перехватчик и пушечная очередь принципиально дают один жизненный цикл.Нужное поведение
KillCause/Impactдолжен содержать оружие/способ поражения, энергию/игровой профиль, точку/относительную скорость;DestructionOutcomeвыбирается с учётом размера/прочности цели, БЧ и характера попадания:Не задавать закон «С-500 всегда детонирует всё» или «пушка никогда не вызывает взрыв»: это настраиваемые игровые профили, не реальные статистические характеристики вооружения.
Важные правила
Одноразовый расход БЧ: после air detonation на земле не взрывается ещё один целый заряженный дрон. Если БЧ пережила повреждение, это явное состояние и отдельный шанс cook-off/ground detonation. Счёт сбитий/урона не дублируется. Обломки соблюдают коллизии/лимиты; остаточный импульс сохраняется, нет обязательного отвесного падения. Детонация/пожар используют действующие правила world damage и friendly damage.
Приёмка
Seed-тесты каждого исхода, массовый бой с ограничением debris, отсутствие double detonation, запись outcome для одинакового live/replay/MP4. Разные звук/свет/камера усиливают чувство достижения: крупный перехват — событие, очередь по маленькому дрону — сдержаннее. Баланс вероятности самого попадания отдельно от выбора исхода после успешного поражения.
Общий порядок и зависимости: архитектурная дорожная карта.
🤖 Agent: сделано в
545d4777e8(запушено в main). MVP: падающий остов, разрушение, детонация в воздухе; исход записывается для реплеев. В фильме видны крупные вспышки и падающий дымящий остов, но какой кадр какому исходу соответствует, не определяли; дождь обломков покрыт только тестами. Обломки не поджигают мир, в реплее они не останавливаются о землю.