From 9f8a0907c48f0afa39114895832dcfff52495642 Mon Sep 17 00:00:00 2001 From: Kelsi Date: Tue, 10 Mar 2026 18:55:01 -0700 Subject: [PATCH] feat: add spell stats to TBC and Turtle WoW DBC layouts TBC 2.4.3: TBC added 7 fields after position 5 vs Classic 1.12, giving a consistent +7 offset for all fields in the middle/upper range. Derive CastingTimeIndex (22), PowerType (35), ManaCost (36), and RangeIndex (40) from the verified Classic positions (15/28/29/33) using this offset. This enables mana cost, cast time, and range display in the TBC spellbook. Turtle WoW: Inherits Classic 1.12.1 Spell.dbc field layout. Add CastingTimeIndex (15), PowerType (28), ManaCost (29), RangeIndex (33), and SpellRange.MaxRange (2) matching Classic 1.12. Enables spell stat display for Turtle WoW players. Also update README: pet action bar (10 slots, icons, autocast tinting). --- Data/expansions/tbc/dbc_layouts.json | 3 ++- Data/expansions/turtle/dbc_layouts.json | 4 +++- README.md | 2 +- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/Data/expansions/tbc/dbc_layouts.json b/Data/expansions/tbc/dbc_layouts.json index 8b597ba8..5bca8165 100644 --- a/Data/expansions/tbc/dbc_layouts.json +++ b/Data/expansions/tbc/dbc_layouts.json @@ -1,7 +1,8 @@ { "Spell": { "ID": 0, "Attributes": 5, "IconID": 124, - "Name": 127, "Tooltip": 154, "Rank": 136, "SchoolMask": 215 + "Name": 127, "Tooltip": 154, "Rank": 136, "SchoolMask": 215, + "CastingTimeIndex": 22, "PowerType": 35, "ManaCost": 36, "RangeIndex": 40 }, "SpellRange": { "MaxRange": 4 }, "ItemDisplayInfo": { diff --git a/Data/expansions/turtle/dbc_layouts.json b/Data/expansions/turtle/dbc_layouts.json index 4e86338a..e31634e4 100644 --- a/Data/expansions/turtle/dbc_layouts.json +++ b/Data/expansions/turtle/dbc_layouts.json @@ -1,8 +1,10 @@ { "Spell": { "ID": 0, "Attributes": 5, "IconID": 117, - "Name": 120, "Tooltip": 147, "Rank": 129, "SchoolEnum": 1 + "Name": 120, "Tooltip": 147, "Rank": 129, "SchoolEnum": 1, + "CastingTimeIndex": 15, "PowerType": 28, "ManaCost": 29, "RangeIndex": 33 }, + "SpellRange": { "MaxRange": 2 }, "ItemDisplayInfo": { "ID": 0, "LeftModel": 1, "LeftModelTexture": 3, "InventoryIcon": 5, "GeosetGroup1": 7, "GeosetGroup3": 9, diff --git a/README.md b/README.md index 7353ed15..ab1a90d0 100644 --- a/README.md +++ b/README.md @@ -66,7 +66,7 @@ Protocol Compatible with **Vanilla (Classic) 1.12 + TBC 2.4.3 + WotLK 3.3.5a**. - **Gossip** -- NPC interaction, dialogue options - **Chat** -- Tabs/channels, emotes, chat bubbles, clickable URLs, clickable item links with tooltips - **Party** -- Group invites, party list, out-of-range member health via SMSG_PARTY_MEMBER_STATS -- **Pets** -- Pet tracking via SMSG_PET_SPELLS, dismiss pet button +- **Pets** -- Pet tracking via SMSG_PET_SPELLS, action bar (10 slots with icon/autocast tinting/tooltips), dismiss button - **Map Exploration** -- Subzone-level fog-of-war reveal matching retail behavior - **Warden** -- Warden anti-cheat module execution via Unicorn Engine x86 emulation (cross-platform, no Wine) - **UI** -- Loading screens with progress bar, settings window (shadow distance slider), minimap with zoom/rotation/square mode, top-right minimap mute speaker, separate bag windows with compact-empty mode (aggregate view)