Kelsidavis-WoWee/Data/expansions/wotlk/update_fields.json
Kelsi 587c0ef60d feat: track shapeshift form and fire UPDATE_SHAPESHIFT_FORM events
Add UNIT_FIELD_BYTES_1 to all expansion update field tables (Classic=133,
TBC/WotLK=137). Byte 3 of this field contains the shapeshift form ID
(Bear=1, Cat=3, Travel=4, Moonkin=31, Tree=36, Battle Stance=17, etc.).

Track form changes in the VALUES update handler and fire
UPDATE_SHAPESHIFT_FORM + UPDATE_SHAPESHIFT_FORMS events when the
form changes. This enables stance bar addons and druid form tracking.

New Lua functions:
- GetShapeshiftForm() — returns current form ID (0 = no form)
- GetNumShapeshiftForms() — returns form count by class (Warrior=3,
  Druid=6, DK=3, Rogue=1, Priest=1, Paladin=3)
2026-03-22 22:12:17 -07:00

61 lines
1.8 KiB
JSON

{
"CONTAINER_FIELD_NUM_SLOTS": 64,
"CONTAINER_FIELD_SLOT_1": 66,
"GAMEOBJECT_DISPLAYID": 8,
"ITEM_FIELD_DURABILITY": 60,
"ITEM_FIELD_MAXDURABILITY": 61,
"ITEM_FIELD_STACK_COUNT": 14,
"OBJECT_FIELD_ENTRY": 3,
"OBJECT_FIELD_SCALE_X": 4,
"PLAYER_BLOCK_PERCENTAGE": 1024,
"PLAYER_BYTES": 153,
"PLAYER_BYTES_2": 154,
"PLAYER_CHOSEN_TITLE": 1349,
"PLAYER_CRIT_PERCENTAGE": 1029,
"PLAYER_DODGE_PERCENTAGE": 1025,
"PLAYER_EXPLORED_ZONES_START": 1041,
"PLAYER_FIELD_ARENA_CURRENCY": 1423,
"PLAYER_FIELD_BANKBAG_SLOT_1": 458,
"PLAYER_FIELD_BANK_SLOT_1": 402,
"PLAYER_FIELD_COINAGE": 1170,
"PLAYER_FIELD_COMBAT_RATING_1": 1231,
"PLAYER_FIELD_HONOR_CURRENCY": 1422,
"PLAYER_FIELD_INV_SLOT_HEAD": 324,
"PLAYER_FIELD_MOD_DAMAGE_DONE_POS": 1171,
"PLAYER_FIELD_MOD_HEALING_DONE_POS": 1192,
"PLAYER_FIELD_PACK_SLOT_1": 370,
"PLAYER_FLAGS": 150,
"PLAYER_NEXT_LEVEL_XP": 635,
"PLAYER_PARRY_PERCENTAGE": 1026,
"PLAYER_QUEST_LOG_START": 158,
"PLAYER_RANGED_CRIT_PERCENTAGE": 1030,
"PLAYER_REST_STATE_EXPERIENCE": 1169,
"PLAYER_SKILL_INFO_START": 636,
"PLAYER_SPELL_CRIT_PERCENTAGE1": 1032,
"PLAYER_XP": 634,
"UNIT_DYNAMIC_FLAGS": 147,
"UNIT_END": 148,
"UNIT_FIELD_ATTACK_POWER": 123,
"UNIT_FIELD_BYTES_0": 23,
"UNIT_FIELD_BYTES_1": 137,
"UNIT_FIELD_DISPLAYID": 67,
"UNIT_FIELD_FACTIONTEMPLATE": 55,
"UNIT_FIELD_FLAGS": 59,
"UNIT_FIELD_FLAGS_2": 60,
"UNIT_FIELD_HEALTH": 24,
"UNIT_FIELD_LEVEL": 54,
"UNIT_FIELD_MAXHEALTH": 32,
"UNIT_FIELD_MAXPOWER1": 33,
"UNIT_FIELD_MOUNTDISPLAYID": 69,
"UNIT_FIELD_POWER1": 25,
"UNIT_FIELD_RANGED_ATTACK_POWER": 126,
"UNIT_FIELD_RESISTANCES": 99,
"UNIT_FIELD_STAT0": 84,
"UNIT_FIELD_STAT1": 85,
"UNIT_FIELD_STAT2": 86,
"UNIT_FIELD_STAT3": 87,
"UNIT_FIELD_STAT4": 88,
"UNIT_FIELD_TARGET_HI": 7,
"UNIT_FIELD_TARGET_LO": 6,
"UNIT_NPC_FLAGS": 82
}