Kelsidavis-WoWee/include
Kelsi 81070c470c feat(editor): add WPTT (Pet Talent Tree) — 107th open format
Novel replacement for the PetTalent.dbc + PetTalentTab.dbc
pair that defined the Hunter pet talent system added in
WotLK. Each entry is one talent in one of the three pet
trees (Cunning/utility, Ferocity/DPS, Tenacity/tank),
placed at a (tier, column) grid position with a per-rank
spell ID array, an optional prerequisite-talent edge,
and a legacy loyalty-level requirement carried over
from Vanilla pet happiness mechanics.

Combines three patterns previously seen separately into
one format: variable-length payload (spellIdsByRank[]
mirroring WCMR's members[]), graph edge
(prerequisiteTalentId mirroring WBAB's previousRankId),
and grid placement (tier+column — first format with
explicit 2D layout coordinates the renderer can use to
draw the talent tree UI).

Three preset emitters one per tree: makeFerocity (6
talents tiers 0-3 with prereq chain CobraReflexes ->
SpikedCollar -> SpidersBite plus parallel Serpent ->
Boars -> Rabid), makeCunning (5 talents Dash/Owls/
Recovery/Cornered/Phoenix), makeTenacity (5 talents
Charge/Stamina/Stomp/Taunt/LastStand).

Validator's most novel checks combine grid + graph
constraints unique to talent-tree formats:
- (tree, tier, column) cell uniqueness — two talents in
  the same cell would render on top of each other
- prereq must resolve to an existing talent IN THE SAME
  TREE (cross-tree prereqs are illegal)
- prereq tier must be STRICTLY LESS than this tier
  (talents only depend on earlier tiers, no
  same-tier or backward dependencies)
- spellIdsByRank.size() must EQUAL maxRank exactly
- no zero spell IDs within the rank array
Plus the standard: id+name required, treeKind 0..2,
tier 0..6 (7 tiers), column 0..2 (3 columns), maxRank
1..5, no duplicate talentIds, no self-referencing
prereqs.

Format count 106 -> 107. CLI flag count 1170 -> 1175.
2026-05-10 01:49:20 -07:00
..
addons chore(lua): refactor addon Lua engine API + progress docs 2026-04-03 07:31:06 +03:00
audio fix(render): code quality cleanup 2026-04-06 22:43:13 +03:00
auth fix(render): code quality cleanup 2026-04-06 22:43:13 +03:00
core refactor: decompose world map into modular component architecture 2026-04-12 09:52:51 +03:00
game fix(movement): reject server teleports to corrupted near-origin positions 2026-04-24 17:48:49 -07:00
math refactor: extract spline math, consolidate packet parsing, decompose TransportManager 2026-04-11 08:30:28 +03:00
network memory, threading, network hardening 2026-04-06 21:19:37 +03:00
pipeline feat(editor): add WPTT (Pet Talent Tree) — 107th open format 2026-05-10 01:49:20 -07:00
platform Fix all remaining build warnings and eliminate UB in binary parsers 2026-02-23 19:58:38 -08:00
rendering fix(camera): NaN/range guards on Camera setters 2026-05-06 08:57:31 -07:00
third_party Fix cross-platform FSR3 compile path and Path-A runtime wiring 2026-03-09 04:24:24 -07:00
ui refactor(chat): extract ItemTooltipRenderer, slim render(), consolidate utils 2026-04-12 15:46:03 +03:00