mirror of
https://github.com/Kelsidavis/WoWee.git
synced 2026-03-22 23:30:14 +00:00
Add multi-expansion support with data-driven protocol layer
Replace hardcoded WotLK protocol constants with a data-driven architecture supporting Classic 1.12.1, TBC 2.4.3, and WotLK 3.3.5a. Each expansion has JSON profiles for opcodes, update fields, and DBC layouts, plus C++ polymorphic packet parsers for binary format differences (movement flags, speed fields, transport data, spline format, char enum layout). Key components: - ExpansionRegistry: scans Data/expansions/*/expansion.json at startup - OpcodeTable: logical enum <-> wire values loaded from JSON - UpdateFieldTable: field indices loaded from JSON per expansion - DBCLayout: schema-driven DBC field lookups replacing magic numbers - PacketParsers: WotLK/TBC/Classic parsers with correct flag positions - Multi-manifest AssetManager: layered manifests with priority ordering - HDPackManager: overlay texture packs with expansion compatibility - Auth screen expansion picker replacing hardcoded version dropdown
This commit is contained in:
parent
aa16a687c2
commit
7092844b5e
51 changed files with 5258 additions and 887 deletions
|
|
@ -95,6 +95,9 @@ set(WOWEE_SOURCES
|
|||
src/auth/rc4.cpp
|
||||
|
||||
# Game
|
||||
src/game/expansion_profile.cpp
|
||||
src/game/opcode_table.cpp
|
||||
src/game/update_field_table.cpp
|
||||
src/game/game_handler.cpp
|
||||
src/game/warden_crypto.cpp
|
||||
src/game/warden_module.cpp
|
||||
|
|
@ -105,6 +108,8 @@ set(WOWEE_SOURCES
|
|||
src/game/entity.cpp
|
||||
src/game/opcodes.cpp
|
||||
src/game/world_packets.cpp
|
||||
src/game/packet_parsers_tbc.cpp
|
||||
src/game/packet_parsers_classic.cpp
|
||||
src/game/character.cpp
|
||||
src/game/zone_manager.cpp
|
||||
src/game/inventory.cpp
|
||||
|
|
@ -131,6 +136,8 @@ set(WOWEE_SOURCES
|
|||
src/pipeline/m2_loader.cpp
|
||||
src/pipeline/wmo_loader.cpp
|
||||
src/pipeline/adt_loader.cpp
|
||||
src/pipeline/dbc_layout.cpp
|
||||
src/pipeline/hd_pack_manager.cpp
|
||||
src/pipeline/terrain_mesh.cpp
|
||||
|
||||
# Rendering
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue