Kelsidavis-WoWee/include/game
Kelsi 8dd4bc80ec game: fix Classic 1.12 SMSG_TRAINER_LIST per-spell field layout
Classic 1.12 trainer list entries lack the profDialog and profButton
uint32 fields (8 bytes) that TBC/WotLK added before reqLevel. Instead,
reqLevel immediately follows spellCost, and a trailing unk uint32 appears
at the end of each entry. Parsing the WotLK format for Classic caused
misalignment from the third field onward, corrupting state, cost, level,
skill, and chain data for all trainer spells.

- TrainerListParser::parse() gains a isClassic bool parameter (default false)
- Classic path: cost(4) → reqLevel(1) → reqSkill... → chainNode3 → unk(4)
- WotLK/TBC path: cost(4) → profDialog(4) → profButton(4) → reqLevel(1) → reqSkill...
- handleTrainerList() passes isClassicLikeExpansion() as the flag
2026-03-10 01:20:41 -07:00
..
character.hpp Add body type selection for nonbinary characters and reduce preview rotation sensitivity 2026-02-09 17:56:04 -08:00
entity.hpp Fix UNIT_FIELD_BYTES_0 index (56→23) and add per-type power arrays to Unit 2026-02-19 19:33:50 -08:00
expansion_profile.hpp Unify asset system: one asset set, always high-res 2026-02-15 04:18:34 -08:00
game_handler.hpp game: implement Classic SMSG_FRIEND_LIST and full SMSG_CONTACT_LIST parsing 2026-03-10 01:15:51 -07:00
group_defines.hpp Handle SMSG_PARTY_MEMBER_STATS to show group health out of visual range 2026-02-26 10:25:55 -08:00
inventory.hpp Fix shutdown hangs, bank bag icons/drag-drop, loading screen progress, and login spawn 2026-02-26 13:38:29 -08:00
opcode_aliases_generated.inc Opcode registry: move to generated canonical+alias pipeline 2026-02-20 03:02:31 -08:00
opcode_enum_generated.inc Opcode registry: move to generated canonical+alias pipeline 2026-02-20 03:02:31 -08:00
opcode_names_generated.inc Opcode registry: move to generated canonical+alias pipeline 2026-02-20 03:02:31 -08:00
opcode_table.hpp Opcode registry: move to generated canonical+alias pipeline 2026-02-20 03:02:31 -08:00
opcodes.hpp Add multi-expansion support with data-driven protocol layer 2026-02-12 22:56:36 -08:00
packet_parsers.hpp game: fix Classic 1.12 SMSG_NAME_QUERY_RESPONSE race/gender/class parsing 2026-03-10 00:53:03 -07:00
player.hpp Initial commit: wowee native WoW 3.3.5a client 2026-02-02 13:03:22 -08:00
spell_defines.hpp Implement SMSG_SPELLDAMAGESHIELD, SMSG_SPELLORDAMAGE_IMMUNE; route MSG_MOVE in SMSG_MULTIPLE_MOVES 2026-03-09 20:15:34 -07:00
transport_manager.hpp Fix Deeprun Tram: visual movement, direction, and player riding 2026-03-06 23:01:11 -08:00
update_field_table.hpp Remove hardcoded WotLK defaults, use JSON as single source of truth for opcodes/fields/DBC layouts 2026-02-20 00:39:20 -08:00
warden_crypto.hpp Fix Warden module loading pipeline and HASH_REQUEST response 2026-02-14 19:20:32 -08:00
warden_emulator.hpp Implement complete module execution via Unicorn emulator 2026-02-12 03:06:35 -08:00
warden_memory.hpp Fix Classic field extraction, Warden PE patches, and auth/opcode corrections 2026-02-20 00:18:03 -08:00
warden_module.hpp Fix Warden module loading pipeline and HASH_REQUEST response 2026-02-14 19:20:32 -08:00
world.hpp Initial commit: wowee native WoW 3.3.5a client 2026-02-02 13:03:22 -08:00
world_packets.hpp game: fix Classic 1.12 SMSG_TRAINER_LIST per-spell field layout 2026-03-10 01:20:41 -07:00
zone_manager.hpp Enrich zone music from AreaTable/ZoneMusic/SoundEntries DBC chain 2026-03-09 16:04:52 -07:00