mirror of
https://github.com/Kelsidavis/WoWee.git
synced 2026-03-22 23:30:14 +00:00
Opcode tables: sync Classic/WotLK to canonical headers and expand logical mapping coverage
Classic: synchronized Data/expansions/classic/opcodes.json to /home/k/Desktop/classicopcodes.h with exact symbol/value parity (0 missing, 0 mismatches). WotLK: synchronized Data/expansions/wotlk/opcodes.json to /home/k/Desktop/azerothcoreOpcodes.h and aligned symbol names to AzerothCore naming. Logical opcode layer: expanded include/game/opcode_table.hpp and src/game/opcode_table.cpp to include missing canonical opcode symbols required by synced tables, and removed legacy alias fallback block so canonical names are used directly. Gameplay/handler updates included from ongoing fixes: duel/taxi stale opcode cleanup, level-up/sound handling adjustments, and related parser/packet references updated to match canonical opcode identifiers. Validated by successful full build: cmake --build build -j32.
This commit is contained in:
parent
b24703db30
commit
52ac3bcba3
14 changed files with 4956 additions and 645 deletions
File diff suppressed because it is too large
Load diff
|
|
@ -5,21 +5,6 @@
|
||||||
"CMSG_CHAR_ENUM": "0x037",
|
"CMSG_CHAR_ENUM": "0x037",
|
||||||
"CMSG_CHAR_DELETE": "0x038",
|
"CMSG_CHAR_DELETE": "0x038",
|
||||||
"CMSG_PLAYER_LOGIN": "0x03D",
|
"CMSG_PLAYER_LOGIN": "0x03D",
|
||||||
"CMSG_MOVE_START_FORWARD": "0x0B5",
|
|
||||||
"CMSG_MOVE_START_BACKWARD": "0x0B6",
|
|
||||||
"CMSG_MOVE_STOP": "0x0B7",
|
|
||||||
"CMSG_MOVE_START_STRAFE_LEFT": "0x0B8",
|
|
||||||
"CMSG_MOVE_START_STRAFE_RIGHT": "0x0B9",
|
|
||||||
"CMSG_MOVE_STOP_STRAFE": "0x0BA",
|
|
||||||
"CMSG_MOVE_JUMP": "0x0BB",
|
|
||||||
"CMSG_MOVE_START_TURN_LEFT": "0x0BC",
|
|
||||||
"CMSG_MOVE_START_TURN_RIGHT": "0x0BD",
|
|
||||||
"CMSG_MOVE_STOP_TURN": "0x0BE",
|
|
||||||
"CMSG_MOVE_SET_FACING": "0x0DA",
|
|
||||||
"CMSG_MOVE_FALL_LAND": "0x0C9",
|
|
||||||
"CMSG_MOVE_START_SWIM": "0x0CA",
|
|
||||||
"CMSG_MOVE_STOP_SWIM": "0x0CB",
|
|
||||||
"CMSG_MOVE_HEARTBEAT": "0x0EE",
|
|
||||||
"SMSG_AUTH_CHALLENGE": "0x1EC",
|
"SMSG_AUTH_CHALLENGE": "0x1EC",
|
||||||
"SMSG_AUTH_RESPONSE": "0x1EE",
|
"SMSG_AUTH_RESPONSE": "0x1EE",
|
||||||
"SMSG_CHAR_CREATE": "0x03A",
|
"SMSG_CHAR_CREATE": "0x03A",
|
||||||
|
|
@ -42,7 +27,6 @@
|
||||||
"SMSG_MESSAGECHAT": "0x096",
|
"SMSG_MESSAGECHAT": "0x096",
|
||||||
"CMSG_WHO": "0x062",
|
"CMSG_WHO": "0x062",
|
||||||
"SMSG_WHO": "0x063",
|
"SMSG_WHO": "0x063",
|
||||||
"CMSG_REQUEST_PLAYED_TIME": "0x1CC",
|
|
||||||
"SMSG_PLAYED_TIME": "0x1CD",
|
"SMSG_PLAYED_TIME": "0x1CD",
|
||||||
"CMSG_QUERY_TIME": "0x1CE",
|
"CMSG_QUERY_TIME": "0x1CE",
|
||||||
"SMSG_QUERY_TIME_RESPONSE": "0x1CF",
|
"SMSG_QUERY_TIME_RESPONSE": "0x1CF",
|
||||||
|
|
@ -57,17 +41,10 @@
|
||||||
"CMSG_LOGOUT_CANCEL": "0x04E",
|
"CMSG_LOGOUT_CANCEL": "0x04E",
|
||||||
"SMSG_LOGOUT_RESPONSE": "0x04C",
|
"SMSG_LOGOUT_RESPONSE": "0x04C",
|
||||||
"SMSG_LOGOUT_COMPLETE": "0x04D",
|
"SMSG_LOGOUT_COMPLETE": "0x04D",
|
||||||
"CMSG_STAND_STATE_CHANGE": "0x101",
|
|
||||||
"CMSG_SHOWING_HELM": "0x2B9",
|
|
||||||
"CMSG_SHOWING_CLOAK": "0x2BA",
|
|
||||||
"CMSG_TOGGLE_PVP": "0x253",
|
"CMSG_TOGGLE_PVP": "0x253",
|
||||||
"CMSG_GUILD_INVITE": "0x082",
|
"CMSG_GUILD_INVITE": "0x082",
|
||||||
"CMSG_GUILD_ACCEPT": "0x084",
|
"CMSG_GUILD_ACCEPT": "0x084",
|
||||||
"CMSG_GUILD_DECLINE_INVITATION": "0x085",
|
|
||||||
"CMSG_GUILD_INFO": "0x087",
|
"CMSG_GUILD_INFO": "0x087",
|
||||||
"CMSG_GUILD_GET_ROSTER": "0x089",
|
|
||||||
"CMSG_GUILD_PROMOTE_MEMBER": "0x08B",
|
|
||||||
"CMSG_GUILD_DEMOTE_MEMBER": "0x08C",
|
|
||||||
"CMSG_GUILD_LEAVE": "0x08D",
|
"CMSG_GUILD_LEAVE": "0x08D",
|
||||||
"CMSG_GUILD_MOTD": "0x091",
|
"CMSG_GUILD_MOTD": "0x091",
|
||||||
"SMSG_GUILD_INFO": "0x088",
|
"SMSG_GUILD_INFO": "0x088",
|
||||||
|
|
@ -107,17 +84,16 @@
|
||||||
"SMSG_SPELLHEALLOG": "0x150",
|
"SMSG_SPELLHEALLOG": "0x150",
|
||||||
"SMSG_SPELLENERGIZELOG": "0x151",
|
"SMSG_SPELLENERGIZELOG": "0x151",
|
||||||
"SMSG_PERIODICAURALOG": "0x24E",
|
"SMSG_PERIODICAURALOG": "0x24E",
|
||||||
"SMSG_ENVIRONMENTALDAMAGELOG": "0x1FC",
|
"SMSG_ENVIRONMENTAL_DAMAGE_LOG": "0x1FC",
|
||||||
"CMSG_CAST_SPELL": "0x12E",
|
"CMSG_CAST_SPELL": "0x12E",
|
||||||
"CMSG_CANCEL_CAST": "0x12F",
|
"CMSG_CANCEL_CAST": "0x12F",
|
||||||
"CMSG_CANCEL_AURA": "0x136",
|
"CMSG_CANCEL_AURA": "0x136",
|
||||||
"SMSG_CAST_FAILED": "0x130",
|
|
||||||
"SMSG_SPELL_START": "0x131",
|
"SMSG_SPELL_START": "0x131",
|
||||||
"SMSG_SPELL_GO": "0x132",
|
"SMSG_SPELL_GO": "0x132",
|
||||||
"SMSG_SPELL_FAILURE": "0x133",
|
"SMSG_SPELL_FAILURE": "0x133",
|
||||||
"SMSG_SPELL_COOLDOWN": "0x134",
|
"SMSG_SPELL_COOLDOWN": "0x134",
|
||||||
"SMSG_COOLDOWN_EVENT": "0x135",
|
"SMSG_COOLDOWN_EVENT": "0x135",
|
||||||
"SMSG_UPDATE_AURA_DURATION": "0x137",
|
"SMSG_EQUIPMENT_SET_SAVED": "0x137",
|
||||||
"SMSG_INITIAL_SPELLS": "0x12A",
|
"SMSG_INITIAL_SPELLS": "0x12A",
|
||||||
"SMSG_LEARNED_SPELL": "0x12B",
|
"SMSG_LEARNED_SPELL": "0x12B",
|
||||||
"SMSG_SUPERCEDED_SPELL": "0x12C",
|
"SMSG_SUPERCEDED_SPELL": "0x12C",
|
||||||
|
|
@ -157,7 +133,6 @@
|
||||||
"SMSG_GOSSIP_MESSAGE": "0x17D",
|
"SMSG_GOSSIP_MESSAGE": "0x17D",
|
||||||
"SMSG_GOSSIP_COMPLETE": "0x17E",
|
"SMSG_GOSSIP_COMPLETE": "0x17E",
|
||||||
"SMSG_NPC_TEXT_UPDATE": "0x180",
|
"SMSG_NPC_TEXT_UPDATE": "0x180",
|
||||||
"CMSG_GAMEOBJECT_USE": "0x0B1",
|
|
||||||
"CMSG_QUESTGIVER_STATUS_QUERY": "0x182",
|
"CMSG_QUESTGIVER_STATUS_QUERY": "0x182",
|
||||||
"SMSG_QUESTGIVER_STATUS": "0x183",
|
"SMSG_QUESTGIVER_STATUS": "0x183",
|
||||||
"SMSG_QUESTGIVER_STATUS_MULTIPLE": "0x417",
|
"SMSG_QUESTGIVER_STATUS_MULTIPLE": "0x417",
|
||||||
|
|
@ -198,13 +173,11 @@
|
||||||
"CMSG_SWAP_INV_ITEM": "0x10D",
|
"CMSG_SWAP_INV_ITEM": "0x10D",
|
||||||
"SMSG_INVENTORY_CHANGE_FAILURE": "0x112",
|
"SMSG_INVENTORY_CHANGE_FAILURE": "0x112",
|
||||||
"CMSG_INSPECT": "0x114",
|
"CMSG_INSPECT": "0x114",
|
||||||
"SMSG_INSPECT_RESULTS": "0x115",
|
|
||||||
"CMSG_REPOP_REQUEST": "0x15A",
|
"CMSG_REPOP_REQUEST": "0x15A",
|
||||||
"SMSG_RESURRECT_REQUEST": "0x15B",
|
"SMSG_RESURRECT_REQUEST": "0x15B",
|
||||||
"CMSG_RESURRECT_RESPONSE": "0x15C",
|
"CMSG_RESURRECT_RESPONSE": "0x15C",
|
||||||
"CMSG_SPIRIT_HEALER_ACTIVATE": "0x21C",
|
"CMSG_SPIRIT_HEALER_ACTIVATE": "0x21C",
|
||||||
"SMSG_SPIRIT_HEALER_CONFIRM": "0x222",
|
"SMSG_SPIRIT_HEALER_CONFIRM": "0x222",
|
||||||
"SMSG_RESURRECT_CANCEL": "0x390",
|
|
||||||
"MSG_MOVE_TELEPORT_ACK": "0x0C7",
|
"MSG_MOVE_TELEPORT_ACK": "0x0C7",
|
||||||
"SMSG_TRANSFER_PENDING": "0x03F",
|
"SMSG_TRANSFER_PENDING": "0x03F",
|
||||||
"SMSG_NEW_WORLD": "0x03E",
|
"SMSG_NEW_WORLD": "0x03E",
|
||||||
|
|
@ -217,8 +190,6 @@
|
||||||
"SMSG_ACTIVATETAXIREPLY": "0x1AE",
|
"SMSG_ACTIVATETAXIREPLY": "0x1AE",
|
||||||
"SMSG_NEW_TAXI_PATH": "0x1AF",
|
"SMSG_NEW_TAXI_PATH": "0x1AF",
|
||||||
"CMSG_ACTIVATETAXIEXPRESS": "0x312",
|
"CMSG_ACTIVATETAXIEXPRESS": "0x312",
|
||||||
"SMSG_BATTLEFIELD_PORT_DENIED": "0x14B",
|
|
||||||
"SMSG_REMOVED_FROM_PVP_QUEUE": "0x170",
|
|
||||||
"SMSG_TRAINER_BUY_SUCCEEDED": "0x1B3",
|
"SMSG_TRAINER_BUY_SUCCEEDED": "0x1B3",
|
||||||
"SMSG_BINDPOINTUPDATE": "0x155",
|
"SMSG_BINDPOINTUPDATE": "0x155",
|
||||||
"CMSG_BATTLEFIELD_LIST": "0x23C",
|
"CMSG_BATTLEFIELD_LIST": "0x23C",
|
||||||
|
|
@ -256,12 +227,13 @@
|
||||||
"SMSG_ARENA_ERROR": "0x376",
|
"SMSG_ARENA_ERROR": "0x376",
|
||||||
"MSG_INSPECT_ARENA_TEAMS": "0x377",
|
"MSG_INSPECT_ARENA_TEAMS": "0x377",
|
||||||
"SMSG_LEVELUP_INFO": "0x1D4",
|
"SMSG_LEVELUP_INFO": "0x1D4",
|
||||||
|
"SMSG_PLAY_SOUND": "0x2D2",
|
||||||
"SMSG_SET_PROFICIENCY": "0x127",
|
"SMSG_SET_PROFICIENCY": "0x127",
|
||||||
"SMSG_ACTION_BUTTONS": "0x129",
|
"SMSG_ACTION_BUTTONS": "0x129",
|
||||||
"CMSG_TAXINODE_STATUS_QUERY": "0x1AA",
|
"CMSG_TAXINODE_STATUS_QUERY": "0x1AA",
|
||||||
"SMSG_TAXINODE_STATUS": "0x1AB",
|
"SMSG_TAXINODE_STATUS": "0x1AB",
|
||||||
"SMSG_INIT_EXTRA_AURA_INFO": "0x3A3",
|
"SMSG_INIT_EXTRA_AURA_INFO_OBSOLETE": "0x3A3",
|
||||||
"SMSG_SET_EXTRA_AURA_INFO": "0x3A4",
|
"SMSG_SET_EXTRA_AURA_INFO_OBSOLETE": "0x3A4",
|
||||||
"CMSG_EMOTE": "0x102",
|
"CMSG_EMOTE": "0x102",
|
||||||
"SMSG_EMOTE": "0x103",
|
"SMSG_EMOTE": "0x103",
|
||||||
"CMSG_TEXT_EMOTE": "0x104",
|
"CMSG_TEXT_EMOTE": "0x104",
|
||||||
|
|
@ -272,7 +244,6 @@
|
||||||
"CMSG_CHANNEL_LIST": "0x09A",
|
"CMSG_CHANNEL_LIST": "0x09A",
|
||||||
"SMSG_CHANNEL_LIST": "0x09B",
|
"SMSG_CHANNEL_LIST": "0x09B",
|
||||||
"SMSG_INSPECT_TALENT": "0x3F3",
|
"SMSG_INSPECT_TALENT": "0x3F3",
|
||||||
|
|
||||||
"SMSG_INIT_WORLD_STATES": "0x2C2",
|
"SMSG_INIT_WORLD_STATES": "0x2C2",
|
||||||
"SMSG_INITIALIZE_FACTIONS": "0x122",
|
"SMSG_INITIALIZE_FACTIONS": "0x122",
|
||||||
"SMSG_CLIENT_CONTROL_UPDATE": "0x159",
|
"SMSG_CLIENT_CONTROL_UPDATE": "0x159",
|
||||||
|
|
@ -281,28 +252,19 @@
|
||||||
"SMSG_AI_REACTION": "0x13C",
|
"SMSG_AI_REACTION": "0x13C",
|
||||||
"SMSG_PLAY_SPELL_VISUAL": "0x1F3",
|
"SMSG_PLAY_SPELL_VISUAL": "0x1F3",
|
||||||
"SMSG_CANCEL_AUTO_REPEAT": "0x29C",
|
"SMSG_CANCEL_AUTO_REPEAT": "0x29C",
|
||||||
|
|
||||||
"SMSG_SPLINE_MOVE_SET_WALK_MODE": "0x30E",
|
"SMSG_SPLINE_MOVE_SET_WALK_MODE": "0x30E",
|
||||||
"SMSG_SPLINE_MOVE_SET_RUN_MODE": "0x30D",
|
"SMSG_SPLINE_MOVE_SET_RUN_MODE": "0x30D",
|
||||||
"SMSG_SPLINE_MOVE_SET_RUN_SPEED": "0x2FE",
|
|
||||||
"SMSG_SPLINE_MOVE_SET_RUN_BACK_SPEED": "0x2FF",
|
|
||||||
"SMSG_SPLINE_MOVE_SET_SWIM_SPEED": "0x300",
|
|
||||||
|
|
||||||
"SMSG_QUESTUPDATE_ADD_ITEM": "0x19A",
|
"SMSG_QUESTUPDATE_ADD_ITEM": "0x19A",
|
||||||
"SMSG_QUEST_FORCE_REMOVE": "0x21E",
|
|
||||||
|
|
||||||
"CMSG_GUILD_DISBAND": "0x08F",
|
"CMSG_GUILD_DISBAND": "0x08F",
|
||||||
"CMSG_GUILD_LEADER": "0x090",
|
"CMSG_GUILD_LEADER": "0x090",
|
||||||
"CMSG_GUILD_SET_PUBLIC_NOTE": "0x234",
|
"CMSG_GUILD_SET_PUBLIC_NOTE": "0x234",
|
||||||
"CMSG_GUILD_SET_OFFICER_NOTE": "0x235",
|
"CMSG_GUILD_SET_OFFICER_NOTE": "0x235",
|
||||||
|
|
||||||
"CMSG_BANKER_ACTIVATE": "0x1B7",
|
"CMSG_BANKER_ACTIVATE": "0x1B7",
|
||||||
"SMSG_SHOW_BANK": "0x1B8",
|
"SMSG_SHOW_BANK": "0x1B8",
|
||||||
"CMSG_BUY_BANK_SLOT": "0x1B9",
|
"CMSG_BUY_BANK_SLOT": "0x1B9",
|
||||||
"SMSG_BUY_BANK_SLOT_RESULT": "0x1BA",
|
"SMSG_BUY_BANK_SLOT_RESULT": "0x1BA",
|
||||||
"CMSG_AUTOSTORE_BANK_ITEM": "0x282",
|
"CMSG_AUTOSTORE_BANK_ITEM": "0x282",
|
||||||
"CMSG_AUTOBANK_ITEM": "0x283",
|
"CMSG_AUTOBANK_ITEM": "0x283",
|
||||||
|
|
||||||
"CMSG_GUILD_BANKER_ACTIVATE": "0x3E5",
|
"CMSG_GUILD_BANKER_ACTIVATE": "0x3E5",
|
||||||
"CMSG_GUILD_BANK_QUERY_TAB": "0x3E6",
|
"CMSG_GUILD_BANK_QUERY_TAB": "0x3E6",
|
||||||
"SMSG_GUILD_BANK_LIST": "0x3E7",
|
"SMSG_GUILD_BANK_LIST": "0x3E7",
|
||||||
|
|
@ -311,7 +273,6 @@
|
||||||
"CMSG_GUILD_BANK_UPDATE_TAB": "0x3EA",
|
"CMSG_GUILD_BANK_UPDATE_TAB": "0x3EA",
|
||||||
"CMSG_GUILD_BANK_DEPOSIT_MONEY": "0x3EB",
|
"CMSG_GUILD_BANK_DEPOSIT_MONEY": "0x3EB",
|
||||||
"CMSG_GUILD_BANK_WITHDRAW_MONEY": "0x3EC",
|
"CMSG_GUILD_BANK_WITHDRAW_MONEY": "0x3EC",
|
||||||
|
|
||||||
"MSG_AUCTION_HELLO": "0x255",
|
"MSG_AUCTION_HELLO": "0x255",
|
||||||
"CMSG_AUCTION_SELL_ITEM": "0x256",
|
"CMSG_AUCTION_SELL_ITEM": "0x256",
|
||||||
"CMSG_AUCTION_REMOVE_ITEM": "0x257",
|
"CMSG_AUCTION_REMOVE_ITEM": "0x257",
|
||||||
|
|
@ -324,5 +285,772 @@
|
||||||
"SMSG_AUCTION_BIDDER_NOTIFICATION": "0x25E",
|
"SMSG_AUCTION_BIDDER_NOTIFICATION": "0x25E",
|
||||||
"SMSG_AUCTION_OWNER_NOTIFICATION": "0x25F",
|
"SMSG_AUCTION_OWNER_NOTIFICATION": "0x25F",
|
||||||
"CMSG_AUCTION_LIST_BIDDER_ITEMS": "0x264",
|
"CMSG_AUCTION_LIST_BIDDER_ITEMS": "0x264",
|
||||||
"SMSG_AUCTION_BIDDER_LIST_RESULT": "0x265"
|
"SMSG_AUCTION_BIDDER_LIST_RESULT": "0x265",
|
||||||
|
"MSG_NULL_ACTION": "0x000",
|
||||||
|
"CMSG_BOOTME": "0x001",
|
||||||
|
"CMSG_DBLOOKUP": "0x002",
|
||||||
|
"SMSG_DBLOOKUP": "0x003",
|
||||||
|
"CMSG_QUERY_OBJECT_POSITION": "0x004",
|
||||||
|
"SMSG_QUERY_OBJECT_POSITION": "0x005",
|
||||||
|
"CMSG_QUERY_OBJECT_ROTATION": "0x006",
|
||||||
|
"SMSG_QUERY_OBJECT_ROTATION": "0x007",
|
||||||
|
"CMSG_WORLD_TELEPORT": "0x008",
|
||||||
|
"CMSG_TELEPORT_TO_UNIT": "0x009",
|
||||||
|
"CMSG_ZONE_MAP": "0x00A",
|
||||||
|
"SMSG_ZONE_MAP": "0x00B",
|
||||||
|
"CMSG_DEBUG_CHANGECELLZONE": "0x00C",
|
||||||
|
"CMSG_EMBLAZON_TABARD_OBSOLETE": "0x00D",
|
||||||
|
"CMSG_UNEMBLAZON_TABARD_OBSOLETE": "0x00E",
|
||||||
|
"CMSG_RECHARGE": "0x00F",
|
||||||
|
"CMSG_LEARN_SPELL": "0x010",
|
||||||
|
"CMSG_CREATEMONSTER": "0x011",
|
||||||
|
"CMSG_DESTROYMONSTER": "0x012",
|
||||||
|
"CMSG_CREATEITEM": "0x013",
|
||||||
|
"CMSG_CREATEGAMEOBJECT": "0x014",
|
||||||
|
"SMSG_CHECK_FOR_BOTS": "0x015",
|
||||||
|
"CMSG_MAKEMONSTERATTACKGUID": "0x016",
|
||||||
|
"CMSG_BOT_DETECTED2": "0x017",
|
||||||
|
"CMSG_FORCEACTION": "0x018",
|
||||||
|
"CMSG_FORCEACTIONONOTHER": "0x019",
|
||||||
|
"CMSG_FORCEACTIONSHOW": "0x01A",
|
||||||
|
"SMSG_FORCEACTIONSHOW": "0x01B",
|
||||||
|
"CMSG_PETGODMODE": "0x01C",
|
||||||
|
"SMSG_PETGODMODE": "0x01D",
|
||||||
|
"SMSG_DEBUGINFOSPELLMISS_OBSOLETE": "0x01E",
|
||||||
|
"CMSG_WEATHER_SPEED_CHEAT": "0x01F",
|
||||||
|
"CMSG_UNDRESSPLAYER": "0x020",
|
||||||
|
"CMSG_BEASTMASTER": "0x021",
|
||||||
|
"CMSG_GODMODE": "0x022",
|
||||||
|
"SMSG_GODMODE": "0x023",
|
||||||
|
"CMSG_CHEAT_SETMONEY": "0x024",
|
||||||
|
"CMSG_LEVEL_CHEAT": "0x025",
|
||||||
|
"CMSG_PET_LEVEL_CHEAT": "0x026",
|
||||||
|
"CMSG_SET_WORLDSTATE": "0x027",
|
||||||
|
"CMSG_COOLDOWN_CHEAT": "0x028",
|
||||||
|
"CMSG_USE_SKILL_CHEAT": "0x029",
|
||||||
|
"CMSG_FLAG_QUEST": "0x02A",
|
||||||
|
"CMSG_FLAG_QUEST_FINISH": "0x02B",
|
||||||
|
"CMSG_CLEAR_QUEST": "0x02C",
|
||||||
|
"CMSG_SEND_EVENT": "0x02D",
|
||||||
|
"CMSG_DEBUG_AISTATE": "0x02E",
|
||||||
|
"SMSG_DEBUG_AISTATE": "0x02F",
|
||||||
|
"CMSG_DISABLE_PVP_CHEAT": "0x030",
|
||||||
|
"CMSG_ADVANCE_SPAWN_TIME": "0x031",
|
||||||
|
"CMSG_PVP_PORT_OBSOLETE": "0x032",
|
||||||
|
"CMSG_AUTH_SRP6_BEGIN": "0x033",
|
||||||
|
"CMSG_AUTH_SRP6_PROOF": "0x034",
|
||||||
|
"CMSG_AUTH_SRP6_RECODE": "0x035",
|
||||||
|
"SMSG_AUTH_SRP6_RESPONSE": "0x039",
|
||||||
|
"SMSG_GAMETIME_UPDATE": "0x043",
|
||||||
|
"CMSG_GAMETIME_SET": "0x044",
|
||||||
|
"SMSG_GAMETIME_SET": "0x045",
|
||||||
|
"CMSG_GAMESPEED_SET": "0x046",
|
||||||
|
"SMSG_GAMESPEED_SET": "0x047",
|
||||||
|
"CMSG_SERVERTIME": "0x048",
|
||||||
|
"SMSG_SERVERTIME": "0x049",
|
||||||
|
"SMSG_LOGOUT_CANCEL_ACK": "0x04F",
|
||||||
|
"CMSG_PET_NAME_QUERY": "0x052",
|
||||||
|
"SMSG_PET_NAME_QUERY_RESPONSE": "0x053",
|
||||||
|
"CMSG_ITEM_QUERY_MULTIPLE": "0x057",
|
||||||
|
"SMSG_ITEM_QUERY_MULTIPLE_RESPONSE": "0x059",
|
||||||
|
"CMSG_PAGE_TEXT_QUERY": "0x05A",
|
||||||
|
"SMSG_PAGE_TEXT_QUERY_RESPONSE": "0x05B",
|
||||||
|
"CMSG_WHOIS": "0x064",
|
||||||
|
"SMSG_WHOIS": "0x065",
|
||||||
|
"CMSG_CONTACT_LIST": "0x066",
|
||||||
|
"CMSG_GROUP_CANCEL": "0x070",
|
||||||
|
"SMSG_GROUP_CANCEL": "0x071",
|
||||||
|
"CMSG_GROUP_UNINVITE": "0x075",
|
||||||
|
"CMSG_LOOT_METHOD": "0x07A",
|
||||||
|
"SMSG_GROUP_DESTROYED": "0x07C",
|
||||||
|
"SMSG_PARTY_MEMBER_STATS": "0x07E",
|
||||||
|
"CMSG_GUILD_CREATE": "0x081",
|
||||||
|
"CMSG_GUILD_DECLINE": "0x085",
|
||||||
|
"SMSG_GUILD_DECLINE": "0x086",
|
||||||
|
"CMSG_GUILD_ROSTER": "0x089",
|
||||||
|
"CMSG_GUILD_PROMOTE": "0x08B",
|
||||||
|
"CMSG_GUILD_DEMOTE": "0x08C",
|
||||||
|
"CMSG_CHANNEL_PASSWORD": "0x09C",
|
||||||
|
"CMSG_CHANNEL_SET_OWNER": "0x09D",
|
||||||
|
"CMSG_CHANNEL_OWNER": "0x09E",
|
||||||
|
"CMSG_CHANNEL_MODERATOR": "0x09F",
|
||||||
|
"CMSG_CHANNEL_UNMODERATOR": "0x0A0",
|
||||||
|
"CMSG_CHANNEL_MUTE": "0x0A1",
|
||||||
|
"CMSG_CHANNEL_UNMUTE": "0x0A2",
|
||||||
|
"CMSG_CHANNEL_INVITE": "0x0A3",
|
||||||
|
"CMSG_CHANNEL_KICK": "0x0A4",
|
||||||
|
"CMSG_CHANNEL_BAN": "0x0A5",
|
||||||
|
"CMSG_CHANNEL_UNBAN": "0x0A6",
|
||||||
|
"CMSG_CHANNEL_ANNOUNCEMENTS": "0x0A7",
|
||||||
|
"CMSG_CHANNEL_MODERATE": "0x0A8",
|
||||||
|
"CMSG_OPEN_ITEM": "0x0AC",
|
||||||
|
"CMSG_READ_ITEM": "0x0AD",
|
||||||
|
"SMSG_READ_ITEM_OK": "0x0AE",
|
||||||
|
"SMSG_READ_ITEM_FAILED": "0x0AF",
|
||||||
|
"SMSG_ITEM_COOLDOWN": "0x0B0",
|
||||||
|
"CMSG_GAMEOBJ_USE": "0x0B1",
|
||||||
|
"CMSG_GAMEOBJ_CHAIR_USE_OBSOLETE": "0x0B2",
|
||||||
|
"SMSG_GAMEOBJECT_CUSTOM_ANIM": "0x0B3",
|
||||||
|
"CMSG_AREATRIGGER": "0x0B4",
|
||||||
|
"MSG_MOVE_START_FORWARD": "0x0B5",
|
||||||
|
"MSG_MOVE_START_BACKWARD": "0x0B6",
|
||||||
|
"MSG_MOVE_STOP": "0x0B7",
|
||||||
|
"MSG_MOVE_START_STRAFE_LEFT": "0x0B8",
|
||||||
|
"MSG_MOVE_START_STRAFE_RIGHT": "0x0B9",
|
||||||
|
"MSG_MOVE_STOP_STRAFE": "0x0BA",
|
||||||
|
"MSG_MOVE_JUMP": "0x0BB",
|
||||||
|
"MSG_MOVE_START_TURN_LEFT": "0x0BC",
|
||||||
|
"MSG_MOVE_START_TURN_RIGHT": "0x0BD",
|
||||||
|
"MSG_MOVE_STOP_TURN": "0x0BE",
|
||||||
|
"MSG_MOVE_START_PITCH_UP": "0x0BF",
|
||||||
|
"MSG_MOVE_START_PITCH_DOWN": "0x0C0",
|
||||||
|
"MSG_MOVE_STOP_PITCH": "0x0C1",
|
||||||
|
"MSG_MOVE_SET_RUN_MODE": "0x0C2",
|
||||||
|
"MSG_MOVE_SET_WALK_MODE": "0x0C3",
|
||||||
|
"MSG_MOVE_TOGGLE_LOGGING": "0x0C4",
|
||||||
|
"MSG_MOVE_TELEPORT": "0x0C5",
|
||||||
|
"MSG_MOVE_TELEPORT_CHEAT": "0x0C6",
|
||||||
|
"MSG_MOVE_TOGGLE_FALL_LOGGING": "0x0C8",
|
||||||
|
"MSG_MOVE_FALL_LAND": "0x0C9",
|
||||||
|
"MSG_MOVE_START_SWIM": "0x0CA",
|
||||||
|
"MSG_MOVE_STOP_SWIM": "0x0CB",
|
||||||
|
"MSG_MOVE_SET_RUN_SPEED_CHEAT": "0x0CC",
|
||||||
|
"MSG_MOVE_SET_RUN_SPEED": "0x0CD",
|
||||||
|
"MSG_MOVE_SET_RUN_BACK_SPEED_CHEAT": "0x0CE",
|
||||||
|
"MSG_MOVE_SET_RUN_BACK_SPEED": "0x0CF",
|
||||||
|
"MSG_MOVE_SET_WALK_SPEED_CHEAT": "0x0D0",
|
||||||
|
"MSG_MOVE_SET_WALK_SPEED": "0x0D1",
|
||||||
|
"MSG_MOVE_SET_SWIM_SPEED_CHEAT": "0x0D2",
|
||||||
|
"MSG_MOVE_SET_SWIM_SPEED": "0x0D3",
|
||||||
|
"MSG_MOVE_SET_SWIM_BACK_SPEED_CHEAT": "0x0D4",
|
||||||
|
"MSG_MOVE_SET_SWIM_BACK_SPEED": "0x0D5",
|
||||||
|
"MSG_MOVE_SET_ALL_SPEED_CHEAT": "0x0D6",
|
||||||
|
"MSG_MOVE_SET_TURN_RATE_CHEAT": "0x0D7",
|
||||||
|
"MSG_MOVE_SET_TURN_RATE": "0x0D8",
|
||||||
|
"MSG_MOVE_TOGGLE_COLLISION_CHEAT": "0x0D9",
|
||||||
|
"MSG_MOVE_SET_FACING": "0x0DA",
|
||||||
|
"MSG_MOVE_SET_PITCH": "0x0DB",
|
||||||
|
"SMSG_MOVE_WATER_WALK": "0x0DE",
|
||||||
|
"SMSG_MOVE_LAND_WALK": "0x0DF",
|
||||||
|
"MSG_MOVE_SET_RAW_POSITION_ACK": "0x0E0",
|
||||||
|
"CMSG_MOVE_SET_RAW_POSITION": "0x0E1",
|
||||||
|
"SMSG_FORCE_RUN_BACK_SPEED_CHANGE": "0x0E4",
|
||||||
|
"CMSG_FORCE_RUN_BACK_SPEED_CHANGE_ACK": "0x0E5",
|
||||||
|
"SMSG_FORCE_SWIM_SPEED_CHANGE": "0x0E6",
|
||||||
|
"CMSG_FORCE_SWIM_SPEED_CHANGE_ACK": "0x0E7",
|
||||||
|
"SMSG_FORCE_MOVE_ROOT": "0x0E8",
|
||||||
|
"CMSG_FORCE_MOVE_ROOT_ACK": "0x0E9",
|
||||||
|
"SMSG_FORCE_MOVE_UNROOT": "0x0EA",
|
||||||
|
"CMSG_FORCE_MOVE_UNROOT_ACK": "0x0EB",
|
||||||
|
"MSG_MOVE_ROOT": "0x0EC",
|
||||||
|
"MSG_MOVE_UNROOT": "0x0ED",
|
||||||
|
"MSG_MOVE_HEARTBEAT": "0x0EE",
|
||||||
|
"SMSG_MOVE_KNOCK_BACK": "0x0EF",
|
||||||
|
"CMSG_MOVE_KNOCK_BACK_ACK": "0x0F0",
|
||||||
|
"MSG_MOVE_KNOCK_BACK": "0x0F1",
|
||||||
|
"SMSG_MOVE_FEATHER_FALL": "0x0F2",
|
||||||
|
"SMSG_MOVE_NORMAL_FALL": "0x0F3",
|
||||||
|
"SMSG_MOVE_SET_HOVER": "0x0F4",
|
||||||
|
"SMSG_MOVE_UNSET_HOVER": "0x0F5",
|
||||||
|
"CMSG_MOVE_HOVER_ACK": "0x0F6",
|
||||||
|
"MSG_MOVE_HOVER": "0x0F7",
|
||||||
|
"CMSG_TRIGGER_CINEMATIC_CHEAT": "0x0F8",
|
||||||
|
"CMSG_OPENING_CINEMATIC": "0x0F9",
|
||||||
|
"SMSG_TRIGGER_CINEMATIC": "0x0FA",
|
||||||
|
"CMSG_NEXT_CINEMATIC_CAMERA": "0x0FB",
|
||||||
|
"CMSG_COMPLETE_CINEMATIC": "0x0FC",
|
||||||
|
"CMSG_TUTORIAL_FLAG": "0x0FE",
|
||||||
|
"CMSG_TUTORIAL_CLEAR": "0x0FF",
|
||||||
|
"CMSG_TUTORIAL_RESET": "0x100",
|
||||||
|
"CMSG_STANDSTATECHANGE": "0x101",
|
||||||
|
"CMSG_AUTOEQUIP_GROUND_ITEM": "0x106",
|
||||||
|
"CMSG_AUTOSTORE_GROUND_ITEM": "0x107",
|
||||||
|
"CMSG_STORE_LOOT_IN_SLOT": "0x109",
|
||||||
|
"CMSG_AUTOSTORE_BAG_ITEM": "0x10B",
|
||||||
|
"CMSG_SPLIT_ITEM": "0x10E",
|
||||||
|
"CMSG_AUTOEQUIP_ITEM_SLOT": "0x10F",
|
||||||
|
"CMSG_DESTROYITEM": "0x111",
|
||||||
|
"SMSG_OPEN_CONTAINER": "0x113",
|
||||||
|
"SMSG_INSPECT_RESULTS_UPDATE": "0x115",
|
||||||
|
"CMSG_BEGIN_TRADE": "0x117",
|
||||||
|
"CMSG_BUSY_TRADE": "0x118",
|
||||||
|
"CMSG_IGNORE_TRADE": "0x119",
|
||||||
|
"CMSG_ACCEPT_TRADE": "0x11A",
|
||||||
|
"CMSG_UNACCEPT_TRADE": "0x11B",
|
||||||
|
"CMSG_CANCEL_TRADE": "0x11C",
|
||||||
|
"CMSG_SET_TRADE_ITEM": "0x11D",
|
||||||
|
"CMSG_CLEAR_TRADE_ITEM": "0x11E",
|
||||||
|
"CMSG_SET_TRADE_GOLD": "0x11F",
|
||||||
|
"SMSG_TRADE_STATUS": "0x120",
|
||||||
|
"SMSG_TRADE_STATUS_EXTENDED": "0x121",
|
||||||
|
"SMSG_SET_FACTION_VISIBLE": "0x123",
|
||||||
|
"SMSG_SET_FACTION_STANDING": "0x124",
|
||||||
|
"CMSG_SET_FACTION_ATWAR": "0x125",
|
||||||
|
"CMSG_SET_FACTION_CHEAT": "0x126",
|
||||||
|
"CMSG_SET_ACTION_BUTTON": "0x128",
|
||||||
|
"CMSG_NEW_SPELL_SLOT": "0x12D",
|
||||||
|
"SMSG_CAST_FAILED": "0x130",
|
||||||
|
"SMSG_PET_CAST_FAILED": "0x138",
|
||||||
|
"MSG_CHANNEL_START": "0x139",
|
||||||
|
"MSG_CHANNEL_UPDATE": "0x13A",
|
||||||
|
"CMSG_CANCEL_CHANNELLING": "0x13B",
|
||||||
|
"CMSG_SET_TARGET_OBSOLETE": "0x13E",
|
||||||
|
"CMSG_UNUSED": "0x13F",
|
||||||
|
"CMSG_UNUSED2": "0x140",
|
||||||
|
"SMSG_ATTACKSWING_NOTINRANGE": "0x145",
|
||||||
|
"SMSG_ATTACKSWING_BADFACING": "0x146",
|
||||||
|
"SMSG_ATTACKSWING_NOTSTANDING": "0x147",
|
||||||
|
"SMSG_ATTACKSWING_DEADTARGET": "0x148",
|
||||||
|
"SMSG_ATTACKSWING_CANT_ATTACK": "0x149",
|
||||||
|
"SMSG_BATTLEFIELD_PORT_DENIED": "0x14B",
|
||||||
|
"SMSG_DAMAGE_DONE_OBSOLETE": "0x14C",
|
||||||
|
"SMSG_DAMAGE_TAKEN_OBSOLETE": "0x14D",
|
||||||
|
"SMSG_CANCEL_COMBAT": "0x14E",
|
||||||
|
"SMSG_PLAYER_COMBAT_XP_GAIN_OBSOLETE": "0x14F",
|
||||||
|
"CMSG_SHEATHE_OBSOLETE": "0x152",
|
||||||
|
"CMSG_SAVE_PLAYER": "0x153",
|
||||||
|
"CMSG_SETDEATHBINDPOINT": "0x154",
|
||||||
|
"CMSG_GETDEATHBINDZONE": "0x156",
|
||||||
|
"SMSG_BINDZONEREPLY": "0x157",
|
||||||
|
"SMSG_PLAYERBOUND": "0x158",
|
||||||
|
"SMSG_LOOT_ITEM_NOTIFY": "0x164",
|
||||||
|
"SMSG_DUEL_OUTOFBOUNDS": "0x168",
|
||||||
|
"SMSG_DUEL_INBOUNDS": "0x169",
|
||||||
|
"SMSG_DUEL_COMPLETE": "0x16A",
|
||||||
|
"SMSG_DUEL_WINNER": "0x16B",
|
||||||
|
"SMSG_MOUNTRESULT": "0x16E",
|
||||||
|
"SMSG_DISMOUNTRESULT": "0x16F",
|
||||||
|
"SMSG_REMOVED_FROM_PVP_QUEUE": "0x170",
|
||||||
|
"CMSG_MOUNTSPECIAL_ANIM": "0x171",
|
||||||
|
"SMSG_MOUNTSPECIAL_ANIM": "0x172",
|
||||||
|
"SMSG_PET_TAME_FAILURE": "0x173",
|
||||||
|
"CMSG_PET_SET_ACTION": "0x174",
|
||||||
|
"CMSG_PET_ACTION": "0x175",
|
||||||
|
"CMSG_PET_ABANDON": "0x176",
|
||||||
|
"CMSG_PET_RENAME": "0x177",
|
||||||
|
"SMSG_PET_NAME_INVALID": "0x178",
|
||||||
|
"SMSG_PET_SPELLS": "0x179",
|
||||||
|
"SMSG_PET_MODE": "0x17A",
|
||||||
|
"CMSG_NPC_TEXT_QUERY": "0x17F",
|
||||||
|
"SMSG_NPC_WONT_TALK": "0x181",
|
||||||
|
"CMSG_QUESTGIVER_QUEST_AUTOLAUNCH": "0x187",
|
||||||
|
"CMSG_QUESTGIVER_CANCEL": "0x190",
|
||||||
|
"SMSG_QUESTGIVER_QUEST_FAILED": "0x192",
|
||||||
|
"CMSG_QUESTLOG_SWAP_QUEST": "0x193",
|
||||||
|
"SMSG_QUESTUPDATE_FAILED": "0x196",
|
||||||
|
"SMSG_QUESTUPDATE_FAILEDTIMER": "0x197",
|
||||||
|
"CMSG_QUEST_CONFIRM_ACCEPT": "0x19B",
|
||||||
|
"SMSG_QUEST_CONFIRM_ACCEPT": "0x19C",
|
||||||
|
"CMSG_PUSHQUESTTOPARTY": "0x19D",
|
||||||
|
"CMSG_BUY_ITEM_IN_SLOT": "0x1A3",
|
||||||
|
"SMSG_BUY_ITEM": "0x1A4",
|
||||||
|
"CMSG_TAXICLEARALLNODES": "0x1A6",
|
||||||
|
"CMSG_TAXIENABLEALLNODES": "0x1A7",
|
||||||
|
"CMSG_TAXISHOWNODES": "0x1A8",
|
||||||
|
"CMSG_TAXIQUERYAVAILABLENODES": "0x1AC",
|
||||||
|
"SMSG_PLAYERBINDERROR": "0x1B6",
|
||||||
|
"CMSG_PETITION_SHOWLIST": "0x1BB",
|
||||||
|
"SMSG_PETITION_SHOWLIST": "0x1BC",
|
||||||
|
"CMSG_PETITION_BUY": "0x1BD",
|
||||||
|
"CMSG_PETITION_SHOW_SIGNATURES": "0x1BE",
|
||||||
|
"SMSG_PETITION_SHOW_SIGNATURES": "0x1BF",
|
||||||
|
"CMSG_PETITION_SIGN": "0x1C0",
|
||||||
|
"SMSG_PETITION_SIGN_RESULTS": "0x1C1",
|
||||||
|
"MSG_PETITION_DECLINE": "0x1C2",
|
||||||
|
"CMSG_OFFER_PETITION": "0x1C3",
|
||||||
|
"CMSG_TURN_IN_PETITION": "0x1C4",
|
||||||
|
"SMSG_TURN_IN_PETITION_RESULTS": "0x1C5",
|
||||||
|
"CMSG_PETITION_QUERY": "0x1C6",
|
||||||
|
"SMSG_PETITION_QUERY_RESPONSE": "0x1C7",
|
||||||
|
"SMSG_FISH_NOT_HOOKED": "0x1C8",
|
||||||
|
"SMSG_FISH_ESCAPED": "0x1C9",
|
||||||
|
"CMSG_BUG": "0x1CA",
|
||||||
|
"SMSG_NOTIFICATION": "0x1CB",
|
||||||
|
"CMSG_PLAYED_TIME": "0x1CC",
|
||||||
|
"SMSG_AURACASTLOG": "0x1D1",
|
||||||
|
"CMSG_RECLAIM_CORPSE": "0x1D2",
|
||||||
|
"CMSG_WRAP_ITEM": "0x1D3",
|
||||||
|
"MSG_MINIMAP_PING": "0x1D5",
|
||||||
|
"SMSG_RESISTLOG": "0x1D6",
|
||||||
|
"SMSG_ENCHANTMENTLOG": "0x1D7",
|
||||||
|
"CMSG_SET_SKILL_CHEAT": "0x1D8",
|
||||||
|
"SMSG_START_MIRROR_TIMER": "0x1D9",
|
||||||
|
"SMSG_PAUSE_MIRROR_TIMER": "0x1DA",
|
||||||
|
"SMSG_STOP_MIRROR_TIMER": "0x1DB",
|
||||||
|
"SMSG_CLEAR_COOLDOWN": "0x1DE",
|
||||||
|
"SMSG_GAMEOBJECT_PAGETEXT": "0x1DF",
|
||||||
|
"CMSG_SETSHEATHED": "0x1E0",
|
||||||
|
"SMSG_COOLDOWN_CHEAT": "0x1E1",
|
||||||
|
"CMSG_PLAYER_MACRO_OBSOLETE": "0x1E3",
|
||||||
|
"SMSG_PLAYER_MACRO_OBSOLETE": "0x1E4",
|
||||||
|
"CMSG_GHOST": "0x1E5",
|
||||||
|
"CMSG_GM_INVIS": "0x1E6",
|
||||||
|
"SMSG_INVALID_PROMOTION_CODE": "0x1E7",
|
||||||
|
"MSG_GM_BIND_OTHER": "0x1E8",
|
||||||
|
"MSG_GM_SUMMON": "0x1E9",
|
||||||
|
"SMSG_ITEM_TIME_UPDATE": "0x1EA",
|
||||||
|
"SMSG_ITEM_ENCHANT_TIME_UPDATE": "0x1EB",
|
||||||
|
"MSG_GM_SHOWLABEL": "0x1EF",
|
||||||
|
"CMSG_PET_CAST_SPELL": "0x1F0",
|
||||||
|
"MSG_SAVE_GUILD_EMBLEM": "0x1F1",
|
||||||
|
"MSG_TABARDVENDOR_ACTIVATE": "0x1F2",
|
||||||
|
"CMSG_ZONEUPDATE": "0x1F4",
|
||||||
|
"SMSG_PLAY_SPELL_IMPACT": "0x1F7",
|
||||||
|
"SMSG_EXPLORATION_EXPERIENCE": "0x1F8",
|
||||||
|
"CMSG_GM_SET_SECURITY_GROUP": "0x1F9",
|
||||||
|
"CMSG_GM_NUKE": "0x1FA",
|
||||||
|
"CMSG_RWHOIS_OBSOLETE": "0x1FD",
|
||||||
|
"SMSG_RWHOIS": "0x1FE",
|
||||||
|
"MSG_LOOKING_FOR_GROUP": "0x1FF",
|
||||||
|
"CMSG_SET_LOOKING_FOR_GROUP": "0x200",
|
||||||
|
"CMSG_UNLEARN_SPELL": "0x201",
|
||||||
|
"CMSG_UNLEARN_SKILL": "0x202",
|
||||||
|
"CMSG_DECHARGE": "0x204",
|
||||||
|
"CMSG_GMTICKET_CREATE": "0x205",
|
||||||
|
"SMSG_GMTICKET_CREATE": "0x206",
|
||||||
|
"CMSG_GMTICKET_UPDATETEXT": "0x207",
|
||||||
|
"SMSG_GMTICKET_UPDATETEXT": "0x208",
|
||||||
|
"CMSG_REQUEST_ACCOUNT_DATA": "0x20A",
|
||||||
|
"CMSG_UPDATE_ACCOUNT_DATA": "0x20B",
|
||||||
|
"SMSG_UPDATE_ACCOUNT_DATA": "0x20C",
|
||||||
|
"SMSG_CLEAR_FAR_SIGHT_IMMEDIATE": "0x20D",
|
||||||
|
"SMSG_POWERGAINLOG_OBSOLETE": "0x20E",
|
||||||
|
"CMSG_GM_TEACH": "0x20F",
|
||||||
|
"CMSG_GM_CREATE_ITEM_TARGET": "0x210",
|
||||||
|
"CMSG_GMTICKET_GETTICKET": "0x211",
|
||||||
|
"SMSG_GMTICKET_GETTICKET": "0x212",
|
||||||
|
"CMSG_UNLEARN_TALENTS": "0x213",
|
||||||
|
"SMSG_GAMEOBJECT_SPAWN_ANIM_OBSOLETE": "0x214",
|
||||||
|
"SMSG_GAMEOBJECT_DESPAWN_ANIM": "0x215",
|
||||||
|
"MSG_CORPSE_QUERY": "0x216",
|
||||||
|
"CMSG_GMTICKET_DELETETICKET": "0x217",
|
||||||
|
"SMSG_GMTICKET_DELETETICKET": "0x218",
|
||||||
|
"SMSG_CHAT_WRONG_FACTION": "0x219",
|
||||||
|
"CMSG_GMTICKET_SYSTEMSTATUS": "0x21A",
|
||||||
|
"SMSG_GMTICKET_SYSTEMSTATUS": "0x21B",
|
||||||
|
"CMSG_SET_STAT_CHEAT": "0x21D",
|
||||||
|
"SMSG_QUEST_FORCE_REMOVE": "0x21E",
|
||||||
|
"CMSG_SKILL_BUY_STEP": "0x21F",
|
||||||
|
"CMSG_SKILL_BUY_RANK": "0x220",
|
||||||
|
"CMSG_XP_CHEAT": "0x221",
|
||||||
|
"CMSG_CHARACTER_POINT_CHEAT": "0x223",
|
||||||
|
"SMSG_GOSSIP_POI": "0x224",
|
||||||
|
"CMSG_CHAT_IGNORED": "0x225",
|
||||||
|
"CMSG_GM_VISION": "0x226",
|
||||||
|
"CMSG_SERVER_COMMAND": "0x227",
|
||||||
|
"CMSG_GM_SILENCE": "0x228",
|
||||||
|
"CMSG_GM_REVEALTO": "0x229",
|
||||||
|
"CMSG_GM_RESURRECT": "0x22A",
|
||||||
|
"CMSG_GM_SUMMONMOB": "0x22B",
|
||||||
|
"CMSG_GM_MOVECORPSE": "0x22C",
|
||||||
|
"CMSG_GM_FREEZE": "0x22D",
|
||||||
|
"CMSG_GM_UBERINVIS": "0x22E",
|
||||||
|
"CMSG_GM_REQUEST_PLAYER_INFO": "0x22F",
|
||||||
|
"SMSG_GM_PLAYER_INFO": "0x230",
|
||||||
|
"CMSG_GUILD_RANK": "0x231",
|
||||||
|
"CMSG_GUILD_ADD_RANK": "0x232",
|
||||||
|
"CMSG_GUILD_DEL_RANK": "0x233",
|
||||||
|
"CMSG_CLEAR_EXPLORATION": "0x237",
|
||||||
|
"CMSG_SEND_MAIL": "0x238",
|
||||||
|
"SMSG_SEND_MAIL_RESULT": "0x239",
|
||||||
|
"CMSG_GET_MAIL_LIST": "0x23A",
|
||||||
|
"SMSG_MAIL_LIST_RESULT": "0x23B",
|
||||||
|
"SMSG_BATTLEFIELD_WIN_OBSOLETE": "0x23F",
|
||||||
|
"SMSG_BATTLEFIELD_LOSE_OBSOLETE": "0x240",
|
||||||
|
"CMSG_TAXICLEARNODE": "0x241",
|
||||||
|
"CMSG_TAXIENABLENODE": "0x242",
|
||||||
|
"CMSG_ITEM_TEXT_QUERY": "0x243",
|
||||||
|
"SMSG_ITEM_TEXT_QUERY_RESPONSE": "0x244",
|
||||||
|
"CMSG_MAIL_TAKE_MONEY": "0x245",
|
||||||
|
"CMSG_MAIL_TAKE_ITEM": "0x246",
|
||||||
|
"CMSG_MAIL_MARK_AS_READ": "0x247",
|
||||||
|
"CMSG_MAIL_RETURN_TO_SENDER": "0x248",
|
||||||
|
"CMSG_MAIL_DELETE": "0x249",
|
||||||
|
"CMSG_MAIL_CREATE_TEXT_ITEM": "0x24A",
|
||||||
|
"SMSG_SPELLLOGMISS": "0x24B",
|
||||||
|
"SMSG_SPELLLOGEXECUTE": "0x24C",
|
||||||
|
"SMSG_DEBUGAURAPROC": "0x24D",
|
||||||
|
"SMSG_SPELLDAMAGESHIELD": "0x24F",
|
||||||
|
"SMSG_RESURRECT_FAILED": "0x252",
|
||||||
|
"SMSG_ZONE_UNDER_ATTACK": "0x254",
|
||||||
|
"SMSG_PROCRESIST": "0x260",
|
||||||
|
"SMSG_STANDSTATE_CHANGE_FAILURE_OBSOLETE": "0x261",
|
||||||
|
"SMSG_DISPEL_FAILED": "0x262",
|
||||||
|
"SMSG_SPELLORDAMAGE_IMMUNE": "0x263",
|
||||||
|
"CMSG_SET_AMMO": "0x268",
|
||||||
|
"SMSG_CORPSE_RECLAIM_DELAY": "0x269",
|
||||||
|
"CMSG_PET_CANCEL_AURA": "0x26B",
|
||||||
|
"CMSG_PLAYER_AI_CHEAT": "0x26C",
|
||||||
|
"CMSG_CANCEL_AUTO_REPEAT_SPELL": "0x26D",
|
||||||
|
"MSG_GM_ACCOUNT_ONLINE": "0x26E",
|
||||||
|
"MSG_LIST_STABLED_PETS": "0x26F",
|
||||||
|
"CMSG_STABLE_PET": "0x270",
|
||||||
|
"CMSG_UNSTABLE_PET": "0x271",
|
||||||
|
"CMSG_BUY_STABLE_SLOT": "0x272",
|
||||||
|
"SMSG_STABLE_RESULT": "0x273",
|
||||||
|
"CMSG_STABLE_REVIVE_PET": "0x274",
|
||||||
|
"CMSG_STABLE_SWAP_PET": "0x275",
|
||||||
|
"MSG_QUEST_PUSH_RESULT": "0x276",
|
||||||
|
"SMSG_PLAY_MUSIC": "0x277",
|
||||||
|
"SMSG_PLAY_OBJECT_SOUND": "0x278",
|
||||||
|
"CMSG_REQUEST_PET_INFO": "0x279",
|
||||||
|
"CMSG_FAR_SIGHT": "0x27A",
|
||||||
|
"SMSG_SPELLDISPELLOG": "0x27B",
|
||||||
|
"SMSG_DAMAGE_CALC_LOG": "0x27C",
|
||||||
|
"CMSG_ENABLE_DAMAGE_LOG": "0x27D",
|
||||||
|
"CMSG_GROUP_CHANGE_SUB_GROUP": "0x27E",
|
||||||
|
"CMSG_REQUEST_PARTY_MEMBER_STATS": "0x27F",
|
||||||
|
"CMSG_GROUP_SWAP_SUB_GROUP": "0x280",
|
||||||
|
"CMSG_RESET_FACTION_CHEAT": "0x281",
|
||||||
|
"MSG_QUERY_NEXT_MAIL_TIME": "0x284",
|
||||||
|
"SMSG_RECEIVED_MAIL": "0x285",
|
||||||
|
"SMSG_RAID_GROUP_ONLY": "0x286",
|
||||||
|
"CMSG_SET_DURABILITY_CHEAT": "0x287",
|
||||||
|
"CMSG_SET_PVP_RANK_CHEAT": "0x288",
|
||||||
|
"CMSG_ADD_PVP_MEDAL_CHEAT": "0x289",
|
||||||
|
"CMSG_DEL_PVP_MEDAL_CHEAT": "0x28A",
|
||||||
|
"CMSG_SET_PVP_TITLE": "0x28B",
|
||||||
|
"SMSG_PVP_CREDIT": "0x28C",
|
||||||
|
"SMSG_AUCTION_REMOVED_NOTIFICATION": "0x28D",
|
||||||
|
"CMSG_GROUP_RAID_CONVERT": "0x28E",
|
||||||
|
"CMSG_GROUP_ASSISTANT_LEADER": "0x28F",
|
||||||
|
"SMSG_SERVER_MESSAGE": "0x291",
|
||||||
|
"CMSG_MEETINGSTONE_JOIN": "0x292",
|
||||||
|
"SMSG_MEETINGSTONE_LEAVE": "0x293",
|
||||||
|
"CMSG_MEETINGSTONE_CHEAT": "0x294",
|
||||||
|
"SMSG_MEETINGSTONE_SETQUEUE": "0x295",
|
||||||
|
"CMSG_MEETINGSTONE_INFO": "0x296",
|
||||||
|
"SMSG_MEETINGSTONE_COMPLETE": "0x297",
|
||||||
|
"SMSG_MEETINGSTONE_IN_PROGRESS": "0x298",
|
||||||
|
"SMSG_MEETINGSTONE_MEMBER_ADDED": "0x299",
|
||||||
|
"CMSG_GMTICKETSYSTEM_TOGGLE": "0x29A",
|
||||||
|
"CMSG_CANCEL_GROWTH_AURA": "0x29B",
|
||||||
|
"SMSG_STANDSTATE_UPDATE": "0x29D",
|
||||||
|
"SMSG_LOOT_ALL_PASSED": "0x29E",
|
||||||
|
"SMSG_LOOT_ROLL_WON": "0x29F",
|
||||||
|
"CMSG_LOOT_ROLL": "0x2A0",
|
||||||
|
"SMSG_LOOT_START_ROLL": "0x2A1",
|
||||||
|
"SMSG_LOOT_ROLL": "0x2A2",
|
||||||
|
"CMSG_LOOT_MASTER_GIVE": "0x2A3",
|
||||||
|
"SMSG_LOOT_MASTER_LIST": "0x2A4",
|
||||||
|
"SMSG_SET_FORCED_REACTIONS": "0x2A5",
|
||||||
|
"SMSG_SPELL_FAILED_OTHER": "0x2A6",
|
||||||
|
"SMSG_GAMEOBJECT_RESET_STATE": "0x2A7",
|
||||||
|
"CMSG_REPAIR_ITEM": "0x2A8",
|
||||||
|
"SMSG_CHAT_PLAYER_NOT_FOUND": "0x2A9",
|
||||||
|
"SMSG_SUMMON_REQUEST": "0x2AB",
|
||||||
|
"CMSG_SUMMON_RESPONSE": "0x2AC",
|
||||||
|
"MSG_MOVE_TOGGLE_GRAVITY_CHEAT": "0x2AD",
|
||||||
|
"SMSG_PET_BROKEN": "0x2AF",
|
||||||
|
"MSG_MOVE_FEATHER_FALL": "0x2B0",
|
||||||
|
"MSG_MOVE_WATER_WALK": "0x2B1",
|
||||||
|
"CMSG_SERVER_BROADCAST": "0x2B2",
|
||||||
|
"CMSG_SELF_RES": "0x2B3",
|
||||||
|
"SMSG_FEIGN_DEATH_RESISTED": "0x2B4",
|
||||||
|
"CMSG_RUN_SCRIPT": "0x2B5",
|
||||||
|
"SMSG_SCRIPT_MESSAGE": "0x2B6",
|
||||||
|
"SMSG_DUEL_COUNTDOWN": "0x2B7",
|
||||||
|
"SMSG_AREA_TRIGGER_MESSAGE": "0x2B8",
|
||||||
|
"CMSG_SHOWING_HELM": "0x2B9",
|
||||||
|
"CMSG_SHOWING_CLOAK": "0x2BA",
|
||||||
|
"SMSG_MEETINGSTONE_JOINFAILED": "0x2BB",
|
||||||
|
"SMSG_PLAYER_SKINNED": "0x2BC",
|
||||||
|
"SMSG_DURABILITY_DAMAGE_DEATH": "0x2BD",
|
||||||
|
"CMSG_SET_EXPLORATION": "0x2BE",
|
||||||
|
"CMSG_SET_ACTIONBAR_TOGGLES": "0x2BF",
|
||||||
|
"MSG_PETITION_RENAME": "0x2C1",
|
||||||
|
"SMSG_UPDATE_WORLD_STATE": "0x2C3",
|
||||||
|
"CMSG_ITEM_NAME_QUERY": "0x2C4",
|
||||||
|
"SMSG_ITEM_NAME_QUERY_RESPONSE": "0x2C5",
|
||||||
|
"SMSG_PET_ACTION_FEEDBACK": "0x2C6",
|
||||||
|
"CMSG_CHAR_RENAME": "0x2C7",
|
||||||
|
"SMSG_CHAR_RENAME": "0x2C8",
|
||||||
|
"CMSG_MOVE_SPLINE_DONE": "0x2C9",
|
||||||
|
"CMSG_MOVE_FALL_RESET": "0x2CA",
|
||||||
|
"SMSG_INSTANCE_SAVE_CREATED": "0x2CB",
|
||||||
|
"CMSG_MOVE_TIME_SKIPPED": "0x2CE",
|
||||||
|
"CMSG_MOVE_FEATHER_FALL_ACK": "0x2CF",
|
||||||
|
"CMSG_MOVE_WATER_WALK_ACK": "0x2D0",
|
||||||
|
"CMSG_MOVE_NOT_ACTIVE_MOVER": "0x2D1",
|
||||||
|
"MSG_INSPECT_HONOR_STATS": "0x2D6",
|
||||||
|
"CMSG_MOVE_START_SWIM_CHEAT": "0x2D8",
|
||||||
|
"CMSG_MOVE_STOP_SWIM_CHEAT": "0x2D9",
|
||||||
|
"SMSG_FORCE_WALK_SPEED_CHANGE": "0x2DA",
|
||||||
|
"CMSG_FORCE_WALK_SPEED_CHANGE_ACK": "0x2DB",
|
||||||
|
"SMSG_FORCE_SWIM_BACK_SPEED_CHANGE": "0x2DC",
|
||||||
|
"CMSG_FORCE_SWIM_BACK_SPEED_CHANGE_ACK": "0x2DD",
|
||||||
|
"SMSG_FORCE_TURN_RATE_CHANGE": "0x2DE",
|
||||||
|
"CMSG_FORCE_TURN_RATE_CHANGE_ACK": "0x2DF",
|
||||||
|
"CMSG_AREA_SPIRIT_HEALER_QUERY": "0x2E2",
|
||||||
|
"CMSG_AREA_SPIRIT_HEALER_QUEUE": "0x2E3",
|
||||||
|
"SMSG_AREA_SPIRIT_HEALER_TIME": "0x2E4",
|
||||||
|
"CMSG_GM_UNTEACH": "0x2E5",
|
||||||
|
"CMSG_PET_STOP_ATTACK": "0x2EA",
|
||||||
|
"SMSG_BINDER_CONFIRM": "0x2EB",
|
||||||
|
"SMSG_ADDON_INFO": "0x2EF",
|
||||||
|
"CMSG_PET_UNLEARN": "0x2F0",
|
||||||
|
"SMSG_PET_UNLEARN_CONFIRM": "0x2F1",
|
||||||
|
"SMSG_PARTY_MEMBER_STATS_FULL": "0x2F2",
|
||||||
|
"CMSG_PET_SPELL_AUTOCAST": "0x2F3",
|
||||||
|
"SMSG_PLAY_TIME_WARNING": "0x2F5",
|
||||||
|
"SMSG_MINIGAME_SETUP": "0x2F6",
|
||||||
|
"SMSG_MINIGAME_STATE": "0x2F7",
|
||||||
|
"CMSG_MINIGAME_MOVE": "0x2F8",
|
||||||
|
"SMSG_MINIGAME_MOVE_FAILED": "0x2F9",
|
||||||
|
"SMSG_RAID_INSTANCE_MESSAGE": "0x2FA",
|
||||||
|
"SMSG_COMPRESSED_MOVES": "0x2FB",
|
||||||
|
"CMSG_GUILD_INFO_TEXT": "0x2FC",
|
||||||
|
"SMSG_CHAT_RESTRICTED": "0x2FD",
|
||||||
|
"SMSG_SPLINE_SET_RUN_SPEED": "0x2FE",
|
||||||
|
"SMSG_SPLINE_SET_RUN_BACK_SPEED": "0x2FF",
|
||||||
|
"SMSG_SPLINE_SET_SWIM_SPEED": "0x300",
|
||||||
|
"SMSG_SPLINE_SET_WALK_SPEED": "0x301",
|
||||||
|
"SMSG_SPLINE_SET_SWIM_BACK_SPEED": "0x302",
|
||||||
|
"SMSG_SPLINE_SET_TURN_RATE": "0x303",
|
||||||
|
"SMSG_SPLINE_MOVE_UNROOT": "0x304",
|
||||||
|
"SMSG_SPLINE_MOVE_FEATHER_FALL": "0x305",
|
||||||
|
"SMSG_SPLINE_MOVE_NORMAL_FALL": "0x306",
|
||||||
|
"SMSG_SPLINE_MOVE_SET_HOVER": "0x307",
|
||||||
|
"SMSG_SPLINE_MOVE_UNSET_HOVER": "0x308",
|
||||||
|
"SMSG_SPLINE_MOVE_WATER_WALK": "0x309",
|
||||||
|
"SMSG_SPLINE_MOVE_LAND_WALK": "0x30A",
|
||||||
|
"SMSG_SPLINE_MOVE_START_SWIM": "0x30B",
|
||||||
|
"SMSG_SPLINE_MOVE_STOP_SWIM": "0x30C",
|
||||||
|
"CMSG_GM_NUKE_ACCOUNT": "0x30F",
|
||||||
|
"MSG_GM_DESTROY_CORPSE": "0x310",
|
||||||
|
"CMSG_GM_DESTROY_ONLINE_CORPSE": "0x311",
|
||||||
|
"SMSG_SET_FACTION_ATWAR": "0x313",
|
||||||
|
"SMSG_GAMETIMEBIAS_SET": "0x314",
|
||||||
|
"CMSG_DEBUG_ACTIONS_START": "0x315",
|
||||||
|
"CMSG_DEBUG_ACTIONS_STOP": "0x316",
|
||||||
|
"CMSG_SET_FACTION_INACTIVE": "0x317",
|
||||||
|
"CMSG_SET_WATCHED_FACTION": "0x318",
|
||||||
|
"MSG_MOVE_TIME_SKIPPED": "0x319",
|
||||||
|
"SMSG_SPLINE_MOVE_ROOT": "0x31A",
|
||||||
|
"CMSG_SET_EXPLORATION_ALL": "0x31B",
|
||||||
|
"SMSG_INVALIDATE_PLAYER": "0x31C",
|
||||||
|
"CMSG_RESET_INSTANCES": "0x31D",
|
||||||
|
"SMSG_INSTANCE_RESET": "0x31E",
|
||||||
|
"SMSG_INSTANCE_RESET_FAILED": "0x31F",
|
||||||
|
"SMSG_UPDATE_LAST_INSTANCE": "0x320",
|
||||||
|
"CMSG_LUA_USAGE": "0x323",
|
||||||
|
"SMSG_PET_ACTION_SOUND": "0x324",
|
||||||
|
"SMSG_PET_DISMISS_SOUND": "0x325",
|
||||||
|
"SMSG_GHOSTEE_GONE": "0x326",
|
||||||
|
"CMSG_GM_UPDATE_TICKET_STATUS": "0x327",
|
||||||
|
"SMSG_GM_TICKET_STATUS_UPDATE": "0x328",
|
||||||
|
"MSG_SET_DUNGEON_DIFFICULTY": "0x329",
|
||||||
|
"CMSG_GMSURVEY_SUBMIT": "0x32A",
|
||||||
|
"SMSG_UPDATE_INSTANCE_OWNERSHIP": "0x32B",
|
||||||
|
"CMSG_IGNORE_KNOCKBACK_CHEAT": "0x32C",
|
||||||
|
"SMSG_CHAT_PLAYER_AMBIGUOUS": "0x32D",
|
||||||
|
"MSG_DELAY_GHOST_TELEPORT": "0x32E",
|
||||||
|
"SMSG_SPELLINSTAKILLLOG": "0x32F",
|
||||||
|
"SMSG_SPELL_UPDATE_CHAIN_TARGETS": "0x330",
|
||||||
|
"CMSG_CHAT_FILTERED": "0x331",
|
||||||
|
"SMSG_EXPECTED_SPAM_RECORDS": "0x332",
|
||||||
|
"SMSG_SPELLSTEALLOG": "0x333",
|
||||||
|
"CMSG_LOTTERY_QUERY_OBSOLETE": "0x334",
|
||||||
|
"SMSG_LOTTERY_QUERY_RESULT_OBSOLETE": "0x335",
|
||||||
|
"CMSG_BUY_LOTTERY_TICKET_OBSOLETE": "0x336",
|
||||||
|
"SMSG_LOTTERY_RESULT_OBSOLETE": "0x337",
|
||||||
|
"SMSG_CHARACTER_PROFILE": "0x338",
|
||||||
|
"SMSG_CHARACTER_PROFILE_REALM_CONNECTED": "0x339",
|
||||||
|
"SMSG_DEFENSE_MESSAGE": "0x33A",
|
||||||
|
"SMSG_INSTANCE_DIFFICULTY": "0x33B",
|
||||||
|
"MSG_GM_RESETINSTANCELIMIT": "0x33C",
|
||||||
|
"SMSG_MOVE_SET_FLIGHT": "0x33E",
|
||||||
|
"SMSG_MOVE_UNSET_FLIGHT": "0x33F",
|
||||||
|
"CMSG_MOVE_FLIGHT_ACK": "0x340",
|
||||||
|
"MSG_MOVE_START_SWIM_CHEAT": "0x341",
|
||||||
|
"MSG_MOVE_STOP_SWIM_CHEAT": "0x342",
|
||||||
|
"SMSG_MOVE_SET_CAN_FLY": "0x343",
|
||||||
|
"SMSG_MOVE_UNSET_CAN_FLY": "0x344",
|
||||||
|
"CMSG_MOVE_SET_CAN_FLY_ACK": "0x345",
|
||||||
|
"CMSG_MOVE_SET_FLY": "0x346",
|
||||||
|
"CMSG_SOCKET_GEMS": "0x347",
|
||||||
|
"MSG_MOVE_START_ASCEND": "0x359",
|
||||||
|
"MSG_MOVE_STOP_ASCEND": "0x35A",
|
||||||
|
"CMSG_LFG_SET_AUTOJOIN": "0x35C",
|
||||||
|
"CMSG_LFG_CLEAR_AUTOJOIN": "0x35D",
|
||||||
|
"CMSG_LFM_SET_AUTOFILL": "0x35E",
|
||||||
|
"CMSG_LFM_CLEAR_AUTOFILL": "0x35F",
|
||||||
|
"CMSG_ACCEPT_LFG_MATCH": "0x360",
|
||||||
|
"CMSG_DECLINE_LFG_MATCH": "0x361",
|
||||||
|
"CMSG_CANCEL_PENDING_LFG": "0x362",
|
||||||
|
"CMSG_CLEAR_LOOKING_FOR_GROUP": "0x363",
|
||||||
|
"CMSG_CLEAR_LOOKING_FOR_MORE": "0x364",
|
||||||
|
"CMSG_SET_LOOKING_FOR_MORE": "0x365",
|
||||||
|
"CMSG_SET_LFG_COMMENT": "0x366",
|
||||||
|
"SMSG_LFG_TIMEDOUT": "0x367",
|
||||||
|
"SMSG_LFG_OTHER_TIMEDOUT": "0x368",
|
||||||
|
"SMSG_LFG_AUTOJOIN_FAILED": "0x369",
|
||||||
|
"SMSG_LFG_AUTOJOIN_FAILED_NO_PLAYER": "0x36A",
|
||||||
|
"SMSG_LFG_LEADER_IS_LFM": "0x36B",
|
||||||
|
"SMSG_LFG_UPDATE": "0x36C",
|
||||||
|
"SMSG_LFG_UPDATE_LFM": "0x36D",
|
||||||
|
"SMSG_LFG_UPDATE_LFG": "0x36E",
|
||||||
|
"SMSG_LFG_UPDATE_QUEUED": "0x36F",
|
||||||
|
"SMSG_LFG_PENDING_INVITE": "0x370",
|
||||||
|
"SMSG_LFG_PENDING_MATCH": "0x371",
|
||||||
|
"SMSG_LFG_PENDING_MATCH_DONE": "0x372",
|
||||||
|
"SMSG_TITLE_EARNED": "0x373",
|
||||||
|
"CMSG_SET_TITLE": "0x374",
|
||||||
|
"SMSG_DEATH_RELEASE_LOC": "0x378",
|
||||||
|
"CMSG_CANCEL_TEMP_ENCHANTMENT": "0x379",
|
||||||
|
"SMSG_FORCED_DEATH_UPDATE": "0x37A",
|
||||||
|
"CMSG_CHEAT_SET_HONOR_CURRENCY": "0x37B",
|
||||||
|
"CMSG_CHEAT_SET_ARENA_CURRENCY": "0x37C",
|
||||||
|
"MSG_MOVE_SET_FLIGHT_SPEED_CHEAT": "0x37D",
|
||||||
|
"MSG_MOVE_SET_FLIGHT_SPEED": "0x37E",
|
||||||
|
"MSG_MOVE_SET_FLIGHT_BACK_SPEED_CHEAT": "0x37F",
|
||||||
|
"MSG_MOVE_SET_FLIGHT_BACK_SPEED": "0x380",
|
||||||
|
"SMSG_FORCE_FLIGHT_SPEED_CHANGE": "0x381",
|
||||||
|
"CMSG_FORCE_FLIGHT_SPEED_CHANGE_ACK": "0x382",
|
||||||
|
"SMSG_FORCE_FLIGHT_BACK_SPEED_CHANGE": "0x383",
|
||||||
|
"CMSG_FORCE_FLIGHT_BACK_SPEED_CHANGE_ACK": "0x384",
|
||||||
|
"SMSG_SPLINE_SET_FLIGHT_SPEED": "0x385",
|
||||||
|
"SMSG_SPLINE_SET_FLIGHT_BACK_SPEED": "0x386",
|
||||||
|
"CMSG_MAELSTROM_INVALIDATE_CACHE": "0x387",
|
||||||
|
"SMSG_FLIGHT_SPLINE_SYNC": "0x388",
|
||||||
|
"CMSG_SET_TAXI_BENCHMARK_MODE": "0x389",
|
||||||
|
"SMSG_REALM_SPLIT": "0x38B",
|
||||||
|
"CMSG_REALM_SPLIT": "0x38C",
|
||||||
|
"CMSG_MOVE_CHNG_TRANSPORT": "0x38D",
|
||||||
|
"MSG_PARTY_ASSIGNMENT": "0x38E",
|
||||||
|
"SMSG_OFFER_PETITION_ERROR": "0x38F",
|
||||||
|
"SMSG_TIME_SYNC_REQ": "0x390",
|
||||||
|
"CMSG_TIME_SYNC_RESP": "0x391",
|
||||||
|
"CMSG_SEND_LOCAL_EVENT": "0x392",
|
||||||
|
"CMSG_SEND_GENERAL_TRIGGER": "0x393",
|
||||||
|
"CMSG_SEND_COMBAT_TRIGGER": "0x394",
|
||||||
|
"CMSG_MAELSTROM_GM_SENT_MAIL": "0x395",
|
||||||
|
"SMSG_RESET_FAILED_NOTIFY": "0x396",
|
||||||
|
"SMSG_REAL_GROUP_UPDATE": "0x397",
|
||||||
|
"SMSG_LFG_DISABLED": "0x398",
|
||||||
|
"CMSG_ACTIVE_PVP_CHEAT": "0x399",
|
||||||
|
"CMSG_CHEAT_DUMP_ITEMS_DEBUG_ONLY": "0x39A",
|
||||||
|
"SMSG_CHEAT_DUMP_ITEMS_DEBUG_ONLY_RESPONSE": "0x39B",
|
||||||
|
"SMSG_CHEAT_DUMP_ITEMS_DEBUG_ONLY_RESPONSE_WRITE_FILE": "0x39C",
|
||||||
|
"SMSG_UPDATE_COMBO_POINTS": "0x39D",
|
||||||
|
"SMSG_VOICE_SESSION_ROSTER_UPDATE": "0x39E",
|
||||||
|
"SMSG_VOICE_SESSION_LEAVE": "0x39F",
|
||||||
|
"SMSG_VOICE_SESSION_ADJUST_PRIORITY": "0x3A0",
|
||||||
|
"CMSG_VOICE_SET_TALKER_MUTED_REQUEST": "0x3A1",
|
||||||
|
"SMSG_VOICE_SET_TALKER_MUTED": "0x3A2",
|
||||||
|
"SMSG_SET_EXTRA_AURA_INFO_NEED_UPDATE": "0x3A5",
|
||||||
|
"SMSG_CLEAR_EXTRA_AURA_INFO": "0x3A6",
|
||||||
|
"MSG_MOVE_START_DESCEND": "0x3A7",
|
||||||
|
"CMSG_IGNORE_REQUIREMENTS_CHEAT": "0x3A8",
|
||||||
|
"SMSG_IGNORE_REQUIREMENTS_CHEAT": "0x3A9",
|
||||||
|
"SMSG_SPELL_CHANCE_PROC_LOG": "0x3AA",
|
||||||
|
"CMSG_MOVE_SET_RUN_SPEED": "0x3AB",
|
||||||
|
"SMSG_DISMOUNT": "0x3AC",
|
||||||
|
"MSG_MOVE_UPDATE_CAN_FLY": "0x3AD",
|
||||||
|
"CMSG_VOICE_SESSION_ENABLE": "0x3AF",
|
||||||
|
"SMSG_VOICE_PARENTAL_CONTROLS": "0x3B0",
|
||||||
|
"CMSG_GM_WHISPER": "0x3B1",
|
||||||
|
"SMSG_GM_MESSAGECHAT": "0x3B2",
|
||||||
|
"MSG_GM_GEARRATING": "0x3B3",
|
||||||
|
"CMSG_COMMENTATOR_ENABLE": "0x3B4",
|
||||||
|
"SMSG_COMMENTATOR_STATE_CHANGED": "0x3B5",
|
||||||
|
"CMSG_COMMENTATOR_GET_MAP_INFO": "0x3B6",
|
||||||
|
"SMSG_COMMENTATOR_MAP_INFO": "0x3B7",
|
||||||
|
"CMSG_COMMENTATOR_GET_PLAYER_INFO": "0x3B8",
|
||||||
|
"SMSG_COMMENTATOR_GET_PLAYER_INFO": "0x3B9",
|
||||||
|
"SMSG_COMMENTATOR_PLAYER_INFO": "0x3BA",
|
||||||
|
"CMSG_COMMENTATOR_ENTER_INSTANCE": "0x3BB",
|
||||||
|
"CMSG_COMMENTATOR_EXIT_INSTANCE": "0x3BC",
|
||||||
|
"CMSG_COMMENTATOR_INSTANCE_COMMAND": "0x3BD",
|
||||||
|
"SMSG_CLEAR_TARGET": "0x3BE",
|
||||||
|
"CMSG_BOT_DETECTED": "0x3BF",
|
||||||
|
"SMSG_CROSSED_INEBRIATION_THRESHOLD": "0x3C0",
|
||||||
|
"CMSG_CHEAT_PLAYER_LOGIN": "0x3C1",
|
||||||
|
"CMSG_CHEAT_PLAYER_LOOKUP": "0x3C2",
|
||||||
|
"SMSG_CHEAT_PLAYER_LOOKUP": "0x3C3",
|
||||||
|
"SMSG_KICK_REASON": "0x3C4",
|
||||||
|
"MSG_RAID_READY_CHECK_FINISHED": "0x3C5",
|
||||||
|
"CMSG_COMPLAIN": "0x3C6",
|
||||||
|
"SMSG_COMPLAIN_RESULT": "0x3C7",
|
||||||
|
"SMSG_FEATURE_SYSTEM_STATUS": "0x3C8",
|
||||||
|
"CMSG_GM_SHOW_COMPLAINTS": "0x3C9",
|
||||||
|
"CMSG_GM_UNSQUELCH": "0x3CA",
|
||||||
|
"CMSG_CHANNEL_SILENCE_VOICE": "0x3CB",
|
||||||
|
"CMSG_CHANNEL_SILENCE_ALL": "0x3CC",
|
||||||
|
"CMSG_CHANNEL_UNSILENCE_VOICE": "0x3CD",
|
||||||
|
"CMSG_CHANNEL_UNSILENCE_ALL": "0x3CE",
|
||||||
|
"CMSG_TARGET_CAST": "0x3CF",
|
||||||
|
"CMSG_TARGET_SCRIPT_CAST": "0x3D0",
|
||||||
|
"CMSG_CHANNEL_DISPLAY_LIST": "0x3D1",
|
||||||
|
"CMSG_SET_ACTIVE_VOICE_CHANNEL": "0x3D2",
|
||||||
|
"CMSG_GET_CHANNEL_MEMBER_COUNT": "0x3D3",
|
||||||
|
"SMSG_CHANNEL_MEMBER_COUNT": "0x3D4",
|
||||||
|
"CMSG_CHANNEL_VOICE_ON": "0x3D5",
|
||||||
|
"CMSG_CHANNEL_VOICE_OFF": "0x3D6",
|
||||||
|
"CMSG_DEBUG_LIST_TARGETS": "0x3D7",
|
||||||
|
"SMSG_DEBUG_LIST_TARGETS": "0x3D8",
|
||||||
|
"SMSG_AVAILABLE_VOICE_CHANNEL": "0x3D9",
|
||||||
|
"CMSG_ADD_VOICE_IGNORE": "0x3DA",
|
||||||
|
"CMSG_DEL_VOICE_IGNORE": "0x3DB",
|
||||||
|
"CMSG_PARTY_SILENCE": "0x3DC",
|
||||||
|
"CMSG_PARTY_UNSILENCE": "0x3DD",
|
||||||
|
"MSG_NOTIFY_PARTY_SQUELCH": "0x3DE",
|
||||||
|
"SMSG_COMSAT_RECONNECT_TRY": "0x3DF",
|
||||||
|
"SMSG_COMSAT_DISCONNECT": "0x3E0",
|
||||||
|
"SMSG_COMSAT_CONNECT_FAIL": "0x3E1",
|
||||||
|
"SMSG_VOICE_CHAT_STATUS": "0x3E2",
|
||||||
|
"CMSG_REPORT_PVP_AFK": "0x3E3",
|
||||||
|
"CMSG_REPORT_PVP_AFK_RESULT": "0x3E4",
|
||||||
|
"MSG_GUILD_BANK_LOG_QUERY": "0x3ED",
|
||||||
|
"CMSG_SET_CHANNEL_WATCH": "0x3EE",
|
||||||
|
"SMSG_USERLIST_ADD": "0x3EF",
|
||||||
|
"SMSG_USERLIST_REMOVE": "0x3F0",
|
||||||
|
"SMSG_USERLIST_UPDATE": "0x3F1",
|
||||||
|
"CMSG_CLEAR_CHANNEL_WATCH": "0x3F2",
|
||||||
|
"SMSG_GOGOGO_OBSOLETE": "0x3F4",
|
||||||
|
"SMSG_ECHO_PARTY_SQUELCH": "0x3F5",
|
||||||
|
"CMSG_SET_TITLE_SUFFIX": "0x3F6",
|
||||||
|
"CMSG_SPELLCLICK": "0x3F7",
|
||||||
|
"SMSG_LOOT_LIST": "0x3F8",
|
||||||
|
"CMSG_GM_CHARACTER_RESTORE": "0x3F9",
|
||||||
|
"CMSG_GM_CHARACTER_SAVE": "0x3FA",
|
||||||
|
"SMSG_VOICESESSION_FULL": "0x3FB",
|
||||||
|
"MSG_GUILD_PERMISSIONS": "0x3FC",
|
||||||
|
"MSG_GUILD_BANK_MONEY_WITHDRAWN": "0x3FD",
|
||||||
|
"MSG_GUILD_EVENT_LOG_QUERY": "0x3FE",
|
||||||
|
"CMSG_MAELSTROM_RENAME_GUILD": "0x3FF",
|
||||||
|
"CMSG_GET_MIRRORIMAGE_DATA": "0x400",
|
||||||
|
"SMSG_MIRRORIMAGE_DATA": "0x401",
|
||||||
|
"SMSG_FORCE_DISPLAY_UPDATE": "0x402",
|
||||||
|
"SMSG_SPELL_CHANCE_RESIST_PUSHBACK": "0x403",
|
||||||
|
"CMSG_IGNORE_DIMINISHING_RETURNS_CHEAT": "0x404",
|
||||||
|
"SMSG_IGNORE_DIMINISHING_RETURNS_CHEAT": "0x405",
|
||||||
|
"CMSG_KEEP_ALIVE": "0x406",
|
||||||
|
"SMSG_RAID_READY_CHECK_ERROR": "0x407",
|
||||||
|
"CMSG_OPT_OUT_OF_LOOT": "0x408",
|
||||||
|
"MSG_QUERY_GUILD_BANK_TEXT": "0x409",
|
||||||
|
"CMSG_SET_GUILD_BANK_TEXT": "0x40A",
|
||||||
|
"CMSG_SET_GRANTABLE_LEVELS": "0x40B",
|
||||||
|
"CMSG_GRANT_LEVEL": "0x40C",
|
||||||
|
"CMSG_REFER_A_FRIEND": "0x40D",
|
||||||
|
"MSG_GM_CHANGE_ARENA_RATING": "0x40E",
|
||||||
|
"CMSG_DECLINE_CHANNEL_INVITE": "0x40F",
|
||||||
|
"CMSG_GROUPACTION_THROTTLED": "0x410",
|
||||||
|
"SMSG_OVERRIDE_LIGHT": "0x411",
|
||||||
|
"SMSG_TOTEM_CREATED": "0x412",
|
||||||
|
"CMSG_TOTEM_DESTROYED": "0x413",
|
||||||
|
"CMSG_EXPIRE_RAID_INSTANCE": "0x414",
|
||||||
|
"CMSG_NO_SPELL_VARIANCE": "0x415",
|
||||||
|
"CMSG_QUESTGIVER_STATUS_MULTIPLE_QUERY": "0x416",
|
||||||
|
"CMSG_SET_PLAYER_DECLINED_NAMES": "0x418",
|
||||||
|
"SMSG_SET_PLAYER_DECLINED_NAMES_RESULT": "0x419",
|
||||||
|
"CMSG_QUERY_SERVER_BUCK_DATA": "0x41A",
|
||||||
|
"CMSG_CLEAR_SERVER_BUCK_DATA": "0x41B",
|
||||||
|
"SMSG_SERVER_BUCK_DATA": "0x41C",
|
||||||
|
"SMSG_SEND_UNLEARN_SPELLS": "0x41D",
|
||||||
|
"SMSG_PROPOSE_LEVEL_GRANT": "0x41E",
|
||||||
|
"CMSG_ACCEPT_LEVEL_GRANT": "0x41F",
|
||||||
|
"SMSG_REFER_A_FRIEND_FAILURE": "0x420",
|
||||||
|
"SMSG_SPLINE_MOVE_SET_FLYING": "0x421",
|
||||||
|
"SMSG_SPLINE_MOVE_UNSET_FLYING": "0x422"
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -5,21 +5,21 @@
|
||||||
"CMSG_CHAR_ENUM": "0x037",
|
"CMSG_CHAR_ENUM": "0x037",
|
||||||
"CMSG_CHAR_DELETE": "0x038",
|
"CMSG_CHAR_DELETE": "0x038",
|
||||||
"CMSG_PLAYER_LOGIN": "0x03D",
|
"CMSG_PLAYER_LOGIN": "0x03D",
|
||||||
"CMSG_MOVE_START_FORWARD": "0x0B5",
|
"MSG_MOVE_START_FORWARD": "0x0B5",
|
||||||
"CMSG_MOVE_START_BACKWARD": "0x0B6",
|
"MSG_MOVE_START_BACKWARD": "0x0B6",
|
||||||
"CMSG_MOVE_STOP": "0x0B7",
|
"MSG_MOVE_STOP": "0x0B7",
|
||||||
"CMSG_MOVE_START_STRAFE_LEFT": "0x0B8",
|
"MSG_MOVE_START_STRAFE_LEFT": "0x0B8",
|
||||||
"CMSG_MOVE_START_STRAFE_RIGHT": "0x0B9",
|
"MSG_MOVE_START_STRAFE_RIGHT": "0x0B9",
|
||||||
"CMSG_MOVE_STOP_STRAFE": "0x0BA",
|
"MSG_MOVE_STOP_STRAFE": "0x0BA",
|
||||||
"CMSG_MOVE_JUMP": "0x0BB",
|
"MSG_MOVE_JUMP": "0x0BB",
|
||||||
"CMSG_MOVE_START_TURN_LEFT": "0x0BC",
|
"MSG_MOVE_START_TURN_LEFT": "0x0BC",
|
||||||
"CMSG_MOVE_START_TURN_RIGHT": "0x0BD",
|
"MSG_MOVE_START_TURN_RIGHT": "0x0BD",
|
||||||
"CMSG_MOVE_STOP_TURN": "0x0BE",
|
"MSG_MOVE_STOP_TURN": "0x0BE",
|
||||||
"CMSG_MOVE_SET_FACING": "0x0DA",
|
"MSG_MOVE_SET_FACING": "0x0DA",
|
||||||
"CMSG_MOVE_FALL_LAND": "0x0C9",
|
"MSG_MOVE_FALL_LAND": "0x0C9",
|
||||||
"CMSG_MOVE_START_SWIM": "0x0CA",
|
"MSG_MOVE_START_SWIM": "0x0CA",
|
||||||
"CMSG_MOVE_STOP_SWIM": "0x0CB",
|
"MSG_MOVE_STOP_SWIM": "0x0CB",
|
||||||
"CMSG_MOVE_HEARTBEAT": "0x0EE",
|
"MSG_MOVE_HEARTBEAT": "0x0EE",
|
||||||
"SMSG_AUTH_CHALLENGE": "0x1EC",
|
"SMSG_AUTH_CHALLENGE": "0x1EC",
|
||||||
"SMSG_AUTH_RESPONSE": "0x1EE",
|
"SMSG_AUTH_RESPONSE": "0x1EE",
|
||||||
"SMSG_CHAR_CREATE": "0x03A",
|
"SMSG_CHAR_CREATE": "0x03A",
|
||||||
|
|
@ -42,15 +42,15 @@
|
||||||
"SMSG_MONSTER_MOVE_TRANSPORT": "0x2AE",
|
"SMSG_MONSTER_MOVE_TRANSPORT": "0x2AE",
|
||||||
"SMSG_SPLINE_MOVE_SET_WALK_MODE": "0x30E",
|
"SMSG_SPLINE_MOVE_SET_WALK_MODE": "0x30E",
|
||||||
"SMSG_SPLINE_MOVE_SET_RUN_MODE": "0x30D",
|
"SMSG_SPLINE_MOVE_SET_RUN_MODE": "0x30D",
|
||||||
"SMSG_SPLINE_MOVE_SET_RUN_SPEED": "0x2FE",
|
"SMSG_SPLINE_SET_RUN_SPEED": "0x2FE",
|
||||||
"SMSG_SPLINE_MOVE_SET_RUN_BACK_SPEED": "0x2FF",
|
"SMSG_SPLINE_SET_RUN_BACK_SPEED": "0x2FF",
|
||||||
"SMSG_SPLINE_MOVE_SET_SWIM_SPEED": "0x300",
|
"SMSG_SPLINE_SET_SWIM_SPEED": "0x300",
|
||||||
"SMSG_DESTROY_OBJECT": "0x0AA",
|
"SMSG_DESTROY_OBJECT": "0x0AA",
|
||||||
"CMSG_MESSAGECHAT": "0x095",
|
"CMSG_MESSAGECHAT": "0x095",
|
||||||
"SMSG_MESSAGECHAT": "0x096",
|
"SMSG_MESSAGECHAT": "0x096",
|
||||||
"CMSG_WHO": "0x062",
|
"CMSG_WHO": "0x062",
|
||||||
"SMSG_WHO": "0x063",
|
"SMSG_WHO": "0x063",
|
||||||
"CMSG_REQUEST_PLAYED_TIME": "0x1CC",
|
"CMSG_PLAYED_TIME": "0x1CC",
|
||||||
"SMSG_PLAYED_TIME": "0x1CD",
|
"SMSG_PLAYED_TIME": "0x1CD",
|
||||||
"CMSG_QUERY_TIME": "0x1CE",
|
"CMSG_QUERY_TIME": "0x1CE",
|
||||||
"SMSG_QUERY_TIME_RESPONSE": "0x1CF",
|
"SMSG_QUERY_TIME_RESPONSE": "0x1CF",
|
||||||
|
|
@ -65,17 +65,17 @@
|
||||||
"CMSG_LOGOUT_CANCEL": "0x04E",
|
"CMSG_LOGOUT_CANCEL": "0x04E",
|
||||||
"SMSG_LOGOUT_RESPONSE": "0x04C",
|
"SMSG_LOGOUT_RESPONSE": "0x04C",
|
||||||
"SMSG_LOGOUT_COMPLETE": "0x04D",
|
"SMSG_LOGOUT_COMPLETE": "0x04D",
|
||||||
"CMSG_STAND_STATE_CHANGE": "0x101",
|
"CMSG_STANDSTATECHANGE": "0x101",
|
||||||
"CMSG_SHOWING_HELM": "0x2B9",
|
"CMSG_SHOWING_HELM": "0x2B9",
|
||||||
"CMSG_SHOWING_CLOAK": "0x2BA",
|
"CMSG_SHOWING_CLOAK": "0x2BA",
|
||||||
"CMSG_TOGGLE_PVP": "0x253",
|
"CMSG_TOGGLE_PVP": "0x253",
|
||||||
"CMSG_GUILD_INVITE": "0x082",
|
"CMSG_GUILD_INVITE": "0x082",
|
||||||
"CMSG_GUILD_ACCEPT": "0x084",
|
"CMSG_GUILD_ACCEPT": "0x084",
|
||||||
"CMSG_GUILD_DECLINE_INVITATION": "0x085",
|
"CMSG_GUILD_DECLINE": "0x085",
|
||||||
"CMSG_GUILD_INFO": "0x087",
|
"CMSG_GUILD_INFO": "0x087",
|
||||||
"CMSG_GUILD_GET_ROSTER": "0x089",
|
"CMSG_GUILD_ROSTER": "0x089",
|
||||||
"CMSG_GUILD_PROMOTE_MEMBER": "0x08B",
|
"CMSG_GUILD_PROMOTE": "0x08B",
|
||||||
"CMSG_GUILD_DEMOTE_MEMBER": "0x08C",
|
"CMSG_GUILD_DEMOTE": "0x08C",
|
||||||
"CMSG_GUILD_LEAVE": "0x08D",
|
"CMSG_GUILD_LEAVE": "0x08D",
|
||||||
"CMSG_GUILD_MOTD": "0x091",
|
"CMSG_GUILD_MOTD": "0x091",
|
||||||
"SMSG_GUILD_INFO": "0x088",
|
"SMSG_GUILD_INFO": "0x088",
|
||||||
|
|
@ -117,7 +117,7 @@
|
||||||
"SMSG_SPELLHEALLOG": "0x150",
|
"SMSG_SPELLHEALLOG": "0x150",
|
||||||
"SMSG_SPELLENERGIZELOG": "0x151",
|
"SMSG_SPELLENERGIZELOG": "0x151",
|
||||||
"SMSG_PERIODICAURALOG": "0x24E",
|
"SMSG_PERIODICAURALOG": "0x24E",
|
||||||
"SMSG_ENVIRONMENTALDAMAGELOG": "0x1FC",
|
"SMSG_ENVIRONMENTAL_DAMAGE_LOG": "0x1FC",
|
||||||
"CMSG_CAST_SPELL": "0x12E",
|
"CMSG_CAST_SPELL": "0x12E",
|
||||||
"CMSG_CANCEL_CAST": "0x12F",
|
"CMSG_CANCEL_CAST": "0x12F",
|
||||||
"CMSG_CANCEL_AURA": "0x136",
|
"CMSG_CANCEL_AURA": "0x136",
|
||||||
|
|
@ -127,7 +127,7 @@
|
||||||
"SMSG_SPELL_FAILURE": "0x133",
|
"SMSG_SPELL_FAILURE": "0x133",
|
||||||
"SMSG_SPELL_COOLDOWN": "0x134",
|
"SMSG_SPELL_COOLDOWN": "0x134",
|
||||||
"SMSG_COOLDOWN_EVENT": "0x135",
|
"SMSG_COOLDOWN_EVENT": "0x135",
|
||||||
"SMSG_UPDATE_AURA_DURATION": "0x137",
|
"SMSG_EQUIPMENT_SET_SAVED": "0x137",
|
||||||
"SMSG_INITIAL_SPELLS": "0x12A",
|
"SMSG_INITIAL_SPELLS": "0x12A",
|
||||||
"SMSG_LEARNED_SPELL": "0x12B",
|
"SMSG_LEARNED_SPELL": "0x12B",
|
||||||
"SMSG_SUPERCEDED_SPELL": "0x12C",
|
"SMSG_SUPERCEDED_SPELL": "0x12C",
|
||||||
|
|
@ -167,7 +167,7 @@
|
||||||
"SMSG_GOSSIP_MESSAGE": "0x17D",
|
"SMSG_GOSSIP_MESSAGE": "0x17D",
|
||||||
"SMSG_GOSSIP_COMPLETE": "0x17E",
|
"SMSG_GOSSIP_COMPLETE": "0x17E",
|
||||||
"SMSG_NPC_TEXT_UPDATE": "0x180",
|
"SMSG_NPC_TEXT_UPDATE": "0x180",
|
||||||
"CMSG_GAMEOBJECT_USE": "0x0B1",
|
"CMSG_GAMEOBJ_USE": "0x0B1",
|
||||||
"CMSG_QUESTGIVER_STATUS_QUERY": "0x182",
|
"CMSG_QUESTGIVER_STATUS_QUERY": "0x182",
|
||||||
"SMSG_QUESTGIVER_STATUS": "0x183",
|
"SMSG_QUESTGIVER_STATUS": "0x183",
|
||||||
"CMSG_QUESTGIVER_HELLO": "0x184",
|
"CMSG_QUESTGIVER_HELLO": "0x184",
|
||||||
|
|
@ -208,7 +208,7 @@
|
||||||
"CMSG_SWAP_INV_ITEM": "0x10D",
|
"CMSG_SWAP_INV_ITEM": "0x10D",
|
||||||
"SMSG_INVENTORY_CHANGE_FAILURE": "0x112",
|
"SMSG_INVENTORY_CHANGE_FAILURE": "0x112",
|
||||||
"CMSG_INSPECT": "0x114",
|
"CMSG_INSPECT": "0x114",
|
||||||
"SMSG_INSPECT_RESULTS": "0x115",
|
"SMSG_INSPECT_RESULTS_UPDATE": "0x115",
|
||||||
"CMSG_REPOP_REQUEST": "0x15A",
|
"CMSG_REPOP_REQUEST": "0x15A",
|
||||||
"SMSG_RESURRECT_REQUEST": "0x15B",
|
"SMSG_RESURRECT_REQUEST": "0x15B",
|
||||||
"CMSG_RESURRECT_RESPONSE": "0x15C",
|
"CMSG_RESURRECT_RESPONSE": "0x15C",
|
||||||
|
|
@ -233,6 +233,7 @@
|
||||||
"SMSG_SET_PROFICIENCY": "0x127",
|
"SMSG_SET_PROFICIENCY": "0x127",
|
||||||
"SMSG_ACTION_BUTTONS": "0x129",
|
"SMSG_ACTION_BUTTONS": "0x129",
|
||||||
"SMSG_LEVELUP_INFO": "0x1D4",
|
"SMSG_LEVELUP_INFO": "0x1D4",
|
||||||
|
"SMSG_PLAY_SOUND": "0x2D2",
|
||||||
"CMSG_UPDATE_ACCOUNT_DATA": "0x20B",
|
"CMSG_UPDATE_ACCOUNT_DATA": "0x20B",
|
||||||
"CMSG_BATTLEFIELD_LIST": "0x23C",
|
"CMSG_BATTLEFIELD_LIST": "0x23C",
|
||||||
"SMSG_BATTLEFIELD_LIST": "0x23D",
|
"SMSG_BATTLEFIELD_LIST": "0x23D",
|
||||||
|
|
@ -269,14 +270,12 @@
|
||||||
"CMSG_MAIL_MARK_AS_READ": "0x247",
|
"CMSG_MAIL_MARK_AS_READ": "0x247",
|
||||||
"SMSG_RECEIVED_MAIL": "0x285",
|
"SMSG_RECEIVED_MAIL": "0x285",
|
||||||
"MSG_QUERY_NEXT_MAIL_TIME": "0x284",
|
"MSG_QUERY_NEXT_MAIL_TIME": "0x284",
|
||||||
|
|
||||||
"CMSG_BANKER_ACTIVATE": "0x1B7",
|
"CMSG_BANKER_ACTIVATE": "0x1B7",
|
||||||
"SMSG_SHOW_BANK": "0x1B8",
|
"SMSG_SHOW_BANK": "0x1B8",
|
||||||
"CMSG_BUY_BANK_SLOT": "0x1B9",
|
"CMSG_BUY_BANK_SLOT": "0x1B9",
|
||||||
"SMSG_BUY_BANK_SLOT_RESULT": "0x1BA",
|
"SMSG_BUY_BANK_SLOT_RESULT": "0x1BA",
|
||||||
"CMSG_AUTOSTORE_BANK_ITEM": "0x282",
|
"CMSG_AUTOSTORE_BANK_ITEM": "0x282",
|
||||||
"CMSG_AUTOBANK_ITEM": "0x283",
|
"CMSG_AUTOBANK_ITEM": "0x283",
|
||||||
|
|
||||||
"MSG_AUCTION_HELLO": "0x255",
|
"MSG_AUCTION_HELLO": "0x255",
|
||||||
"CMSG_AUCTION_SELL_ITEM": "0x256",
|
"CMSG_AUCTION_SELL_ITEM": "0x256",
|
||||||
"CMSG_AUCTION_REMOVE_ITEM": "0x257",
|
"CMSG_AUCTION_REMOVE_ITEM": "0x257",
|
||||||
|
|
@ -290,8 +289,7 @@
|
||||||
"SMSG_AUCTION_BIDDER_NOTIFICATION": "0x260",
|
"SMSG_AUCTION_BIDDER_NOTIFICATION": "0x260",
|
||||||
"CMSG_AUCTION_LIST_BIDDER_ITEMS": "0x264",
|
"CMSG_AUCTION_LIST_BIDDER_ITEMS": "0x264",
|
||||||
"SMSG_AUCTION_BIDDER_LIST_RESULT": "0x265",
|
"SMSG_AUCTION_BIDDER_LIST_RESULT": "0x265",
|
||||||
"SMSG_UNKNOWN_319": "0x319",
|
"MSG_MOVE_TIME_SKIPPED": "0x319",
|
||||||
|
|
||||||
"SMSG_CANCEL_AUTO_REPEAT": "0x29C",
|
"SMSG_CANCEL_AUTO_REPEAT": "0x29C",
|
||||||
"SMSG_WEATHER": "0x2F4",
|
"SMSG_WEATHER": "0x2F4",
|
||||||
"SMSG_QUESTUPDATE_ADD_ITEM": "0x19A",
|
"SMSG_QUESTUPDATE_ADD_ITEM": "0x19A",
|
||||||
|
|
|
||||||
File diff suppressed because it is too large
Load diff
|
|
@ -184,7 +184,7 @@ private:
|
||||||
uint32_t loadedMapId_ = 0xFFFFFFFF; // Map ID of currently loaded terrain (0xFFFFFFFF = none)
|
uint32_t loadedMapId_ = 0xFFFFFFFF; // Map ID of currently loaded terrain (0xFFFFFFFF = none)
|
||||||
float taxiLandingClampTimer_ = 0.0f;
|
float taxiLandingClampTimer_ = 0.0f;
|
||||||
float worldEntryMovementGraceTimer_ = 0.0f;
|
float worldEntryMovementGraceTimer_ = 0.0f;
|
||||||
float facingSendCooldown_ = 0.0f; // Rate-limits CMSG_MOVE_SET_FACING
|
float facingSendCooldown_ = 0.0f; // Rate-limits MSG_MOVE_SET_FACING
|
||||||
float lastSentCanonicalYaw_ = 1000.0f; // Sentinel — triggers first send
|
float lastSentCanonicalYaw_ = 1000.0f; // Sentinel — triggers first send
|
||||||
float taxiStreamCooldown_ = 0.0f;
|
float taxiStreamCooldown_ = 0.0f;
|
||||||
bool idleYawned_ = false;
|
bool idleYawned_ = false;
|
||||||
|
|
|
||||||
|
|
@ -203,7 +203,7 @@ public:
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Send a movement packet
|
* Send a movement packet
|
||||||
* @param opcode Movement opcode (CMSG_MOVE_START_FORWARD, etc.)
|
* @param opcode Movement opcode (MSG_MOVE_START_FORWARD, etc.)
|
||||||
*/
|
*/
|
||||||
void sendMovement(Opcode opcode);
|
void sendMovement(Opcode opcode);
|
||||||
|
|
||||||
|
|
|
||||||
File diff suppressed because it is too large
Load diff
|
|
@ -448,7 +448,7 @@ public:
|
||||||
/**
|
/**
|
||||||
* Build a movement packet
|
* Build a movement packet
|
||||||
*
|
*
|
||||||
* @param opcode Movement opcode (CMSG_MOVE_START_FORWARD, etc.)
|
* @param opcode Movement opcode (MSG_MOVE_START_FORWARD, etc.)
|
||||||
* @param info Movement info
|
* @param info Movement info
|
||||||
* @return Packet ready to send
|
* @return Packet ready to send
|
||||||
*/
|
*/
|
||||||
|
|
@ -811,7 +811,7 @@ public:
|
||||||
static bool parse(network::Packet& packet, QueryTimeResponseData& data);
|
static bool parse(network::Packet& packet, QueryTimeResponseData& data);
|
||||||
};
|
};
|
||||||
|
|
||||||
/** CMSG_REQUEST_PLAYED_TIME packet builder */
|
/** CMSG_PLAYED_TIME packet builder */
|
||||||
class RequestPlayedTimePacket {
|
class RequestPlayedTimePacket {
|
||||||
public:
|
public:
|
||||||
static network::Packet build(bool sendToChat = true);
|
static network::Packet build(bool sendToChat = true);
|
||||||
|
|
@ -921,7 +921,7 @@ public:
|
||||||
// Stand State
|
// Stand State
|
||||||
// ============================================================
|
// ============================================================
|
||||||
|
|
||||||
/** CMSG_STAND_STATE_CHANGE packet builder */
|
/** CMSG_STANDSTATECHANGE packet builder */
|
||||||
class StandStateChangePacket {
|
class StandStateChangePacket {
|
||||||
public:
|
public:
|
||||||
static network::Packet build(uint8_t state);
|
static network::Packet build(uint8_t state);
|
||||||
|
|
@ -963,7 +963,7 @@ public:
|
||||||
static network::Packet build();
|
static network::Packet build();
|
||||||
};
|
};
|
||||||
|
|
||||||
/** CMSG_GUILD_GET_ROSTER packet builder */
|
/** CMSG_GUILD_ROSTER packet builder */
|
||||||
class GuildRosterPacket {
|
class GuildRosterPacket {
|
||||||
public:
|
public:
|
||||||
static network::Packet build();
|
static network::Packet build();
|
||||||
|
|
@ -975,13 +975,13 @@ public:
|
||||||
static network::Packet build(const std::string& motd);
|
static network::Packet build(const std::string& motd);
|
||||||
};
|
};
|
||||||
|
|
||||||
/** CMSG_GUILD_PROMOTE_MEMBER packet builder */
|
/** CMSG_GUILD_PROMOTE packet builder */
|
||||||
class GuildPromotePacket {
|
class GuildPromotePacket {
|
||||||
public:
|
public:
|
||||||
static network::Packet build(const std::string& playerName);
|
static network::Packet build(const std::string& playerName);
|
||||||
};
|
};
|
||||||
|
|
||||||
/** CMSG_GUILD_DEMOTE_MEMBER packet builder */
|
/** CMSG_GUILD_DEMOTE packet builder */
|
||||||
class GuildDemotePacket {
|
class GuildDemotePacket {
|
||||||
public:
|
public:
|
||||||
static network::Packet build(const std::string& playerName);
|
static network::Packet build(const std::string& playerName);
|
||||||
|
|
@ -1041,7 +1041,7 @@ public:
|
||||||
static network::Packet build();
|
static network::Packet build();
|
||||||
};
|
};
|
||||||
|
|
||||||
/** CMSG_GUILD_DECLINE_INVITATION packet builder (empty body) */
|
/** CMSG_GUILD_DECLINE packet builder (empty body) */
|
||||||
class GuildDeclineInvitationPacket {
|
class GuildDeclineInvitationPacket {
|
||||||
public:
|
public:
|
||||||
static network::Packet build();
|
static network::Packet build();
|
||||||
|
|
@ -2197,7 +2197,7 @@ public:
|
||||||
static network::Packet build(uint64_t npcGuid, uint32_t srcNode, uint32_t destNode);
|
static network::Packet build(uint64_t npcGuid, uint32_t srcNode, uint32_t destNode);
|
||||||
};
|
};
|
||||||
|
|
||||||
/** CMSG_GAMEOBJECT_USE packet builder */
|
/** CMSG_GAMEOBJ_USE packet builder */
|
||||||
class GameObjectUsePacket {
|
class GameObjectUsePacket {
|
||||||
public:
|
public:
|
||||||
static network::Packet build(uint64_t guid);
|
static network::Packet build(uint64_t guid);
|
||||||
|
|
|
||||||
|
|
@ -737,7 +737,7 @@ void Application::update(float deltaTime) {
|
||||||
renderer->getCharacterPosition() = p;
|
renderer->getCharacterPosition() = p;
|
||||||
glm::vec3 canonical = core::coords::renderToCanonical(p);
|
glm::vec3 canonical = core::coords::renderToCanonical(p);
|
||||||
gameHandler->setPosition(canonical.x, canonical.y, canonical.z);
|
gameHandler->setPosition(canonical.x, canonical.y, canonical.z);
|
||||||
gameHandler->sendMovement(game::Opcode::CMSG_MOVE_HEARTBEAT);
|
gameHandler->sendMovement(game::Opcode::MSG_MOVE_HEARTBEAT);
|
||||||
}
|
}
|
||||||
taxiLandingClampTimer_ -= deltaTime;
|
taxiLandingClampTimer_ -= deltaTime;
|
||||||
}
|
}
|
||||||
|
|
@ -878,7 +878,7 @@ void Application::update(float deltaTime) {
|
||||||
}
|
}
|
||||||
|
|
||||||
// Send movement heartbeat so server knows our new position
|
// Send movement heartbeat so server knows our new position
|
||||||
gameHandler->sendMovement(game::Opcode::CMSG_MOVE_HEARTBEAT);
|
gameHandler->sendMovement(game::Opcode::MSG_MOVE_HEARTBEAT);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
glm::vec3 renderPos = renderer->getCharacterPosition();
|
glm::vec3 renderPos = renderer->getCharacterPosition();
|
||||||
|
|
@ -894,7 +894,7 @@ void Application::update(float deltaTime) {
|
||||||
float canonicalYaw = core::coords::normalizeAngleRad(glm::radians(180.0f - yawDeg));
|
float canonicalYaw = core::coords::normalizeAngleRad(glm::radians(180.0f - yawDeg));
|
||||||
gameHandler->setOrientation(canonicalYaw);
|
gameHandler->setOrientation(canonicalYaw);
|
||||||
|
|
||||||
// Send CMSG_MOVE_SET_FACING when the player changes facing direction
|
// Send MSG_MOVE_SET_FACING when the player changes facing direction
|
||||||
// (e.g. via mouse-look). Without this, the server predicts movement in
|
// (e.g. via mouse-look). Without this, the server predicts movement in
|
||||||
// the old facing and position-corrects on the next heartbeat — the
|
// the old facing and position-corrects on the next heartbeat — the
|
||||||
// micro-teleporting the GM observed.
|
// micro-teleporting the GM observed.
|
||||||
|
|
@ -908,7 +908,7 @@ void Application::update(float deltaTime) {
|
||||||
if (!keyboardTurning && facingSendCooldown_ <= 0.0f) {
|
if (!keyboardTurning && facingSendCooldown_ <= 0.0f) {
|
||||||
float yawDiff = core::coords::normalizeAngleRad(canonicalYaw - lastSentCanonicalYaw_);
|
float yawDiff = core::coords::normalizeAngleRad(canonicalYaw - lastSentCanonicalYaw_);
|
||||||
if (std::abs(yawDiff) > glm::radians(3.0f)) {
|
if (std::abs(yawDiff) > glm::radians(3.0f)) {
|
||||||
gameHandler->sendMovement(game::Opcode::CMSG_MOVE_SET_FACING);
|
gameHandler->sendMovement(game::Opcode::MSG_MOVE_SET_FACING);
|
||||||
lastSentCanonicalYaw_ = canonicalYaw;
|
lastSentCanonicalYaw_ = canonicalYaw;
|
||||||
facingSendCooldown_ = 0.1f; // max 10 Hz
|
facingSendCooldown_ = 0.1f; // max 10 Hz
|
||||||
}
|
}
|
||||||
|
|
@ -1191,11 +1191,11 @@ void Application::setupUICallbacks() {
|
||||||
}
|
}
|
||||||
if (gameHandler) {
|
if (gameHandler) {
|
||||||
gameHandler->forceClearTaxiAndMovementState();
|
gameHandler->forceClearTaxiAndMovementState();
|
||||||
gameHandler->sendMovement(game::Opcode::CMSG_MOVE_STOP);
|
gameHandler->sendMovement(game::Opcode::MSG_MOVE_STOP);
|
||||||
gameHandler->sendMovement(game::Opcode::CMSG_MOVE_STOP_STRAFE);
|
gameHandler->sendMovement(game::Opcode::MSG_MOVE_STOP_STRAFE);
|
||||||
gameHandler->sendMovement(game::Opcode::CMSG_MOVE_STOP_TURN);
|
gameHandler->sendMovement(game::Opcode::MSG_MOVE_STOP_TURN);
|
||||||
gameHandler->sendMovement(game::Opcode::CMSG_MOVE_STOP_SWIM);
|
gameHandler->sendMovement(game::Opcode::MSG_MOVE_STOP_SWIM);
|
||||||
gameHandler->sendMovement(game::Opcode::CMSG_MOVE_HEARTBEAT);
|
gameHandler->sendMovement(game::Opcode::MSG_MOVE_HEARTBEAT);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
@ -1203,10 +1203,10 @@ void Application::setupUICallbacks() {
|
||||||
if (!gameHandler) return;
|
if (!gameHandler) return;
|
||||||
glm::vec3 canonical = core::coords::renderToCanonical(renderPos);
|
glm::vec3 canonical = core::coords::renderToCanonical(renderPos);
|
||||||
gameHandler->setPosition(canonical.x, canonical.y, canonical.z);
|
gameHandler->setPosition(canonical.x, canonical.y, canonical.z);
|
||||||
gameHandler->sendMovement(game::Opcode::CMSG_MOVE_STOP);
|
gameHandler->sendMovement(game::Opcode::MSG_MOVE_STOP);
|
||||||
gameHandler->sendMovement(game::Opcode::CMSG_MOVE_STOP_STRAFE);
|
gameHandler->sendMovement(game::Opcode::MSG_MOVE_STOP_STRAFE);
|
||||||
gameHandler->sendMovement(game::Opcode::CMSG_MOVE_STOP_TURN);
|
gameHandler->sendMovement(game::Opcode::MSG_MOVE_STOP_TURN);
|
||||||
gameHandler->sendMovement(game::Opcode::CMSG_MOVE_HEARTBEAT);
|
gameHandler->sendMovement(game::Opcode::MSG_MOVE_HEARTBEAT);
|
||||||
};
|
};
|
||||||
|
|
||||||
auto forceServerTeleportCommand = [this](const glm::vec3& renderPos) {
|
auto forceServerTeleportCommand = [this](const glm::vec3& renderPos) {
|
||||||
|
|
@ -1425,7 +1425,7 @@ void Application::setupUICallbacks() {
|
||||||
// Sync canonical orientation to server so it knows we turned
|
// Sync canonical orientation to server so it knows we turned
|
||||||
float canonicalYaw = core::coords::normalizeAngleRad(glm::radians(180.0f - yawDeg));
|
float canonicalYaw = core::coords::normalizeAngleRad(glm::radians(180.0f - yawDeg));
|
||||||
gameHandler->setOrientation(canonicalYaw);
|
gameHandler->setOrientation(canonicalYaw);
|
||||||
gameHandler->sendMovement(game::Opcode::CMSG_MOVE_SET_FACING);
|
gameHandler->sendMovement(game::Opcode::MSG_MOVE_SET_FACING);
|
||||||
|
|
||||||
// Set charge state
|
// Set charge state
|
||||||
chargeActive_ = true;
|
chargeActive_ = true;
|
||||||
|
|
|
||||||
|
|
@ -669,7 +669,7 @@ void GameHandler::update(float deltaTime) {
|
||||||
|
|
||||||
float heartbeatInterval = (onTaxiFlight_ || taxiActivatePending_ || taxiClientActive_) ? 0.25f : moveHeartbeatInterval_;
|
float heartbeatInterval = (onTaxiFlight_ || taxiActivatePending_ || taxiClientActive_) ? 0.25f : moveHeartbeatInterval_;
|
||||||
if (timeSinceLastMoveHeartbeat_ >= heartbeatInterval) {
|
if (timeSinceLastMoveHeartbeat_ >= heartbeatInterval) {
|
||||||
sendMovement(Opcode::CMSG_MOVE_HEARTBEAT);
|
sendMovement(Opcode::MSG_MOVE_HEARTBEAT);
|
||||||
timeSinceLastMoveHeartbeat_ = 0.0f;
|
timeSinceLastMoveHeartbeat_ = 0.0f;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -759,8 +759,8 @@ void GameHandler::update(float deltaTime) {
|
||||||
movementInfo.flags = 0;
|
movementInfo.flags = 0;
|
||||||
movementInfo.flags2 = 0;
|
movementInfo.flags2 = 0;
|
||||||
if (socket) {
|
if (socket) {
|
||||||
sendMovement(Opcode::CMSG_MOVE_STOP);
|
sendMovement(Opcode::MSG_MOVE_STOP);
|
||||||
sendMovement(Opcode::CMSG_MOVE_HEARTBEAT);
|
sendMovement(Opcode::MSG_MOVE_HEARTBEAT);
|
||||||
}
|
}
|
||||||
LOG_INFO("Taxi flight landed");
|
LOG_INFO("Taxi flight landed");
|
||||||
}
|
}
|
||||||
|
|
@ -786,8 +786,8 @@ void GameHandler::update(float deltaTime) {
|
||||||
movementInfo.flags = 0;
|
movementInfo.flags = 0;
|
||||||
movementInfo.flags2 = 0;
|
movementInfo.flags2 = 0;
|
||||||
if (socket) {
|
if (socket) {
|
||||||
sendMovement(Opcode::CMSG_MOVE_STOP);
|
sendMovement(Opcode::MSG_MOVE_STOP);
|
||||||
sendMovement(Opcode::CMSG_MOVE_HEARTBEAT);
|
sendMovement(Opcode::MSG_MOVE_HEARTBEAT);
|
||||||
}
|
}
|
||||||
LOG_INFO("Taxi dismount cleanup");
|
LOG_INFO("Taxi dismount cleanup");
|
||||||
}
|
}
|
||||||
|
|
@ -821,7 +821,7 @@ void GameHandler::update(float deltaTime) {
|
||||||
movementInfo.y = taxiRecoverPos_.y;
|
movementInfo.y = taxiRecoverPos_.y;
|
||||||
movementInfo.z = taxiRecoverPos_.z;
|
movementInfo.z = taxiRecoverPos_.z;
|
||||||
if (socket) {
|
if (socket) {
|
||||||
sendMovement(Opcode::CMSG_MOVE_HEARTBEAT);
|
sendMovement(Opcode::MSG_MOVE_HEARTBEAT);
|
||||||
}
|
}
|
||||||
taxiRecoverPending_ = false;
|
taxiRecoverPending_ = false;
|
||||||
LOG_INFO("Taxi recovery applied");
|
LOG_INFO("Taxi recovery applied");
|
||||||
|
|
@ -1390,16 +1390,16 @@ void GameHandler::handlePacket(network::Packet& packet) {
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case Opcode::SMSG_SPLINE_MOVE_SET_RUN_SPEED:
|
case Opcode::SMSG_SPLINE_SET_RUN_SPEED:
|
||||||
case Opcode::SMSG_SPLINE_MOVE_SET_RUN_BACK_SPEED:
|
case Opcode::SMSG_SPLINE_SET_RUN_BACK_SPEED:
|
||||||
case Opcode::SMSG_SPLINE_MOVE_SET_SWIM_SPEED: {
|
case Opcode::SMSG_SPLINE_SET_SWIM_SPEED: {
|
||||||
// Minimal parse: PackedGuid + float speed
|
// Minimal parse: PackedGuid + float speed
|
||||||
if (packet.getSize() - packet.getReadPos() < 5) break;
|
if (packet.getSize() - packet.getReadPos() < 5) break;
|
||||||
uint64_t guid = UpdateObjectParser::readPackedGuid(packet);
|
uint64_t guid = UpdateObjectParser::readPackedGuid(packet);
|
||||||
if (packet.getSize() - packet.getReadPos() < 4) break;
|
if (packet.getSize() - packet.getReadPos() < 4) break;
|
||||||
float speed = packet.readFloat();
|
float speed = packet.readFloat();
|
||||||
if (guid == playerGuid && std::isfinite(speed) && speed > 0.1f && speed < 100.0f &&
|
if (guid == playerGuid && std::isfinite(speed) && speed > 0.1f && speed < 100.0f &&
|
||||||
*logicalOp == Opcode::SMSG_SPLINE_MOVE_SET_RUN_SPEED) {
|
*logicalOp == Opcode::SMSG_SPLINE_SET_RUN_SPEED) {
|
||||||
serverRunSpeed_ = speed;
|
serverRunSpeed_ = speed;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
@ -1444,10 +1444,10 @@ void GameHandler::handlePacket(network::Packet& packet) {
|
||||||
static_cast<uint32_t>(MovementFlags::STRAFE_RIGHT) |
|
static_cast<uint32_t>(MovementFlags::STRAFE_RIGHT) |
|
||||||
static_cast<uint32_t>(MovementFlags::TURN_LEFT) |
|
static_cast<uint32_t>(MovementFlags::TURN_LEFT) |
|
||||||
static_cast<uint32_t>(MovementFlags::TURN_RIGHT));
|
static_cast<uint32_t>(MovementFlags::TURN_RIGHT));
|
||||||
sendMovement(Opcode::CMSG_MOVE_STOP);
|
sendMovement(Opcode::MSG_MOVE_STOP);
|
||||||
sendMovement(Opcode::CMSG_MOVE_STOP_STRAFE);
|
sendMovement(Opcode::MSG_MOVE_STOP_STRAFE);
|
||||||
sendMovement(Opcode::CMSG_MOVE_STOP_TURN);
|
sendMovement(Opcode::MSG_MOVE_STOP_TURN);
|
||||||
sendMovement(Opcode::CMSG_MOVE_STOP_SWIM);
|
sendMovement(Opcode::MSG_MOVE_STOP_SWIM);
|
||||||
addSystemChatMessage("Movement disabled by server.");
|
addSystemChatMessage("Movement disabled by server.");
|
||||||
} else if (changed && allowMovement) {
|
} else if (changed && allowMovement) {
|
||||||
addSystemChatMessage("Movement re-enabled.");
|
addSystemChatMessage("Movement re-enabled.");
|
||||||
|
|
@ -1560,6 +1560,22 @@ void GameHandler::handlePacket(network::Packet& packet) {
|
||||||
case Opcode::SMSG_PARTY_COMMAND_RESULT:
|
case Opcode::SMSG_PARTY_COMMAND_RESULT:
|
||||||
handlePartyCommandResult(packet);
|
handlePartyCommandResult(packet);
|
||||||
break;
|
break;
|
||||||
|
case Opcode::MSG_RAID_READY_CHECK:
|
||||||
|
// Server ready-check prompt (minimal handling for now).
|
||||||
|
packet.setReadPos(packet.getSize());
|
||||||
|
break;
|
||||||
|
case Opcode::MSG_RAID_READY_CHECK_CONFIRM:
|
||||||
|
// Ready-check responses from members.
|
||||||
|
packet.setReadPos(packet.getSize());
|
||||||
|
break;
|
||||||
|
case Opcode::SMSG_RAID_INSTANCE_INFO:
|
||||||
|
// Raid lockout list (not yet surfaced in UI).
|
||||||
|
packet.setReadPos(packet.getSize());
|
||||||
|
break;
|
||||||
|
case Opcode::SMSG_DUEL_REQUESTED:
|
||||||
|
// Duel request UI flow not implemented yet.
|
||||||
|
packet.setReadPos(packet.getSize());
|
||||||
|
break;
|
||||||
case Opcode::SMSG_PARTYKILLLOG:
|
case Opcode::SMSG_PARTYKILLLOG:
|
||||||
// Classic-era packet: killer GUID + victim GUID.
|
// Classic-era packet: killer GUID + victim GUID.
|
||||||
// XP and combat state are handled by other packets; consume to avoid warning spam.
|
// XP and combat state are handled by other packets; consume to avoid warning spam.
|
||||||
|
|
@ -1654,9 +1670,9 @@ void GameHandler::handlePacket(network::Packet& packet) {
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case Opcode::SMSG_RESURRECT_CANCEL: {
|
case Opcode::SMSG_TIME_SYNC_REQ: {
|
||||||
if (packet.getSize() - packet.getReadPos() < 4) {
|
if (packet.getSize() - packet.getReadPos() < 4) {
|
||||||
LOG_WARNING("SMSG_RESURRECT_CANCEL too short");
|
LOG_WARNING("SMSG_TIME_SYNC_REQ too short");
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
uint32_t reason = packet.readUInt32();
|
uint32_t reason = packet.readUInt32();
|
||||||
|
|
@ -1771,10 +1787,10 @@ void GameHandler::handlePacket(network::Packet& packet) {
|
||||||
case Opcode::SMSG_SET_FLAT_SPELL_MODIFIER:
|
case Opcode::SMSG_SET_FLAT_SPELL_MODIFIER:
|
||||||
case Opcode::SMSG_SET_PCT_SPELL_MODIFIER:
|
case Opcode::SMSG_SET_PCT_SPELL_MODIFIER:
|
||||||
case Opcode::SMSG_SPELL_DELAYED:
|
case Opcode::SMSG_SPELL_DELAYED:
|
||||||
case Opcode::SMSG_UPDATE_AURA_DURATION:
|
case Opcode::SMSG_EQUIPMENT_SET_SAVED:
|
||||||
case Opcode::SMSG_PERIODICAURALOG:
|
case Opcode::SMSG_PERIODICAURALOG:
|
||||||
case Opcode::SMSG_SPELLENERGIZELOG:
|
case Opcode::SMSG_SPELLENERGIZELOG:
|
||||||
case Opcode::SMSG_ENVIRONMENTALDAMAGELOG:
|
case Opcode::SMSG_ENVIRONMENTAL_DAMAGE_LOG:
|
||||||
case Opcode::SMSG_SET_PROFICIENCY:
|
case Opcode::SMSG_SET_PROFICIENCY:
|
||||||
case Opcode::SMSG_ACTION_BUTTONS:
|
case Opcode::SMSG_ACTION_BUTTONS:
|
||||||
break;
|
break;
|
||||||
|
|
@ -2411,6 +2427,10 @@ void GameHandler::handlePacket(network::Packet& packet) {
|
||||||
case Opcode::SMSG_BATTLEFIELD_PORT_DENIED:
|
case Opcode::SMSG_BATTLEFIELD_PORT_DENIED:
|
||||||
addSystemChatMessage("Battlefield port denied.");
|
addSystemChatMessage("Battlefield port denied.");
|
||||||
break;
|
break;
|
||||||
|
case Opcode::MSG_BATTLEGROUND_PLAYER_POSITIONS:
|
||||||
|
// Optional map position updates for BG objectives/players.
|
||||||
|
packet.setReadPos(packet.getSize());
|
||||||
|
break;
|
||||||
case Opcode::SMSG_REMOVED_FROM_PVP_QUEUE:
|
case Opcode::SMSG_REMOVED_FROM_PVP_QUEUE:
|
||||||
addSystemChatMessage("You have been removed from the PvP queue.");
|
addSystemChatMessage("You have been removed from the PvP queue.");
|
||||||
break;
|
break;
|
||||||
|
|
@ -2453,23 +2473,27 @@ void GameHandler::handlePacket(network::Packet& packet) {
|
||||||
case Opcode::MSG_INSPECT_ARENA_TEAMS:
|
case Opcode::MSG_INSPECT_ARENA_TEAMS:
|
||||||
LOG_INFO("Received MSG_INSPECT_ARENA_TEAMS");
|
LOG_INFO("Received MSG_INSPECT_ARENA_TEAMS");
|
||||||
break;
|
break;
|
||||||
|
case Opcode::MSG_TALENT_WIPE_CONFIRM:
|
||||||
|
// Talent reset confirmation payload is not needed client-side right now.
|
||||||
|
packet.setReadPos(packet.getSize());
|
||||||
|
break;
|
||||||
|
|
||||||
// ---- MSG_MOVE_* opcodes (server relays other players' movement) ----
|
// ---- MSG_MOVE_* opcodes (server relays other players' movement) ----
|
||||||
case Opcode::CMSG_MOVE_START_FORWARD:
|
case Opcode::MSG_MOVE_START_FORWARD:
|
||||||
case Opcode::CMSG_MOVE_START_BACKWARD:
|
case Opcode::MSG_MOVE_START_BACKWARD:
|
||||||
case Opcode::CMSG_MOVE_STOP:
|
case Opcode::MSG_MOVE_STOP:
|
||||||
case Opcode::CMSG_MOVE_START_STRAFE_LEFT:
|
case Opcode::MSG_MOVE_START_STRAFE_LEFT:
|
||||||
case Opcode::CMSG_MOVE_START_STRAFE_RIGHT:
|
case Opcode::MSG_MOVE_START_STRAFE_RIGHT:
|
||||||
case Opcode::CMSG_MOVE_STOP_STRAFE:
|
case Opcode::MSG_MOVE_STOP_STRAFE:
|
||||||
case Opcode::CMSG_MOVE_JUMP:
|
case Opcode::MSG_MOVE_JUMP:
|
||||||
case Opcode::CMSG_MOVE_START_TURN_LEFT:
|
case Opcode::MSG_MOVE_START_TURN_LEFT:
|
||||||
case Opcode::CMSG_MOVE_START_TURN_RIGHT:
|
case Opcode::MSG_MOVE_START_TURN_RIGHT:
|
||||||
case Opcode::CMSG_MOVE_STOP_TURN:
|
case Opcode::MSG_MOVE_STOP_TURN:
|
||||||
case Opcode::CMSG_MOVE_SET_FACING:
|
case Opcode::MSG_MOVE_SET_FACING:
|
||||||
case Opcode::CMSG_MOVE_FALL_LAND:
|
case Opcode::MSG_MOVE_FALL_LAND:
|
||||||
case Opcode::CMSG_MOVE_HEARTBEAT:
|
case Opcode::MSG_MOVE_HEARTBEAT:
|
||||||
case Opcode::CMSG_MOVE_START_SWIM:
|
case Opcode::MSG_MOVE_START_SWIM:
|
||||||
case Opcode::CMSG_MOVE_STOP_SWIM:
|
case Opcode::MSG_MOVE_STOP_SWIM:
|
||||||
if (state == WorldState::IN_WORLD) {
|
if (state == WorldState::IN_WORLD) {
|
||||||
handleOtherPlayerMovement(packet);
|
handleOtherPlayerMovement(packet);
|
||||||
}
|
}
|
||||||
|
|
@ -2491,6 +2515,13 @@ void GameHandler::handlePacket(network::Packet& packet) {
|
||||||
case Opcode::MSG_QUERY_NEXT_MAIL_TIME:
|
case Opcode::MSG_QUERY_NEXT_MAIL_TIME:
|
||||||
handleQueryNextMailTime(packet);
|
handleQueryNextMailTime(packet);
|
||||||
break;
|
break;
|
||||||
|
case Opcode::SMSG_CHANNEL_LIST:
|
||||||
|
// Channel member listing currently not rendered in UI.
|
||||||
|
packet.setReadPos(packet.getSize());
|
||||||
|
break;
|
||||||
|
case Opcode::SMSG_INSPECT_RESULTS_UPDATE:
|
||||||
|
handleInspectResults(packet);
|
||||||
|
break;
|
||||||
|
|
||||||
// ---- Bank ----
|
// ---- Bank ----
|
||||||
case Opcode::SMSG_SHOW_BANK:
|
case Opcode::SMSG_SHOW_BANK:
|
||||||
|
|
@ -2521,7 +2552,25 @@ void GameHandler::handlePacket(network::Packet& packet) {
|
||||||
case Opcode::SMSG_AUCTION_COMMAND_RESULT:
|
case Opcode::SMSG_AUCTION_COMMAND_RESULT:
|
||||||
handleAuctionCommandResult(packet);
|
handleAuctionCommandResult(packet);
|
||||||
break;
|
break;
|
||||||
case Opcode::SMSG_UNKNOWN_319:
|
case Opcode::SMSG_AUCTION_OWNER_NOTIFICATION:
|
||||||
|
case Opcode::SMSG_AUCTION_BIDDER_NOTIFICATION:
|
||||||
|
// Auction notification payloads are informational; ignore until UI support lands.
|
||||||
|
packet.setReadPos(packet.getSize());
|
||||||
|
break;
|
||||||
|
case Opcode::SMSG_TAXINODE_STATUS:
|
||||||
|
// Node status cache not implemented yet.
|
||||||
|
packet.setReadPos(packet.getSize());
|
||||||
|
break;
|
||||||
|
case Opcode::SMSG_INIT_EXTRA_AURA_INFO_OBSOLETE:
|
||||||
|
case Opcode::SMSG_SET_EXTRA_AURA_INFO_OBSOLETE:
|
||||||
|
// Extra aura metadata (icons/durations) not yet consumed by aura UI.
|
||||||
|
packet.setReadPos(packet.getSize());
|
||||||
|
break;
|
||||||
|
case Opcode::MSG_MOVE_WORLDPORT_ACK:
|
||||||
|
// Client uses this outbound; treat inbound variant as no-op for robustness.
|
||||||
|
packet.setReadPos(packet.getSize());
|
||||||
|
break;
|
||||||
|
case Opcode::MSG_MOVE_TIME_SKIPPED:
|
||||||
// Observed custom server packet (8 bytes). Safe-consume for now.
|
// Observed custom server packet (8 bytes). Safe-consume for now.
|
||||||
packet.setReadPos(packet.getSize());
|
packet.setReadPos(packet.getSize());
|
||||||
break;
|
break;
|
||||||
|
|
@ -4055,11 +4104,11 @@ void GameHandler::sendMovement(Opcode opcode) {
|
||||||
// Block manual movement while taxi is active/mounted, but always allow
|
// Block manual movement while taxi is active/mounted, but always allow
|
||||||
// stop/heartbeat opcodes so stuck states can be recovered.
|
// stop/heartbeat opcodes so stuck states can be recovered.
|
||||||
bool taxiAllowed =
|
bool taxiAllowed =
|
||||||
(opcode == Opcode::CMSG_MOVE_HEARTBEAT) ||
|
(opcode == Opcode::MSG_MOVE_HEARTBEAT) ||
|
||||||
(opcode == Opcode::CMSG_MOVE_STOP) ||
|
(opcode == Opcode::MSG_MOVE_STOP) ||
|
||||||
(opcode == Opcode::CMSG_MOVE_STOP_STRAFE) ||
|
(opcode == Opcode::MSG_MOVE_STOP_STRAFE) ||
|
||||||
(opcode == Opcode::CMSG_MOVE_STOP_TURN) ||
|
(opcode == Opcode::MSG_MOVE_STOP_TURN) ||
|
||||||
(opcode == Opcode::CMSG_MOVE_STOP_SWIM);
|
(opcode == Opcode::MSG_MOVE_STOP_SWIM);
|
||||||
if (!serverMovementAllowed_ && !taxiAllowed) return;
|
if (!serverMovementAllowed_ && !taxiAllowed) return;
|
||||||
if ((onTaxiFlight_ || taxiMountActive_) && !taxiAllowed) return;
|
if ((onTaxiFlight_ || taxiMountActive_) && !taxiAllowed) return;
|
||||||
if (resurrectPending_ && !taxiAllowed) return;
|
if (resurrectPending_ && !taxiAllowed) return;
|
||||||
|
|
@ -4069,43 +4118,43 @@ void GameHandler::sendMovement(Opcode opcode) {
|
||||||
|
|
||||||
// Update movement flags based on opcode
|
// Update movement flags based on opcode
|
||||||
switch (opcode) {
|
switch (opcode) {
|
||||||
case Opcode::CMSG_MOVE_START_FORWARD:
|
case Opcode::MSG_MOVE_START_FORWARD:
|
||||||
movementInfo.flags |= static_cast<uint32_t>(MovementFlags::FORWARD);
|
movementInfo.flags |= static_cast<uint32_t>(MovementFlags::FORWARD);
|
||||||
break;
|
break;
|
||||||
case Opcode::CMSG_MOVE_START_BACKWARD:
|
case Opcode::MSG_MOVE_START_BACKWARD:
|
||||||
movementInfo.flags |= static_cast<uint32_t>(MovementFlags::BACKWARD);
|
movementInfo.flags |= static_cast<uint32_t>(MovementFlags::BACKWARD);
|
||||||
break;
|
break;
|
||||||
case Opcode::CMSG_MOVE_STOP:
|
case Opcode::MSG_MOVE_STOP:
|
||||||
movementInfo.flags &= ~(static_cast<uint32_t>(MovementFlags::FORWARD) |
|
movementInfo.flags &= ~(static_cast<uint32_t>(MovementFlags::FORWARD) |
|
||||||
static_cast<uint32_t>(MovementFlags::BACKWARD));
|
static_cast<uint32_t>(MovementFlags::BACKWARD));
|
||||||
break;
|
break;
|
||||||
case Opcode::CMSG_MOVE_START_STRAFE_LEFT:
|
case Opcode::MSG_MOVE_START_STRAFE_LEFT:
|
||||||
movementInfo.flags |= static_cast<uint32_t>(MovementFlags::STRAFE_LEFT);
|
movementInfo.flags |= static_cast<uint32_t>(MovementFlags::STRAFE_LEFT);
|
||||||
break;
|
break;
|
||||||
case Opcode::CMSG_MOVE_START_STRAFE_RIGHT:
|
case Opcode::MSG_MOVE_START_STRAFE_RIGHT:
|
||||||
movementInfo.flags |= static_cast<uint32_t>(MovementFlags::STRAFE_RIGHT);
|
movementInfo.flags |= static_cast<uint32_t>(MovementFlags::STRAFE_RIGHT);
|
||||||
break;
|
break;
|
||||||
case Opcode::CMSG_MOVE_STOP_STRAFE:
|
case Opcode::MSG_MOVE_STOP_STRAFE:
|
||||||
movementInfo.flags &= ~(static_cast<uint32_t>(MovementFlags::STRAFE_LEFT) |
|
movementInfo.flags &= ~(static_cast<uint32_t>(MovementFlags::STRAFE_LEFT) |
|
||||||
static_cast<uint32_t>(MovementFlags::STRAFE_RIGHT));
|
static_cast<uint32_t>(MovementFlags::STRAFE_RIGHT));
|
||||||
break;
|
break;
|
||||||
case Opcode::CMSG_MOVE_JUMP:
|
case Opcode::MSG_MOVE_JUMP:
|
||||||
movementInfo.flags |= static_cast<uint32_t>(MovementFlags::FALLING);
|
movementInfo.flags |= static_cast<uint32_t>(MovementFlags::FALLING);
|
||||||
break;
|
break;
|
||||||
case Opcode::CMSG_MOVE_START_TURN_LEFT:
|
case Opcode::MSG_MOVE_START_TURN_LEFT:
|
||||||
movementInfo.flags |= static_cast<uint32_t>(MovementFlags::TURN_LEFT);
|
movementInfo.flags |= static_cast<uint32_t>(MovementFlags::TURN_LEFT);
|
||||||
break;
|
break;
|
||||||
case Opcode::CMSG_MOVE_START_TURN_RIGHT:
|
case Opcode::MSG_MOVE_START_TURN_RIGHT:
|
||||||
movementInfo.flags |= static_cast<uint32_t>(MovementFlags::TURN_RIGHT);
|
movementInfo.flags |= static_cast<uint32_t>(MovementFlags::TURN_RIGHT);
|
||||||
break;
|
break;
|
||||||
case Opcode::CMSG_MOVE_STOP_TURN:
|
case Opcode::MSG_MOVE_STOP_TURN:
|
||||||
movementInfo.flags &= ~(static_cast<uint32_t>(MovementFlags::TURN_LEFT) |
|
movementInfo.flags &= ~(static_cast<uint32_t>(MovementFlags::TURN_LEFT) |
|
||||||
static_cast<uint32_t>(MovementFlags::TURN_RIGHT));
|
static_cast<uint32_t>(MovementFlags::TURN_RIGHT));
|
||||||
break;
|
break;
|
||||||
case Opcode::CMSG_MOVE_FALL_LAND:
|
case Opcode::MSG_MOVE_FALL_LAND:
|
||||||
movementInfo.flags &= ~static_cast<uint32_t>(MovementFlags::FALLING);
|
movementInfo.flags &= ~static_cast<uint32_t>(MovementFlags::FALLING);
|
||||||
break;
|
break;
|
||||||
case Opcode::CMSG_MOVE_HEARTBEAT:
|
case Opcode::MSG_MOVE_HEARTBEAT:
|
||||||
// No flag changes — just sends current position
|
// No flag changes — just sends current position
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
|
|
@ -4241,11 +4290,11 @@ void GameHandler::forceClearTaxiAndMovementState() {
|
||||||
clearPlayerTransport();
|
clearPlayerTransport();
|
||||||
|
|
||||||
if (socket && state == WorldState::IN_WORLD) {
|
if (socket && state == WorldState::IN_WORLD) {
|
||||||
sendMovement(Opcode::CMSG_MOVE_STOP);
|
sendMovement(Opcode::MSG_MOVE_STOP);
|
||||||
sendMovement(Opcode::CMSG_MOVE_STOP_STRAFE);
|
sendMovement(Opcode::MSG_MOVE_STOP_STRAFE);
|
||||||
sendMovement(Opcode::CMSG_MOVE_STOP_TURN);
|
sendMovement(Opcode::MSG_MOVE_STOP_TURN);
|
||||||
sendMovement(Opcode::CMSG_MOVE_STOP_SWIM);
|
sendMovement(Opcode::MSG_MOVE_STOP_SWIM);
|
||||||
sendMovement(Opcode::CMSG_MOVE_HEARTBEAT);
|
sendMovement(Opcode::MSG_MOVE_HEARTBEAT);
|
||||||
}
|
}
|
||||||
|
|
||||||
LOG_INFO("Force-cleared taxi/movement state");
|
LOG_INFO("Force-cleared taxi/movement state");
|
||||||
|
|
@ -8528,7 +8577,7 @@ void GameHandler::castSpell(uint32_t spellId, uint64_t targetGuid) {
|
||||||
// Face the target before sending the cast packet to avoid "not in front" rejection
|
// Face the target before sending the cast packet to avoid "not in front" rejection
|
||||||
float yaw = std::atan2(dy, dx);
|
float yaw = std::atan2(dy, dx);
|
||||||
movementInfo.orientation = yaw;
|
movementInfo.orientation = yaw;
|
||||||
sendMovement(Opcode::CMSG_MOVE_SET_FACING);
|
sendMovement(Opcode::MSG_MOVE_SET_FACING);
|
||||||
if (chargeCallback_) {
|
if (chargeCallback_) {
|
||||||
chargeCallback_(target, tx, ty, tz);
|
chargeCallback_(target, tx, ty, tz);
|
||||||
}
|
}
|
||||||
|
|
@ -8565,7 +8614,7 @@ void GameHandler::castSpell(uint32_t spellId, uint64_t targetGuid) {
|
||||||
// Face the target to prevent "not in front" rejection
|
// Face the target to prevent "not in front" rejection
|
||||||
float yaw = std::atan2(dy, dx);
|
float yaw = std::atan2(dy, dx);
|
||||||
movementInfo.orientation = yaw;
|
movementInfo.orientation = yaw;
|
||||||
sendMovement(Opcode::CMSG_MOVE_SET_FACING);
|
sendMovement(Opcode::MSG_MOVE_SET_FACING);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -9355,7 +9404,7 @@ void GameHandler::performGameObjectInteractionNow(uint64_t guid) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (shouldSendLoot) {
|
if (shouldSendLoot) {
|
||||||
LOG_INFO("GameObject interaction: sent CMSG_GAMEOBJECT_USE + CMSG_LOOT for guid=0x", std::hex, guid, std::dec,
|
LOG_INFO("GameObject interaction: sent CMSG_GAMEOBJ_USE + CMSG_LOOT for guid=0x", std::hex, guid, std::dec,
|
||||||
" mailbox=", (isMailbox ? 1 : 0), " turtle=", (turtleMode ? 1 : 0));
|
" mailbox=", (isMailbox ? 1 : 0), " turtle=", (turtleMode ? 1 : 0));
|
||||||
lootTarget(guid);
|
lootTarget(guid);
|
||||||
if (turtleMode) {
|
if (turtleMode) {
|
||||||
|
|
@ -11247,8 +11296,8 @@ void GameHandler::updateClientTaxi(float deltaTime) {
|
||||||
movementInfo.flags = 0;
|
movementInfo.flags = 0;
|
||||||
movementInfo.flags2 = 0;
|
movementInfo.flags2 = 0;
|
||||||
if (socket) {
|
if (socket) {
|
||||||
sendMovement(Opcode::CMSG_MOVE_STOP);
|
sendMovement(Opcode::MSG_MOVE_STOP);
|
||||||
sendMovement(Opcode::CMSG_MOVE_HEARTBEAT);
|
sendMovement(Opcode::MSG_MOVE_HEARTBEAT);
|
||||||
}
|
}
|
||||||
LOG_INFO("Taxi flight landed (client path)");
|
LOG_INFO("Taxi flight landed (client path)");
|
||||||
};
|
};
|
||||||
|
|
@ -11394,7 +11443,7 @@ void GameHandler::handleActivateTaxiReply(network::Packet& packet) {
|
||||||
taxiActivateTimer_ = 0.0f;
|
taxiActivateTimer_ = 0.0f;
|
||||||
applyTaxiMountForCurrentNode();
|
applyTaxiMountForCurrentNode();
|
||||||
if (socket) {
|
if (socket) {
|
||||||
sendMovement(Opcode::CMSG_MOVE_HEARTBEAT);
|
sendMovement(Opcode::MSG_MOVE_HEARTBEAT);
|
||||||
}
|
}
|
||||||
LOG_INFO("Taxi flight started!");
|
LOG_INFO("Taxi flight started!");
|
||||||
} else {
|
} else {
|
||||||
|
|
@ -11569,7 +11618,7 @@ void GameHandler::activateTaxi(uint32_t destNodeId) {
|
||||||
applyTaxiMountForCurrentNode();
|
applyTaxiMountForCurrentNode();
|
||||||
}
|
}
|
||||||
if (socket) {
|
if (socket) {
|
||||||
sendMovement(Opcode::CMSG_MOVE_HEARTBEAT);
|
sendMovement(Opcode::MSG_MOVE_HEARTBEAT);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Trigger terrain precache immediately (non-blocking).
|
// Trigger terrain precache immediately (non-blocking).
|
||||||
|
|
|
||||||
File diff suppressed because it is too large
Load diff
|
|
@ -452,8 +452,8 @@ bool TbcPacketParsers::parseUpdateObject(network::Packet& packet, UpdateObjectDa
|
||||||
|
|
||||||
// ============================================================================
|
// ============================================================================
|
||||||
// TBC parseAuraUpdate - SMSG_AURA_UPDATE doesn't exist in TBC
|
// TBC parseAuraUpdate - SMSG_AURA_UPDATE doesn't exist in TBC
|
||||||
// TBC uses inline aura update fields + SMSG_INIT_EXTRA_AURA_INFO (0x3A3) /
|
// TBC uses inline aura update fields + SMSG_INIT_EXTRA_AURA_INFO_OBSOLETE (0x3A3) /
|
||||||
// SMSG_SET_EXTRA_AURA_INFO (0x3A4) instead
|
// SMSG_SET_EXTRA_AURA_INFO_OBSOLETE (0x3A4) instead
|
||||||
// ============================================================================
|
// ============================================================================
|
||||||
bool TbcPacketParsers::parseAuraUpdate(network::Packet& /*packet*/, AuraUpdateData& /*data*/, bool /*isAll*/) {
|
bool TbcPacketParsers::parseAuraUpdate(network::Packet& /*packet*/, AuraUpdateData& /*data*/, bool /*isAll*/) {
|
||||||
LOG_WARNING("[TBC] parseAuraUpdate called but SMSG_AURA_UPDATE does not exist in TBC 2.4.3");
|
LOG_WARNING("[TBC] parseAuraUpdate called but SMSG_AURA_UPDATE does not exist in TBC 2.4.3");
|
||||||
|
|
|
||||||
|
|
@ -1450,9 +1450,9 @@ bool QueryTimeResponseParser::parse(network::Packet& packet, QueryTimeResponseDa
|
||||||
}
|
}
|
||||||
|
|
||||||
network::Packet RequestPlayedTimePacket::build(bool sendToChat) {
|
network::Packet RequestPlayedTimePacket::build(bool sendToChat) {
|
||||||
network::Packet packet(wireOpcode(Opcode::CMSG_REQUEST_PLAYED_TIME));
|
network::Packet packet(wireOpcode(Opcode::CMSG_PLAYED_TIME));
|
||||||
packet.writeUInt8(sendToChat ? 1 : 0);
|
packet.writeUInt8(sendToChat ? 1 : 0);
|
||||||
LOG_DEBUG("Built CMSG_REQUEST_PLAYED_TIME: sendToChat=", sendToChat);
|
LOG_DEBUG("Built CMSG_PLAYED_TIME: sendToChat=", sendToChat);
|
||||||
return packet;
|
return packet;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -1564,9 +1564,9 @@ bool LogoutResponseParser::parse(network::Packet& packet, LogoutResponseData& da
|
||||||
// ============================================================
|
// ============================================================
|
||||||
|
|
||||||
network::Packet StandStateChangePacket::build(uint8_t state) {
|
network::Packet StandStateChangePacket::build(uint8_t state) {
|
||||||
network::Packet packet(wireOpcode(Opcode::CMSG_STAND_STATE_CHANGE));
|
network::Packet packet(wireOpcode(Opcode::CMSG_STANDSTATECHANGE));
|
||||||
packet.writeUInt32(state);
|
packet.writeUInt32(state);
|
||||||
LOG_DEBUG("Built CMSG_STAND_STATE_CHANGE: state=", (int)state);
|
LOG_DEBUG("Built CMSG_STANDSTATECHANGE: state=", (int)state);
|
||||||
return packet;
|
return packet;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -1609,8 +1609,8 @@ network::Packet GuildInfoPacket::build() {
|
||||||
}
|
}
|
||||||
|
|
||||||
network::Packet GuildRosterPacket::build() {
|
network::Packet GuildRosterPacket::build() {
|
||||||
network::Packet packet(wireOpcode(Opcode::CMSG_GUILD_GET_ROSTER));
|
network::Packet packet(wireOpcode(Opcode::CMSG_GUILD_ROSTER));
|
||||||
LOG_DEBUG("Built CMSG_GUILD_GET_ROSTER");
|
LOG_DEBUG("Built CMSG_GUILD_ROSTER");
|
||||||
return packet;
|
return packet;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -1622,16 +1622,16 @@ network::Packet GuildMotdPacket::build(const std::string& motd) {
|
||||||
}
|
}
|
||||||
|
|
||||||
network::Packet GuildPromotePacket::build(const std::string& playerName) {
|
network::Packet GuildPromotePacket::build(const std::string& playerName) {
|
||||||
network::Packet packet(wireOpcode(Opcode::CMSG_GUILD_PROMOTE_MEMBER));
|
network::Packet packet(wireOpcode(Opcode::CMSG_GUILD_PROMOTE));
|
||||||
packet.writeString(playerName);
|
packet.writeString(playerName);
|
||||||
LOG_DEBUG("Built CMSG_GUILD_PROMOTE_MEMBER: ", playerName);
|
LOG_DEBUG("Built CMSG_GUILD_PROMOTE: ", playerName);
|
||||||
return packet;
|
return packet;
|
||||||
}
|
}
|
||||||
|
|
||||||
network::Packet GuildDemotePacket::build(const std::string& playerName) {
|
network::Packet GuildDemotePacket::build(const std::string& playerName) {
|
||||||
network::Packet packet(wireOpcode(Opcode::CMSG_GUILD_DEMOTE_MEMBER));
|
network::Packet packet(wireOpcode(Opcode::CMSG_GUILD_DEMOTE));
|
||||||
packet.writeString(playerName);
|
packet.writeString(playerName);
|
||||||
LOG_DEBUG("Built CMSG_GUILD_DEMOTE_MEMBER: ", playerName);
|
LOG_DEBUG("Built CMSG_GUILD_DEMOTE: ", playerName);
|
||||||
return packet;
|
return packet;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -1698,8 +1698,8 @@ network::Packet GuildAcceptPacket::build() {
|
||||||
}
|
}
|
||||||
|
|
||||||
network::Packet GuildDeclineInvitationPacket::build() {
|
network::Packet GuildDeclineInvitationPacket::build() {
|
||||||
network::Packet packet(wireOpcode(Opcode::CMSG_GUILD_DECLINE_INVITATION));
|
network::Packet packet(wireOpcode(Opcode::CMSG_GUILD_DECLINE));
|
||||||
LOG_DEBUG("Built CMSG_GUILD_DECLINE_INVITATION");
|
LOG_DEBUG("Built CMSG_GUILD_DECLINE");
|
||||||
return packet;
|
return packet;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -3762,7 +3762,7 @@ network::Packet ActivateTaxiPacket::build(uint64_t npcGuid, uint32_t srcNode, ui
|
||||||
}
|
}
|
||||||
|
|
||||||
network::Packet GameObjectUsePacket::build(uint64_t guid) {
|
network::Packet GameObjectUsePacket::build(uint64_t guid) {
|
||||||
network::Packet packet(wireOpcode(Opcode::CMSG_GAMEOBJECT_USE));
|
network::Packet packet(wireOpcode(Opcode::CMSG_GAMEOBJ_USE));
|
||||||
packet.writeUInt64(guid);
|
packet.writeUInt64(guid);
|
||||||
return packet;
|
return packet;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1313,60 +1313,60 @@ void CameraController::update(float deltaTime) {
|
||||||
if (movementCallback) {
|
if (movementCallback) {
|
||||||
// Forward/backward
|
// Forward/backward
|
||||||
if (nowForward && !wasMovingForward) {
|
if (nowForward && !wasMovingForward) {
|
||||||
movementCallback(static_cast<uint32_t>(game::Opcode::CMSG_MOVE_START_FORWARD));
|
movementCallback(static_cast<uint32_t>(game::Opcode::MSG_MOVE_START_FORWARD));
|
||||||
}
|
}
|
||||||
if (nowBackward && !wasMovingBackward) {
|
if (nowBackward && !wasMovingBackward) {
|
||||||
movementCallback(static_cast<uint32_t>(game::Opcode::CMSG_MOVE_START_BACKWARD));
|
movementCallback(static_cast<uint32_t>(game::Opcode::MSG_MOVE_START_BACKWARD));
|
||||||
}
|
}
|
||||||
if ((!nowForward && wasMovingForward) || (!nowBackward && wasMovingBackward)) {
|
if ((!nowForward && wasMovingForward) || (!nowBackward && wasMovingBackward)) {
|
||||||
if (!nowForward && !nowBackward) {
|
if (!nowForward && !nowBackward) {
|
||||||
movementCallback(static_cast<uint32_t>(game::Opcode::CMSG_MOVE_STOP));
|
movementCallback(static_cast<uint32_t>(game::Opcode::MSG_MOVE_STOP));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Strafing
|
// Strafing
|
||||||
if (nowStrafeLeft && !wasStrafingLeft) {
|
if (nowStrafeLeft && !wasStrafingLeft) {
|
||||||
movementCallback(static_cast<uint32_t>(game::Opcode::CMSG_MOVE_START_STRAFE_LEFT));
|
movementCallback(static_cast<uint32_t>(game::Opcode::MSG_MOVE_START_STRAFE_LEFT));
|
||||||
}
|
}
|
||||||
if (nowStrafeRight && !wasStrafingRight) {
|
if (nowStrafeRight && !wasStrafingRight) {
|
||||||
movementCallback(static_cast<uint32_t>(game::Opcode::CMSG_MOVE_START_STRAFE_RIGHT));
|
movementCallback(static_cast<uint32_t>(game::Opcode::MSG_MOVE_START_STRAFE_RIGHT));
|
||||||
}
|
}
|
||||||
if ((!nowStrafeLeft && wasStrafingLeft) || (!nowStrafeRight && wasStrafingRight)) {
|
if ((!nowStrafeLeft && wasStrafingLeft) || (!nowStrafeRight && wasStrafingRight)) {
|
||||||
if (!nowStrafeLeft && !nowStrafeRight) {
|
if (!nowStrafeLeft && !nowStrafeRight) {
|
||||||
movementCallback(static_cast<uint32_t>(game::Opcode::CMSG_MOVE_STOP_STRAFE));
|
movementCallback(static_cast<uint32_t>(game::Opcode::MSG_MOVE_STOP_STRAFE));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Turning
|
// Turning
|
||||||
if (nowTurnLeft && !wasTurningLeft) {
|
if (nowTurnLeft && !wasTurningLeft) {
|
||||||
movementCallback(static_cast<uint32_t>(game::Opcode::CMSG_MOVE_START_TURN_LEFT));
|
movementCallback(static_cast<uint32_t>(game::Opcode::MSG_MOVE_START_TURN_LEFT));
|
||||||
}
|
}
|
||||||
if (nowTurnRight && !wasTurningRight) {
|
if (nowTurnRight && !wasTurningRight) {
|
||||||
movementCallback(static_cast<uint32_t>(game::Opcode::CMSG_MOVE_START_TURN_RIGHT));
|
movementCallback(static_cast<uint32_t>(game::Opcode::MSG_MOVE_START_TURN_RIGHT));
|
||||||
}
|
}
|
||||||
if ((!nowTurnLeft && wasTurningLeft) || (!nowTurnRight && wasTurningRight)) {
|
if ((!nowTurnLeft && wasTurningLeft) || (!nowTurnRight && wasTurningRight)) {
|
||||||
if (!nowTurnLeft && !nowTurnRight) {
|
if (!nowTurnLeft && !nowTurnRight) {
|
||||||
movementCallback(static_cast<uint32_t>(game::Opcode::CMSG_MOVE_STOP_TURN));
|
movementCallback(static_cast<uint32_t>(game::Opcode::MSG_MOVE_STOP_TURN));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Jump
|
// Jump
|
||||||
if (nowJump && !wasJumping && grounded) {
|
if (nowJump && !wasJumping && grounded) {
|
||||||
movementCallback(static_cast<uint32_t>(game::Opcode::CMSG_MOVE_JUMP));
|
movementCallback(static_cast<uint32_t>(game::Opcode::MSG_MOVE_JUMP));
|
||||||
}
|
}
|
||||||
|
|
||||||
// Fall landing
|
// Fall landing
|
||||||
if (wasFalling && grounded) {
|
if (wasFalling && grounded) {
|
||||||
movementCallback(static_cast<uint32_t>(game::Opcode::CMSG_MOVE_FALL_LAND));
|
movementCallback(static_cast<uint32_t>(game::Opcode::MSG_MOVE_FALL_LAND));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Swimming state transitions
|
// Swimming state transitions
|
||||||
if (movementCallback) {
|
if (movementCallback) {
|
||||||
if (swimming && !wasSwimming) {
|
if (swimming && !wasSwimming) {
|
||||||
movementCallback(static_cast<uint32_t>(game::Opcode::CMSG_MOVE_START_SWIM));
|
movementCallback(static_cast<uint32_t>(game::Opcode::MSG_MOVE_START_SWIM));
|
||||||
} else if (!swimming && wasSwimming) {
|
} else if (!swimming && wasSwimming) {
|
||||||
movementCallback(static_cast<uint32_t>(game::Opcode::CMSG_MOVE_STOP_SWIM));
|
movementCallback(static_cast<uint32_t>(game::Opcode::MSG_MOVE_STOP_SWIM));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue