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

3.6 KiB

WoW Hunter Bestial Discipline

Source contract

The local generated 3.3.5a Hunter talent node talent-1390 is generated from client DBC data by scripts/generate-wow335-talents.mjs; src/game/wow335Talents.generated.ts is marked generated and must not be hand-edited. The node contains rank spells 19590 and 19592:

Rank Spell row Pet Focus regeneration Intimidation Mana cost
1 19590 +50% -25%
2 19592 +100% -50%

Each Focus value is cross-checked against the rank's aura effect (effectType: 6, auraType: 107, miscValue: 8, basePoints: 50 or 100) and its generated rank description. The generated rank description also names the separate Intimidation cost rider. No external fallback was needed because local generated rows contain the mechanic and exact values.

Runtime behavior

combatStore.ts initializes a Hunter pet's Focus pool at 100/100 with a project baseline regeneration rate of 5 Focus per second. Each combat update already accrues Focus from elapsed milliseconds. wow335HunterBestialDisciplineRuntime.ts multiplies that existing rate by 1 + rankBonus / 100, yielding 7.5 Focus/sec at rank 1 and 10 Focus/sec at rank 2. It does not add a discrete Focus tick. The pool's regenerationPerSecond field is updated with the effective rate, and Focus remains capped by the existing maximum.

The tick resolves the pet owner before applying the talent: player pets use the Hunter player's talentRanks; generated party Hunter pets use their owner's talentRanks. An owner who is not a Hunter receives no Bestial Discipline bonus. The same summon.hunterPet path covers the existing player and generated-companion Hunter pet actors.

The source describes a regeneration increase but does not define simulator update cadence. Applying the bonus continuously over the elapsed time already used by the pet Focus pool is therefore an integration inference, not a sourced discrete tick interval.

Separate Intimidation rider and limits

The generated rows also say Bestial Discipline reduces Intimidation's Mana cost by 25%/50%. That rider is not implemented by the pet Focus helper. The existing generic talent modifier parser recognizes it as a resource-cost modifier scoped to Intimidation; a regression confirms that it does not reduce Arcane Shot cost and that the Focus clause does not become a global player resource-regeneration scalar. This feature does not claim separate cast-path parity for companion-controlled Intimidation.

The simulator currently has no saved Hunter pet-family selection; this change neither chooses a family nor changes pet stats or attacks. No family-specific behavior is inferred.

Files and verification

  • src/game/wow335HunterBestialDisciplineRuntime.ts reads and validates the generated rank values and computes the rate.
  • src/game/combatStore.ts applies the owner-rank multiplier during existing elapsed-time pet Focus regeneration and stores the effective rate in the pool.
  • src/game/wow335HunterBestialDisciplineRuntime.test.ts covers source rank rows, base rate, scaled rates, invalid ranks, and invalid input.
  • src/game/wow335HunterBestialDiscipline.integration.test.ts checks that one second of elapsed time yields 7.5 and 10 Focus/sec for player and companion Hunter owners with different ranks, while a non-Hunter control stays at 5.
  • src/game/talentModifiers.test.ts checks the Intimidation-only Mana rider scope and absence of a generic Focus-regeneration modifier.

Focused validation: npx vitest run src/game/talentModifiers.test.ts src/game/wow335HunterBestialDisciplineRuntime.test.ts src/game/wow335HunterBestialDiscipline.integration.test.ts.