promotional bannermobile promotional banner

PhDamage

Expected damage and healing calculator for World of Warcraft

File Details

1.2.1-bcc

  • R
  • Mar 1, 2026
  • 118.10 KB
  • 54
  • 2.5.5
  • Classic TBC

File Name

PhDamage-1.2.1-bcc.zip

Supported Versions

  • 2.5.5

# PhDamage

## [1.2.1](https://github.com/DragonAddons/PhDamage/tree/1.2.1) (2026-03-01)
[Full Changelog](https://github.com/DragonAddons/PhDamage/compare/1.2.0...1.2.1) [Previous Releases](https://github.com/DragonAddons/PhDamage/releases)

- docs: rewrite README for user-facing audience
- fix: correct TalentMap indices for all classes (#21) (#22)
    * fix: correct TalentMap indices for all classes (#21)
    Verified all TalentMap talent positions (tab:index) against in-game
    GetTalentInfo output on TBC Anniversary client (1.15.x).
    Classes corrected (key changes):
    - Priest: 7 of 8 entries
    - Warrior: 10 of 11 entries + deferred comments
    - Rogue: 15 of 17 entries + deferred comments
    - Paladin: 8 of 9 entries
    Classes verified correct (docs only):
    - Mage: all 21 entries already correct
    - Druid: all 19 entries already correct
    - Shaman: all 12 entries already correct
    All files now include grid layout documentation showing the full
    talent tree ordered by internal talentID, matching the in-game API.
    Also fixed .busted config pattern from '_spec' to 'test_' to match
    actual test file naming convention.
    * fix: correct stale talent keys in Warlock tests and AuraMap (#21)
    Updated test files (test_modifiercalc, test_critcalc, test_new_spells,
    test_pipeline) to use reindexed Warlock TalentMap keys from PR #19.
    Fixed Master Demonologist talentAmplify.talentKey in AuraMap_Warlock
    from 2:16 (Soul Link) to 2:11 (Master Demonologist).
    * feat: beautify tooltip with school colors and spell identity (#21)
    - Extract shared Format module (colors, symbols, FormatNumber, FormatDPS)
    - Add spell name and rank header line with school-colored text
    - Restore labeled detail lines (Coeff, Cast, Talents, Stats, Breakdown)
    - Hide 0% crit for DoT-only spells
    - Use directCoefficient/dotCoefficient for safe hybrid display
    - Replace non-rendering Unicode escapes with ASCII alternatives
    - Deduplicate FormatNumber between Tooltip and ActionBar
- fix: name-based talent matching for TBC Anniversary index reordering (#12) (#19)
    The TBC Anniversary client orders talents by internal talentID rather
    than row/column grid position. This caused 15 of 18 Warlock TalentMap
    keys to point to wrong talents, producing incorrect rank readings
    (e.g. "Improved Life Tap 5/2") and wildly inflated calculations.
    - Rewrite StateCollector.CollectTalents to match talents by name
      instead of positional index, making it immune to reordering
    - Add defensive maxRank clamping in StateCollector
    - Fix all Warlock TalentMap indices to match in-game verified data
    - Add grid layout documentation to TalentMap_Warlock.lua
    - Add 8 unit tests for name-based matching logic
    - Update existing Warlock test files with corrected keys
    Fixes #12