aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorShauren <shauren.trinity@gmail.com>2024-12-18 22:50:33 +0100
committerShauren <shauren.trinity@gmail.com>2024-12-18 22:50:33 +0100
commit4f7079f471401d5cf7885351baabc027813f60f5 (patch)
tree1e6e3df6c346f1afeb312588246dee0c795a8ef3 /src
parent4df06cee620b90f75010366fcad763f93a83793b (diff)
Core: Updated to 11.0.7
Diffstat (limited to 'src')
-rw-r--r--src/common/Cryptography/Authentication/WorldPacketCrypt.cpp4
-rw-r--r--src/common/Cryptography/Authentication/WorldPacketCrypt.h4
-rw-r--r--src/server/database/Database/Implementation/HotfixDatabase.cpp13
-rw-r--r--src/server/game/DataStores/DB2LoadInfo.h23
-rw-r--r--src/server/game/DataStores/DB2Metadata.h186
-rw-r--r--src/server/game/DataStores/DB2Stores.cpp14
-rw-r--r--src/server/game/DataStores/DB2Structure.h11
-rw-r--r--src/server/game/Entities/Item/Item.h8
-rw-r--r--src/server/game/Entities/Item/ItemDefines.h1
-rw-r--r--src/server/game/Entities/Item/ItemTemplate.h4
-rw-r--r--src/server/game/Entities/Object/Updates/UpdateFields.cpp26
-rw-r--r--src/server/game/Entities/Object/Updates/UpdateFields.h6
-rw-r--r--src/server/game/Entities/Player/Player.cpp29
-rw-r--r--src/server/game/Entities/Player/Player.h1
-rw-r--r--src/server/game/Entities/Unit/Vignette.cpp12
-rw-r--r--src/server/game/Entities/Unit/Vignette.h1
-rw-r--r--src/server/game/Miscellaneous/SharedDefines.h711
-rw-r--r--src/server/game/Server/Packets/AuthenticationPackets.cpp5
-rw-r--r--src/server/game/Server/Packets/AuthenticationPackets.h10
-rw-r--r--src/server/game/Server/Packets/ChannelPackets.cpp1
-rw-r--r--src/server/game/Server/Packets/ChannelPackets.h1
-rw-r--r--src/server/game/Server/Packets/CharacterPackets.cpp41
-rw-r--r--src/server/game/Server/Packets/CharacterPackets.h26
-rw-r--r--src/server/game/Server/Packets/LFGPackets.cpp2
-rw-r--r--src/server/game/Server/Packets/MiscPackets.cpp13
-rw-r--r--src/server/game/Server/Packets/MiscPackets.h20
-rw-r--r--src/server/game/Server/Packets/PerksProgramPacketsCommon.cpp7
-rw-r--r--src/server/game/Server/Packets/PerksProgramPacketsCommon.h7
-rw-r--r--src/server/game/Server/Packets/PetPackets.cpp6
-rw-r--r--src/server/game/Server/Packets/PetitionPackets.cpp4
-rw-r--r--src/server/game/Server/Packets/SystemPackets.cpp11
-rw-r--r--src/server/game/Server/Packets/SystemPackets.h11
-rw-r--r--src/server/game/Server/Packets/TicketPackets.cpp4
-rw-r--r--src/server/game/Server/Packets/TicketPackets.h2
-rw-r--r--src/server/game/Server/Packets/VignettePackets.cpp3
-rw-r--r--src/server/game/Server/Packets/VignettePackets.h3
-rw-r--r--src/server/game/Server/Protocol/Opcodes.cpp21
-rw-r--r--src/server/game/Server/Protocol/Opcodes.h1973
-rw-r--r--src/server/game/Server/WorldSocket.cpp46
-rw-r--r--src/server/game/Server/WorldSocket.h12
-rw-r--r--src/server/game/Spells/SpellEffects.cpp7
-rw-r--r--src/server/game/Spells/SpellInfo.cpp7
-rw-r--r--src/tools/map_extractor/loadlib/DBFilesClientList.h9
43 files changed, 1790 insertions, 1516 deletions
diff --git a/src/common/Cryptography/Authentication/WorldPacketCrypt.cpp b/src/common/Cryptography/Authentication/WorldPacketCrypt.cpp
index 926f77d757d..498588c71f0 100644
--- a/src/common/Cryptography/Authentication/WorldPacketCrypt.cpp
+++ b/src/common/Cryptography/Authentication/WorldPacketCrypt.cpp
@@ -19,11 +19,11 @@
#include <array>
#include <cstring>
-WorldPacketCrypt::WorldPacketCrypt() : _clientDecrypt(false), _serverEncrypt(true), _clientCounter(0), _serverCounter(0), _initialized(false)
+WorldPacketCrypt::WorldPacketCrypt() : _clientDecrypt(false, 256), _serverEncrypt(true, 256), _clientCounter(0), _serverCounter(0), _initialized(false)
{
}
-void WorldPacketCrypt::Init(Trinity::Crypto::AES::Key const& key)
+void WorldPacketCrypt::Init(Key const& key)
{
_clientDecrypt.Init(key);
_serverEncrypt.Init(key);
diff --git a/src/common/Cryptography/Authentication/WorldPacketCrypt.h b/src/common/Cryptography/Authentication/WorldPacketCrypt.h
index 1936ff5ca5f..c36e2b9c93c 100644
--- a/src/common/Cryptography/Authentication/WorldPacketCrypt.h
+++ b/src/common/Cryptography/Authentication/WorldPacketCrypt.h
@@ -23,9 +23,11 @@
class TC_COMMON_API WorldPacketCrypt
{
public:
+ using Key = std::array<uint8, 32>;
+
WorldPacketCrypt();
- void Init(Trinity::Crypto::AES::Key const& key);
+ void Init(Key const& key);
bool PeekDecryptRecv(uint8* data, size_t length);
bool DecryptRecv(uint8* data, size_t length, Trinity::Crypto::AES::Tag& tag);
bool EncryptSend(uint8* data, size_t length, Trinity::Crypto::AES::Tag& tag);
diff --git a/src/server/database/Database/Implementation/HotfixDatabase.cpp b/src/server/database/Database/Implementation/HotfixDatabase.cpp
index f13443a976f..a7184a7cd7c 100644
--- a/src/server/database/Database/Implementation/HotfixDatabase.cpp
+++ b/src/server/database/Database/Implementation/HotfixDatabase.cpp
@@ -1115,8 +1115,9 @@ void HotfixDatabaseConnection::DoPrepareStatements()
// LfgDungeons.db2
PrepareStatement(HOTFIX_SEL_LFG_DUNGEONS, "SELECT ID, Name, Description, TypeID, Subtype, Faction, IconTextureFileID, RewardsBgTextureFileID, "
"PopupBgTextureFileID, ExpansionLevel, MapID, DifficultyID, MinGear, GroupID, OrderIndex, RequiredPlayerConditionId, RandomID, ScenarioID, "
- "FinalEncounterID, CountTank, CountHealer, CountDamage, MinCountTank, MinCountHealer, MinCountDamage, BonusReputationAmount, MentorItemLevel, "
- "MentorCharLevel, MaxPremadeGroupSize, ContentTuningID, Flags1, Flags2 FROM lfg_dungeons WHERE (`VerifiedBuild` > 0) = ?", CONNECTION_SYNCH);
+ "FinalEncounterID, CountTank, CountHealer, CountDamage, MinCountTank, MinCountHealer, MinCountDamage, MaxPremadeCountTank, "
+ "MaxPremadeCountHealer, MaxPremadeCountDamage, BonusReputationAmount, MentorItemLevel, MentorCharLevel, MaxPremadeGroupSize, ContentTuningID, "
+ "Flags1, Flags2 FROM lfg_dungeons WHERE (`VerifiedBuild` > 0) = ?", CONNECTION_SYNCH);
PREPARE_MAX_ID_STMT(HOTFIX_SEL_LFG_DUNGEONS, "SELECT MAX(ID) + 1 FROM lfg_dungeons", CONNECTION_SYNCH);
PREPARE_LOCALE_STMT(HOTFIX_SEL_LFG_DUNGEONS, "SELECT ID, Name_lang, Description_lang FROM lfg_dungeons_locale WHERE (`VerifiedBuild` > 0) = ?"
" AND locale = ?", CONNECTION_SYNCH);
@@ -1168,7 +1169,7 @@ void HotfixDatabaseConnection::DoPrepareStatements()
" AND locale = ?", CONNECTION_SYNCH);
// MapDifficulty.db2
- PrepareStatement(HOTFIX_SEL_MAP_DIFFICULTY, "SELECT ID, Message, DifficultyID, LockID, ResetInterval, MaxPlayers, ItemContext, "
+ PrepareStatement(HOTFIX_SEL_MAP_DIFFICULTY, "SELECT Message, ID, DifficultyID, LockID, ResetInterval, MaxPlayers, ItemContext, "
"ItemContextPickerID, Flags, ContentTuningID, WorldStateExpressionID, MapID FROM map_difficulty WHERE (`VerifiedBuild` > 0) = ?", CONNECTION_SYNCH);
PREPARE_MAX_ID_STMT(HOTFIX_SEL_MAP_DIFFICULTY, "SELECT MAX(ID) + 1 FROM map_difficulty", CONNECTION_SYNCH);
PREPARE_LOCALE_STMT(HOTFIX_SEL_MAP_DIFFICULTY, "SELECT ID, Message_lang FROM map_difficulty_locale WHERE (`VerifiedBuild` > 0) = ? AND locale = ?", CONNECTION_SYNCH);
@@ -1279,8 +1280,8 @@ void HotfixDatabaseConnection::DoPrepareStatements()
PREPARE_MAX_ID_STMT(HOTFIX_SEL_PHASE_X_PHASE_GROUP, "SELECT MAX(ID) + 1 FROM phase_x_phase_group", CONNECTION_SYNCH);
// PlayerCondition.db2
- PrepareStatement(HOTFIX_SEL_PLAYER_CONDITION, "SELECT ID, RaceMask, FailureDescription, ClassMask, SkillLogic, LanguageID, MinLanguage, "
- "MaxLanguage, MaxFactionID, MaxReputation, ReputationLogic, CurrentPvpFaction, PvpMedal, PrevQuestLogic, CurrQuestLogic, "
+ PrepareStatement(HOTFIX_SEL_PLAYER_CONDITION, "SELECT ID, RaceMask, FailureDescription, MinLevel, MaxLevel, ClassMask, SkillLogic, LanguageID, "
+ "MinLanguage, MaxLanguage, MaxFactionID, MaxReputation, ReputationLogic, CurrentPvpFaction, PvpMedal, PrevQuestLogic, CurrQuestLogic, "
"CurrentCompletedQuestLogic, SpellLogic, ItemLogic, ItemFlags, AuraSpellLogic, WorldStateExpressionID, WeatherID, PartyStatus, "
"LifetimeMaxPVPRank, AchievementLogic, Gender, NativeGender, AreaLogic, LfgLogic, CurrencyLogic, QuestKillID, QuestKillLogic, "
"MinExpansionLevel, MaxExpansionLevel, MinAvgItemLevel, MaxAvgItemLevel, MinAvgEquippedItemLevel, MaxAvgEquippedItemLevel, PhaseUseFlags, "
@@ -2003,7 +2004,7 @@ void HotfixDatabaseConnection::DoPrepareStatements()
// Vignette.db2
PrepareStatement(HOTFIX_SEL_VIGNETTE, "SELECT ID, Name, PlayerConditionID, VisibleTrackingQuestID, QuestFeedbackEffectID, Flags, MaxHeight, "
- "MinHeight, VignetteType, RewardQuestID, UiWidgetSetID FROM vignette WHERE (`VerifiedBuild` > 0) = ?", CONNECTION_SYNCH);
+ "MinHeight, VignetteType, RewardQuestID, UiWidgetSetID, UiMapPinInfoID, ObjectiveType FROM vignette WHERE (`VerifiedBuild` > 0) = ?", CONNECTION_SYNCH);
PREPARE_MAX_ID_STMT(HOTFIX_SEL_VIGNETTE, "SELECT MAX(ID) + 1 FROM vignette", CONNECTION_SYNCH);
PREPARE_LOCALE_STMT(HOTFIX_SEL_VIGNETTE, "SELECT ID, Name_lang FROM vignette_locale WHERE (`VerifiedBuild` > 0) = ? AND locale = ?", CONNECTION_SYNCH);
diff --git a/src/server/game/DataStores/DB2LoadInfo.h b/src/server/game/DataStores/DB2LoadInfo.h
index 27297ec5218..d50c7b2d36e 100644
--- a/src/server/game/DataStores/DB2LoadInfo.h
+++ b/src/server/game/DataStores/DB2LoadInfo.h
@@ -771,7 +771,7 @@ struct BroadcastTextLoadInfo
{ true, FT_INT, "LanguageID" },
{ true, FT_INT, "ConditionID" },
{ false, FT_SHORT, "EmotesID" },
- { false, FT_BYTE, "Flags" },
+ { false, FT_SHORT, "Flags" },
{ false, FT_INT, "ChatBubbleDurationMs" },
{ true, FT_INT, "VoiceOverPriorityID" },
{ false, FT_INT, "SoundKitID1" },
@@ -3549,7 +3549,7 @@ struct LanguagesLoadInfo
struct LfgDungeonsLoadInfo
{
- static constexpr DB2FieldMeta Fields[32] =
+ static constexpr DB2FieldMeta Fields[35] =
{
{ false, FT_INT, "ID" },
{ false, FT_STRING, "Name" },
@@ -3576,6 +3576,9 @@ struct LfgDungeonsLoadInfo
{ false, FT_BYTE, "MinCountTank" },
{ false, FT_BYTE, "MinCountHealer" },
{ false, FT_BYTE, "MinCountDamage" },
+ { false, FT_BYTE, "MaxPremadeCountTank" },
+ { false, FT_BYTE, "MaxPremadeCountHealer" },
+ { false, FT_BYTE, "MaxPremadeCountDamage" },
{ false, FT_SHORT, "BonusReputationAmount" },
{ false, FT_SHORT, "MentorItemLevel" },
{ false, FT_BYTE, "MentorCharLevel" },
@@ -3585,7 +3588,7 @@ struct LfgDungeonsLoadInfo
{ true, FT_INT, "Flags2" },
};
- static constexpr DB2LoadInfo Instance{ Fields, 32, &LFGDungeonsMeta::Instance, HOTFIX_SEL_LFG_DUNGEONS };
+ static constexpr DB2LoadInfo Instance{ Fields, 35, &LFGDungeonsMeta::Instance, HOTFIX_SEL_LFG_DUNGEONS };
};
struct LightLoadInfo
@@ -3807,8 +3810,8 @@ struct MapDifficultyLoadInfo
{
static constexpr DB2FieldMeta Fields[12] =
{
- { false, FT_INT, "ID" },
{ false, FT_STRING, "Message" },
+ { false, FT_INT, "ID" },
{ true, FT_INT, "DifficultyID" },
{ true, FT_INT, "LockID" },
{ false, FT_BYTE, "ResetInterval" },
@@ -4142,11 +4145,13 @@ struct PhaseXPhaseGroupLoadInfo
struct PlayerConditionLoadInfo
{
- static constexpr DB2FieldMeta Fields[160] =
+ static constexpr DB2FieldMeta Fields[162] =
{
{ false, FT_INT, "ID" },
{ true, FT_LONG, "RaceMask" },
{ false, FT_STRING, "FailureDescription" },
+ { false, FT_SHORT, "MinLevel" },
+ { false, FT_SHORT, "MaxLevel" },
{ true, FT_INT, "ClassMask" },
{ false, FT_INT, "SkillLogic" },
{ true, FT_INT, "LanguageID" },
@@ -4306,7 +4311,7 @@ struct PlayerConditionLoadInfo
{ false, FT_SHORT, "TraitNodeEntryMaxRank4" },
};
- static constexpr DB2LoadInfo Instance{ Fields, 160, &PlayerConditionMeta::Instance, HOTFIX_SEL_PLAYER_CONDITION };
+ static constexpr DB2LoadInfo Instance{ Fields, 162, &PlayerConditionMeta::Instance, HOTFIX_SEL_PLAYER_CONDITION };
};
struct PowerDisplayLoadInfo
@@ -6636,7 +6641,7 @@ struct VehicleSeatLoadInfo
struct VignetteLoadInfo
{
- static constexpr DB2FieldMeta Fields[11] =
+ static constexpr DB2FieldMeta Fields[13] =
{
{ false, FT_INT, "ID" },
{ false, FT_STRING, "Name" },
@@ -6649,9 +6654,11 @@ struct VignetteLoadInfo
{ true, FT_BYTE, "VignetteType" },
{ true, FT_INT, "RewardQuestID" },
{ true, FT_INT, "UiWidgetSetID" },
+ { true, FT_INT, "UiMapPinInfoID" },
+ { true, FT_BYTE, "ObjectiveType" },
};
- static constexpr DB2LoadInfo Instance{ Fields, 11, &VignetteMeta::Instance, HOTFIX_SEL_VIGNETTE };
+ static constexpr DB2LoadInfo Instance{ Fields, 13, &VignetteMeta::Instance, HOTFIX_SEL_VIGNETTE };
};
struct WmoAreaTableLoadInfo
diff --git a/src/server/game/DataStores/DB2Metadata.h b/src/server/game/DataStores/DB2Metadata.h
index b047b37deb5..650d485dd11 100644
--- a/src/server/game/DataStores/DB2Metadata.h
+++ b/src/server/game/DataStores/DB2Metadata.h
@@ -20,6 +20,47 @@
#include "DB2Meta.h"
+struct AccountStoreCategoryMeta
+{
+ static constexpr DB2MetaField Fields[6] =
+ {
+ { FT_STRING, 1, true },
+ { FT_INT, 1, false },
+ { FT_INT, 1, true },
+ { FT_INT, 1, true },
+ { FT_INT, 1, true },
+ { FT_BYTE, 1, false },
+ };
+
+ static constexpr DB2Meta Instance{ 6220124, 1, 6, 6, 0xE78C9607, Fields, 2 };
+};
+
+struct AccountStoreItemMeta
+{
+ static constexpr DB2MetaField Fields[17] =
+ {
+ { FT_STRING, 1, true },
+ { FT_STRING, 1, true },
+ { FT_INT, 1, false },
+ { FT_INT, 1, true },
+ { FT_INT, 1, true },
+ { FT_INT, 1, true },
+ { FT_INT, 1, true },
+ { FT_INT, 1, true },
+ { FT_INT, 1, true },
+ { FT_INT, 1, true },
+ { FT_INT, 1, true },
+ { FT_INT, 1, true },
+ { FT_INT, 1, true },
+ { FT_INT, 1, true },
+ { FT_INT, 1, true },
+ { FT_INT, 1, true },
+ { FT_INT, 1, true },
+ };
+
+ static constexpr DB2Meta Instance{ 6197817, 2, 17, 17, 0x818F4DA6, Fields, 3 };
+};
+
struct AchievementMeta
{
static constexpr DB2MetaField Fields[19] =
@@ -1467,7 +1508,7 @@ struct BroadcastTextMeta
{ FT_INT, 1, true },
{ FT_INT, 1, true },
{ FT_SHORT, 1, false },
- { FT_BYTE, 1, false },
+ { FT_SHORT, 1, false },
{ FT_INT, 1, false },
{ FT_INT, 1, true },
{ FT_INT, 2, false },
@@ -1475,7 +1516,7 @@ struct BroadcastTextMeta
{ FT_SHORT, 3, false },
};
- static constexpr DB2Meta Instance{ 841604, 2, 12, 12, 0xA5F4A303, Fields, -1 };
+ static constexpr DB2Meta Instance{ 841604, 2, 12, 12, 0x2EC89623, Fields, -1 };
};
struct BroadcastTextDurationMeta
@@ -4522,6 +4563,21 @@ struct GameClockDebugMeta
static constexpr DB2Meta Instance{ 2922072, -1, 1, 1, 0x0305FD3B, Fields, -1 };
};
+struct GameModeMeta
+{
+ static constexpr DB2MetaField Fields[6] =
+ {
+ { FT_STRING_NOT_LOCALIZED, 1, true },
+ { FT_INT, 1, true },
+ { FT_INT, 1, true },
+ { FT_INT, 1, true },
+ { FT_INT, 1, true },
+ { FT_INT, 1, true },
+ };
+
+ static constexpr DB2Meta Instance{ 5008306, -1, 6, 6, 0x02DC84DD, Fields, -1 };
+};
+
struct GameObjectAnimGroupMemberMeta
{
static constexpr DB2MetaField Fields[4] =
@@ -5847,7 +5903,7 @@ struct GroundEffectTextureMeta
struct GroupFinderActivityMeta
{
- static constexpr DB2MetaField Fields[15] =
+ static constexpr DB2MetaField Fields[19] =
{
{ FT_STRING, 1, true },
{ FT_STRING, 1, true },
@@ -5864,9 +5920,13 @@ struct GroupFinderActivityMeta
{ FT_BYTE, 1, false },
{ FT_INT, 1, true },
{ FT_INT, 1, true },
+ { FT_INT, 1, true },
+ { FT_INT, 1, true },
+ { FT_INT, 1, true },
+ { FT_INT, 1, true },
};
- static constexpr DB2Meta Instance{ 974813, -1, 15, 15, 0x395D3022, Fields, -1 };
+ static constexpr DB2Meta Instance{ 974813, -1, 19, 19, 0x1EE9C586, Fields, -1 };
};
struct GroupFinderActivityGrpMeta
@@ -6740,16 +6800,18 @@ struct ItemFixupActionMeta
struct ItemGroupIlvlScalingEntryMeta
{
- static constexpr DB2MetaField Fields[5] =
+ static constexpr DB2MetaField Fields[7] =
{
{ FT_INT, 1, true },
{ FT_INT, 1, true },
{ FT_FLOAT, 1, true },
{ FT_INT, 1, true },
{ FT_INT, 1, true },
+ { FT_FLOAT, 1, true },
+ { FT_INT, 1, true },
};
- static constexpr DB2Meta Instance{ 5015219, -1, 5, 4, 0x8C0C0A82, Fields, 4 };
+ static constexpr DB2Meta Instance{ 5015219, -1, 7, 6, 0x149B741B, Fields, 6 };
};
struct ItemGroupSoundsMeta
@@ -7449,7 +7511,7 @@ struct LFGDungeonGroupMeta
struct LFGDungeonsMeta
{
- static constexpr DB2MetaField Fields[30] =
+ static constexpr DB2MetaField Fields[33] =
{
{ FT_STRING, 1, true },
{ FT_STRING, 1, true },
@@ -7475,6 +7537,9 @@ struct LFGDungeonsMeta
{ FT_BYTE, 1, false },
{ FT_BYTE, 1, false },
{ FT_BYTE, 1, false },
+ { FT_BYTE, 1, false },
+ { FT_BYTE, 1, false },
+ { FT_BYTE, 1, false },
{ FT_SHORT, 1, false },
{ FT_SHORT, 1, false },
{ FT_BYTE, 1, false },
@@ -7483,7 +7548,7 @@ struct LFGDungeonsMeta
{ FT_INT, 2, true },
};
- static constexpr DB2Meta Instance{ 1361033, -1, 30, 30, 0x9274FE74, Fields, -1 };
+ static constexpr DB2Meta Instance{ 1361033, -1, 33, 33, 0x8CB09088, Fields, -1 };
};
struct LFGRoleRequirementMeta
@@ -8134,9 +8199,10 @@ struct MapChallengeModeMeta
struct MapDifficultyMeta
{
- static constexpr DB2MetaField Fields[11] =
+ static constexpr DB2MetaField Fields[12] =
{
{ FT_STRING, 1, true },
+ { FT_INT, 1, false },
{ FT_INT, 1, true },
{ FT_INT, 1, true },
{ FT_BYTE, 1, false },
@@ -8149,7 +8215,19 @@ struct MapDifficultyMeta
{ FT_INT, 1, true },
};
- static constexpr DB2Meta Instance{ 1367868, -1, 11, 10, 0xC18134AF, Fields, 10 };
+ static constexpr DB2Meta Instance{ 1367868, 1, 12, 11, 0xCF621FA3, Fields, 11 };
+};
+
+struct MapDifficultyRedirectMeta
+{
+ static constexpr DB2MetaField Fields[3] =
+ {
+ { FT_INT, 1, true },
+ { FT_INT, 1, true },
+ { FT_INT, 1, true },
+ };
+
+ static constexpr DB2Meta Instance{ 4913557, -1, 3, 2, 0xD5D43631, Fields, 2 };
};
struct MapDifficultyXConditionMeta
@@ -8319,17 +8397,6 @@ struct ModelRibbonQualityMeta
static constexpr DB2Meta Instance{ 1399953, -1, 2, 1, 0x6444FDE5, Fields, 1 };
};
-struct ModelSoundMeta
-{
- static constexpr DB2MetaField Fields[2] =
- {
- { FT_INT, 1, true },
- { FT_INT, 1, true },
- };
-
- static constexpr DB2Meta Instance{ 5393273, -1, 2, 2, 0xB38E4BBC, Fields, -1 };
-};
-
struct ModelSoundAnimEntryMeta
{
static constexpr DB2MetaField Fields[2] =
@@ -8341,27 +8408,6 @@ struct ModelSoundAnimEntryMeta
static constexpr DB2Meta Instance{ 5393274, -1, 2, 2, 0x324E0B06, Fields, 0 };
};
-struct ModelSoundEntryMeta
-{
- static constexpr DB2MetaField Fields[1] =
- {
- { FT_INT, 1, true },
- };
-
- static constexpr DB2Meta Instance{ 5393275, -1, 1, 1, 0x4A95649C, Fields, 0 };
-};
-
-struct ModelSoundOverrideMeta
-{
- static constexpr DB2MetaField Fields[2] =
- {
- { FT_INT, 1, true },
- { FT_INT, 1, true },
- };
-
- static constexpr DB2Meta Instance{ 5393276, -1, 2, 2, 0x1B5019C8, Fields, 0 };
-};
-
struct ModelSoundSettingsMeta
{
static constexpr DB2MetaField Fields[2] =
@@ -9479,10 +9525,12 @@ struct PlayerCompanionInfoMeta
struct PlayerConditionMeta
{
- static constexpr DB2MetaField Fields[84] =
+ static constexpr DB2MetaField Fields[86] =
{
{ FT_LONG, 1, true },
{ FT_STRING, 1, true },
+ { FT_SHORT, 1, false },
+ { FT_SHORT, 1, false },
{ FT_INT, 1, true },
{ FT_INT, 1, false },
{ FT_INT, 1, true },
@@ -9567,7 +9615,7 @@ struct PlayerConditionMeta
{ FT_SHORT, 4, false },
};
- static constexpr DB2Meta Instance{ 1045411, -1, 84, 84, 0x311C5FAE, Fields, -1 };
+ static constexpr DB2Meta Instance{ 1045411, -1, 86, 86, 0x395C1D28, Fields, -1 };
};
struct PlayerDataElementAccountMeta
@@ -9596,22 +9644,24 @@ struct PlayerDataElementCharacterMeta
struct PlayerDataFlagAccountMeta
{
- static constexpr DB2MetaField Fields[1] =
+ static constexpr DB2MetaField Fields[2] =
{
{ FT_INT, 1, true },
+ { FT_INT, 1, true },
};
- static constexpr DB2Meta Instance{ 5426706, -1, 1, 1, 0x2A4C0DDD, Fields, -1 };
+ static constexpr DB2Meta Instance{ 5426706, -1, 2, 2, 0x23ECE2B1, Fields, -1 };
};
struct PlayerDataFlagCharacterMeta
{
- static constexpr DB2MetaField Fields[1] =
+ static constexpr DB2MetaField Fields[2] =
{
{ FT_INT, 1, true },
+ { FT_INT, 1, true },
};
- static constexpr DB2Meta Instance{ 5426708, -1, 1, 1, 0x2A4C0DDD, Fields, -1 };
+ static constexpr DB2Meta Instance{ 5426708, -1, 2, 2, 0x23ECE2B1, Fields, -1 };
};
struct PlayerInteractionInfoMeta
@@ -10467,7 +10517,7 @@ struct RenownRewardsMeta
struct RenownRewardsPlunderstormMeta
{
- static constexpr DB2MetaField Fields[7] =
+ static constexpr DB2MetaField Fields[8] =
{
{ FT_STRING, 1, true },
{ FT_STRING, 1, true },
@@ -10476,9 +10526,10 @@ struct RenownRewardsPlunderstormMeta
{ FT_INT, 1, true },
{ FT_INT, 1, true },
{ FT_INT, 1, true },
+ { FT_INT, 1, true },
};
- static constexpr DB2Meta Instance{ 5662591, -1, 7, 7, 0x993A3149, Fields, 2 };
+ static constexpr DB2Meta Instance{ 5662591, -1, 8, 8, 0x30F69B43, Fields, 2 };
};
struct ResearchBranchMeta
@@ -13546,6 +13597,20 @@ struct UIArrowCalloutMeta
static constexpr DB2Meta Instance{ 5011999, 2, 9, 9, 0x11F1EB32, Fields, -1 };
};
+struct UIButtonMeta
+{
+ static constexpr DB2MetaField Fields[5] =
+ {
+ { FT_INT, 1, true },
+ { FT_INT, 1, true },
+ { FT_INT, 1, true },
+ { FT_INT, 1, true },
+ { FT_INT, 1, true },
+ };
+
+ static constexpr DB2Meta Instance{ 6237799, -1, 5, 5, 0x88A0B057, Fields, -1 };
+};
+
struct UIChromieTimeExpansionInfoMeta
{
static constexpr DB2MetaField Fields[13] =
@@ -13738,6 +13803,21 @@ struct UIGenericWidgetDisplayMeta
static constexpr DB2Meta Instance{ 4861207, 3, 10, 10, 0x712E00ED, Fields, -1 };
};
+struct UIMapPinInfoMeta
+{
+ static constexpr DB2MetaField Fields[6] =
+ {
+ { FT_INT, 1, true },
+ { FT_INT, 1, true },
+ { FT_INT, 1, true },
+ { FT_INT, 1, true },
+ { FT_INT, 1, true },
+ { FT_INT, 1, true },
+ };
+
+ static constexpr DB2Meta Instance{ 6237800, -1, 6, 6, 0xE8E5C344, Fields, -1 };
+};
+
struct UIModifiedInstanceMeta
{
static constexpr DB2MetaField Fields[8] =
@@ -14626,7 +14706,7 @@ struct VehicleUIIndicatorMeta
struct VignetteMeta
{
- static constexpr DB2MetaField Fields[10] =
+ static constexpr DB2MetaField Fields[12] =
{
{ FT_STRING, 1, true },
{ FT_INT, 1, false },
@@ -14638,9 +14718,11 @@ struct VignetteMeta
{ FT_BYTE, 1, true },
{ FT_INT, 1, true },
{ FT_INT, 1, true },
+ { FT_INT, 1, true },
+ { FT_BYTE, 1, true },
};
- static constexpr DB2Meta Instance{ 892861, -1, 10, 10, 0x5F633954, Fields, -1 };
+ static constexpr DB2Meta Instance{ 892861, -1, 12, 12, 0x1A5A691B, Fields, -1 };
};
struct VignetteUiWidgetSetMeta
diff --git a/src/server/game/DataStores/DB2Stores.cpp b/src/server/game/DataStores/DB2Stores.cpp
index dd2f9664503..95c0df3f9a0 100644
--- a/src/server/game/DataStores/DB2Stores.cpp
+++ b/src/server/game/DataStores/DB2Stores.cpp
@@ -1022,14 +1022,14 @@ uint32 DB2Manager::LoadStores(std::string const& dataPath, LocaleConstant defaul
}
// Check loaded DB2 files proper version
- if (!sAreaTableStore.LookupEntry(15913) || // last area added in 11.0.5 (57171)
- !sCharTitlesStore.LookupEntry(871) || // last char title added in 11.0.5 (57171)
+ if (!sAreaTableStore.LookupEntry(16108) || // last area added in 11.0.7 (58162)
+ !sCharTitlesStore.LookupEntry(876) || // last char title added in 11.0.7 (58162)
!sFlightCapabilityStore.LookupEntry(1) || // default flight capability (required)
- !sGemPropertiesStore.LookupEntry(4251) || // last gem property added in 11.0.5 (57171)
- !sItemStore.LookupEntry(233014) || // last item added in 11.0.5 (57171)
- !sItemExtendedCostStore.LookupEntry(9647) || // last item extended cost added in 11.0.5 (57171)
- !sMapStore.LookupEntry(2792) || // last map added in 11.0.5 (57171)
- !sSpellNameStore.LookupEntry(474722)) // last spell added in 11.0.5 (57171)
+ !sGemPropertiesStore.LookupEntry(4266) || // last gem property added in 11.0.7 (58162)
+ !sItemStore.LookupEntry(235551) || // last item added in 11.0.7 (58162)
+ !sItemExtendedCostStore.LookupEntry(9918) || // last item extended cost added in 11.0.7 (58162)
+ !sMapStore.LookupEntry(2829) || // last map added in 11.0.7 (58162)
+ !sSpellNameStore.LookupEntry(1218101)) // last spell added in 11.0.7 (58162)
{
TC_LOG_FATAL("misc", "You have _outdated_ DB2 files. Please extract correct versions from current using client.");
return 0;
diff --git a/src/server/game/DataStores/DB2Structure.h b/src/server/game/DataStores/DB2Structure.h
index 93c790259bb..9338ea3d072 100644
--- a/src/server/game/DataStores/DB2Structure.h
+++ b/src/server/game/DataStores/DB2Structure.h
@@ -545,7 +545,7 @@ struct BroadcastTextEntry
int32 LanguageID;
int32 ConditionID;
uint16 EmotesID;
- uint8 Flags;
+ uint16 Flags;
uint32 ChatBubbleDurationMs;
int32 VoiceOverPriorityID;
std::array<uint32, 2> SoundKitID;
@@ -2704,6 +2704,9 @@ struct LFGDungeonsEntry
uint8 MinCountTank;
uint8 MinCountHealer;
uint8 MinCountDamage;
+ uint8 MaxPremadeCountTank;
+ uint8 MaxPremadeCountHealer;
+ uint8 MaxPremadeCountDamage;
uint16 BonusReputationAmount;
uint16 MentorItemLevel;
uint8 MentorCharLevel;
@@ -2879,8 +2882,8 @@ struct MapChallengeModeEntry
struct MapDifficultyEntry
{
- uint32 ID;
LocalizedString Message; // m_message_lang (text showed when transfer to map failed)
+ uint32 ID;
int32 DifficultyID;
int32 LockID;
uint8 ResetInterval;
@@ -3119,6 +3122,8 @@ struct PlayerConditionEntry
uint32 ID;
Trinity::RaceMask<int64> RaceMask;
LocalizedString FailureDescription;
+ uint16 MinLevel;
+ uint16 MaxLevel;
int32 ClassMask;
uint32 SkillLogic;
int32 LanguageID;
@@ -4752,6 +4757,8 @@ struct VignetteEntry
int8 VignetteType;
int32 RewardQuestID;
int32 UiWidgetSetID;
+ int32 UiMapPinInfoID;
+ int8 ObjectiveType;
EnumFlag<VignetteFlags> GetFlags() const { return static_cast<VignetteFlags>(Flags); }
bool IsInfiniteAOI() const { return GetFlags().HasFlag(VignetteFlags::InfiniteAOI | VignetteFlags::ZoneInfiniteAOI); }
diff --git a/src/server/game/Entities/Item/Item.h b/src/server/game/Entities/Item/Item.h
index a9fd9d51417..6e508043025 100644
--- a/src/server/game/Entities/Item/Item.h
+++ b/src/server/game/Entities/Item/Item.h
@@ -211,10 +211,10 @@ class TC_GAME_API Item : public Object
void RemoveItemFlag(ItemFieldFlags flags) { RemoveUpdateFieldFlagValue(m_values.ModifyValue(&Item::m_itemData).ModifyValue(&UF::ItemData::DynamicFlags), flags); }
void ReplaceAllItemFlags(ItemFieldFlags flags) { SetUpdateFieldValue(m_values.ModifyValue(&Item::m_itemData).ModifyValue(&UF::ItemData::DynamicFlags), flags); }
- bool HasItemFlag2(ItemFieldFlags2 flag) const { return (*m_itemData->DynamicFlags2 & flag) != 0; }
- void SetItemFlag2(ItemFieldFlags2 flags) { SetUpdateFieldFlagValue(m_values.ModifyValue(&Item::m_itemData).ModifyValue(&UF::ItemData::DynamicFlags2), flags); }
- void RemoveItemFlag2(ItemFieldFlags2 flags) { RemoveUpdateFieldFlagValue(m_values.ModifyValue(&Item::m_itemData).ModifyValue(&UF::ItemData::DynamicFlags2), flags); }
- void ReplaceAllItemFlags2(ItemFieldFlags2 flags) { SetUpdateFieldValue(m_values.ModifyValue(&Item::m_itemData).ModifyValue(&UF::ItemData::DynamicFlags2), flags); }
+ bool HasItemZoneFlag(ItemZoneFlags flag) const { return (*m_itemData->ZoneFlags & flag) != 0; }
+ void SetItemZoneFlag(ItemZoneFlags flags) { SetUpdateFieldFlagValue(m_values.ModifyValue(&Item::m_itemData).ModifyValue(&UF::ItemData::ZoneFlags), flags); }
+ void RemoveItemZoneFlag(ItemZoneFlags flags) { RemoveUpdateFieldFlagValue(m_values.ModifyValue(&Item::m_itemData).ModifyValue(&UF::ItemData::ZoneFlags), flags); }
+ void ReplaceAllItemZoneFlags(ItemZoneFlags flags) { SetUpdateFieldValue(m_values.ModifyValue(&Item::m_itemData).ModifyValue(&UF::ItemData::ZoneFlags), flags); }
bool IsSoulBound() const { return HasItemFlag(ITEM_FIELD_FLAG_SOULBOUND); }
bool IsBoundAccountWide() const { return GetTemplate()->HasFlag(ITEM_FLAG_IS_BOUND_TO_ACCOUNT); }
diff --git a/src/server/game/Entities/Item/ItemDefines.h b/src/server/game/Entities/Item/ItemDefines.h
index 1d93f470c4a..e147b92c347 100644
--- a/src/server/game/Entities/Item/ItemDefines.h
+++ b/src/server/game/Entities/Item/ItemDefines.h
@@ -153,6 +153,7 @@ enum InventoryResult : uint8
EQUIP_ERR_CANT_DELETE_IN_ACCOUNT_BANK = 127,// Items must be moved out of the Warband Bank to be deleted.
EQUIP_ERR_BANK_NOT_ACCESSIBLE = 128,// This character does not have access to this bank.
EQUIP_ERR_CANT_TRADE_ACCOUNT_ITEM = 129,// You can't trade an item from the Warband bank.
+ EQUIP_ERR_ACCOUNT_MONEY_LOCKED = 130,// You cannot withdraw or deposit gold from the warband bank currently; please try again later.
};
// EnumUtils: DESCRIBE THIS
diff --git a/src/server/game/Entities/Item/ItemTemplate.h b/src/server/game/Entities/Item/ItemTemplate.h
index 1423e3d9f41..6dcdf08e85c 100644
--- a/src/server/game/Entities/Item/ItemTemplate.h
+++ b/src/server/game/Entities/Item/ItemTemplate.h
@@ -170,12 +170,12 @@ enum ItemFieldFlags : uint32
DEFINE_ENUM_FLAG(ItemFieldFlags);
-enum ItemFieldFlags2 : uint32
+enum ItemZoneFlags : uint32
{
ITEM_FIELD_FLAG2_EQUIPPED = 0x1
};
-DEFINE_ENUM_FLAG(ItemFieldFlags2);
+DEFINE_ENUM_FLAG(ItemZoneFlags);
enum ItemFlags : uint32
{
diff --git a/src/server/game/Entities/Object/Updates/UpdateFields.cpp b/src/server/game/Entities/Object/Updates/UpdateFields.cpp
index fffe07fa474..bb9f989156e 100644
--- a/src/server/game/Entities/Object/Updates/UpdateFields.cpp
+++ b/src/server/game/Entities/Object/Updates/UpdateFields.cpp
@@ -297,7 +297,7 @@ void ItemData::WriteCreate(ByteBuffer& data, EnumFlag<UpdateFieldFlag> fieldVisi
data << uint32(Gems.size());
if (fieldVisibilityFlags.HasFlag(UpdateFieldFlag::Owner))
{
- data << uint32(DynamicFlags2);
+ data << uint32(ZoneFlags);
}
data << ItemBonusKey;
if (fieldVisibilityFlags.HasFlag(UpdateFieldFlag::Owner))
@@ -440,7 +440,7 @@ void ItemData::WriteUpdate(ByteBuffer& data, Mask const& changesMask, bool ignor
}
if (changesMask[18])
{
- data << uint32(DynamicFlags2);
+ data << uint32(ZoneFlags);
}
if (changesMask[19])
{
@@ -496,7 +496,7 @@ void ItemData::ClearChangesMask()
Base::ClearChangesMask(ArtifactXP);
Base::ClearChangesMask(ItemAppearanceModID);
Base::ClearChangesMask(Modifiers);
- Base::ClearChangesMask(DynamicFlags2);
+ Base::ClearChangesMask(ZoneFlags);
Base::ClearChangesMask(ItemBonusKey);
Base::ClearChangesMask(DEBUGItemLevel);
Base::ClearChangesMask(SpellCharges);
@@ -3506,10 +3506,7 @@ void ActivePlayerUnk901::ClearChangesMask()
void QuestSession::WriteCreate(ByteBuffer& data, Player const* owner, Player const* receiver) const
{
data << Owner;
- for (uint32 i = 0; i < 1000; ++i)
- {
- data << uint64(QuestCompleted[i]);
- }
+ QuestCompleted->WriteCreate(data, owner, receiver);
}
void QuestSession::WriteUpdate(ByteBuffer& data, bool ignoreChangesMask, Player const* owner, Player const* receiver) const
@@ -3518,10 +3515,7 @@ void QuestSession::WriteUpdate(ByteBuffer& data, bool ignoreChangesMask, Player
if (ignoreChangesMask)
changesMask.SetAll();
- data.WriteBits(changesMask.GetBlocksMask(0), 32);
- for (uint32 i = 0; i < 32; ++i)
- if (changesMask.GetBlock(i))
- data.WriteBits(changesMask.GetBlock(i), 32);
+ data.WriteBits(changesMask.GetBlock(0), 3);
data.FlushBits();
if (changesMask[0])
@@ -3530,15 +3524,9 @@ void QuestSession::WriteUpdate(ByteBuffer& data, bool ignoreChangesMask, Player
{
data << Owner;
}
- }
- if (changesMask[2])
- {
- for (uint32 i = 0; i < 1000; ++i)
+ if (changesMask[2])
{
- if (changesMask[3 + i])
- {
- data << uint64(QuestCompleted[i]);
- }
+ QuestCompleted->WriteUpdate(data, ignoreChangesMask, owner, receiver);
}
}
}
diff --git a/src/server/game/Entities/Object/Updates/UpdateFields.h b/src/server/game/Entities/Object/Updates/UpdateFields.h
index 12677b88594..26ac4b7ca55 100644
--- a/src/server/game/Entities/Object/Updates/UpdateFields.h
+++ b/src/server/game/Entities/Object/Updates/UpdateFields.h
@@ -135,7 +135,7 @@ struct ItemData : public IsUpdateFieldStructureTag, public HasChangesMask<41>
UpdateField<uint64, 0, 15> ArtifactXP;
UpdateField<uint8, 0, 16> ItemAppearanceModID;
UpdateField<UF::ItemModList, 0, 17> Modifiers;
- UpdateField<uint32, 0, 18> DynamicFlags2;
+ UpdateField<uint32, 0, 18> ZoneFlags;
UpdateField<WorldPackets::Item::ItemBonusKey, 0, 19> ItemBonusKey;
UpdateField<uint16, 0, 20> DEBUGItemLevel;
UpdateFieldArray<int32, 5, 21, 22> SpellCharges;
@@ -757,10 +757,10 @@ struct ActivePlayerUnk901 : public IsUpdateFieldStructureTag, public HasChangesM
void ClearChangesMask();
};
-struct QuestSession : public IsUpdateFieldStructureTag, public HasChangesMask<1003>
+struct QuestSession : public IsUpdateFieldStructureTag, public HasChangesMask<3>
{
UpdateField<ObjectGuid, 0, 1> Owner;
- UpdateFieldArray<uint64, 1000, 2, 3> QuestCompleted;
+ UpdateField<UF::BitVector, 0, 2> QuestCompleted;
void WriteCreate(ByteBuffer& data, Player const* owner, Player const* receiver) const;
void WriteUpdate(ByteBuffer& data, bool ignoreChangesMask, Player const* owner, Player const* receiver) const;
diff --git a/src/server/game/Entities/Player/Player.cpp b/src/server/game/Entities/Player/Player.cpp
index 1ba57638285..373b4b42ed5 100644
--- a/src/server/game/Entities/Player/Player.cpp
+++ b/src/server/game/Entities/Player/Player.cpp
@@ -11728,7 +11728,7 @@ Item* Player::EquipItem(uint16 pos, Item* pItem, bool update)
}
}
- pItem->SetItemFlag2(ITEM_FIELD_FLAG2_EQUIPPED);
+ pItem->SetItemZoneFlag(ITEM_FIELD_FLAG2_EQUIPPED);
if (IsInWorld() && update)
{
@@ -11906,7 +11906,7 @@ void Player::QuickEquipItem(uint16 pos, Item* pItem)
uint8 slot = pos & 255;
VisualizeItem(slot, pItem);
- pItem->SetItemFlag2(ITEM_FIELD_FLAG2_EQUIPPED);
+ pItem->SetItemZoneFlag(ITEM_FIELD_FLAG2_EQUIPPED);
if (IsInWorld())
{
@@ -12003,7 +12003,7 @@ void Player::RemoveItem(uint8 bag, uint8 slot, bool update)
_ApplyItemMods(pItem, slot, false, update);
- pItem->RemoveItemFlag2(ITEM_FIELD_FLAG2_EQUIPPED);
+ pItem->RemoveItemZoneFlag(ITEM_FIELD_FLAG2_EQUIPPED);
// remove item dependent auras and casts (only weapon and armor slots)
if (slot < PROFESSION_SLOT_END)
@@ -16554,14 +16554,27 @@ void Player::SetQuestCompletedBit(uint32 questBit, bool completed)
return;
uint32 fieldOffset = (questBit - 1) / QUESTS_COMPLETED_BITS_PER_BLOCK;
- if (fieldOffset >= QUESTS_COMPLETED_BITS_SIZE)
- return;
-
uint64 flag = UI64LIT(1) << ((questBit - 1) % QUESTS_COMPLETED_BITS_PER_BLOCK);
+ if (fieldOffset < QUESTS_COMPLETED_BITS_SIZE)
+ {
+ if (completed)
+ SetUpdateFieldFlagValue(m_values.ModifyValue(&Player::m_activePlayerData).ModifyValue(&UF::ActivePlayerData::QuestCompleted, fieldOffset), flag);
+ else
+ RemoveUpdateFieldFlagValue(m_values.ModifyValue(&Player::m_activePlayerData).ModifyValue(&UF::ActivePlayerData::QuestCompleted, fieldOffset), flag);
+ }
+
if (completed)
- SetUpdateFieldFlagValue(m_values.ModifyValue(&Player::m_activePlayerData).ModifyValue(&UF::ActivePlayerData::QuestCompleted, fieldOffset), flag);
+ SetUpdateFieldFlagValue(m_values
+ .ModifyValue(&Player::m_activePlayerData)
+ .ModifyValue(&UF::ActivePlayerData::BitVectors)
+ .ModifyValue(&UF::BitVectors::Values, PLAYER_DATA_FLAG_CHARACTER_QUEST_COMPLETED_INDEX)
+ .ModifyValue(&UF::BitVector::Values, fieldOffset), flag);
else
- RemoveUpdateFieldFlagValue(m_values.ModifyValue(&Player::m_activePlayerData).ModifyValue(&UF::ActivePlayerData::QuestCompleted, fieldOffset), flag);
+ RemoveUpdateFieldFlagValue(m_values
+ .ModifyValue(&Player::m_activePlayerData)
+ .ModifyValue(&UF::ActivePlayerData::BitVectors)
+ .ModifyValue(&UF::BitVectors::Values, PLAYER_DATA_FLAG_CHARACTER_QUEST_COMPLETED_INDEX)
+ .ModifyValue(&UF::BitVector::Values, fieldOffset), flag);
}
void Player::AreaExploredOrEventHappens(uint32 questId)
diff --git a/src/server/game/Entities/Player/Player.h b/src/server/game/Entities/Player/Player.h
index 5ad1ba76f11..e19b492d2f1 100644
--- a/src/server/game/Entities/Player/Player.h
+++ b/src/server/game/Entities/Player/Player.h
@@ -156,6 +156,7 @@ enum PlayerDataFlagConstants
PLAYER_DATA_FLAG_ACCOUNT_COMBINED_QUESTS_INDEX = 6,
PLAYER_DATA_FLAG_ACCOUNT_COMBINED_QUEST_REWARDS_INDEX = 7,
PLAYER_DATA_FLAG_CHARACTER_CONTENTPUSH_INDEX = 8,
+ PLAYER_DATA_FLAG_CHARACTER_QUEST_COMPLETED_INDEX = 9,
};
enum SpellModType : uint8
diff --git a/src/server/game/Entities/Unit/Vignette.cpp b/src/server/game/Entities/Unit/Vignette.cpp
index 846446cea43..9ad9450f6ec 100644
--- a/src/server/game/Entities/Unit/Vignette.cpp
+++ b/src/server/game/Entities/Unit/Vignette.cpp
@@ -17,7 +17,7 @@
#include "Vignette.h"
#include "CellImpl.h"
-#include "DB2Stores.h"
+#include "DB2Structure.h"
#include "GridNotifiersImpl.h"
#include "VignettePackets.h"
@@ -35,6 +35,11 @@ void UpdatePosition(VignetteData& vignette, WorldObject const* owner)
}
}
+void UpdateHealth(VignetteData& vignette, Unit const* owner)
+{
+ vignette.HealthPercent = float(owner->GetHealth()) / float(owner->GetMaxHealth()); // converted to percentage in lua
+}
+
template<WorldPackets::Vignette::VignetteDataSet WorldPackets::Vignette::VignetteUpdate::* Field>
void SendVignetteUpdate(VignetteData const& vignette, WorldObject const* owner)
{
@@ -70,6 +75,7 @@ void VignetteData::FillPacket(WorldPackets::Vignette::VignetteDataSet& dataSet)
data.ZoneID = ZoneID;
data.WMOGroupID = WMOGroupID;
data.WMODoodadPlacementID = WMODoodadPlacementID;
+ data.HealthPercent = HealthPercent;
}
std::unique_ptr<VignetteData> Create(VignetteEntry const* vignetteData, WorldObject const* owner)
@@ -81,6 +87,8 @@ std::unique_ptr<VignetteData> Create(VignetteEntry const* vignetteData, WorldObj
vignette->Data = vignetteData;
vignette->ZoneID = owner->GetZoneId(); // not updateable
UpdatePosition(*vignette, owner);
+ if (Unit const* unitOwner = owner->ToUnit())
+ UpdateHealth(*vignette, unitOwner);
if (vignetteData->IsInfiniteAOI())
owner->GetMap()->AddInfiniteAOIVignette(vignette.get());
@@ -93,6 +101,8 @@ std::unique_ptr<VignetteData> Create(VignetteEntry const* vignetteData, WorldObj
void Update(VignetteData& vignette, WorldObject const* owner)
{
UpdatePosition(vignette, owner);
+ if (Unit const* unitOwner = owner->ToUnit())
+ UpdateHealth(vignette, unitOwner);
if (vignette.Data->IsInfiniteAOI())
vignette.NeedUpdate = true;
diff --git a/src/server/game/Entities/Unit/Vignette.h b/src/server/game/Entities/Unit/Vignette.h
index f318faff983..051f3d03267 100644
--- a/src/server/game/Entities/Unit/Vignette.h
+++ b/src/server/game/Entities/Unit/Vignette.h
@@ -42,6 +42,7 @@ struct VignetteData
uint32 ZoneID = 0;
uint32 WMOGroupID = 0;
uint32 WMODoodadPlacementID = 0;
+ float HealthPercent = 1.0f;
bool NeedUpdate = false;
void FillPacket(WorldPackets::Vignette::VignetteDataSet& dataSet) const;
diff --git a/src/server/game/Miscellaneous/SharedDefines.h b/src/server/game/Miscellaneous/SharedDefines.h
index 51cddd14e1f..0b35181694e 100644
--- a/src/server/game/Miscellaneous/SharedDefines.h
+++ b/src/server/game/Miscellaneous/SharedDefines.h
@@ -1555,6 +1555,13 @@ enum SpellEffectName
SPELL_EFFECT_331 = 331,
SPELL_EFFECT_332 = 332,
SPELL_EFFECT_333 = 333,
+ SPELL_EFFECT_334 = 334,
+ SPELL_EFFECT_335 = 335,
+ SPELL_EFFECT_336 = 336,
+ SPELL_EFFECT_337 = 337,
+ SPELL_EFFECT_338 = 338,
+ SPELL_EFFECT_UI_ACTION = 339,
+ SPELL_EFFECT_340 = 340,
TOTAL_SPELL_EFFECTS
};
@@ -7919,353 +7926,363 @@ enum class GameError : uint32
ERR_LFG_JOINED_WORLD_PVP_QUEUE = 821,
ERR_LFG_JOINED_BATTLEFIELD_QUEUE = 822,
ERR_LFG_JOINED_LIST = 823,
- ERR_LFG_LEFT_QUEUE = 824,
- ERR_LFG_LEFT_LIST = 825,
- ERR_LFG_ROLE_CHECK_ABORTED = 826,
- ERR_LFG_READY_CHECK_ABORTED = 827,
- ERR_LFG_CANT_USE_BATTLEGROUND = 828,
- ERR_LFG_CANT_USE_DUNGEONS = 829,
- ERR_LFG_REASON_TOO_MANY_LFG = 830,
- ERR_LFG_FARM_LIMIT = 831,
- ERR_LFG_NO_CROSS_FACTION_PARTIES = 832,
- ERR_INVALID_TELEPORT_LOCATION = 833,
- ERR_TOO_FAR_TO_INTERACT = 834,
- ERR_BATTLEGROUND_PLAYERS_FROM_DIFFERENT_REALMS = 835,
- ERR_DIFFICULTY_CHANGE_COOLDOWN_S = 836,
- ERR_DIFFICULTY_CHANGE_COMBAT_COOLDOWN_S = 837,
- ERR_DIFFICULTY_CHANGE_WORLDSTATE = 838,
- ERR_DIFFICULTY_CHANGE_ENCOUNTER = 839,
- ERR_DIFFICULTY_CHANGE_COMBAT = 840,
- ERR_DIFFICULTY_CHANGE_PLAYER_BUSY = 841,
- ERR_DIFFICULTY_CHANGE_PLAYER_ON_VEHICLE = 842,
- ERR_DIFFICULTY_CHANGE_ALREADY_STARTED = 843,
- ERR_DIFFICULTY_CHANGE_OTHER_HEROIC_S = 844,
- ERR_DIFFICULTY_CHANGE_HEROIC_INSTANCE_ALREADY_RUNNING = 845,
- ERR_ARENA_TEAM_PARTY_SIZE = 846,
- ERR_SOLO_SHUFFLE_WARGAME_GROUP_SIZE = 847,
- ERR_SOLO_SHUFFLE_WARGAME_GROUP_COMP = 848,
- ERR_SOLO_RBG_WARGAME_GROUP_SIZE = 849,
- ERR_SOLO_RBG_WARGAME_GROUP_COMP = 850,
- ERR_SOLO_MIN_ITEM_LEVEL = 851,
- ERR_PVP_PLAYER_ABANDONED = 852,
- ERR_BATTLEGROUND_JOIN_GROUP_QUEUE_WITHOUT_HEALER = 853,
- ERR_QUEST_FORCE_REMOVED_S = 854,
- ERR_ATTACK_NO_ACTIONS = 855,
- ERR_IN_RANDOM_BG = 856,
- ERR_IN_NON_RANDOM_BG = 857,
- ERR_BN_FRIEND_SELF = 858,
- ERR_BN_FRIEND_ALREADY = 859,
- ERR_BN_FRIEND_BLOCKED = 860,
- ERR_BN_FRIEND_LIST_FULL = 861,
- ERR_BN_FRIEND_REQUEST_SENT = 862,
- ERR_BN_BROADCAST_THROTTLE = 863,
- ERR_BG_DEVELOPER_ONLY = 864,
- ERR_CURRENCY_SPELL_SLOT_MISMATCH = 865,
- ERR_CURRENCY_NOT_TRADABLE = 866,
- ERR_REQUIRES_EXPANSION_S = 867,
- ERR_QUEST_FAILED_SPELL = 868,
- ERR_TALENT_FAILED_UNSPENT_TALENT_POINTS = 869,
- ERR_TALENT_FAILED_NOT_ENOUGH_TALENTS_IN_PRIMARY_TREE = 870,
- ERR_TALENT_FAILED_NO_PRIMARY_TREE_SELECTED = 871,
- ERR_TALENT_FAILED_CANT_REMOVE_TALENT = 872,
- ERR_TALENT_FAILED_UNKNOWN = 873,
- ERR_TALENT_FAILED_IN_COMBAT = 874,
- ERR_TALENT_FAILED_IN_PVP_MATCH = 875,
- ERR_TALENT_FAILED_IN_MYTHIC_PLUS = 876,
- ERR_WARGAME_REQUEST_FAILURE = 877,
- ERR_RANK_REQUIRES_AUTHENTICATOR = 878,
- ERR_GUILD_BANK_VOUCHER_FAILED = 879,
- ERR_WARGAME_REQUEST_SENT = 880,
- ERR_REQUIRES_ACHIEVEMENT_I = 881,
- ERR_REFUND_RESULT_EXCEED_MAX_CURRENCY = 882,
- ERR_CANT_BUY_QUANTITY = 883,
- ERR_ITEM_IS_BATTLE_PAY_LOCKED = 884,
- ERR_PARTY_ALREADY_IN_BATTLEGROUND_QUEUE = 885,
- ERR_PARTY_CONFIRMING_BATTLEGROUND_QUEUE = 886,
- ERR_BATTLEFIELD_TEAM_PARTY_SIZE = 887,
- ERR_INSUFF_TRACKED_CURRENCY_IS = 888,
- ERR_NOT_ON_TOURNAMENT_REALM = 889,
- ERR_GUILD_TRIAL_ACCOUNT_TRIAL = 890,
- ERR_GUILD_TRIAL_ACCOUNT_VETERAN = 891,
- ERR_GUILD_UNDELETABLE_DUE_TO_LEVEL = 892,
- ERR_CANT_DO_THAT_IN_A_GROUP = 893,
- ERR_GUILD_LEADER_REPLACED = 894,
- ERR_TRANSMOGRIFY_CANT_EQUIP = 895,
- ERR_TRANSMOGRIFY_INVALID_ITEM_TYPE = 896,
- ERR_TRANSMOGRIFY_NOT_SOULBOUND = 897,
- ERR_TRANSMOGRIFY_INVALID_SOURCE = 898,
- ERR_TRANSMOGRIFY_INVALID_DESTINATION = 899,
- ERR_TRANSMOGRIFY_MISMATCH = 900,
- ERR_TRANSMOGRIFY_LEGENDARY = 901,
- ERR_TRANSMOGRIFY_SAME_ITEM = 902,
- ERR_TRANSMOGRIFY_SAME_APPEARANCE = 903,
- ERR_TRANSMOGRIFY_NOT_EQUIPPED = 904,
- ERR_VOID_DEPOSIT_FULL = 905,
- ERR_VOID_WITHDRAW_FULL = 906,
- ERR_VOID_STORAGE_WRAPPED = 907,
- ERR_VOID_STORAGE_STACKABLE = 908,
- ERR_VOID_STORAGE_UNBOUND = 909,
- ERR_VOID_STORAGE_REPAIR = 910,
- ERR_VOID_STORAGE_CHARGES = 911,
- ERR_VOID_STORAGE_QUEST = 912,
- ERR_VOID_STORAGE_CONJURED = 913,
- ERR_VOID_STORAGE_MAIL = 914,
- ERR_VOID_STORAGE_BAG = 915,
- ERR_VOID_TRANSFER_STORAGE_FULL = 916,
- ERR_VOID_TRANSFER_INV_FULL = 917,
- ERR_VOID_TRANSFER_INTERNAL_ERROR = 918,
- ERR_VOID_TRANSFER_ITEM_INVALID = 919,
- ERR_DIFFICULTY_DISABLED_IN_LFG = 920,
- ERR_VOID_STORAGE_UNIQUE = 921,
- ERR_VOID_STORAGE_LOOT = 922,
- ERR_VOID_STORAGE_HOLIDAY = 923,
- ERR_VOID_STORAGE_DURATION = 924,
- ERR_VOID_STORAGE_LOAD_FAILED = 925,
- ERR_VOID_STORAGE_INVALID_ITEM = 926,
- ERR_VOID_STORAGE_ACCOUNT_ITEM = 927,
- ERR_PARENTAL_CONTROLS_CHAT_MUTED = 928,
- ERR_SOR_START_EXPERIENCE_INCOMPLETE = 929,
- ERR_SOR_INVALID_EMAIL = 930,
- ERR_SOR_INVALID_COMMENT = 931,
- ERR_CHALLENGE_MODE_RESET_COOLDOWN_S = 932,
- ERR_CHALLENGE_MODE_RESET_KEYSTONE = 933,
- ERR_PET_JOURNAL_ALREADY_IN_LOADOUT = 934,
- ERR_REPORT_SUBMITTED_SUCCESSFULLY = 935,
- ERR_REPORT_SUBMISSION_FAILED = 936,
- ERR_SUGGESTION_SUBMITTED_SUCCESSFULLY = 937,
- ERR_BUG_SUBMITTED_SUCCESSFULLY = 938,
- ERR_CHALLENGE_MODE_ENABLED = 939,
- ERR_CHALLENGE_MODE_DISABLED = 940,
- ERR_PETBATTLE_CREATE_FAILED = 941,
- ERR_PETBATTLE_NOT_HERE = 942,
- ERR_PETBATTLE_NOT_HERE_ON_TRANSPORT = 943,
- ERR_PETBATTLE_NOT_HERE_UNEVEN_GROUND = 944,
- ERR_PETBATTLE_NOT_HERE_OBSTRUCTED = 945,
- ERR_PETBATTLE_NOT_WHILE_IN_COMBAT = 946,
- ERR_PETBATTLE_NOT_WHILE_DEAD = 947,
- ERR_PETBATTLE_NOT_WHILE_FLYING = 948,
- ERR_PETBATTLE_TARGET_INVALID = 949,
- ERR_PETBATTLE_TARGET_OUT_OF_RANGE = 950,
- ERR_PETBATTLE_TARGET_NOT_CAPTURABLE = 951,
- ERR_PETBATTLE_NOT_A_TRAINER = 952,
- ERR_PETBATTLE_DECLINED = 953,
- ERR_PETBATTLE_IN_BATTLE = 954,
- ERR_PETBATTLE_INVALID_LOADOUT = 955,
- ERR_PETBATTLE_ALL_PETS_DEAD = 956,
- ERR_PETBATTLE_NO_PETS_IN_SLOTS = 957,
- ERR_PETBATTLE_NO_ACCOUNT_LOCK = 958,
- ERR_PETBATTLE_WILD_PET_TAPPED = 959,
- ERR_PETBATTLE_RESTRICTED_ACCOUNT = 960,
- ERR_PETBATTLE_OPPONENT_NOT_AVAILABLE = 961,
- ERR_PETBATTLE_NOT_WHILE_IN_MATCHED_BATTLE = 962,
- ERR_CANT_HAVE_MORE_PETS_OF_THAT_TYPE = 963,
- ERR_CANT_HAVE_MORE_PETS = 964,
- ERR_PVP_MAP_NOT_FOUND = 965,
- ERR_PVP_MAP_NOT_SET = 966,
- ERR_PETBATTLE_QUEUE_QUEUED = 967,
- ERR_PETBATTLE_QUEUE_ALREADY_QUEUED = 968,
- ERR_PETBATTLE_QUEUE_JOIN_FAILED = 969,
- ERR_PETBATTLE_QUEUE_JOURNAL_LOCK = 970,
- ERR_PETBATTLE_QUEUE_REMOVED = 971,
- ERR_PETBATTLE_QUEUE_PROPOSAL_DECLINED = 972,
- ERR_PETBATTLE_QUEUE_PROPOSAL_TIMEOUT = 973,
- ERR_PETBATTLE_QUEUE_OPPONENT_DECLINED = 974,
- ERR_PETBATTLE_QUEUE_REQUEUED_INTERNAL = 975,
- ERR_PETBATTLE_QUEUE_REQUEUED_REMOVED = 976,
- ERR_PETBATTLE_QUEUE_SLOT_LOCKED = 977,
- ERR_PETBATTLE_QUEUE_SLOT_EMPTY = 978,
- ERR_PETBATTLE_QUEUE_SLOT_NO_TRACKER = 979,
- ERR_PETBATTLE_QUEUE_SLOT_NO_SPECIES = 980,
- ERR_PETBATTLE_QUEUE_SLOT_CANT_BATTLE = 981,
- ERR_PETBATTLE_QUEUE_SLOT_REVOKED = 982,
- ERR_PETBATTLE_QUEUE_SLOT_DEAD = 983,
- ERR_PETBATTLE_QUEUE_SLOT_NO_PET = 984,
- ERR_PETBATTLE_QUEUE_NOT_WHILE_NEUTRAL = 985,
- ERR_PETBATTLE_GAME_TIME_LIMIT_WARNING = 986,
- ERR_PETBATTLE_GAME_ROUNDS_LIMIT_WARNING = 987,
- ERR_HAS_RESTRICTION = 988,
- ERR_ITEM_UPGRADE_ITEM_TOO_LOW_LEVEL = 989,
- ERR_ITEM_UPGRADE_NO_PATH = 990,
- ERR_ITEM_UPGRADE_NO_MORE_UPGRADES = 991,
- ERR_BONUS_ROLL_EMPTY = 992,
- ERR_CHALLENGE_MODE_FULL = 993,
- ERR_CHALLENGE_MODE_IN_PROGRESS = 994,
- ERR_CHALLENGE_MODE_INCORRECT_KEYSTONE = 995,
- ERR_BATTLETAG_FRIEND_NOT_FOUND = 996,
- ERR_BATTLETAG_FRIEND_NOT_VALID = 997,
- ERR_BATTLETAG_FRIEND_NOT_ALLOWED = 998,
- ERR_BATTLETAG_FRIEND_THROTTLED = 999,
- ERR_BATTLETAG_FRIEND_SUCCESS = 1000,
- ERR_PET_TOO_HIGH_LEVEL_TO_UNCAGE = 1001,
- ERR_PETBATTLE_INTERNAL = 1002,
- ERR_CANT_CAGE_PET_YET = 1003,
- ERR_NO_LOOT_IN_CHALLENGE_MODE = 1004,
- ERR_QUEST_PET_BATTLE_VICTORIES_PVP_II = 1005,
- ERR_ROLE_CHECK_ALREADY_IN_PROGRESS = 1006,
- ERR_RECRUIT_A_FRIEND_ACCOUNT_LIMIT = 1007,
- ERR_RECRUIT_A_FRIEND_FAILED = 1008,
- ERR_SET_LOOT_PERSONAL = 1009,
- ERR_SET_LOOT_METHOD_FAILED_COMBAT = 1010,
- ERR_REAGENT_BANK_FULL = 1011,
- ERR_REAGENT_BANK_LOCKED = 1012,
- ERR_GARRISON_BUILDING_EXISTS = 1013,
- ERR_GARRISON_INVALID_PLOT = 1014,
- ERR_GARRISON_INVALID_BUILDINGID = 1015,
- ERR_GARRISON_INVALID_PLOT_BUILDING = 1016,
- ERR_GARRISON_REQUIRES_BLUEPRINT = 1017,
- ERR_GARRISON_NOT_ENOUGH_CURRENCY = 1018,
- ERR_GARRISON_NOT_ENOUGH_GOLD = 1019,
- ERR_GARRISON_COMPLETE_MISSION_WRONG_FOLLOWER_TYPE = 1020,
- ERR_ALREADY_USING_LFG_LIST = 1021,
- ERR_RESTRICTED_ACCOUNT_LFG_LIST_TRIAL = 1022,
- ERR_TOY_USE_LIMIT_REACHED = 1023,
- ERR_TOY_ALREADY_KNOWN = 1024,
- ERR_TRANSMOG_SET_ALREADY_KNOWN = 1025,
- ERR_NOT_ENOUGH_CURRENCY = 1026,
- ERR_SPEC_IS_DISABLED = 1027,
- ERR_FEATURE_RESTRICTED_TRIAL = 1028,
- ERR_CANT_BE_OBLITERATED = 1029,
- ERR_CANT_BE_SCRAPPED = 1030,
- ERR_CANT_BE_RECRAFTED = 1031,
- ERR_ARTIFACT_RELIC_DOES_NOT_MATCH_ARTIFACT = 1032,
- ERR_MUST_EQUIP_ARTIFACT = 1033,
- ERR_CANT_DO_THAT_RIGHT_NOW = 1034,
- ERR_AFFECTING_COMBAT = 1035,
- ERR_EQUIPMENT_MANAGER_COMBAT_SWAP_S = 1036,
- ERR_EQUIPMENT_MANAGER_BAGS_FULL = 1037,
- ERR_EQUIPMENT_MANAGER_MISSING_ITEM_S = 1038,
- ERR_MOVIE_RECORDING_WARNING_PERF = 1039,
- ERR_MOVIE_RECORDING_WARNING_DISK_FULL = 1040,
- ERR_MOVIE_RECORDING_WARNING_NO_MOVIE = 1041,
- ERR_MOVIE_RECORDING_WARNING_REQUIREMENTS = 1042,
- ERR_MOVIE_RECORDING_WARNING_COMPRESSING = 1043,
- ERR_NO_CHALLENGE_MODE_REWARD = 1044,
- ERR_CLAIMED_CHALLENGE_MODE_REWARD = 1045,
- ERR_CHALLENGE_MODE_PERIOD_RESET_SS = 1046,
- ERR_CANT_DO_THAT_CHALLENGE_MODE_ACTIVE = 1047,
- ERR_TALENT_FAILED_REST_AREA = 1048,
- ERR_CANNOT_ABANDON_LAST_PET = 1049,
- ERR_TEST_CVAR_SET_SSS = 1050,
- ERR_QUEST_TURN_IN_FAIL_REASON = 1051,
- ERR_CLAIMED_CHALLENGE_MODE_REWARD_OLD = 1052,
- ERR_TALENT_GRANTED_BY_AURA = 1053,
- ERR_CHALLENGE_MODE_ALREADY_COMPLETE = 1054,
- ERR_GLYPH_TARGET_NOT_AVAILABLE = 1055,
- ERR_PVP_WARMODE_TOGGLE_ON = 1056,
- ERR_PVP_WARMODE_TOGGLE_OFF = 1057,
- ERR_SPELL_FAILED_LEVEL_REQUIREMENT = 1058,
- ERR_SPELL_FAILED_CANT_FLY_HERE = 1059,
- ERR_BATTLEGROUND_JOIN_REQUIRES_LEVEL = 1060,
- ERR_BATTLEGROUND_JOIN_DISQUALIFIED = 1061,
- ERR_BATTLEGROUND_JOIN_DISQUALIFIED_NO_NAME = 1062,
- ERR_VOICE_CHAT_GENERIC_UNABLE_TO_CONNECT = 1063,
- ERR_VOICE_CHAT_SERVICE_LOST = 1064,
- ERR_VOICE_CHAT_CHANNEL_NAME_TOO_SHORT = 1065,
- ERR_VOICE_CHAT_CHANNEL_NAME_TOO_LONG = 1066,
- ERR_VOICE_CHAT_CHANNEL_ALREADY_EXISTS = 1067,
- ERR_VOICE_CHAT_TARGET_NOT_FOUND = 1068,
- ERR_VOICE_CHAT_TOO_MANY_REQUESTS = 1069,
- ERR_VOICE_CHAT_PLAYER_SILENCED = 1070,
- ERR_VOICE_CHAT_PARENTAL_DISABLE_ALL = 1071,
- ERR_VOICE_CHAT_DISABLED = 1072,
- ERR_NO_PVP_REWARD = 1073,
- ERR_CLAIMED_PVP_REWARD = 1074,
- ERR_AZERITE_ESSENCE_SELECTION_FAILED_ESSENCE_NOT_UNLOCKED = 1075,
- ERR_AZERITE_ESSENCE_SELECTION_FAILED_CANT_REMOVE_ESSENCE = 1076,
- ERR_AZERITE_ESSENCE_SELECTION_FAILED_CONDITION_FAILED = 1077,
- ERR_AZERITE_ESSENCE_SELECTION_FAILED_REST_AREA = 1078,
- ERR_AZERITE_ESSENCE_SELECTION_FAILED_SLOT_LOCKED = 1079,
- ERR_AZERITE_ESSENCE_SELECTION_FAILED_NOT_AT_FORGE = 1080,
- ERR_AZERITE_ESSENCE_SELECTION_FAILED_HEART_LEVEL_TOO_LOW = 1081,
- ERR_AZERITE_ESSENCE_SELECTION_FAILED_NOT_EQUIPPED = 1082,
- ERR_SOCKETING_REQUIRES_PUNCHCARDRED_GEM = 1083,
- ERR_SOCKETING_PUNCHCARDRED_GEM_ONLY_IN_PUNCHCARDREDSLOT = 1084,
- ERR_SOCKETING_REQUIRES_PUNCHCARDYELLOW_GEM = 1085,
- ERR_SOCKETING_PUNCHCARDYELLOW_GEM_ONLY_IN_PUNCHCARDYELLOWSLOT = 1086,
- ERR_SOCKETING_REQUIRES_PUNCHCARDBLUE_GEM = 1087,
- ERR_SOCKETING_PUNCHCARDBLUE_GEM_ONLY_IN_PUNCHCARDBLUESLOT = 1088,
- ERR_SOCKETING_REQUIRES_DOMINATION_SHARD = 1089,
- ERR_SOCKETING_DOMINATION_SHARD_ONLY_IN_DOMINATIONSLOT = 1090,
- ERR_SOCKETING_REQUIRES_CYPHER_GEM = 1091,
- ERR_SOCKETING_CYPHER_GEM_ONLY_IN_CYPHERSLOT = 1092,
- ERR_SOCKETING_REQUIRES_TINKER_GEM = 1093,
- ERR_SOCKETING_TINKER_GEM_ONLY_IN_TINKERSLOT = 1094,
- ERR_SOCKETING_REQUIRES_PRIMORDIAL_GEM = 1095,
- ERR_SOCKETING_PRIMORDIAL_GEM_ONLY_IN_PRIMORDIALSLOT = 1096,
- ERR_SOCKETING_REQUIRES_FRAGRANCE_GEM = 1097,
- ERR_SOCKETING_FRAGRANCE_GEM_ONLY_IN_FRAGRANCESLOT = 1098,
- ERR_LEVEL_LINKING_RESULT_LINKED = 1099,
- ERR_LEVEL_LINKING_RESULT_UNLINKED = 1100,
- ERR_CLUB_FINDER_ERROR_POST_CLUB = 1101,
- ERR_CLUB_FINDER_ERROR_APPLY_CLUB = 1102,
- ERR_CLUB_FINDER_ERROR_RESPOND_APPLICANT = 1103,
- ERR_CLUB_FINDER_ERROR_CANCEL_APPLICATION = 1104,
- ERR_CLUB_FINDER_ERROR_TYPE_ACCEPT_APPLICATION = 1105,
- ERR_CLUB_FINDER_ERROR_TYPE_NO_INVITE_PERMISSIONS = 1106,
- ERR_CLUB_FINDER_ERROR_TYPE_NO_POSTING_PERMISSIONS = 1107,
- ERR_CLUB_FINDER_ERROR_TYPE_APPLICANT_LIST = 1108,
- ERR_CLUB_FINDER_ERROR_TYPE_APPLICANT_LIST_NO_PERM = 1109,
- ERR_CLUB_FINDER_ERROR_TYPE_FINDER_NOT_AVAILABLE = 1110,
- ERR_CLUB_FINDER_ERROR_TYPE_GET_POSTING_IDS = 1111,
- ERR_CLUB_FINDER_ERROR_TYPE_JOIN_APPLICATION = 1112,
- ERR_CLUB_FINDER_ERROR_TYPE_REALM_NOT_ELIGIBLE = 1113,
- ERR_CLUB_FINDER_ERROR_TYPE_FLAGGED_RENAME = 1114,
- ERR_CLUB_FINDER_ERROR_TYPE_FLAGGED_DESCRIPTION_CHANGE = 1115,
- ERR_ITEM_INTERACTION_NOT_ENOUGH_GOLD = 1116,
- ERR_ITEM_INTERACTION_NOT_ENOUGH_CURRENCY = 1117,
- ERR_ITEM_INTERACTION_NO_CONVERSION_OUTPUT = 1118,
- ERR_PLAYER_CHOICE_ERROR_PENDING_CHOICE = 1119,
- ERR_SOULBIND_INVALID_CONDUIT = 1120,
- ERR_SOULBIND_INVALID_CONDUIT_ITEM = 1121,
- ERR_SOULBIND_INVALID_TALENT = 1122,
- ERR_SOULBIND_DUPLICATE_CONDUIT = 1123,
- ERR_ACTIVATE_SOULBIND_S = 1124,
- ERR_ACTIVATE_SOULBIND_FAILED_REST_AREA = 1125,
- ERR_CANT_USE_PROFANITY = 1126,
- ERR_NOT_IN_PET_BATTLE = 1127,
- ERR_NOT_IN_NPE = 1128,
- ERR_NO_SPEC = 1129,
- ERR_NO_DOMINATIONSHARD_OVERWRITE = 1130,
- ERR_USE_WEEKLY_REWARDS_DISABLED = 1131,
- ERR_CROSS_FACTION_GROUP_JOINED = 1132,
- ERR_CANT_TARGET_UNFRIENDLY_IN_OVERWORLD = 1133,
- ERR_EQUIPABLESPELLS_SLOTS_FULL = 1134,
- ERR_ITEM_MOD_APPEARANCE_GROUP_ALREADY_KNOWN = 1135,
- ERR_CANT_BULK_SELL_ITEM_WITH_REFUND = 1136,
- ERR_NO_SOULBOUND_ITEM_IN_ACCOUNT_BANK = 1137,
- ERR_NO_REFUNDABLE_ITEM_IN_ACCOUNT_BANK = 1138,
- ERR_CANT_DELETE_IN_ACCOUNT_BANK = 1139,
- ERR_NO_IMMEDIATE_CONTAINER_IN_ACCOUNT_BANK = 1140,
- ERR_NO_OPEN_IMMEDIATE_CONTAINER_IN_ACCOUNT_BANK = 1141,
- ERR_CANT_TRADE_ACCOUNT_ITEM = 1142,
- ERR_NO_ACCOUNT_INVENTORY_LOCK = 1143,
- ERR_BANK_NOT_ACCESSIBLE = 1144,
- ERR_TOO_MANY_ACCOUNT_BANK_TABS = 1145,
- ERR_ACCOUNT_BANK_TAB_NOT_UNLOCKED = 1146,
- ERR_BANK_TAB_INVALID_NAME = 1147,
- ERR_BANK_TAB_INVALID_TEXT = 1148,
- ERR_WOW_LABS_PARTY_ERROR_TYPE_PARTY_IS_FULL = 1149,
- ERR_WOW_LABS_PARTY_ERROR_TYPE_MAX_INVITE_SENT = 1150,
- ERR_WOW_LABS_PARTY_ERROR_TYPE_PLAYER_ALREADY_INVITED = 1151,
- ERR_WOW_LABS_PARTY_ERROR_TYPE_PARTY_INVITE_INVALID = 1152,
- ERR_WOW_LABS_LOBBY_MATCHMAKER_ERROR_ENTER_QUEUE_FAILED = 1153,
- ERR_WOW_LABS_LOBBY_MATCHMAKER_ERROR_LEAVE_QUEUE_FAILED = 1154,
- ERR_TARGET_IS_SELF_FOUND_CANNOT_TRADE = 1155,
- ERR_PLAYER_IS_SELF_FOUND_CANNOT_TRADE = 1156,
- ERR_MAIL_RECEPIENT_IS_SELF_FOUND_CANNOT_RECEIVE_MAIL = 1157,
- ERR_PLAYER_IS_SELF_FOUND_CANNOT_SEND_MAIL = 1158,
- ERR_PLAYER_IS_SELF_FOUND_CANNOT_USE_AUCTION_HOUSE = 1159,
- ERR_MAIL_TARGET_CANNOT_RECEIVE_MAIL = 1160,
- ERR_REMIX_INVALID_TRANSFER_REQUEST = 1161,
- ERR_CURRENCY_TRANSFER_INVALID_CHARACTER = 1162,
- ERR_CURRENCY_TRANSFER_INVALID_CURRENCY = 1163,
- ERR_CURRENCY_TRANSFER_INSUFFICIENT_CURRENCY = 1164,
- ERR_CURRENCY_TRANSFER_MAX_QUANTITY = 1165,
- ERR_CURRENCY_TRANSFER_NO_VALID_SOURCE = 1166,
- ERR_CURRENCY_TRANSFER_CHARACTER_LOGGED_IN = 1167,
- ERR_CURRENCY_TRANSFER_SERVER_ERROR = 1168,
- ERR_CURRENCY_TRANSFER_UNMET_REQUIREMENTS = 1169,
- ERR_CURRENCY_TRANSFER_TRANSACTION_IN_PROGRESS = 1170,
+ ERR_QUEUED_PLUNDERSTORM = 824,
+ ERR_LFG_LEFT_QUEUE = 825,
+ ERR_LFG_LEFT_LIST = 826,
+ ERR_LFG_ROLE_CHECK_ABORTED = 827,
+ ERR_LFG_READY_CHECK_ABORTED = 828,
+ ERR_LFG_CANT_USE_BATTLEGROUND = 829,
+ ERR_LFG_CANT_USE_DUNGEONS = 830,
+ ERR_LFG_REASON_TOO_MANY_LFG = 831,
+ ERR_LFG_FARM_LIMIT = 832,
+ ERR_LFG_NO_CROSS_FACTION_PARTIES = 833,
+ ERR_INVALID_TELEPORT_LOCATION = 834,
+ ERR_TOO_FAR_TO_INTERACT = 835,
+ ERR_BATTLEGROUND_PLAYERS_FROM_DIFFERENT_REALMS = 836,
+ ERR_DIFFICULTY_CHANGE_COOLDOWN_S = 837,
+ ERR_DIFFICULTY_CHANGE_COMBAT_COOLDOWN_S = 838,
+ ERR_DIFFICULTY_CHANGE_WORLDSTATE = 839,
+ ERR_DIFFICULTY_CHANGE_ENCOUNTER = 840,
+ ERR_DIFFICULTY_CHANGE_COMBAT = 841,
+ ERR_DIFFICULTY_CHANGE_PLAYER_BUSY = 842,
+ ERR_DIFFICULTY_CHANGE_PLAYER_ON_VEHICLE = 843,
+ ERR_DIFFICULTY_CHANGE_ALREADY_STARTED = 844,
+ ERR_DIFFICULTY_CHANGE_OTHER_HEROIC_S = 845,
+ ERR_DIFFICULTY_CHANGE_HEROIC_INSTANCE_ALREADY_RUNNING = 846,
+ ERR_ARENA_TEAM_PARTY_SIZE = 847,
+ ERR_SOLO_SHUFFLE_WARGAME_GROUP_SIZE = 848,
+ ERR_SOLO_SHUFFLE_WARGAME_GROUP_COMP = 849,
+ ERR_SOLO_RBG_WARGAME_GROUP_SIZE = 850,
+ ERR_SOLO_RBG_WARGAME_GROUP_COMP = 851,
+ ERR_SOLO_MIN_ITEM_LEVEL = 852,
+ ERR_PVP_PLAYER_ABANDONED = 853,
+ ERR_BATTLEGROUND_JOIN_GROUP_QUEUE_WITHOUT_HEALER = 854,
+ ERR_QUEST_FORCE_REMOVED_S = 855,
+ ERR_ATTACK_NO_ACTIONS = 856,
+ ERR_IN_RANDOM_BG = 857,
+ ERR_IN_NON_RANDOM_BG = 858,
+ ERR_BN_FRIEND_SELF = 859,
+ ERR_BN_FRIEND_ALREADY = 860,
+ ERR_BN_FRIEND_BLOCKED = 861,
+ ERR_BN_FRIEND_LIST_FULL = 862,
+ ERR_BN_FRIEND_REQUEST_SENT = 863,
+ ERR_BN_BROADCAST_THROTTLE = 864,
+ ERR_BG_DEVELOPER_ONLY = 865,
+ ERR_CURRENCY_SPELL_SLOT_MISMATCH = 866,
+ ERR_CURRENCY_NOT_TRADABLE = 867,
+ ERR_REQUIRES_EXPANSION_S = 868,
+ ERR_QUEST_FAILED_SPELL = 869,
+ ERR_TALENT_FAILED_UNSPENT_TALENT_POINTS = 870,
+ ERR_TALENT_FAILED_NOT_ENOUGH_TALENTS_IN_PRIMARY_TREE = 871,
+ ERR_TALENT_FAILED_NO_PRIMARY_TREE_SELECTED = 872,
+ ERR_TALENT_FAILED_CANT_REMOVE_TALENT = 873,
+ ERR_TALENT_FAILED_UNKNOWN = 874,
+ ERR_TALENT_FAILED_IN_COMBAT = 875,
+ ERR_TALENT_FAILED_IN_PVP_MATCH = 876,
+ ERR_TALENT_FAILED_IN_MYTHIC_PLUS = 877,
+ ERR_WARGAME_REQUEST_FAILURE = 878,
+ ERR_RANK_REQUIRES_AUTHENTICATOR = 879,
+ ERR_GUILD_BANK_VOUCHER_FAILED = 880,
+ ERR_WARGAME_REQUEST_SENT = 881,
+ ERR_REQUIRES_ACHIEVEMENT_I = 882,
+ ERR_REFUND_RESULT_EXCEED_MAX_CURRENCY = 883,
+ ERR_CANT_BUY_QUANTITY = 884,
+ ERR_ITEM_IS_BATTLE_PAY_LOCKED = 885,
+ ERR_PARTY_ALREADY_IN_BATTLEGROUND_QUEUE = 886,
+ ERR_PARTY_CONFIRMING_BATTLEGROUND_QUEUE = 887,
+ ERR_BATTLEFIELD_TEAM_PARTY_SIZE = 888,
+ ERR_INSUFF_TRACKED_CURRENCY_IS = 889,
+ ERR_NOT_ON_TOURNAMENT_REALM = 890,
+ ERR_GUILD_TRIAL_ACCOUNT_TRIAL = 891,
+ ERR_GUILD_TRIAL_ACCOUNT_VETERAN = 892,
+ ERR_GUILD_UNDELETABLE_DUE_TO_LEVEL = 893,
+ ERR_CANT_DO_THAT_IN_A_GROUP = 894,
+ ERR_GUILD_LEADER_REPLACED = 895,
+ ERR_TRANSMOGRIFY_CANT_EQUIP = 896,
+ ERR_TRANSMOGRIFY_INVALID_ITEM_TYPE = 897,
+ ERR_TRANSMOGRIFY_NOT_SOULBOUND = 898,
+ ERR_TRANSMOGRIFY_INVALID_SOURCE = 899,
+ ERR_TRANSMOGRIFY_INVALID_DESTINATION = 900,
+ ERR_TRANSMOGRIFY_MISMATCH = 901,
+ ERR_TRANSMOGRIFY_LEGENDARY = 902,
+ ERR_TRANSMOGRIFY_SAME_ITEM = 903,
+ ERR_TRANSMOGRIFY_SAME_APPEARANCE = 904,
+ ERR_TRANSMOGRIFY_NOT_EQUIPPED = 905,
+ ERR_VOID_DEPOSIT_FULL = 906,
+ ERR_VOID_WITHDRAW_FULL = 907,
+ ERR_VOID_STORAGE_WRAPPED = 908,
+ ERR_VOID_STORAGE_STACKABLE = 909,
+ ERR_VOID_STORAGE_UNBOUND = 910,
+ ERR_VOID_STORAGE_REPAIR = 911,
+ ERR_VOID_STORAGE_CHARGES = 912,
+ ERR_VOID_STORAGE_QUEST = 913,
+ ERR_VOID_STORAGE_CONJURED = 914,
+ ERR_VOID_STORAGE_MAIL = 915,
+ ERR_VOID_STORAGE_BAG = 916,
+ ERR_VOID_TRANSFER_STORAGE_FULL = 917,
+ ERR_VOID_TRANSFER_INV_FULL = 918,
+ ERR_VOID_TRANSFER_INTERNAL_ERROR = 919,
+ ERR_VOID_TRANSFER_ITEM_INVALID = 920,
+ ERR_DIFFICULTY_DISABLED_IN_LFG = 921,
+ ERR_VOID_STORAGE_UNIQUE = 922,
+ ERR_VOID_STORAGE_LOOT = 923,
+ ERR_VOID_STORAGE_HOLIDAY = 924,
+ ERR_VOID_STORAGE_DURATION = 925,
+ ERR_VOID_STORAGE_LOAD_FAILED = 926,
+ ERR_VOID_STORAGE_INVALID_ITEM = 927,
+ ERR_VOID_STORAGE_ACCOUNT_ITEM = 928,
+ ERR_PARENTAL_CONTROLS_CHAT_MUTED = 929,
+ ERR_SOR_START_EXPERIENCE_INCOMPLETE = 930,
+ ERR_SOR_INVALID_EMAIL = 931,
+ ERR_SOR_INVALID_COMMENT = 932,
+ ERR_CHALLENGE_MODE_RESET_COOLDOWN_S = 933,
+ ERR_CHALLENGE_MODE_RESET_KEYSTONE = 934,
+ ERR_PET_JOURNAL_ALREADY_IN_LOADOUT = 935,
+ ERR_REPORT_SUBMITTED_SUCCESSFULLY = 936,
+ ERR_REPORT_SUBMISSION_FAILED = 937,
+ ERR_SUGGESTION_SUBMITTED_SUCCESSFULLY = 938,
+ ERR_BUG_SUBMITTED_SUCCESSFULLY = 939,
+ ERR_CHALLENGE_MODE_ENABLED = 940,
+ ERR_CHALLENGE_MODE_DISABLED = 941,
+ ERR_PETBATTLE_CREATE_FAILED = 942,
+ ERR_PETBATTLE_NOT_HERE = 943,
+ ERR_PETBATTLE_NOT_HERE_ON_TRANSPORT = 944,
+ ERR_PETBATTLE_NOT_HERE_UNEVEN_GROUND = 945,
+ ERR_PETBATTLE_NOT_HERE_OBSTRUCTED = 946,
+ ERR_PETBATTLE_NOT_WHILE_IN_COMBAT = 947,
+ ERR_PETBATTLE_NOT_WHILE_DEAD = 948,
+ ERR_PETBATTLE_NOT_WHILE_FLYING = 949,
+ ERR_PETBATTLE_TARGET_INVALID = 950,
+ ERR_PETBATTLE_TARGET_OUT_OF_RANGE = 951,
+ ERR_PETBATTLE_TARGET_NOT_CAPTURABLE = 952,
+ ERR_PETBATTLE_NOT_A_TRAINER = 953,
+ ERR_PETBATTLE_DECLINED = 954,
+ ERR_PETBATTLE_IN_BATTLE = 955,
+ ERR_PETBATTLE_INVALID_LOADOUT = 956,
+ ERR_PETBATTLE_ALL_PETS_DEAD = 957,
+ ERR_PETBATTLE_NO_PETS_IN_SLOTS = 958,
+ ERR_PETBATTLE_NO_ACCOUNT_LOCK = 959,
+ ERR_PETBATTLE_WILD_PET_TAPPED = 960,
+ ERR_PETBATTLE_RESTRICTED_ACCOUNT = 961,
+ ERR_PETBATTLE_OPPONENT_NOT_AVAILABLE = 962,
+ ERR_PETBATTLE_NOT_WHILE_IN_MATCHED_BATTLE = 963,
+ ERR_CANT_HAVE_MORE_PETS_OF_THAT_TYPE = 964,
+ ERR_CANT_HAVE_MORE_PETS = 965,
+ ERR_PVP_MAP_NOT_FOUND = 966,
+ ERR_PVP_MAP_NOT_SET = 967,
+ ERR_PETBATTLE_QUEUE_QUEUED = 968,
+ ERR_PETBATTLE_QUEUE_ALREADY_QUEUED = 969,
+ ERR_PETBATTLE_QUEUE_JOIN_FAILED = 970,
+ ERR_PETBATTLE_QUEUE_JOURNAL_LOCK = 971,
+ ERR_PETBATTLE_QUEUE_REMOVED = 972,
+ ERR_PETBATTLE_QUEUE_PROPOSAL_DECLINED = 973,
+ ERR_PETBATTLE_QUEUE_PROPOSAL_TIMEOUT = 974,
+ ERR_PETBATTLE_QUEUE_OPPONENT_DECLINED = 975,
+ ERR_PETBATTLE_QUEUE_REQUEUED_INTERNAL = 976,
+ ERR_PETBATTLE_QUEUE_REQUEUED_REMOVED = 977,
+ ERR_PETBATTLE_QUEUE_SLOT_LOCKED = 978,
+ ERR_PETBATTLE_QUEUE_SLOT_EMPTY = 979,
+ ERR_PETBATTLE_QUEUE_SLOT_NO_TRACKER = 980,
+ ERR_PETBATTLE_QUEUE_SLOT_NO_SPECIES = 981,
+ ERR_PETBATTLE_QUEUE_SLOT_CANT_BATTLE = 982,
+ ERR_PETBATTLE_QUEUE_SLOT_REVOKED = 983,
+ ERR_PETBATTLE_QUEUE_SLOT_DEAD = 984,
+ ERR_PETBATTLE_QUEUE_SLOT_NO_PET = 985,
+ ERR_PETBATTLE_QUEUE_NOT_WHILE_NEUTRAL = 986,
+ ERR_PETBATTLE_GAME_TIME_LIMIT_WARNING = 987,
+ ERR_PETBATTLE_GAME_ROUNDS_LIMIT_WARNING = 988,
+ ERR_HAS_RESTRICTION = 989,
+ ERR_ITEM_UPGRADE_ITEM_TOO_LOW_LEVEL = 990,
+ ERR_ITEM_UPGRADE_NO_PATH = 991,
+ ERR_ITEM_UPGRADE_NO_MORE_UPGRADES = 992,
+ ERR_BONUS_ROLL_EMPTY = 993,
+ ERR_CHALLENGE_MODE_FULL = 994,
+ ERR_CHALLENGE_MODE_IN_PROGRESS = 995,
+ ERR_CHALLENGE_MODE_INCORRECT_KEYSTONE = 996,
+ ERR_BATTLETAG_FRIEND_NOT_FOUND = 997,
+ ERR_BATTLETAG_FRIEND_NOT_VALID = 998,
+ ERR_BATTLETAG_FRIEND_NOT_ALLOWED = 999,
+ ERR_BATTLETAG_FRIEND_THROTTLED = 1000,
+ ERR_BATTLETAG_FRIEND_SUCCESS = 1001,
+ ERR_PET_TOO_HIGH_LEVEL_TO_UNCAGE = 1002,
+ ERR_PETBATTLE_INTERNAL = 1003,
+ ERR_CANT_CAGE_PET_YET = 1004,
+ ERR_NO_LOOT_IN_CHALLENGE_MODE = 1005,
+ ERR_QUEST_PET_BATTLE_VICTORIES_PVP_II = 1006,
+ ERR_ROLE_CHECK_ALREADY_IN_PROGRESS = 1007,
+ ERR_RECRUIT_A_FRIEND_ACCOUNT_LIMIT = 1008,
+ ERR_RECRUIT_A_FRIEND_FAILED = 1009,
+ ERR_SET_LOOT_PERSONAL = 1010,
+ ERR_SET_LOOT_METHOD_FAILED_COMBAT = 1011,
+ ERR_REAGENT_BANK_FULL = 1012,
+ ERR_REAGENT_BANK_LOCKED = 1013,
+ ERR_GARRISON_BUILDING_EXISTS = 1014,
+ ERR_GARRISON_INVALID_PLOT = 1015,
+ ERR_GARRISON_INVALID_BUILDINGID = 1016,
+ ERR_GARRISON_INVALID_PLOT_BUILDING = 1017,
+ ERR_GARRISON_REQUIRES_BLUEPRINT = 1018,
+ ERR_GARRISON_NOT_ENOUGH_CURRENCY = 1019,
+ ERR_GARRISON_NOT_ENOUGH_GOLD = 1020,
+ ERR_GARRISON_COMPLETE_MISSION_WRONG_FOLLOWER_TYPE = 1021,
+ ERR_ALREADY_USING_LFG_LIST = 1022,
+ ERR_RESTRICTED_ACCOUNT_LFG_LIST_TRIAL = 1023,
+ ERR_TOY_USE_LIMIT_REACHED = 1024,
+ ERR_TOY_ALREADY_KNOWN = 1025,
+ ERR_TRANSMOG_SET_ALREADY_KNOWN = 1026,
+ ERR_NOT_ENOUGH_CURRENCY = 1027,
+ ERR_SPEC_IS_DISABLED = 1028,
+ ERR_FEATURE_RESTRICTED_TRIAL = 1029,
+ ERR_CANT_BE_OBLITERATED = 1030,
+ ERR_CANT_BE_SCRAPPED = 1031,
+ ERR_CANT_BE_RECRAFTED = 1032,
+ ERR_ARTIFACT_RELIC_DOES_NOT_MATCH_ARTIFACT = 1033,
+ ERR_MUST_EQUIP_ARTIFACT = 1034,
+ ERR_CANT_DO_THAT_RIGHT_NOW = 1035,
+ ERR_AFFECTING_COMBAT = 1036,
+ ERR_EQUIPMENT_MANAGER_COMBAT_SWAP_S = 1037,
+ ERR_EQUIPMENT_MANAGER_BAGS_FULL = 1038,
+ ERR_EQUIPMENT_MANAGER_MISSING_ITEM_S = 1039,
+ ERR_MOVIE_RECORDING_WARNING_PERF = 1040,
+ ERR_MOVIE_RECORDING_WARNING_DISK_FULL = 1041,
+ ERR_MOVIE_RECORDING_WARNING_NO_MOVIE = 1042,
+ ERR_MOVIE_RECORDING_WARNING_REQUIREMENTS = 1043,
+ ERR_MOVIE_RECORDING_WARNING_COMPRESSING = 1044,
+ ERR_NO_CHALLENGE_MODE_REWARD = 1045,
+ ERR_CLAIMED_CHALLENGE_MODE_REWARD = 1046,
+ ERR_CHALLENGE_MODE_PERIOD_RESET_SS = 1047,
+ ERR_CANT_DO_THAT_CHALLENGE_MODE_ACTIVE = 1048,
+ ERR_TALENT_FAILED_REST_AREA = 1049,
+ ERR_CANNOT_ABANDON_LAST_PET = 1050,
+ ERR_TEST_CVAR_SET_SSS = 1051,
+ ERR_QUEST_TURN_IN_FAIL_REASON = 1052,
+ ERR_CLAIMED_CHALLENGE_MODE_REWARD_OLD = 1053,
+ ERR_TALENT_GRANTED_BY_AURA = 1054,
+ ERR_CHALLENGE_MODE_ALREADY_COMPLETE = 1055,
+ ERR_GLYPH_TARGET_NOT_AVAILABLE = 1056,
+ ERR_PVP_WARMODE_TOGGLE_ON = 1057,
+ ERR_PVP_WARMODE_TOGGLE_OFF = 1058,
+ ERR_SPELL_FAILED_LEVEL_REQUIREMENT = 1059,
+ ERR_SPELL_FAILED_CANT_FLY_HERE = 1060,
+ ERR_BATTLEGROUND_JOIN_REQUIRES_LEVEL = 1061,
+ ERR_BATTLEGROUND_JOIN_DISQUALIFIED = 1062,
+ ERR_BATTLEGROUND_JOIN_DISQUALIFIED_NO_NAME = 1063,
+ ERR_VOICE_CHAT_GENERIC_UNABLE_TO_CONNECT = 1064,
+ ERR_VOICE_CHAT_SERVICE_LOST = 1065,
+ ERR_VOICE_CHAT_CHANNEL_NAME_TOO_SHORT = 1066,
+ ERR_VOICE_CHAT_CHANNEL_NAME_TOO_LONG = 1067,
+ ERR_VOICE_CHAT_CHANNEL_ALREADY_EXISTS = 1068,
+ ERR_VOICE_CHAT_TARGET_NOT_FOUND = 1069,
+ ERR_VOICE_CHAT_TOO_MANY_REQUESTS = 1070,
+ ERR_VOICE_CHAT_PLAYER_SILENCED = 1071,
+ ERR_VOICE_CHAT_PARENTAL_DISABLE_ALL = 1072,
+ ERR_VOICE_CHAT_DISABLED = 1073,
+ ERR_NO_PVP_REWARD = 1074,
+ ERR_CLAIMED_PVP_REWARD = 1075,
+ ERR_AZERITE_ESSENCE_SELECTION_FAILED_ESSENCE_NOT_UNLOCKED = 1076,
+ ERR_AZERITE_ESSENCE_SELECTION_FAILED_CANT_REMOVE_ESSENCE = 1077,
+ ERR_AZERITE_ESSENCE_SELECTION_FAILED_CONDITION_FAILED = 1078,
+ ERR_AZERITE_ESSENCE_SELECTION_FAILED_REST_AREA = 1079,
+ ERR_AZERITE_ESSENCE_SELECTION_FAILED_SLOT_LOCKED = 1080,
+ ERR_AZERITE_ESSENCE_SELECTION_FAILED_NOT_AT_FORGE = 1081,
+ ERR_AZERITE_ESSENCE_SELECTION_FAILED_HEART_LEVEL_TOO_LOW = 1082,
+ ERR_AZERITE_ESSENCE_SELECTION_FAILED_NOT_EQUIPPED = 1083,
+ ERR_SOCKETING_REQUIRES_PUNCHCARDRED_GEM = 1084,
+ ERR_SOCKETING_PUNCHCARDRED_GEM_ONLY_IN_PUNCHCARDREDSLOT = 1085,
+ ERR_SOCKETING_REQUIRES_PUNCHCARDYELLOW_GEM = 1086,
+ ERR_SOCKETING_PUNCHCARDYELLOW_GEM_ONLY_IN_PUNCHCARDYELLOWSLOT = 1087,
+ ERR_SOCKETING_REQUIRES_PUNCHCARDBLUE_GEM = 1088,
+ ERR_SOCKETING_PUNCHCARDBLUE_GEM_ONLY_IN_PUNCHCARDBLUESLOT = 1089,
+ ERR_SOCKETING_REQUIRES_DOMINATION_SHARD = 1090,
+ ERR_SOCKETING_DOMINATION_SHARD_ONLY_IN_DOMINATIONSLOT = 1091,
+ ERR_SOCKETING_REQUIRES_CYPHER_GEM = 1092,
+ ERR_SOCKETING_CYPHER_GEM_ONLY_IN_CYPHERSLOT = 1093,
+ ERR_SOCKETING_REQUIRES_TINKER_GEM = 1094,
+ ERR_SOCKETING_TINKER_GEM_ONLY_IN_TINKERSLOT = 1095,
+ ERR_SOCKETING_REQUIRES_PRIMORDIAL_GEM = 1096,
+ ERR_SOCKETING_PRIMORDIAL_GEM_ONLY_IN_PRIMORDIALSLOT = 1097,
+ ERR_SOCKETING_REQUIRES_FRAGRANCE_GEM = 1098,
+ ERR_SOCKETING_FRAGRANCE_GEM_ONLY_IN_FRAGRANCESLOT = 1099,
+ ERR_SOCKETING_REQUIRES_SINGING_THUNDER_GEM = 1100,
+ ERR_SOCKETING_SINGINGTHUNDER_GEM_ONLY_IN_SINGINGTHUNDERSLOT = 1101,
+ ERR_SOCKETING_REQUIRES_SINGING_SEA_GEM = 1102,
+ ERR_SOCKETING_SINGINGSEA_GEM_ONLY_IN_SINGINGSEASLOT = 1103,
+ ERR_SOCKETING_REQUIRES_SINGING_WIND_GEM = 1104,
+ ERR_SOCKETING_SINGINGWIND_GEM_ONLY_IN_SINGINGWINDSLOT = 1105,
+ ERR_LEVEL_LINKING_RESULT_LINKED = 1106,
+ ERR_LEVEL_LINKING_RESULT_UNLINKED = 1107,
+ ERR_CLUB_FINDER_ERROR_POST_CLUB = 1108,
+ ERR_CLUB_FINDER_ERROR_APPLY_CLUB = 1109,
+ ERR_CLUB_FINDER_ERROR_RESPOND_APPLICANT = 1110,
+ ERR_CLUB_FINDER_ERROR_CANCEL_APPLICATION = 1111,
+ ERR_CLUB_FINDER_ERROR_TYPE_ACCEPT_APPLICATION = 1112,
+ ERR_CLUB_FINDER_ERROR_TYPE_NO_INVITE_PERMISSIONS = 1113,
+ ERR_CLUB_FINDER_ERROR_TYPE_NO_POSTING_PERMISSIONS = 1114,
+ ERR_CLUB_FINDER_ERROR_TYPE_APPLICANT_LIST = 1115,
+ ERR_CLUB_FINDER_ERROR_TYPE_APPLICANT_LIST_NO_PERM = 1116,
+ ERR_CLUB_FINDER_ERROR_TYPE_FINDER_NOT_AVAILABLE = 1117,
+ ERR_CLUB_FINDER_ERROR_TYPE_GET_POSTING_IDS = 1118,
+ ERR_CLUB_FINDER_ERROR_TYPE_JOIN_APPLICATION = 1119,
+ ERR_CLUB_FINDER_ERROR_TYPE_REALM_NOT_ELIGIBLE = 1120,
+ ERR_CLUB_FINDER_ERROR_TYPE_FLAGGED_RENAME = 1121,
+ ERR_CLUB_FINDER_ERROR_TYPE_FLAGGED_DESCRIPTION_CHANGE = 1122,
+ ERR_ITEM_INTERACTION_NOT_ENOUGH_GOLD = 1123,
+ ERR_ITEM_INTERACTION_NOT_ENOUGH_CURRENCY = 1124,
+ ERR_ITEM_INTERACTION_NO_CONVERSION_OUTPUT = 1125,
+ ERR_PLAYER_CHOICE_ERROR_PENDING_CHOICE = 1126,
+ ERR_SOULBIND_INVALID_CONDUIT = 1127,
+ ERR_SOULBIND_INVALID_CONDUIT_ITEM = 1128,
+ ERR_SOULBIND_INVALID_TALENT = 1129,
+ ERR_SOULBIND_DUPLICATE_CONDUIT = 1130,
+ ERR_ACTIVATE_SOULBIND_S = 1131,
+ ERR_ACTIVATE_SOULBIND_FAILED_REST_AREA = 1132,
+ ERR_CANT_USE_PROFANITY = 1133,
+ ERR_NOT_IN_PET_BATTLE = 1134,
+ ERR_NOT_IN_NPE = 1135,
+ ERR_NO_SPEC = 1136,
+ ERR_NO_DOMINATIONSHARD_OVERWRITE = 1137,
+ ERR_USE_WEEKLY_REWARDS_DISABLED = 1138,
+ ERR_CROSS_FACTION_GROUP_JOINED = 1139,
+ ERR_CANT_TARGET_UNFRIENDLY_IN_OVERWORLD = 1140,
+ ERR_EQUIPABLESPELLS_SLOTS_FULL = 1141,
+ ERR_ITEM_MOD_APPEARANCE_GROUP_ALREADY_KNOWN = 1142,
+ ERR_CANT_BULK_SELL_ITEM_WITH_REFUND = 1143,
+ ERR_NO_SOULBOUND_ITEM_IN_ACCOUNT_BANK = 1144,
+ ERR_NO_REFUNDABLE_ITEM_IN_ACCOUNT_BANK = 1145,
+ ERR_CANT_DELETE_IN_ACCOUNT_BANK = 1146,
+ ERR_NO_IMMEDIATE_CONTAINER_IN_ACCOUNT_BANK = 1147,
+ ERR_NO_OPEN_IMMEDIATE_CONTAINER_IN_ACCOUNT_BANK = 1148,
+ ERR_CANT_TRADE_ACCOUNT_ITEM = 1149,
+ ERR_NO_ACCOUNT_INVENTORY_LOCK = 1150,
+ ERR_BANK_NOT_ACCESSIBLE = 1151,
+ ERR_TOO_MANY_ACCOUNT_BANK_TABS = 1152,
+ ERR_ACCOUNT_BANK_TAB_NOT_UNLOCKED = 1153,
+ ERR_ACCOUNT_MONEY_LOCKED = 1154,
+ ERR_BANK_TAB_INVALID_NAME = 1155,
+ ERR_BANK_TAB_INVALID_TEXT = 1156,
+ ERR_WOW_LABS_PARTY_ERROR_TYPE_PARTY_IS_FULL = 1157,
+ ERR_WOW_LABS_PARTY_ERROR_TYPE_MAX_INVITE_SENT = 1158,
+ ERR_WOW_LABS_PARTY_ERROR_TYPE_PLAYER_ALREADY_INVITED = 1159,
+ ERR_WOW_LABS_PARTY_ERROR_TYPE_PARTY_INVITE_INVALID = 1160,
+ ERR_WOW_LABS_LOBBY_MATCHMAKER_ERROR_ENTER_QUEUE_FAILED = 1161,
+ ERR_WOW_LABS_LOBBY_MATCHMAKER_ERROR_LEAVE_QUEUE_FAILED = 1162,
+ ERR_WOW_LABS_SET_WOW_LABS_AREA_ID_FAILED = 1163,
+ ERR_PLUNDERSTORM_CANNOT_QUEUE = 1164,
+ ERR_TARGET_IS_SELF_FOUND_CANNOT_TRADE = 1165,
+ ERR_PLAYER_IS_SELF_FOUND_CANNOT_TRADE = 1166,
+ ERR_MAIL_RECEPIENT_IS_SELF_FOUND_CANNOT_RECEIVE_MAIL = 1167,
+ ERR_PLAYER_IS_SELF_FOUND_CANNOT_SEND_MAIL = 1168,
+ ERR_PLAYER_IS_SELF_FOUND_CANNOT_USE_AUCTION_HOUSE = 1169,
+ ERR_MAIL_TARGET_CANNOT_RECEIVE_MAIL = 1170,
+ ERR_REMIX_INVALID_TRANSFER_REQUEST = 1171,
+ ERR_CURRENCY_TRANSFER_INVALID_CHARACTER = 1172,
+ ERR_CURRENCY_TRANSFER_INVALID_CURRENCY = 1173,
+ ERR_CURRENCY_TRANSFER_INSUFFICIENT_CURRENCY = 1174,
+ ERR_CURRENCY_TRANSFER_MAX_QUANTITY = 1175,
+ ERR_CURRENCY_TRANSFER_NO_VALID_SOURCE = 1176,
+ ERR_CURRENCY_TRANSFER_CHARACTER_LOGGED_IN = 1177,
+ ERR_CURRENCY_TRANSFER_SERVER_ERROR = 1178,
+ ERR_CURRENCY_TRANSFER_UNMET_REQUIREMENTS = 1179,
+ ERR_CURRENCY_TRANSFER_TRANSACTION_IN_PROGRESS = 1180,
};
enum class MountResult : uint32
diff --git a/src/server/game/Server/Packets/AuthenticationPackets.cpp b/src/server/game/Server/Packets/AuthenticationPackets.cpp
index 34f18b00027..a820dcda90c 100644
--- a/src/server/game/Server/Packets/AuthenticationPackets.cpp
+++ b/src/server/game/Server/Packets/AuthenticationPackets.cpp
@@ -345,12 +345,13 @@ void WorldPackets::Auth::EnterEncryptedMode::ShutdownEncryption()
EnterEncryptedModeSigner.reset();
}
-std::array<uint8, 16> constexpr EnableEncryptionSeed = { 0x90, 0x9C, 0xD0, 0x50, 0x5A, 0x2C, 0x14, 0xDD, 0x5C, 0x2C, 0xC0, 0x64, 0x14, 0xF3, 0xFE, 0xC9 };
+std::array<uint8, 32> constexpr EnableEncryptionSeed = { 0x66, 0xBE, 0x29, 0x79, 0xEF, 0xF2, 0xD5, 0xB5, 0x61, 0x53, 0xF6, 0x5F, 0x45, 0xAE, 0x81, 0xCB,
+ 0x32, 0xEC, 0x94, 0xEC, 0x75, 0xB3, 0x5F, 0x44, 0x6A, 0x63, 0x43, 0x67, 0x17, 0x20, 0x44, 0x34 };
std::array<uint8, 16> constexpr EnableEncryptionContext = { 0xA7, 0x1F, 0xB6, 0x9B, 0xC9, 0x7C, 0xDD, 0x96, 0xE9, 0xBB, 0xB8, 0x21, 0x39, 0x8D, 0x5A, 0xD4 };
WorldPacket const* WorldPackets::Auth::EnterEncryptedMode::Write()
{
- std::array<uint8, 32> toSign = Trinity::Crypto::HMAC_SHA256::GetDigestOf(EncryptionKey,
+ std::array<uint8, 64> toSign = Trinity::Crypto::HMAC_SHA512::GetDigestOf(EncryptionKey,
std::array<uint8, 1>{uint8(Enabled ? 1 : 0)},
EnableEncryptionSeed);
diff --git a/src/server/game/Server/Packets/AuthenticationPackets.h b/src/server/game/Server/Packets/AuthenticationPackets.h
index 2c9dd00c374..257f93fbc17 100644
--- a/src/server/game/Server/Packets/AuthenticationPackets.h
+++ b/src/server/game/Server/Packets/AuthenticationPackets.h
@@ -69,7 +69,7 @@ namespace WorldPackets
WorldPacket const* Write() override;
- std::array<uint8, 16> Challenge = { };
+ std::array<uint8, 32> Challenge = { };
std::array<uint32, 8> DosChallenge = { };
uint8 DosZeroBits = 0;
};
@@ -88,7 +88,7 @@ namespace WorldPackets
uint32 RegionID = 0;
uint32 BattlegroupID = 0;
uint32 RealmID = 0;
- std::array<uint8, 16> LocalChallenge;
+ std::array<uint8, 32> LocalChallenge;
std::array<uint8, DigestLength> Digest;
uint64 DosResponse = 0;
std::string RealmJoinTicket;
@@ -269,7 +269,7 @@ namespace WorldPackets
uint64 DosResponse = 0;
uint64 Key = 0;
- std::array<uint8, 16> LocalChallenge;
+ std::array<uint8, 32> LocalChallenge;
std::array<uint8, DigestLength> Digest;
private:
@@ -302,14 +302,14 @@ namespace WorldPackets
static bool InitializeEncryption();
static void ShutdownEncryption();
- EnterEncryptedMode(std::array<uint8, 16> const& encryptionKey, bool enabled) : ServerPacket(SMSG_ENTER_ENCRYPTED_MODE, 256 + 1),
+ EnterEncryptedMode(std::array<uint8, 32> const& encryptionKey, bool enabled) : ServerPacket(SMSG_ENTER_ENCRYPTED_MODE, 256 + 1),
EncryptionKey(encryptionKey), Enabled(enabled)
{
}
WorldPacket const* Write() override;
- std::array<uint8, 16> const& EncryptionKey;
+ std::array<uint8, 32> const& EncryptionKey;
bool Enabled = false;
};
}
diff --git a/src/server/game/Server/Packets/ChannelPackets.cpp b/src/server/game/Server/Packets/ChannelPackets.cpp
index 22024120928..56a7b25437f 100644
--- a/src/server/game/Server/Packets/ChannelPackets.cpp
+++ b/src/server/game/Server/Packets/ChannelPackets.cpp
@@ -67,6 +67,7 @@ WorldPacket const* WorldPackets::Channel::ChannelNotifyJoined::Write()
_worldPacket.WriteBits(_Channel.length(), 7);
_worldPacket.WriteBits(ChannelWelcomeMsg.length(), 11);
_worldPacket << uint32(_ChannelFlags);
+ _worldPacket << uint8(Unknown1107);
_worldPacket << int32(ChatChannelID);
_worldPacket << uint64(InstanceID);
_worldPacket << ChannelGUID;
diff --git a/src/server/game/Server/Packets/ChannelPackets.h b/src/server/game/Server/Packets/ChannelPackets.h
index 2e7f834cf27..ec9701029fa 100644
--- a/src/server/game/Server/Packets/ChannelPackets.h
+++ b/src/server/game/Server/Packets/ChannelPackets.h
@@ -81,6 +81,7 @@ namespace WorldPackets
uint32 _ChannelFlags = 0; ///< @see enum ChannelFlags
std::string _Channel; ///< Channel Name
ObjectGuid ChannelGUID;
+ uint8 Unknown1107 = 0;
};
class ChannelNotifyLeft final : public ServerPacket
diff --git a/src/server/game/Server/Packets/CharacterPackets.cpp b/src/server/game/Server/Packets/CharacterPackets.cpp
index 701560c9183..9acbfe3654c 100644
--- a/src/server/game/Server/Packets/CharacterPackets.cpp
+++ b/src/server/game/Server/Packets/CharacterPackets.cpp
@@ -620,6 +620,47 @@ WorldPacket const* LogoutResponse::Write()
return &_worldPacket;
}
+ByteBuffer& operator<<(ByteBuffer& data, GameModeData const& gameModeData)
+{
+ data << int32(gameModeData.Unknown_1107_0);
+ data << gameModeData.Guid;
+ data << uint8(gameModeData.GameMode);
+ data << int32(gameModeData.MapID);
+ data << uint8(gameModeData.Unknown_1107_1);
+ data << uint8(gameModeData.Unknown_1107_2);
+ data << uint8(gameModeData.Unknown_1107_3);
+ data << uint32(gameModeData.Customizations.size());
+ data << uint32(gameModeData.Unknown_1107_4.size());
+
+ for (ChrCustomizationChoice const& customization : gameModeData.Customizations)
+ data << customization;
+
+ for (ChrCustomizationChoice const& customization : gameModeData.Unknown_1107_4)
+ data << customization;
+
+ return data;
+}
+
+ByteBuffer& operator<<(ByteBuffer& data, SwitchGameModeData const& switchGameModeData)
+{
+ data << Bits<1>(switchGameModeData.IsFastLogin);
+ data << switchGameModeData.Current;
+ data << switchGameModeData.New;
+
+ return data;
+}
+
+WorldPacket const* LogoutComplete::Write()
+{
+ _worldPacket << OptionalInit(SwitchGameMode);
+ _worldPacket.FlushBits();
+
+ if (SwitchGameMode)
+ _worldPacket << *SwitchGameMode;
+
+ return &_worldPacket;
+}
+
void LoadingScreenNotify::Read()
{
_worldPacket >> MapID;
diff --git a/src/server/game/Server/Packets/CharacterPackets.h b/src/server/game/Server/Packets/CharacterPackets.h
index 186b0abf969..8313523d56a 100644
--- a/src/server/game/Server/Packets/CharacterPackets.h
+++ b/src/server/game/Server/Packets/CharacterPackets.h
@@ -603,12 +603,34 @@ namespace WorldPackets
bool Instant = false;
};
+ struct GameModeData
+ {
+ int32 Unknown_1107_0 = 0;
+ ObjectGuid Guid;
+ uint8 GameMode = 0;
+ int32 MapID = 0;
+ uint8 Unknown_1107_1 = 0;
+ uint8 Unknown_1107_2 = 0;
+ uint8 Unknown_1107_3 = 0;
+ Array<ChrCustomizationChoice, 250> Customizations;
+ Array<ChrCustomizationChoice, 250> Unknown_1107_4;
+ };
+
+ struct SwitchGameModeData
+ {
+ bool IsFastLogin = false;
+ GameModeData Current;
+ GameModeData New;
+ };
+
class LogoutComplete final : public ServerPacket
{
public:
- LogoutComplete() : ServerPacket(SMSG_LOGOUT_COMPLETE, 0) { }
+ LogoutComplete() : ServerPacket(SMSG_LOGOUT_COMPLETE, 1) { }
- WorldPacket const* Write() override { return &_worldPacket; }
+ WorldPacket const* Write() override;
+
+ std::unique_ptr<SwitchGameModeData> SwitchGameMode;
};
class LogoutCancel final : public ClientPacket
diff --git a/src/server/game/Server/Packets/LFGPackets.cpp b/src/server/game/Server/Packets/LFGPackets.cpp
index adb44e0cc64..d3d715aec5e 100644
--- a/src/server/game/Server/Packets/LFGPackets.cpp
+++ b/src/server/game/Server/Packets/LFGPackets.cpp
@@ -343,7 +343,7 @@ ByteBuffer& operator<<(ByteBuffer& data, LfgBootInfo const& lfgBootInfo)
data << Bits<1>(lfgBootInfo.VotePassed);
data << Bits<1>(lfgBootInfo.MyVoteCompleted);
data << Bits<1>(lfgBootInfo.MyVote);
- data << SizedString::BitsSize<8>(lfgBootInfo.Reason);
+ data << SizedString::BitsSize<9>(lfgBootInfo.Reason);
data << lfgBootInfo.Target;
data << uint32(lfgBootInfo.TotalVotes);
data << uint32(lfgBootInfo.BootVotes);
diff --git a/src/server/game/Server/Packets/MiscPackets.cpp b/src/server/game/Server/Packets/MiscPackets.cpp
index eb97e77cb28..182e378135a 100644
--- a/src/server/game/Server/Packets/MiscPackets.cpp
+++ b/src/server/game/Server/Packets/MiscPackets.cpp
@@ -317,16 +317,13 @@ WorldPacket const* WorldPackets::Misc::Weather::Write()
void WorldPackets::Misc::StandStateChange::Read()
{
- uint32 state;
- _worldPacket >> state;
-
- StandState = UnitStandStateType(state);
+ _worldPacket >> As<uint8>(StandState);
}
WorldPacket const* WorldPackets::Misc::StandStateUpdate::Write()
{
- _worldPacket << uint32(AnimKitID);
_worldPacket << uint8(State);
+ _worldPacket << uint32(AnimKitID);
return &_worldPacket;
}
@@ -350,7 +347,7 @@ WorldPacket const* WorldPackets::Misc::PlayerBound::Write()
WorldPacket const* WorldPackets::Misc::StartMirrorTimer::Write()
{
- _worldPacket << int32(Timer);
+ _worldPacket << uint8(Timer);
_worldPacket << int32(Value);
_worldPacket << int32(MaxValue);
_worldPacket << int32(Scale);
@@ -363,7 +360,7 @@ WorldPacket const* WorldPackets::Misc::StartMirrorTimer::Write()
WorldPacket const* WorldPackets::Misc::PauseMirrorTimer::Write()
{
- _worldPacket << int32(Timer);
+ _worldPacket << uint8(Timer);
_worldPacket.WriteBit(Paused);
_worldPacket.FlushBits();
@@ -372,7 +369,7 @@ WorldPacket const* WorldPackets::Misc::PauseMirrorTimer::Write()
WorldPacket const* WorldPackets::Misc::StopMirrorTimer::Write()
{
- _worldPacket << int32(Timer);
+ _worldPacket << uint8(Timer);
return &_worldPacket;
}
diff --git a/src/server/game/Server/Packets/MiscPackets.h b/src/server/game/Server/Packets/MiscPackets.h
index 0630c794ca8..cbcb02006bb 100644
--- a/src/server/game/Server/Packets/MiscPackets.h
+++ b/src/server/game/Server/Packets/MiscPackets.h
@@ -448,15 +448,15 @@ namespace WorldPackets
class StartMirrorTimer final : public ServerPacket
{
public:
- StartMirrorTimer() : ServerPacket(SMSG_START_MIRROR_TIMER, 21) { }
- StartMirrorTimer(int32 timer, int32 value, int32 maxValue, int32 scale, int32 spellID, bool paused) :
- ServerPacket(SMSG_START_MIRROR_TIMER, 21), Scale(scale), MaxValue(maxValue), Timer(timer), SpellID(spellID), Value(value), Paused(paused) { }
+ StartMirrorTimer() : ServerPacket(SMSG_START_MIRROR_TIMER, 1 + 4 + 4 + 4 + 4 + 1) { }
+ StartMirrorTimer(uint8 timer, int32 value, int32 maxValue, int32 scale, int32 spellID, bool paused) :
+ ServerPacket(SMSG_START_MIRROR_TIMER, 1 + 4 + 4 + 4 + 4 + 1), Timer(timer), Scale(scale), MaxValue(maxValue), SpellID(spellID), Value(value), Paused(paused) { }
WorldPacket const* Write() override;
+ uint8 Timer = 0;
int32 Scale = 0;
int32 MaxValue = 0;
- int32 Timer = 0;
int32 SpellID = 0;
int32 Value = 0;
bool Paused = false;
@@ -465,24 +465,24 @@ namespace WorldPackets
class PauseMirrorTimer final : public ServerPacket
{
public:
- PauseMirrorTimer() : ServerPacket(SMSG_PAUSE_MIRROR_TIMER, 5) { }
- PauseMirrorTimer(int32 timer, bool paused) : ServerPacket(SMSG_PAUSE_MIRROR_TIMER, 5), Paused(paused), Timer(timer) { }
+ PauseMirrorTimer() : ServerPacket(SMSG_PAUSE_MIRROR_TIMER, 1 + 1) { }
+ PauseMirrorTimer(uint8 timer, bool paused) : ServerPacket(SMSG_PAUSE_MIRROR_TIMER, 1 + 1), Timer(timer), Paused(paused) { }
WorldPacket const* Write() override;
+ uint8 Timer = 0;
bool Paused = true;
- int32 Timer = 0;
};
class StopMirrorTimer final : public ServerPacket
{
public:
- StopMirrorTimer() : ServerPacket(SMSG_STOP_MIRROR_TIMER, 4) { }
- StopMirrorTimer(int32 timer) : ServerPacket(SMSG_STOP_MIRROR_TIMER, 4), Timer(timer) { }
+ StopMirrorTimer() : ServerPacket(SMSG_STOP_MIRROR_TIMER, 1) { }
+ StopMirrorTimer(uint8 timer) : ServerPacket(SMSG_STOP_MIRROR_TIMER, 1), Timer(timer) { }
WorldPacket const* Write() override;
- int32 Timer = 0;
+ uint8 Timer = 0;
};
class ExplorationExperience final : public ServerPacket
diff --git a/src/server/game/Server/Packets/PerksProgramPacketsCommon.cpp b/src/server/game/Server/Packets/PerksProgramPacketsCommon.cpp
index e5b53bc3670..8fa44a2c761 100644
--- a/src/server/game/Server/Packets/PerksProgramPacketsCommon.cpp
+++ b/src/server/game/Server/Packets/PerksProgramPacketsCommon.cpp
@@ -26,12 +26,13 @@ ByteBuffer& operator<<(ByteBuffer& data, PerksVendorItem const& perksVendorItem)
data << int32(perksVendorItem.BattlePetSpeciesID);
data << int32(perksVendorItem.TransmogSetID);
data << int32(perksVendorItem.ItemModifiedAppearanceID);
- data << int32(perksVendorItem.Field_14);
- data << int32(perksVendorItem.Field_18);
+ data << int32(perksVendorItem.TransmogIllusionID);
+ data << int32(perksVendorItem.ToyID);
data << int32(perksVendorItem.Price);
+ data << int32(perksVendorItem.OriginalPrice);
data << perksVendorItem.AvailableUntil;
data << Bits<1>(perksVendorItem.Disabled);
- data << Bits<1>(perksVendorItem.Field_41);
+ data << Bits<1>(perksVendorItem.DoesNotExpire);
data.FlushBits();
return data;
diff --git a/src/server/game/Server/Packets/PerksProgramPacketsCommon.h b/src/server/game/Server/Packets/PerksProgramPacketsCommon.h
index cd676002bdb..f76f4403394 100644
--- a/src/server/game/Server/Packets/PerksProgramPacketsCommon.h
+++ b/src/server/game/Server/Packets/PerksProgramPacketsCommon.h
@@ -29,12 +29,13 @@ struct PerksVendorItem
int32 BattlePetSpeciesID = 0;
int32 TransmogSetID = 0;
int32 ItemModifiedAppearanceID = 0;
- int32 Field_14 = 0;
- int32 Field_18 = 0;
+ int32 TransmogIllusionID = 0;
+ int32 ToyID = 0;
int32 Price = 0;
+ int32 OriginalPrice = 0;
Timestamp<> AvailableUntil;
bool Disabled = false;
- bool Field_41 = false;
+ bool DoesNotExpire = false;
};
ByteBuffer& operator<<(ByteBuffer& data, PerksVendorItem const& perksVendorItem);
diff --git a/src/server/game/Server/Packets/PetPackets.cpp b/src/server/game/Server/Packets/PetPackets.cpp
index 1ef27cd7555..6340e46f778 100644
--- a/src/server/game/Server/Packets/PetPackets.cpp
+++ b/src/server/game/Server/Packets/PetPackets.cpp
@@ -23,7 +23,8 @@ WorldPacket const* WorldPackets::Pet::PetSpells::Write()
_worldPacket << uint16(_CreatureFamily);
_worldPacket << uint16(Specialization);
_worldPacket << uint32(TimeLimit);
- _worldPacket << uint16(CommandState | (Flag << 16));
+ _worldPacket << uint8(CommandState);
+ _worldPacket << uint8(Flag);
_worldPacket << uint8(ReactState);
_worldPacket.append(ActionButtons.data(), ActionButtons.size());
_worldPacket << uint32(Actions.size());
@@ -204,7 +205,8 @@ WorldPacket const* WorldPackets::Pet::PetTameFailure::Write()
WorldPacket const* WorldPackets::Pet::PetMode::Write()
{
_worldPacket << PetGUID;
- _worldPacket << uint16(CommandState | Flag << 8);
+ _worldPacket << uint8(CommandState);
+ _worldPacket << uint8(Flag);
_worldPacket << uint8(ReactState);
return &_worldPacket;
diff --git a/src/server/game/Server/Packets/PetitionPackets.cpp b/src/server/game/Server/Packets/PetitionPackets.cpp
index 680813dab69..f713cad4688 100644
--- a/src/server/game/Server/Packets/PetitionPackets.cpp
+++ b/src/server/game/Server/Packets/PetitionPackets.cpp
@@ -44,11 +44,11 @@ ByteBuffer& operator<<(ByteBuffer& data, PetitionInfo const& petitionInfo)
data << int32(petitionInfo.StaticType);
data << uint32(petitionInfo.Muid);
- data << SizedString::BitsSize<7>(petitionInfo.Title);
+ data << SizedString::BitsSize<8>(petitionInfo.Title);
data << SizedString::BitsSize<12>(petitionInfo.BodyText);
for (std::string const& choiceText : petitionInfo.Choicetext)
- data << SizedString::BitsSize<6>(choiceText);
+ data << SizedString::BitsSize<7>(choiceText);
data.FlushBits();
diff --git a/src/server/game/Server/Packets/SystemPackets.cpp b/src/server/game/Server/Packets/SystemPackets.cpp
index 849017d287e..b380f4e9fc5 100644
--- a/src/server/game/Server/Packets/SystemPackets.cpp
+++ b/src/server/game/Server/Packets/SystemPackets.cpp
@@ -44,6 +44,7 @@ ByteBuffer& operator<<(ByteBuffer& data, GameRuleValuePair const& gameRuleValue)
{
data << int32(gameRuleValue.Rule);
data << int32(gameRuleValue.Value);
+ data << float(gameRuleValue.ValueF);
return data;
}
@@ -142,20 +143,20 @@ WorldPacket const* FeatureSystemStatus::Write()
_worldPacket << Bits<1>(SellAllJunkEnabled);
_worldPacket << Bits<1>(GroupFinderEnabled);
- _worldPacket << Bits<1>(LfdEnabled);
- _worldPacket << Bits<1>(LfrEnabled);
_worldPacket << Bits<1>(IsPremadeGroupEnabled);
- _worldPacket << Bits<1>(PremadeGroupsEnabled);
+ _worldPacket << Bits<1>(UseActivePlayerDataQuestCompleted);
_worldPacket << Bits<1>(false); // unused 10.2.7
_worldPacket << Bits<1>(GuildEventsEditsEnabled);
_worldPacket << Bits<1>(GuildTradeSkillsEnabled);
-
_worldPacket << BitsSize<7>(Unknown1027);
_worldPacket << Bits<1>(BNSendWhisperUseV2Services);
-
_worldPacket << Bits<1>(BNSendGameDataUseV2Services);
_worldPacket << Bits<1>(IsAccountCurrencyTransferEnabled);
+ _worldPacket << Bits<1>(false); // unused 11.0.7
+ _worldPacket << Bits<1>(LobbyMatchmakerQueueFromMainlineEnabled);
+ _worldPacket << Bits<1>(CanSendLobbyMatchmakerPartyCustomizations);
+
_worldPacket.FlushBits();
{
diff --git a/src/server/game/Server/Packets/SystemPackets.h b/src/server/game/Server/Packets/SystemPackets.h
index f29aa60be77..55ce924388a 100644
--- a/src/server/game/Server/Packets/SystemPackets.h
+++ b/src/server/game/Server/Packets/SystemPackets.h
@@ -49,6 +49,7 @@ namespace WorldPackets
{
int32 Rule = 0;
int32 Value = 0;
+ float ValueF = 0.0f;
};
class FeatureSystemStatus final : public ServerPacket
@@ -170,15 +171,15 @@ namespace WorldPackets
bool IsPlayerContentTrackingEnabled = false;
bool SellAllJunkEnabled = false;
bool GroupFinderEnabled = true; // classic only
- bool LfdEnabled = true; // classic only
- bool LfrEnabled = true; // classic only
bool IsPremadeGroupEnabled = true; // classic only
- bool PremadeGroupsEnabled = true;
+ bool UseActivePlayerDataQuestCompleted = false; ///< Uses ActivePlayerData::QuestCompleted (legacy) to store completed quest bits instead of ActivePlayerData::BitVectors[9]
bool GuildEventsEditsEnabled = true;
bool GuildTradeSkillsEnabled = true;
- bool BNSendWhisperUseV2Services = true; ///< BNSendWhisper will send to v2.WhisperService instead of v1.NotificationService
- bool BNSendGameDataUseV2Services = true; ///< BNSendGameData will send to v2.NotificationService instead of v1.NotificationService
+ bool BNSendWhisperUseV2Services = true; ///< BNSendWhisper will send to v2.WhisperService instead of v1.NotificationService
+ bool BNSendGameDataUseV2Services = true; ///< BNSendGameData will send to v2.NotificationService instead of v1.NotificationService
bool IsAccountCurrencyTransferEnabled = false;
+ bool LobbyMatchmakerQueueFromMainlineEnabled = false;
+ bool CanSendLobbyMatchmakerPartyCustomizations = false;
SocialQueueConfig QuickJoinConfig;
SquelchInfo Squelch;
diff --git a/src/server/game/Server/Packets/TicketPackets.cpp b/src/server/game/Server/Packets/TicketPackets.cpp
index 5d79e186412..7d5ad918d46 100644
--- a/src/server/game/Server/Packets/TicketPackets.cpp
+++ b/src/server/game/Server/Packets/TicketPackets.cpp
@@ -53,10 +53,14 @@ WorldPacket const* GMTicketCaseStatus::Write()
_worldPacket << SizedString::BitsSize<11>(c.Url);
_worldPacket << SizedString::BitsSize<10>(c.WaitTimeOverrideMessage);
+ _worldPacket << SizedCString::BitsSize<24>(c.Title);
+ _worldPacket << SizedCString::BitsSize<24>(c.Description);
_worldPacket.FlushBits();
_worldPacket << SizedString::Data(c.Url);
_worldPacket << SizedString::Data(c.WaitTimeOverrideMessage);
+ _worldPacket << SizedCString::Data(c.Title);
+ _worldPacket << SizedCString::Data(c.Description);
}
return &_worldPacket;
diff --git a/src/server/game/Server/Packets/TicketPackets.h b/src/server/game/Server/Packets/TicketPackets.h
index 815539e981f..f8560ce5e91 100644
--- a/src/server/game/Server/Packets/TicketPackets.h
+++ b/src/server/game/Server/Packets/TicketPackets.h
@@ -74,6 +74,8 @@ namespace WorldPackets
int32 WaitTimeOverrideMinutes = 0;
std::string Url;
std::string WaitTimeOverrideMessage;
+ std::string Title;
+ std::string Description;
};
GMTicketCaseStatus() : ServerPacket(SMSG_GM_TICKET_CASE_STATUS, 12) { }
diff --git a/src/server/game/Server/Packets/VignettePackets.cpp b/src/server/game/Server/Packets/VignettePackets.cpp
index 10ca888ccbc..87975edd068 100644
--- a/src/server/game/Server/Packets/VignettePackets.cpp
+++ b/src/server/game/Server/Packets/VignettePackets.cpp
@@ -27,6 +27,9 @@ ByteBuffer& operator<<(ByteBuffer& data, VignetteData const& vignetteData)
data << uint32(vignetteData.ZoneID);
data << uint32(vignetteData.WMOGroupID);
data << uint32(vignetteData.WMODoodadPlacementID);
+ data << float(vignetteData.HealthPercent);
+ data << uint16(vignetteData.RecommendedGroupSizeMin);
+ data << uint16(vignetteData.RecommendedGroupSizeMax);
return data;
}
diff --git a/src/server/game/Server/Packets/VignettePackets.h b/src/server/game/Server/Packets/VignettePackets.h
index 8708f0df408..7fe4c079b46 100644
--- a/src/server/game/Server/Packets/VignettePackets.h
+++ b/src/server/game/Server/Packets/VignettePackets.h
@@ -32,6 +32,9 @@ struct VignetteData
uint32 ZoneID = 0;
uint32 WMOGroupID = 0;
uint32 WMODoodadPlacementID = 0;
+ float HealthPercent = 1.0f;
+ uint16 RecommendedGroupSizeMin = 0;
+ uint16 RecommendedGroupSizeMax = 0;
};
struct VignetteDataSet
diff --git a/src/server/game/Server/Protocol/Opcodes.cpp b/src/server/game/Server/Protocol/Opcodes.cpp
index 40c52787341..920f4b79e5a 100644
--- a/src/server/game/Server/Protocol/Opcodes.cpp
+++ b/src/server/game/Server/Protocol/Opcodes.cpp
@@ -151,6 +151,7 @@ void OpcodeTable::InitializeClientOpcodes()
DEFINE_HANDLER(CMSG_ACCOUNT_BANK_DEPOSIT_MONEY, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::Handle_NULL);
DEFINE_HANDLER(CMSG_ACCOUNT_BANK_WITHDRAW_MONEY, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::Handle_NULL);
DEFINE_HANDLER(CMSG_ACCOUNT_NOTIFICATION_ACKNOWLEDGED, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::Handle_NULL);
+ DEFINE_HANDLER(CMSG_ACCOUNT_STORE_BEGIN_PURCHASE_OR_REFUND, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::Handle_NULL);
DEFINE_HANDLER(CMSG_ACTIVATE_SOULBIND, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::Handle_NULL);
DEFINE_HANDLER(CMSG_ACTIVATE_TAXI, STATUS_LOGGEDIN, PROCESS_THREADSAFE, &WorldSession::HandleActivateTaxiOpcode);
DEFINE_HANDLER(CMSG_ADDON_LIST, STATUS_UNHANDLED, PROCESS_INPLACE, &WorldSession::Handle_NULL);
@@ -575,11 +576,14 @@ void OpcodeTable::InitializeClientOpcodes()
DEFINE_HANDLER(CMSG_LIVE_REGION_KEY_BINDINGS_COPY, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::Handle_NULL);
DEFINE_HANDLER(CMSG_LOADING_SCREEN_NOTIFY, STATUS_AUTHED, PROCESS_THREADUNSAFE, &WorldSession::HandleLoadScreenOpcode);
DEFINE_HANDLER(CMSG_LOAD_SELECTED_TROPHY, STATUS_UNHANDLED, PROCESS_INPLACE, &WorldSession::Handle_NULL);
+ DEFINE_HANDLER(CMSG_LOBBY_MATCHMAKER_ABANDON_QUEUE, STATUS_UNHANDLED, PROCESS_INPLACE, &WorldSession::Handle_NULL);
DEFINE_HANDLER(CMSG_LOBBY_MATCHMAKER_ACCEPT_PARTY_INVITE, STATUS_UNHANDLED, PROCESS_INPLACE, &WorldSession::Handle_NULL);
DEFINE_HANDLER(CMSG_LOBBY_MATCHMAKER_CREATE_CHARACTER, STATUS_UNHANDLED, PROCESS_INPLACE, &WorldSession::Handle_NULL);
+ DEFINE_HANDLER(CMSG_LOBBY_MATCHMAKER_ENTER_QUEUE, STATUS_UNHANDLED, PROCESS_INPLACE, &WorldSession::Handle_NULL);
DEFINE_HANDLER(CMSG_LOBBY_MATCHMAKER_LEAVE_PARTY, STATUS_UNHANDLED, PROCESS_INPLACE, &WorldSession::Handle_NULL);
DEFINE_HANDLER(CMSG_LOBBY_MATCHMAKER_PARTY_INVITE, STATUS_UNHANDLED, PROCESS_INPLACE, &WorldSession::Handle_NULL);
DEFINE_HANDLER(CMSG_LOBBY_MATCHMAKER_PARTY_UNINVITE, STATUS_UNHANDLED, PROCESS_INPLACE, &WorldSession::Handle_NULL);
+ DEFINE_HANDLER(CMSG_LOBBY_MATCHMAKER_QUEUE_PROPSAL_RESPONSE, STATUS_UNHANDLED, PROCESS_INPLACE, &WorldSession::Handle_NULL);
DEFINE_HANDLER(CMSG_LOBBY_MATCHMAKER_REJECT_PARTY_INVITE, STATUS_UNHANDLED, PROCESS_INPLACE, &WorldSession::Handle_NULL);
DEFINE_HANDLER(CMSG_LOBBY_MATCHMAKER_SET_PARTY_PLAYLIST_ENTRY, STATUS_UNHANDLED, PROCESS_INPLACE, &WorldSession::Handle_NULL);
DEFINE_HANDLER(CMSG_LOBBY_MATCHMAKER_SET_PLAYER_READY, STATUS_UNHANDLED, PROCESS_INPLACE, &WorldSession::Handle_NULL);
@@ -774,9 +778,11 @@ void OpcodeTable::InitializeClientOpcodes()
DEFINE_HANDLER(CMSG_QUERY_QUEST_ITEM_USABILITY, STATUS_UNHANDLED, PROCESS_INPLACE, &WorldSession::Handle_NULL);
DEFINE_HANDLER(CMSG_QUERY_REALM_NAME, STATUS_AUTHED, PROCESS_INPLACE, &WorldSession::HandleQueryRealmName);
DEFINE_HANDLER(CMSG_QUERY_SCENARIO_POI, STATUS_LOGGEDIN, PROCESS_INPLACE, &WorldSession::HandleQueryScenarioPOI);
+ DEFINE_HANDLER(CMSG_QUERY_SELECTED_WOW_LABS_AREA, STATUS_UNHANDLED, PROCESS_INPLACE, &WorldSession::Handle_NULL);
DEFINE_HANDLER(CMSG_QUERY_TIME, STATUS_LOGGEDIN, PROCESS_INPLACE, &WorldSession::HandleQueryTimeOpcode);
DEFINE_HANDLER(CMSG_QUERY_TREASURE_PICKER, STATUS_LOGGEDIN, PROCESS_INPLACE, &WorldSession::HandleQueryTreasurePicker);
DEFINE_HANDLER(CMSG_QUERY_VOID_STORAGE, STATUS_LOGGEDIN, PROCESS_INPLACE, &WorldSession::HandleVoidStorageQuery);
+ DEFINE_HANDLER(CMSG_QUERY_WOW_LABS_AREA_INFO, STATUS_UNHANDLED, PROCESS_INPLACE, &WorldSession::Handle_NULL);
DEFINE_HANDLER(CMSG_QUEST_CONFIRM_ACCEPT, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleQuestConfirmAccept);
DEFINE_HANDLER(CMSG_QUEST_GIVER_ACCEPT_QUEST, STATUS_LOGGEDIN, PROCESS_INPLACE, &WorldSession::HandleQuestgiverAcceptQuestOpcode);
DEFINE_HANDLER(CMSG_QUEST_GIVER_CHOOSE_REWARD, STATUS_LOGGEDIN, PROCESS_INPLACE, &WorldSession::HandleQuestgiverChooseRewardOpcode);
@@ -845,6 +851,7 @@ void OpcodeTable::InitializeClientOpcodes()
DEFINE_HANDLER(CMSG_REQUEST_REALM_GUILD_MASTER_INFO, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::Handle_NULL);
DEFINE_HANDLER(CMSG_REQUEST_SCHEDULED_PVP_INFO, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::Handle_NULL);
DEFINE_HANDLER(CMSG_REQUEST_STABLED_PETS, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleRequestStabledPets);
+ DEFINE_HANDLER(CMSG_REQUEST_STORE_FRONT_INFO_UPDATE, STATUS_UNHANDLED, PROCESS_INPLACE, &WorldSession::Handle_NULL);
DEFINE_HANDLER(CMSG_REQUEST_VEHICLE_EXIT, STATUS_LOGGEDIN, PROCESS_INPLACE, &WorldSession::HandleRequestVehicleExit);
DEFINE_HANDLER(CMSG_REQUEST_VEHICLE_NEXT_SEAT, STATUS_LOGGEDIN, PROCESS_INPLACE, &WorldSession::HandleRequestVehicleNextSeat);
DEFINE_HANDLER(CMSG_REQUEST_VEHICLE_PREV_SEAT, STATUS_LOGGEDIN, PROCESS_INPLACE, &WorldSession::HandleRequestVehiclePrevSeat);
@@ -867,6 +874,7 @@ void OpcodeTable::InitializeClientOpcodes()
DEFINE_HANDLER(CMSG_SCENE_PLAYBACK_COMPLETE, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleScenePlaybackComplete);
DEFINE_HANDLER(CMSG_SCENE_TRIGGER_EVENT, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleSceneTriggerEvent);
DEFINE_HANDLER(CMSG_SEAMLESS_TRANSFER_COMPLETE, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::Handle_NULL);
+ DEFINE_HANDLER(CMSG_SELECT_WOW_LABS_AREA, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::Handle_NULL);
DEFINE_HANDLER(CMSG_SELF_RES, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleSelfResOpcode);
DEFINE_HANDLER(CMSG_SELL_ALL_JUNK_ITEMS, STATUS_UNHANDLED, PROCESS_INPLACE, &WorldSession::Handle_NULL);
DEFINE_HANDLER(CMSG_SELL_ITEM, STATUS_LOGGEDIN, PROCESS_INPLACE, &WorldSession::HandleSellItemOpcode);
@@ -1040,6 +1048,10 @@ void OpcodeTable::InitializeServerOpcodes()
DEFINE_SERVER_OPCODE_HANDLER(SMSG_ACCOUNT_MOUNT_REMOVED, STATUS_UNHANDLED, CONNECTION_TYPE_INSTANCE);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_ACCOUNT_MOUNT_UPDATE, STATUS_NEVER, CONNECTION_TYPE_INSTANCE);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_ACCOUNT_NOTIFICATIONS_RESPONSE, STATUS_UNHANDLED, CONNECTION_TYPE_REALM);
+ DEFINE_SERVER_OPCODE_HANDLER(SMSG_ACCOUNT_STORE_CURRENCY_UPDATE, STATUS_UNHANDLED, CONNECTION_TYPE_REALM);
+ DEFINE_SERVER_OPCODE_HANDLER(SMSG_ACCOUNT_STORE_FRONT_UPDATE, STATUS_UNHANDLED, CONNECTION_TYPE_REALM);
+ DEFINE_SERVER_OPCODE_HANDLER(SMSG_ACCOUNT_STORE_ITEM_STATE_CHANGED, STATUS_UNHANDLED, CONNECTION_TYPE_REALM);
+ DEFINE_SERVER_OPCODE_HANDLER(SMSG_ACCOUNT_STORE_RESULT, STATUS_UNHANDLED, CONNECTION_TYPE_REALM);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_ACCOUNT_TOY_UPDATE, STATUS_NEVER, CONNECTION_TYPE_INSTANCE);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_ACCOUNT_TRANSMOG_SET_FAVORITES_UPDATE, STATUS_UNHANDLED, CONNECTION_TYPE_REALM);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_ACCOUNT_TRANSMOG_UPDATE, STATUS_NEVER, CONNECTION_TYPE_REALM);
@@ -1226,6 +1238,7 @@ void OpcodeTable::InitializeServerOpcodes()
DEFINE_SERVER_OPCODE_HANDLER(SMSG_CHANNEL_NOTIFY, STATUS_NEVER, CONNECTION_TYPE_REALM);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_CHANNEL_NOTIFY_JOINED, STATUS_NEVER, CONNECTION_TYPE_REALM);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_CHANNEL_NOTIFY_LEFT, STATUS_NEVER, CONNECTION_TYPE_REALM);
+ DEFINE_SERVER_OPCODE_HANDLER(SMSG_CHANNEL_NOTIFY_NPE_JOINED_BATCH, STATUS_UNHANDLED, CONNECTION_TYPE_REALM);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_CHARACTER_CHECK_UPGRADE_RESULT, STATUS_UNHANDLED, CONNECTION_TYPE_REALM);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_CHARACTER_LOGIN_FAILED, STATUS_NEVER, CONNECTION_TYPE_REALM);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_CHARACTER_OBJECT_TEST_RESPONSE, STATUS_UNHANDLED, CONNECTION_TYPE_REALM);
@@ -1615,6 +1628,7 @@ void OpcodeTable::InitializeServerOpcodes()
DEFINE_SERVER_OPCODE_HANDLER(SMSG_LFG_DISABLED, STATUS_NEVER, CONNECTION_TYPE_REALM);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_LFG_EXPAND_SEARCH_PROMPT, STATUS_UNHANDLED, CONNECTION_TYPE_REALM);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_LFG_INSTANCE_SHUTDOWN_COUNTDOWN, STATUS_UNHANDLED, CONNECTION_TYPE_REALM);
+ DEFINE_SERVER_OPCODE_HANDLER(SMSG_LFG_JOIN_LOBBY_MATCHMAKER_QUEUE, STATUS_UNHANDLED, CONNECTION_TYPE_REALM);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_LFG_JOIN_RESULT, STATUS_NEVER, CONNECTION_TYPE_REALM);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_LFG_LIST_APPLICANT_LIST_UPDATE, STATUS_UNHANDLED, CONNECTION_TYPE_REALM);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_LFG_LIST_APPLICATION_STATUS_UPDATE, STATUS_UNHANDLED, CONNECTION_TYPE_REALM);
@@ -1647,6 +1661,8 @@ void OpcodeTable::InitializeServerOpcodes()
DEFINE_SERVER_OPCODE_HANDLER(SMSG_LOBBY_MATCHMAKER_LOBBY_ACQUIRED_SERVER, STATUS_UNHANDLED, CONNECTION_TYPE_REALM);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_LOBBY_MATCHMAKER_PARTY_INFO, STATUS_UNHANDLED, CONNECTION_TYPE_REALM);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_LOBBY_MATCHMAKER_PARTY_INVITE_REJECTED, STATUS_UNHANDLED, CONNECTION_TYPE_REALM);
+ DEFINE_SERVER_OPCODE_HANDLER(SMSG_LOBBY_MATCHMAKER_QUEUE_PROPOSED, STATUS_UNHANDLED, CONNECTION_TYPE_REALM);
+ DEFINE_SERVER_OPCODE_HANDLER(SMSG_LOBBY_MATCHMAKER_QUEUE_RESULT, STATUS_UNHANDLED, CONNECTION_TYPE_REALM);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_LOBBY_MATCHMAKER_RECEIVE_INVITE, STATUS_UNHANDLED, CONNECTION_TYPE_REALM);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_LOGIN_SET_TIME_SPEED, STATUS_NEVER, CONNECTION_TYPE_INSTANCE);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_LOGIN_VERIFY_WORLD, STATUS_NEVER, CONNECTION_TYPE_INSTANCE);
@@ -1876,6 +1892,7 @@ void OpcodeTable::InitializeServerOpcodes()
DEFINE_SERVER_OPCODE_HANDLER(SMSG_PLAYER_CHOICE_CLEAR, STATUS_UNHANDLED, CONNECTION_TYPE_REALM);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_PLAYER_CHOICE_DISPLAY_ERROR, STATUS_UNHANDLED, CONNECTION_TYPE_REALM);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_PLAYER_CONDITION_RESULT, STATUS_UNHANDLED, CONNECTION_TYPE_REALM);
+ DEFINE_SERVER_OPCODE_HANDLER(SMSG_PLAYER_END_OF_MATCH_DETAILS, STATUS_UNHANDLED, CONNECTION_TYPE_REALM);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_PLAYER_HIDE_ARROW_CALLOUT, STATUS_UNHANDLED, CONNECTION_TYPE_REALM);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_PLAYER_IS_ADVENTURE_MAP_POI_VALID, STATUS_NEVER, CONNECTION_TYPE_INSTANCE);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_PLAYER_OPEN_SUBSCRIPTION_INTERSTITIAL, STATUS_UNHANDLED, CONNECTION_TYPE_REALM);
@@ -2164,6 +2181,7 @@ void OpcodeTable::InitializeServerOpcodes()
DEFINE_SERVER_OPCODE_HANDLER(SMSG_TRIGGER_MOVIE, STATUS_NEVER, CONNECTION_TYPE_REALM);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_TURN_IN_PETITION_RESULT, STATUS_NEVER, CONNECTION_TYPE_REALM);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_TUTORIAL_FLAGS, STATUS_NEVER, CONNECTION_TYPE_REALM);
+ DEFINE_SERVER_OPCODE_HANDLER(SMSG_UI_ACTION, STATUS_UNHANDLED, CONNECTION_TYPE_REALM);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_UI_MAP_QUEST_LINES_RESPONSE, STATUS_NEVER, CONNECTION_TYPE_INSTANCE);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_UNDELETE_CHARACTER_RESPONSE, STATUS_NEVER, CONNECTION_TYPE_REALM);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_UNDELETE_COOLDOWN_STATUS_RESPONSE, STATUS_NEVER, CONNECTION_TYPE_REALM);
@@ -2226,10 +2244,13 @@ void OpcodeTable::InitializeServerOpcodes()
DEFINE_SERVER_OPCODE_HANDLER(SMSG_WORLD_QUEST_UPDATE_RESPONSE, STATUS_NEVER, CONNECTION_TYPE_INSTANCE);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_WORLD_SERVER_INFO, STATUS_NEVER, CONNECTION_TYPE_INSTANCE);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_WOW_ENTITLEMENT_NOTIFICATION, STATUS_UNHANDLED, CONNECTION_TYPE_REALM);
+ DEFINE_SERVER_OPCODE_HANDLER(SMSG_WOW_LABS_AREA_INFO, STATUS_UNHANDLED, CONNECTION_TYPE_REALM);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_WOW_LABS_NOTIFY_PLAYERS_MATCH_END, STATUS_UNHANDLED, CONNECTION_TYPE_REALM);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_WOW_LABS_NOTIFY_PLAYERS_MATCH_STATE_CHANGED, STATUS_UNHANDLED, CONNECTION_TYPE_REALM);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_WOW_LABS_PARTY_ERROR, STATUS_UNHANDLED, CONNECTION_TYPE_REALM);
+ DEFINE_SERVER_OPCODE_HANDLER(SMSG_WOW_LABS_SET_AREA_ID_RESULT, STATUS_UNHANDLED, CONNECTION_TYPE_REALM);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_WOW_LABS_SET_PREDICTION_CIRCLE, STATUS_UNHANDLED, CONNECTION_TYPE_REALM);
+ DEFINE_SERVER_OPCODE_HANDLER(SMSG_WOW_LABS_SET_SELECTED_AREA_ID, STATUS_UNHANDLED, CONNECTION_TYPE_REALM);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_XP_AWARDED_FROM_CURRENCY, STATUS_UNHANDLED, CONNECTION_TYPE_REALM);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_XP_GAIN_ABORTED, STATUS_UNHANDLED, CONNECTION_TYPE_REALM);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_XP_GAIN_ENABLED, STATUS_UNHANDLED, CONNECTION_TYPE_REALM);
diff --git a/src/server/game/Server/Protocol/Opcodes.h b/src/server/game/Server/Protocol/Opcodes.h
index 609b80f1b83..8c451399268 100644
--- a/src/server/game/Server/Protocol/Opcodes.h
+++ b/src/server/game/Server/Protocol/Opcodes.h
@@ -40,37 +40,38 @@ constexpr uint16 UNKNOWN_OPCODE = 0xBADD; // special marker value for uninitia
enum OpcodeClient : uint32
{
- CMSG_ABANDON_NPE_RESPONSE = 0x300292,
+ CMSG_ABANDON_NPE_RESPONSE = 0x300295,
CMSG_ACCEPT_GUILD_INVITE = 0x350029,
- CMSG_ACCEPT_RETURNING_PLAYER_PROMPT = 0x300253,
- CMSG_ACCEPT_SOCIAL_CONTRACT = 0x35016E,
+ CMSG_ACCEPT_RETURNING_PLAYER_PROMPT = 0x300256,
+ CMSG_ACCEPT_SOCIAL_CONTRACT = 0x350173,
CMSG_ACCEPT_TRADE = 0x300004,
CMSG_ACCEPT_WARGAME_INVITE = 0x35000C,
- CMSG_ACCOUNT_BANK_DEPOSIT_MONEY = 0x3002D4,
- CMSG_ACCOUNT_BANK_WITHDRAW_MONEY = 0x3002D5,
- CMSG_ACCOUNT_NOTIFICATION_ACKNOWLEDGED = 0x35015E,
- CMSG_ACTIVATE_SOULBIND = 0x300281,
+ CMSG_ACCOUNT_BANK_DEPOSIT_MONEY = 0x3002D7,
+ CMSG_ACCOUNT_BANK_WITHDRAW_MONEY = 0x3002D8,
+ CMSG_ACCOUNT_NOTIFICATION_ACKNOWLEDGED = 0x35015F,
+ CMSG_ACCOUNT_STORE_BEGIN_PURCHASE_OR_REFUND = 0x3500BE,
+ CMSG_ACTIVATE_SOULBIND = 0x300284,
CMSG_ACTIVATE_TAXI = 0x31003D,
CMSG_ADDON_LIST = 0x350004,
- CMSG_ADD_ACCOUNT_COSMETIC = 0x30016B,
+ CMSG_ADD_ACCOUNT_COSMETIC = 0x30016D,
CMSG_ADD_BATTLENET_FRIEND = 0x350084,
- CMSG_ADD_FRIEND = 0x3500F9,
- CMSG_ADD_IGNORE = 0x3500FD,
- CMSG_ADD_TOY = 0x30016A,
- CMSG_ADVENTURE_JOURNAL_OPEN_QUEST = 0x3000B0,
- CMSG_ADVENTURE_JOURNAL_UPDATE_SUGGESTIONS = 0x300284,
- CMSG_ADVENTURE_MAP_START_QUEST = 0x300226,
+ CMSG_ADD_FRIEND = 0x3500FA,
+ CMSG_ADD_IGNORE = 0x3500FE,
+ CMSG_ADD_TOY = 0x30016C,
+ CMSG_ADVENTURE_JOURNAL_OPEN_QUEST = 0x3000B2,
+ CMSG_ADVENTURE_JOURNAL_UPDATE_SUGGESTIONS = 0x300287,
+ CMSG_ADVENTURE_MAP_START_QUEST = 0x300228,
CMSG_ALTER_APPEARANCE = 0x31008E,
CMSG_AREA_SPIRIT_HEALER_QUERY = 0x310042,
CMSG_AREA_SPIRIT_HEALER_QUEUE = 0x310043,
- CMSG_AREA_TRIGGER = 0x300083,
+ CMSG_AREA_TRIGGER = 0x300085,
CMSG_ARTIFACT_ADD_POWER = 0x300054,
CMSG_ARTIFACT_SET_APPEARANCE = 0x300056,
- CMSG_ASSIGN_EQUIPMENT_SET_SPEC = 0x3000BB,
- CMSG_ATTACK_STOP = 0x300119,
- CMSG_ATTACK_SWING = 0x300118,
- CMSG_AUCTIONABLE_TOKEN_SELL = 0x35010F,
- CMSG_AUCTIONABLE_TOKEN_SELL_AT_MARKET_PRICE = 0x350110,
+ CMSG_ASSIGN_EQUIPMENT_SET_SPEC = 0x3000BD,
+ CMSG_ATTACK_STOP = 0x30011B,
+ CMSG_ATTACK_SWING = 0x30011A,
+ CMSG_AUCTIONABLE_TOKEN_SELL = 0x350110,
+ CMSG_AUCTIONABLE_TOKEN_SELL_AT_MARKET_PRICE = 0x350111,
CMSG_AUCTION_BROWSE_QUERY = 0x310062,
CMSG_AUCTION_CANCEL_COMMODITIES_PURCHASE = 0x31006A,
CMSG_AUCTION_CONFIRM_COMMODITIES_PURCHASE = 0x310069,
@@ -86,47 +87,47 @@ enum OpcodeClient : uint32
CMSG_AUCTION_REPLICATE_ITEMS = 0x310060,
CMSG_AUCTION_SELL_COMMODITY = 0x31006B,
CMSG_AUCTION_SELL_ITEM = 0x31005E,
- CMSG_AUCTION_SET_FAVORITE_ITEM = 0x35015F,
+ CMSG_AUCTION_SET_FAVORITE_ITEM = 0x350160,
CMSG_AUTH_CONTINUED_SESSION = 0x360002,
CMSG_AUTH_SESSION = 0x360001,
CMSG_AUTOBANK_ITEM = 0x320003,
CMSG_AUTOBANK_REAGENT = 0x320005,
CMSG_AUTOSTORE_BANK_ITEM = 0x320002,
CMSG_AUTOSTORE_BANK_REAGENT = 0x320004,
- CMSG_AUTO_DEPOSIT_ACCOUNT_BANK = 0x3002DF,
+ CMSG_AUTO_DEPOSIT_ACCOUNT_BANK = 0x3002E1,
CMSG_AUTO_EQUIP_ITEM = 0x320006,
CMSG_AUTO_EQUIP_ITEM_SLOT = 0x32000B,
CMSG_AUTO_GUILD_BANK_ITEM = 0x310049,
CMSG_AUTO_STORE_BAG_ITEM = 0x320007,
CMSG_AUTO_STORE_GUILD_BANK_ITEM = 0x310052,
- CMSG_AZERITE_EMPOWERED_ITEM_SELECT_POWER = 0x30024F,
- CMSG_AZERITE_EMPOWERED_ITEM_VIEWED = 0x300231,
- CMSG_AZERITE_ESSENCE_ACTIVATE_ESSENCE = 0x300251,
- CMSG_AZERITE_ESSENCE_UNLOCK_MILESTONE = 0x300250,
+ CMSG_AZERITE_EMPOWERED_ITEM_SELECT_POWER = 0x300252,
+ CMSG_AZERITE_EMPOWERED_ITEM_VIEWED = 0x300233,
+ CMSG_AZERITE_ESSENCE_ACTIVATE_ESSENCE = 0x300254,
+ CMSG_AZERITE_ESSENCE_UNLOCK_MILESTONE = 0x300253,
CMSG_BANKER_ACTIVATE = 0x310045,
CMSG_BATTLEFIELD_LEAVE = 0x30001D,
CMSG_BATTLEFIELD_LIST = 0x300028,
CMSG_BATTLEFIELD_PORT = 0x3100C4,
- CMSG_BATTLEMASTER_HELLO = 0x300188,
+ CMSG_BATTLEMASTER_HELLO = 0x30018A,
CMSG_BATTLEMASTER_JOIN = 0x3100BB,
CMSG_BATTLEMASTER_JOIN_ARENA = 0x3100BC,
CMSG_BATTLEMASTER_JOIN_BRAWL = 0x3100C2,
CMSG_BATTLEMASTER_JOIN_RATED_BG_BLITZ = 0x3100BE,
CMSG_BATTLEMASTER_JOIN_RATED_SOLO_SHUFFLE = 0x3100BD,
CMSG_BATTLEMASTER_JOIN_SKIRMISH = 0x3100BF,
- CMSG_BATTLENET_CHALLENGE_RESPONSE = 0x3500FC,
- CMSG_BATTLENET_REQUEST = 0x35011D,
- CMSG_BATTLE_PAY_ACK_FAILED_RESPONSE = 0x3500F6,
- CMSG_BATTLE_PAY_CANCEL_OPEN_CHECKOUT = 0x35013C,
- CMSG_BATTLE_PAY_CONFIRM_PURCHASE_RESPONSE = 0x3500F5,
- CMSG_BATTLE_PAY_DISTRIBUTION_ASSIGN_TO_TARGET = 0x3500EC,
- CMSG_BATTLE_PAY_DISTRIBUTION_ASSIGN_VAS = 0x350162,
- CMSG_BATTLE_PAY_GET_PRODUCT_LIST = 0x3500E4,
- CMSG_BATTLE_PAY_GET_PURCHASE_LIST = 0x3500E5,
- CMSG_BATTLE_PAY_OPEN_CHECKOUT = 0x350135,
- CMSG_BATTLE_PAY_REQUEST_PRICE_INFO = 0x350131,
- CMSG_BATTLE_PAY_START_PURCHASE = 0x3500F4,
- CMSG_BATTLE_PAY_START_VAS_PURCHASE = 0x35011B,
+ CMSG_BATTLENET_CHALLENGE_RESPONSE = 0x3500FD,
+ CMSG_BATTLENET_REQUEST = 0x35011E,
+ CMSG_BATTLE_PAY_ACK_FAILED_RESPONSE = 0x3500F7,
+ CMSG_BATTLE_PAY_CANCEL_OPEN_CHECKOUT = 0x35013D,
+ CMSG_BATTLE_PAY_CONFIRM_PURCHASE_RESPONSE = 0x3500F6,
+ CMSG_BATTLE_PAY_DISTRIBUTION_ASSIGN_TO_TARGET = 0x3500ED,
+ CMSG_BATTLE_PAY_DISTRIBUTION_ASSIGN_VAS = 0x350163,
+ CMSG_BATTLE_PAY_GET_PRODUCT_LIST = 0x3500E5,
+ CMSG_BATTLE_PAY_GET_PURCHASE_LIST = 0x3500E6,
+ CMSG_BATTLE_PAY_OPEN_CHECKOUT = 0x350136,
+ CMSG_BATTLE_PAY_REQUEST_PRICE_INFO = 0x350132,
+ CMSG_BATTLE_PAY_START_PURCHASE = 0x3500F5,
+ CMSG_BATTLE_PAY_START_VAS_PURCHASE = 0x35011C,
CMSG_BATTLE_PET_CLEAR_FANFARE = 0x2A0002,
CMSG_BATTLE_PET_DELETE_PET = 0x35004F,
CMSG_BATTLE_PET_DELETE_PET_CHEAT = 0x350050,
@@ -136,14 +137,14 @@ enum OpcodeClient : uint32
CMSG_BATTLE_PET_SET_BATTLE_SLOT = 0x350057,
CMSG_BATTLE_PET_SET_FLAGS = 0x35005A,
CMSG_BATTLE_PET_SUMMON = 0x350053,
- CMSG_BATTLE_PET_UPDATE_DISPLAY_NOTIFY = 0x30008D,
- CMSG_BATTLE_PET_UPDATE_NOTIFY = 0x30008C,
+ CMSG_BATTLE_PET_UPDATE_DISPLAY_NOTIFY = 0x30008F,
+ CMSG_BATTLE_PET_UPDATE_NOTIFY = 0x30008E,
CMSG_BEGIN_TRADE = 0x300001,
CMSG_BINDER_ACTIVATE = 0x310044,
CMSG_BLACK_MARKET_BID_ON_ITEM = 0x3100CC,
CMSG_BLACK_MARKET_OPEN = 0x3100CA,
CMSG_BLACK_MARKET_REQUEST_ITEMS = 0x3100CB,
- CMSG_BONUS_ROLL = 0x300252,
+ CMSG_BONUS_ROLL = 0x300255,
CMSG_BUG_REPORT = 0x3500AF,
CMSG_BUSY_TRADE = 0x300002,
CMSG_BUY_ACCOUNT_BANK_TAB = 0x310121,
@@ -151,7 +152,7 @@ enum OpcodeClient : uint32
CMSG_BUY_BANK_SLOT = 0x310046,
CMSG_BUY_ITEM = 0x310035,
CMSG_BUY_REAGENT_BANK = 0x310047,
- CMSG_CAGE_BATTLE_PET = 0x3000A0,
+ CMSG_CAGE_BATTLE_PET = 0x3000A2,
CMSG_CALENDAR_ADD_EVENT = 0x3500A7,
CMSG_CALENDAR_COMMUNITY_INVITE = 0x35009B,
CMSG_CALENDAR_COMPLAIN = 0x3500A3,
@@ -169,30 +170,30 @@ enum OpcodeClient : uint32
CMSG_CALENDAR_UPDATE_EVENT = 0x3500A8,
CMSG_CANCEL_AURA = 0x300058,
CMSG_CANCEL_AUTO_REPEAT_SPELL = 0x310080,
- CMSG_CANCEL_CAST = 0x300171,
- CMSG_CANCEL_CHANNELLING = 0x300132,
- CMSG_CANCEL_GROWTH_AURA = 0x30013A,
- CMSG_CANCEL_MASTER_LOOT_ROLL = 0x3000C7,
+ CMSG_CANCEL_CAST = 0x300173,
+ CMSG_CANCEL_CHANNELLING = 0x300134,
+ CMSG_CANCEL_GROWTH_AURA = 0x30013C,
+ CMSG_CANCEL_MASTER_LOOT_ROLL = 0x3000C9,
CMSG_CANCEL_MOD_SPEED_NO_CONTROL_AURAS = 0x300057,
- CMSG_CANCEL_MOUNT_AURA = 0x30014D,
+ CMSG_CANCEL_MOUNT_AURA = 0x30014F,
CMSG_CANCEL_QUEUED_SPELL = 0x300029,
CMSG_CANCEL_TEMP_ENCHANTMENT = 0x31008B,
CMSG_CANCEL_TRADE = 0x300006,
CMSG_CAN_DUEL = 0x35008C,
- CMSG_CAN_REDEEM_TOKEN_FOR_BALANCE = 0x350130,
- CMSG_CAST_SPELL = 0x30016E,
+ CMSG_CAN_REDEEM_TOKEN_FOR_BALANCE = 0x350131,
+ CMSG_CAST_SPELL = 0x300170,
CMSG_CHALLENGE_MODE_REQUEST_LEADERS = 0x2D0002,
- CMSG_CHANGE_BAG_SLOT_FLAG = 0x30020A,
- CMSG_CHANGE_BANK_BAG_SLOT_FLAG = 0x30020B,
- CMSG_CHANGE_MONUMENT_APPEARANCE = 0x3001EB,
- CMSG_CHANGE_REALM_TICKET = 0x350122,
+ CMSG_CHANGE_BAG_SLOT_FLAG = 0x30020C,
+ CMSG_CHANGE_BANK_BAG_SLOT_FLAG = 0x30020D,
+ CMSG_CHANGE_MONUMENT_APPEARANCE = 0x3001ED,
+ CMSG_CHANGE_REALM_TICKET = 0x350123,
CMSG_CHANGE_SUB_GROUP = 0x350076,
- CMSG_CHARACTER_CHECK_UPGRADE = 0x3500EF,
- CMSG_CHARACTER_RENAME_REQUEST = 0x3500EA,
- CMSG_CHARACTER_UPGRADE_MANUAL_UNREVOKE_REQUEST = 0x3500ED,
- CMSG_CHARACTER_UPGRADE_START = 0x3500EE,
+ CMSG_CHARACTER_CHECK_UPGRADE = 0x3500F0,
+ CMSG_CHARACTER_RENAME_REQUEST = 0x3500EB,
+ CMSG_CHARACTER_UPGRADE_MANUAL_UNREVOKE_REQUEST = 0x3500EE,
+ CMSG_CHARACTER_UPGRADE_START = 0x3500EF,
CMSG_CHAR_CUSTOMIZE = 0x3500B6,
- CMSG_CHAR_DELETE = 0x3500C7,
+ CMSG_CHAR_DELETE = 0x3500C8,
CMSG_CHAR_RACE_OR_FACTION_CHANGE = 0x3500BC,
CMSG_CHAT_ADDON_MESSAGE = 0x2C0026,
CMSG_CHAT_ADDON_MESSAGE_TARGETED = 0x2C0027,
@@ -234,36 +235,36 @@ enum OpcodeClient : uint32
CMSG_CHAT_REPORT_IGNORED = 0x2C0003,
CMSG_CHAT_UNREGISTER_ALL_ADDON_PREFIXES = 0x2C0006,
CMSG_CHECK_CHARACTER_NAME_AVAILABILITY = 0x35006F,
- CMSG_CHECK_IS_ADVENTURE_MAP_POI_VALID = 0x30010A,
- CMSG_CHOICE_RESPONSE = 0x300176,
- CMSG_CHROMIE_TIME_SELECT_EXPANSION = 0x300280,
- CMSG_CLAIM_WEEKLY_REWARD = 0x30025D,
- CMSG_CLASS_TALENTS_DELETE_CONFIG = 0x3002B9,
- CMSG_CLASS_TALENTS_NOTIFY_EMPTY_CONFIG = 0x3000BF,
- CMSG_CLASS_TALENTS_NOTIFY_VALIDATION_FAILED = 0x3002BB,
- CMSG_CLASS_TALENTS_RENAME_CONFIG = 0x3002B8,
- CMSG_CLASS_TALENTS_REQUEST_NEW_CONFIG = 0x3002B7,
- CMSG_CLASS_TALENTS_SET_STARTER_BUILD_ACTIVE = 0x3002BC,
- CMSG_CLASS_TALENTS_SET_USES_SHARED_ACTION_BARS = 0x3000BE,
+ CMSG_CHECK_IS_ADVENTURE_MAP_POI_VALID = 0x30010C,
+ CMSG_CHOICE_RESPONSE = 0x300178,
+ CMSG_CHROMIE_TIME_SELECT_EXPANSION = 0x300283,
+ CMSG_CLAIM_WEEKLY_REWARD = 0x300260,
+ CMSG_CLASS_TALENTS_DELETE_CONFIG = 0x3002BC,
+ CMSG_CLASS_TALENTS_NOTIFY_EMPTY_CONFIG = 0x3000C1,
+ CMSG_CLASS_TALENTS_NOTIFY_VALIDATION_FAILED = 0x3002BE,
+ CMSG_CLASS_TALENTS_RENAME_CONFIG = 0x3002BB,
+ CMSG_CLASS_TALENTS_REQUEST_NEW_CONFIG = 0x3002BA,
+ CMSG_CLASS_TALENTS_SET_STARTER_BUILD_ACTIVE = 0x3002BF,
+ CMSG_CLASS_TALENTS_SET_USES_SHARED_ACTION_BARS = 0x3000C0,
CMSG_CLEAR_NEW_APPEARANCE = 0x2A0005,
CMSG_CLEAR_RAID_MARKER = 0x300050,
CMSG_CLEAR_TRADE_ITEM = 0x300008,
CMSG_CLIENT_PORT_GRAVEYARD = 0x3100C6,
CMSG_CLOSE_INTERACTION = 0x310024,
- CMSG_CLOSE_QUEST_CHOICE = 0x300177,
- CMSG_CLOSE_RUNEFORGE_INTERACTION = 0x300288,
- CMSG_CLOSE_TRAIT_SYSTEM_INTERACTION = 0x3002BD,
- CMSG_CLUB_FINDER_APPLICATION_RESPONSE = 0x350147,
- CMSG_CLUB_FINDER_GET_APPLICANTS_LIST = 0x350145,
- CMSG_CLUB_FINDER_POST = 0x350142,
- CMSG_CLUB_FINDER_REQUEST_CLUBS_DATA = 0x350149,
- CMSG_CLUB_FINDER_REQUEST_CLUBS_LIST = 0x350143,
- CMSG_CLUB_FINDER_REQUEST_MEMBERSHIP_TO_CLUB = 0x350144,
- CMSG_CLUB_FINDER_REQUEST_PENDING_CLUBS_LIST = 0x350148,
- CMSG_CLUB_FINDER_REQUEST_SUBSCRIBED_CLUB_POSTING_IDS = 0x35014A,
- CMSG_CLUB_FINDER_RESPOND_TO_APPLICANT = 0x350146,
- CMSG_CLUB_FINDER_WHISPER_APPLICANT_REQUEST = 0x350165,
- CMSG_CLUB_PRESENCE_SUBSCRIBE = 0x35011F,
+ CMSG_CLOSE_QUEST_CHOICE = 0x300179,
+ CMSG_CLOSE_RUNEFORGE_INTERACTION = 0x30028B,
+ CMSG_CLOSE_TRAIT_SYSTEM_INTERACTION = 0x3002C0,
+ CMSG_CLUB_FINDER_APPLICATION_RESPONSE = 0x350148,
+ CMSG_CLUB_FINDER_GET_APPLICANTS_LIST = 0x350146,
+ CMSG_CLUB_FINDER_POST = 0x350143,
+ CMSG_CLUB_FINDER_REQUEST_CLUBS_DATA = 0x35014A,
+ CMSG_CLUB_FINDER_REQUEST_CLUBS_LIST = 0x350144,
+ CMSG_CLUB_FINDER_REQUEST_MEMBERSHIP_TO_CLUB = 0x350145,
+ CMSG_CLUB_FINDER_REQUEST_PENDING_CLUBS_LIST = 0x350149,
+ CMSG_CLUB_FINDER_REQUEST_SUBSCRIBED_CLUB_POSTING_IDS = 0x35014B,
+ CMSG_CLUB_FINDER_RESPOND_TO_APPLICANT = 0x350147,
+ CMSG_CLUB_FINDER_WHISPER_APPLICANT_REQUEST = 0x350166,
+ CMSG_CLUB_PRESENCE_SUBSCRIBE = 0x350120,
CMSG_COLLECTION_ITEM_SET_FAVORITE = 0x35005D,
CMSG_COMMENTATOR_ENABLE = 0x35001C,
CMSG_COMMENTATOR_ENTER_INSTANCE = 0x350020,
@@ -271,29 +272,29 @@ enum OpcodeClient : uint32
CMSG_COMMENTATOR_GET_MAP_INFO = 0x35001D,
CMSG_COMMENTATOR_GET_PLAYER_COOLDOWNS = 0x35001F,
CMSG_COMMENTATOR_GET_PLAYER_INFO = 0x35001E,
- CMSG_COMMENTATOR_SPECTATE = 0x350163,
+ CMSG_COMMENTATOR_SPECTATE = 0x350164,
CMSG_COMMENTATOR_START_WARGAME = 0x35001B,
- CMSG_COMMERCE_TOKEN_GET_COUNT = 0x35010D,
- CMSG_COMMERCE_TOKEN_GET_LOG = 0x350117,
- CMSG_COMMERCE_TOKEN_GET_MARKET_PRICE = 0x35010E,
+ CMSG_COMMERCE_TOKEN_GET_COUNT = 0x35010E,
+ CMSG_COMMERCE_TOKEN_GET_LOG = 0x350118,
+ CMSG_COMMERCE_TOKEN_GET_MARKET_PRICE = 0x35010F,
CMSG_COMPLAINT = 0x350096,
CMSG_COMPLETE_CINEMATIC = 0x3100E4,
CMSG_COMPLETE_MOVIE = 0x310076,
CMSG_CONFIRM_ARTIFACT_RESPEC = 0x300055,
- CMSG_CONFIRM_RESPEC_WIPE = 0x3000C1,
+ CMSG_CONFIRM_RESPEC_WIPE = 0x3000C3,
CMSG_CONNECT_TO_FAILED = 0x350000,
- CMSG_CONSUMABLE_TOKEN_BUY = 0x350112,
- CMSG_CONSUMABLE_TOKEN_BUY_AT_MARKET_PRICE = 0x350113,
- CMSG_CONSUMABLE_TOKEN_CAN_VETERAN_BUY = 0x350111,
- CMSG_CONSUMABLE_TOKEN_REDEEM = 0x350115,
- CMSG_CONSUMABLE_TOKEN_REDEEM_CONFIRMATION = 0x350116,
- CMSG_CONTENT_TRACKING_START_TRACKING = 0x3002CD,
- CMSG_CONTENT_TRACKING_STOP_TRACKING = 0x3002CE,
+ CMSG_CONSUMABLE_TOKEN_BUY = 0x350113,
+ CMSG_CONSUMABLE_TOKEN_BUY_AT_MARKET_PRICE = 0x350114,
+ CMSG_CONSUMABLE_TOKEN_CAN_VETERAN_BUY = 0x350112,
+ CMSG_CONSUMABLE_TOKEN_REDEEM = 0x350116,
+ CMSG_CONSUMABLE_TOKEN_REDEEM_CONFIRMATION = 0x350117,
+ CMSG_CONTENT_TRACKING_START_TRACKING = 0x3002D0,
+ CMSG_CONTENT_TRACKING_STOP_TRACKING = 0x3002D1,
CMSG_CONTRIBUTION_CONTRIBUTE = 0x3100F9,
CMSG_CONTRIBUTION_LAST_UPDATE_REQUEST = 0x3100FA,
CMSG_CONVERSATION_CINEMATIC_READY = 0x3100E6,
CMSG_CONVERSATION_LINE_STARTED = 0x3100E5,
- CMSG_CONVERT_ITEM_TO_BIND_TO_ACCOUNT = 0x3002DE,
+ CMSG_CONVERT_ITEM_TO_BIND_TO_ACCOUNT = 0x3002E0,
CMSG_CONVERT_RAID = 0x350078,
CMSG_COVENANT_RENOWN_REQUEST_CATCHUP_STATE = 0x31010D,
CMSG_CRAFTING_ORDER_CANCEL = 0x310119,
@@ -308,16 +309,16 @@ enum OpcodeClient : uint32
CMSG_CRAFTING_ORDER_REPORT_PLAYER = 0x31011B,
CMSG_CRAFTING_ORDER_UPDATE_IGNORE_LIST = 0x31011C,
CMSG_CREATE_CHARACTER = 0x35006E,
- CMSG_CREATE_SHIPMENT = 0x3001D4,
+ CMSG_CREATE_SHIPMENT = 0x3001D6,
CMSG_DB_QUERY_BULK = 0x350010,
CMSG_DECLINE_GUILD_INVITES = 0x3100B8,
CMSG_DECLINE_PETITION = 0x3100D3,
CMSG_DELETE_EQUIPMENT_SET = 0x3100A4,
CMSG_DELVE_TELEPORT_OUT = 0x310128,
- CMSG_DEL_FRIEND = 0x3500FA,
- CMSG_DEL_IGNORE = 0x3500FE,
- CMSG_DEPOSIT_REAGENT_BANK = 0x300214,
- CMSG_DESTROY_ITEM = 0x300164,
+ CMSG_DEL_FRIEND = 0x3500FB,
+ CMSG_DEL_IGNORE = 0x3500FF,
+ CMSG_DEPOSIT_REAGENT_BANK = 0x300216,
+ CMSG_DESTROY_ITEM = 0x300166,
CMSG_DF_BOOT_PLAYER_VOTE = 0x350044,
CMSG_DF_CONFIRM_EXPAND_SEARCH = 0x350036,
CMSG_DF_GET_JOIN_STATUS = 0x350042,
@@ -330,65 +331,65 @@ enum OpcodeClient : uint32
CMSG_DF_TELEPORT = 0x350045,
CMSG_DISCARDED_TIME_SYNC_ACKS = 0x33005E,
CMSG_DISMISS_CRITTER = 0x310092,
- CMSG_DO_COUNTDOWN = 0x350141,
- CMSG_DO_MASTER_LOOT_ROLL = 0x3000C6,
+ CMSG_DO_COUNTDOWN = 0x350142,
+ CMSG_DO_MASTER_LOOT_ROLL = 0x3000C8,
CMSG_DO_READY_CHECK = 0x35005E,
CMSG_DUEL_RESPONSE = 0x31007B,
- CMSG_EJECT_PASSENGER = 0x3000FF,
+ CMSG_EJECT_PASSENGER = 0x300101,
CMSG_EMOTE = 0x3100E0,
CMSG_ENABLE_NAGLE = 0x360007,
CMSG_ENABLE_TAXI_NODE = 0x31003B,
- CMSG_ENGINE_SURVEY = 0x35010C,
+ CMSG_ENGINE_SURVEY = 0x35010D,
CMSG_ENTER_ENCRYPTED_MODE_ACK = 0x360003,
CMSG_ENUM_CHARACTERS = 0x350014,
- CMSG_ENUM_CHARACTERS_DELETED_BY_CLIENT = 0x350106,
+ CMSG_ENUM_CHARACTERS_DELETED_BY_CLIENT = 0x350107,
CMSG_FAR_SIGHT = 0x310081,
CMSG_GAME_EVENT_DEBUG_DISABLE = 0x30005C,
CMSG_GAME_EVENT_DEBUG_ENABLE = 0x30005B,
CMSG_GAME_OBJ_REPORT_USE = 0x310088,
CMSG_GAME_OBJ_USE = 0x310087,
- CMSG_GARRISON_ADD_FOLLOWER_HEALTH = 0x3001CF,
- CMSG_GARRISON_ASSIGN_FOLLOWER_TO_BUILDING = 0x3001B5,
- CMSG_GARRISON_CANCEL_CONSTRUCTION = 0x3001A2,
- CMSG_GARRISON_CHECK_UPGRADEABLE = 0x300206,
- CMSG_GARRISON_COMPLETE_MISSION = 0x3001F8,
- CMSG_GARRISON_FULLY_HEAL_ALL_FOLLOWERS = 0x3001D0,
- CMSG_GARRISON_GENERATE_RECRUITS = 0x3001B8,
- CMSG_GARRISON_GET_CLASS_SPEC_CATEGORY_INFO = 0x3001C7,
- CMSG_GARRISON_GET_MAP_DATA = 0x3001CE,
- CMSG_GARRISON_GET_MISSION_REWARD = 0x30022A,
- CMSG_GARRISON_LEARN_TALENT = 0x3001C3,
- CMSG_GARRISON_MISSION_BONUS_ROLL = 0x3001FA,
- CMSG_GARRISON_PURCHASE_BUILDING = 0x30019E,
- CMSG_GARRISON_RECRUIT_FOLLOWER = 0x3001BA,
- CMSG_GARRISON_REMOVE_FOLLOWER = 0x3001EF,
- CMSG_GARRISON_REMOVE_FOLLOWER_FROM_BUILDING = 0x3001B6,
- CMSG_GARRISON_RENAME_FOLLOWER = 0x3001B7,
- CMSG_GARRISON_REQUEST_BLUEPRINT_AND_SPECIALIZATION_DATA = 0x30019D,
- CMSG_GARRISON_REQUEST_SHIPMENT_INFO = 0x3001D2,
- CMSG_GARRISON_RESEARCH_TALENT = 0x3001BB,
- CMSG_GARRISON_SET_BUILDING_ACTIVE = 0x30019F,
- CMSG_GARRISON_SET_FOLLOWER_FAVORITE = 0x3001B3,
- CMSG_GARRISON_SET_FOLLOWER_INACTIVE = 0x3001AB,
- CMSG_GARRISON_SET_RECRUITMENT_PREFERENCES = 0x3001B9,
- CMSG_GARRISON_SOCKET_TALENT = 0x300295,
- CMSG_GARRISON_START_MISSION = 0x3001F7,
- CMSG_GARRISON_SWAP_BUILDINGS = 0x3001A3,
+ CMSG_GARRISON_ADD_FOLLOWER_HEALTH = 0x3001D1,
+ CMSG_GARRISON_ASSIGN_FOLLOWER_TO_BUILDING = 0x3001B7,
+ CMSG_GARRISON_CANCEL_CONSTRUCTION = 0x3001A4,
+ CMSG_GARRISON_CHECK_UPGRADEABLE = 0x300208,
+ CMSG_GARRISON_COMPLETE_MISSION = 0x3001FA,
+ CMSG_GARRISON_FULLY_HEAL_ALL_FOLLOWERS = 0x3001D2,
+ CMSG_GARRISON_GENERATE_RECRUITS = 0x3001BA,
+ CMSG_GARRISON_GET_CLASS_SPEC_CATEGORY_INFO = 0x3001C9,
+ CMSG_GARRISON_GET_MAP_DATA = 0x3001D0,
+ CMSG_GARRISON_GET_MISSION_REWARD = 0x30022C,
+ CMSG_GARRISON_LEARN_TALENT = 0x3001C5,
+ CMSG_GARRISON_MISSION_BONUS_ROLL = 0x3001FC,
+ CMSG_GARRISON_PURCHASE_BUILDING = 0x3001A0,
+ CMSG_GARRISON_RECRUIT_FOLLOWER = 0x3001BC,
+ CMSG_GARRISON_REMOVE_FOLLOWER = 0x3001F1,
+ CMSG_GARRISON_REMOVE_FOLLOWER_FROM_BUILDING = 0x3001B8,
+ CMSG_GARRISON_RENAME_FOLLOWER = 0x3001B9,
+ CMSG_GARRISON_REQUEST_BLUEPRINT_AND_SPECIALIZATION_DATA = 0x30019F,
+ CMSG_GARRISON_REQUEST_SHIPMENT_INFO = 0x3001D4,
+ CMSG_GARRISON_RESEARCH_TALENT = 0x3001BD,
+ CMSG_GARRISON_SET_BUILDING_ACTIVE = 0x3001A1,
+ CMSG_GARRISON_SET_FOLLOWER_FAVORITE = 0x3001B5,
+ CMSG_GARRISON_SET_FOLLOWER_INACTIVE = 0x3001AD,
+ CMSG_GARRISON_SET_RECRUITMENT_PREFERENCES = 0x3001BB,
+ CMSG_GARRISON_SOCKET_TALENT = 0x300298,
+ CMSG_GARRISON_START_MISSION = 0x3001F9,
+ CMSG_GARRISON_SWAP_BUILDINGS = 0x3001A5,
CMSG_GENERATE_RANDOM_CHARACTER_NAME = 0x350013,
- CMSG_GET_ACCOUNT_CHARACTER_LIST = 0x3500DF,
- CMSG_GET_ACCOUNT_NOTIFICATIONS = 0x35015D,
- CMSG_GET_GARRISON_INFO = 0x300198,
+ CMSG_GET_ACCOUNT_CHARACTER_LIST = 0x3500E0,
+ CMSG_GET_ACCOUNT_NOTIFICATIONS = 0x35015E,
+ CMSG_GET_GARRISON_INFO = 0x30019A,
CMSG_GET_ITEM_PURCHASE_DATA = 0x3100CE,
- CMSG_GET_LANDING_PAGE_SHIPMENTS = 0x3001D3,
- CMSG_GET_MIRROR_IMAGE_DATA = 0x300168,
+ CMSG_GET_LANDING_PAGE_SHIPMENTS = 0x3001D5,
+ CMSG_GET_MIRROR_IMAGE_DATA = 0x30016A,
CMSG_GET_PVP_OPTIONS_ENABLED = 0x35001A,
- CMSG_GET_RAF_ACCOUNT_INFO = 0x35014B,
- CMSG_GET_REGIONWIDE_CHARACTER_RESTRICTION_AND_MAIL_DATA = 0x350188,
- CMSG_GET_REMAINING_GAME_TIME = 0x350114,
- CMSG_GET_TROPHY_LIST = 0x3001E8,
- CMSG_GET_UNDELETE_CHARACTER_COOLDOWN_STATUS = 0x350108,
- CMSG_GET_VAS_ACCOUNT_CHARACTER_LIST = 0x350119,
- CMSG_GET_VAS_TRANSFER_TARGET_REALM_LIST = 0x35011A,
+ CMSG_GET_RAF_ACCOUNT_INFO = 0x35014C,
+ CMSG_GET_REGIONWIDE_CHARACTER_RESTRICTION_AND_MAIL_DATA = 0x35018D,
+ CMSG_GET_REMAINING_GAME_TIME = 0x350115,
+ CMSG_GET_TROPHY_LIST = 0x3001EA,
+ CMSG_GET_UNDELETE_CHARACTER_COOLDOWN_STATUS = 0x350109,
+ CMSG_GET_VAS_ACCOUNT_CHARACTER_LIST = 0x35011A,
+ CMSG_GET_VAS_TRANSFER_TARGET_REALM_LIST = 0x35011B,
CMSG_GM_TICKET_ACKNOWLEDGE_SURVEY = 0x3500BA,
CMSG_GM_TICKET_GET_CASE_STATUS = 0x3500B9,
CMSG_GM_TICKET_GET_SYSTEM_STATUS = 0x3500B8,
@@ -430,79 +431,82 @@ enum OpcodeClient : uint32
CMSG_GUILD_REPLACE_GUILD_MASTER = 0x2E001F,
CMSG_GUILD_SET_ACHIEVEMENT_TRACKING = 0x2E0010,
CMSG_GUILD_SET_FOCUSED_ACHIEVEMENT = 0x2E0011,
- CMSG_GUILD_SET_GUILD_MASTER = 0x3500F1,
+ CMSG_GUILD_SET_GUILD_MASTER = 0x3500F2,
CMSG_GUILD_SET_MEMBER_NOTE = 0x2E0013,
CMSG_GUILD_SET_RANK_PERMISSIONS = 0x2E0008,
CMSG_GUILD_SHIFT_RANK = 0x2E0007,
CMSG_GUILD_UPDATE_INFO_TEXT = 0x2E0016,
CMSG_GUILD_UPDATE_MOTD_TEXT = 0x2E0015,
CMSG_HEARTH_AND_RESURRECT = 0x3100A0,
- CMSG_HIDE_QUEST_CHOICE = 0x300178,
+ CMSG_HIDE_QUEST_CHOICE = 0x30017A,
CMSG_HOTFIX_REQUEST = 0x350011,
CMSG_IGNORE_TRADE = 0x300003,
CMSG_INITIATE_ROLE_POLL = 0x350006,
CMSG_INITIATE_TRADE = 0x300000,
CMSG_INSPECT = 0x3100C8,
CMSG_INSTANCE_LOCK_RESPONSE = 0x3100A5,
- CMSG_ISLAND_QUEUE = 0x300259,
+ CMSG_ISLAND_QUEUE = 0x30025C,
CMSG_ITEM_PURCHASE_REFUND = 0x3100CF,
- CMSG_ITEM_TEXT_QUERY = 0x300207,
- CMSG_JOIN_PET_BATTLE_QUEUE = 0x30008A,
+ CMSG_ITEM_TEXT_QUERY = 0x300209,
+ CMSG_JOIN_PET_BATTLE_QUEUE = 0x30008C,
CMSG_JOIN_RATED_BATTLEGROUND = 0x300023,
CMSG_KEEP_ALIVE = 0x3500A9,
- CMSG_KEYBOUND_OVERRIDE = 0x3000DC,
+ CMSG_KEYBOUND_OVERRIDE = 0x3000DE,
CMSG_LATENCY_REPORT = 0x36000D,
CMSG_LEARN_PVP_TALENTS = 0x3100F8,
CMSG_LEARN_TALENTS = 0x3100F6,
CMSG_LEAVE_GROUP = 0x350073,
- CMSG_LEAVE_PET_BATTLE_QUEUE = 0x30008B,
+ CMSG_LEAVE_PET_BATTLE_QUEUE = 0x30008D,
CMSG_LFG_LIST_APPLY_TO_GROUP = 0x35003B,
CMSG_LFG_LIST_CANCEL_APPLICATION = 0x35003C,
CMSG_LFG_LIST_DECLINE_APPLICANT = 0x35003D,
CMSG_LFG_LIST_GET_STATUS = 0x350039,
CMSG_LFG_LIST_INVITE_APPLICANT = 0x35003E,
CMSG_LFG_LIST_INVITE_RESPONSE = 0x35003F,
- CMSG_LFG_LIST_JOIN = 0x30024D,
+ CMSG_LFG_LIST_JOIN = 0x300250,
CMSG_LFG_LIST_LEAVE = 0x350038,
CMSG_LFG_LIST_SEARCH = 0x35003A,
- CMSG_LFG_LIST_UPDATE_REQUEST = 0x30024E,
+ CMSG_LFG_LIST_UPDATE_REQUEST = 0x300251,
CMSG_LIST_INVENTORY = 0x310032,
- CMSG_LIVE_REGION_ACCOUNT_RESTORE = 0x3500E2,
- CMSG_LIVE_REGION_CHARACTER_COPY = 0x3500E1,
- CMSG_LIVE_REGION_GET_ACCOUNT_CHARACTER_LIST = 0x3500E0,
- CMSG_LIVE_REGION_KEY_BINDINGS_COPY = 0x3500E3,
+ CMSG_LIVE_REGION_ACCOUNT_RESTORE = 0x3500E3,
+ CMSG_LIVE_REGION_CHARACTER_COPY = 0x3500E2,
+ CMSG_LIVE_REGION_GET_ACCOUNT_CHARACTER_LIST = 0x3500E1,
+ CMSG_LIVE_REGION_KEY_BINDINGS_COPY = 0x3500E4,
CMSG_LOADING_SCREEN_NOTIFY = 0x350024,
- CMSG_LOAD_SELECTED_TROPHY = 0x3001E9,
- CMSG_LOBBY_MATCHMAKER_ACCEPT_PARTY_INVITE = 0x350167,
- CMSG_LOBBY_MATCHMAKER_CREATE_CHARACTER = 0x350175,
- CMSG_LOBBY_MATCHMAKER_LEAVE_PARTY = 0x35016A,
- CMSG_LOBBY_MATCHMAKER_PARTY_INVITE = 0x350166,
- CMSG_LOBBY_MATCHMAKER_PARTY_UNINVITE = 0x350169,
- CMSG_LOBBY_MATCHMAKER_REJECT_PARTY_INVITE = 0x350168,
- CMSG_LOBBY_MATCHMAKER_SET_PARTY_PLAYLIST_ENTRY = 0x35016B,
- CMSG_LOBBY_MATCHMAKER_SET_PLAYER_READY = 0x35016C,
+ CMSG_LOAD_SELECTED_TROPHY = 0x3001EB,
+ CMSG_LOBBY_MATCHMAKER_ABANDON_QUEUE = 0x350171,
+ CMSG_LOBBY_MATCHMAKER_ACCEPT_PARTY_INVITE = 0x350168,
+ CMSG_LOBBY_MATCHMAKER_CREATE_CHARACTER = 0x35017A,
+ CMSG_LOBBY_MATCHMAKER_ENTER_QUEUE = 0x35016F,
+ CMSG_LOBBY_MATCHMAKER_LEAVE_PARTY = 0x35016B,
+ CMSG_LOBBY_MATCHMAKER_PARTY_INVITE = 0x350167,
+ CMSG_LOBBY_MATCHMAKER_PARTY_UNINVITE = 0x35016A,
+ CMSG_LOBBY_MATCHMAKER_QUEUE_PROPSAL_RESPONSE = 0x350170,
+ CMSG_LOBBY_MATCHMAKER_REJECT_PARTY_INVITE = 0x350169,
+ CMSG_LOBBY_MATCHMAKER_SET_PARTY_PLAYLIST_ENTRY = 0x35016C,
+ CMSG_LOBBY_MATCHMAKER_SET_PLAYER_READY = 0x35016D,
CMSG_LOGOUT_CANCEL = 0x310071,
CMSG_LOGOUT_INSTANT = 0x310072,
CMSG_LOGOUT_LOBBY_MATCHMAKER = 0x310120,
CMSG_LOGOUT_REQUEST = 0x310070,
CMSG_LOG_DISCONNECT = 0x360005,
CMSG_LOG_STREAMING_ERROR = 0x360009,
- CMSG_LOOT_ITEM = 0x3000C4,
- CMSG_LOOT_MONEY = 0x3000C3,
- CMSG_LOOT_RELEASE = 0x3000C8,
- CMSG_LOOT_ROLL = 0x3000C9,
- CMSG_LOOT_UNIT = 0x3000C2,
- CMSG_LOW_LEVEL_RAID1 = 0x3500CB,
+ CMSG_LOOT_ITEM = 0x3000C6,
+ CMSG_LOOT_MONEY = 0x3000C5,
+ CMSG_LOOT_RELEASE = 0x3000CA,
+ CMSG_LOOT_ROLL = 0x3000CB,
+ CMSG_LOOT_UNIT = 0x3000C4,
+ CMSG_LOW_LEVEL_RAID1 = 0x3500CC,
CMSG_LOW_LEVEL_RAID2 = 0x3100AC,
CMSG_MAIL_CREATE_TEXT_ITEM = 0x3100DA,
- CMSG_MAIL_DELETE = 0x3000DE,
+ CMSG_MAIL_DELETE = 0x3000E0,
CMSG_MAIL_GET_LIST = 0x3100D5,
CMSG_MAIL_MARK_AS_READ = 0x3100D9,
CMSG_MAIL_RETURN_TO_SENDER = 0x35007F,
CMSG_MAIL_TAKE_ITEM = 0x3100D7,
CMSG_MAIL_TAKE_MONEY = 0x3100D6,
- CMSG_MAKE_CONTITIONAL_APPEARANCE_PERMANENT = 0x3000E0,
- CMSG_MASTER_LOOT_ITEM = 0x3000C5,
+ CMSG_MAKE_CONTITIONAL_APPEARANCE_PERMANENT = 0x3000E2,
+ CMSG_MASTER_LOOT_ITEM = 0x3000C7,
CMSG_MERGE_GUILD_BANK_ITEM_WITH_GUILD_BANK_ITEM = 0x310053,
CMSG_MERGE_GUILD_BANK_ITEM_WITH_ITEM = 0x310050,
CMSG_MERGE_ITEM_WITH_GUILD_BANK_ITEM = 0x31004E,
@@ -510,7 +514,7 @@ enum OpcodeClient : uint32
CMSG_MISSILE_TRAJECTORY_COLLISION = 0x300034,
CMSG_MOUNT_CLEAR_FANFARE = 0x2A0003,
CMSG_MOUNT_SET_FAVORITE = 0x35005C,
- CMSG_MOUNT_SPECIAL_ANIM = 0x30014E,
+ CMSG_MOUNT_SPECIAL_ANIM = 0x300150,
CMSG_MOVE_ADD_IMPULSE_ACK = 0x33006D,
CMSG_MOVE_APPLY_INERTIA_ACK = 0x33006B,
CMSG_MOVE_APPLY_MOVEMENT_FORCE_ACK = 0x330031,
@@ -601,47 +605,47 @@ enum OpcodeClient : uint32
CMSG_MOVE_UPDATE_FALL_SPEED = 0x330036,
CMSG_MOVE_WATER_WALK_ACK = 0x330039,
CMSG_MYTHIC_PLUS_REQUEST_MAP_STATS = 0x2D0001,
- CMSG_NEUTRAL_PLAYER_SELECT_FACTION = 0x300080,
+ CMSG_NEUTRAL_PLAYER_SELECT_FACTION = 0x300082,
CMSG_NEXT_CINEMATIC_CAMERA = 0x3100E3,
CMSG_OBJECT_UPDATE_FAILED = 0x30002A,
CMSG_OBJECT_UPDATE_RESCUED = 0x30002B,
- CMSG_OFFER_PETITION = 0x30027F,
+ CMSG_OFFER_PETITION = 0x300282,
CMSG_OPENING_CINEMATIC = 0x3100E2,
- CMSG_OPEN_ITEM = 0x300208,
- CMSG_OPEN_MISSION_NPC = 0x3001C9,
- CMSG_OPEN_SHIPMENT_NPC = 0x3001D1,
- CMSG_OPEN_TRADESKILL_NPC = 0x3001DC,
+ CMSG_OPEN_ITEM = 0x30020A,
+ CMSG_OPEN_MISSION_NPC = 0x3001CB,
+ CMSG_OPEN_SHIPMENT_NPC = 0x3001D3,
+ CMSG_OPEN_TRADESKILL_NPC = 0x3001DE,
CMSG_OPT_OUT_OF_LOOT = 0x31008F,
CMSG_OVERRIDE_SCREEN_FLASH = 0x3100B9,
CMSG_PARTY_INVITE = 0x350030,
CMSG_PARTY_INVITE_RESPONSE = 0x350032,
CMSG_PARTY_UNINVITE = 0x350071,
- CMSG_PERFORM_ITEM_INTERACTION = 0x3000E8,
- CMSG_PERKS_PROGRAM_ITEMS_REFRESHED = 0x3002A7,
+ CMSG_PERFORM_ITEM_INTERACTION = 0x3000EA,
+ CMSG_PERKS_PROGRAM_ITEMS_REFRESHED = 0x3002AA,
CMSG_PERKS_PROGRAM_REQUEST_PENDING_REWARDS = 0x2A0011,
- CMSG_PERKS_PROGRAM_REQUEST_PURCHASE = 0x3002A9,
- CMSG_PERKS_PROGRAM_REQUEST_REFUND = 0x3002AA,
- CMSG_PERKS_PROGRAM_SET_FROZEN_VENDOR_ITEM = 0x3002AB,
- CMSG_PERKS_PROGRAM_STATUS_REQUEST = 0x3002A8,
+ CMSG_PERKS_PROGRAM_REQUEST_PURCHASE = 0x3002AC,
+ CMSG_PERKS_PROGRAM_REQUEST_REFUND = 0x3002AD,
+ CMSG_PERKS_PROGRAM_SET_FROZEN_VENDOR_ITEM = 0x3002AE,
+ CMSG_PERKS_PROGRAM_STATUS_REQUEST = 0x3002AB,
CMSG_PETITION_BUY = 0x31005B,
- CMSG_PETITION_RENAME_GUILD = 0x3500F2,
+ CMSG_PETITION_RENAME_GUILD = 0x3500F3,
CMSG_PETITION_SHOW_LIST = 0x31005A,
CMSG_PETITION_SHOW_SIGNATURES = 0x31005C,
CMSG_PET_ABANDON = 0x31001D,
CMSG_PET_ABANDON_BY_NUMBER = 0x31001E,
CMSG_PET_ACTION = 0x31001B,
- CMSG_PET_BATTLE_FINAL_NOTIFY = 0x30008F,
+ CMSG_PET_BATTLE_FINAL_NOTIFY = 0x300091,
CMSG_PET_BATTLE_INPUT = 0x35006B,
- CMSG_PET_BATTLE_QUEUE_PROPOSE_MATCH_RESULT = 0x3000DD,
- CMSG_PET_BATTLE_QUIT_NOTIFY = 0x30008E,
+ CMSG_PET_BATTLE_QUEUE_PROPOSE_MATCH_RESULT = 0x3000DF,
+ CMSG_PET_BATTLE_QUIT_NOTIFY = 0x300090,
CMSG_PET_BATTLE_REPLACE_FRONT_PET = 0x35006C,
- CMSG_PET_BATTLE_REQUEST_PVP = 0x300088,
- CMSG_PET_BATTLE_REQUEST_UPDATE = 0x300089,
- CMSG_PET_BATTLE_REQUEST_WILD = 0x300086,
- CMSG_PET_BATTLE_SCRIPT_ERROR_NOTIFY = 0x300090,
- CMSG_PET_BATTLE_WILD_LOCATION_FAIL = 0x300087,
+ CMSG_PET_BATTLE_REQUEST_PVP = 0x30008A,
+ CMSG_PET_BATTLE_REQUEST_UPDATE = 0x30008B,
+ CMSG_PET_BATTLE_REQUEST_WILD = 0x300088,
+ CMSG_PET_BATTLE_SCRIPT_ERROR_NOTIFY = 0x300092,
+ CMSG_PET_BATTLE_WILD_LOCATION_FAIL = 0x300089,
CMSG_PET_CANCEL_AURA = 0x31001F,
- CMSG_PET_CAST_SPELL = 0x30016D,
+ CMSG_PET_CAST_SPELL = 0x30016F,
CMSG_PET_RENAME = 0x3500AE,
CMSG_PET_SET_ACTION = 0x31001A,
CMSG_PET_SPELL_AUTOCAST = 0x310020,
@@ -650,31 +654,33 @@ enum OpcodeClient : uint32
CMSG_PLAYER_LOGIN = 0x350016,
CMSG_PUSH_QUEST_TO_PARTY = 0x310030,
CMSG_PVP_LOG_DATA = 0x300026,
- CMSG_QUERY_BATTLE_PET_NAME = 0x300141,
+ CMSG_QUERY_BATTLE_PET_NAME = 0x300143,
CMSG_QUERY_CORPSE_LOCATION_FROM_CLIENT = 0x35008A,
CMSG_QUERY_CORPSE_TRANSPORT = 0x35008B,
CMSG_QUERY_COUNTDOWN_TIMER = 0x300053,
- CMSG_QUERY_CREATURE = 0x30013B,
- CMSG_QUERY_GAME_OBJECT = 0x30013C,
- CMSG_QUERY_GARRISON_PET_NAME = 0x300142,
+ CMSG_QUERY_CREATURE = 0x30013D,
+ CMSG_QUERY_GAME_OBJECT = 0x30013E,
+ CMSG_QUERY_GARRISON_PET_NAME = 0x300144,
CMSG_QUERY_GUILD_INFO = 0x3500B4,
CMSG_QUERY_INSPECT_ACHIEVEMENTS = 0x310099,
CMSG_QUERY_NEXT_MAIL_TIME = 0x3100D8,
- CMSG_QUERY_NPC_TEXT = 0x30013D,
- CMSG_QUERY_PAGE_TEXT = 0x30013F,
- CMSG_QUERY_PETITION = 0x300143,
- CMSG_QUERY_PET_NAME = 0x300140,
+ CMSG_QUERY_NPC_TEXT = 0x30013F,
+ CMSG_QUERY_PAGE_TEXT = 0x300141,
+ CMSG_QUERY_PETITION = 0x300145,
+ CMSG_QUERY_PET_NAME = 0x300142,
CMSG_QUERY_PLAYER_NAMES = 0x36000E,
CMSG_QUERY_PLAYER_NAMES_FOR_COMMUNITY = 0x36000C,
CMSG_QUERY_PLAYER_NAME_BY_COMMUNITY_ID = 0x36000B,
CMSG_QUERY_QUEST_COMPLETION_NPCS = 0x30001F,
- CMSG_QUERY_QUEST_INFO = 0x30013E,
+ CMSG_QUERY_QUEST_INFO = 0x300140,
CMSG_QUERY_QUEST_ITEM_USABILITY = 0x300020,
CMSG_QUERY_REALM_NAME = 0x3500B3,
CMSG_QUERY_SCENARIO_POI = 0x350080,
+ CMSG_QUERY_SELECTED_WOW_LABS_AREA = 0x3002E5,
CMSG_QUERY_TIME = 0x31006F,
- CMSG_QUERY_TREASURE_PICKER = 0x30022D,
+ CMSG_QUERY_TREASURE_PICKER = 0x30022F,
CMSG_QUERY_VOID_STORAGE = 0x30004C,
+ CMSG_QUERY_WOW_LABS_AREA_INFO = 0x3002E6,
CMSG_QUEST_CONFIRM_ACCEPT = 0x31002F,
CMSG_QUEST_GIVER_ACCEPT_QUEST = 0x310029,
CMSG_QUEST_GIVER_CHOOSE_REWARD = 0x31002B,
@@ -686,117 +692,119 @@ enum OpcodeClient : uint32
CMSG_QUEST_GIVER_STATUS_MULTIPLE_QUERY = 0x31002E,
CMSG_QUEST_GIVER_STATUS_QUERY = 0x31002D,
CMSG_QUEST_LOG_REMOVE_QUEST = 0x3100CD,
- CMSG_QUEST_POI_QUERY = 0x3500D9,
+ CMSG_QUEST_POI_QUERY = 0x3500DA,
CMSG_QUEST_PUSH_RESULT = 0x310031,
- CMSG_QUEST_SESSION_BEGIN_RESPONSE = 0x300271,
- CMSG_QUEST_SESSION_REQUEST_START = 0x300270,
- CMSG_QUEST_SESSION_REQUEST_STOP = 0x350156,
+ CMSG_QUEST_SESSION_BEGIN_RESPONSE = 0x300274,
+ CMSG_QUEST_SESSION_REQUEST_START = 0x300273,
+ CMSG_QUEST_SESSION_REQUEST_STOP = 0x350157,
CMSG_QUEUED_MESSAGES_END = 0x360008,
- CMSG_QUICK_JOIN_AUTO_ACCEPT_REQUESTS = 0x35012E,
- CMSG_QUICK_JOIN_REQUEST_INVITE = 0x35012D,
- CMSG_QUICK_JOIN_REQUEST_INVITE_WITH_CONFIRMATION = 0x35015B,
- CMSG_QUICK_JOIN_RESPOND_TO_INVITE = 0x35012C,
- CMSG_QUICK_JOIN_SIGNAL_TOAST_DISPLAYED = 0x35012B,
+ CMSG_QUICK_JOIN_AUTO_ACCEPT_REQUESTS = 0x35012F,
+ CMSG_QUICK_JOIN_REQUEST_INVITE = 0x35012E,
+ CMSG_QUICK_JOIN_REQUEST_INVITE_WITH_CONFIRMATION = 0x35015C,
+ CMSG_QUICK_JOIN_RESPOND_TO_INVITE = 0x35012D,
+ CMSG_QUICK_JOIN_SIGNAL_TOAST_DISPLAYED = 0x35012C,
CMSG_RAF_CLAIM_ACTIVITY_REWARD = 0x31009D,
- CMSG_RAF_CLAIM_NEXT_REWARD = 0x35014C,
- CMSG_RAF_GENERATE_RECRUITMENT_LINK = 0x35014E,
- CMSG_RAF_UPDATE_RECRUITMENT_INFO = 0x35014D,
+ CMSG_RAF_CLAIM_NEXT_REWARD = 0x35014D,
+ CMSG_RAF_GENERATE_RECRUITMENT_LINK = 0x35014F,
+ CMSG_RAF_UPDATE_RECRUITMENT_INFO = 0x35014E,
CMSG_RANDOM_ROLL = 0x35007E,
CMSG_READY_CHECK_RESPONSE = 0x35005F,
- CMSG_READ_ITEM = 0x300209,
+ CMSG_READ_ITEM = 0x30020B,
CMSG_RECLAIM_CORPSE = 0x310074,
- CMSG_REMOVE_NEW_ITEM = 0x300230,
- CMSG_REMOVE_RAF_RECRUIT = 0x35014F,
+ CMSG_REMOVE_NEW_ITEM = 0x300232,
+ CMSG_REMOVE_RAF_RECRUIT = 0x350150,
CMSG_REORDER_CHARACTERS = 0x350015,
CMSG_REPAIR_ITEM = 0x310085,
- CMSG_REPLACE_TROPHY = 0x3001EA,
+ CMSG_REPLACE_TROPHY = 0x3001EC,
CMSG_REPOP_REQUEST = 0x3100C5,
- CMSG_REPORT_CLIENT_VARIABLES = 0x350128,
- CMSG_REPORT_ENABLED_ADDONS = 0x350127,
- CMSG_REPORT_KEYBINDING_EXECUTION_COUNTS = 0x350129,
+ CMSG_REPORT_CLIENT_VARIABLES = 0x350129,
+ CMSG_REPORT_ENABLED_ADDONS = 0x350128,
+ CMSG_REPORT_KEYBINDING_EXECUTION_COUNTS = 0x35012A,
CMSG_REPORT_PVP_PLAYER_AFK = 0x31008D,
- CMSG_REPORT_SERVER_LAG = 0x300269,
- CMSG_REPORT_STUCK_IN_COMBAT = 0x30026A,
- CMSG_REQUEST_ACCOUNT_DATA = 0x3500BF,
- CMSG_REQUEST_AREA_POI_UPDATE = 0x30022F,
+ CMSG_REPORT_SERVER_LAG = 0x30026C,
+ CMSG_REPORT_STUCK_IN_COMBAT = 0x30026D,
+ CMSG_REQUEST_ACCOUNT_DATA = 0x3500C0,
+ CMSG_REQUEST_AREA_POI_UPDATE = 0x300231,
CMSG_REQUEST_BATTLEFIELD_STATUS = 0x350008,
CMSG_REQUEST_CEMETERY_LIST = 0x300021,
CMSG_REQUEST_CHARACTER_GUILD_FOLLOW_INFO = 0x3500B5,
- CMSG_REQUEST_COVENANT_CALLINGS = 0x30025B,
+ CMSG_REQUEST_COVENANT_CALLINGS = 0x30025E,
CMSG_REQUEST_CROWD_CONTROL_SPELL = 0x3100C9,
CMSG_REQUEST_CURRENCY_DATA_FOR_ACCOUNT_CHARACTERS = 0x2A0018,
- CMSG_REQUEST_GARRISON_TALENT_WORLD_QUEST_UNLOCKS = 0x300294,
+ CMSG_REQUEST_GARRISON_TALENT_WORLD_QUEST_UNLOCKS = 0x300297,
CMSG_REQUEST_GUILD_PARTY_STATE = 0x300052,
CMSG_REQUEST_GUILD_REWARDS_LIST = 0x300051,
- CMSG_REQUEST_LATEST_SPLASH_SCREEN = 0x30026B,
- CMSG_REQUEST_LFG_LIST_BLACKLIST = 0x300179,
- CMSG_REQUEST_MYTHIC_PLUS_AFFIXES = 0x3000B4,
- CMSG_REQUEST_MYTHIC_PLUS_SEASON_DATA = 0x3000B5,
- CMSG_REQUEST_PARTY_ELIGIBILITY_FOR_DELVE_TIERS = 0x3002E2,
+ CMSG_REQUEST_LATEST_SPLASH_SCREEN = 0x30026E,
+ CMSG_REQUEST_LFG_LIST_BLACKLIST = 0x30017B,
+ CMSG_REQUEST_MYTHIC_PLUS_AFFIXES = 0x3000B6,
+ CMSG_REQUEST_MYTHIC_PLUS_SEASON_DATA = 0x3000B7,
+ CMSG_REQUEST_PARTY_ELIGIBILITY_FOR_DELVE_TIERS = 0x3002E4,
CMSG_REQUEST_PARTY_JOIN_UPDATES = 0x350023,
CMSG_REQUEST_PARTY_MEMBER_STATS = 0x35007D,
CMSG_REQUEST_PET_INFO = 0x310021,
- CMSG_REQUEST_PLAYED_TIME = 0x300146,
+ CMSG_REQUEST_PLAYED_TIME = 0x300148,
CMSG_REQUEST_PVP_REWARDS = 0x30003F,
- CMSG_REQUEST_RAID_INFO = 0x3500F3,
+ CMSG_REQUEST_RAID_INFO = 0x3500F4,
CMSG_REQUEST_RATED_PVP_INFO = 0x35000F,
- CMSG_REQUEST_REALM_GUILD_MASTER_INFO = 0x35018B,
+ CMSG_REQUEST_REALM_GUILD_MASTER_INFO = 0x350190,
CMSG_REQUEST_SCHEDULED_PVP_INFO = 0x300040,
CMSG_REQUEST_STABLED_PETS = 0x310022,
- CMSG_REQUEST_VEHICLE_EXIT = 0x3000FA,
- CMSG_REQUEST_VEHICLE_NEXT_SEAT = 0x3000FC,
- CMSG_REQUEST_VEHICLE_PREV_SEAT = 0x3000FB,
- CMSG_REQUEST_VEHICLE_SWITCH_SEAT = 0x3000FD,
- CMSG_REQUEST_WEEKLY_REWARDS = 0x30025E,
- CMSG_REQUEST_WORLD_QUEST_UPDATE = 0x30022E,
- CMSG_RESET_CHALLENGE_MODE = 0x3000B2,
- CMSG_RESET_CHALLENGE_MODE_CHEAT = 0x3000B3,
+ CMSG_REQUEST_STORE_FRONT_INFO_UPDATE = 0x2A001D,
+ CMSG_REQUEST_VEHICLE_EXIT = 0x3000FC,
+ CMSG_REQUEST_VEHICLE_NEXT_SEAT = 0x3000FE,
+ CMSG_REQUEST_VEHICLE_PREV_SEAT = 0x3000FD,
+ CMSG_REQUEST_VEHICLE_SWITCH_SEAT = 0x3000FF,
+ CMSG_REQUEST_WEEKLY_REWARDS = 0x300261,
+ CMSG_REQUEST_WORLD_QUEST_UPDATE = 0x300230,
+ CMSG_RESET_CHALLENGE_MODE = 0x3000B4,
+ CMSG_RESET_CHALLENGE_MODE_CHEAT = 0x3000B5,
CMSG_RESET_INSTANCES = 0x350092,
CMSG_RESURRECT_RESPONSE = 0x3500AD,
- CMSG_REVERT_MONUMENT_APPEARANCE = 0x3001EC,
- CMSG_RIDE_VEHICLE_INTERACT = 0x3000FE,
- CMSG_RPE_RESET_CHARACTER = 0x350178,
- CMSG_SAVE_ACCOUNT_DATA_EXPORT = 0x350172,
+ CMSG_REVERT_MONUMENT_APPEARANCE = 0x3001EE,
+ CMSG_RIDE_VEHICLE_INTERACT = 0x300100,
+ CMSG_RPE_RESET_CHARACTER = 0x35017D,
+ CMSG_SAVE_ACCOUNT_DATA_EXPORT = 0x350177,
CMSG_SAVE_CUF_PROFILES = 0x300035,
CMSG_SAVE_EQUIPMENT_SET = 0x3100A3,
- CMSG_SAVE_GUILD_EMBLEM = 0x30017D,
- CMSG_SAVE_PERSONAL_EMBLEM = 0x30017E,
- CMSG_SCENE_PLAYBACK_CANCELED = 0x3000D9,
- CMSG_SCENE_PLAYBACK_COMPLETE = 0x3000D8,
- CMSG_SCENE_TRIGGER_EVENT = 0x3000DA,
- CMSG_SEAMLESS_TRANSFER_COMPLETE = 0x3002D0,
+ CMSG_SAVE_GUILD_EMBLEM = 0x30017F,
+ CMSG_SAVE_PERSONAL_EMBLEM = 0x300180,
+ CMSG_SCENE_PLAYBACK_CANCELED = 0x3000DB,
+ CMSG_SCENE_PLAYBACK_COMPLETE = 0x3000DA,
+ CMSG_SCENE_TRIGGER_EVENT = 0x3000DC,
+ CMSG_SEAMLESS_TRANSFER_COMPLETE = 0x3002D3,
+ CMSG_SELECT_WOW_LABS_AREA = 0x3002E7,
CMSG_SELF_RES = 0x3100D0,
CMSG_SELL_ALL_JUNK_ITEMS = 0x310034,
CMSG_SELL_ITEM = 0x310033,
- CMSG_SEND_CHARACTER_CLUB_INVITATION = 0x350121,
- CMSG_SEND_CONTACT_LIST = 0x3500F8,
+ CMSG_SEND_CHARACTER_CLUB_INVITATION = 0x350122,
+ CMSG_SEND_CONTACT_LIST = 0x3500F9,
CMSG_SEND_MAIL = 0x350026,
- CMSG_SEND_PING_UNIT = 0x3002D2,
- CMSG_SEND_PING_WORLD_POINT = 0x3002D3,
+ CMSG_SEND_PING_UNIT = 0x3002D5,
+ CMSG_SEND_PING_WORLD_POINT = 0x3002D6,
CMSG_SEND_TEXT_EMOTE = 0x310018,
- CMSG_SERVER_TIME_OFFSET_REQUEST = 0x3500C6,
- CMSG_SETUP_WARBAND_GROUPS = 0x350186,
- CMSG_SET_ACHIEVEMENTS_HIDDEN = 0x3000DF,
+ CMSG_SERVER_TIME_OFFSET_REQUEST = 0x3500C7,
+ CMSG_SETUP_WARBAND_GROUPS = 0x35018B,
+ CMSG_SET_ACHIEVEMENTS_HIDDEN = 0x3000E1,
CMSG_SET_ACTION_BAR_TOGGLES = 0x3100D1,
CMSG_SET_ACTION_BUTTON = 0x350060,
CMSG_SET_ACTIVE_MOVER = 0x330059,
- CMSG_SET_ADVANCED_COMBAT_LOGGING = 0x30018B,
+ CMSG_SET_ADVANCED_COMBAT_LOGGING = 0x30018D,
CMSG_SET_ASSISTANT_LEADER = 0x350079,
- CMSG_SET_BACKPACK_AUTOSORT_DISABLED = 0x30020C,
- CMSG_SET_BACKPACK_SELL_JUNK_DISABLED = 0x30020D,
- CMSG_SET_BANK_AUTOSORT_DISABLED = 0x30020E,
- CMSG_SET_CONTACT_NOTES = 0x3500FB,
+ CMSG_SET_BACKPACK_AUTOSORT_DISABLED = 0x30020E,
+ CMSG_SET_BACKPACK_SELL_JUNK_DISABLED = 0x30020F,
+ CMSG_SET_BANK_AUTOSORT_DISABLED = 0x300210,
+ CMSG_SET_CONTACT_NOTES = 0x3500FC,
CMSG_SET_CURRENCY_FLAGS = 0x300013,
- CMSG_SET_DIFFICULTY_ID = 0x3000DB,
+ CMSG_SET_DIFFICULTY_ID = 0x3000DD,
CMSG_SET_DUNGEON_DIFFICULTY = 0x3500AC,
- CMSG_SET_EMPOWER_MIN_HOLD_STAGE_PERCENT = 0x300135,
+ CMSG_SET_EMPOWER_MIN_HOLD_STAGE_PERCENT = 0x300137,
CMSG_SET_EVERYONE_IS_ASSISTANT = 0x350046,
- CMSG_SET_EXCLUDED_CHAT_CENSOR_SOURCES = 0x35012F,
+ CMSG_SET_EXCLUDED_CHAT_CENSOR_SOURCES = 0x350130,
CMSG_SET_FACTION_AT_WAR = 0x310077,
CMSG_SET_FACTION_INACTIVE = 0x310079,
CMSG_SET_FACTION_NOT_AT_WAR = 0x310078,
CMSG_SET_GAME_EVENT_DEBUG_VIEW_STATE = 0x300063,
- CMSG_SET_INSERT_ITEMS_LEFT_TO_RIGHT = 0x300210,
+ CMSG_SET_INSERT_ITEMS_LEFT_TO_RIGHT = 0x300212,
CMSG_SET_LOOT_METHOD = 0x350072,
CMSG_SET_LOOT_SPECIALIZATION = 0x3100DE,
CMSG_SET_PARTY_ASSIGNMENT = 0x35007B,
@@ -805,36 +813,36 @@ enum OpcodeClient : uint32
CMSG_SET_PET_SLOT = 0x300011,
CMSG_SET_PLAYER_DECLINED_NAMES = 0x3500B2,
CMSG_SET_PREFERRED_CEMETERY = 0x300022,
- CMSG_SET_PVP = 0x300182,
- CMSG_SET_RAID_DIFFICULTY = 0x350104,
+ CMSG_SET_PVP = 0x300184,
+ CMSG_SET_RAID_DIFFICULTY = 0x350105,
CMSG_SET_RESTRICT_PINGS_TO_ASSISTANTS = 0x350047,
CMSG_SET_ROLE = 0x350005,
CMSG_SET_SAVED_INSTANCE_EXTEND = 0x3500B0,
CMSG_SET_SELECTION = 0x3100C7,
CMSG_SET_SHEATHED = 0x310019,
- CMSG_SET_SORT_BAGS_RIGHT_TO_LEFT = 0x30020F,
+ CMSG_SET_SORT_BAGS_RIGHT_TO_LEFT = 0x300211,
CMSG_SET_TAXI_BENCHMARK_MODE = 0x31008C,
- CMSG_SET_TITLE = 0x30014C,
+ CMSG_SET_TITLE = 0x30014E,
CMSG_SET_TRADE_CURRENCY = 0x30000A,
CMSG_SET_TRADE_GOLD = 0x300009,
CMSG_SET_TRADE_ITEM = 0x300007,
- CMSG_SET_USING_PARTY_GARRISON = 0x3001CB,
- CMSG_SET_WAR_MODE = 0x300183,
+ CMSG_SET_USING_PARTY_GARRISON = 0x3001CD,
+ CMSG_SET_WAR_MODE = 0x300185,
CMSG_SET_WATCHED_FACTION = 0x31007A,
- CMSG_SHOW_TRADE_SKILL = 0x3500EB,
+ CMSG_SHOW_TRADE_SKILL = 0x3500EC,
CMSG_SIGN_PETITION = 0x3100D2,
CMSG_SILENCE_PARTY_TALKER = 0x35007C,
- CMSG_SOCIAL_CONTRACT_REQUEST = 0x35016D,
+ CMSG_SOCIAL_CONTRACT_REQUEST = 0x350172,
CMSG_SOCKET_GEMS = 0x310084,
- CMSG_SORT_ACCOUNT_BANK_BAGS = 0x3002D6,
- CMSG_SORT_BAGS = 0x300211,
- CMSG_SORT_BANK_BAGS = 0x300212,
- CMSG_SORT_REAGENT_BANK_BAGS = 0x300213,
- CMSG_SPAWN_TRACKING_UPDATE = 0x300161,
- CMSG_SPECTATE_CHANGE = 0x3002C9,
+ CMSG_SORT_ACCOUNT_BANK_BAGS = 0x3002D9,
+ CMSG_SORT_BAGS = 0x300213,
+ CMSG_SORT_BANK_BAGS = 0x300214,
+ CMSG_SORT_REAGENT_BANK_BAGS = 0x300215,
+ CMSG_SPAWN_TRACKING_UPDATE = 0x300163,
+ CMSG_SPECTATE_CHANGE = 0x3002CC,
CMSG_SPELL_CLICK = 0x310026,
- CMSG_SPELL_EMPOWER_RELEASE = 0x300133,
- CMSG_SPELL_EMPOWER_RESTART = 0x300134,
+ CMSG_SPELL_EMPOWER_RELEASE = 0x300135,
+ CMSG_SPELL_EMPOWER_RESTART = 0x300136,
CMSG_SPIRIT_HEALER_ACTIVATE = 0x310041,
CMSG_SPLIT_GUILD_BANK_ITEM = 0x310054,
CMSG_SPLIT_GUILD_BANK_ITEM_TO_INVENTORY = 0x310051,
@@ -845,8 +853,8 @@ enum OpcodeClient : uint32
CMSG_START_SPECTATOR_WAR_GAME = 0x35000B,
CMSG_START_WAR_GAME = 0x35000A,
CMSG_STORE_GUILD_BANK_ITEM = 0x31004A,
- CMSG_SUBMIT_USER_FEEDBACK = 0x3500BE,
- CMSG_SUBSCRIPTION_INTERSTITIAL_RESPONSE = 0x300289,
+ CMSG_SUBMIT_USER_FEEDBACK = 0x3500BF,
+ CMSG_SUBSCRIPTION_INTERSTITIAL_RESPONSE = 0x30028C,
CMSG_SUMMON_RESPONSE = 0x350094,
CMSG_SUPPORT_TICKET_SUBMIT_COMPLAINT = 0x350070,
CMSG_SURRENDER_ARENA = 0x30001E,
@@ -858,7 +866,7 @@ enum OpcodeClient : uint32
CMSG_SWAP_ITEM_WITH_GUILD_BANK_ITEM = 0x31004B,
CMSG_SWAP_SUB_GROUPS = 0x350077,
CMSG_SWAP_VOID_ITEM = 0x30004E,
- CMSG_TABARD_VENDOR_ACTIVATE = 0x30017F,
+ CMSG_TABARD_VENDOR_ACTIVATE = 0x300181,
CMSG_TALK_TO_GOSSIP = 0x310023,
CMSG_TAXI_NODE_STATUS_QUERY = 0x31003A,
CMSG_TAXI_QUERY_AVAILABLE_NODES = 0x31003C,
@@ -868,166 +876,170 @@ enum OpcodeClient : uint32
CMSG_TIME_SYNC_RESPONSE_DROPPED = 0x33005C,
CMSG_TIME_SYNC_RESPONSE_FAILED = 0x33005B,
CMSG_TOGGLE_DIFFICULTY = 0x350081,
- CMSG_TOGGLE_PVP = 0x300181,
+ CMSG_TOGGLE_PVP = 0x300183,
CMSG_TOTEM_DESTROYED = 0x310091,
CMSG_TOY_CLEAR_FANFARE = 0x2A0004,
- CMSG_TRADE_SKILL_SET_FAVORITE = 0x30022C,
+ CMSG_TRADE_SKILL_SET_FAVORITE = 0x30022E,
CMSG_TRAINER_BUY_SPELL = 0x310040,
CMSG_TRAINER_LIST = 0x31003F,
- CMSG_TRAITS_COMMIT_CONFIG = 0x3002B1,
- CMSG_TRAITS_TALENT_TEST_UNLEARN_SPELLS = 0x3002AF,
- CMSG_TRANSFER_CURRENCY_FROM_ACCOUNT_CHARACTER = 0x3002E0,
+ CMSG_TRAITS_COMMIT_CONFIG = 0x3002B4,
+ CMSG_TRAITS_TALENT_TEST_UNLEARN_SPELLS = 0x3002B2,
+ CMSG_TRANSFER_CURRENCY_FROM_ACCOUNT_CHARACTER = 0x3002E2,
CMSG_TRANSMOGRIFY_ITEMS = 0x300041,
CMSG_TURN_IN_PETITION = 0x3100D4,
- CMSG_TUTORIAL = 0x350105,
- CMSG_UI_MAP_QUEST_LINES_REQUEST = 0x30025A,
+ CMSG_TUTORIAL = 0x350106,
+ CMSG_UI_MAP_QUEST_LINES_REQUEST = 0x30025D,
CMSG_UNACCEPT_TRADE = 0x300005,
- CMSG_UNDELETE_CHARACTER = 0x350107,
+ CMSG_UNDELETE_CHARACTER = 0x350108,
CMSG_UNLEARN_SKILL = 0x31007E,
CMSG_UNLEARN_SPECIALIZATION = 0x30004F,
CMSG_UNLOCK_VOID_STORAGE = 0x30004B,
- CMSG_UPDATE_AADC_STATUS = 0x350161,
+ CMSG_UPDATE_AADC_STATUS = 0x350162,
CMSG_UPDATE_ACCOUNT_BANK_TAB_SETTINGS = 0x310127,
- CMSG_UPDATE_ACCOUNT_DATA = 0x3500C0,
- CMSG_UPDATE_AREA_TRIGGER_VISUAL = 0x300170,
+ CMSG_UPDATE_ACCOUNT_DATA = 0x3500C1,
+ CMSG_UPDATE_AREA_TRIGGER_VISUAL = 0x300172,
CMSG_UPDATE_CLIENT_SETTINGS = 0x35008E,
- CMSG_UPDATE_CRAFTING_NPC_RECIPES = 0x3001DD,
+ CMSG_UPDATE_CRAFTING_NPC_RECIPES = 0x3001DF,
CMSG_UPDATE_MISSILE_TRAJECTORY = 0x330060,
CMSG_UPDATE_RAID_TARGET = 0x35007A,
- CMSG_UPDATE_SPELL_VISUAL = 0x30016F,
- CMSG_UPDATE_VAS_PURCHASE_STATES = 0x35011C,
- CMSG_UPGRADE_GARRISON = 0x300193,
- CMSG_UPGRADE_RUNEFORGE_LEGENDARY = 0x300287,
+ CMSG_UPDATE_SPELL_VISUAL = 0x300171,
+ CMSG_UPDATE_VAS_PURCHASE_STATES = 0x35011D,
+ CMSG_UPGRADE_GARRISON = 0x300195,
+ CMSG_UPGRADE_RUNEFORGE_LEGENDARY = 0x30028A,
CMSG_USED_FOLLOW = 0x300030,
- CMSG_USE_CRITTER_ITEM = 0x300104,
+ CMSG_USE_CRITTER_ITEM = 0x300106,
CMSG_USE_EQUIPMENT_SET = 0x320001,
- CMSG_USE_ITEM = 0x300169,
- CMSG_USE_TOY = 0x30016C,
- CMSG_VAS_CHECK_TRANSFER_OK = 0x350134,
- CMSG_VAS_GET_QUEUE_MINUTES = 0x350133,
- CMSG_VAS_GET_SERVICE_STATUS = 0x350132,
+ CMSG_USE_ITEM = 0x30016B,
+ CMSG_USE_TOY = 0x30016E,
+ CMSG_VAS_CHECK_TRANSFER_OK = 0x350135,
+ CMSG_VAS_GET_QUEUE_MINUTES = 0x350134,
+ CMSG_VAS_GET_SERVICE_STATUS = 0x350133,
CMSG_VIOLENCE_LEVEL = 0x30002E,
- CMSG_VOICE_CHANNEL_STT_TOKEN_REQUEST = 0x350138,
- CMSG_VOICE_CHAT_JOIN_CHANNEL = 0x350139,
- CMSG_VOICE_CHAT_LOGIN = 0x350137,
+ CMSG_VOICE_CHANNEL_STT_TOKEN_REQUEST = 0x350139,
+ CMSG_VOICE_CHAT_JOIN_CHANNEL = 0x35013A,
+ CMSG_VOICE_CHAT_LOGIN = 0x350138,
CMSG_VOID_STORAGE_TRANSFER = 0x30004D,
CMSG_WARDEN3_DATA = 0x350018,
CMSG_WHO = 0x3500AB,
CMSG_WHO_IS = 0x3500AA,
- CMSG_WORLD_LOOT_OBJECT_CLICK = 0x3002CC,
+ CMSG_WORLD_LOOT_OBJECT_CLICK = 0x3002CF,
CMSG_WORLD_PORT_RESPONSE = 0x350025,
CMSG_WRAP_ITEM = 0x320000,
};
-inline constexpr std::size_t NUM_CMSG_OPCODES = 1699;
+inline constexpr std::size_t NUM_CMSG_OPCODES = 1713;
inline constexpr std::ptrdiff_t GetOpcodeArrayIndex(OpcodeClient opcode)
{
uint32 idInGroup = opcode & 0xFFFF;
switch (opcode >> 16)
{
- case 0x2A: return idInGroup < 26 ? idInGroup + 0 : -1;
- case 0x2C: return idInGroup < 47 ? idInGroup + 26 : -1;
- case 0x2D: return idInGroup < 3 ? idInGroup + 73 : -1;
- case 0x2E: return idInGroup < 33 ? idInGroup + 76 : -1;
- case 0x30: return idInGroup < 739 ? idInGroup + 109 : -1;
- case 0x31: return idInGroup < 298 ? idInGroup + 848 : -1;
- case 0x32: return idInGroup < 12 ? idInGroup + 1146 : -1;
- case 0x33: return idInGroup < 130 ? idInGroup + 1158 : -1;
- case 0x35: return idInGroup < 396 ? idInGroup + 1288 : -1;
- case 0x36: return idInGroup < 15 ? idInGroup + 1684 : -1;
+ case 0x2A: return idInGroup < 30 ? idInGroup + 0 : -1;
+ case 0x2C: return idInGroup < 47 ? idInGroup + 30 : -1;
+ case 0x2D: return idInGroup < 3 ? idInGroup + 77 : -1;
+ case 0x2E: return idInGroup < 33 ? idInGroup + 80 : -1;
+ case 0x30: return idInGroup < 744 ? idInGroup + 113 : -1;
+ case 0x31: return idInGroup < 298 ? idInGroup + 857 : -1;
+ case 0x32: return idInGroup < 12 ? idInGroup + 1155 : -1;
+ case 0x33: return idInGroup < 130 ? idInGroup + 1167 : -1;
+ case 0x35: return idInGroup < 401 ? idInGroup + 1297 : -1;
+ case 0x36: return idInGroup < 15 ? idInGroup + 1698 : -1;
default: return -1;
}
}
enum OpcodeServer : uint32
{
- SMSG_ABORT_NEW_WORLD = 0x37002F,
- SMSG_ACCOUNT_CHARACTER_CURRENCY_LISTS = 0x370334,
- SMSG_ACCOUNT_CONVERSION_STATE_UPDATE = 0x370339,
- SMSG_ACCOUNT_COSMETIC_ADDED = 0x3702F7,
- SMSG_ACCOUNT_CRITERIA_UPDATE = 0x3702DE,
- SMSG_ACCOUNT_DATA_TIMES = 0x3701A0,
- SMSG_ACCOUNT_EXPORT_RESPONSE = 0x370325,
- SMSG_ACCOUNT_MOUNT_REMOVED = 0x370046,
- SMSG_ACCOUNT_MOUNT_UPDATE = 0x370045,
- SMSG_ACCOUNT_NOTIFICATIONS_RESPONSE = 0x3702F6,
- SMSG_ACCOUNT_TOY_UPDATE = 0x370047,
- SMSG_ACCOUNT_TRANSMOG_SET_FAVORITES_UPDATE = 0x37004B,
- SMSG_ACCOUNT_TRANSMOG_UPDATE = 0x37004A,
- SMSG_ACHIEVEMENT_DELETED = 0x37017E,
- SMSG_ACHIEVEMENT_EARNED = 0x3700D8,
+ SMSG_ABORT_NEW_WORLD = 0x370030,
+ SMSG_ACCOUNT_CHARACTER_CURRENCY_LISTS = 0x370340,
+ SMSG_ACCOUNT_CONVERSION_STATE_UPDATE = 0x370345,
+ SMSG_ACCOUNT_COSMETIC_ADDED = 0x3702F9,
+ SMSG_ACCOUNT_CRITERIA_UPDATE = 0x3702E0,
+ SMSG_ACCOUNT_DATA_TIMES = 0x3701A1,
+ SMSG_ACCOUNT_EXPORT_RESPONSE = 0x370331,
+ SMSG_ACCOUNT_MOUNT_REMOVED = 0x370047,
+ SMSG_ACCOUNT_MOUNT_UPDATE = 0x370046,
+ SMSG_ACCOUNT_NOTIFICATIONS_RESPONSE = 0x3702F8,
+ SMSG_ACCOUNT_STORE_CURRENCY_UPDATE = 0x37031A,
+ SMSG_ACCOUNT_STORE_FRONT_UPDATE = 0x37031B,
+ SMSG_ACCOUNT_STORE_ITEM_STATE_CHANGED = 0x37031C,
+ SMSG_ACCOUNT_STORE_RESULT = 0x37031D,
+ SMSG_ACCOUNT_TOY_UPDATE = 0x370048,
+ SMSG_ACCOUNT_TRANSMOG_SET_FAVORITES_UPDATE = 0x37004C,
+ SMSG_ACCOUNT_TRANSMOG_UPDATE = 0x37004B,
+ SMSG_ACHIEVEMENT_DELETED = 0x37017F,
+ SMSG_ACHIEVEMENT_EARNED = 0x3700D9,
SMSG_ACTIVATE_ESSENCE_FAILED = 0x4A001F,
SMSG_ACTIVATE_SOULBIND_FAILED = 0x4A0021,
- SMSG_ACTIVATE_TAXI_REPLY = 0x370115,
+ SMSG_ACTIVATE_TAXI_REPLY = 0x370116,
SMSG_ACTIVE_GLYPHS = 0x4D0045,
- SMSG_ACTIVE_SCHEDULED_WORLD_STATE_INFO = 0x3701DB,
- SMSG_ADDON_LIST_REQUEST = 0x3700D7,
- SMSG_ADD_BATTLENET_FRIEND_RESPONSE = 0x3700D2,
- SMSG_ADD_ITEM_PASSIVE = 0x370041,
- SMSG_ADD_LOSS_OF_CONTROL = 0x370108,
- SMSG_ADD_RUNE_POWER = 0x37014F,
- SMSG_ADJUST_SPLINE_DURATION = 0x370067,
- SMSG_ADVANCED_COMBAT_LOG = 0x3702F3,
- SMSG_ADVENTURE_JOURNAL_DATA_RESPONSE = 0x3702EE,
- SMSG_AE_LOOT_TARGETS = 0x3700AD,
- SMSG_AE_LOOT_TARGET_ACK = 0x3700AE,
- SMSG_AI_REACTION = 0x37014C,
- SMSG_ALLIED_RACE_DETAILS = 0x370288,
+ SMSG_ACTIVE_SCHEDULED_WORLD_STATE_INFO = 0x3701DC,
+ SMSG_ADDON_LIST_REQUEST = 0x3700D8,
+ SMSG_ADD_BATTLENET_FRIEND_RESPONSE = 0x3700D3,
+ SMSG_ADD_ITEM_PASSIVE = 0x370042,
+ SMSG_ADD_LOSS_OF_CONTROL = 0x370109,
+ SMSG_ADD_RUNE_POWER = 0x370150,
+ SMSG_ADJUST_SPLINE_DURATION = 0x370068,
+ SMSG_ADVANCED_COMBAT_LOG = 0x3702F5,
+ SMSG_ADVENTURE_JOURNAL_DATA_RESPONSE = 0x3702F0,
+ SMSG_AE_LOOT_TARGETS = 0x3700AE,
+ SMSG_AE_LOOT_TARGET_ACK = 0x3700AF,
+ SMSG_AI_REACTION = 0x37014D,
+ SMSG_ALLIED_RACE_DETAILS = 0x37028A,
SMSG_ALL_ACCOUNT_CRITERIA = 0x370005,
SMSG_ALL_ACHIEVEMENT_DATA = 0x370004,
SMSG_ALL_GUILD_ACHIEVEMENTS = 0x430000,
- SMSG_APPLY_MOUNT_EQUIPMENT_RESULT = 0x3702CB,
+ SMSG_APPLY_MOUNT_EQUIPMENT_RESULT = 0x3702CD,
SMSG_ARCHAEOLOGY_SURVERY_CAST = 0x37001D,
SMSG_AREA_POI_UPDATE_RESPONSE = 0x4A0018,
- SMSG_AREA_SPIRIT_HEALER_TIME = 0x3701D4,
+ SMSG_AREA_SPIRIT_HEALER_TIME = 0x3701D5,
SMSG_AREA_TRIGGER_DENIED = 0x380009,
SMSG_AREA_TRIGGER_FORCE_SET_POSITION_AND_FACING = 0x380006,
- SMSG_AREA_TRIGGER_NO_CORPSE = 0x3701AC,
+ SMSG_AREA_TRIGGER_NO_CORPSE = 0x3701AD,
SMSG_AREA_TRIGGER_PLAY_SPELL_VISUAL = 0x380004,
SMSG_AREA_TRIGGER_RE_PATH = 0x380003,
SMSG_AREA_TRIGGER_RE_SHAPE = 0x380008,
SMSG_AREA_TRIGGER_UNATTACH = 0x380007,
SMSG_AREA_TRIGGER_UPDATE_DECAL_PROPERTIES = 0x380005,
- SMSG_ARENA_CLEAR_OPPONENTS = 0x3700DE,
- SMSG_ARENA_CROWD_CONTROL_SPELL_RESULT = 0x3700C7,
- SMSG_ARENA_PREP_OPPONENT_SPECIALIZATIONS = 0x3700DD,
- SMSG_ARTIFACT_ENDGAME_POWERS_REFUNDED = 0x370235,
- SMSG_ARTIFACT_FORGE_ERROR = 0x370233,
- SMSG_ARTIFACT_RESPEC_PROMPT = 0x370234,
- SMSG_ARTIFACT_XP_GAIN = 0x37027B,
+ SMSG_ARENA_CLEAR_OPPONENTS = 0x3700DF,
+ SMSG_ARENA_CROWD_CONTROL_SPELL_RESULT = 0x3700C8,
+ SMSG_ARENA_PREP_OPPONENT_SPECIALIZATIONS = 0x3700DE,
+ SMSG_ARTIFACT_ENDGAME_POWERS_REFUNDED = 0x370237,
+ SMSG_ARTIFACT_FORGE_ERROR = 0x370235,
+ SMSG_ARTIFACT_RESPEC_PROMPT = 0x370236,
+ SMSG_ARTIFACT_XP_GAIN = 0x37027D,
SMSG_ATTACKER_STATE_UPDATE = 0x3D002C,
SMSG_ATTACK_START = 0x3D0017,
SMSG_ATTACK_STOP = 0x3D0018,
SMSG_ATTACK_SWING_ERROR = 0x3D0026,
SMSG_ATTACK_SWING_LANDED_LOG = 0x3D0027,
- SMSG_AUCTIONABLE_TOKEN_AUCTION_SOLD = 0x370264,
- SMSG_AUCTIONABLE_TOKEN_SELL_AT_MARKET_PRICE_RESPONSE = 0x370263,
- SMSG_AUCTIONABLE_TOKEN_SELL_CONFIRM_REQUIRED = 0x370262,
- SMSG_AUCTION_CLOSED_NOTIFICATION = 0x370189,
- SMSG_AUCTION_COMMAND_RESULT = 0x370186,
- SMSG_AUCTION_DISABLE_NEW_POSTINGS = 0x370312,
- SMSG_AUCTION_FAVORITE_LIST = 0x3702E5,
- SMSG_AUCTION_GET_COMMODITY_QUOTE_RESULT = 0x3702DD,
- SMSG_AUCTION_HELLO_RESPONSE = 0x370184,
- SMSG_AUCTION_LIST_BIDDED_ITEMS_RESULT = 0x3702DC,
- SMSG_AUCTION_LIST_BUCKETS_RESULT = 0x3702D8,
- SMSG_AUCTION_LIST_ITEMS_RESULT = 0x3702D9,
- SMSG_AUCTION_LIST_OWNED_ITEMS_RESULT = 0x3702DB,
- SMSG_AUCTION_OUTBID_NOTIFICATION = 0x370188,
- SMSG_AUCTION_OWNER_BID_NOTIFICATION = 0x37018A,
- SMSG_AUCTION_REPLICATE_RESPONSE = 0x370185,
- SMSG_AUCTION_WON_NOTIFICATION = 0x370187,
+ SMSG_AUCTIONABLE_TOKEN_AUCTION_SOLD = 0x370266,
+ SMSG_AUCTIONABLE_TOKEN_SELL_AT_MARKET_PRICE_RESPONSE = 0x370265,
+ SMSG_AUCTIONABLE_TOKEN_SELL_CONFIRM_REQUIRED = 0x370264,
+ SMSG_AUCTION_CLOSED_NOTIFICATION = 0x37018A,
+ SMSG_AUCTION_COMMAND_RESULT = 0x370187,
+ SMSG_AUCTION_DISABLE_NEW_POSTINGS = 0x37031E,
+ SMSG_AUCTION_FAVORITE_LIST = 0x3702E7,
+ SMSG_AUCTION_GET_COMMODITY_QUOTE_RESULT = 0x3702DF,
+ SMSG_AUCTION_HELLO_RESPONSE = 0x370185,
+ SMSG_AUCTION_LIST_BIDDED_ITEMS_RESULT = 0x3702DE,
+ SMSG_AUCTION_LIST_BUCKETS_RESULT = 0x3702DA,
+ SMSG_AUCTION_LIST_ITEMS_RESULT = 0x3702DB,
+ SMSG_AUCTION_LIST_OWNED_ITEMS_RESULT = 0x3702DD,
+ SMSG_AUCTION_OUTBID_NOTIFICATION = 0x370189,
+ SMSG_AUCTION_OWNER_BID_NOTIFICATION = 0x37018B,
+ SMSG_AUCTION_REPLICATE_RESPONSE = 0x370186,
+ SMSG_AUCTION_WON_NOTIFICATION = 0x370188,
SMSG_AURA_POINTS_DEPLETED = 0x4D0012,
SMSG_AURA_UPDATE = 0x4D0011,
SMSG_AUTH_CHALLENGE = 0x3E0000,
SMSG_AUTH_FAILED = 0x370000,
SMSG_AUTH_RESPONSE = 0x370001,
SMSG_AVAILABLE_HOTFIXES = 0x3B0001,
- SMSG_BACKPACK_DEFAULT_SIZE_CHANGED = 0x370313,
+ SMSG_BACKPACK_DEFAULT_SIZE_CHANGED = 0x37031F,
SMSG_BAG_CLEANUP_FINISHED = 0x4E0007,
- SMSG_BARBER_SHOP_RESULT = 0x370154,
- SMSG_BATCH_PRESENCE_SUBSCRIPTION = 0x3702BC,
+ SMSG_BARBER_SHOP_RESULT = 0x370155,
+ SMSG_BATCH_PRESENCE_SUBSCRIPTION = 0x3702BE,
SMSG_BATTLEFIELD_LIST = 0x3D0005,
SMSG_BATTLEFIELD_PORT_DENIED = 0x3D000B,
SMSG_BATTLEFIELD_STATUS_ACTIVE = 0x3D0001,
@@ -1043,224 +1055,225 @@ enum OpcodeServer : uint32
SMSG_BATTLEGROUND_PLAYER_LEFT = 0x3D000A,
SMSG_BATTLEGROUND_PLAYER_POSITIONS = 0x3D0006,
SMSG_BATTLEGROUND_POINTS = 0x3D0028,
- SMSG_BATTLENET_CHALLENGE_ABORT = 0x37021D,
- SMSG_BATTLENET_CHALLENGE_START = 0x37021C,
- SMSG_BATTLENET_NOTIFICATION = 0x370294,
- SMSG_BATTLENET_RESPONSE = 0x370293,
- SMSG_BATTLE_NET_CONNECTION_STATUS = 0x370295,
- SMSG_BATTLE_PAY_ACK_FAILED = 0x370218,
- SMSG_BATTLE_PAY_BATTLE_PET_DELIVERED = 0x37020D,
- SMSG_BATTLE_PAY_COLLECTION_ITEM_DELIVERED = 0x37020E,
- SMSG_BATTLE_PAY_CONFIRM_PURCHASE = 0x370217,
- SMSG_BATTLE_PAY_DELIVERY_ENDED = 0x37020B,
- SMSG_BATTLE_PAY_DELIVERY_STARTED = 0x37020A,
- SMSG_BATTLE_PAY_DISTRIBUTION_ASSIGN_VAS_RESPONSE = 0x3702FC,
- SMSG_BATTLE_PAY_DISTRIBUTION_UNREVOKED = 0x370208,
- SMSG_BATTLE_PAY_DISTRIBUTION_UPDATE = 0x370209,
- SMSG_BATTLE_PAY_GET_DISTRIBUTION_LIST_RESPONSE = 0x370207,
- SMSG_BATTLE_PAY_GET_PRODUCT_LIST_RESPONSE = 0x370205,
- SMSG_BATTLE_PAY_GET_PURCHASE_LIST_RESPONSE = 0x370206,
- SMSG_BATTLE_PAY_MOUNT_DELIVERED = 0x37020C,
- SMSG_BATTLE_PAY_PURCHASE_UPDATE = 0x370216,
- SMSG_BATTLE_PAY_START_CHECKOUT = 0x3702B0,
- SMSG_BATTLE_PAY_START_DISTRIBUTION_ASSIGN_TO_TARGET_RESPONSE = 0x370214,
- SMSG_BATTLE_PAY_START_PURCHASE_RESPONSE = 0x370213,
- SMSG_BATTLE_PAY_VALIDATE_PURCHASE_RESPONSE = 0x3702A4,
- SMSG_BATTLE_PETS_HEALED = 0x370089,
- SMSG_BATTLE_PET_CAGE_DATE_ERROR = 0x370110,
- SMSG_BATTLE_PET_DELETED = 0x370086,
- SMSG_BATTLE_PET_ERROR = 0x3700CD,
- SMSG_BATTLE_PET_JOURNAL = 0x370085,
- SMSG_BATTLE_PET_JOURNAL_LOCK_ACQUIRED = 0x370083,
- SMSG_BATTLE_PET_JOURNAL_LOCK_DENIED = 0x370084,
- SMSG_BATTLE_PET_RESTORED = 0x370088,
- SMSG_BATTLE_PET_REVOKED = 0x370087,
- SMSG_BATTLE_PET_TRAP_LEVEL = 0x370081,
- SMSG_BATTLE_PET_UPDATES = 0x370080,
+ SMSG_BATTLENET_CHALLENGE_ABORT = 0x37021F,
+ SMSG_BATTLENET_CHALLENGE_START = 0x37021E,
+ SMSG_BATTLENET_NOTIFICATION = 0x370296,
+ SMSG_BATTLENET_RESPONSE = 0x370295,
+ SMSG_BATTLE_NET_CONNECTION_STATUS = 0x370297,
+ SMSG_BATTLE_PAY_ACK_FAILED = 0x37021A,
+ SMSG_BATTLE_PAY_BATTLE_PET_DELIVERED = 0x37020F,
+ SMSG_BATTLE_PAY_COLLECTION_ITEM_DELIVERED = 0x370210,
+ SMSG_BATTLE_PAY_CONFIRM_PURCHASE = 0x370219,
+ SMSG_BATTLE_PAY_DELIVERY_ENDED = 0x37020D,
+ SMSG_BATTLE_PAY_DELIVERY_STARTED = 0x37020C,
+ SMSG_BATTLE_PAY_DISTRIBUTION_ASSIGN_VAS_RESPONSE = 0x3702FE,
+ SMSG_BATTLE_PAY_DISTRIBUTION_UNREVOKED = 0x37020A,
+ SMSG_BATTLE_PAY_DISTRIBUTION_UPDATE = 0x37020B,
+ SMSG_BATTLE_PAY_GET_DISTRIBUTION_LIST_RESPONSE = 0x370209,
+ SMSG_BATTLE_PAY_GET_PRODUCT_LIST_RESPONSE = 0x370207,
+ SMSG_BATTLE_PAY_GET_PURCHASE_LIST_RESPONSE = 0x370208,
+ SMSG_BATTLE_PAY_MOUNT_DELIVERED = 0x37020E,
+ SMSG_BATTLE_PAY_PURCHASE_UPDATE = 0x370218,
+ SMSG_BATTLE_PAY_START_CHECKOUT = 0x3702B2,
+ SMSG_BATTLE_PAY_START_DISTRIBUTION_ASSIGN_TO_TARGET_RESPONSE = 0x370216,
+ SMSG_BATTLE_PAY_START_PURCHASE_RESPONSE = 0x370215,
+ SMSG_BATTLE_PAY_VALIDATE_PURCHASE_RESPONSE = 0x3702A6,
+ SMSG_BATTLE_PETS_HEALED = 0x37008A,
+ SMSG_BATTLE_PET_CAGE_DATE_ERROR = 0x370111,
+ SMSG_BATTLE_PET_DELETED = 0x370087,
+ SMSG_BATTLE_PET_ERROR = 0x3700CE,
+ SMSG_BATTLE_PET_JOURNAL = 0x370086,
+ SMSG_BATTLE_PET_JOURNAL_LOCK_ACQUIRED = 0x370084,
+ SMSG_BATTLE_PET_JOURNAL_LOCK_DENIED = 0x370085,
+ SMSG_BATTLE_PET_RESTORED = 0x370089,
+ SMSG_BATTLE_PET_REVOKED = 0x370088,
+ SMSG_BATTLE_PET_TRAP_LEVEL = 0x370082,
+ SMSG_BATTLE_PET_UPDATES = 0x370081,
SMSG_BIND_POINT_UPDATE = 0x370011,
- SMSG_BLACK_MARKET_BID_ON_ITEM_RESULT = 0x3700BD,
- SMSG_BLACK_MARKET_OUTBID = 0x3700BE,
- SMSG_BLACK_MARKET_REQUEST_ITEMS_RESULT = 0x3700BC,
- SMSG_BLACK_MARKET_WON = 0x3700BF,
- SMSG_BONUS_ROLL_EMPTY = 0x3700DA,
+ SMSG_BLACK_MARKET_BID_ON_ITEM_RESULT = 0x3700BE,
+ SMSG_BLACK_MARKET_OUTBID = 0x3700BF,
+ SMSG_BLACK_MARKET_REQUEST_ITEMS_RESULT = 0x3700BD,
+ SMSG_BLACK_MARKET_WON = 0x3700C0,
+ SMSG_BONUS_ROLL_EMPTY = 0x3700DB,
SMSG_BOSS_KILL = 0x3D002B,
SMSG_BREAK_TARGET = 0x3D0016,
SMSG_BROADCAST_ACHIEVEMENT = 0x3C0010,
- SMSG_BROADCAST_SUMMON_CAST = 0x3702BE,
- SMSG_BROADCAST_SUMMON_RESPONSE = 0x3702BF,
- SMSG_BUY_FAILED = 0x37015D,
- SMSG_BUY_SUCCEEDED = 0x37015C,
+ SMSG_BROADCAST_SUMMON_CAST = 0x3702C0,
+ SMSG_BROADCAST_SUMMON_RESPONSE = 0x3702C1,
+ SMSG_BUY_FAILED = 0x37015E,
+ SMSG_BUY_SUCCEEDED = 0x37015D,
SMSG_CACHE_INFO = 0x3B000F,
SMSG_CACHE_VERSION = 0x3B000E,
- SMSG_CALENDAR_CLEAR_PENDING_ACTION = 0x370135,
- SMSG_CALENDAR_COMMAND_RESULT = 0x370136,
- SMSG_CALENDAR_COMMUNITY_INVITE = 0x370125,
- SMSG_CALENDAR_EVENT_REMOVED_ALERT = 0x37012D,
- SMSG_CALENDAR_EVENT_UPDATED_ALERT = 0x37012E,
- SMSG_CALENDAR_INVITE_ADDED = 0x370126,
- SMSG_CALENDAR_INVITE_ALERT = 0x37012A,
- SMSG_CALENDAR_INVITE_NOTES = 0x37012F,
- SMSG_CALENDAR_INVITE_NOTES_ALERT = 0x370130,
- SMSG_CALENDAR_INVITE_REMOVED = 0x370127,
- SMSG_CALENDAR_INVITE_REMOVED_ALERT = 0x37012C,
- SMSG_CALENDAR_INVITE_STATUS = 0x370128,
- SMSG_CALENDAR_INVITE_STATUS_ALERT = 0x37012B,
- SMSG_CALENDAR_MODERATOR_STATUS = 0x370129,
- SMSG_CALENDAR_RAID_LOCKOUT_ADDED = 0x370131,
- SMSG_CALENDAR_RAID_LOCKOUT_REMOVED = 0x370132,
- SMSG_CALENDAR_RAID_LOCKOUT_UPDATED = 0x370133,
- SMSG_CALENDAR_SEND_CALENDAR = 0x370123,
- SMSG_CALENDAR_SEND_EVENT = 0x370124,
- SMSG_CALENDAR_SEND_NUM_PENDING = 0x370134,
- SMSG_CAMERA_EFFECT = 0x3701BA,
- SMSG_CANCEL_AUTO_REPEAT = 0x370174,
+ SMSG_CALENDAR_CLEAR_PENDING_ACTION = 0x370136,
+ SMSG_CALENDAR_COMMAND_RESULT = 0x370137,
+ SMSG_CALENDAR_COMMUNITY_INVITE = 0x370126,
+ SMSG_CALENDAR_EVENT_REMOVED_ALERT = 0x37012E,
+ SMSG_CALENDAR_EVENT_UPDATED_ALERT = 0x37012F,
+ SMSG_CALENDAR_INVITE_ADDED = 0x370127,
+ SMSG_CALENDAR_INVITE_ALERT = 0x37012B,
+ SMSG_CALENDAR_INVITE_NOTES = 0x370130,
+ SMSG_CALENDAR_INVITE_NOTES_ALERT = 0x370131,
+ SMSG_CALENDAR_INVITE_REMOVED = 0x370128,
+ SMSG_CALENDAR_INVITE_REMOVED_ALERT = 0x37012D,
+ SMSG_CALENDAR_INVITE_STATUS = 0x370129,
+ SMSG_CALENDAR_INVITE_STATUS_ALERT = 0x37012C,
+ SMSG_CALENDAR_MODERATOR_STATUS = 0x37012A,
+ SMSG_CALENDAR_RAID_LOCKOUT_ADDED = 0x370132,
+ SMSG_CALENDAR_RAID_LOCKOUT_REMOVED = 0x370133,
+ SMSG_CALENDAR_RAID_LOCKOUT_UPDATED = 0x370134,
+ SMSG_CALENDAR_SEND_CALENDAR = 0x370124,
+ SMSG_CALENDAR_SEND_EVENT = 0x370125,
+ SMSG_CALENDAR_SEND_NUM_PENDING = 0x370135,
+ SMSG_CAMERA_EFFECT = 0x3701BB,
+ SMSG_CANCEL_AUTO_REPEAT = 0x370175,
SMSG_CANCEL_COMBAT = 0x3D0025,
SMSG_CANCEL_ORPHAN_SPELL_VISUAL = 0x4D0037,
- SMSG_CANCEL_PING_PIN = 0x37003A,
- SMSG_CANCEL_PRELOAD_WORLD = 0x37002D,
- SMSG_CANCEL_SCENE = 0x3700CC,
+ SMSG_CANCEL_PING_PIN = 0x37003B,
+ SMSG_CANCEL_PRELOAD_WORLD = 0x37002E,
+ SMSG_CANCEL_SCENE = 0x3700CD,
SMSG_CANCEL_SPELL_VISUAL = 0x4D0035,
SMSG_CANCEL_SPELL_VISUAL_KIT = 0x4D0039,
SMSG_CAN_DUEL_RESULT = 0x3D0021,
- SMSG_CAN_REDEEM_TOKEN_FOR_BALANCE_RESPONSE = 0x3702A3,
+ SMSG_CAN_REDEEM_TOKEN_FOR_BALANCE_RESPONSE = 0x3702A5,
SMSG_CAPTURE_POINT_REMOVED = 0x3D0008,
SMSG_CAST_FAILED = 0x4D0048,
- SMSG_CAS_REFRESH_REMOTE_DATA = 0x37010E,
- SMSG_CHAIN_MISSILE_BOUNCE = 0x37005F,
- SMSG_CHALLENGE_MODE_COMPLETE = 0x3700A0,
- SMSG_CHALLENGE_MODE_REQUEST_LEADERS_RESULT = 0x3700A5,
- SMSG_CHALLENGE_MODE_RESET = 0x37009F,
- SMSG_CHALLENGE_MODE_START = 0x37009D,
- SMSG_CHALLENGE_MODE_UPDATE_DEATH_COUNT = 0x37009E,
+ SMSG_CAS_REFRESH_REMOTE_DATA = 0x37010F,
+ SMSG_CHAIN_MISSILE_BOUNCE = 0x370060,
+ SMSG_CHALLENGE_MODE_COMPLETE = 0x3700A1,
+ SMSG_CHALLENGE_MODE_REQUEST_LEADERS_RESULT = 0x3700A6,
+ SMSG_CHALLENGE_MODE_RESET = 0x3700A0,
+ SMSG_CHALLENGE_MODE_START = 0x37009E,
+ SMSG_CHALLENGE_MODE_UPDATE_DEATH_COUNT = 0x37009F,
SMSG_CHANGE_PLAYER_DIFFICULTY_RESULT = 0x4A000C,
- SMSG_CHANGE_REALM_TICKET_RESPONSE = 0x370296,
- SMSG_CHANNEL_LIST = 0x3C0018,
+ SMSG_CHANGE_REALM_TICKET_RESPONSE = 0x370298,
+ SMSG_CHANNEL_LIST = 0x3C0019,
SMSG_CHANNEL_NOTIFY = 0x3C0015,
- SMSG_CHANNEL_NOTIFY_JOINED = 0x3C0016,
- SMSG_CHANNEL_NOTIFY_LEFT = 0x3C0017,
- SMSG_CHARACTER_CHECK_UPGRADE_RESULT = 0x370250,
- SMSG_CHARACTER_LOGIN_FAILED = 0x37019B,
- SMSG_CHARACTER_OBJECT_TEST_RESPONSE = 0x37021B,
- SMSG_CHARACTER_RENAME_RESULT = 0x3701F7,
- SMSG_CHARACTER_UPGRADE_ABORTED = 0x37024F,
- SMSG_CHARACTER_UPGRADE_COMPLETE = 0x37024E,
- SMSG_CHARACTER_UPGRADE_MANUAL_UNREVOKE_RESULT = 0x370251,
- SMSG_CHARACTER_UPGRADE_STARTED = 0x37024D,
- SMSG_CHAR_CUSTOMIZE_FAILURE = 0x370178,
- SMSG_CHAR_CUSTOMIZE_SUCCESS = 0x370179,
- SMSG_CHAR_FACTION_CHANGE_RESULT = 0x37023A,
+ SMSG_CHANNEL_NOTIFY_JOINED = 0x3C0017,
+ SMSG_CHANNEL_NOTIFY_LEFT = 0x3C0018,
+ SMSG_CHANNEL_NOTIFY_NPE_JOINED_BATCH = 0x3C0016,
+ SMSG_CHARACTER_CHECK_UPGRADE_RESULT = 0x370252,
+ SMSG_CHARACTER_LOGIN_FAILED = 0x37019C,
+ SMSG_CHARACTER_OBJECT_TEST_RESPONSE = 0x37021D,
+ SMSG_CHARACTER_RENAME_RESULT = 0x3701F8,
+ SMSG_CHARACTER_UPGRADE_ABORTED = 0x370251,
+ SMSG_CHARACTER_UPGRADE_COMPLETE = 0x370250,
+ SMSG_CHARACTER_UPGRADE_MANUAL_UNREVOKE_RESULT = 0x370253,
+ SMSG_CHARACTER_UPGRADE_STARTED = 0x37024F,
+ SMSG_CHAR_CUSTOMIZE_FAILURE = 0x370179,
+ SMSG_CHAR_CUSTOMIZE_SUCCESS = 0x37017A,
+ SMSG_CHAR_FACTION_CHANGE_RESULT = 0x37023C,
SMSG_CHAT = 0x3C0001,
SMSG_CHAT_AUTO_RESPONDED = 0x3C000C,
- SMSG_CHAT_CAN_LOCAL_WHISPER_TARGET_RESPONSE = 0x3C001F,
+ SMSG_CHAT_CAN_LOCAL_WHISPER_TARGET_RESPONSE = 0x3C0020,
SMSG_CHAT_DOWN = 0x3C0012,
SMSG_CHAT_IGNORED_ACCOUNT_MUTED = 0x3C0000,
SMSG_CHAT_IS_DOWN = 0x3C0013,
- SMSG_CHAT_NOT_IN_GUILD = 0x3C0020,
+ SMSG_CHAT_NOT_IN_GUILD = 0x3C0021,
SMSG_CHAT_NOT_IN_PARTY = 0x3C0006,
SMSG_CHAT_PLAYER_AMBIGUOUS = 0x3C0004,
SMSG_CHAT_PLAYER_NOTFOUND = 0x3C000B,
SMSG_CHAT_RECONNECT = 0x3C0014,
- SMSG_CHAT_REGIONAL_SERVICE_STATUS = 0x3C001A,
+ SMSG_CHAT_REGIONAL_SERVICE_STATUS = 0x3C001B,
SMSG_CHAT_RESTRICTED = 0x3C0007,
- SMSG_CHAT_SERVER_MESSAGE = 0x3C0019,
+ SMSG_CHAT_SERVER_MESSAGE = 0x3C001A,
SMSG_CHEAT_IGNORE_DIMISHING_RETURNS = 0x4D0002,
SMSG_CHECK_ABANDON_NPE = 0x4A0022,
SMSG_CHECK_CHARACTER_NAME_AVAILABILITY_RESULT = 0x37001B,
SMSG_CHECK_WARGAME_ENTRY = 0x370027,
- SMSG_CHROMIE_TIME_SELECT_EXPANSION_SUCCESS = 0x3702E8,
- SMSG_CLAIM_RAF_REWARD_RESPONSE = 0x3702CF,
+ SMSG_CHROMIE_TIME_SELECT_EXPANSION_SUCCESS = 0x3702EA,
+ SMSG_CLAIM_RAF_REWARD_RESPONSE = 0x3702D1,
SMSG_CLEAR_ALL_SPELL_CHARGES = 0x4D0016,
- SMSG_CLEAR_BOSS_EMOTES = 0x370052,
- SMSG_CLEAR_COOLDOWN = 0x370151,
+ SMSG_CLEAR_BOSS_EMOTES = 0x370053,
+ SMSG_CLEAR_COOLDOWN = 0x370152,
SMSG_CLEAR_COOLDOWNS = 0x4D0015,
SMSG_CLEAR_RESURRECT = 0x370013,
SMSG_CLEAR_SPELL_CHARGES = 0x4D0017,
SMSG_CLEAR_TARGET = 0x3D0022,
SMSG_CLEAR_TREASURE_PICKER_CACHE = 0x4B0022,
- SMSG_CLOSE_ARTIFACT_FORGE = 0x370232,
- SMSG_CLUB_FINDER_ERROR_MESSAGE = 0x3702C7,
- SMSG_CLUB_FINDER_GET_CLUB_POSTING_IDS_RESPONSE = 0x3702CA,
- SMSG_CLUB_FINDER_LOOKUP_CLUB_POSTINGS_LIST = 0x3702C8,
- SMSG_CLUB_FINDER_RESPONSE_CHARACTER_APPLICATION_LIST = 0x3702C5,
- SMSG_CLUB_FINDER_RESPONSE_POST_RECRUITMENT_MESSAGE = 0x3702C9,
- SMSG_CLUB_FINDER_UPDATE_APPLICATIONS = 0x3702C6,
- SMSG_CLUB_FINDER_WHISPER_APPLICANT_RESPONSE = 0x370308,
- SMSG_COIN_REMOVED = 0x3700AC,
+ SMSG_CLOSE_ARTIFACT_FORGE = 0x370234,
+ SMSG_CLUB_FINDER_ERROR_MESSAGE = 0x3702C9,
+ SMSG_CLUB_FINDER_GET_CLUB_POSTING_IDS_RESPONSE = 0x3702CC,
+ SMSG_CLUB_FINDER_LOOKUP_CLUB_POSTINGS_LIST = 0x3702CA,
+ SMSG_CLUB_FINDER_RESPONSE_CHARACTER_APPLICATION_LIST = 0x3702C7,
+ SMSG_CLUB_FINDER_RESPONSE_POST_RECRUITMENT_MESSAGE = 0x3702CB,
+ SMSG_CLUB_FINDER_UPDATE_APPLICATIONS = 0x3702C8,
+ SMSG_CLUB_FINDER_WHISPER_APPLICANT_RESPONSE = 0x37030A,
+ SMSG_COIN_REMOVED = 0x3700AD,
SMSG_COMBAT_EVENT_FAILED = 0x3D0019,
- SMSG_COMMENTATOR_MAP_INFO = 0x37019D,
- SMSG_COMMENTATOR_PLAYER_INFO = 0x37019E,
- SMSG_COMMENTATOR_STATE_CHANGED = 0x37019C,
- SMSG_COMMERCE_TOKEN_GET_COUNT_RESPONSE = 0x37025F,
- SMSG_COMMERCE_TOKEN_GET_LOG_RESPONSE = 0x37026B,
- SMSG_COMMERCE_TOKEN_GET_MARKET_PRICE_RESPONSE = 0x370261,
- SMSG_COMMERCE_TOKEN_UPDATE = 0x370260,
- SMSG_COMPLAINT_RESULT = 0x370143,
- SMSG_COMPLETE_SHIPMENT_RESPONSE = 0x37022B,
- SMSG_CONFIRM_PARTY_INVITE = 0x3702A2,
+ SMSG_COMMENTATOR_MAP_INFO = 0x37019E,
+ SMSG_COMMENTATOR_PLAYER_INFO = 0x37019F,
+ SMSG_COMMENTATOR_STATE_CHANGED = 0x37019D,
+ SMSG_COMMERCE_TOKEN_GET_COUNT_RESPONSE = 0x370261,
+ SMSG_COMMERCE_TOKEN_GET_LOG_RESPONSE = 0x37026D,
+ SMSG_COMMERCE_TOKEN_GET_MARKET_PRICE_RESPONSE = 0x370263,
+ SMSG_COMMERCE_TOKEN_UPDATE = 0x370262,
+ SMSG_COMPLAINT_RESULT = 0x370144,
+ SMSG_COMPLETE_SHIPMENT_RESPONSE = 0x37022D,
+ SMSG_CONFIRM_PARTY_INVITE = 0x3702A4,
SMSG_CONNECT_TO = 0x3E0005,
- SMSG_CONSOLE_WRITE = 0x3700CA,
- SMSG_CONSUMABLE_TOKEN_BUY_AT_MARKET_PRICE_RESPONSE = 0x370267,
- SMSG_CONSUMABLE_TOKEN_BUY_CHOICE_REQUIRED = 0x370266,
- SMSG_CONSUMABLE_TOKEN_CAN_VETERAN_BUY_RESPONSE = 0x370265,
- SMSG_CONSUMABLE_TOKEN_REDEEM_CONFIRM_REQUIRED = 0x370269,
- SMSG_CONSUMABLE_TOKEN_REDEEM_RESPONSE = 0x37026A,
- SMSG_CONTACT_LIST = 0x370219,
- SMSG_CONTRIBUTION_LAST_UPDATE_RESPONSE = 0x3702A9,
- SMSG_CONTROL_UPDATE = 0x3700DC,
- SMSG_CONVERT_ITEMS_TO_CURRENCY_VALUE = 0x3702F1,
- SMSG_COOLDOWN_CHEAT = 0x3701CD,
- SMSG_COOLDOWN_EVENT = 0x370150,
- SMSG_CORPSE_LOCATION = 0x3700E4,
- SMSG_CORPSE_RECLAIM_DELAY = 0x3701DE,
- SMSG_CORPSE_TRANSPORT_QUERY = 0x3701A8,
+ SMSG_CONSOLE_WRITE = 0x3700CB,
+ SMSG_CONSUMABLE_TOKEN_BUY_AT_MARKET_PRICE_RESPONSE = 0x370269,
+ SMSG_CONSUMABLE_TOKEN_BUY_CHOICE_REQUIRED = 0x370268,
+ SMSG_CONSUMABLE_TOKEN_CAN_VETERAN_BUY_RESPONSE = 0x370267,
+ SMSG_CONSUMABLE_TOKEN_REDEEM_CONFIRM_REQUIRED = 0x37026B,
+ SMSG_CONSUMABLE_TOKEN_REDEEM_RESPONSE = 0x37026C,
+ SMSG_CONTACT_LIST = 0x37021B,
+ SMSG_CONTRIBUTION_LAST_UPDATE_RESPONSE = 0x3702AB,
+ SMSG_CONTROL_UPDATE = 0x3700DD,
+ SMSG_CONVERT_ITEMS_TO_CURRENCY_VALUE = 0x3702F3,
+ SMSG_COOLDOWN_CHEAT = 0x3701CE,
+ SMSG_COOLDOWN_EVENT = 0x370151,
+ SMSG_CORPSE_LOCATION = 0x3700E5,
+ SMSG_CORPSE_RECLAIM_DELAY = 0x3701DF,
+ SMSG_CORPSE_TRANSPORT_QUERY = 0x3701A9,
SMSG_COVENANT_CALLINGS_AVAILABILITY_RESPONSE = 0x4B0024,
- SMSG_COVENANT_PREVIEW_OPEN_NPC = 0x37028B,
- SMSG_COVENANT_RENOWN_SEND_CATCHUP_STATE = 0x3702F2,
- SMSG_CRAFTING_HOUSE_HELLO_RESPONSE = 0x37031F,
- SMSG_CRAFTING_ORDER_CANCEL_RESULT = 0x37031B,
- SMSG_CRAFTING_ORDER_CLAIM_RESULT = 0x370317,
- SMSG_CRAFTING_ORDER_CRAFT_RESULT = 0x370319,
- SMSG_CRAFTING_ORDER_CREATE_RESULT = 0x370315,
- SMSG_CRAFTING_ORDER_FULFILL_RESULT = 0x37031A,
- SMSG_CRAFTING_ORDER_LIST_ORDERS_RESPONSE = 0x370316,
- SMSG_CRAFTING_ORDER_NPC_REWARD_INFO = 0x370321,
- SMSG_CRAFTING_ORDER_REJECT_RESULT = 0x37031D,
- SMSG_CRAFTING_ORDER_RELEASE_RESULT = 0x370318,
- SMSG_CRAFTING_ORDER_UPDATE_STATE = 0x370320,
- SMSG_CRAFT_ENCHANT_RESULT = 0x37031E,
- SMSG_CREATE_CHAR = 0x370197,
- SMSG_CREATE_SHIPMENT_RESPONSE = 0x37022A,
- SMSG_CREATOR_VISUALS_OVERRIDE = 0x370324,
- SMSG_CRITERIA_DELETED = 0x37017D,
- SMSG_CRITERIA_UPDATE = 0x370177,
- SMSG_CROSSED_INEBRIATION_THRESHOLD = 0x370158,
- SMSG_CURRENCY_TRANSFER_LOG = 0x370336,
- SMSG_CURRENCY_TRANSFER_RESULT = 0x370335,
- SMSG_CUSTOM_LOAD_SCREEN = 0x370062,
+ SMSG_COVENANT_PREVIEW_OPEN_NPC = 0x37028D,
+ SMSG_COVENANT_RENOWN_SEND_CATCHUP_STATE = 0x3702F4,
+ SMSG_CRAFTING_HOUSE_HELLO_RESPONSE = 0x37032B,
+ SMSG_CRAFTING_ORDER_CANCEL_RESULT = 0x370327,
+ SMSG_CRAFTING_ORDER_CLAIM_RESULT = 0x370323,
+ SMSG_CRAFTING_ORDER_CRAFT_RESULT = 0x370325,
+ SMSG_CRAFTING_ORDER_CREATE_RESULT = 0x370321,
+ SMSG_CRAFTING_ORDER_FULFILL_RESULT = 0x370326,
+ SMSG_CRAFTING_ORDER_LIST_ORDERS_RESPONSE = 0x370322,
+ SMSG_CRAFTING_ORDER_NPC_REWARD_INFO = 0x37032D,
+ SMSG_CRAFTING_ORDER_REJECT_RESULT = 0x370329,
+ SMSG_CRAFTING_ORDER_RELEASE_RESULT = 0x370324,
+ SMSG_CRAFTING_ORDER_UPDATE_STATE = 0x37032C,
+ SMSG_CRAFT_ENCHANT_RESULT = 0x37032A,
+ SMSG_CREATE_CHAR = 0x370198,
+ SMSG_CREATE_SHIPMENT_RESPONSE = 0x37022C,
+ SMSG_CREATOR_VISUALS_OVERRIDE = 0x370330,
+ SMSG_CRITERIA_DELETED = 0x37017E,
+ SMSG_CRITERIA_UPDATE = 0x370178,
+ SMSG_CROSSED_INEBRIATION_THRESHOLD = 0x370159,
+ SMSG_CURRENCY_TRANSFER_LOG = 0x370342,
+ SMSG_CURRENCY_TRANSFER_RESULT = 0x370341,
+ SMSG_CUSTOM_LOAD_SCREEN = 0x370063,
SMSG_DAILY_QUESTS_RESET = 0x4B0000,
SMSG_DAMAGE_CALC_LOG = 0x4D0054,
SMSG_DB_REPLY = 0x3B0000,
- SMSG_DEATH_RELEASE_LOC = 0x37016A,
- SMSG_DEBUG_MENU_MANAGER_FULL_UPDATE = 0x3700EC,
+ SMSG_DEATH_RELEASE_LOC = 0x37016B,
+ SMSG_DEBUG_MENU_MANAGER_FULL_UPDATE = 0x3700ED,
SMSG_DEFENSE_MESSAGE = 0x3C000A,
- SMSG_DELETE_CHAR = 0x370198,
+ SMSG_DELETE_CHAR = 0x370199,
SMSG_DELETE_EXPIRED_MISSIONS_RESULT = 0x410022,
- SMSG_DELVES_ACCOUNT_DATA_ELEMENT_CHANGED = 0x37033B,
- SMSG_DESTROY_ARENA_UNIT = 0x3701D6,
- SMSG_DESTRUCTIBLE_BUILDING_DAMAGE = 0x37018F,
+ SMSG_DELVES_ACCOUNT_DATA_ELEMENT_CHANGED = 0x370347,
+ SMSG_DESTROY_ARENA_UNIT = 0x3701D7,
+ SMSG_DESTRUCTIBLE_BUILDING_DAMAGE = 0x370190,
SMSG_DIFFERENT_INSTANCE_FROM_PARTY = 0x370020,
- SMSG_DISENCHANT_CREDIT = 0x37003E,
+ SMSG_DISENCHANT_CREDIT = 0x37003F,
SMSG_DISMOUNT_RESULT = 0x370010,
SMSG_DISPEL_FAILED = 0x4D001E,
- SMSG_DISPLAY_GAME_ERROR = 0x370034,
+ SMSG_DISPLAY_GAME_ERROR = 0x370035,
SMSG_DISPLAY_PLAYER_CHOICE = 0x4A0004,
- SMSG_DISPLAY_PROMOTION = 0x3700E1,
+ SMSG_DISPLAY_PROMOTION = 0x3700E2,
SMSG_DISPLAY_QUEST_POPUP = 0x4B001E,
- SMSG_DISPLAY_SOULBIND_UPDATE_MESSAGE = 0x3702F5,
- SMSG_DISPLAY_TOAST = 0x3700B9,
- SMSG_DISPLAY_WORLD_TEXT = 0x37027C,
+ SMSG_DISPLAY_SOULBIND_UPDATE_MESSAGE = 0x3702F7,
+ SMSG_DISPLAY_TOAST = 0x3700BA,
+ SMSG_DISPLAY_WORLD_TEXT = 0x37027E,
SMSG_DISPLAY_WORLD_TEXT_ON_TARGET = 0x4D0053,
- SMSG_DONT_AUTO_PUSH_SPELLS_TO_ACTION_BAR = 0x370077,
+ SMSG_DONT_AUTO_PUSH_SPELLS_TO_ACTION_BAR = 0x370078,
SMSG_DROP_NEW_CONNECTION = 0x3E0004,
SMSG_DUEL_ARRANGED = 0x3D001B,
SMSG_DUEL_COMPLETE = 0x3D001F,
@@ -1269,53 +1282,53 @@ enum OpcodeServer : uint32
SMSG_DUEL_OUT_OF_BOUNDS = 0x3D001C,
SMSG_DUEL_REQUESTED = 0x3D001A,
SMSG_DUEL_WINNER = 0x3D0020,
- SMSG_DURABILITY_DAMAGE_DEATH = 0x3701D9,
- SMSG_EMOTE = 0x370257,
- SMSG_ENABLE_BARBER_SHOP = 0x370153,
- SMSG_ENCHANTMENT_LOG = 0x3701A9,
- SMSG_ENCOUNTER_END = 0x370212,
- SMSG_ENCOUNTER_START = 0x370211,
- SMSG_END_LIGHTNING_STORM = 0x370140,
+ SMSG_DURABILITY_DAMAGE_DEATH = 0x3701DA,
+ SMSG_EMOTE = 0x370259,
+ SMSG_ENABLE_BARBER_SHOP = 0x370154,
+ SMSG_ENCHANTMENT_LOG = 0x3701AA,
+ SMSG_ENCOUNTER_END = 0x370214,
+ SMSG_ENCOUNTER_START = 0x370213,
+ SMSG_END_LIGHTNING_STORM = 0x370141,
SMSG_ENTER_ENCRYPTED_MODE = 0x3E0001,
SMSG_ENUM_CHARACTERS_RESULT = 0x370018,
- SMSG_ENUM_VAS_PURCHASE_STATES_RESPONSE = 0x370281,
+ SMSG_ENUM_VAS_PURCHASE_STATES_RESPONSE = 0x370283,
SMSG_ENVIRONMENTAL_DAMAGE_LOG = 0x4D000E,
- SMSG_EQUIPMENT_SET_ID = 0x370149,
+ SMSG_EQUIPMENT_SET_ID = 0x37014A,
SMSG_EXPECTED_SPAM_RECORDS = 0x3C0005,
- SMSG_EXPLORATION_EXPERIENCE = 0x3701F3,
- SMSG_EXTERNAL_TRANSACTION_ID_GENERATED = 0x3702EF,
- SMSG_FACTION_BONUS_INFO = 0x3701B9,
+ SMSG_EXPLORATION_EXPERIENCE = 0x3701F4,
+ SMSG_EXTERNAL_TRANSACTION_ID_GENERATED = 0x3702F1,
+ SMSG_FACTION_BONUS_INFO = 0x3701BA,
SMSG_FAILED_PLAYER_CONDITION = 0x4A0002,
- SMSG_FAILED_QUEST_TURN_IN = 0x37029F,
- SMSG_FEATURE_SYSTEM_STATUS = 0x370056,
- SMSG_FEATURE_SYSTEM_STATUS2 = 0x370333,
- SMSG_FEATURE_SYSTEM_STATUS_GLUE_SCREEN = 0x370057,
- SMSG_FEIGN_DEATH_RESISTED = 0x3701D8,
- SMSG_FISH_ESCAPED = 0x370167,
- SMSG_FISH_NOT_HOOKED = 0x370166,
+ SMSG_FAILED_QUEST_TURN_IN = 0x3702A1,
+ SMSG_FEATURE_SYSTEM_STATUS = 0x370057,
+ SMSG_FEATURE_SYSTEM_STATUS2 = 0x37033F,
+ SMSG_FEATURE_SYSTEM_STATUS_GLUE_SCREEN = 0x370058,
+ SMSG_FEIGN_DEATH_RESISTED = 0x3701D9,
+ SMSG_FISH_ESCAPED = 0x370168,
+ SMSG_FISH_NOT_HOOKED = 0x370167,
SMSG_FLIGHT_SPLINE_SYNC = 0x48005B,
SMSG_FLUSH_COMBAT_LOG_FILE = 0x4D0010,
- SMSG_FORCED_DEATH_UPDATE = 0x37016B,
- SMSG_FORCE_ANIM = 0x3701E5,
- SMSG_FORCE_ANIMATIONS = 0x3701E6,
- SMSG_FORCE_OBJECT_RELINK = 0x3700E0,
- SMSG_FORCE_RANDOM_TRANSMOG_TOAST = 0x370049,
+ SMSG_FORCED_DEATH_UPDATE = 0x37016C,
+ SMSG_FORCE_ANIM = 0x3701E6,
+ SMSG_FORCE_ANIMATIONS = 0x3701E7,
+ SMSG_FORCE_OBJECT_RELINK = 0x3700E1,
+ SMSG_FORCE_RANDOM_TRANSMOG_TOAST = 0x37004A,
SMSG_FORCE_SPAWN_TRACKING_UPDATE = 0x4B0021,
- SMSG_FRIEND_STATUS = 0x37021A,
- SMSG_GAIN_MAW_POWER = 0x370270,
- SMSG_GAME_OBJECT_ACTIVATE_ANIM_KIT = 0x37005A,
- SMSG_GAME_OBJECT_BASE = 0x3702B6,
- SMSG_GAME_OBJECT_CLOSE_INTERACTION = 0x370307,
- SMSG_GAME_OBJECT_CUSTOM_ANIM = 0x37005B,
- SMSG_GAME_OBJECT_DESPAWN = 0x37005C,
- SMSG_GAME_OBJECT_INTERACTION = 0x370306,
+ SMSG_FRIEND_STATUS = 0x37021C,
+ SMSG_GAIN_MAW_POWER = 0x370272,
+ SMSG_GAME_OBJECT_ACTIVATE_ANIM_KIT = 0x37005B,
+ SMSG_GAME_OBJECT_BASE = 0x3702B8,
+ SMSG_GAME_OBJECT_CLOSE_INTERACTION = 0x370309,
+ SMSG_GAME_OBJECT_CUSTOM_ANIM = 0x37005C,
+ SMSG_GAME_OBJECT_DESPAWN = 0x37005D,
+ SMSG_GAME_OBJECT_INTERACTION = 0x370308,
SMSG_GAME_OBJECT_PLAY_SPELL_VISUAL = 0x4D003C,
SMSG_GAME_OBJECT_PLAY_SPELL_VISUAL_KIT = 0x4D003B,
- SMSG_GAME_OBJECT_RESET_STATE = 0x3701B3,
- SMSG_GAME_OBJECT_SET_STATE_LOCAL = 0x370292,
- SMSG_GAME_SPEED_SET = 0x370119,
- SMSG_GAME_TIME_SET = 0x3701A2,
- SMSG_GAME_TIME_UPDATE = 0x3701A1,
+ SMSG_GAME_OBJECT_RESET_STATE = 0x3701B4,
+ SMSG_GAME_OBJECT_SET_STATE_LOCAL = 0x370294,
+ SMSG_GAME_SPEED_SET = 0x37011A,
+ SMSG_GAME_TIME_SET = 0x3701A3,
+ SMSG_GAME_TIME_UPDATE = 0x3701A2,
SMSG_GARRISON_ACTIVATE_MISSION_BONUS_ABILITY = 0x410024,
SMSG_GARRISON_ADD_EVENT = 0x410048,
SMSG_GARRISON_ADD_FOLLOWER_RESULT = 0x410016,
@@ -1387,36 +1400,36 @@ enum OpcodeServer : uint32
SMSG_GARRISON_UPGRADE_RESULT = 0x41000D,
SMSG_GARRISON_USE_RECALL_PORTAL_RESULT = 0x41001F,
SMSG_GENERATE_RANDOM_CHARACTER_NAME_RESULT = 0x37001C,
- SMSG_GENERATE_SSO_TOKEN_RESPONSE = 0x3702AA,
- SMSG_GET_ACCOUNT_CHARACTER_LIST_RESULT = 0x3701F5,
+ SMSG_GENERATE_SSO_TOKEN_RESPONSE = 0x3702AC,
+ SMSG_GET_ACCOUNT_CHARACTER_LIST_RESULT = 0x3701F6,
SMSG_GET_GARRISON_INFO_RESULT = 0x410000,
- SMSG_GET_LANDING_PAGE_SHIPMENTS_RESPONSE = 0x37022D,
- SMSG_GET_REALM_HIDDEN_RESULT = 0x37032A,
- SMSG_GET_REMAINING_GAME_TIME_RESPONSE = 0x370268,
- SMSG_GET_SELECTED_TROPHY_ID_RESPONSE = 0x370255,
- SMSG_GET_SHIPMENTS_OF_TYPE_RESPONSE = 0x37022C,
- SMSG_GET_SHIPMENT_INFO_RESPONSE = 0x370228,
- SMSG_GET_TROPHY_LIST_RESPONSE = 0x370254,
- SMSG_GET_VAS_ACCOUNT_CHARACTER_LIST_RESULT = 0x37027D,
- SMSG_GET_VAS_TRANSFER_TARGET_REALM_LIST_RESULT = 0x37027E,
+ SMSG_GET_LANDING_PAGE_SHIPMENTS_RESPONSE = 0x37022F,
+ SMSG_GET_REALM_HIDDEN_RESULT = 0x370336,
+ SMSG_GET_REMAINING_GAME_TIME_RESPONSE = 0x37026A,
+ SMSG_GET_SELECTED_TROPHY_ID_RESPONSE = 0x370257,
+ SMSG_GET_SHIPMENTS_OF_TYPE_RESPONSE = 0x37022E,
+ SMSG_GET_SHIPMENT_INFO_RESPONSE = 0x37022A,
+ SMSG_GET_TROPHY_LIST_RESPONSE = 0x370256,
+ SMSG_GET_VAS_ACCOUNT_CHARACTER_LIST_RESULT = 0x37027F,
+ SMSG_GET_VAS_TRANSFER_TARGET_REALM_LIST_RESULT = 0x370280,
SMSG_GM_PLAYER_INFO = 0x4A000D,
SMSG_GM_REQUEST_PLAYER_INFO = 0x4A0003,
- SMSG_GM_TICKET_CASE_STATUS = 0x37013B,
- SMSG_GM_TICKET_SYSTEM_STATUS = 0x37013A,
- SMSG_GOD_MODE = 0x370192,
+ SMSG_GM_TICKET_CASE_STATUS = 0x37013C,
+ SMSG_GM_TICKET_SYSTEM_STATUS = 0x37013B,
+ SMSG_GOD_MODE = 0x370193,
SMSG_GOSSIP_COMPLETE = 0x4B0017,
SMSG_GOSSIP_MESSAGE = 0x4B0018,
SMSG_GOSSIP_OPTION_NPC_INTERACTION = 0x4B0028,
- SMSG_GOSSIP_POI = 0x370225,
+ SMSG_GOSSIP_POI = 0x370227,
SMSG_GOSSIP_QUEST_UPDATE = 0x4B0019,
SMSG_GOSSIP_REFRESH_OPTIONS = 0x4B0027,
SMSG_GROUP_ACTION_THROTTLED = 0x370024,
- SMSG_GROUP_AUTO_KICK = 0x370222,
- SMSG_GROUP_DECLINE = 0x37021E,
- SMSG_GROUP_DESTROYED = 0x370221,
- SMSG_GROUP_NEW_LEADER = 0x3700C2,
- SMSG_GROUP_REQUEST_DECLINE = 0x37021F,
- SMSG_GROUP_UNINVITE = 0x370220,
+ SMSG_GROUP_AUTO_KICK = 0x370224,
+ SMSG_GROUP_DECLINE = 0x370220,
+ SMSG_GROUP_DESTROYED = 0x370223,
+ SMSG_GROUP_NEW_LEADER = 0x3700C3,
+ SMSG_GROUP_REQUEST_DECLINE = 0x370221,
+ SMSG_GROUP_UNINVITE = 0x370222,
SMSG_GUILD_ACHIEVEMENT_DELETED = 0x43000D,
SMSG_GUILD_ACHIEVEMENT_EARNED = 0x43000C,
SMSG_GUILD_ACHIEVEMENT_MEMBERS = 0x43000F,
@@ -1470,64 +1483,65 @@ enum OpcodeServer : uint32
SMSG_GUILD_REWARD_LIST = 0x430008,
SMSG_GUILD_ROSTER = 0x430003,
SMSG_GUILD_SEND_RANK_CHANGE = 0x430001,
- SMSG_HARDCORE_DEATH_ALERT = 0x370332,
- SMSG_HEALTH_UPDATE = 0x370168,
- SMSG_HIGHEST_THREAT_UPDATE = 0x370170,
+ SMSG_HARDCORE_DEATH_ALERT = 0x37033E,
+ SMSG_HEALTH_UPDATE = 0x370169,
+ SMSG_HIGHEST_THREAT_UPDATE = 0x370171,
SMSG_HOTFIX_CONNECT = 0x3B0003,
SMSG_HOTFIX_MESSAGE = 0x3B0002,
- SMSG_INITIALIZE_FACTIONS = 0x3701B8,
+ SMSG_INITIALIZE_FACTIONS = 0x3701B9,
SMSG_INITIAL_SETUP = 0x370014,
- SMSG_INIT_WORLD_STATES = 0x3701DA,
- SMSG_INSPECT_RESULT = 0x3700C6,
- SMSG_INSTANCE_ENCOUNTER_CHANGE_PRIORITY = 0x370240,
- SMSG_INSTANCE_ENCOUNTER_DISENGAGE_UNIT = 0x37023F,
- SMSG_INSTANCE_ENCOUNTER_END = 0x370248,
- SMSG_INSTANCE_ENCOUNTER_ENGAGE_UNIT = 0x37023E,
- SMSG_INSTANCE_ENCOUNTER_GAIN_COMBAT_RESURRECTION_CHARGE = 0x37024A,
- SMSG_INSTANCE_ENCOUNTER_IN_COMBAT_RESURRECTION = 0x370249,
- SMSG_INSTANCE_ENCOUNTER_OBJECTIVE_COMPLETE = 0x370243,
- SMSG_INSTANCE_ENCOUNTER_OBJECTIVE_START = 0x370242,
- SMSG_INSTANCE_ENCOUNTER_OBJECTIVE_UPDATE = 0x370247,
- SMSG_INSTANCE_ENCOUNTER_PHASE_SHIFT_CHANGED = 0x37024B,
- SMSG_INSTANCE_ENCOUNTER_START = 0x370244,
- SMSG_INSTANCE_ENCOUNTER_TIMER_START = 0x370241,
- SMSG_INSTANCE_ENCOUNTER_UPDATE_ALLOW_RELEASE_IN_PROGRESS = 0x370246,
- SMSG_INSTANCE_ENCOUNTER_UPDATE_SUPPRESS_RELEASE = 0x370245,
- SMSG_INSTANCE_GROUP_SIZE_CHANGED = 0x370190,
- SMSG_INSTANCE_INFO = 0x3700C9,
- SMSG_INSTANCE_RESET = 0x37011E,
- SMSG_INSTANCE_RESET_FAILED = 0x37011F,
- SMSG_INSTANCE_SAVE_CREATED = 0x370210,
+ SMSG_INIT_WORLD_STATES = 0x3701DB,
+ SMSG_INSPECT_RESULT = 0x3700C7,
+ SMSG_INSTANCE_ENCOUNTER_CHANGE_PRIORITY = 0x370242,
+ SMSG_INSTANCE_ENCOUNTER_DISENGAGE_UNIT = 0x370241,
+ SMSG_INSTANCE_ENCOUNTER_END = 0x37024A,
+ SMSG_INSTANCE_ENCOUNTER_ENGAGE_UNIT = 0x370240,
+ SMSG_INSTANCE_ENCOUNTER_GAIN_COMBAT_RESURRECTION_CHARGE = 0x37024C,
+ SMSG_INSTANCE_ENCOUNTER_IN_COMBAT_RESURRECTION = 0x37024B,
+ SMSG_INSTANCE_ENCOUNTER_OBJECTIVE_COMPLETE = 0x370245,
+ SMSG_INSTANCE_ENCOUNTER_OBJECTIVE_START = 0x370244,
+ SMSG_INSTANCE_ENCOUNTER_OBJECTIVE_UPDATE = 0x370249,
+ SMSG_INSTANCE_ENCOUNTER_PHASE_SHIFT_CHANGED = 0x37024D,
+ SMSG_INSTANCE_ENCOUNTER_START = 0x370246,
+ SMSG_INSTANCE_ENCOUNTER_TIMER_START = 0x370243,
+ SMSG_INSTANCE_ENCOUNTER_UPDATE_ALLOW_RELEASE_IN_PROGRESS = 0x370248,
+ SMSG_INSTANCE_ENCOUNTER_UPDATE_SUPPRESS_RELEASE = 0x370247,
+ SMSG_INSTANCE_GROUP_SIZE_CHANGED = 0x370191,
+ SMSG_INSTANCE_INFO = 0x3700CA,
+ SMSG_INSTANCE_RESET = 0x37011F,
+ SMSG_INSTANCE_RESET_FAILED = 0x370120,
+ SMSG_INSTANCE_SAVE_CREATED = 0x370212,
SMSG_INTERRUPT_POWER_REGEN = 0x4D004A,
SMSG_INVALIDATE_PAGE_TEXT = 0x3B000A,
SMSG_INVALIDATE_PLAYER = 0x4A0007,
- SMSG_INVALID_PROMOTION_CODE = 0x3701E7,
+ SMSG_INVALID_PROMOTION_CODE = 0x3701E8,
SMSG_INVENTORY_CHANGE_FAILURE = 0x4E0005,
- SMSG_INVENTORY_FIXUP_COMPLETE = 0x3702A1,
- SMSG_INVENTORY_FULL_OVERFLOW = 0x3702B2,
- SMSG_ISLAND_AZERITE_GAIN = 0x3701F0,
- SMSG_ISLAND_COMPLETE = 0x3701F1,
+ SMSG_INVENTORY_FIXUP_COMPLETE = 0x3702A3,
+ SMSG_INVENTORY_FULL_OVERFLOW = 0x3702B4,
+ SMSG_ISLAND_AZERITE_GAIN = 0x3701F1,
+ SMSG_ISLAND_COMPLETE = 0x3701F2,
SMSG_IS_QUEST_COMPLETE_RESPONSE = 0x4B0004,
- SMSG_ITEM_CHANGED = 0x370181,
- SMSG_ITEM_COOLDOWN = 0x370256,
- SMSG_ITEM_ENCHANT_TIME_UPDATE = 0x3701E9,
- SMSG_ITEM_EXPIRE_PURCHASE_REFUND = 0x370033,
- SMSG_ITEM_INTERACTION_COMPLETE = 0x3702E7,
- SMSG_ITEM_PURCHASE_REFUND_RESULT = 0x370031,
- SMSG_ITEM_PUSH_RESULT = 0x3700B8,
- SMSG_ITEM_TIME_UPDATE = 0x3701E8,
- SMSG_KICK_REASON = 0x370121,
- SMSG_LATENCY_REPORT_PING = 0x3702F8,
+ SMSG_ITEM_CHANGED = 0x370182,
+ SMSG_ITEM_COOLDOWN = 0x370258,
+ SMSG_ITEM_ENCHANT_TIME_UPDATE = 0x3701EA,
+ SMSG_ITEM_EXPIRE_PURCHASE_REFUND = 0x370034,
+ SMSG_ITEM_INTERACTION_COMPLETE = 0x3702E9,
+ SMSG_ITEM_PURCHASE_REFUND_RESULT = 0x370032,
+ SMSG_ITEM_PUSH_RESULT = 0x3700B9,
+ SMSG_ITEM_TIME_UPDATE = 0x3701E9,
+ SMSG_KICK_REASON = 0x370122,
+ SMSG_LATENCY_REPORT_PING = 0x3702FA,
SMSG_LEARNED_SPELLS = 0x4D003E,
- SMSG_LEARN_PVP_TALENT_FAILED = 0x37006B,
- SMSG_LEARN_TALENT_FAILED = 0x37006A,
- SMSG_LEGACY_LOOT_RULES = 0x3702B7,
- SMSG_LEVEL_LINKING_RESULT = 0x3702CD,
- SMSG_LEVEL_UP_INFO = 0x37017F,
+ SMSG_LEARN_PVP_TALENT_FAILED = 0x37006C,
+ SMSG_LEARN_TALENT_FAILED = 0x37006B,
+ SMSG_LEGACY_LOOT_RULES = 0x3702B9,
+ SMSG_LEVEL_LINKING_RESULT = 0x3702CF,
+ SMSG_LEVEL_UP_INFO = 0x370180,
SMSG_LFG_BOOT_PLAYER = 0x450019,
SMSG_LFG_DISABLED = 0x450017,
SMSG_LFG_EXPAND_SEARCH_PROMPT = 0x45001F,
SMSG_LFG_INSTANCE_SHUTDOWN_COUNTDOWN = 0x450009,
+ SMSG_LFG_JOIN_LOBBY_MATCHMAKER_QUEUE = 0x450020,
SMSG_LFG_JOIN_RESULT = 0x450000,
SMSG_LFG_LIST_APPLICANT_LIST_UPDATE = 0x45000F,
SMSG_LFG_LIST_APPLICATION_STATUS_UPDATE = 0x45000C,
@@ -1551,48 +1565,50 @@ enum OpcodeServer : uint32
SMSG_LFG_SLOT_INVALID = 0x450014,
SMSG_LFG_TELEPORT_DENIED = 0x450016,
SMSG_LFG_UPDATE_STATUS = 0x450008,
- SMSG_LIVE_REGION_ACCOUNT_RESTORE_RESULT = 0x370202,
- SMSG_LIVE_REGION_CHARACTER_COPY_RESULT = 0x370201,
- SMSG_LIVE_REGION_GET_ACCOUNT_CHARACTER_LIST_RESULT = 0x3701F6,
- SMSG_LIVE_REGION_KEY_BINDINGS_COPY_RESULT = 0x370203,
- SMSG_LOAD_CUF_PROFILES = 0x370053,
- SMSG_LOAD_EQUIPMENT_SET = 0x3701A4,
- SMSG_LOBBY_MATCHMAKER_LOBBY_ACQUIRED_SERVER = 0x370309,
- SMSG_LOBBY_MATCHMAKER_PARTY_INFO = 0x37030A,
- SMSG_LOBBY_MATCHMAKER_PARTY_INVITE_REJECTED = 0x37030B,
- SMSG_LOBBY_MATCHMAKER_RECEIVE_INVITE = 0x37030C,
- SMSG_LOGIN_SET_TIME_SPEED = 0x3701A3,
- SMSG_LOGIN_VERIFY_WORLD = 0x37002E,
- SMSG_LOGOUT_CANCEL_ACK = 0x37011D,
- SMSG_LOGOUT_COMPLETE = 0x37011C,
- SMSG_LOGOUT_RESPONSE = 0x37011B,
- SMSG_LOG_XP_GAIN = 0x37017B,
- SMSG_LOOT_ALL_PASSED = 0x3700B6,
- SMSG_LOOT_LIST = 0x3701D5,
- SMSG_LOOT_MONEY_NOTIFY = 0x3700B1,
- SMSG_LOOT_RELEASE = 0x3700B0,
- SMSG_LOOT_RELEASE_ALL = 0x3700AF,
- SMSG_LOOT_REMOVED = 0x3700AB,
- SMSG_LOOT_RESPONSE = 0x3700AA,
- SMSG_LOOT_ROLL = 0x3700B3,
- SMSG_LOOT_ROLLS_COMPLETE = 0x3700B5,
- SMSG_LOOT_ROLL_WON = 0x3700B7,
- SMSG_LOSS_OF_CONTROL_AURA_UPDATE = 0x370107,
- SMSG_MAIL_COMMAND_RESULT = 0x3700D0,
- SMSG_MAIL_LIST_RESULT = 0x3701EA,
- SMSG_MAIL_QUERY_NEXT_TIME_RESULT = 0x3701EB,
+ SMSG_LIVE_REGION_ACCOUNT_RESTORE_RESULT = 0x370204,
+ SMSG_LIVE_REGION_CHARACTER_COPY_RESULT = 0x370203,
+ SMSG_LIVE_REGION_GET_ACCOUNT_CHARACTER_LIST_RESULT = 0x3701F7,
+ SMSG_LIVE_REGION_KEY_BINDINGS_COPY_RESULT = 0x370205,
+ SMSG_LOAD_CUF_PROFILES = 0x370054,
+ SMSG_LOAD_EQUIPMENT_SET = 0x3701A5,
+ SMSG_LOBBY_MATCHMAKER_LOBBY_ACQUIRED_SERVER = 0x37030B,
+ SMSG_LOBBY_MATCHMAKER_PARTY_INFO = 0x37030C,
+ SMSG_LOBBY_MATCHMAKER_PARTY_INVITE_REJECTED = 0x37030D,
+ SMSG_LOBBY_MATCHMAKER_QUEUE_PROPOSED = 0x37030F,
+ SMSG_LOBBY_MATCHMAKER_QUEUE_RESULT = 0x370310,
+ SMSG_LOBBY_MATCHMAKER_RECEIVE_INVITE = 0x37030E,
+ SMSG_LOGIN_SET_TIME_SPEED = 0x3701A4,
+ SMSG_LOGIN_VERIFY_WORLD = 0x37002F,
+ SMSG_LOGOUT_CANCEL_ACK = 0x37011E,
+ SMSG_LOGOUT_COMPLETE = 0x37011D,
+ SMSG_LOGOUT_RESPONSE = 0x37011C,
+ SMSG_LOG_XP_GAIN = 0x37017C,
+ SMSG_LOOT_ALL_PASSED = 0x3700B7,
+ SMSG_LOOT_LIST = 0x3701D6,
+ SMSG_LOOT_MONEY_NOTIFY = 0x3700B2,
+ SMSG_LOOT_RELEASE = 0x3700B1,
+ SMSG_LOOT_RELEASE_ALL = 0x3700B0,
+ SMSG_LOOT_REMOVED = 0x3700AC,
+ SMSG_LOOT_RESPONSE = 0x3700AB,
+ SMSG_LOOT_ROLL = 0x3700B4,
+ SMSG_LOOT_ROLLS_COMPLETE = 0x3700B6,
+ SMSG_LOOT_ROLL_WON = 0x3700B8,
+ SMSG_LOSS_OF_CONTROL_AURA_UPDATE = 0x370108,
+ SMSG_MAIL_COMMAND_RESULT = 0x3700D1,
+ SMSG_MAIL_LIST_RESULT = 0x3701EB,
+ SMSG_MAIL_QUERY_NEXT_TIME_RESULT = 0x3701EC,
SMSG_MAP_OBJECTIVES_INIT = 0x3D002A,
- SMSG_MAP_OBJ_EVENTS = 0x37005D,
- SMSG_MASTER_LOOT_CANDIDATE_LIST = 0x3700B4,
- SMSG_MEETING_STONE_FAILED = 0x37030D,
+ SMSG_MAP_OBJ_EVENTS = 0x37005E,
+ SMSG_MASTER_LOOT_CANDIDATE_LIST = 0x3700B5,
+ SMSG_MEETING_STONE_FAILED = 0x370311,
SMSG_MESSAGE_BOX = 0x37000A,
- SMSG_MINIMAP_PING = 0x370165,
+ SMSG_MINIMAP_PING = 0x370166,
SMSG_MIRROR_IMAGE_COMPONENTED_DATA = 0x4D0004,
SMSG_MIRROR_IMAGE_CREATURE_DATA = 0x4D0003,
- SMSG_MISSILE_CANCEL = 0x37005E,
- SMSG_MODIFY_COOLDOWN = 0x3701F8,
+ SMSG_MISSILE_CANCEL = 0x37005F,
+ SMSG_MODIFY_COOLDOWN = 0x3701F9,
SMSG_MOUNT_RESULT = 0x37000F,
- SMSG_MOVEMENT_ENFORCEMENT_ALERT = 0x3702BD,
+ SMSG_MOVEMENT_ENFORCEMENT_ALERT = 0x3702BF,
SMSG_MOVE_ADD_IMPULSE = 0x480062,
SMSG_MOVE_APPLY_INERTIA = 0x48005E,
SMSG_MOVE_APPLY_MOVEMENT_FORCE = 0x480045,
@@ -1704,83 +1720,83 @@ enum OpcodeServer : uint32
SMSG_MOVE_UPDATE_TELEPORT = 0x48000F,
SMSG_MOVE_UPDATE_TURN_RATE = 0x48000B,
SMSG_MOVE_UPDATE_WALK_SPEED = 0x480006,
- SMSG_MULTI_FLOOR_LEAVE_FLOOR = 0x37026D,
- SMSG_MULTI_FLOOR_NEW_FLOOR = 0x37026C,
- SMSG_MYTHIC_PLUS_ALL_MAP_STATS = 0x3700A1,
- SMSG_MYTHIC_PLUS_CURRENT_AFFIXES = 0x3700A3,
- SMSG_MYTHIC_PLUS_NEW_WEEK_RECORD = 0x3700A7,
- SMSG_MYTHIC_PLUS_SEASON_DATA = 0x3700A2,
- SMSG_NEUTRAL_PLAYER_FACTION_SELECT_RESULT = 0x370072,
- SMSG_NEW_DATA_BUILD = 0x370329,
- SMSG_NEW_TAXI_PATH = 0x370116,
+ SMSG_MULTI_FLOOR_LEAVE_FLOOR = 0x37026F,
+ SMSG_MULTI_FLOOR_NEW_FLOOR = 0x37026E,
+ SMSG_MYTHIC_PLUS_ALL_MAP_STATS = 0x3700A2,
+ SMSG_MYTHIC_PLUS_CURRENT_AFFIXES = 0x3700A4,
+ SMSG_MYTHIC_PLUS_NEW_WEEK_RECORD = 0x3700A8,
+ SMSG_MYTHIC_PLUS_SEASON_DATA = 0x3700A3,
+ SMSG_NEUTRAL_PLAYER_FACTION_SELECT_RESULT = 0x370073,
+ SMSG_NEW_DATA_BUILD = 0x370335,
+ SMSG_NEW_TAXI_PATH = 0x370117,
SMSG_NEW_WORLD = 0x37002B,
SMSG_NOTIFY_DEST_LOC_SPELL_CAST = 0x4D0034,
- SMSG_NOTIFY_MISSILE_TRAJECTORY_COLLISION = 0x370142,
- SMSG_NOTIFY_MONEY = 0x370030,
- SMSG_NOTIFY_RECEIVED_MAIL = 0x3700D1,
- SMSG_NPC_INTERACTION_OPEN_RESULT = 0x370305,
- SMSG_OFFER_PETITION_ERROR = 0x37014D,
- SMSG_ON_CANCEL_EXPECTED_RIDE_VEHICLE_AURA = 0x37017C,
+ SMSG_NOTIFY_MISSILE_TRAJECTORY_COLLISION = 0x370143,
+ SMSG_NOTIFY_MONEY = 0x370031,
+ SMSG_NOTIFY_RECEIVED_MAIL = 0x3700D2,
+ SMSG_NPC_INTERACTION_OPEN_RESULT = 0x370307,
+ SMSG_OFFER_PETITION_ERROR = 0x37014E,
+ SMSG_ON_CANCEL_EXPECTED_RIDE_VEHICLE_AURA = 0x37017D,
SMSG_ON_MONSTER_MOVE = 0x480002,
- SMSG_OPEN_ARTIFACT_FORGE = 0x370231,
+ SMSG_OPEN_ARTIFACT_FORGE = 0x370233,
SMSG_OPEN_CONTAINER = 0x4E0006,
SMSG_OPEN_LFG_DUNGEON_FINDER = 0x450015,
- SMSG_OPEN_SHIPMENT_NPC_RESULT = 0x370229,
- SMSG_OVERRIDE_LIGHT = 0x370152,
- SMSG_PAGE_TEXT = 0x3701AF,
- SMSG_PARTY_COMMAND_RESULT = 0x370223,
- SMSG_PARTY_ELIGIBILITY_FOR_DELVE_TIERS_RESPONSE = 0x37033E,
- SMSG_PARTY_INVITE = 0x370054,
- SMSG_PARTY_KILL_LOG = 0x3701EE,
- SMSG_PARTY_MEMBER_FULL_STATE = 0x3701ED,
- SMSG_PARTY_MEMBER_PARTIAL_STATE = 0x3701EC,
- SMSG_PARTY_NOTIFY_LFG_LEADER_CHANGE = 0x3702ED,
- SMSG_PARTY_UPDATE = 0x37008A,
- SMSG_PAST_TIME_EVENTS = 0x370059,
- SMSG_PAUSE_MIRROR_TIMER = 0x3701A6,
- SMSG_PENDING_RAID_LOCK = 0x37018E,
- SMSG_PERKS_PROGRAM_ACTIVITY_COMPLETE = 0x370302,
- SMSG_PERKS_PROGRAM_ACTIVITY_UPDATE = 0x3702FE,
- SMSG_PERKS_PROGRAM_DISABLED = 0x370303,
- SMSG_PERKS_PROGRAM_RESULT = 0x3702FF,
- SMSG_PERKS_PROGRAM_VENDOR_UPDATE = 0x3702FD,
- SMSG_PETITION_ALREADY_SIGNED = 0x370036,
+ SMSG_OPEN_SHIPMENT_NPC_RESULT = 0x37022B,
+ SMSG_OVERRIDE_LIGHT = 0x370153,
+ SMSG_PAGE_TEXT = 0x3701B0,
+ SMSG_PARTY_COMMAND_RESULT = 0x370225,
+ SMSG_PARTY_ELIGIBILITY_FOR_DELVE_TIERS_RESPONSE = 0x37034A,
+ SMSG_PARTY_INVITE = 0x370055,
+ SMSG_PARTY_KILL_LOG = 0x3701EF,
+ SMSG_PARTY_MEMBER_FULL_STATE = 0x3701EE,
+ SMSG_PARTY_MEMBER_PARTIAL_STATE = 0x3701ED,
+ SMSG_PARTY_NOTIFY_LFG_LEADER_CHANGE = 0x3702EF,
+ SMSG_PARTY_UPDATE = 0x37008B,
+ SMSG_PAST_TIME_EVENTS = 0x37005A,
+ SMSG_PAUSE_MIRROR_TIMER = 0x3701A7,
+ SMSG_PENDING_RAID_LOCK = 0x37018F,
+ SMSG_PERKS_PROGRAM_ACTIVITY_COMPLETE = 0x370304,
+ SMSG_PERKS_PROGRAM_ACTIVITY_UPDATE = 0x370300,
+ SMSG_PERKS_PROGRAM_DISABLED = 0x370305,
+ SMSG_PERKS_PROGRAM_RESULT = 0x370301,
+ SMSG_PERKS_PROGRAM_VENDOR_UPDATE = 0x3702FF,
+ SMSG_PETITION_ALREADY_SIGNED = 0x370037,
SMSG_PETITION_RENAME_GUILD_RESPONSE = 0x430042,
- SMSG_PETITION_SHOW_LIST = 0x370155,
- SMSG_PETITION_SHOW_SIGNATURES = 0x370156,
- SMSG_PETITION_SIGN_RESULTS = 0x3701E0,
- SMSG_PET_ACTION_FEEDBACK = 0x3701DD,
- SMSG_PET_ACTION_SOUND = 0x370138,
- SMSG_PET_BATTLE_CHAT_RESTRICTED = 0x370098,
- SMSG_PET_BATTLE_DEBUG_QUEUE_DUMP_RESPONSE = 0x37010C,
- SMSG_PET_BATTLE_FINALIZE_LOCATION = 0x370091,
- SMSG_PET_BATTLE_FINAL_ROUND = 0x370096,
- SMSG_PET_BATTLE_FINISHED = 0x370097,
- SMSG_PET_BATTLE_FIRST_ROUND = 0x370093,
- SMSG_PET_BATTLE_INITIAL_UPDATE = 0x370092,
- SMSG_PET_BATTLE_MAX_GAME_LENGTH_WARNING = 0x370099,
- SMSG_PET_BATTLE_PVP_CHALLENGE = 0x370090,
- SMSG_PET_BATTLE_QUEUE_PROPOSE_MATCH = 0x3700CE,
- SMSG_PET_BATTLE_QUEUE_STATUS = 0x3700CF,
- SMSG_PET_BATTLE_REPLACEMENTS_MADE = 0x370095,
- SMSG_PET_BATTLE_REQUEST_FAILED = 0x37008F,
- SMSG_PET_BATTLE_ROUND_RESULT = 0x370094,
- SMSG_PET_BATTLE_SLOT_UPDATES = 0x370082,
+ SMSG_PETITION_SHOW_LIST = 0x370156,
+ SMSG_PETITION_SHOW_SIGNATURES = 0x370157,
+ SMSG_PETITION_SIGN_RESULTS = 0x3701E1,
+ SMSG_PET_ACTION_FEEDBACK = 0x3701DE,
+ SMSG_PET_ACTION_SOUND = 0x370139,
+ SMSG_PET_BATTLE_CHAT_RESTRICTED = 0x370099,
+ SMSG_PET_BATTLE_DEBUG_QUEUE_DUMP_RESPONSE = 0x37010D,
+ SMSG_PET_BATTLE_FINALIZE_LOCATION = 0x370092,
+ SMSG_PET_BATTLE_FINAL_ROUND = 0x370097,
+ SMSG_PET_BATTLE_FINISHED = 0x370098,
+ SMSG_PET_BATTLE_FIRST_ROUND = 0x370094,
+ SMSG_PET_BATTLE_INITIAL_UPDATE = 0x370093,
+ SMSG_PET_BATTLE_MAX_GAME_LENGTH_WARNING = 0x37009A,
+ SMSG_PET_BATTLE_PVP_CHALLENGE = 0x370091,
+ SMSG_PET_BATTLE_QUEUE_PROPOSE_MATCH = 0x3700CF,
+ SMSG_PET_BATTLE_QUEUE_STATUS = 0x3700D0,
+ SMSG_PET_BATTLE_REPLACEMENTS_MADE = 0x370096,
+ SMSG_PET_BATTLE_REQUEST_FAILED = 0x370090,
+ SMSG_PET_BATTLE_ROUND_RESULT = 0x370095,
+ SMSG_PET_BATTLE_SLOT_UPDATES = 0x370083,
SMSG_PET_CAST_FAILED = 0x4D0049,
SMSG_PET_CLEAR_SPELLS = 0x4D0013,
- SMSG_PET_DISMISS_SOUND = 0x370139,
- SMSG_PET_GOD_MODE = 0x370113,
- SMSG_PET_GUIDS = 0x37019A,
+ SMSG_PET_DISMISS_SOUND = 0x37013A,
+ SMSG_PET_GOD_MODE = 0x370114,
+ SMSG_PET_GUIDS = 0x37019B,
SMSG_PET_LEARNED_SPELLS = 0x4D0040,
SMSG_PET_MODE = 0x37001F,
- SMSG_PET_NAME_INVALID = 0x37015A,
+ SMSG_PET_NAME_INVALID = 0x37015B,
SMSG_PET_NEWLY_TAMED = 0x37001E,
SMSG_PET_SPELLS_MESSAGE = 0x4D0014,
SMSG_PET_STABLE_RESULT = 0x37002A,
- SMSG_PET_TAME_FAILURE = 0x37014A,
+ SMSG_PET_TAME_FAILURE = 0x37014B,
SMSG_PET_UNLEARNED_SPELLS = 0x4D0041,
SMSG_PHASE_SHIFT_CHANGE = 0x37000C,
- SMSG_PLAYED_TIME = 0x37016C,
+ SMSG_PLAYED_TIME = 0x37016D,
SMSG_PLAYER_ACKOWLEDGE_ARROW_CALLOUT = 0x4A002C,
SMSG_PLAYER_AZERITE_ITEM_EQUIPPED_STATUS_CHANGED = 0x4A001E,
SMSG_PLAYER_AZERITE_ITEM_GAINS = 0x4A001D,
@@ -1789,6 +1805,7 @@ enum OpcodeServer : uint32
SMSG_PLAYER_CHOICE_CLEAR = 0x4A0006,
SMSG_PLAYER_CHOICE_DISPLAY_ERROR = 0x4A0005,
SMSG_PLAYER_CONDITION_RESULT = 0x4A0012,
+ SMSG_PLAYER_END_OF_MATCH_DETAILS = 0x4A002E,
SMSG_PLAYER_HIDE_ARROW_CALLOUT = 0x4A002B,
SMSG_PLAYER_IS_ADVENTURE_MAP_POI_VALID = 0x4A0011,
SMSG_PLAYER_OPEN_SUBSCRIPTION_INTERSTITIAL = 0x4A0016,
@@ -1801,25 +1818,25 @@ enum OpcodeServer : uint32
SMSG_PLAYER_SKINNED = 0x4A000E,
SMSG_PLAYER_TUTORIAL_HIGHLIGHT_SPELL = 0x4A0015,
SMSG_PLAYER_TUTORIAL_UNHIGHLIGHT_SPELL = 0x4A0014,
- SMSG_PLAY_MUSIC = 0x3701FD,
- SMSG_PLAY_OBJECT_SOUND = 0x3701FE,
- SMSG_PLAY_ONE_SHOT_ANIM_KIT = 0x3701C5,
+ SMSG_PLAY_MUSIC = 0x3701FE,
+ SMSG_PLAY_OBJECT_SOUND = 0x370200,
+ SMSG_PLAY_ONE_SHOT_ANIM_KIT = 0x3701C6,
SMSG_PLAY_ORPHAN_SPELL_VISUAL = 0x4D0038,
- SMSG_PLAY_SCENE = 0x3700CB,
- SMSG_PLAY_SOUND = 0x3701FC,
- SMSG_PLAY_SPEAKERBOT_SOUND = 0x3701FF,
+ SMSG_PLAY_SCENE = 0x3700CC,
+ SMSG_PLAY_SOUND = 0x3701FD,
+ SMSG_PLAY_SPEAKERBOT_SOUND = 0x370201,
SMSG_PLAY_SPELL_VISUAL = 0x4D0036,
SMSG_PLAY_SPELL_VISUAL_KIT = 0x4D003A,
- SMSG_PLAY_TIME_WARNING = 0x370194,
+ SMSG_PLAY_TIME_WARNING = 0x370195,
SMSG_PONG = 0x3E0006,
- SMSG_POWER_UPDATE = 0x370169,
+ SMSG_POWER_UPDATE = 0x37016A,
SMSG_PRELOAD_CHILD_MAP = 0x37000D,
SMSG_PRELOAD_WORLD = 0x37002C,
- SMSG_PREPOPULATE_NAME_CACHE = 0x3702C0,
- SMSG_PRE_RESSURECT = 0x3701FB,
- SMSG_PRINT_NOTIFICATION = 0x370061,
- SMSG_PROC_RESIST = 0x3701EF,
- SMSG_PROFESSION_GOSSIP = 0x37028D,
+ SMSG_PREPOPULATE_NAME_CACHE = 0x3702C2,
+ SMSG_PRE_RESSURECT = 0x3701FC,
+ SMSG_PRINT_NOTIFICATION = 0x370062,
+ SMSG_PROC_RESIST = 0x3701F0,
+ SMSG_PROFESSION_GOSSIP = 0x37028F,
SMSG_PUSH_SPELL_TO_ACTION_BAR = 0x4D0042,
SMSG_PVP_CREDIT = 0x3D0024,
SMSG_PVP_MATCH_COMPLETE = 0x3D002F,
@@ -1828,7 +1845,7 @@ enum OpcodeServer : uint32
SMSG_PVP_MATCH_START = 0x3D002D,
SMSG_PVP_MATCH_STATISTICS = 0x3D0010,
SMSG_PVP_OPTIONS_ENABLED = 0x3D0013,
- SMSG_PVP_TIER_RECORD = 0x3702F9,
+ SMSG_PVP_TIER_RECORD = 0x3702FB,
SMSG_QUERY_BATTLE_PET_NAME_RESPONSE = 0x3B000C,
SMSG_QUERY_CREATURE_RESPONSE = 0x3B0006,
SMSG_QUERY_GAME_OBJECT_RESPONSE = 0x3B0007,
@@ -1844,7 +1861,7 @@ enum OpcodeServer : uint32
SMSG_QUERY_PLAYER_NAME_BY_COMMUNITY_ID_RESPONSE = 0x4A000A,
SMSG_QUERY_QUEST_INFO_RESPONSE = 0x4B0016,
SMSG_QUERY_REALM_GUILD_MASTER_INFO_RESPONSE = 0x43002E,
- SMSG_QUERY_TIME_RESPONSE = 0x37017A,
+ SMSG_QUERY_TIME_RESPONSE = 0x37017B,
SMSG_QUEST_COMPLETION_NPC_RESPONSE = 0x4B0001,
SMSG_QUEST_CONFIRM_ACCEPT = 0x4B000F,
SMSG_QUEST_FORCE_REMOVED = 0x4B001C,
@@ -1863,143 +1880,143 @@ enum OpcodeServer : uint32
SMSG_QUEST_POI_QUERY_RESPONSE = 0x4B001D,
SMSG_QUEST_POI_UPDATE_RESPONSE = 0x4B001F,
SMSG_QUEST_PUSH_RESULT = 0x4B0010,
- SMSG_QUEST_SESSION_INFO_RESPONSE = 0x3702E3,
- SMSG_QUEST_SESSION_READY_CHECK = 0x3702D1,
- SMSG_QUEST_SESSION_READY_CHECK_RESPONSE = 0x3702D2,
- SMSG_QUEST_SESSION_RESULT = 0x3702D0,
+ SMSG_QUEST_SESSION_INFO_RESPONSE = 0x3702E5,
+ SMSG_QUEST_SESSION_READY_CHECK = 0x3702D3,
+ SMSG_QUEST_SESSION_READY_CHECK_RESPONSE = 0x3702D4,
+ SMSG_QUEST_SESSION_RESULT = 0x3702D2,
SMSG_QUEST_UPDATE_ADD_CREDIT = 0x4B000C,
SMSG_QUEST_UPDATE_ADD_CREDIT_SIMPLE = 0x4B000D,
SMSG_QUEST_UPDATE_ADD_PVP_CREDIT = 0x4B000E,
SMSG_QUEST_UPDATE_COMPLETE = 0x4B0009,
SMSG_QUEST_UPDATE_FAILED = 0x4B000A,
SMSG_QUEST_UPDATE_FAILED_TIMER = 0x4B000B,
- SMSG_QUEUE_SUMMARY_UPDATE = 0x3702A0,
- SMSG_RAF_ACCOUNT_INFO = 0x3702CE,
- SMSG_RAF_ACTIVITY_STATE_CHANGED = 0x3702DF,
- SMSG_RAF_DEBUG_FRIEND_MONTHS = 0x370326,
- SMSG_RAID_DIFFICULTY_SET = 0x37023B,
- SMSG_RAID_GROUP_ONLY = 0x37023D,
+ SMSG_QUEUE_SUMMARY_UPDATE = 0x3702A2,
+ SMSG_RAF_ACCOUNT_INFO = 0x3702D0,
+ SMSG_RAF_ACTIVITY_STATE_CHANGED = 0x3702E1,
+ SMSG_RAF_DEBUG_FRIEND_MONTHS = 0x370332,
+ SMSG_RAID_DIFFICULTY_SET = 0x37023D,
+ SMSG_RAID_GROUP_ONLY = 0x37023F,
SMSG_RAID_INSTANCE_MESSAGE = 0x3C0008,
- SMSG_RAID_MARKERS_CHANGED = 0x370037,
- SMSG_RANDOM_ROLL = 0x3700C5,
+ SMSG_RAID_MARKERS_CHANGED = 0x370038,
+ SMSG_RANDOM_ROLL = 0x3700C6,
SMSG_RATED_PVP_INFO = 0x3D000F,
- SMSG_READY_CHECK_COMPLETED = 0x37008E,
- SMSG_READY_CHECK_RESPONSE = 0x37008D,
- SMSG_READY_CHECK_STARTED = 0x37008C,
- SMSG_READ_ITEM_RESULT_FAILED = 0x370237,
- SMSG_READ_ITEM_RESULT_OK = 0x37022E,
+ SMSG_READY_CHECK_COMPLETED = 0x37008F,
+ SMSG_READY_CHECK_RESPONSE = 0x37008E,
+ SMSG_READY_CHECK_STARTED = 0x37008D,
+ SMSG_READ_ITEM_RESULT_FAILED = 0x370239,
+ SMSG_READ_ITEM_RESULT_OK = 0x370230,
SMSG_REALM_QUERY_RESPONSE = 0x3B0005,
- SMSG_REATTACH_RESURRECT = 0x3701DF,
- SMSG_RECEIVE_PING_UNIT = 0x370038,
- SMSG_RECEIVE_PING_WORLD_POINT = 0x370039,
- SMSG_RECRAFT_ITEM_RESULT = 0x37031C,
- SMSG_RECRUIT_A_FRIEND_FAILURE = 0x370157,
- SMSG_REFRESH_COMPONENT = 0x3700E6,
+ SMSG_REATTACH_RESURRECT = 0x3701E0,
+ SMSG_RECEIVE_PING_UNIT = 0x370039,
+ SMSG_RECEIVE_PING_WORLD_POINT = 0x37003A,
+ SMSG_RECRAFT_ITEM_RESULT = 0x370328,
+ SMSG_RECRUIT_A_FRIEND_FAILURE = 0x370158,
+ SMSG_REFRESH_COMPONENT = 0x3700E7,
SMSG_REGIONWIDE_CHARACTER_MAIL_DATA = 0x37001A,
SMSG_REGIONWIDE_CHARACTER_RESTRICTIONS_DATA = 0x370019,
- SMSG_REMOVE_ITEM_PASSIVE = 0x370042,
+ SMSG_REMOVE_ITEM_PASSIVE = 0x370043,
SMSG_REMOVE_SPELL_FROM_ACTION_BAR = 0x4D0043,
- SMSG_REPLACE_TROPHY_RESPONSE = 0x370253,
+ SMSG_REPLACE_TROPHY_RESPONSE = 0x370255,
SMSG_REPORT_PVP_PLAYER_AFK_RESULT = 0x4A0009,
SMSG_REQUEST_CEMETERY_LIST_RESPONSE = 0x370025,
SMSG_REQUEST_PVP_REWARDS_RESPONSE = 0x3D0014,
SMSG_REQUEST_SCHEDULED_PVP_INFO_RESPONSE = 0x3D0015,
SMSG_RESET_COMPRESSION_CONTEXT = 0x3E0007,
- SMSG_RESET_FAILED_NOTIFY = 0x37014E,
- SMSG_RESET_LAST_LOADED_CONFIG_CVARS = 0x370323,
+ SMSG_RESET_FAILED_NOTIFY = 0x37014F,
+ SMSG_RESET_LAST_LOADED_CONFIG_CVARS = 0x37032F,
SMSG_RESET_QUEST_POI = 0x4B0020,
SMSG_RESET_RANGED_COMBAT_TIMER = 0x3D0023,
SMSG_RESET_WEEKLY_CURRENCY = 0x370009,
- SMSG_RESPEC_WIPE_CONFIRM = 0x3700A8,
+ SMSG_RESPEC_WIPE_CONFIRM = 0x3700A9,
SMSG_RESPOND_INSPECT_ACHIEVEMENTS = 0x370006,
- SMSG_RESPONSE_PERK_PENDING_REWARDS = 0x370300,
- SMSG_RESPONSE_PERK_RECENT_PURCHASES = 0x370301,
+ SMSG_RESPONSE_PERK_PENDING_REWARDS = 0x370302,
+ SMSG_RESPONSE_PERK_RECENT_PURCHASES = 0x370303,
SMSG_RESTART_GLOBAL_COOLDOWN = 0x4D0052,
- SMSG_RESTRICTED_ACCOUNT_WARNING = 0x370050,
+ SMSG_RESTRICTED_ACCOUNT_WARNING = 0x370051,
SMSG_RESUME_CAST = 0x4D002C,
SMSG_RESUME_CAST_BAR = 0x4D002F,
SMSG_RESUME_COMMS = 0x3E0003,
- SMSG_RESUME_TOKEN = 0x370040,
+ SMSG_RESUME_TOKEN = 0x370041,
SMSG_RESURRECT_REQUEST = 0x370012,
SMSG_RESYNC_RUNES = 0x4D0050,
- SMSG_RETURNING_PLAYER_PROMPT = 0x370236,
- SMSG_RETURN_APPLICANT_LIST = 0x3702C4,
- SMSG_RETURN_RECRUITING_CLUBS = 0x3702C3,
+ SMSG_RETURNING_PLAYER_PROMPT = 0x370238,
+ SMSG_RETURN_APPLICANT_LIST = 0x3702C6,
+ SMSG_RETURN_RECRUITING_CLUBS = 0x3702C5,
SMSG_ROLE_CHANGED_INFORM = 0x370021,
SMSG_ROLE_CHOSEN = 0x45001D,
SMSG_ROLE_POLL_INFORM = 0x370022,
- SMSG_RUNEFORGE_LEGENDARY_CRAFTING_OPEN_NPC = 0x37028C,
- SMSG_RUNE_REGEN_DEBUG = 0x37004D,
- SMSG_SCENARIO_COMPLETED = 0x37027A,
- SMSG_SCENARIO_POIS = 0x3700C8,
- SMSG_SCENARIO_PROGRESS_UPDATE = 0x3700C1,
- SMSG_SCENARIO_SHOW_CRITERIA = 0x370290,
- SMSG_SCENARIO_STATE = 0x3700C0,
- SMSG_SCENARIO_UI_UPDATE = 0x37028F,
- SMSG_SCENARIO_VACATE = 0x370238,
- SMSG_SCENE_OBJECT_EVENT = 0x370078,
- SMSG_SCENE_OBJECT_PET_BATTLE_FINAL_ROUND = 0x37007D,
- SMSG_SCENE_OBJECT_PET_BATTLE_FINISHED = 0x37007E,
- SMSG_SCENE_OBJECT_PET_BATTLE_FIRST_ROUND = 0x37007A,
- SMSG_SCENE_OBJECT_PET_BATTLE_INITIAL_UPDATE = 0x370079,
- SMSG_SCENE_OBJECT_PET_BATTLE_REPLACEMENTS_MADE = 0x37007C,
- SMSG_SCENE_OBJECT_PET_BATTLE_ROUND_RESULT = 0x37007B,
+ SMSG_RUNEFORGE_LEGENDARY_CRAFTING_OPEN_NPC = 0x37028E,
+ SMSG_RUNE_REGEN_DEBUG = 0x37004E,
+ SMSG_SCENARIO_COMPLETED = 0x37027C,
+ SMSG_SCENARIO_POIS = 0x3700C9,
+ SMSG_SCENARIO_PROGRESS_UPDATE = 0x3700C2,
+ SMSG_SCENARIO_SHOW_CRITERIA = 0x370292,
+ SMSG_SCENARIO_STATE = 0x3700C1,
+ SMSG_SCENARIO_UI_UPDATE = 0x370291,
+ SMSG_SCENARIO_VACATE = 0x37023A,
+ SMSG_SCENE_OBJECT_EVENT = 0x370079,
+ SMSG_SCENE_OBJECT_PET_BATTLE_FINAL_ROUND = 0x37007E,
+ SMSG_SCENE_OBJECT_PET_BATTLE_FINISHED = 0x37007F,
+ SMSG_SCENE_OBJECT_PET_BATTLE_FIRST_ROUND = 0x37007B,
+ SMSG_SCENE_OBJECT_PET_BATTLE_INITIAL_UPDATE = 0x37007A,
+ SMSG_SCENE_OBJECT_PET_BATTLE_REPLACEMENTS_MADE = 0x37007D,
+ SMSG_SCENE_OBJECT_PET_BATTLE_ROUND_RESULT = 0x37007C,
SMSG_SCRIPT_CAST = 0x4D0047,
- SMSG_SEASON_INFO = 0x370058,
- SMSG_SELL_RESPONSE = 0x37015B,
- SMSG_SEND_ITEM_PASSIVES = 0x370043,
+ SMSG_SEASON_INFO = 0x370059,
+ SMSG_SELL_RESPONSE = 0x37015C,
+ SMSG_SEND_ITEM_PASSIVES = 0x370044,
SMSG_SEND_KNOWN_SPELLS = 0x4D0019,
- SMSG_SEND_RAID_TARGET_UPDATE_ALL = 0x3700C3,
- SMSG_SEND_RAID_TARGET_UPDATE_SINGLE = 0x3700C4,
+ SMSG_SEND_RAID_TARGET_UPDATE_ALL = 0x3700C4,
+ SMSG_SEND_RAID_TARGET_UPDATE_SINGLE = 0x3700C5,
SMSG_SEND_SPELL_CHARGES = 0x4D001B,
SMSG_SEND_SPELL_HISTORY = 0x4D001A,
SMSG_SEND_UNLEARN_SPELLS = 0x4D001C,
- SMSG_SERVER_FIRST_ACHIEVEMENTS = 0x3700E3,
- SMSG_SERVER_TIME = 0x37011A,
- SMSG_SERVER_TIME_OFFSET = 0x3701AA,
+ SMSG_SERVER_FIRST_ACHIEVEMENTS = 0x3700E4,
+ SMSG_SERVER_TIME = 0x37011B,
+ SMSG_SERVER_TIME_OFFSET = 0x3701AB,
SMSG_SETUP_COMBAT_LOG_FILE_FLUSH = 0x4D000F,
SMSG_SETUP_CURRENCY = 0x370007,
- SMSG_SET_AI_ANIM_KIT = 0x3701C4,
- SMSG_SET_ANIM_TIER = 0x3701C8,
- SMSG_SET_CHR_UPGRADE_TIER = 0x370075,
+ SMSG_SET_AI_ANIM_KIT = 0x3701C5,
+ SMSG_SET_ANIM_TIER = 0x3701C9,
+ SMSG_SET_CHR_UPGRADE_TIER = 0x370076,
SMSG_SET_CURRENCY = 0x370008,
SMSG_SET_DF_FAST_LAUNCH_RESULT = 0x450012,
- SMSG_SET_DUNGEON_DIFFICULTY = 0x37013C,
- SMSG_SET_FACTION_AT_WAR = 0x370196,
- SMSG_SET_FACTION_NOT_VISIBLE = 0x3701BF,
- SMSG_SET_FACTION_STANDING = 0x3701C0,
- SMSG_SET_FACTION_VISIBLE = 0x3701BE,
+ SMSG_SET_DUNGEON_DIFFICULTY = 0x37013D,
+ SMSG_SET_FACTION_AT_WAR = 0x370197,
+ SMSG_SET_FACTION_NOT_VISIBLE = 0x3701C0,
+ SMSG_SET_FACTION_STANDING = 0x3701C1,
+ SMSG_SET_FACTION_VISIBLE = 0x3701BF,
SMSG_SET_FLAT_SPELL_MODIFIER = 0x4D0027,
- SMSG_SET_ITEM_PURCHASE_DATA = 0x370032,
- SMSG_SET_LOOT_METHOD_FAILED = 0x37025E,
- SMSG_SET_MAX_WEEKLY_QUANTITY = 0x370035,
- SMSG_SET_MELEE_ANIM_KIT = 0x3701C7,
- SMSG_SET_MOVEMENT_ANIM_KIT = 0x3701C6,
+ SMSG_SET_ITEM_PURCHASE_DATA = 0x370033,
+ SMSG_SET_LOOT_METHOD_FAILED = 0x370260,
+ SMSG_SET_MAX_WEEKLY_QUANTITY = 0x370036,
+ SMSG_SET_MELEE_ANIM_KIT = 0x3701C8,
+ SMSG_SET_MOVEMENT_ANIM_KIT = 0x3701C7,
SMSG_SET_PCT_SPELL_MODIFIER = 0x4D0028,
- SMSG_SET_PET_SPECIALIZATION = 0x3700BA,
+ SMSG_SET_PET_SPECIALIZATION = 0x3700BB,
SMSG_SET_PLAYER_DECLINED_NAMES_RESULT = 0x4A000B,
- SMSG_SET_PLAY_HOVER_ANIM = 0x370051,
- SMSG_SET_PROFICIENCY = 0x3701C9,
- SMSG_SET_QUEST_REPLAY_COOLDOWN_OVERRIDE = 0x3702D7,
+ SMSG_SET_PLAY_HOVER_ANIM = 0x370052,
+ SMSG_SET_PROFICIENCY = 0x3701CA,
+ SMSG_SET_QUEST_REPLAY_COOLDOWN_OVERRIDE = 0x3702D9,
SMSG_SET_SHIPMENT_READY_RESPONSE = 0x41003A,
SMSG_SET_SPELL_CHARGES = 0x4D0018,
- SMSG_SET_TIME_ZONE_INFORMATION = 0x37010F,
- SMSG_SET_VEHICLE_REC_ID = 0x37018D,
- SMSG_SHADOWLANDS_CAPACITANCE_UPDATE = 0x370304,
+ SMSG_SET_TIME_ZONE_INFORMATION = 0x370110,
+ SMSG_SET_VEHICLE_REC_ID = 0x37018E,
+ SMSG_SHADOWLANDS_CAPACITANCE_UPDATE = 0x370306,
SMSG_SHIPMENT_FACTION_UPDATE_RESULT = 0x41003B,
- SMSG_SHOW_DELVES_COMPANION_CONFIGURATION_UI = 0x37033C,
- SMSG_SHOW_DELVES_DISPLAY_UI = 0x37033A,
- SMSG_SHOW_NEUTRAL_PLAYER_FACTION_SELECT_UI = 0x370071,
+ SMSG_SHOW_DELVES_COMPANION_CONFIGURATION_UI = 0x370348,
+ SMSG_SHOW_DELVES_DISPLAY_UI = 0x370346,
+ SMSG_SHOW_NEUTRAL_PLAYER_FACTION_SELECT_UI = 0x370072,
SMSG_SHOW_QUEST_COMPLETION_TEXT = 0x4B0015,
- SMSG_SHOW_TAXI_NODES = 0x370164,
- SMSG_SHOW_TRADE_SKILL_RESPONSE = 0x370204,
- SMSG_SOCIAL_CONTRACT_REQUEST_RESPONSE = 0x37030E,
- SMSG_SOCKET_GEMS_FAILURE = 0x3701BC,
- SMSG_SOCKET_GEMS_SUCCESS = 0x3701BB,
- SMSG_SPECIAL_MOUNT_ANIM = 0x370137,
- SMSG_SPECTATE_END = 0x370328,
- SMSG_SPECTATE_PLAYER = 0x370327,
- SMSG_SPEC_INVOLUNTARILY_CHANGED = 0x3701AE,
+ SMSG_SHOW_TAXI_NODES = 0x370165,
+ SMSG_SHOW_TRADE_SKILL_RESPONSE = 0x370206,
+ SMSG_SOCIAL_CONTRACT_REQUEST_RESPONSE = 0x370312,
+ SMSG_SOCKET_GEMS_FAILURE = 0x3701BD,
+ SMSG_SOCKET_GEMS_SUCCESS = 0x3701BC,
+ SMSG_SPECIAL_MOUNT_ANIM = 0x370138,
+ SMSG_SPECTATE_END = 0x370334,
+ SMSG_SPECTATE_PLAYER = 0x370333,
+ SMSG_SPEC_INVOLUNTARILY_CHANGED = 0x3701AF,
SMSG_SPELL_ABSORB_LOG = 0x4D000C,
SMSG_SPELL_CATEGORY_COOLDOWN = 0x4D0006,
SMSG_SPELL_CHANNEL_START = 0x4D0022,
@@ -2027,95 +2044,96 @@ enum OpcodeServer : uint32
SMSG_SPELL_PERIODIC_AURA_LOG = 0x4D0008,
SMSG_SPELL_PREPARE = 0x4D0029,
SMSG_SPELL_START = 0x4D002B,
- SMSG_SPELL_VISUAL_LOAD_SCREEN = 0x370063,
- SMSG_SPLASH_SCREEN_SHOW_LATEST = 0x3702E9,
- SMSG_STAND_STATE_UPDATE = 0x3701B2,
- SMSG_STARTER_BUILD_ACTIVATE_FAILED = 0x370069,
- SMSG_START_ELAPSED_TIMER = 0x37009A,
- SMSG_START_ELAPSED_TIMERS = 0x37009C,
- SMSG_START_LIGHTNING_STORM = 0x37013F,
- SMSG_START_LOOT_ROLL = 0x3700B2,
- SMSG_START_MIRROR_TIMER = 0x3701A5,
- SMSG_START_TIMER = 0x37003C,
- SMSG_STOP_ELAPSED_TIMER = 0x37009B,
- SMSG_STOP_MIRROR_TIMER = 0x3701A7,
- SMSG_STOP_SPEAKERBOT_SOUND = 0x370200,
- SMSG_STOP_TIMER = 0x37003D,
- SMSG_STREAMING_MOVIES = 0x37003B,
- SMSG_SUGGEST_INVITE_INFORM = 0x370224,
- SMSG_SUMMON_CANCEL = 0x370148,
+ SMSG_SPELL_VISUAL_LOAD_SCREEN = 0x370064,
+ SMSG_SPLASH_SCREEN_SHOW_LATEST = 0x3702EB,
+ SMSG_STAND_STATE_UPDATE = 0x3701B3,
+ SMSG_STARTER_BUILD_ACTIVATE_FAILED = 0x37006A,
+ SMSG_START_ELAPSED_TIMER = 0x37009B,
+ SMSG_START_ELAPSED_TIMERS = 0x37009D,
+ SMSG_START_LIGHTNING_STORM = 0x370140,
+ SMSG_START_LOOT_ROLL = 0x3700B3,
+ SMSG_START_MIRROR_TIMER = 0x3701A6,
+ SMSG_START_TIMER = 0x37003D,
+ SMSG_STOP_ELAPSED_TIMER = 0x37009C,
+ SMSG_STOP_MIRROR_TIMER = 0x3701A8,
+ SMSG_STOP_SPEAKERBOT_SOUND = 0x370202,
+ SMSG_STOP_TIMER = 0x37003E,
+ SMSG_STREAMING_MOVIES = 0x37003C,
+ SMSG_SUGGEST_INVITE_INFORM = 0x370226,
+ SMSG_SUMMON_CANCEL = 0x370149,
SMSG_SUMMON_RAID_MEMBER_VALIDATE_FAILED = 0x370023,
- SMSG_SUMMON_REQUEST = 0x3701B6,
+ SMSG_SUMMON_REQUEST = 0x3701B7,
SMSG_SUPERCEDED_SPELLS = 0x4D003D,
SMSG_SUSPEND_COMMS = 0x3E0002,
- SMSG_SUSPEND_TOKEN = 0x37003F,
- SMSG_SYNC_WOW_ENTITLEMENTS = 0x3702E1,
- SMSG_TALENTS_INVOLUNTARILY_RESET = 0x3701AD,
- SMSG_TAXI_NODE_STATUS = 0x370114,
- SMSG_TEXT_EMOTE = 0x370112,
- SMSG_THREAT_CLEAR = 0x370173,
- SMSG_THREAT_REMOVE = 0x370172,
- SMSG_THREAT_UPDATE = 0x370171,
- SMSG_TIMERUNNING_SEASON_ENDED = 0x37033D,
+ SMSG_SUSPEND_TOKEN = 0x370040,
+ SMSG_SYNC_WOW_ENTITLEMENTS = 0x3702E3,
+ SMSG_TALENTS_INVOLUNTARILY_RESET = 0x3701AE,
+ SMSG_TAXI_NODE_STATUS = 0x370115,
+ SMSG_TEXT_EMOTE = 0x370113,
+ SMSG_THREAT_CLEAR = 0x370174,
+ SMSG_THREAT_REMOVE = 0x370173,
+ SMSG_THREAT_UPDATE = 0x370172,
+ SMSG_TIMERUNNING_SEASON_ENDED = 0x370349,
SMSG_TIME_ADJUSTMENT = 0x480001,
SMSG_TIME_SYNC_REQUEST = 0x480000,
- SMSG_TITLE_EARNED = 0x37016E,
- SMSG_TITLE_LOST = 0x37016F,
- SMSG_TOTEM_CREATED = 0x37015E,
- SMSG_TOTEM_DURATION_CHANGED = 0x370160,
- SMSG_TOTEM_MOVED = 0x370161,
- SMSG_TOTEM_REMOVED = 0x37015F,
+ SMSG_TITLE_EARNED = 0x37016F,
+ SMSG_TITLE_LOST = 0x370170,
+ SMSG_TOTEM_CREATED = 0x37015F,
+ SMSG_TOTEM_DURATION_CHANGED = 0x370161,
+ SMSG_TOTEM_MOVED = 0x370162,
+ SMSG_TOTEM_REMOVED = 0x370160,
SMSG_TRADE_STATUS = 0x370017,
SMSG_TRADE_UPDATED = 0x370016,
- SMSG_TRAINER_BUY_FAILED = 0x370176,
- SMSG_TRAINER_LIST = 0x370175,
- SMSG_TRAIT_CONFIG_COMMIT_FAILED = 0x370068,
- SMSG_TRANSFER_ABORTED = 0x370199,
- SMSG_TRANSFER_PENDING = 0x370064,
+ SMSG_TRAINER_BUY_FAILED = 0x370177,
+ SMSG_TRAINER_LIST = 0x370176,
+ SMSG_TRAIT_CONFIG_COMMIT_FAILED = 0x370069,
+ SMSG_TRANSFER_ABORTED = 0x37019A,
+ SMSG_TRANSFER_PENDING = 0x370065,
SMSG_TREASURE_PICKER_RESPONSE = 0x3B0011,
- SMSG_TRIGGER_CINEMATIC = 0x370258,
- SMSG_TRIGGER_MOVIE = 0x370162,
- SMSG_TURN_IN_PETITION_RESULT = 0x3701E2,
- SMSG_TUTORIAL_FLAGS = 0x37024C,
+ SMSG_TRIGGER_CINEMATIC = 0x37025A,
+ SMSG_TRIGGER_MOVIE = 0x370163,
+ SMSG_TURN_IN_PETITION_RESULT = 0x3701E3,
+ SMSG_TUTORIAL_FLAGS = 0x37024E,
+ SMSG_UI_ACTION = 0x3701FF,
SMSG_UI_MAP_QUEST_LINES_RESPONSE = 0x4B0023,
- SMSG_UNDELETE_CHARACTER_RESPONSE = 0x370259,
- SMSG_UNDELETE_COOLDOWN_STATUS_RESPONSE = 0x37025A,
+ SMSG_UNDELETE_CHARACTER_RESPONSE = 0x37025B,
+ SMSG_UNDELETE_COOLDOWN_STATUS_RESPONSE = 0x37025C,
SMSG_UNLEARNED_SPELLS = 0x4D003F,
SMSG_UNLOAD_CHILD_MAP = 0x37000E,
- SMSG_UPDATE_AADC_STATUS_RESPONSE = 0x3702FA,
- SMSG_UPDATE_ACCOUNT_DATA = 0x37019F,
- SMSG_UPDATE_ACTION_BUTTONS = 0x370076,
- SMSG_UPDATE_BNET_SESSION_KEY = 0x3702B1,
+ SMSG_UPDATE_AADC_STATUS_RESPONSE = 0x3702FC,
+ SMSG_UPDATE_ACCOUNT_DATA = 0x3701A0,
+ SMSG_UPDATE_ACTION_BUTTONS = 0x370077,
+ SMSG_UPDATE_BNET_SESSION_KEY = 0x3702B3,
SMSG_UPDATE_CAPTURE_POINT = 0x3D0007,
- SMSG_UPDATE_CELESTIAL_BODY = 0x3702AD,
- SMSG_UPDATE_CHARACTER_FLAGS = 0x370252,
- SMSG_UPDATE_CHARGE_CATEGORY_COOLDOWN = 0x3701FA,
- SMSG_UPDATE_COOLDOWN = 0x3701F9,
+ SMSG_UPDATE_CELESTIAL_BODY = 0x3702AF,
+ SMSG_UPDATE_CHARACTER_FLAGS = 0x370254,
+ SMSG_UPDATE_CHARGE_CATEGORY_COOLDOWN = 0x3701FB,
+ SMSG_UPDATE_COOLDOWN = 0x3701FA,
SMSG_UPDATE_CRAFTING_NPC_RECIPES = 0x410038,
SMSG_UPDATE_DAILY_MISSION_COUNTER = 0x410021,
- SMSG_UPDATE_EXPANSION_LEVEL = 0x3700DB,
- SMSG_UPDATE_GAME_TIME_STATE = 0x3702B4,
- SMSG_UPDATE_INSTANCE_OWNERSHIP = 0x370141,
- SMSG_UPDATE_LAST_INSTANCE = 0x370120,
+ SMSG_UPDATE_EXPANSION_LEVEL = 0x3700DC,
+ SMSG_UPDATE_GAME_TIME_STATE = 0x3702B6,
+ SMSG_UPDATE_INSTANCE_OWNERSHIP = 0x370142,
+ SMSG_UPDATE_LAST_INSTANCE = 0x370121,
SMSG_UPDATE_OBJECT = 0x470000,
- SMSG_UPDATE_PRIMARY_SPEC = 0x37006E,
- SMSG_UPDATE_RECENT_PLAYER_GUIDS = 0x37008B,
- SMSG_UPDATE_TALENT_DATA = 0x37006D,
- SMSG_UPDATE_WORLD_STATE = 0x3701DC,
+ SMSG_UPDATE_PRIMARY_SPEC = 0x37006F,
+ SMSG_UPDATE_RECENT_PLAYER_GUIDS = 0x37008C,
+ SMSG_UPDATE_TALENT_DATA = 0x37006E,
+ SMSG_UPDATE_WORLD_STATE = 0x3701DD,
SMSG_USERLIST_ADD = 0x3C000D,
SMSG_USERLIST_REMOVE = 0x3C000E,
SMSG_USERLIST_UPDATE = 0x3C000F,
- SMSG_USE_EQUIPMENT_SET_RESULT = 0x3701E3,
- SMSG_VAS_CHECK_TRANSFER_OK_RESPONSE = 0x3702A8,
- SMSG_VAS_GET_QUEUE_MINUTES_RESPONSE = 0x3702A6,
- SMSG_VAS_GET_SERVICE_STATUS_RESPONSE = 0x3702A5,
- SMSG_VAS_PURCHASE_COMPLETE = 0x370280,
- SMSG_VAS_PURCHASE_STATE_UPDATE = 0x37027F,
- SMSG_VENDOR_INVENTORY = 0x37004F,
+ SMSG_USE_EQUIPMENT_SET_RESULT = 0x3701E4,
+ SMSG_VAS_CHECK_TRANSFER_OK_RESPONSE = 0x3702AA,
+ SMSG_VAS_GET_QUEUE_MINUTES_RESPONSE = 0x3702A8,
+ SMSG_VAS_GET_SERVICE_STATUS_RESPONSE = 0x3702A7,
+ SMSG_VAS_PURCHASE_COMPLETE = 0x370282,
+ SMSG_VAS_PURCHASE_STATE_UPDATE = 0x370281,
+ SMSG_VENDOR_INVENTORY = 0x370050,
SMSG_VIGNETTE_UPDATE = 0x4A0010,
- SMSG_VOICE_CHANNEL_INFO_RESPONSE = 0x3702AC,
- SMSG_VOICE_CHANNEL_STT_TOKEN_RESPONSE = 0x3702F4,
- SMSG_VOICE_LOGIN_RESPONSE = 0x3702AB,
+ SMSG_VOICE_CHANNEL_INFO_RESPONSE = 0x3702AE,
+ SMSG_VOICE_CHANNEL_STT_TOKEN_RESPONSE = 0x3702F6,
+ SMSG_VOICE_LOGIN_RESPONSE = 0x3702AD,
SMSG_VOID_ITEM_SWAP_RESPONSE = 0x4E0004,
SMSG_VOID_STORAGE_CONTENTS = 0x4E0001,
SMSG_VOID_STORAGE_FAILED = 0x4E0000,
@@ -2124,28 +2142,31 @@ enum OpcodeServer : uint32
SMSG_WAIT_QUEUE_FINISH = 0x370003,
SMSG_WAIT_QUEUE_UPDATE = 0x370002,
SMSG_WARDEN3_DATA = 0x37000B,
- SMSG_WARDEN3_DISABLED = 0x3702AF,
- SMSG_WARDEN3_ENABLED = 0x3702AE,
- SMSG_WARFRONT_COMPLETE = 0x3701F2,
+ SMSG_WARDEN3_DISABLED = 0x3702B1,
+ SMSG_WARDEN3_ENABLED = 0x3702B0,
+ SMSG_WARFRONT_COMPLETE = 0x3701F3,
SMSG_WARGAME_REQUEST_OPPONENT_RESPONSE = 0x3D0012,
SMSG_WARGAME_REQUEST_SUCCESSFULLY_SENT_TO_OPPONENT = 0x3D0011,
- SMSG_WEATHER = 0x37013E,
- SMSG_WEEKLY_REWARDS_PROGRESS_RESULT = 0x3702EC,
- SMSG_WEEKLY_REWARDS_RESULT = 0x3702EA,
- SMSG_WEEKLY_REWARD_CLAIM_RESULT = 0x3702EB,
+ SMSG_WEATHER = 0x37013F,
+ SMSG_WEEKLY_REWARDS_PROGRESS_RESULT = 0x3702EE,
+ SMSG_WEEKLY_REWARDS_RESULT = 0x3702EC,
+ SMSG_WEEKLY_REWARD_CLAIM_RESULT = 0x3702ED,
SMSG_WHO = 0x3C0002,
- SMSG_WHO_IS = 0x37013D,
- SMSG_WILL_BE_KICKED_FOR_ADDED_SUBSCRIPTION_TIME = 0x3702B3,
+ SMSG_WHO_IS = 0x37013E,
+ SMSG_WILL_BE_KICKED_FOR_ADDED_SUBSCRIPTION_TIME = 0x3702B5,
SMSG_WORLD_QUEST_UPDATE_RESPONSE = 0x4A0017,
- SMSG_WORLD_SERVER_INFO = 0x370044,
- SMSG_WOW_ENTITLEMENT_NOTIFICATION = 0x3702E2,
- SMSG_WOW_LABS_NOTIFY_PLAYERS_MATCH_END = 0x37030F,
- SMSG_WOW_LABS_NOTIFY_PLAYERS_MATCH_STATE_CHANGED = 0x370310,
- SMSG_WOW_LABS_PARTY_ERROR = 0x370314,
- SMSG_WOW_LABS_SET_PREDICTION_CIRCLE = 0x370311,
- SMSG_XP_AWARDED_FROM_CURRENCY = 0x370322,
- SMSG_XP_GAIN_ABORTED = 0x370060,
- SMSG_XP_GAIN_ENABLED = 0x37023C,
+ SMSG_WORLD_SERVER_INFO = 0x370045,
+ SMSG_WOW_ENTITLEMENT_NOTIFICATION = 0x3702E4,
+ SMSG_WOW_LABS_AREA_INFO = 0x370317,
+ SMSG_WOW_LABS_NOTIFY_PLAYERS_MATCH_END = 0x370313,
+ SMSG_WOW_LABS_NOTIFY_PLAYERS_MATCH_STATE_CHANGED = 0x370314,
+ SMSG_WOW_LABS_PARTY_ERROR = 0x370320,
+ SMSG_WOW_LABS_SET_AREA_ID_RESULT = 0x370315,
+ SMSG_WOW_LABS_SET_PREDICTION_CIRCLE = 0x370319,
+ SMSG_WOW_LABS_SET_SELECTED_AREA_ID = 0x370316,
+ SMSG_XP_AWARDED_FROM_CURRENCY = 0x37032E,
+ SMSG_XP_GAIN_ABORTED = 0x370061,
+ SMSG_XP_GAIN_ENABLED = 0x37023E,
SMSG_ZONE_UNDER_ATTACK = 0x3C0009,
// Opcodes that are not generated automatically
@@ -2157,30 +2178,30 @@ enum OpcodeServer : uint32
SMSG_ARENA_TEAM_STATS = UNKNOWN_OPCODE,
};
-inline constexpr std::size_t NUM_SMSG_OPCODES = 1445;
+inline constexpr std::size_t NUM_SMSG_OPCODES = 1460;
inline constexpr std::ptrdiff_t GetOpcodeArrayIndex(OpcodeServer opcode)
{
uint32 idInGroup = opcode & 0xFFFF;
switch (opcode >> 16)
{
- case 0x37: return idInGroup < 831 ? idInGroup + 0 : -1;
- case 0x38: return idInGroup < 10 ? idInGroup + 831 : -1;
- case 0x3B: return idInGroup < 18 ? idInGroup + 841 : -1;
- case 0x3C: return idInGroup < 33 ? idInGroup + 859 : -1;
- case 0x3D: return idInGroup < 49 ? idInGroup + 892 : -1;
- case 0x3E: return idInGroup < 11 ? idInGroup + 941 : -1;
- case 0x3F: return idInGroup < 12 ? idInGroup + 952 : -1;
- case 0x41: return idInGroup < 82 ? idInGroup + 964 : -1;
- case 0x43: return idInGroup < 67 ? idInGroup + 1046 : -1;
- case 0x45: return idInGroup < 32 ? idInGroup + 1113 : -1;
- case 0x47: return idInGroup < 1 ? idInGroup + 1145 : -1;
- case 0x48: return idInGroup < 118 ? idInGroup + 1146 : -1;
- case 0x4A: return idInGroup < 46 ? idInGroup + 1264 : -1;
- case 0x4B: return idInGroup < 41 ? idInGroup + 1310 : -1;
- case 0x4D: return idInGroup < 85 ? idInGroup + 1351 : -1;
- case 0x4E: return idInGroup < 8 ? idInGroup + 1436 : -1;
- case 0x50: return idInGroup < 1 ? idInGroup + 1444 : -1;
+ case 0x37: return idInGroup < 843 ? idInGroup + 0 : -1;
+ case 0x38: return idInGroup < 10 ? idInGroup + 843 : -1;
+ case 0x3B: return idInGroup < 18 ? idInGroup + 853 : -1;
+ case 0x3C: return idInGroup < 34 ? idInGroup + 871 : -1;
+ case 0x3D: return idInGroup < 49 ? idInGroup + 905 : -1;
+ case 0x3E: return idInGroup < 11 ? idInGroup + 954 : -1;
+ case 0x3F: return idInGroup < 12 ? idInGroup + 965 : -1;
+ case 0x41: return idInGroup < 82 ? idInGroup + 977 : -1;
+ case 0x43: return idInGroup < 67 ? idInGroup + 1059 : -1;
+ case 0x45: return idInGroup < 33 ? idInGroup + 1126 : -1;
+ case 0x47: return idInGroup < 1 ? idInGroup + 1159 : -1;
+ case 0x48: return idInGroup < 118 ? idInGroup + 1160 : -1;
+ case 0x4A: return idInGroup < 47 ? idInGroup + 1278 : -1;
+ case 0x4B: return idInGroup < 41 ? idInGroup + 1325 : -1;
+ case 0x4D: return idInGroup < 85 ? idInGroup + 1366 : -1;
+ case 0x4E: return idInGroup < 8 ? idInGroup + 1451 : -1;
+ case 0x50: return idInGroup < 1 ? idInGroup + 1459 : -1;
default: return -1;
}
}
diff --git a/src/server/game/Server/WorldSocket.cpp b/src/server/game/Server/WorldSocket.cpp
index 359482110d6..04b6e30cdd1 100644
--- a/src/server/game/Server/WorldSocket.cpp
+++ b/src/server/game/Server/WorldSocket.cpp
@@ -53,10 +53,14 @@ std::string const WorldSocket::ServerConnectionInitialize("WORLD OF WARCRAFT CON
std::string const WorldSocket::ClientConnectionInitialize("WORLD OF WARCRAFT CONNECTION - CLIENT TO SERVER - V2");
uint32 const WorldSocket::MinSizeForCompression = 0x400;
-uint8 const WorldSocket::AuthCheckSeed[16] = { 0xC5, 0xC6, 0x98, 0x95, 0x76, 0x3F, 0x1D, 0xCD, 0xB6, 0xA1, 0x37, 0x28, 0xB3, 0x12, 0xFF, 0x8A };
-uint8 const WorldSocket::SessionKeySeed[16] = { 0x58, 0xCB, 0xCF, 0x40, 0xFE, 0x2E, 0xCE, 0xA6, 0x5A, 0x90, 0xB8, 0x01, 0x68, 0x6C, 0x28, 0x0B };
-uint8 const WorldSocket::ContinuedSessionSeed[16] = { 0x16, 0xAD, 0x0C, 0xD4, 0x46, 0xF9, 0x4F, 0xB2, 0xEF, 0x7D, 0xEA, 0x2A, 0x17, 0x66, 0x4D, 0x2F };
-uint8 const WorldSocket::EncryptionKeySeed[16] = { 0xE9, 0x75, 0x3C, 0x50, 0x90, 0x93, 0x61, 0xDA, 0x3B, 0x07, 0xEE, 0xFA, 0xFF, 0x9D, 0x41, 0xB8 };
+std::array<uint8, 32> const WorldSocket::AuthCheckSeed = { 0xDE, 0x3A, 0x2A, 0x8E, 0x6B, 0x89, 0x52, 0x66, 0x88, 0x9D, 0x7E, 0x7A, 0x77, 0x1D, 0x5D, 0x1F,
+ 0x4E, 0xD9, 0x0C, 0x23, 0x9B, 0xCD, 0x0E, 0xDC, 0xD2, 0xE8, 0x04, 0x3A, 0x68, 0x64, 0xC7, 0xB0 };
+std::array<uint8, 32> const WorldSocket::SessionKeySeed = { 0xE8, 0x1E, 0x8B, 0x59, 0x27, 0x62, 0x1E, 0xAA, 0x86, 0x15, 0x18, 0xEA, 0xC0, 0xBF, 0x66, 0x8C,
+ 0x6D, 0xBF, 0x83, 0x93, 0xBC, 0xAA, 0x80, 0x52, 0x5B, 0x1E, 0xDC, 0x23, 0xA0, 0x12, 0xB7, 0x50 };
+std::array<uint8, 32> const WorldSocket::ContinuedSessionSeed = { 0x56, 0x5C, 0x61, 0x9C, 0x48, 0x3A, 0x52, 0x1F, 0x61, 0x5D, 0x05, 0x49, 0xB2, 0x9A, 0x39, 0xBF,
+ 0x4B, 0x97, 0xB0, 0x1B, 0xF9, 0x6C, 0xDE, 0xD6, 0x80, 0x1D, 0xAB, 0x26, 0x02, 0xA9, 0x9B, 0x9D };
+std::array<uint8, 32> const WorldSocket::EncryptionKeySeed = { 0x71, 0xC9, 0xED, 0x5A, 0xA7, 0x0E, 0x4D, 0xFF, 0x4C, 0x36, 0xA6, 0x5A, 0x3E, 0x46, 0x8A, 0x4A,
+ 0x5D, 0xA1, 0x48, 0xC8, 0x30, 0x47, 0x4A, 0xDE, 0xF6, 0x0D, 0x6C, 0xBE, 0x6F, 0xE4, 0x55, 0x73 };
WorldSocket::WorldSocket(boost::asio::ip::tcp::socket&& socket) : Socket(std::move(socket)),
_type(CONNECTION_TYPE_REALM), _key(0), _OverSpeedPings(0),
@@ -730,15 +734,15 @@ void WorldSocket::HandleAuthSessionCallback(std::shared_ptr<WorldPackets::Auth::
// For hook purposes, we get Remoteaddress at this point.
std::string address = GetRemoteIpAddress().to_string();
- Trinity::Crypto::SHA256 digestKeyHash;
+ Trinity::Crypto::SHA512 digestKeyHash;
digestKeyHash.UpdateData(account.Game.KeyData.data(), account.Game.KeyData.size());
digestKeyHash.UpdateData(clientBuildAuthKey->Key.data(), clientBuildAuthKey->Key.size());
digestKeyHash.Finalize();
- Trinity::Crypto::HMAC_SHA256 hmac(digestKeyHash.GetDigest());
+ Trinity::Crypto::HMAC_SHA512 hmac(digestKeyHash.GetDigest());
hmac.UpdateData(authSession->LocalChallenge);
hmac.UpdateData(_serverChallenge);
- hmac.UpdateData(AuthCheckSeed, 16);
+ hmac.UpdateData(AuthCheckSeed);
hmac.Finalize();
// Check that Key and account name are the same on client and server
@@ -750,27 +754,27 @@ void WorldSocket::HandleAuthSessionCallback(std::shared_ptr<WorldPackets::Auth::
return;
}
- Trinity::Crypto::SHA256 keyData;
+ Trinity::Crypto::SHA512 keyData;
keyData.UpdateData(account.Game.KeyData.data(), account.Game.KeyData.size());
keyData.Finalize();
- Trinity::Crypto::HMAC_SHA256 sessionKeyHmac(keyData.GetDigest());
+ Trinity::Crypto::HMAC_SHA512 sessionKeyHmac(keyData.GetDigest());
sessionKeyHmac.UpdateData(_serverChallenge);
sessionKeyHmac.UpdateData(authSession->LocalChallenge);
- sessionKeyHmac.UpdateData(SessionKeySeed, 16);
+ sessionKeyHmac.UpdateData(SessionKeySeed);
sessionKeyHmac.Finalize();
- SessionKeyGenerator<Trinity::Crypto::SHA256> sessionKeyGenerator(sessionKeyHmac.GetDigest());
+ SessionKeyGenerator<Trinity::Crypto::SHA512> sessionKeyGenerator(sessionKeyHmac.GetDigest());
sessionKeyGenerator.Generate(_sessionKey.data(), 40);
- Trinity::Crypto::HMAC_SHA256 encryptKeyGen(_sessionKey);
+ Trinity::Crypto::HMAC_SHA512 encryptKeyGen(_sessionKey);
encryptKeyGen.UpdateData(authSession->LocalChallenge);
encryptKeyGen.UpdateData(_serverChallenge);
- encryptKeyGen.UpdateData(EncryptionKeySeed, 16);
+ encryptKeyGen.UpdateData(EncryptionKeySeed);
encryptKeyGen.Finalize();
- // only first 16 bytes of the hmac are used
- memcpy(_encryptKey.data(), encryptKeyGen.GetDigest().data(), 16);
+ // only first 32 bytes of the hmac are used
+ memcpy(_encryptKey.data(), encryptKeyGen.GetDigest().data(), 32);
LoginDatabasePreparedStatement* stmt = nullptr;
@@ -959,11 +963,11 @@ void WorldSocket::HandleAuthContinuedSessionCallback(std::shared_ptr<WorldPacket
std::string login = fields[0].GetString();
_sessionKey = fields[1].GetBinary<SESSION_KEY_LENGTH>();
- Trinity::Crypto::HMAC_SHA256 hmac(_sessionKey);
+ Trinity::Crypto::HMAC_SHA512 hmac(_sessionKey);
hmac.UpdateData(reinterpret_cast<uint8 const*>(&authSession->Key), sizeof(authSession->Key));
hmac.UpdateData(authSession->LocalChallenge);
hmac.UpdateData(_serverChallenge);
- hmac.UpdateData(ContinuedSessionSeed, 16);
+ hmac.UpdateData(ContinuedSessionSeed);
hmac.Finalize();
if (memcmp(hmac.GetDigest().data(), authSession->Digest.data(), authSession->Digest.size()))
@@ -973,14 +977,14 @@ void WorldSocket::HandleAuthContinuedSessionCallback(std::shared_ptr<WorldPacket
return;
}
- Trinity::Crypto::HMAC_SHA256 encryptKeyGen(_sessionKey);
+ Trinity::Crypto::HMAC_SHA512 encryptKeyGen(_sessionKey);
encryptKeyGen.UpdateData(authSession->LocalChallenge);
encryptKeyGen.UpdateData(_serverChallenge);
- encryptKeyGen.UpdateData(EncryptionKeySeed, 16);
+ encryptKeyGen.UpdateData(EncryptionKeySeed);
encryptKeyGen.Finalize();
- // only first 16 bytes of the hmac are used
- memcpy(_encryptKey.data(), encryptKeyGen.GetDigest().data(), 16);
+ // only first 32 bytes of the hmac are used
+ memcpy(_encryptKey.data(), encryptKeyGen.GetDigest().data(), 32);
SendPacketAndLogOpcode(*WorldPackets::Auth::EnterEncryptedMode(_encryptKey, true).Write());
AsyncRead();
diff --git a/src/server/game/Server/WorldSocket.h b/src/server/game/Server/WorldSocket.h
index 03fb9d87542..04451dc26e8 100644
--- a/src/server/game/Server/WorldSocket.h
+++ b/src/server/game/Server/WorldSocket.h
@@ -93,10 +93,10 @@ class TC_GAME_API WorldSocket : public Socket<WorldSocket>
static std::string const ClientConnectionInitialize;
static uint32 const MinSizeForCompression;
- static uint8 const AuthCheckSeed[16];
- static uint8 const SessionKeySeed[16];
- static uint8 const ContinuedSessionSeed[16];
- static uint8 const EncryptionKeySeed[16];
+ static std::array<uint8, 32> const AuthCheckSeed;
+ static std::array<uint8, 32> const SessionKeySeed;
+ static std::array<uint8, 32> const ContinuedSessionSeed;
+ static std::array<uint8, 32> const EncryptionKeySeed;
typedef Socket<WorldSocket> BaseSocket;
@@ -157,10 +157,10 @@ private:
ConnectionType _type;
uint64 _key;
- std::array<uint8, 16> _serverChallenge;
+ std::array<uint8, 32> _serverChallenge;
WorldPacketCrypt _authCrypt;
SessionKey _sessionKey;
- std::array<uint8, 16> _encryptKey;
+ std::array<uint8, 32> _encryptKey;
TimePoint _LastPingTime;
uint32 _OverSpeedPings;
diff --git a/src/server/game/Spells/SpellEffects.cpp b/src/server/game/Spells/SpellEffects.cpp
index 18990648d1e..406f3ecdeb7 100644
--- a/src/server/game/Spells/SpellEffects.cpp
+++ b/src/server/game/Spells/SpellEffects.cpp
@@ -422,6 +422,13 @@ NonDefaultConstructible<SpellEffectHandlerFn> SpellEffectHandlers[TOTAL_SPELL_EF
&Spell::EffectNULL, //331 SPELL_EFFECT_331
&Spell::EffectNULL, //332 SPELL_EFFECT_332
&Spell::EffectNULL, //333 SPELL_EFFECT_333
+ &Spell::EffectNULL, //334 SPELL_EFFECT_334
+ &Spell::EffectNULL, //335 SPELL_EFFECT_335
+ &Spell::EffectNULL, //336 SPELL_EFFECT_336
+ &Spell::EffectNULL, //337 SPELL_EFFECT_337
+ &Spell::EffectNULL, //338 SPELL_EFFECT_338
+ &Spell::EffectNULL, //339 SPELL_EFFECT_UI_ACTION
+ &Spell::EffectNULL, //340 SPELL_EFFECT_340
};
void Spell::EffectNULL()
diff --git a/src/server/game/Spells/SpellInfo.cpp b/src/server/game/Spells/SpellInfo.cpp
index 41c9503ab76..fb9e3e63fa9 100644
--- a/src/server/game/Spells/SpellInfo.cpp
+++ b/src/server/game/Spells/SpellInfo.cpp
@@ -1181,6 +1181,13 @@ std::array<SpellEffectInfo::StaticData, TOTAL_SPELL_EFFECTS> SpellEffectInfo::_d
{EFFECT_IMPLICIT_TARGET_NONE, TARGET_OBJECT_TYPE_NONE}, // 331 SPELL_EFFECT_331
{EFFECT_IMPLICIT_TARGET_NONE, TARGET_OBJECT_TYPE_NONE}, // 332 SPELL_EFFECT_332
{EFFECT_IMPLICIT_TARGET_NONE, TARGET_OBJECT_TYPE_NONE}, // 333 SPELL_EFFECT_333
+ {EFFECT_IMPLICIT_TARGET_NONE, TARGET_OBJECT_TYPE_NONE}, // 334 SPELL_EFFECT_334
+ {EFFECT_IMPLICIT_TARGET_NONE, TARGET_OBJECT_TYPE_NONE}, // 335 SPELL_EFFECT_335
+ {EFFECT_IMPLICIT_TARGET_NONE, TARGET_OBJECT_TYPE_NONE}, // 336 SPELL_EFFECT_336
+ {EFFECT_IMPLICIT_TARGET_NONE, TARGET_OBJECT_TYPE_NONE}, // 337 SPELL_EFFECT_337
+ {EFFECT_IMPLICIT_TARGET_NONE, TARGET_OBJECT_TYPE_NONE}, // 338 SPELL_EFFECT_338
+ {EFFECT_IMPLICIT_TARGET_NONE, TARGET_OBJECT_TYPE_NONE}, // 339 SPELL_EFFECT_UI_ACTION
+ {EFFECT_IMPLICIT_TARGET_NONE, TARGET_OBJECT_TYPE_NONE}, // 340 SPELL_EFFECT_340
} };
SpellInfo::SpellInfo(SpellNameEntry const* spellName, ::Difficulty difficulty, SpellInfoLoadHelper const& data)
diff --git a/src/tools/map_extractor/loadlib/DBFilesClientList.h b/src/tools/map_extractor/loadlib/DBFilesClientList.h
index 480855aed5d..70272f1708a 100644
--- a/src/tools/map_extractor/loadlib/DBFilesClientList.h
+++ b/src/tools/map_extractor/loadlib/DBFilesClientList.h
@@ -26,6 +26,8 @@ struct DB2FileInfo
DB2FileInfo const DBFilesClientList[] =
{
+ { 6220124, "AccountStoreCategory.db2" },
+ { 6197817, "AccountStoreItem.db2" },
{ 1260179, "Achievement.db2" },
{ 1324299, "Achievement_Category.db2" },
{ 4572795, "ActionBarGroup.db2" },
@@ -317,6 +319,7 @@ DB2FileInfo const DBFilesClientList[] =
{ 1278178, "GMSurveyQuestions.db2" },
{ 1283020, "GMSurveySurveys.db2" },
{ 2922072, "GameClockDebug.db2" },
+ { 5008306, "GameMode.db2" },
{ 3565753, "GameObjectAnimGroupMember.db2" },
{ 1266737, "GameObjectArtKit.db2" },
{ 1302847, "GameObjectDiffAnimMap.db2" },
@@ -562,6 +565,7 @@ DB2FileInfo const DBFilesClientList[] =
{ 1597466, "MapCelestialBody.db2" },
{ 801709, "MapChallengeMode.db2" },
{ 1367868, "MapDifficulty.db2" },
+ { 4913557, "MapDifficultyRedirect.db2" },
{ 1375435, "MapDifficultyXCondition.db2" },
{ 1719707, "MapLoadingScreen.db2" },
{ 4633656, "MapRenderScale.db2" },
@@ -574,10 +578,7 @@ DB2FileInfo const DBFilesClientList[] =
{ 1465904, "ModelAnimCloakDampening.db2" },
{ 1337833, "ModelFileData.db2" },
{ 1399953, "ModelRibbonQuality.db2" },
- { 5393273, "ModelSound.db2" },
{ 5393274, "ModelSoundAnimEntry.db2" },
- { 5393275, "ModelSoundEntry.db2" },
- { 5393276, "ModelSoundOverride.db2" },
{ 5682517, "ModelSoundSettings.db2" },
{ 5393277, "ModelSoundTagEntry.db2" },
{ 3386486, "ModifiedCraftingCategory.db2" },
@@ -932,6 +933,7 @@ DB2FileInfo const DBFilesClientList[] =
{ 1140687, "TransportRotation.db2" },
{ 975024, "Trophy.db2" },
{ 5011999, "UIArrowCallout.db2" },
+ { 6237799, "UIButton.db2" },
{ 3488582, "UIChromieTimeExpansionInfo.db2" },
{ 6155772, "UICinematicIntroInfo.db2" },
{ 3502042, "UICovenantAbility.db2" },
@@ -942,6 +944,7 @@ DB2FileInfo const DBFilesClientList[] =
{ 1729547, "UIExpansionDisplayInfo.db2" },
{ 1729546, "UIExpansionDisplayInfoIcon.db2" },
{ 4861207, "UIGenericWidgetDisplay.db2" },
+ { 6237800, "UIMapPinInfo.db2" },
{ 4530951, "UIModifiedInstance.db2" },
{ 3556601, "UIScriptedAnimationEffect.db2" },
{ 2960122, "UISplashScreen.db2" },