mirror of
https://github.com/Kelsidavis/WoWee.git
synced 2026-03-23 15:50:20 +00:00
Introduce data-driven opcode registry with canonical and alias sources: - Added Data/opcodes/canonical.json as the single canonical LogicalOpcode set. - Added Data/opcodes/aliases.json for cross-core naming aliases (CMaNGOS/AzerothCore/local legacy). Added generator and generated include fragments: - tools/gen_opcode_registry.py emits include/game/opcode_enum_generated.inc, include/game/opcode_names_generated.inc, and include/game/opcode_aliases_generated.inc. - include/game/opcode_table.hpp now consumes generated enum entries. - src/game/opcode_table.cpp now consumes generated name and alias tables. Loader canonicalization behavior: - OpcodeTable::nameToLogical canonicalizes incoming JSON opcode names via alias table before enum lookup, so implementation code stays stable while expansion maps can use different core spellings. Validation and build integration: - Added tools/validate_opcode_maps.py to validate canonical contract across expansions. - Added CMake targets opcodes-generate and opcodes-validate. - wowee target now depends on opcodes-generate so generated headers stay current. Validation/build run: - cmake -S . -B build - cmake --build build --target opcodes-generate opcodes-validate - cmake --build build -j32
47 lines
2.4 KiB
JSON
47 lines
2.4 KiB
JSON
{
|
|
"aliases": {
|
|
"CMSG_GAMEOBJECT_USE": "CMSG_GAMEOBJ_USE",
|
|
"CMSG_GUILD_DECLINE_INVITATION": "CMSG_GUILD_DECLINE",
|
|
"CMSG_GUILD_DEMOTE_MEMBER": "CMSG_GUILD_DEMOTE",
|
|
"CMSG_GUILD_GET_ROSTER": "CMSG_GUILD_ROSTER",
|
|
"CMSG_GUILD_PROMOTE_MEMBER": "CMSG_GUILD_PROMOTE",
|
|
"CMSG_MOVE_FALL_LAND": "MSG_MOVE_FALL_LAND",
|
|
"CMSG_MOVE_HEARTBEAT": "MSG_MOVE_HEARTBEAT",
|
|
"CMSG_MOVE_JUMP": "MSG_MOVE_JUMP",
|
|
"CMSG_MOVE_SET_FACING": "MSG_MOVE_SET_FACING",
|
|
"CMSG_MOVE_START_BACKWARD": "MSG_MOVE_START_BACKWARD",
|
|
"CMSG_MOVE_START_FORWARD": "MSG_MOVE_START_FORWARD",
|
|
"CMSG_MOVE_START_STRAFE_LEFT": "MSG_MOVE_START_STRAFE_LEFT",
|
|
"CMSG_MOVE_START_STRAFE_RIGHT": "MSG_MOVE_START_STRAFE_RIGHT",
|
|
"CMSG_MOVE_START_SWIM": "MSG_MOVE_START_SWIM",
|
|
"CMSG_MOVE_START_TURN_LEFT": "MSG_MOVE_START_TURN_LEFT",
|
|
"CMSG_MOVE_START_TURN_RIGHT": "MSG_MOVE_START_TURN_RIGHT",
|
|
"CMSG_MOVE_STOP": "MSG_MOVE_STOP",
|
|
"CMSG_MOVE_STOP_STRAFE": "MSG_MOVE_STOP_STRAFE",
|
|
"CMSG_MOVE_STOP_SWIM": "MSG_MOVE_STOP_SWIM",
|
|
"CMSG_MOVE_STOP_TURN": "MSG_MOVE_STOP_TURN",
|
|
"CMSG_REQUEST_PLAYED_TIME": "CMSG_PLAYED_TIME",
|
|
"CMSG_SHOWING_CLOAK": "CMSG_SHOWING_CLOAK",
|
|
"CMSG_SHOWING_HELM": "CMSG_SHOWING_HELM",
|
|
"CMSG_STAND_STATE_CHANGE": "CMSG_STANDSTATECHANGE",
|
|
"CMSG_TOGGLE_CLOAK": "CMSG_SHOWING_CLOAK",
|
|
"CMSG_TOGGLE_HELM": "CMSG_SHOWING_HELM",
|
|
"SMSG_BATTLEFIELD_PORT_DENIED": "SMSG_BATTLEFIELD_PORT_DENIED",
|
|
"SMSG_CAST_FAILED": "SMSG_CAST_FAILED",
|
|
"SMSG_CAST_RESULT": "SMSG_CAST_FAILED",
|
|
"SMSG_ENVIRONMENTALDAMAGELOG": "SMSG_ENVIRONMENTAL_DAMAGE_LOG",
|
|
"SMSG_INIT_EXTRA_AURA_INFO": "SMSG_INIT_EXTRA_AURA_INFO_OBSOLETE",
|
|
"SMSG_INSPECT": "SMSG_INSPECT_RESULTS_UPDATE",
|
|
"SMSG_INSPECT_RESULTS": "SMSG_INSPECT_RESULTS_UPDATE",
|
|
"SMSG_PUREMOUNT_CANCELLED_OBSOLETE": "SMSG_REMOVED_FROM_PVP_QUEUE",
|
|
"SMSG_QUEST_FORCE_REMOVE": "SMSG_QUEST_FORCE_REMOVE",
|
|
"SMSG_REMOVED_FROM_PVP_QUEUE": "SMSG_REMOVED_FROM_PVP_QUEUE",
|
|
"SMSG_SET_EXTRA_AURA_INFO": "SMSG_SET_EXTRA_AURA_INFO_OBSOLETE",
|
|
"SMSG_SET_REST_START": "SMSG_QUEST_FORCE_REMOVE",
|
|
"SMSG_SPLINE_MOVE_SET_RUN_BACK_SPEED": "SMSG_SPLINE_SET_RUN_BACK_SPEED",
|
|
"SMSG_SPLINE_MOVE_SET_RUN_SPEED": "SMSG_SPLINE_SET_RUN_SPEED",
|
|
"SMSG_SPLINE_MOVE_SET_SWIM_SPEED": "SMSG_SPLINE_SET_SWIM_SPEED",
|
|
"SMSG_UPDATE_AURA_DURATION": "SMSG_EQUIPMENT_SET_SAVED",
|
|
"SMSG_VICTIMSTATEUPDATE_OBSOLETE": "SMSG_BATTLEFIELD_PORT_DENIED"
|
|
}
|
|
}
|