Skip to main content

tentacli_traits/types/
opcodes.rs

1macro_rules! opcodes {
2    (
3        pub struct $struct_name:ident {
4            $(
5                $(#[$attrs:meta])*
6                pub const $const_name:ident : $const_type:ty = $const_value:expr;
7            )*
8        }
9    ) => {
10        pub struct $struct_name;
11
12        impl $struct_name {
13            $(
14                $(#[$attrs])*
15                #[allow(dead_code)]
16                pub const $const_name: $const_type = $const_value;
17            )*
18
19            pub fn get_opcode_name(index: u32) -> Option<String> {
20                match index {
21                    $(
22                        $const_value if $const_value == $const_value as u32 => Some(stringify!($const_name).to_string()),
23                    )*
24                    _ => None,
25                }
26            }
27        }
28    };
29}
30
31opcodes! {
32    pub struct Opcode {
33        pub const LOGIN_CHALLENGE: u8 = 0;
34        pub const LOGIN_PROOF: u8 = 1;
35        pub const REALM_LIST: u8 = 16;
36
37        pub const MSG_NULL_ACTION: u16 = 0;
38        pub const CMSG_BOOTME: u32 = 1;
39        pub const CMSG_DBLOOKUP: u32 = 2;
40        pub const SMSG_DBLOOKUP: u16 = 3;
41        pub const CMSG_QUERY_OBJECT_POSITION: u32 = 4;
42        pub const SMSG_QUERY_OBJECT_POSITION: u16 = 5;
43        pub const CMSG_QUERY_OBJECT_ROTATION: u32 = 6;
44        pub const SMSG_QUERY_OBJECT_ROTATION: u16 = 7;
45        pub const CMSG_WORLD_TELEPORT: u32 = 8;
46        pub const CMSG_TELEPORT_TO_UNIT: u32 = 9;
47        pub const CMSG_ZONE_MAP: u32 = 10;
48        pub const SMSG_ZONE_MAP: u16 = 11;
49        pub const CMSG_DEBUG_CHANGECELLZONE: u32 = 12;
50        pub const CMSG_MOVE_CHARACTER_CHEAT: u32 = 13;
51        pub const SMSG_MOVE_CHARACTER_CHEAT: u16 = 14;
52        pub const CMSG_RECHARGE: u32 = 15;
53        pub const CMSG_LEARN_SPELL: u32 = 16;
54        pub const CMSG_CREATEMONSTER: u32 = 17;
55        pub const CMSG_DESTROYMONSTER: u32 = 18;
56        pub const CMSG_CREATEITEM: u32 = 19;
57        pub const CMSG_CREATEGAMEOBJECT: u32 = 20;
58        pub const SMSG_CHECK_FOR_BOTS: u16 = 21;
59        pub const CMSG_MAKEMONSTERATTACKGUID: u32 = 22;
60        pub const CMSG_BOT_DETECTED2: u32 = 23;
61        pub const CMSG_FORCEACTION: u32 = 24;
62        pub const CMSG_FORCEACTIONONOTHER: u32 = 25;
63        pub const CMSG_FORCEACTIONSHOW: u32 = 26;
64        pub const SMSG_FORCEACTIONSHOW: u16 = 27;
65        pub const CMSG_PETGODMODE: u32 = 28;
66        pub const SMSG_PETGODMODE: u16 = 29;
67        pub const SMSG_REFER_A_FRIEND_EXPIRED: u16 = 30;
68        pub const CMSG_WEATHER_SPEED_CHEAT: u32 = 31;
69        pub const CMSG_UNDRESSPLAYER: u32 = 32;
70        pub const CMSG_BEASTMASTER: u32 = 33;
71        pub const CMSG_GODMODE: u32 = 34;
72        pub const SMSG_GODMODE: u16 = 35;
73        pub const CMSG_CHEAT_SETMONEY: u32 = 36;
74        pub const CMSG_LEVEL_CHEAT: u32 = 37;
75        pub const CMSG_PET_LEVEL_CHEAT: u32 = 38;
76        pub const CMSG_SET_WORLDSTATE: u32 = 39;
77        pub const CMSG_COOLDOWN_CHEAT: u32 = 40;
78        pub const CMSG_USE_SKILL_CHEAT: u32 = 41;
79        pub const CMSG_FLAG_QUEST: u32 = 42;
80        pub const CMSG_FLAG_QUEST_FINISH: u32 = 43;
81        pub const CMSG_CLEAR_QUEST: u32 = 44;
82        pub const CMSG_SEND_EVENT: u32 = 45;
83        pub const CMSG_DEBUG_AISTATE: u32 = 46;
84        pub const SMSG_DEBUG_AISTATE: u16 = 47;
85        pub const CMSG_DISABLE_PVP_CHEAT: u32 = 48;
86        pub const CMSG_ADVANCE_SPAWN_TIME: u32 = 49;
87        pub const SMSG_DESTRUCTIBLE_BUILDING_DAMAGE: u16 = 50;
88        pub const CMSG_AUTH_SRP6_BEGIN: u32 = 51;
89        pub const CMSG_AUTH_SRP6_PROOF: u32 = 52;
90        pub const CMSG_AUTH_SRP6_RECODE: u32 = 53;
91        pub const CMSG_CHAR_CREATE: u32 = 54;
92        pub const CMSG_CHAR_ENUM: u32 = 55;
93        pub const CMSG_CHAR_DELETE: u32 = 56;
94        pub const SMSG_AUTH_SRP6_RESPONSE: u16 = 57;
95        pub const SMSG_CHAR_CREATE: u16 = 58;
96        pub const SMSG_CHAR_ENUM: u16 = 59;
97        pub const SMSG_CHAR_DELETE: u16 = 60;
98        pub const CMSG_PLAYER_LOGIN: u32 = 61;
99        pub const SMSG_NEW_WORLD: u16 = 62;
100        pub const SMSG_TRANSFER_PENDING: u16 = 63;
101        pub const SMSG_TRANSFER_ABORTED: u16 = 64;
102        pub const SMSG_CHARACTER_LOGIN_FAILED: u16 = 65;
103        pub const SMSG_LOGIN_SETTIMESPEED: u16 = 66;
104        pub const SMSG_GAMETIME_UPDATE: u16 = 67;
105        pub const CMSG_GAMETIME_SET: u32 = 68;
106        pub const SMSG_GAMETIME_SET: u16 = 69;
107        pub const CMSG_GAMESPEED_SET: u32 = 70;
108        pub const SMSG_GAMESPEED_SET: u16 = 71;
109        pub const CMSG_SERVERTIME: u32 = 72;
110        pub const SMSG_SERVERTIME: u16 = 73;
111        pub const CMSG_PLAYER_LOGOUT: u32 = 74;
112        pub const CMSG_LOGOUT_REQUEST: u32 = 75;
113        pub const SMSG_LOGOUT_RESPONSE: u16 = 76;
114        pub const SMSG_LOGOUT_COMPLETE: u16 = 77;
115        pub const CMSG_LOGOUT_CANCEL: u32 = 78;
116        pub const SMSG_LOGOUT_CANCEL_ACK: u16 = 79;
117        pub const CMSG_NAME_QUERY: u32 = 80;
118        pub const SMSG_NAME_QUERY_RESPONSE: u16 = 81;
119        pub const CMSG_PET_NAME_QUERY: u32 = 82;
120        pub const SMSG_PET_NAME_QUERY_RESPONSE: u16 = 83;
121        pub const CMSG_GUILD_QUERY: u32 = 84;
122        pub const SMSG_GUILD_QUERY_RESPONSE: u16 = 85;
123        pub const CMSG_ITEM_QUERY_SINGLE: u32 = 86;
124        pub const CMSG_ITEM_QUERY_MULTIPLE: u32 = 87;
125        pub const SMSG_ITEM_QUERY_SINGLE_RESPONSE: u16 = 88;
126        pub const SMSG_ITEM_QUERY_MULTIPLE_RESPONSE: u16 = 89;
127        pub const CMSG_PAGE_TEXT_QUERY: u32 = 90;
128        pub const SMSG_PAGE_TEXT_QUERY_RESPONSE: u16 = 91;
129        pub const CMSG_QUEST_QUERY: u32 = 92;
130        pub const SMSG_QUEST_QUERY_RESPONSE: u16 = 93;
131        pub const CMSG_GAMEOBJECT_QUERY: u32 = 94;
132        pub const SMSG_GAMEOBJECT_QUERY_RESPONSE: u16 = 95;
133        pub const CMSG_CREATURE_QUERY: u32 = 96;
134        pub const SMSG_CREATURE_QUERY_RESPONSE: u16 = 97;
135        pub const CMSG_WHO: u32 = 98;
136        pub const SMSG_WHO: u16 = 99;
137        pub const CMSG_WHOIS: u32 = 100;
138        pub const SMSG_WHOIS: u16 = 101;
139        pub const CMSG_CONTACT_LIST: u32 = 102;
140        pub const SMSG_CONTACT_LIST: u16 = 103;
141        pub const SMSG_FRIEND_STATUS: u16 = 104;
142        pub const CMSG_ADD_FRIEND: u32 = 105;
143        pub const CMSG_DEL_FRIEND: u32 = 106;
144        pub const CMSG_SET_CONTACT_NOTES: u32 = 107;
145        pub const CMSG_ADD_IGNORE: u32 = 108;
146        pub const CMSG_DEL_IGNORE: u32 = 109;
147        pub const CMSG_GROUP_INVITE: u32 = 110;
148        pub const SMSG_GROUP_INVITE: u16 = 111;
149        pub const CMSG_GROUP_CANCEL: u32 = 112;
150        pub const SMSG_GROUP_CANCEL: u16 = 113;
151        pub const CMSG_GROUP_ACCEPT: u32 = 114;
152        pub const CMSG_GROUP_DECLINE: u32 = 115;
153        pub const SMSG_GROUP_DECLINE: u16 = 116;
154        pub const CMSG_GROUP_UNINVITE: u32 = 117;
155        pub const CMSG_GROUP_UNINVITE_GUID: u32 = 118;
156        pub const SMSG_GROUP_UNINVITE: u16 = 119;
157        pub const CMSG_GROUP_SET_LEADER: u32 = 120;
158        pub const SMSG_GROUP_SET_LEADER: u16 = 121;
159        pub const CMSG_LOOT_METHOD: u32 = 122;
160        pub const CMSG_GROUP_DISBAND: u32 = 123;
161        pub const SMSG_GROUP_DESTROYED: u16 = 124;
162        pub const SMSG_GROUP_LIST: u16 = 125;
163        pub const SMSG_PARTY_MEMBER_STATS: u16 = 126;
164        pub const SMSG_PARTY_COMMAND_RESULT: u16 = 127;
165        pub const MSG_UPDATE_GROUP_MEMBERS: u16 = 128;
166        pub const CMSG_GUILD_CREATE: u32 = 129;
167        pub const CMSG_GUILD_INVITE: u32 = 130;
168        pub const SMSG_GUILD_INVITE: u16 = 131;
169        pub const CMSG_GUILD_ACCEPT: u32 = 132;
170        pub const CMSG_GUILD_DECLINE: u32 = 133;
171        pub const SMSG_GUILD_DECLINE: u16 = 134;
172        pub const CMSG_GUILD_INFO: u32 = 135;
173        pub const SMSG_GUILD_INFO: u16 = 136;
174        pub const CMSG_GUILD_ROSTER: u32 = 137;
175        pub const SMSG_GUILD_ROSTER: u16 = 138;
176        pub const CMSG_GUILD_PROMOTE: u32 = 139;
177        pub const CMSG_GUILD_DEMOTE: u32 = 140;
178        pub const CMSG_GUILD_LEAVE: u32 = 141;
179        pub const CMSG_GUILD_REMOVE: u32 = 142;
180        pub const CMSG_GUILD_DISBAND: u32 = 143;
181        pub const CMSG_GUILD_LEADER: u32 = 144;
182        pub const CMSG_GUILD_MOTD: u32 = 145;
183        pub const SMSG_GUILD_EVENT: u16 = 146;
184        pub const SMSG_GUILD_COMMAND_RESULT: u16 = 147;
185        pub const MSG_UPDATE_GUILD: u16 = 148;
186        pub const CMSG_MESSAGECHAT: u32 = 149;
187        pub const SMSG_MESSAGECHAT: u16 = 150;
188        pub const CMSG_JOIN_CHANNEL: u32 = 151;
189        pub const CMSG_LEAVE_CHANNEL: u32 = 152;
190        pub const SMSG_CHANNEL_NOTIFY: u16 = 153;
191        pub const CMSG_CHANNEL_LIST: u32 = 154;
192        pub const SMSG_CHANNEL_LIST: u16 = 155;
193        pub const CMSG_CHANNEL_PASSWORD: u32 = 156;
194        pub const CMSG_CHANNEL_SET_OWNER: u32 = 157;
195        pub const CMSG_CHANNEL_OWNER: u32 = 158;
196        pub const CMSG_CHANNEL_MODERATOR: u32 = 159;
197        pub const CMSG_CHANNEL_UNMODERATOR: u32 = 160;
198        pub const CMSG_CHANNEL_MUTE: u32 = 161;
199        pub const CMSG_CHANNEL_UNMUTE: u32 = 162;
200        pub const CMSG_CHANNEL_INVITE: u32 = 163;
201        pub const CMSG_CHANNEL_KICK: u32 = 164;
202        pub const CMSG_CHANNEL_BAN: u32 = 165;
203        pub const CMSG_CHANNEL_UNBAN: u32 = 166;
204        pub const CMSG_CHANNEL_ANNOUNCEMENTS: u32 = 167;
205        pub const CMSG_CHANNEL_MODERATE: u32 = 168;
206        pub const SMSG_UPDATE_OBJECT: u16 = 169;
207        pub const SMSG_DESTROY_OBJECT: u16 = 170;
208        pub const CMSG_USE_ITEM: u32 = 171;
209        pub const CMSG_OPEN_ITEM: u32 = 172;
210        pub const CMSG_READ_ITEM: u32 = 173;
211        pub const SMSG_READ_ITEM_OK: u16 = 174;
212        pub const SMSG_READ_ITEM_FAILED: u16 = 175;
213        pub const SMSG_ITEM_COOLDOWN: u16 = 176;
214        pub const CMSG_GAMEOBJ_USE: u32 = 177;
215        pub const CMSG_DESTROY_ITEMS: u32 = 178;
216        pub const SMSG_GAMEOBJECT_CUSTOM_ANIM: u16 = 179;
217        pub const CMSG_AREATRIGGER: u32 = 180;
218        pub const MSG_MOVE_START_FORWARD: u16 = 181;
219        pub const MSG_MOVE_START_BACKWARD: u16 = 182;
220        pub const MSG_MOVE_STOP: u16 = 183;
221        pub const MSG_MOVE_START_STRAFE_LEFT: u16 = 184;
222        pub const MSG_MOVE_START_STRAFE_RIGHT: u16 = 185;
223        pub const MSG_MOVE_STOP_STRAFE: u16 = 186;
224        pub const MSG_MOVE_JUMP: u16 = 187;
225        pub const MSG_MOVE_START_TURN_LEFT: u16 = 188;
226        pub const MSG_MOVE_START_TURN_RIGHT: u16 = 189;
227        pub const MSG_MOVE_STOP_TURN: u16 = 190;
228        pub const MSG_MOVE_START_PITCH_UP: u16 = 191;
229        pub const MSG_MOVE_START_PITCH_DOWN: u16 = 192;
230        pub const MSG_MOVE_STOP_PITCH: u16 = 193;
231        pub const MSG_MOVE_SET_RUN_MODE: u16 = 194;
232        pub const MSG_MOVE_SET_WALK_MODE: u16 = 195;
233        pub const MSG_MOVE_TOGGLE_LOGGING: u16 = 196;
234        pub const MSG_MOVE_TELEPORT: u16 = 197;
235        pub const MSG_MOVE_TELEPORT_CHEAT: u16 = 198;
236        pub const MSG_MOVE_TELEPORT_ACK: u16 = 199;
237        pub const MSG_MOVE_TOGGLE_FALL_LOGGING: u16 = 200;
238        pub const MSG_MOVE_FALL_LAND: u16 = 201;
239        pub const MSG_MOVE_START_SWIM: u16 = 202;
240        pub const MSG_MOVE_STOP_SWIM: u16 = 203;
241        pub const MSG_MOVE_SET_RUN_SPEED_CHEAT: u16 = 204;
242        pub const MSG_MOVE_SET_RUN_SPEED: u16 = 205;
243        pub const MSG_MOVE_SET_RUN_BACK_SPEED_CHEAT: u16 = 206;
244        pub const MSG_MOVE_SET_RUN_BACK_SPEED: u16 = 207;
245        pub const MSG_MOVE_SET_WALK_SPEED_CHEAT: u16 = 208;
246        pub const MSG_MOVE_SET_WALK_SPEED: u16 = 209;
247        pub const MSG_MOVE_SET_SWIM_SPEED_CHEAT: u16 = 210;
248        pub const MSG_MOVE_SET_SWIM_SPEED: u16 = 211;
249        pub const MSG_MOVE_SET_SWIM_BACK_SPEED_CHEAT: u16 = 212;
250        pub const MSG_MOVE_SET_SWIM_BACK_SPEED: u16 = 213;
251        pub const MSG_MOVE_SET_ALL_SPEED_CHEAT: u16 = 214;
252        pub const MSG_MOVE_SET_TURN_RATE_CHEAT: u16 = 215;
253        pub const MSG_MOVE_SET_TURN_RATE: u16 = 216;
254        pub const MSG_MOVE_TOGGLE_COLLISION_CHEAT: u16 = 217;
255        pub const MSG_MOVE_SET_FACING: u16 = 218;
256        pub const MSG_MOVE_SET_PITCH: u16 = 219;
257        pub const MSG_MOVE_WORLDPORT_ACK: u16 = 220;
258        pub const SMSG_MONSTER_MOVE: u16 = 221;
259        pub const SMSG_MOVE_WATER_WALK: u16 = 222;
260        pub const SMSG_MOVE_LAND_WALK: u16 = 223;
261        pub const CMSG_MOVE_CHARM_PORT_CHEAT: u32 = 224;
262        pub const CMSG_MOVE_SET_RAW_POSITION: u32 = 225;
263        pub const SMSG_FORCE_RUN_SPEED_CHANGE: u16 = 226;
264        pub const CMSG_FORCE_RUN_SPEED_CHANGE_ACK: u32 = 227;
265        pub const SMSG_FORCE_RUN_BACK_SPEED_CHANGE: u16 = 228;
266        pub const CMSG_FORCE_RUN_BACK_SPEED_CHANGE_ACK: u32 = 229;
267        pub const SMSG_FORCE_SWIM_SPEED_CHANGE: u16 = 230;
268        pub const CMSG_FORCE_SWIM_SPEED_CHANGE_ACK: u32 = 231;
269        pub const SMSG_FORCE_MOVE_ROOT: u16 = 232;
270        pub const CMSG_FORCE_MOVE_ROOT_ACK: u32 = 233;
271        pub const SMSG_FORCE_MOVE_UNROOT: u16 = 234;
272        pub const CMSG_FORCE_MOVE_UNROOT_ACK: u32 = 235;
273        pub const MSG_MOVE_ROOT: u16 = 236;
274        pub const MSG_MOVE_UNROOT: u16 = 237;
275        pub const MSG_MOVE_HEARTBEAT: u16 = 238;
276        pub const SMSG_MOVE_KNOCK_BACK: u16 = 239;
277        pub const CMSG_MOVE_KNOCK_BACK_ACK: u32 = 240;
278        pub const MSG_MOVE_KNOCK_BACK: u16 = 241;
279        pub const SMSG_MOVE_FEATHER_FALL: u16 = 242;
280        pub const SMSG_MOVE_NORMAL_FALL: u16 = 243;
281        pub const SMSG_MOVE_SET_HOVER: u16 = 244;
282        pub const SMSG_MOVE_UNSET_HOVER: u16 = 245;
283        pub const CMSG_MOVE_HOVER_ACK: u32 = 246;
284        pub const MSG_MOVE_HOVER: u16 = 247;
285        pub const CMSG_TRIGGER_CINEMATIC_CHEAT: u32 = 248;
286        pub const CMSG_OPENING_CINEMATIC: u32 = 249;
287        pub const SMSG_TRIGGER_CINEMATIC: u16 = 250;
288        pub const CMSG_NEXT_CINEMATIC_CAMERA: u32 = 251;
289        pub const CMSG_COMPLETE_CINEMATIC: u32 = 252;
290        pub const SMSG_TUTORIAL_FLAGS: u16 = 253;
291        pub const CMSG_TUTORIAL_FLAG: u32 = 254;
292        pub const CMSG_TUTORIAL_CLEAR: u32 = 255;
293        pub const CMSG_TUTORIAL_RESET: u32 = 256;
294        pub const CMSG_STANDSTATECHANGE: u32 = 257;
295        pub const CMSG_EMOTE: u32 = 258;
296        pub const SMSG_EMOTE: u16 = 259;
297        pub const CMSG_TEXT_EMOTE: u32 = 260;
298        pub const SMSG_TEXT_EMOTE: u16 = 261;
299        pub const CMSG_AUTOEQUIP_GROUND_ITEM: u32 = 262;
300        pub const CMSG_AUTOSTORE_GROUND_ITEM: u32 = 263;
301        pub const CMSG_AUTOSTORE_LOOT_ITEM: u32 = 264;
302        pub const CMSG_STORE_LOOT_IN_SLOT: u32 = 265;
303        pub const CMSG_AUTOEQUIP_ITEM: u32 = 266;
304        pub const CMSG_AUTOSTORE_BAG_ITEM: u32 = 267;
305        pub const CMSG_SWAP_ITEM: u32 = 268;
306        pub const CMSG_SWAP_INV_ITEM: u32 = 269;
307        pub const CMSG_SPLIT_ITEM: u32 = 270;
308        pub const CMSG_AUTOEQUIP_ITEM_SLOT: u32 = 271;
309        pub const CMSG_UNCLAIM_LICENSE: u32 = 272;
310        pub const CMSG_DESTROYITEM: u32 = 273;
311        pub const SMSG_INVENTORY_CHANGE_FAILURE: u16 = 274;
312        pub const SMSG_OPEN_CONTAINER: u16 = 275;
313        pub const CMSG_INSPECT: u32 = 276;
314        pub const SMSG_INSPECT_RESULTS_UPDATE: u16 = 277;
315        pub const CMSG_INITIATE_TRADE: u32 = 278;
316        pub const CMSG_BEGIN_TRADE: u32 = 279;
317        pub const CMSG_BUSY_TRADE: u32 = 280;
318        pub const CMSG_IGNORE_TRADE: u32 = 281;
319        pub const CMSG_ACCEPT_TRADE: u32 = 282;
320        pub const CMSG_UNACCEPT_TRADE: u32 = 283;
321        pub const CMSG_CANCEL_TRADE: u32 = 284;
322        pub const CMSG_SET_TRADE_ITEM: u32 = 285;
323        pub const CMSG_CLEAR_TRADE_ITEM: u32 = 286;
324        pub const CMSG_SET_TRADE_GOLD: u32 = 287;
325        pub const SMSG_TRADE_STATUS: u16 = 288;
326        pub const SMSG_TRADE_STATUS_EXTENDED: u16 = 289;
327        pub const SMSG_INITIALIZE_FACTIONS: u16 = 290;
328        pub const SMSG_SET_FACTION_VISIBLE: u16 = 291;
329        pub const SMSG_SET_FACTION_STANDING: u16 = 292;
330        pub const CMSG_SET_FACTION_ATWAR: u32 = 293;
331        pub const CMSG_SET_FACTION_CHEAT: u32 = 294;
332        pub const SMSG_SET_PROFICIENCY: u16 = 295;
333        pub const CMSG_SET_ACTION_BUTTON: u32 = 296;
334        pub const SMSG_ACTION_BUTTONS: u16 = 297;
335        pub const SMSG_INITIAL_SPELLS: u16 = 298;
336        pub const SMSG_LEARNED_SPELL: u16 = 299;
337        pub const SMSG_SUPERCEDED_SPELL: u16 = 300;
338        pub const CMSG_NEW_SPELL_SLOT: u32 = 301;
339        pub const CMSG_CAST_SPELL: u32 = 302;
340        pub const CMSG_CANCEL_CAST: u32 = 303;
341        pub const SMSG_CAST_RESULT: u16 = 304;
342        pub const SMSG_SPELL_START: u16 = 305;
343        pub const SMSG_SPELL_GO: u16 = 306;
344        pub const SMSG_SPELL_FAILURE: u16 = 307;
345        pub const SMSG_SPELL_COOLDOWN: u16 = 308;
346        pub const SMSG_COOLDOWN_EVENT: u16 = 309;
347        pub const CMSG_CANCEL_AURA: u32 = 310;
348        pub const SMSG_EQUIPMENT_SET_ID: u16 = 311;
349        pub const SMSG_PET_CAST_FAILED: u16 = 312;
350        pub const MSG_CHANNEL_START: u16 = 313;
351        pub const MSG_CHANNEL_UPDATE: u16 = 314;
352        pub const CMSG_CANCEL_CHANNELLING: u32 = 315;
353        pub const SMSG_AI_REACTION: u16 = 316;
354        pub const CMSG_SET_SELECTION: u32 = 317;
355        pub const CMSG_DELETEEQUIPMENT_SET: u32 = 318;
356        pub const CMSG_INSTANCE_LOCK_RESPONSE: u32 = 319;
357        pub const CMSG_DEBUG_PASSIVE_AURA: u32 = 320;
358        pub const CMSG_ATTACKSWING: u32 = 321;
359        pub const CMSG_ATTACKSTOP: u32 = 322;
360        pub const SMSG_ATTACKSTART: u16 = 323;
361        pub const SMSG_ATTACKSTOP: u16 = 324;
362        pub const SMSG_ATTACKSWING_NOTINRANGE: u16 = 325;
363        pub const SMSG_ATTACKSWING_BADFACING: u16 = 326;
364        pub const SMSG_PENDING_RAID_LOCK: u16 = 327;
365        pub const SMSG_ATTACKSWING_DEADTARGET: u16 = 328;
366        pub const SMSG_ATTACKSWING_CANT_ATTACK: u16 = 329;
367        pub const SMSG_ATTACKERSTATEUPDATE: u16 = 330;
368        pub const SMSG_BATTLEFIELD_PORT_DENIED: u16 = 331;
369        pub const CMSG_PERFORM_ACTION_SET: u32 = 332;
370        pub const SMSG_RESUME_CAST_BAR: u16 = 333;
371        pub const SMSG_CANCEL_COMBAT: u16 = 334;
372        pub const SMSG_SPELLBREAKLOG: u16 = 335;
373        pub const SMSG_SPELLHEALLOG: u16 = 336;
374        pub const SMSG_SPELLENERGIZELOG: u16 = 337;
375        pub const SMSG_BREAK_TARGET: u16 = 338;
376        pub const CMSG_SAVE_PLAYER: u32 = 339;
377        pub const CMSG_SETDEATHBINDPOINT: u32 = 340;
378        pub const SMSG_BINDPOINTUPDATE: u16 = 341;
379        pub const CMSG_GETDEATHBINDZONE: u32 = 342;
380        pub const SMSG_BINDZONEREPLY: u16 = 343;
381        pub const SMSG_PLAYERBOUND: u16 = 344;
382        pub const SMSG_CLIENT_CONTROL_UPDATE: u16 = 345;
383        pub const CMSG_REPOP_REQUEST: u32 = 346;
384        pub const SMSG_RESURRECT_REQUEST: u16 = 347;
385        pub const CMSG_RESURRECT_RESPONSE: u32 = 348;
386        pub const CMSG_LOOT: u32 = 349;
387        pub const CMSG_LOOT_MONEY: u32 = 350;
388        pub const CMSG_LOOT_RELEASE: u32 = 351;
389        pub const SMSG_LOOT_RESPONSE: u16 = 352;
390        pub const SMSG_LOOT_RELEASE_RESPONSE: u16 = 353;
391        pub const SMSG_LOOT_REMOVED: u16 = 354;
392        pub const SMSG_LOOT_MONEY_NOTIFY: u16 = 355;
393        pub const SMSG_LOOT_ITEM_NOTIFY: u16 = 356;
394        pub const SMSG_LOOT_CLEAR_MONEY: u16 = 357;
395        pub const SMSG_ITEM_PUSH_RESULT: u16 = 358;
396        pub const SMSG_DUEL_REQUESTED: u16 = 359;
397        pub const SMSG_DUEL_OUTOFBOUNDS: u16 = 360;
398        pub const SMSG_DUEL_INBOUNDS: u16 = 361;
399        pub const SMSG_DUEL_COMPLETE: u16 = 362;
400        pub const SMSG_DUEL_WINNER: u16 = 363;
401        pub const CMSG_DUEL_ACCEPTED: u32 = 364;
402        pub const CMSG_DUEL_CANCELLED: u32 = 365;
403        pub const SMSG_MOUNTRESULT: u16 = 366;
404        pub const SMSG_DISMOUNTRESULT: u16 = 367;
405        pub const SMSG_REMOVED_FROM_PVP_QUEUE: u16 = 368;
406        pub const CMSG_MOUNTSPECIAL_ANIM: u32 = 369;
407        pub const SMSG_MOUNTSPECIAL_ANIM: u16 = 370;
408        pub const SMSG_PET_TAME_FAILURE: u16 = 371;
409        pub const CMSG_PET_SET_ACTION: u32 = 372;
410        pub const CMSG_PET_ACTION: u32 = 373;
411        pub const CMSG_PET_ABANDON: u32 = 374;
412        pub const CMSG_PET_RENAME: u32 = 375;
413        pub const SMSG_PET_NAME_INVALID: u16 = 376;
414        pub const SMSG_PET_SPELLS: u16 = 377;
415        pub const SMSG_PET_MODE: u16 = 378;
416        pub const CMSG_GOSSIP_HELLO: u32 = 379;
417        pub const CMSG_GOSSIP_SELECT_OPTION: u32 = 380;
418        pub const SMSG_GOSSIP_MESSAGE: u16 = 381;
419        pub const SMSG_GOSSIP_COMPLETE: u16 = 382;
420        pub const CMSG_NPC_TEXT_QUERY: u32 = 383;
421        pub const SMSG_NPC_TEXT_UPDATE: u16 = 384;
422        pub const SMSG_NPC_WONT_TALK: u16 = 385;
423        pub const CMSG_QUESTGIVER_STATUS_QUERY: u32 = 386;
424        pub const SMSG_QUESTGIVER_STATUS: u16 = 387;
425        pub const CMSG_QUESTGIVER_HELLO: u32 = 388;
426        pub const SMSG_QUESTGIVER_QUEST_LIST: u16 = 389;
427        pub const CMSG_QUESTGIVER_QUERY_QUEST: u32 = 390;
428        pub const CMSG_QUESTGIVER_QUEST_AUTOLAUNCH: u32 = 391;
429        pub const SMSG_QUESTGIVER_QUEST_DETAILS: u16 = 392;
430        pub const CMSG_QUESTGIVER_ACCEPT_QUEST: u32 = 393;
431        pub const CMSG_QUESTGIVER_COMPLETE_QUEST: u32 = 394;
432        pub const SMSG_QUESTGIVER_REQUEST_ITEMS: u16 = 395;
433        pub const CMSG_QUESTGIVER_REQUEST_REWARD: u32 = 396;
434        pub const SMSG_QUESTGIVER_OFFER_REWARD: u16 = 397;
435        pub const CMSG_QUESTGIVER_CHOOSE_REWARD: u32 = 398;
436        pub const SMSG_QUESTGIVER_QUEST_INVALID: u16 = 399;
437        pub const CMSG_QUESTGIVER_CANCEL: u32 = 400;
438        pub const SMSG_QUESTGIVER_QUEST_COMPLETE: u16 = 401;
439        pub const SMSG_QUESTGIVER_QUEST_FAILED: u16 = 402;
440        pub const CMSG_QUESTLOG_SWAP_QUEST: u32 = 403;
441        pub const CMSG_QUESTLOG_REMOVE_QUEST: u32 = 404;
442        pub const SMSG_QUESTLOG_FULL: u16 = 405;
443        pub const SMSG_QUESTUPDATE_FAILED: u16 = 406;
444        pub const SMSG_QUESTUPDATE_FAILEDTIMER: u16 = 407;
445        pub const SMSG_QUESTUPDATE_COMPLETE: u16 = 408;
446        pub const SMSG_QUESTUPDATE_ADD_KILL: u16 = 409;
447        pub const SMSG_QUESTUPDATE_ADD_ITEM_OBSOLETE: u16 = 410;
448        pub const CMSG_QUEST_CONFIRM_ACCEPT: u32 = 411;
449        pub const SMSG_QUEST_CONFIRM_ACCEPT: u16 = 412;
450        pub const CMSG_PUSHQUESTTOPARTY: u32 = 413;
451        pub const CMSG_LIST_INVENTORY: u32 = 414;
452        pub const SMSG_LIST_INVENTORY: u16 = 415;
453        pub const CMSG_SELL_ITEM: u32 = 416;
454        pub const SMSG_SELL_ITEM: u16 = 417;
455        pub const CMSG_BUY_ITEM: u32 = 418;
456        pub const CMSG_BUY_ITEM_IN_SLOT: u32 = 419;
457        pub const SMSG_BUY_ITEM: u16 = 420;
458        pub const SMSG_BUY_FAILED: u16 = 421;
459        pub const CMSG_TAXICLEARALLNODES: u32 = 422;
460        pub const CMSG_TAXIENABLEALLNODES: u32 = 423;
461        pub const CMSG_TAXISHOWNODES: u32 = 424;
462        pub const SMSG_SHOWTAXINODES: u16 = 425;
463        pub const CMSG_TAXINODE_STATUS_QUERY: u32 = 426;
464        pub const SMSG_TAXINODE_STATUS: u16 = 427;
465        pub const CMSG_TAXIQUERYAVAILABLENODES: u32 = 428;
466        pub const CMSG_ACTIVATETAXI: u32 = 429;
467        pub const SMSG_ACTIVATETAXIREPLY: u16 = 430;
468        pub const SMSG_NEW_TAXI_PATH: u16 = 431;
469        pub const CMSG_TRAINER_LIST: u32 = 432;
470        pub const SMSG_TRAINER_LIST: u16 = 433;
471        pub const CMSG_TRAINER_BUY_SPELL: u32 = 434;
472        pub const SMSG_TRAINER_BUY_SUCCEEDED: u16 = 435;
473        pub const SMSG_TRAINER_BUY_FAILED: u16 = 436;
474        pub const CMSG_BINDER_ACTIVATE: u32 = 437;
475        pub const SMSG_PLAYERBINDERROR: u16 = 438;
476        pub const CMSG_BANKER_ACTIVATE: u32 = 439;
477        pub const SMSG_SHOW_BANK: u16 = 440;
478        pub const CMSG_BUY_BANK_SLOT: u32 = 441;
479        pub const SMSG_BUY_BANK_SLOT_RESULT: u16 = 442;
480        pub const CMSG_PETITION_SHOWLIST: u32 = 443;
481        pub const SMSG_PETITION_SHOWLIST: u16 = 444;
482        pub const CMSG_PETITION_BUY: u32 = 445;
483        pub const CMSG_PETITION_SHOW_SIGNATURES: u32 = 446;
484        pub const SMSG_PETITION_SHOW_SIGNATURES: u16 = 447;
485        pub const CMSG_PETITION_SIGN: u32 = 448;
486        pub const SMSG_PETITION_SIGN_RESULTS: u16 = 449;
487        pub const MSG_PETITION_DECLINE: u16 = 450;
488        pub const CMSG_OFFER_PETITION: u32 = 451;
489        pub const CMSG_TURN_IN_PETITION: u32 = 452;
490        pub const SMSG_TURN_IN_PETITION_RESULTS: u16 = 453;
491        pub const CMSG_PETITION_QUERY: u32 = 454;
492        pub const SMSG_PETITION_QUERY_RESPONSE: u16 = 455;
493        pub const SMSG_FISH_NOT_HOOKED: u16 = 456;
494        pub const SMSG_FISH_ESCAPED: u16 = 457;
495        pub const CMSG_BUG: u32 = 458;
496        pub const SMSG_NOTIFICATION: u16 = 459;
497        pub const CMSG_PLAYED_TIME: u32 = 460;
498        pub const SMSG_PLAYED_TIME: u16 = 461;
499        pub const CMSG_QUERY_TIME: u32 = 462;
500        pub const SMSG_QUERY_TIME_RESPONSE: u16 = 463;
501        pub const SMSG_LOG_XPGAIN: u16 = 464;
502        pub const SMSG_AURACASTLOG: u16 = 465;
503        pub const CMSG_RECLAIM_CORPSE: u32 = 466;
504        pub const CMSG_WRAP_ITEM: u32 = 467;
505        pub const SMSG_LEVELUP_INFO: u16 = 468;
506        pub const MSG_MINIMAP_PING: u16 = 469;
507        pub const SMSG_RESISTLOG: u16 = 470;
508        pub const SMSG_ENCHANTMENTLOG: u16 = 471;
509        pub const CMSG_SET_SKILL_CHEAT: u32 = 472;
510        pub const SMSG_START_MIRROR_TIMER: u16 = 473;
511        pub const SMSG_PAUSE_MIRROR_TIMER: u16 = 474;
512        pub const SMSG_STOP_MIRROR_TIMER: u16 = 475;
513        pub const CMSG_PING: u32 = 476;
514        pub const SMSG_PONG: u16 = 477;
515        pub const SMSG_CLEAR_COOLDOWN: u16 = 478;
516        pub const SMSG_GAMEOBJECT_PAGETEXT: u16 = 479;
517        pub const CMSG_SETSHEATHED: u32 = 480;
518        pub const SMSG_COOLDOWN_CHEAT: u16 = 481;
519        pub const SMSG_SPELL_DELAYED: u16 = 482;
520        pub const CMSG_QUEST_POI_QUERY: u32 = 483;
521        pub const SMSG_QUEST_POI_QUERY_RESPONSE: u16 = 484;
522        pub const CMSG_GHOST: u32 = 485;
523        pub const CMSG_GM_INVIS: u32 = 486;
524        pub const SMSG_INVALID_PROMOTION_CODE: u16 = 487;
525        pub const MSG_GM_BIND_OTHER: u16 = 488;
526        pub const MSG_GM_SUMMON: u16 = 489;
527        pub const SMSG_ITEM_TIME_UPDATE: u16 = 490;
528        pub const SMSG_ITEM_ENCHANT_TIME_UPDATE: u16 = 491;
529        pub const SMSG_AUTH_CHALLENGE: u16 = 492;
530        pub const CMSG_AUTH_SESSION: u32 = 493;
531        pub const SMSG_AUTH_RESPONSE: u16 = 494;
532        pub const MSG_GM_SHOWLABEL: u16 = 495;
533        pub const CMSG_PET_CAST_SPELL: u32 = 496;
534        pub const MSG_SAVE_GUILD_EMBLEM: u16 = 497;
535        pub const MSG_TABARDVENDOR_ACTIVATE: u16 = 498;
536        pub const SMSG_PLAY_SPELL_VISUAL: u16 = 499;
537        pub const CMSG_ZONEUPDATE: u32 = 500;
538        pub const SMSG_PARTYKILLLOG: u16 = 501;
539        pub const SMSG_COMPRESSED_UPDATE_OBJECT: u16 = 502;
540        pub const SMSG_PLAY_SPELL_IMPACT: u16 = 503;
541        pub const SMSG_EXPLORATION_EXPERIENCE: u16 = 504;
542        pub const CMSG_GM_SET_SECURITY_GROUP: u32 = 505;
543        pub const CMSG_GM_NUKE: u32 = 506;
544        pub const MSG_RANDOM_ROLL: u16 = 507;
545        pub const SMSG_ENVIRONMENTALDAMAGELOG: u16 = 508;
546        pub const CMSG_CHANGEPLAYER_DIFFICULTY: u32 = 509;
547        pub const SMSG_RWHOIS: u16 = 510;
548        pub const SMSG_LFG_PLAYER_REWARD: u16 = 511;
549        pub const SMSG_LFG_TELEPORT_DENIED: u16 = 512;
550        pub const CMSG_UNLEARN_SPELL: u32 = 513;
551        pub const CMSG_UNLEARN_SKILL: u32 = 514;
552        pub const SMSG_REMOVED_SPELL: u16 = 515;
553        pub const CMSG_DECHARGE: u32 = 516;
554        pub const CMSG_GMTICKET_CREATE: u32 = 517;
555        pub const SMSG_GMTICKET_CREATE: u16 = 518;
556        pub const CMSG_GMTICKET_UPDATETEXT: u32 = 519;
557        pub const SMSG_GMTICKET_UPDATETEXT: u16 = 520;
558        pub const SMSG_ACCOUNT_DATA_TIMES: u16 = 521;
559        pub const CMSG_REQUEST_ACCOUNT_DATA: u32 = 522;
560        pub const CMSG_UPDATE_ACCOUNT_DATA: u32 = 523;
561        pub const SMSG_UPDATE_ACCOUNT_DATA: u16 = 524;
562        pub const SMSG_CLEAR_FAR_SIGHT_IMMEDIATE: u16 = 525;
563        pub const SMSG_CHANGE_PLAYER_DIFFICULTY_RESULT: u16 = 526;
564        pub const CMSG_GM_TEACH: u32 = 527;
565        pub const CMSG_GM_CREATE_ITEM_TARGET: u32 = 528;
566        pub const CMSG_GMTICKET_GETTICKET: u32 = 529;
567        pub const SMSG_GMTICKET_GETTICKET: u16 = 530;
568        pub const CMSG_UNLEARN_TALENTS: u32 = 531;
569        pub const SMSG_INSTANCE_ENCOUNTER: u16 = 532;
570        pub const SMSG_GAMEOBJECT_DESPAWN_ANIM: u16 = 533;
571        pub const MSG_CORPSE_QUERY: u16 = 534;
572        pub const CMSG_GMTICKET_DELETETICKET: u32 = 535;
573        pub const SMSG_GMTICKET_DELETETICKET: u16 = 536;
574        pub const SMSG_CHAT_WRONG_FACTION: u16 = 537;
575        pub const CMSG_GMTICKET_SYSTEMSTATUS: u32 = 538;
576        pub const SMSG_GMTICKET_SYSTEMSTATUS: u16 = 539;
577        pub const CMSG_SPIRIT_HEALER_ACTIVATE: u32 = 540;
578        pub const CMSG_SET_STAT_CHEAT: u32 = 541;
579        pub const SMSG_QUEST_FORCE_REMOVED: u16 = 542;
580        pub const CMSG_SKILL_BUY_STEP: u32 = 543;
581        pub const CMSG_SKILL_BUY_RANK: u32 = 544;
582        pub const CMSG_XP_CHEAT: u32 = 545;
583        pub const SMSG_SPIRIT_HEALER_CONFIRM: u16 = 546;
584        pub const CMSG_CHARACTER_POINT_CHEAT: u32 = 547;
585        pub const SMSG_GOSSIP_POI: u16 = 548;
586        pub const CMSG_CHAT_IGNORED: u32 = 549;
587        pub const CMSG_GM_VISION: u32 = 550;
588        pub const CMSG_SERVER_COMMAND: u32 = 551;
589        pub const CMSG_GM_SILENCE: u32 = 552;
590        pub const CMSG_GM_REVEALTO: u32 = 553;
591        pub const CMSG_GM_RESURRECT: u32 = 554;
592        pub const CMSG_GM_SUMMONMOB: u32 = 555;
593        pub const CMSG_GM_MOVECORPSE: u32 = 556;
594        pub const CMSG_GM_FREEZE: u32 = 557;
595        pub const CMSG_GM_UBERINVIS: u32 = 558;
596        pub const CMSG_GM_REQUEST_PLAYER_INFO: u32 = 559;
597        pub const SMSG_GM_PLAYER_INFO: u16 = 560;
598        pub const CMSG_GUILD_RANK: u32 = 561;
599        pub const CMSG_GUILD_ADD_RANK: u32 = 562;
600        pub const CMSG_GUILD_DEL_RANK: u32 = 563;
601        pub const CMSG_GUILD_SET_PUBLIC_NOTE: u32 = 564;
602        pub const CMSG_GUILD_SET_OFFICER_NOTE: u32 = 565;
603        pub const SMSG_LOGIN_VERIFY_WORLD: u16 = 566;
604        pub const CMSG_CLEAR_EXPLORATION: u32 = 567;
605        pub const CMSG_SEND_MAIL: u32 = 568;
606        pub const SMSG_SEND_MAIL_RESULT: u16 = 569;
607        pub const CMSG_GET_MAIL_LIST: u32 = 570;
608        pub const SMSG_MAIL_LIST_RESULT: u16 = 571;
609        pub const CMSG_BATTLEFIELD_LIST: u32 = 572;
610        pub const SMSG_BATTLEFIELD_LIST: u16 = 573;
611        pub const CMSG_BATTLEFIELD_JOIN: u32 = 574;
612        pub const SMSG_FORCE_SET_VEHICLE_REC_ID: u16 = 575;
613        pub const CMSG_SET_VEHICLE_REC_ID_ACK: u32 = 576;
614        pub const CMSG_TAXICLEARNODE: u32 = 577;
615        pub const CMSG_TAXIENABLENODE: u32 = 578;
616        pub const CMSG_ITEM_TEXT_QUERY: u32 = 579;
617        pub const SMSG_ITEM_TEXT_QUERY_RESPONSE: u16 = 580;
618        pub const CMSG_MAIL_TAKE_MONEY: u32 = 581;
619        pub const CMSG_MAIL_TAKE_ITEM: u32 = 582;
620        pub const CMSG_MAIL_MARK_AS_READ: u32 = 583;
621        pub const CMSG_MAIL_RETURN_TO_SENDER: u32 = 584;
622        pub const CMSG_MAIL_DELETE: u32 = 585;
623        pub const CMSG_MAIL_CREATE_TEXT_ITEM: u32 = 586;
624        pub const SMSG_SPELLLOGMISS: u16 = 587;
625        pub const SMSG_SPELLLOGEXECUTE: u16 = 588;
626        pub const SMSG_DEBUGAURAPROC: u16 = 589;
627        pub const SMSG_PERIODICAURALOG: u16 = 590;
628        pub const SMSG_SPELLDAMAGESHIELD: u16 = 591;
629        pub const SMSG_SPELLNONMELEEDAMAGELOG: u16 = 592;
630        pub const CMSG_LEARN_TALENT: u32 = 593;
631        pub const SMSG_RESURRECT_FAILED: u16 = 594;
632        pub const CMSG_TOGGLE_PVP: u32 = 595;
633        pub const SMSG_ZONE_UNDER_ATTACK: u16 = 596;
634        pub const MSG_AUCTION_HELLO: u16 = 597;
635        pub const CMSG_AUCTION_SELL_ITEM: u32 = 598;
636        pub const CMSG_AUCTION_REMOVE_ITEM: u32 = 599;
637        pub const CMSG_AUCTION_LIST_ITEMS: u32 = 600;
638        pub const CMSG_AUCTION_LIST_OWNER_ITEMS: u32 = 601;
639        pub const CMSG_AUCTION_PLACE_BID: u32 = 602;
640        pub const SMSG_AUCTION_COMMAND_RESULT: u16 = 603;
641        pub const SMSG_AUCTION_LIST_RESULT: u16 = 604;
642        pub const SMSG_AUCTION_OWNER_LIST_RESULT: u16 = 605;
643        pub const SMSG_AUCTION_BIDDER_NOTIFICATION: u16 = 606;
644        pub const SMSG_AUCTION_OWNER_NOTIFICATION: u16 = 607;
645        pub const SMSG_PROCRESIST: u16 = 608;
646        pub const SMSG_COMBAT_EVENT_FAILED: u16 = 609;
647        pub const SMSG_DISPEL_FAILED: u16 = 610;
648        pub const SMSG_SPELLORDAMAGE_IMMUNE: u16 = 611;
649        pub const CMSG_AUCTION_LIST_BIDDER_ITEMS: u32 = 612;
650        pub const SMSG_AUCTION_BIDDER_LIST_RESULT: u16 = 613;
651        pub const SMSG_SET_FLAT_SPELL_MODIFIER: u16 = 614;
652        pub const SMSG_SET_PCT_SPELL_MODIFIER: u16 = 615;
653        pub const CMSG_SET_AMMO: u32 = 616;
654        pub const SMSG_CORPSE_RECLAIM_DELAY: u16 = 617;
655        pub const CMSG_SET_ACTIVE_MOVER: u32 = 618;
656        pub const CMSG_PET_CANCEL_AURA: u32 = 619;
657        pub const CMSG_PLAYER_AI_CHEAT: u32 = 620;
658        pub const CMSG_CANCEL_AUTO_REPEAT_SPELL: u32 = 621;
659        pub const MSG_GM_ACCOUNT_ONLINE: u16 = 622;
660        pub const MSG_LIST_STABLED_PETS: u16 = 623;
661        pub const CMSG_STABLE_PET: u32 = 624;
662        pub const CMSG_UNSTABLE_PET: u32 = 625;
663        pub const CMSG_BUY_STABLE_SLOT: u32 = 626;
664        pub const SMSG_STABLE_RESULT: u16 = 627;
665        pub const CMSG_STABLE_REVIVE_PET: u32 = 628;
666        pub const CMSG_STABLE_SWAP_PET: u32 = 629;
667        pub const MSG_QUEST_PUSH_RESULT: u16 = 630;
668        pub const SMSG_PLAY_MUSIC: u16 = 631;
669        pub const SMSG_PLAY_OBJECT_SOUND: u16 = 632;
670        pub const CMSG_REQUEST_PET_INFO: u32 = 633;
671        pub const CMSG_FAR_SIGHT: u32 = 634;
672        pub const SMSG_SPELLDISPELLOG: u16 = 635;
673        pub const SMSG_DAMAGE_CALC_LOG: u16 = 636;
674        pub const CMSG_ENABLE_DAMAGE_LOG: u32 = 637;
675        pub const CMSG_GROUP_CHANGE_SUB_GROUP: u32 = 638;
676        pub const CMSG_REQUEST_PARTY_MEMBER_STATS: u32 = 639;
677        pub const CMSG_GROUP_SWAP_SUB_GROUP: u32 = 640;
678        pub const CMSG_RESET_FACTION_CHEAT: u32 = 641;
679        pub const CMSG_AUTOSTORE_BANK_ITEM: u32 = 642;
680        pub const CMSG_AUTOBANK_ITEM: u32 = 643;
681        pub const MSG_QUERY_NEXT_MAIL_TIME: u16 = 644;
682        pub const SMSG_RECEIVED_MAIL: u16 = 645;
683        pub const SMSG_RAID_GROUP_ONLY: u16 = 646;
684        pub const CMSG_SET_DURABILITY_CHEAT: u32 = 647;
685        pub const CMSG_SET_PVP_RANK_CHEAT: u32 = 648;
686        pub const CMSG_ADD_PVP_MEDAL_CHEAT: u32 = 649;
687        pub const CMSG_DEL_PVP_MEDAL_CHEAT: u32 = 650;
688        pub const CMSG_SET_PVP_TITLE: u32 = 651;
689        pub const SMSG_PVP_CREDIT: u16 = 652;
690        pub const SMSG_AUCTION_REMOVED_NOTIFICATION: u16 = 653;
691        pub const CMSG_GROUP_RAID_CONVERT: u32 = 654;
692        pub const CMSG_GROUP_ASSISTANT_LEADER: u32 = 655;
693        pub const CMSG_BUYBACK_ITEM: u32 = 656;
694        pub const SMSG_SERVER_MESSAGE: u16 = 657;
695        pub const CMSG_SET_SAVED_INSTANCE_EXTEND: u32 = 658;
696        pub const SMSG_LFG_OFFER_CONTINUE: u16 = 659;
697        pub const CMSG_TEST_DROP_RATE: u32 = 660;
698        pub const SMSG_TEST_DROP_RATE_RESULT: u16 = 661;
699        pub const CMSG_LFG_GET_STATUS: u32 = 662;
700        pub const SMSG_SHOW_MAILBOX: u16 = 663;
701        pub const SMSG_RESET_RANGED_COMBAT_TIMER: u16 = 664;
702        pub const SMSG_CHAT_NOT_IN_PARTY: u16 = 665;
703        pub const CMSG_GMTICKETSYSTEM_TOGGLE: u32 = 666;
704        pub const CMSG_CANCEL_GROWTH_AURA: u32 = 667;
705        pub const SMSG_CANCEL_AUTO_REPEAT: u16 = 668;
706        pub const SMSG_STANDSTATE_UPDATE: u16 = 669;
707        pub const SMSG_LOOT_ALL_PASSED: u16 = 670;
708        pub const SMSG_LOOT_ROLL_WON: u16 = 671;
709        pub const CMSG_LOOT_ROLL: u32 = 672;
710        pub const SMSG_LOOT_START_ROLL: u16 = 673;
711        pub const SMSG_LOOT_ROLL: u16 = 674;
712        pub const CMSG_LOOT_MASTER_GIVE: u32 = 675;
713        pub const SMSG_LOOT_MASTER_LIST: u16 = 676;
714        pub const SMSG_SET_FORCED_REACTIONS: u16 = 677;
715        pub const SMSG_SPELL_FAILED_OTHER: u16 = 678;
716        pub const SMSG_GAMEOBJECT_RESET_STATE: u16 = 679;
717        pub const CMSG_REPAIR_ITEM: u32 = 680;
718        pub const SMSG_CHAT_PLAYER_NOT_FOUND: u16 = 681;
719        pub const MSG_TALENT_WIPE_CONFIRM: u16 = 682;
720        pub const SMSG_SUMMON_REQUEST: u16 = 683;
721        pub const CMSG_SUMMON_RESPONSE: u32 = 684;
722        pub const MSG_DEV_SHOWLABEL: u16 = 685;
723        pub const SMSG_MONSTER_MOVE_TRANSPORT: u16 = 686;
724        pub const SMSG_PET_BROKEN: u16 = 687;
725        pub const MSG_MOVE_FEATHER_FALL: u16 = 688;
726        pub const MSG_MOVE_WATER_WALK: u16 = 689;
727        pub const CMSG_SERVER_BROADCAST: u32 = 690;
728        pub const CMSG_SELF_RES: u32 = 691;
729        pub const SMSG_FEIGN_DEATH_RESISTED: u16 = 692;
730        pub const CMSG_RUN_SCRIPT: u32 = 693;
731        pub const SMSG_SCRIPT_MESSAGE: u16 = 694;
732        pub const SMSG_DUEL_COUNTDOWN: u16 = 695;
733        pub const SMSG_AREA_TRIGGER_MESSAGE: u16 = 696;
734        pub const CMSG_SHOWING_HELM: u32 = 697;
735        pub const CMSG_SHOWING_CLOAK: u32 = 698;
736        pub const SMSG_ROLE_CHOSEN: u16 = 699;
737        pub const SMSG_PLAYER_SKINNED: u16 = 700;
738        pub const SMSG_DURABILITY_DAMAGE_DEATH: u16 = 701;
739        pub const CMSG_SET_EXPLORATION: u32 = 702;
740        pub const CMSG_SET_ACTIONBAR_TOGGLES: u32 = 703;
741        pub const MSG_DELETE_GUILD_CHARTER: u16 = 704;
742        pub const MSG_PETITION_RENAME: u16 = 705;
743        pub const SMSG_INIT_WORLD_STATES: u16 = 706;
744        pub const SMSG_UPDATE_WORLD_STATE: u16 = 707;
745        pub const CMSG_ITEM_NAME_QUERY: u32 = 708;
746        pub const SMSG_ITEM_NAME_QUERY_RESPONSE: u16 = 709;
747        pub const SMSG_PET_ACTION_FEEDBACK: u16 = 710;
748        pub const CMSG_CHAR_RENAME: u32 = 711;
749        pub const SMSG_CHAR_RENAME: u16 = 712;
750        pub const CMSG_MOVE_SPLINE_DONE: u32 = 713;
751        pub const CMSG_MOVE_FALL_RESET: u32 = 714;
752        pub const SMSG_INSTANCE_SAVE_CREATED: u16 = 715;
753        pub const SMSG_RAID_INSTANCE_INFO: u16 = 716;
754        pub const CMSG_REQUEST_RAID_INFO: u32 = 717;
755        pub const CMSG_MOVE_TIME_SKIPPED: u32 = 718;
756        pub const CMSG_MOVE_FEATHER_FALL_ACK: u32 = 719;
757        pub const CMSG_MOVE_WATER_WALK_ACK: u32 = 720;
758        pub const CMSG_MOVE_NOT_ACTIVE_MOVER: u32 = 721;
759        pub const SMSG_PLAY_SOUND: u16 = 722;
760        pub const CMSG_BATTLEFIELD_STATUS: u32 = 723;
761        pub const SMSG_BATTLEFIELD_STATUS: u16 = 724;
762        pub const CMSG_BATTLEFIELD_PORT: u32 = 725;
763        pub const MSG_INSPECT_HONOR_STATS: u16 = 726;
764        pub const CMSG_BATTLEMASTER_HELLO: u32 = 727;
765        pub const CMSG_MOVE_START_SWIM_CHEAT: u32 = 728;
766        pub const CMSG_MOVE_STOP_SWIM_CHEAT: u32 = 729;
767        pub const SMSG_FORCE_WALK_SPEED_CHANGE: u16 = 730;
768        pub const CMSG_FORCE_WALK_SPEED_CHANGE_ACK: u32 = 731;
769        pub const SMSG_FORCE_SWIM_BACK_SPEED_CHANGE: u16 = 732;
770        pub const CMSG_FORCE_SWIM_BACK_SPEED_CHANGE_ACK: u32 = 733;
771        pub const SMSG_FORCE_TURN_RATE_CHANGE: u16 = 734;
772        pub const CMSG_FORCE_TURN_RATE_CHANGE_ACK: u32 = 735;
773        pub const MSG_PVP_LOG_DATA: u16 = 736;
774        pub const CMSG_LEAVE_BATTLEFIELD: u32 = 737;
775        pub const CMSG_AREA_SPIRIT_HEALER_QUERY: u32 = 738;
776        pub const CMSG_AREA_SPIRIT_HEALER_QUEUE: u32 = 739;
777        pub const SMSG_AREA_SPIRIT_HEALER_TIME: u16 = 740;
778        pub const CMSG_GM_UNTEACH: u32 = 741;
779        pub const SMSG_WARDEN_DATA: u16 = 742;
780        pub const CMSG_WARDEN_DATA: u32 = 743;
781        pub const SMSG_GROUP_JOINED_BATTLEGROUND: u16 = 744;
782        pub const MSG_BATTLEGROUND_PLAYER_POSITIONS: u16 = 745;
783        pub const CMSG_PET_STOP_ATTACK: u32 = 746;
784        pub const SMSG_BINDER_CONFIRM: u16 = 747;
785        pub const SMSG_BATTLEGROUND_PLAYER_JOINED: u16 = 748;
786        pub const SMSG_BATTLEGROUND_PLAYER_LEFT: u16 = 749;
787        pub const CMSG_BATTLEMASTER_JOIN: u32 = 750;
788        pub const SMSG_ADDON_INFO: u16 = 751;
789        pub const CMSG_PET_UNLEARN: u32 = 752;
790        pub const SMSG_PET_UNLEARN_CONFIRM: u16 = 753;
791        pub const SMSG_PARTY_MEMBER_STATS_FULL: u16 = 754;
792        pub const CMSG_PET_SPELL_AUTOCAST: u32 = 755;
793        pub const SMSG_WEATHER: u16 = 756;
794        pub const SMSG_PLAY_TIME_WARNING: u16 = 757;
795        pub const SMSG_MINIGAME_SETUP: u16 = 758;
796        pub const SMSG_MINIGAME_STATE: u16 = 759;
797        pub const CMSG_MINIGAME_MOVE: u32 = 760;
798        pub const SMSG_MINIGAME_MOVE_FAILED: u16 = 761;
799        pub const SMSG_RAID_INSTANCE_MESSAGE: u16 = 762;
800        pub const SMSG_COMPRESSED_MOVES: u16 = 763;
801        pub const CMSG_GUILD_INFO_TEXT: u32 = 764;
802        pub const SMSG_CHAT_RESTRICTED: u16 = 765;
803        pub const SMSG_SPLINE_SET_RUN_SPEED: u16 = 766;
804        pub const SMSG_SPLINE_SET_RUN_BACK_SPEED: u16 = 767;
805        pub const SMSG_SPLINE_SET_SWIM_SPEED: u16 = 768;
806        pub const SMSG_SPLINE_SET_WALK_SPEED: u16 = 769;
807        pub const SMSG_SPLINE_SET_SWIM_BACK_SPEED: u16 = 770;
808        pub const SMSG_SPLINE_SET_TURN_RATE: u16 = 771;
809        pub const SMSG_SPLINE_MOVE_UNROOT: u16 = 772;
810        pub const SMSG_SPLINE_MOVE_FEATHER_FALL: u16 = 773;
811        pub const SMSG_SPLINE_MOVE_NORMAL_FALL: u16 = 774;
812        pub const SMSG_SPLINE_MOVE_SET_HOVER: u16 = 775;
813        pub const SMSG_SPLINE_MOVE_UNSET_HOVER: u16 = 776;
814        pub const SMSG_SPLINE_MOVE_WATER_WALK: u16 = 777;
815        pub const SMSG_SPLINE_MOVE_LAND_WALK: u16 = 778;
816        pub const SMSG_SPLINE_MOVE_START_SWIM: u16 = 779;
817        pub const SMSG_SPLINE_MOVE_STOP_SWIM: u16 = 780;
818        pub const SMSG_SPLINE_MOVE_SET_RUN_MODE: u16 = 781;
819        pub const SMSG_SPLINE_MOVE_SET_WALK_MODE: u16 = 782;
820        pub const CMSG_GM_NUKE_ACCOUNT: u32 = 783;
821        pub const MSG_GM_DESTROY_CORPSE: u16 = 784;
822        pub const CMSG_GM_DESTROY_ONLINE_CORPSE: u32 = 785;
823        pub const CMSG_ACTIVATETAXIEXPRESS: u32 = 786;
824        pub const SMSG_SET_FACTION_ATWAR: u16 = 787;
825        pub const SMSG_GAMETIMEBIAS_SET: u16 = 788;
826        pub const CMSG_DEBUG_ACTIONS_START: u32 = 789;
827        pub const CMSG_DEBUG_ACTIONS_STOP: u32 = 790;
828        pub const CMSG_SET_FACTION_INACTIVE: u32 = 791;
829        pub const CMSG_SET_WATCHED_FACTION: u32 = 792;
830        pub const MSG_MOVE_TIME_SKIPPED: u16 = 793;
831        pub const SMSG_SPLINE_MOVE_ROOT: u16 = 794;
832        pub const CMSG_SET_EXPLORATION_ALL: u32 = 795;
833        pub const SMSG_INVALIDATE_PLAYER: u16 = 796;
834        pub const CMSG_RESET_INSTANCES: u32 = 797;
835        pub const SMSG_INSTANCE_RESET: u16 = 798;
836        pub const SMSG_INSTANCE_RESET_FAILED: u16 = 799;
837        pub const SMSG_UPDATE_LAST_INSTANCE: u16 = 800;
838        pub const MSG_RAID_TARGET_UPDATE: u16 = 801;
839        pub const MSG_RAID_READY_CHECK: u16 = 802;
840        pub const CMSG_LUA_USAGE: u32 = 803;
841        pub const SMSG_PET_ACTION_SOUND: u16 = 804;
842        pub const SMSG_PET_DISMISS_SOUND: u16 = 805;
843        pub const SMSG_GHOSTEE_GONE: u16 = 806;
844        pub const CMSG_GM_UPDATE_TICKET_STATUS: u32 = 807;
845        pub const SMSG_GM_TICKET_STATUS_UPDATE: u16 = 808;
846        pub const MSG_SET_DUNGEON_DIFFICULTY: u16 = 809;
847        pub const CMSG_GMSURVEY_SUBMIT: u32 = 810;
848        pub const SMSG_UPDATE_INSTANCE_OWNERSHIP: u16 = 811;
849        pub const CMSG_IGNORE_KNOCKBACK_CHEAT: u32 = 812;
850        pub const SMSG_CHAT_PLAYER_AMBIGUOUS: u16 = 813;
851        pub const MSG_DELAY_GHOST_TELEPORT: u16 = 814;
852        pub const SMSG_SPELLINSTAKILLLOG: u16 = 815;
853        pub const SMSG_SPELL_UPDATE_CHAIN_TARGETS: u16 = 816;
854        pub const CMSG_CHAT_FILTERED: u32 = 817;
855        pub const SMSG_EXPECTED_SPAM_RECORDS: u16 = 818;
856        pub const SMSG_SPELLSTEALLOG: u16 = 819;
857        pub const CMSG_LOTTERY_QUERY_OBSOLETE: u32 = 820;
858        pub const SMSG_LOTTERY_QUERY_RESULT_OBSOLETE: u16 = 821;
859        pub const CMSG_BUY_LOTTERY_TICKET_OBSOLETE: u32 = 822;
860        pub const SMSG_LOTTERY_RESULT_OBSOLETE: u16 = 823;
861        pub const SMSG_CHARACTER_PROFILE: u16 = 824;
862        pub const SMSG_CHARACTER_PROFILE_REALM_CONNECTED: u16 = 825;
863        pub const SMSG_DEFENSE_MESSAGE: u16 = 826;
864        pub const SMSG_INSTANCE_DIFFICULTY: u16 = 827;
865        pub const MSG_GM_RESETINSTANCELIMIT: u16 = 828;
866        pub const SMSG_MOTD: u16 = 829;
867        pub const SMSG_MOVE_SET_CAN_TRANSITION_BETWEEN_SWIM_AND_FLY: u16 = 830;
868        pub const SMSG_MOVE_UNSET_CAN_TRANSITION_BETWEEN_SWIM_AND_FLY: u16 = 831;
869        pub const CMSG_MOVE_SET_CAN_TRANSITION_BETWEEN_SWIM_AND_FLY_ACK: u32 = 832;
870        pub const MSG_MOVE_START_SWIM_CHEAT: u16 = 833;
871        pub const MSG_MOVE_STOP_SWIM_CHEAT: u16 = 834;
872        pub const SMSG_MOVE_SET_CAN_FLY: u16 = 835;
873        pub const SMSG_MOVE_UNSET_CAN_FLY: u16 = 836;
874        pub const CMSG_MOVE_SET_CAN_FLY_ACK: u32 = 837;
875        pub const CMSG_MOVE_SET_FLY: u32 = 838;
876        pub const CMSG_SOCKET_GEMS: u32 = 839;
877        pub const CMSG_ARENA_TEAM_CREATE: u32 = 840;
878        pub const SMSG_ARENA_TEAM_COMMAND_RESULT: u16 = 841;
879        pub const MSG_MOVE_UPDATE_CAN_TRANSITION_BETWEEN_SWIM_AND_FLY: u16 = 842;
880        pub const CMSG_ARENA_TEAM_QUERY: u32 = 843;
881        pub const SMSG_ARENA_TEAM_QUERY_RESPONSE: u16 = 844;
882        pub const CMSG_ARENA_TEAM_ROSTER: u32 = 845;
883        pub const SMSG_ARENA_TEAM_ROSTER: u16 = 846;
884        pub const CMSG_ARENA_TEAM_INVITE: u32 = 847;
885        pub const SMSG_ARENA_TEAM_INVITE: u16 = 848;
886        pub const CMSG_ARENA_TEAM_ACCEPT: u32 = 849;
887        pub const CMSG_ARENA_TEAM_DECLINE: u32 = 850;
888        pub const CMSG_ARENA_TEAM_LEAVE: u32 = 851;
889        pub const CMSG_ARENA_TEAM_REMOVE: u32 = 852;
890        pub const CMSG_ARENA_TEAM_DISBAND: u32 = 853;
891        pub const CMSG_ARENA_TEAM_LEADER: u32 = 854;
892        pub const SMSG_ARENA_TEAM_EVENT: u16 = 855;
893        pub const CMSG_BATTLEMASTER_JOIN_ARENA: u32 = 856;
894        pub const MSG_MOVE_START_ASCEND: u16 = 857;
895        pub const MSG_MOVE_STOP_ASCEND: u16 = 858;
896        pub const SMSG_ARENA_TEAM_STATS: u16 = 859;
897        pub const CMSG_LFG_JOIN: u32 = 860;
898        pub const CMSG_LFG_LEAVE: u32 = 861;
899        pub const CMSG_LFG_SEARCH_JOIN: u32 = 862;
900        pub const CMSG_LFG_SEARCH_LEAVE: u32 = 863;
901        pub const SMSG_LFG_SEARCH_RESULTS: u16 = 864;
902        pub const SMSG_LFG_PROPOSAL_UPDATE: u16 = 865;
903        pub const CMSG_LFG_PROPOSAL_RESULT: u32 = 866;
904        pub const SMSG_LFG_ROLE_CHECK_UPDATE: u16 = 867;
905        pub const SMSG_LFG_JOIN_RESULT: u16 = 868;
906        pub const SMSG_LFG_QUEUE_STATUS: u16 = 869;
907        pub const CMSG_SET_LFG_COMMENT: u32 = 870;
908        pub const SMSG_LFG_UPDATE_PLAYER: u16 = 871;
909        pub const SMSG_LFG_UPDATE_PARTY: u16 = 872;
910        pub const SMSG_LFG_UPDATE_SEARCH: u16 = 873;
911        pub const CMSG_LFG_SET_ROLES: u32 = 874;
912        pub const CMSG_LFG_SET_NEEDS: u32 = 875;
913        pub const CMSG_LFG_BOOT_PLAYER_VOTE: u32 = 876;
914        pub const SMSG_LFG_BOOT_PLAYER: u16 = 877;
915        pub const CMSG_LFG_GET_PLAYER_INFO: u32 = 878;
916        pub const SMSG_LFG_PLAYER_INFO: u16 = 879;
917        pub const CMSG_LFG_TELEPORT: u32 = 880;
918        pub const CMSG_LFG_GET_PARTY_INFO: u32 = 881;
919        pub const SMSG_LFG_PARTY_INFO: u16 = 882;
920        pub const SMSG_TITLE_EARNED: u16 = 883;
921        pub const CMSG_SET_TITLE: u32 = 884;
922        pub const CMSG_CANCEL_MOUNT_AURA: u32 = 885;
923        pub const SMSG_ARENA_ERROR: u16 = 886;
924        pub const MSG_INSPECT_ARENA_TEAMS: u16 = 887;
925        pub const SMSG_DEATH_RELEASE_LOC: u16 = 888;
926        pub const CMSG_CANCEL_TEMP_ENCHANTMENT: u32 = 889;
927        pub const SMSG_FORCED_DEATH_UPDATE: u16 = 890;
928        pub const CMSG_CHEAT_SET_HONOR_CURRENCY: u32 = 891;
929        pub const CMSG_CHEAT_SET_ARENA_CURRENCY: u32 = 892;
930        pub const MSG_MOVE_SET_FLIGHT_SPEED_CHEAT: u16 = 893;
931        pub const MSG_MOVE_SET_FLIGHT_SPEED: u16 = 894;
932        pub const MSG_MOVE_SET_FLIGHT_BACK_SPEED_CHEAT: u16 = 895;
933        pub const MSG_MOVE_SET_FLIGHT_BACK_SPEED: u16 = 896;
934        pub const SMSG_FORCE_FLIGHT_SPEED_CHANGE: u16 = 897;
935        pub const CMSG_FORCE_FLIGHT_SPEED_CHANGE_ACK: u32 = 898;
936        pub const SMSG_FORCE_FLIGHT_BACK_SPEED_CHANGE: u16 = 899;
937        pub const CMSG_FORCE_FLIGHT_BACK_SPEED_CHANGE_ACK: u32 = 900;
938        pub const SMSG_SPLINE_SET_FLIGHT_SPEED: u16 = 901;
939        pub const SMSG_SPLINE_SET_FLIGHT_BACK_SPEED: u16 = 902;
940        pub const CMSG_MAELSTROM_INVALIDATE_CACHE: u32 = 903;
941        pub const SMSG_FLIGHT_SPLINE_SYNC: u16 = 904;
942        pub const CMSG_SET_TAXI_BENCHMARK_MODE: u32 = 905;
943        pub const SMSG_JOINED_BATTLEGROUND_QUEUE: u16 = 906;
944        pub const SMSG_REALM_SPLIT: u16 = 907;
945        pub const CMSG_REALM_SPLIT: u32 = 908;
946        pub const CMSG_MOVE_CHNG_TRANSPORT: u32 = 909;
947        pub const MSG_PARTY_ASSIGNMENT: u16 = 910;
948        pub const SMSG_OFFER_PETITION_ERROR: u16 = 911;
949        pub const SMSG_TIME_SYNC_REQ: u16 = 912;
950        pub const CMSG_TIME_SYNC_RESP: u32 = 913;
951        pub const CMSG_SEND_LOCAL_EVENT: u32 = 914;
952        pub const CMSG_SEND_GENERAL_TRIGGER: u32 = 915;
953        pub const CMSG_SEND_COMBAT_TRIGGER: u32 = 916;
954        pub const CMSG_MAELSTROM_GM_SENT_MAIL: u32 = 917;
955        pub const SMSG_RESET_FAILED_NOTIFY: u16 = 918;
956        pub const SMSG_REAL_GROUP_UPDATE: u16 = 919;
957        pub const SMSG_LFG_DISABLED: u16 = 920;
958        pub const CMSG_ACTIVE_PVP_CHEAT: u32 = 921;
959        pub const CMSG_CHEAT_DUMP_ITEMS_DEBUG_ONLY: u32 = 922;
960        pub const SMSG_CHEAT_DUMP_ITEMS_DEBUG_ONLY_RESPONSE: u16 = 923;
961        pub const SMSG_CHEAT_DUMP_ITEMS_DEBUG_ONLY_RESPONSE_WRITE_FILE: u16 = 924;
962        pub const SMSG_UPDATE_COMBO_POINTS: u16 = 925;
963        pub const SMSG_VOICE_SESSION_ROSTER_UPDATE: u16 = 926;
964        pub const SMSG_VOICE_SESSION_LEAVE: u16 = 927;
965        pub const SMSG_VOICE_SESSION_ADJUST_PRIORITY: u16 = 928;
966        pub const CMSG_VOICE_SET_TALKER_MUTED_REQUEST: u32 = 929;
967        pub const SMSG_VOICE_SET_TALKER_MUTED: u16 = 930;
968        pub const SMSG_INIT_EXTRA_AURA_INFO_OBSOLETE: u16 = 931;
969        pub const SMSG_SET_EXTRA_AURA_INFO_OBSOLETE: u16 = 932;
970        pub const SMSG_SET_EXTRA_AURA_INFO_NEED_UPDATE_OBSOLETE: u16 = 933;
971        pub const SMSG_CLEAR_EXTRA_AURA_INFO_OBSOLETE: u16 = 934;
972        pub const MSG_MOVE_START_DESCEND: u16 = 935;
973        pub const CMSG_IGNORE_REQUIREMENTS_CHEAT: u32 = 936;
974        pub const SMSG_IGNORE_REQUIREMENTS_CHEAT: u16 = 937;
975        pub const SMSG_SPELL_CHANCE_PROC_LOG: u16 = 938;
976        pub const CMSG_MOVE_SET_RUN_SPEED: u32 = 939;
977        pub const SMSG_DISMOUNT: u16 = 940;
978        pub const MSG_MOVE_UPDATE_CAN_FLY: u16 = 941;
979        pub const MSG_RAID_READY_CHECK_CONFIRM: u16 = 942;
980        pub const CMSG_VOICE_SESSION_ENABLE: u32 = 943;
981        pub const SMSG_VOICE_SESSION_ENABLE: u16 = 944;
982        pub const SMSG_VOICE_PARENTAL_CONTROLS: u16 = 945;
983        pub const CMSG_GM_WHISPER: u32 = 946;
984        pub const SMSG_GM_MESSAGECHAT: u16 = 947;
985        pub const MSG_GM_GEARRATING: u16 = 948;
986        pub const CMSG_COMMENTATOR_ENABLE: u32 = 949;
987        pub const SMSG_COMMENTATOR_STATE_CHANGED: u16 = 950;
988        pub const CMSG_COMMENTATOR_GET_MAP_INFO: u32 = 951;
989        pub const SMSG_COMMENTATOR_MAP_INFO: u16 = 952;
990        pub const CMSG_COMMENTATOR_GET_PLAYER_INFO: u32 = 953;
991        pub const SMSG_COMMENTATOR_GET_PLAYER_INFO: u16 = 954;
992        pub const SMSG_COMMENTATOR_PLAYER_INFO: u16 = 955;
993        pub const CMSG_COMMENTATOR_ENTER_INSTANCE: u32 = 956;
994        pub const CMSG_COMMENTATOR_EXIT_INSTANCE: u32 = 957;
995        pub const CMSG_COMMENTATOR_INSTANCE_COMMAND: u32 = 958;
996        pub const SMSG_CLEAR_TARGET: u16 = 959;
997        pub const CMSG_BOT_DETECTED: u32 = 960;
998        pub const SMSG_CROSSED_INEBRIATION_THRESHOLD: u16 = 961;
999        pub const CMSG_CHEAT_PLAYER_LOGIN: u32 = 962;
1000        pub const CMSG_CHEAT_PLAYER_LOOKUP: u32 = 963;
1001        pub const SMSG_CHEAT_PLAYER_LOOKUP: u16 = 964;
1002        pub const SMSG_KICK_REASON: u16 = 965;
1003        pub const MSG_RAID_READY_CHECK_FINISHED: u16 = 966;
1004        pub const CMSG_COMPLAIN: u32 = 967;
1005        pub const SMSG_COMPLAIN_RESULT: u16 = 968;
1006        pub const SMSG_FEATURE_SYSTEM_STATUS: u16 = 969;
1007        pub const CMSG_GM_SHOW_COMPLAINTS: u32 = 970;
1008        pub const CMSG_GM_UNSQUELCH: u32 = 971;
1009        pub const CMSG_CHANNEL_SILENCE_VOICE: u32 = 972;
1010        pub const CMSG_CHANNEL_SILENCE_ALL: u32 = 973;
1011        pub const CMSG_CHANNEL_UNSILENCE_VOICE: u32 = 974;
1012        pub const CMSG_CHANNEL_UNSILENCE_ALL: u32 = 975;
1013        pub const CMSG_TARGET_CAST: u32 = 976;
1014        pub const CMSG_TARGET_SCRIPT_CAST: u32 = 977;
1015        pub const CMSG_CHANNEL_DISPLAY_LIST: u32 = 978;
1016        pub const CMSG_SET_ACTIVE_VOICE_CHANNEL: u32 = 979;
1017        pub const CMSG_GET_CHANNEL_MEMBER_COUNT: u32 = 980;
1018        pub const SMSG_CHANNEL_MEMBER_COUNT: u16 = 981;
1019        pub const CMSG_CHANNEL_VOICE_ON: u32 = 982;
1020        pub const CMSG_CHANNEL_VOICE_OFF: u32 = 983;
1021        pub const CMSG_DEBUG_LIST_TARGETS: u32 = 984;
1022        pub const SMSG_DEBUG_LIST_TARGETS: u16 = 985;
1023        pub const SMSG_AVAILABLE_VOICE_CHANNEL: u16 = 986;
1024        pub const CMSG_ADD_VOICE_IGNORE: u32 = 987;
1025        pub const CMSG_DEL_VOICE_IGNORE: u32 = 988;
1026        pub const CMSG_PARTY_SILENCE: u32 = 989;
1027        pub const CMSG_PARTY_UNSILENCE: u32 = 990;
1028        pub const MSG_NOTIFY_PARTY_SQUELCH: u16 = 991;
1029        pub const SMSG_COMSAT_RECONNECT_TRY: u16 = 992;
1030        pub const SMSG_COMSAT_DISCONNECT: u16 = 993;
1031        pub const SMSG_COMSAT_CONNECT_FAIL: u16 = 994;
1032        pub const SMSG_VOICE_CHAT_STATUS: u16 = 995;
1033        pub const CMSG_REPORT_PVP_AFK: u32 = 996;
1034        pub const SMSG_REPORT_PVP_AFK_RESULT: u16 = 997;
1035        pub const CMSG_GUILD_BANKER_ACTIVATE: u32 = 998;
1036        pub const CMSG_GUILD_BANK_QUERY_TAB: u32 = 999;
1037        pub const SMSG_GUILD_BANK_LIST: u16 = 1000;
1038        pub const CMSG_GUILD_BANK_SWAP_ITEMS: u32 = 1001;
1039        pub const CMSG_GUILD_BANK_BUY_TAB: u32 = 1002;
1040        pub const CMSG_GUILD_BANK_UPDATE_TAB: u32 = 1003;
1041        pub const CMSG_GUILD_BANK_DEPOSIT_MONEY: u32 = 1004;
1042        pub const CMSG_GUILD_BANK_WITHDRAW_MONEY: u32 = 1005;
1043        pub const MSG_GUILD_BANK_LOG_QUERY: u16 = 1006;
1044        pub const CMSG_SET_CHANNEL_WATCH: u32 = 1007;
1045        pub const SMSG_USERLIST_ADD: u16 = 1008;
1046        pub const SMSG_USERLIST_REMOVE: u16 = 1009;
1047        pub const SMSG_USERLIST_UPDATE: u16 = 1010;
1048        pub const CMSG_CLEAR_CHANNEL_WATCH: u32 = 1011;
1049        pub const SMSG_INSPECT_RESULTS: u16 = 1012;
1050        pub const SMSG_GOGOGO_OBSOLETE: u16 = 1013;
1051        pub const SMSG_ECHO_PARTY_SQUELCH: u16 = 1014;
1052        pub const CMSG_SET_TITLE_SUFFIX: u32 = 1015;
1053        pub const CMSG_SPELLCLICK: u32 = 1016;
1054        pub const SMSG_LOOT_LIST: u16 = 1017;
1055        pub const CMSG_GM_CHARACTER_RESTORE: u32 = 1018;
1056        pub const CMSG_GM_CHARACTER_SAVE: u32 = 1019;
1057        pub const SMSG_VOICESESSION_FULL: u16 = 1020;
1058        pub const MSG_GUILD_PERMISSIONS: u16 = 1021;
1059        pub const MSG_GUILD_BANK_MONEY_WITHDRAWN: u16 = 1022;
1060        pub const MSG_GUILD_EVENT_LOG_QUERY: u16 = 1023;
1061        pub const CMSG_MAELSTROM_RENAME_GUILD: u32 = 1024;
1062        pub const CMSG_GET_MIRRORIMAGE_DATA: u32 = 1025;
1063        pub const SMSG_MIRRORIMAGE_DATA: u16 = 1026;
1064        pub const SMSG_FORCE_DISPLAY_UPDATE: u16 = 1027;
1065        pub const SMSG_SPELL_CHANCE_RESIST_PUSHBACK: u16 = 1028;
1066        pub const CMSG_IGNORE_DIMINISHING_RETURNS_CHEAT: u32 = 1029;
1067        pub const SMSG_IGNORE_DIMINISHING_RETURNS_CHEAT: u16 = 1030;
1068        pub const CMSG_KEEP_ALIVE: u32 = 1031;
1069        pub const SMSG_RAID_READY_CHECK_ERROR: u16 = 1032;
1070        pub const CMSG_OPT_OUT_OF_LOOT: u32 = 1033;
1071        pub const MSG_QUERY_GUILD_BANK_TEXT: u16 = 1034;
1072        pub const CMSG_SET_GUILD_BANK_TEXT: u32 = 1035;
1073        pub const CMSG_SET_GRANTABLE_LEVELS: u32 = 1036;
1074        pub const CMSG_GRANT_LEVEL: u32 = 1037;
1075        pub const CMSG_REFER_A_FRIEND: u32 = 1038;
1076        pub const MSG_GM_CHANGE_ARENA_RATING: u16 = 1039;
1077        pub const CMSG_DECLINE_CHANNEL_INVITE: u32 = 1040;
1078        pub const SMSG_GROUPACTION_THROTTLED: u16 = 1041;
1079        pub const SMSG_OVERRIDE_LIGHT: u16 = 1042;
1080        pub const SMSG_TOTEM_CREATED: u16 = 1043;
1081        pub const CMSG_TOTEM_DESTROYED: u32 = 1044;
1082        pub const CMSG_EXPIRE_RAID_INSTANCE: u32 = 1045;
1083        pub const CMSG_NO_SPELL_VARIANCE: u32 = 1046;
1084        pub const CMSG_QUESTGIVER_STATUS_MULTIPLE_QUERY: u32 = 1047;
1085        pub const SMSG_QUESTGIVER_STATUS_MULTIPLE: u16 = 1048;
1086        pub const CMSG_SET_PLAYER_DECLINED_NAMES: u32 = 1049;
1087        pub const SMSG_SET_PLAYER_DECLINED_NAMES_RESULT: u16 = 1050;
1088        pub const CMSG_QUERY_SERVER_BUCK_DATA: u32 = 1051;
1089        pub const CMSG_CLEAR_SERVER_BUCK_DATA: u32 = 1052;
1090        pub const SMSG_SERVER_BUCK_DATA: u16 = 1053;
1091        pub const SMSG_SEND_UNLEARN_SPELLS: u16 = 1054;
1092        pub const SMSG_PROPOSE_LEVEL_GRANT: u16 = 1055;
1093        pub const CMSG_ACCEPT_LEVEL_GRANT: u32 = 1056;
1094        pub const SMSG_REFER_A_FRIEND_FAILURE: u16 = 1057;
1095        pub const SMSG_SPLINE_MOVE_SET_FLYING: u16 = 1058;
1096        pub const SMSG_SPLINE_MOVE_UNSET_FLYING: u16 = 1059;
1097        pub const SMSG_SUMMON_CANCEL: u16 = 1060;
1098        pub const CMSG_CHANGE_PERSONAL_ARENA_RATING: u32 = 1061;
1099        pub const CMSG_ALTER_APPEARANCE: u32 = 1062;
1100        pub const SMSG_ENABLE_BARBER_SHOP: u16 = 1063;
1101        pub const SMSG_BARBER_SHOP_RESULT: u16 = 1064;
1102        pub const CMSG_CALENDAR_GET_CALENDAR: u32 = 1065;
1103        pub const CMSG_CALENDAR_GET_EVENT: u32 = 1066;
1104        pub const CMSG_CALENDAR_GUILD_FILTER: u32 = 1067;
1105        pub const CMSG_CALENDAR_ARENA_TEAM: u32 = 1068;
1106        pub const CMSG_CALENDAR_ADD_EVENT: u32 = 1069;
1107        pub const CMSG_CALENDAR_UPDATE_EVENT: u32 = 1070;
1108        pub const CMSG_CALENDAR_REMOVE_EVENT: u32 = 1071;
1109        pub const CMSG_CALENDAR_COPY_EVENT: u32 = 1072;
1110        pub const CMSG_CALENDAR_EVENT_INVITE: u32 = 1073;
1111        pub const CMSG_CALENDAR_EVENT_RSVP: u32 = 1074;
1112        pub const CMSG_CALENDAR_EVENT_REMOVE_INVITE: u32 = 1075;
1113        pub const CMSG_CALENDAR_EVENT_STATUS: u32 = 1076;
1114        pub const CMSG_CALENDAR_EVENT_MODERATOR_STATUS: u32 = 1077;
1115        pub const SMSG_CALENDAR_SEND_CALENDAR: u16 = 1078;
1116        pub const SMSG_CALENDAR_SEND_EVENT: u16 = 1079;
1117        pub const SMSG_CALENDAR_FILTER_GUILD: u16 = 1080;
1118        pub const SMSG_CALENDAR_ARENA_TEAM: u16 = 1081;
1119        pub const SMSG_CALENDAR_EVENT_INVITE: u16 = 1082;
1120        pub const SMSG_CALENDAR_EVENT_INVITE_REMOVED: u16 = 1083;
1121        pub const SMSG_CALENDAR_EVENT_STATUS: u16 = 1084;
1122        pub const SMSG_CALENDAR_COMMAND_RESULT: u16 = 1085;
1123        pub const SMSG_CALENDAR_RAID_LOCKOUT_ADDED: u16 = 1086;
1124        pub const SMSG_CALENDAR_RAID_LOCKOUT_REMOVED: u16 = 1087;
1125        pub const SMSG_CALENDAR_EVENT_INVITE_ALERT: u16 = 1088;
1126        pub const SMSG_CALENDAR_EVENT_INVITE_REMOVED_ALERT: u16 = 1089;
1127        pub const SMSG_CALENDAR_EVENT_INVITE_STATUS_ALERT: u16 = 1090;
1128        pub const SMSG_CALENDAR_EVENT_REMOVED_ALERT: u16 = 1091;
1129        pub const SMSG_CALENDAR_EVENT_UPDATED_ALERT: u16 = 1092;
1130        pub const SMSG_CALENDAR_EVENT_MODERATOR_STATUS_ALERT: u16 = 1093;
1131        pub const CMSG_CALENDAR_COMPLAIN: u32 = 1094;
1132        pub const CMSG_CALENDAR_GET_NUM_PENDING: u32 = 1095;
1133        pub const SMSG_CALENDAR_SEND_NUM_PENDING: u16 = 1096;
1134        pub const CMSG_SAVE_DANCE: u32 = 1097;
1135        pub const SMSG_NOTIFY_DANCE: u16 = 1098;
1136        pub const CMSG_PLAY_DANCE: u32 = 1099;
1137        pub const SMSG_PLAY_DANCE: u16 = 1100;
1138        pub const CMSG_LOAD_DANCES: u32 = 1101;
1139        pub const CMSG_STOP_DANCE: u32 = 1102;
1140        pub const SMSG_STOP_DANCE: u16 = 1103;
1141        pub const CMSG_SYNC_DANCE: u32 = 1104;
1142        pub const CMSG_DANCE_QUERY: u32 = 1105;
1143        pub const SMSG_DANCE_QUERY_RESPONSE: u16 = 1106;
1144        pub const SMSG_INVALIDATE_DANCE: u16 = 1107;
1145        pub const CMSG_DELETE_DANCE: u32 = 1108;
1146        pub const SMSG_LEARNED_DANCE_MOVES: u16 = 1109;
1147        pub const CMSG_LEARN_DANCE_MOVE: u32 = 1110;
1148        pub const CMSG_UNLEARN_DANCE_MOVE: u32 = 1111;
1149        pub const CMSG_SET_RUNE_COUNT: u32 = 1112;
1150        pub const CMSG_SET_RUNE_COOLDOWN: u32 = 1113;
1151        pub const MSG_MOVE_SET_PITCH_RATE_CHEAT: u16 = 1114;
1152        pub const MSG_MOVE_SET_PITCH_RATE: u16 = 1115;
1153        pub const SMSG_FORCE_PITCH_RATE_CHANGE: u16 = 1116;
1154        pub const CMSG_FORCE_PITCH_RATE_CHANGE_ACK: u32 = 1117;
1155        pub const SMSG_SPLINE_SET_PITCH_RATE: u16 = 1118;
1156        pub const CMSG_CALENDAR_EVENT_INVITE_NOTES: u32 = 1119;
1157        pub const SMSG_CALENDAR_EVENT_INVITE_NOTES: u16 = 1120;
1158        pub const SMSG_CALENDAR_EVENT_INVITE_NOTES_ALERT: u16 = 1121;
1159        pub const CMSG_UPDATE_MISSILE_TRAJECTORY: u32 = 1122;
1160        pub const SMSG_UPDATE_ACCOUNT_DATA_COMPLETE: u16 = 1123;
1161        pub const SMSG_TRIGGER_MOVIE: u16 = 1124;
1162        pub const CMSG_COMPLETE_MOVIE: u32 = 1125;
1163        pub const CMSG_SET_GLYPH_SLOT: u32 = 1126;
1164        pub const CMSG_SET_GLYPH: u32 = 1127;
1165        pub const SMSG_ACHIEVEMENT_EARNED: u16 = 1128;
1166        pub const SMSG_DYNAMIC_DROP_ROLL_RESULT: u16 = 1129;
1167        pub const SMSG_CRITERIA_UPDATE: u16 = 1130;
1168        pub const CMSG_QUERY_INSPECT_ACHIEVEMENTS: u32 = 1131;
1169        pub const SMSG_RESPOND_INSPECT_ACHIEVEMENTS: u16 = 1132;
1170        pub const CMSG_DISMISS_CONTROLLED_VEHICLE: u32 = 1133;
1171        pub const CMSG_COMPLETE_ACHIEVEMENT_CHEAT: u32 = 1134;
1172        pub const SMSG_QUESTUPDATE_ADD_PVP_KILL: u16 = 1135;
1173        pub const CMSG_SET_CRITERIA_CHEAT: u32 = 1136;
1174        pub const SMSG_CALENDAR_RAID_LOCKOUT_UPDATED: u16 = 1137;
1175        pub const CMSG_UNITANIMTIER_CHEAT: u32 = 1138;
1176        pub const CMSG_CHAR_CUSTOMIZE: u32 = 1139;
1177        pub const SMSG_CHAR_CUSTOMIZE: u16 = 1140;
1178        pub const SMSG_PET_RENAMEABLE: u16 = 1141;
1179        pub const CMSG_REQUEST_VEHICLE_EXIT: u32 = 1142;
1180        pub const CMSG_REQUEST_VEHICLE_PREV_SEAT: u32 = 1143;
1181        pub const CMSG_REQUEST_VEHICLE_NEXT_SEAT: u32 = 1144;
1182        pub const CMSG_REQUEST_VEHICLE_SWITCH_SEAT: u32 = 1145;
1183        pub const CMSG_PET_LEARN_TALENT: u32 = 1146;
1184        pub const CMSG_PET_UNLEARN_TALENTS: u32 = 1147;
1185        pub const SMSG_SET_PHASE_SHIFT: u16 = 1148;
1186        pub const SMSG_ALL_ACHIEVEMENT_DATA: u16 = 1149;
1187        pub const CMSG_FORCE_SAY_CHEAT: u32 = 1150;
1188        pub const SMSG_HEALTH_UPDATE: u16 = 1151;
1189        pub const SMSG_POWER_UPDATE: u16 = 1152;
1190        pub const CMSG_GAMEOBJ_REPORT_USE: u32 = 1153;
1191        pub const SMSG_HIGHEST_THREAT_UPDATE: u16 = 1154;
1192        pub const SMSG_THREAT_UPDATE: u16 = 1155;
1193        pub const SMSG_THREAT_REMOVE: u16 = 1156;
1194        pub const SMSG_THREAT_CLEAR: u16 = 1157;
1195        pub const SMSG_CONVERT_RUNE: u16 = 1158;
1196        pub const SMSG_RESYNC_RUNES: u16 = 1159;
1197        pub const SMSG_ADD_RUNE_POWER: u16 = 1160;
1198        pub const CMSG_START_QUEST: u32 = 1161;
1199        pub const CMSG_REMOVE_GLYPH: u32 = 1162;
1200        pub const CMSG_DUMP_OBJECTS: u32 = 1163;
1201        pub const SMSG_DUMP_OBJECTS_DATA: u16 = 1164;
1202        pub const CMSG_DISMISS_CRITTER: u32 = 1165;
1203        pub const SMSG_NOTIFY_DEST_LOC_SPELL_CAST: u16 = 1166;
1204        pub const CMSG_AUCTION_LIST_PENDING_SALES: u32 = 1167;
1205        pub const SMSG_AUCTION_LIST_PENDING_SALES: u16 = 1168;
1206        pub const SMSG_MODIFY_COOLDOWN: u16 = 1169;
1207        pub const SMSG_PET_UPDATE_COMBO_POINTS: u16 = 1170;
1208        pub const CMSG_ENABLETAXI: u32 = 1171;
1209        pub const SMSG_PRE_RESURRECT: u16 = 1172;
1210        pub const SMSG_AURA_UPDATE_ALL: u16 = 1173;
1211        pub const SMSG_AURA_UPDATE: u16 = 1174;
1212        pub const CMSG_FLOOD_GRACE_CHEAT: u32 = 1175;
1213        pub const SMSG_SERVER_FIRST_ACHIEVEMENT: u16 = 1176;
1214        pub const SMSG_PET_LEARNED_SPELL: u16 = 1177;
1215        pub const SMSG_PET_REMOVED_SPELL: u16 = 1178;
1216        pub const CMSG_CHANGE_SEATS_ON_CONTROLLED_VEHICLE: u32 = 1179;
1217        pub const CMSG_HEARTH_AND_RESURRECT: u32 = 1180;
1218        pub const SMSG_ON_CANCEL_EXPECTED_RIDE_VEHICLE_AURA: u16 = 1181;
1219        pub const SMSG_CRITERIA_DELETED: u16 = 1182;
1220        pub const SMSG_ACHIEVEMENT_DELETED: u16 = 1183;
1221        pub const CMSG_SERVER_INFO_QUERY: u32 = 1184;
1222        pub const SMSG_SERVER_INFO_RESPONSE: u16 = 1185;
1223        pub const CMSG_CHECK_LOGIN_CRITERIA: u32 = 1186;
1224        pub const SMSG_SERVER_BUCK_DATA_START: u16 = 1187;
1225        pub const CMSG_SET_BREATH: u32 = 1188;
1226        pub const CMSG_QUERY_VEHICLE_STATUS: u32 = 1189;
1227        pub const SMSG_BATTLEGROUND_INFO_THROTTLED: u16 = 1190;
1228        pub const SMSG_SET_VEHICLE_REC_ID: u16 = 1191;
1229        pub const CMSG_RIDE_VEHICLE_INTERACT: u32 = 1192;
1230        pub const CMSG_CONTROLLER_EJECT_PASSENGER: u32 = 1193;
1231        pub const SMSG_PET_GUIDS: u16 = 1194;
1232        pub const SMSG_CLIENTCACHE_VERSION: u16 = 1195;
1233        pub const CMSG_CHANGE_GDF_ARENA_RATING: u32 = 1196;
1234        pub const CMSG_SET_ARENA_TEAM_RATING_BY_INDEX: u32 = 1197;
1235        pub const CMSG_SET_ARENA_TEAM_WEEKLY_GAMES: u32 = 1198;
1236        pub const CMSG_SET_ARENA_TEAM_SEASON_GAMES: u32 = 1199;
1237        pub const CMSG_SET_ARENA_MEMBER_WEEKLY_GAMES: u32 = 1200;
1238        pub const CMSG_SET_ARENA_MEMBER_SEASON_GAMES: u32 = 1201;
1239        pub const SMSG_SET_ITEM_PURCHASE_DATA: u16 = 1202;
1240        pub const CMSG_GET_ITEM_PURCHASE_DATA: u32 = 1203;
1241        pub const CMSG_ITEM_PURCHASE_REFUND: u32 = 1204;
1242        pub const SMSG_ITEM_PURCHASE_REFUND_RESULT: u16 = 1205;
1243        pub const CMSG_CORPSE_TRANSPORT_QUERY: u32 = 1206;
1244        pub const SMSG_CORPSE_TRANSPORT_QUERY: u16 = 1207;
1245        pub const CMSG_UNUSED5: u32 = 1208;
1246        pub const CMSG_UNUSED6: u32 = 1209;
1247        pub const CMSG_CALENDAR_EVENT_SIGNUP: u32 = 1210;
1248        pub const SMSG_CALENDAR_CLEAR_PENDING_ACTION: u16 = 1211;
1249        pub const SMSG_LOAD_EQUIPMENT_SET: u16 = 1212;
1250        pub const CMSG_SAVE_EQUIPMENT_SET: u32 = 1213;
1251        pub const CMSG_ON_MISSILE_TRAJECTORY_COLLISION: u32 = 1214;
1252        pub const SMSG_NOTIFY_MISSILE_TRAJECTORY_COLLISION: u16 = 1215;
1253        pub const SMSG_TALENT_UPDATE: u16 = 1216;
1254        pub const CMSG_LEARN_TALENT_GROUP: u32 = 1217;
1255        pub const CMSG_PET_LEARN_TALENT_GROUP: u32 = 1218;
1256        pub const CMSG_SET_ACTIVE_TALENT_GROUP_OBSOLETE: u32 = 1219;
1257        pub const CMSG_GM_GRANT_ACHIEVEMENT: u32 = 1220;
1258        pub const CMSG_GM_REMOVE_ACHIEVEMENT: u32 = 1221;
1259        pub const CMSG_GM_SET_CRITERIA_FOR_PLAYER: u32 = 1222;
1260        pub const SMSG_DESTROY_ARENA_UNIT: u16 = 1223;
1261        pub const SMSG_ARENA_TEAM_CHANGE_FAILED: u16 = 1224;
1262        pub const CMSG_PROFILEDATA_REQUEST: u32 = 1225;
1263        pub const SMSG_PROFILEDATA_RESPONSE: u16 = 1226;
1264        pub const CMSG_START_BATTLEFIELD_CHEAT: u32 = 1227;
1265        pub const CMSG_END_BATTLEFIELD_CHEAT: u32 = 1228;
1266        pub const SMSG_COMPOUND_MOVE: u16 = 1229;
1267        pub const SMSG_MOVE_GRAVITY_DISABLE: u16 = 1230;
1268        pub const CMSG_MOVE_GRAVITY_DISABLE_ACK: u32 = 1231;
1269        pub const SMSG_MOVE_GRAVITY_ENABLE: u16 = 1232;
1270        pub const CMSG_MOVE_GRAVITY_ENABLE_ACK: u32 = 1233;
1271        pub const MSG_MOVE_GRAVITY_CHNG: u16 = 1234;
1272        pub const SMSG_SPLINE_MOVE_GRAVITY_DISABLE: u16 = 1235;
1273        pub const SMSG_SPLINE_MOVE_GRAVITY_ENABLE: u16 = 1236;
1274        pub const CMSG_USE_EQUIPMENT_SET: u32 = 1237;
1275        pub const SMSG_USE_EQUIPMENT_SET_RESULT: u16 = 1238;
1276        pub const CMSG_FORCE_ANIM: u32 = 1239;
1277        pub const SMSG_FORCE_ANIM: u16 = 1240;
1278        pub const CMSG_CHAR_FACTION_CHANGE: u32 = 1241;
1279        pub const SMSG_CHAR_FACTION_CHANGE: u16 = 1242;
1280        pub const CMSG_PVP_QUEUE_STATS_REQUEST: u32 = 1243;
1281        pub const SMSG_PVP_QUEUE_STATS: u16 = 1244;
1282        pub const CMSG_SET_PAID_SERVICE_CHEAT: u32 = 1245;
1283        pub const SMSG_BATTLEFIELD_MANAGER_ENTRY_INVITE: u16 = 1246;
1284        pub const CMSG_BATTLEFIELD_MANAGER_ENTRY_INVITE_RESPONSE: u32 = 1247;
1285        pub const SMSG_BATTLEFIELD_MANAGER_ENTERING: u16 = 1248;
1286        pub const SMSG_BATTLEFIELD_MANAGER_QUEUE_INVITE: u16 = 1249;
1287        pub const CMSG_BATTLEFIELD_MANAGER_QUEUE_INVITE_RESPONSE: u32 = 1250;
1288        pub const CMSG_BATTLEFIELD_MANAGER_QUEUE_REQUEST: u32 = 1251;
1289        pub const SMSG_BATTLEFIELD_MANAGER_QUEUE_REQUEST_RESPONSE: u16 = 1252;
1290        pub const SMSG_BATTLEFIELD_MANAGER_EJECT_PENDING: u16 = 1253;
1291        pub const SMSG_BATTLEFIELD_MANAGER_EJECTED: u16 = 1254;
1292        pub const CMSG_BATTLEFIELD_MANAGER_EXIT_REQUEST: u32 = 1255;
1293        pub const SMSG_BATTLEFIELD_MANAGER_STATE_CHANGED: u16 = 1256;
1294        pub const CMSG_BATTLEFIELD_MANAGER_ADVANCE_STATE: u32 = 1257;
1295        pub const CMSG_BATTLEFIELD_MANAGER_SET_NEXT_TRANSITION_TIME: u32 = 1258;
1296        pub const MSG_SET_RAID_DIFFICULTY: u16 = 1259;
1297        pub const CMSG_XPGAIN: u32 = 1260;
1298        pub const SMSG_XPGAIN: u16 = 1261;
1299        pub const SMSG_GMTICKET_RESPONSE_ERROR: u16 = 1262;
1300        pub const SMSG_GMTICKET_GET_RESPONSE: u16 = 1263;
1301        pub const CMSG_GMTICKET_RESOLVE_RESPONSE: u32 = 1264;
1302        pub const SMSG_GMTICKET_RESOLVE_RESPONSE: u16 = 1265;
1303        pub const SMSG_GMTICKET_CREATE_RESPONSE_TICKET: u16 = 1266;
1304        pub const CMSG_GM_CREATE_TICKET_RESPONSE: u32 = 1267;
1305        pub const CMSG_SERVERINFO: u32 = 1268;
1306        pub const SMSG_SERVERINFO: u16 = 1269;
1307        pub const CMSG_UI_TIME_REQUEST: u32 = 1270;
1308        pub const SMSG_UI_TIME: u16 = 1271;
1309        pub const CMSG_CHAR_RACE_CHANGE: u32 = 1272;
1310        pub const MSG_VIEW_PHASE_SHIFT: u16 = 1273;
1311        pub const SMSG_TALENTS_INVOLUNTARILY_RESET: u16 = 1274;
1312        pub const CMSG_DEBUG_SERVER_GEO: u32 = 1275;
1313        pub const SMSG_DEBUG_SERVER_GEO: u16 = 1276;
1314        pub const SMSG_LOOT_UPDATE: u16 = 1277;
1315        pub const MSG_UPDATE_GROUP_INFO: u16 = 1278;
1316        pub const CMSG_READY_FOR_ACCOUNT_DATA_TIMES: u32 = 1279;
1317        pub const CMSG_QUERY_GET_ALL_QUESTS: u32 = 1280;
1318        pub const SMSG_ALL_QUESTS_COMPLETED: u16 = 1281;
1319        pub const CMSG_GMLAGREPORT_SUBMIT: u32 = 1282;
1320        pub const CMSG_AFK_MONITOR_INFO_REQUEST: u32 = 1283;
1321        pub const SMSG_AFK_MONITOR_INFO_RESPONSE: u16 = 1284;
1322        pub const CMSG_AFK_MONITOR_INFO_CLEAR: u32 = 1285;
1323        pub const SMSG_AREA_TRIGGER_NO_CORPSE: u16 = 1286;
1324        pub const CMSG_GM_NUKE_CHARACTER: u32 = 1287;
1325        pub const CMSG_LOW_LEVEL_RAID: u32 = 1288;
1326        pub const CMSG_LOW_LEVEL_RAID_USER: u32 = 1289;
1327        pub const SMSG_CAMERA_SHAKE: u16 = 1290;
1328        pub const SMSG_SOCKET_GEMS_RESULT: u16 = 1291;
1329        pub const CMSG_SET_CHARACTER_MODEL: u32 = 1292;
1330        pub const SMSG_CONNECT_TO: u16 = 1293;
1331        pub const CMSG_CONNECT_TO_FAILED: u32 = 1294;
1332        pub const SMSG_SUSPEND_COMMS: u16 = 1295;
1333        pub const CMSG_SUSPEND_COMMS_ACK: u32 = 1296;
1334        pub const SMSG_RESUME_COMMS: u16 = 1297;
1335        pub const CMSG_AUTH_CONTINUED_SESSION: u32 = 1298;
1336        pub const CMSG_DROP_NEW_CONNECTION: u32 = 1299;
1337        pub const SMSG_SEND_ALL_COMBAT_LOG: u16 = 1300;
1338        pub const SMSG_OPEN_LFG_DUNGEON_FINDER: u16 = 1301;
1339        pub const SMSG_MOVE_SET_COLLISION_HGT: u16 = 1302;
1340        pub const CMSG_MOVE_SET_COLLISION_HGT_ACK: u32 = 1303;
1341        pub const MSG_MOVE_SET_COLLISION_HGT: u16 = 1304;
1342        pub const CMSG_CLEAR_RANDOM_BG_WIN_TIME: u32 = 1305;
1343        pub const CMSG_CLEAR_HOLIDAY_BG_WIN_TIME: u32 = 1306;
1344        pub const CMSG_COMMENTATOR_SKIRMISH_QUEUE_COMMAND: u32 = 1307;
1345        pub const SMSG_COMMENTATOR_SKIRMISH_QUEUE_RESULT1: u16 = 1308;
1346        pub const SMSG_COMMENTATOR_SKIRMISH_QUEUE_RESULT2: u16 = 1309;
1347        pub const SMSG_MULTIPLE_MOVES: u16 = 1310;
1348    }
1349}
1350
1351#[cfg(test)]
1352mod tests {
1353    use crate::types::opcodes::Opcode;
1354
1355    fn get_type_of<T>(_: &T) -> &str {
1356        std::any::type_name::<T>()
1357    }
1358
1359    #[test]
1360    fn test_opcode_name() {
1361        assert_eq!(
1362            Opcode::get_opcode_name(Opcode::LOGIN_PROOF as u32),
1363            Some("LOGIN_PROOF".to_string()),
1364        );
1365        assert_eq!(
1366            Opcode::get_opcode_name(Opcode::CMSG_CHAR_ENUM),
1367            Some("CMSG_CHAR_ENUM".to_string()),
1368        );
1369        assert_eq!(
1370            Opcode::get_opcode_name(Opcode::MSG_MOVE_START_FORWARD as u32),
1371            Some("MSG_MOVE_START_FORWARD".to_string()),
1372        );
1373    }
1374
1375    #[test]
1376    fn test_opcode_value() {
1377        assert_eq!(Opcode::LOGIN_PROOF, 1);
1378        assert_eq!(Opcode::CMSG_CHAR_ENUM, 55);
1379        assert_eq!(Opcode::MSG_MOVE_START_FORWARD, 181);
1380    }
1381
1382    #[test]
1383    fn test_opcode_field_type() {
1384        assert_eq!(get_type_of(&Opcode::LOGIN_PROOF), "u8");
1385        assert_eq!(get_type_of(&Opcode::CMSG_CHAR_ENUM), "u32");
1386        assert_eq!(get_type_of(&Opcode::MSG_MOVE_START_FORWARD), "u16");
1387    }
1388}
1389
1390#[non_exhaustive]
1391pub struct WardenOpcode;
1392#[allow(dead_code)]
1393impl WardenOpcode {
1394    pub const WARDEN_CMSG_MODULE_MISSING: u8 = 0;
1395    pub const WARDEN_CMSG_MODULE_OK: u8 = 1;
1396    pub const WARDEN_CMSG_CHEAT_CHECKS_RESULT: u8 = 2;
1397    pub const WARDEN_CMSG_MEM_CHECKS_RESULT: u8 = 3;
1398    pub const WARDEN_CMSG_HASH_RESULT: u8 = 4;
1399    pub const WARDEN_CMSG_MODULE_FAILED: u8 = 5;
1400
1401    pub const WARDEN_SMSG_MODULE_USE: u8 = 0;
1402    pub const WARDEN_SMSG_MODULE_CACHE: u8 = 1;
1403    pub const WARDEN_SMSG_CHEAT_CHECKS_REQUEST: u8 = 2;
1404    pub const WARDEN_SMSG_MODULE_INITIALIZE: u8 = 3;
1405    pub const WARDEN_SMSG_MEM_CHECKS_REQUEST: u8 = 4;
1406    pub const WARDEN_SMSG_HASH_REQUEST: u8 = 5;
1407}