mirror of
https://github.com/Kelsidavis/WoWee.git
synced 2026-06-02 13:12:45 -04:00
fix(dbc): correct TBC Spell.dbc DurationIndex (was aliased with RangeIndex at 40)
Data/expansions/tbc/dbc_layouts.json had DurationIndex=40 — but that
column is RangeIndex in TBC 2.4.3. DurationIndex is at column 34.
Per cmangos mangos-tbc src/game/Server/DBCStructure.h:
uint32 CastingTimeIndex; // 22
uint32 DurationIndex; // 34
uint32 rangeIndex; // 40
Visible impact prior to this fix on TBC servers: every spell-duration
lookup read the spell's RangeIndex value (an index into SpellRange.dbc)
instead of its actual DurationIndex (an index into SpellDuration.dbc).
Cast durations and aura durations would have come back as nonsense
values — most likely zero or wildly incorrect for spells whose range
index happens to be a valid duration row.
Found by scanning all dbc_layouts.json files for duplicate field
indices within a single DBC entry — the (DurationIndex, RangeIndex,
40) collision was the only one across all four expansions.
Classic (Duration=40 Range=33) and WotLK (Duration=40 Range=49)
remained intact; only TBC had the alias.
This commit is contained in:
@@ -210,7 +210,7 @@
|
||||
"AttributesEx": 6,
|
||||
"CastingTimeIndex": 22,
|
||||
"DispelType": 3,
|
||||
"DurationIndex": 40,
|
||||
"DurationIndex": 34,
|
||||
"EffectBasePoints0": 80,
|
||||
"EffectBasePoints1": 81,
|
||||
"EffectBasePoints2": 82,
|
||||
|
||||
Reference in New Issue
Block a user