Files
healer-man/docs/WOW_DEATH_KNIGHT_MERCILESS_COMBAT.md
T
2026-10-02 10:38:12 -04:00

20 lines
2.9 KiB
Markdown

# WoW Death Knight Merciless Combat
## Source and value choices
The local generated talent catalog identifies Merciless Combat as `talent-1993` and provides the exact eligible spells and target-health condition: Icy Touch, Howling Blast, Obliterate, and Frost Strike deal 6% more damage at rank 1 or 12% more at rank 2 when the target is below 35% health. Its generated rank spells are 49024 and 49538. Their local generated effects share aura type 112 and `miscValue: 7277`, with `basePoints` 6 and 12 respectively.
The helper reads those rank amounts from `src/game/wow335Talents.generated.ts`, produced by `scripts/generate-wow335-talents.mjs`. The generated rank tooltip supplies the spell list and strict “less than 35%” boundary. No WotLKDB fallback was needed because the local generated rank data includes every modeled value.
The generic talent-modifier parser does not recognize this conditional “do an additional X% damage when striking targets” form, and a global scalar would apply outside the health gate. The isolated helper therefore takes rank, ability name, and the target's health fraction for each hit; it returns no bonus at exactly 35%, for other abilities, or at invalid health input. The returned bonus is intended to modify the resolved hit before target mitigation.
## Runtime integration and limits
The player direct-damage path in `src/game/combatStore.ts` and generated-companion direct-damage path in `src/game/partyRuntime.ts` now apply the helper to each target hit. Both paths require the Death Knight class and a Death Knight ability, read the owner's `talent-1993` rank, and sample that target's current health fraction immediately before damage resolution. Multi-target strikes evaluate each target independently.
The helper only recognizes the four abilities named by the local rank tooltip. Integration coverage verifies rank 1 and rank 2 below 35%, no bonus at exactly 35%, and no bonus on Plague Strike. Icy Touch applies Frost Fever as well as direct damage; its periodic tick remains unchanged by this direct-hit talent, covered by a player runtime regression. Generated-companion direct hits are tested through companion cast completion for both ranks and the exact threshold.
The generic talent-modifier parser does not recognize this conditional “do an additional X% damage when striking targets” form, and a global scalar would apply outside the health gate. Runtime handling therefore stays in the per-target direct-damage paths; no player or companion periodic path is modified. The simulator uses the current health fraction before each hit because the tooltip gives no separate sampling phase. All modeled values come from generated local talent data; no WotLKDB fallback or inferred values were used.
Focused validation: `node_modules/.bin/vitest run src/game/wow335DeathKnightMercilessCombatRuntime.test.ts src/game/wow335DeathKnightMercilessCombat.integration.test.ts`.