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

3.2 KiB
Raw Permalink Blame History

WoW Hunter Pet Happiness

Status

The tier lookup and base auto-attack damage multiplier are source-audited and prepared as isolated helpers. They are not yet connected to the player's or generated companion's pet state or attack resolver. The game does not yet model pet happiness, so this note does not claim that happiness affects live combat.

Selected 3.3.5 behavior

The upstream TrinityCore 3.3.5 branch uses POWER_HAPPINESS in bands of 333,000:

Pet happiness power State Base pet main-hand damage
Below 333,000 Unhappy 75%
333,000 to below 666,000 Content 100%
666,000 or higher Happy 125%

Pet::GetHappinessState defines the band boundaries, and Guardian::UpdateDamagePhysical applies the matching multiplier to the Hunter pet's minimum and maximum base melee damage. This source path is why the isolated helper scopes its effect to base auto-attack damage. It does not assume that every special-attack formula receives the same multiplier.

Source and precedence

No local generated pet-happiness row or runtime state was found. These missing details use the upstream TrinityCore source for the 3.3.5 branch, a server-core reference for the target 3.3.5a behavior rather than Blizzard server source:

Deliberate exclusions

  • Happiness decay is not implemented here. TrinityCore updates the happiness timer every 7,500 ms and loses 670 points per update, but its own Pet::LoseHappiness comment labels the 1.5× in-combat loss as a guess. This is insufficient evidence for claiming exact stock decay behavior.
  • Feed Pet is not implemented here. Food-family compatibility, food item levels, inventory consumption, and the happiness amount need a separate full source audit.
  • The helper does not define the initial value or persistence policy. TrinityCore initializes a newly tamed pet to 166,500, but modeling this requires persistent happiness state and the tame/summon lifecycle.
  • This is separate from the WoW Hunter pet armor/resistance preparation in the defense inheritance note.

Runtime integration contract

wow335HunterPetHappinessRuntime.ts maps a happiness power value to a state and base auto-attack multiplier. Integration needs persistent per-pet happiness, must apply the multiplier to the pet's ordinary melee auto-attack damage after its existing base damage is calculated, and must preserve the pet-specific state across player and companion pet attack paths. Add damage taken from Bite or other pet special abilities only if the target 3.3.5 source path proves those formulas consume the adjusted weapon damage; this note does not infer that coupling.