simulateKill

public boolean simulateKill(String skillId)

Kills a dummy with a real player swing, so the whole death chain actually runs.

Needed by skills that bank state on elite kills rather than on hits (Soul Siphon listens to com.magmaguy.elitemobs.api.EliteMobDeathEvent). The rest of the harness deliberately keeps its dummy alive - healDummy after every attack - so those skills would otherwise never see a single event.

The kill is not faked. The dummy is dropped to one point of health and then hit with player.attack(), the same call the melee path already uses, so the server records the player as the killer, EntityDeathEvent fires, and EliteMobDeathEvent.EliteMobDeathEventFilter converts it exactly as it would in play. direct setHealth(0) would fire the death event with no kill credit and every killer-aware listener would ignore it.

Safe to run repeatedly: the damage test dummy drops no loot, no vanilla loot and no skill XP (DamageTestDummyConfig), and a temporary regional boss has no respawn cooldown, so RegionalBossEntity.remove(DEATH) schedules nothing. Nothing leaks between levels.

Return

true if the dummy actually died

Parameters

skillId

The dummy to kill