Skip to main content

✅ Satan splash formula uses pwr not incoming

CategoryAbility
StatusPassing
Testtests/test_abilities_complex.py::TestSatanFieldPassive::test_satan_splash_formula_uses_pwr_not_incoming

Splash amount is fixed at (Satan's PWR - 2), not (incoming - 2).

Preconditions

  • Lane 0: P1's Satan (PWR=4), P1's Murmur (0 damage)

Action

  • Fire DAMAGE_RECEIVED with value=1 (small damage)

  • Splash still = PWR - 2 = 4 - 2 = 2 (not incoming - 2 = -1 → 0)

result = fire_event(state, event)

murmur_after = next(d for d in result.demons if d.unit_id == "002")

Expected Postconditions

  • Murmur: 2 damage (PWR-2, independent of how much Satan took)

Assertions

assert murmur_after.damage == 2, (
f"Splash = Satan's PWR-2 = 4-2 = 2, independent of incoming damage. "
f"Got {murmur_after.damage}."
)