diff options
author | Shauren <shauren.trinity@gmail.com> | 2024-08-16 00:03:22 +0200 |
---|---|---|
committer | Shauren <shauren.trinity@gmail.com> | 2024-08-16 00:03:22 +0200 |
commit | df1ec76d54db3a91759fc93f4d6b6828d4ec0f59 (patch) | |
tree | 824cd4bc52735c0e23996d9852b9f608b0ab4cfc | |
parent | 3429871a07c1c1ebe2bd94cb771ef187cb46fd46 (diff) |
Core: Updated to 11.0.2
42 files changed, 1882 insertions, 1777 deletions
diff --git a/sql/base/auth_database.sql b/sql/base/auth_database.sql index 6c91f98c5c5..1ddee16a384 100644 --- a/sql/base/auth_database.sql +++ b/sql/base/auth_database.sql @@ -800,7 +800,9 @@ INSERT INTO `build_info` VALUES (55933,11,0,0,NULL,NULL,'C34D42CB351C400D1319D221197CF18D',NULL,NULL,NULL), (55939,11,0,0,NULL,NULL,'91529F4CE41DE4E54E132660ACDCADC5',NULL,NULL,NULL), (55960,11,0,0,NULL,NULL,'078C056CFC7B371BDE1BAF308E6C19AF',NULL,NULL,NULL), -(56008,11,0,0,NULL,NULL,'00FCD6BFFCCCBA7A8E71E307EA6EBD0C',NULL,NULL,NULL); +(56008,11,0,0,NULL,NULL,'00FCD6BFFCCCBA7A8E71E307EA6EBD0C',NULL,NULL,NULL), +(55959,11,0,2,NULL,NULL,'ED57E0538FD1CE99B171BE34823148A9',NULL,NULL,NULL), +(56110,11,0,2,NULL,NULL,'800BCA228E2FAE37ED160F3C09E21F3A',NULL,NULL,NULL); /*!40000 ALTER TABLE `build_info` ENABLE KEYS */; UNLOCK TABLES; @@ -2410,7 +2412,7 @@ CREATE TABLE `realmlist` ( `timezone` tinyint unsigned NOT NULL DEFAULT '0', `allowedSecurityLevel` tinyint unsigned NOT NULL DEFAULT '0', `population` float unsigned NOT NULL DEFAULT '0', - `gamebuild` int unsigned NOT NULL DEFAULT '56008', + `gamebuild` int unsigned NOT NULL DEFAULT '56110', `Region` tinyint unsigned NOT NULL DEFAULT '1', `Battlegroup` tinyint unsigned NOT NULL DEFAULT '1', PRIMARY KEY (`id`), @@ -2425,7 +2427,7 @@ CREATE TABLE `realmlist` ( LOCK TABLES `realmlist` WRITE; /*!40000 ALTER TABLE `realmlist` DISABLE KEYS */; INSERT INTO `realmlist` VALUES -(1,'Trinity','127.0.0.1','127.0.0.1','255.255.255.0',8085,0,0,1,0,0,56008,1,1); +(1,'Trinity','127.0.0.1','127.0.0.1','255.255.255.0',8085,0,0,1,0,0,56110,1,1); /*!40000 ALTER TABLE `realmlist` ENABLE KEYS */; UNLOCK TABLES; @@ -2864,7 +2866,8 @@ INSERT INTO `updates` VALUES ('2024_07_16_00_auth.sql','4161C07EACA71CE3D0269D2067563594D26DEC27','RELEASED','2024-07-16 19:02:24',0), ('2024_08_02_00_auth.sql','6BE2A6DA2F2BE21B18396F120427E973F1CAA58F','RELEASED','2024-08-02 00:45:10',0), ('2024_08_07_00_auth.sql','88070C3A95DE7242B3E3662D7B5B9648128DC187','RELEASED','2024-08-07 01:06:23',0), -('2024_08_09_00_auth.sql','854C24AAF0B3F673DAD8C0F3059DB266B0F34488','RELEASED','2024-08-09 15:40:42',0); +('2024_08_09_00_auth.sql','854C24AAF0B3F673DAD8C0F3059DB266B0F34488','RELEASED','2024-08-09 15:40:42',0), +('2024_08_15_00_auth.sql','06E9AD907DC2B2CC0CF78414AB516BBA3ED0CE65','RELEASED','2024-08-15 19:40:50',0); /*!40000 ALTER TABLE `updates` ENABLE KEYS */; UNLOCK TABLES; diff --git a/sql/updates/auth/master/2024_08_15_00_auth.sql b/sql/updates/auth/master/2024_08_15_00_auth.sql new file mode 100644 index 00000000000..3a50b6b5935 --- /dev/null +++ b/sql/updates/auth/master/2024_08_15_00_auth.sql @@ -0,0 +1,8 @@ +DELETE FROM `build_info` WHERE `build` IN (55959,56110); +INSERT INTO `build_info` (`build`,`majorVersion`,`minorVersion`,`bugfixVersion`,`hotfixVersion`,`winAuthSeed`,`win64AuthSeed`,`mac64AuthSeed`,`winChecksumSeed`,`macChecksumSeed`) VALUES +(55959,11,0,2,NULL,NULL,'ED57E0538FD1CE99B171BE34823148A9',NULL,NULL,NULL), +(56110,11,0,2,NULL,NULL,'800BCA228E2FAE37ED160F3C09E21F3A',NULL,NULL,NULL); + +UPDATE `realmlist` SET `gamebuild`=56110 WHERE `gamebuild`=56008; + +ALTER TABLE `realmlist` CHANGE `gamebuild` `gamebuild` int unsigned NOT NULL DEFAULT '56110'; diff --git a/sql/updates/hotfixes/master/2024_08_15_00_hotfixes.sql b/sql/updates/hotfixes/master/2024_08_15_00_hotfixes.sql new file mode 100644 index 00000000000..a07c2b5224b --- /dev/null +++ b/sql/updates/hotfixes/master/2024_08_15_00_hotfixes.sql @@ -0,0 +1,21 @@ +ALTER TABLE `creature_model_data` MODIFY `MountScaleOther1` float NOT NULL DEFAULT 0 AFTER `Unknown1100`; +ALTER TABLE `creature_model_data` MODIFY `MountScaleOther2` float NOT NULL DEFAULT 0 AFTER `MountScaleOther1`; + +ALTER TABLE `friendship_rep_reaction` MODIFY `FriendshipRepID` int NOT NULL DEFAULT 0 AFTER `Reaction`; +ALTER TABLE `friendship_rep_reaction` MODIFY `ReactionThreshold` int NOT NULL DEFAULT 0 AFTER `FriendshipRepID`; + +ALTER TABLE `garr_mission` MODIFY `GarrFollowerTypeID` tinyint NOT NULL DEFAULT 0 AFTER `GarrMissionTypeID`; + +ALTER TABLE `garr_plot` MODIFY `PlotType` tinyint NOT NULL DEFAULT 0 AFTER `Name`; + +ALTER TABLE `map_difficulty` ADD `WorldStateExpressionID` int NOT NULL DEFAULT 0 AFTER `ContentTuningID`; + +ALTER TABLE `quest_sort` ADD `Flags` int NOT NULL DEFAULT 0 AFTER `UiOrderIndex`; + +ALTER TABLE `spell_shapeshift_form` DROP `CreatureDisplayID2`; +ALTER TABLE `spell_shapeshift_form` DROP `CreatureDisplayID3`; +ALTER TABLE `spell_shapeshift_form` DROP `CreatureDisplayID4`; + +ALTER TABLE `trait_cond` ADD `TraitNodeEntryID` int NOT NULL DEFAULT 0 AFTER `TraitNodeID`; + +ALTER TABLE `ui_map` ADD `MapArtZoneTextPosition` tinyint NOT NULL DEFAULT 0 AFTER `AdventureMapTextureKitID`; diff --git a/src/server/database/Database/Implementation/HotfixDatabase.cpp b/src/server/database/Database/Implementation/HotfixDatabase.cpp index 9f004e89e84..712c1c4f08e 100644 --- a/src/server/database/Database/Implementation/HotfixDatabase.cpp +++ b/src/server/database/Database/Implementation/HotfixDatabase.cpp @@ -1153,7 +1153,7 @@ void HotfixDatabaseConnection::DoPrepareStatements() // MapDifficulty.db2 PrepareStatement(HOTFIX_SEL_MAP_DIFFICULTY, "SELECT ID, Message, DifficultyID, LockID, ResetInterval, MaxPlayers, ItemContext, " - "ItemContextPickerID, Flags, ContentTuningID, MapID FROM map_difficulty WHERE (`VerifiedBuild` > 0) = ?", CONNECTION_SYNCH); + "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); @@ -1363,7 +1363,7 @@ void HotfixDatabaseConnection::DoPrepareStatements() PREPARE_MAX_ID_STMT(HOTFIX_SEL_QUEST_PACKAGE_ITEM, "SELECT MAX(ID) + 1 FROM quest_package_item", CONNECTION_SYNCH); // QuestSort.db2 - PrepareStatement(HOTFIX_SEL_QUEST_SORT, "SELECT ID, SortName, UiOrderIndex FROM quest_sort WHERE (`VerifiedBuild` > 0) = ?", CONNECTION_SYNCH); + PrepareStatement(HOTFIX_SEL_QUEST_SORT, "SELECT ID, SortName, UiOrderIndex, Flags FROM quest_sort WHERE (`VerifiedBuild` > 0) = ?", CONNECTION_SYNCH); PREPARE_MAX_ID_STMT(HOTFIX_SEL_QUEST_SORT, "SELECT MAX(ID) + 1 FROM quest_sort", CONNECTION_SYNCH); PREPARE_LOCALE_STMT(HOTFIX_SEL_QUEST_SORT, "SELECT ID, SortName_lang FROM quest_sort_locale WHERE (`VerifiedBuild` > 0) = ? AND locale = ?", CONNECTION_SYNCH); @@ -1762,7 +1762,7 @@ void HotfixDatabaseConnection::DoPrepareStatements() // TraitCond.db2 PrepareStatement(HOTFIX_SEL_TRAIT_COND, "SELECT ID, CondType, TraitTreeID, GrantedRanks, QuestID, AchievementID, SpecSetID, TraitNodeGroupID, " - "TraitNodeID, TraitCurrencyID, SpentAmountRequired, Flags, RequiredLevel, FreeSharedStringID, SpendMoreSharedStringID, " + "TraitNodeID, TraitNodeEntryID, TraitCurrencyID, SpentAmountRequired, Flags, RequiredLevel, FreeSharedStringID, SpendMoreSharedStringID, " "TraitCondAccountElementID FROM trait_cond WHERE (`VerifiedBuild` > 0) = ?", CONNECTION_SYNCH); PREPARE_MAX_ID_STMT(HOTFIX_SEL_TRAIT_COND, "SELECT MAX(ID) + 1 FROM trait_cond", CONNECTION_SYNCH); @@ -1919,7 +1919,7 @@ void HotfixDatabaseConnection::DoPrepareStatements() // UiMap.db2 PrepareStatement(HOTFIX_SEL_UI_MAP, "SELECT Name, ID, ParentUiMapID, Flags, `System`, Type, BountySetID, BountyDisplayLocation, " "VisibilityPlayerConditionID2, VisibilityPlayerConditionID, HelpTextPosition, BkgAtlasID, AlternateUiMapGroup, ContentTuningID, " - "AdventureMapTextureKitID FROM ui_map WHERE (`VerifiedBuild` > 0) = ?", CONNECTION_SYNCH); + "AdventureMapTextureKitID, MapArtZoneTextPosition FROM ui_map WHERE (`VerifiedBuild` > 0) = ?", CONNECTION_SYNCH); PREPARE_MAX_ID_STMT(HOTFIX_SEL_UI_MAP, "SELECT MAX(ID) + 1 FROM ui_map", CONNECTION_SYNCH); PREPARE_LOCALE_STMT(HOTFIX_SEL_UI_MAP, "SELECT ID, Name_lang FROM ui_map_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 27e44e80002..6e82c49cc2d 100644 --- a/src/server/game/DataStores/DB2LoadInfo.h +++ b/src/server/game/DataStores/DB2LoadInfo.h @@ -1929,8 +1929,8 @@ struct FriendshipRepReactionLoadInfo { { false, FT_INT, "ID" }, { false, FT_STRING, "Reaction" }, - { false, FT_INT, "FriendshipRepID" }, - { false, FT_SHORT, "ReactionThreshold" }, + { true, FT_INT, "FriendshipRepID" }, + { true, FT_INT, "ReactionThreshold" }, { true, FT_INT, "OverrideColor" }, }; @@ -3746,7 +3746,7 @@ struct MapChallengeModeLoadInfo struct MapDifficultyLoadInfo { - static constexpr DB2FieldMeta Fields[11] = + static constexpr DB2FieldMeta Fields[12] = { { false, FT_INT, "ID" }, { false, FT_STRING, "Message" }, @@ -3758,10 +3758,11 @@ struct MapDifficultyLoadInfo { true, FT_INT, "ItemContextPickerID" }, { true, FT_INT, "Flags" }, { true, FT_INT, "ContentTuningID" }, + { true, FT_INT, "WorldStateExpressionID" }, { false, FT_INT, "MapID" }, }; - static constexpr DB2LoadInfo Instance{ Fields, 11, &MapDifficultyMeta::Instance, HOTFIX_SEL_MAP_DIFFICULTY }; + static constexpr DB2LoadInfo Instance{ Fields, 12, &MapDifficultyMeta::Instance, HOTFIX_SEL_MAP_DIFFICULTY }; }; struct MapDifficultyXConditionLoadInfo @@ -4484,14 +4485,15 @@ struct QuestPackageItemLoadInfo struct QuestSortLoadInfo { - static constexpr DB2FieldMeta Fields[3] = + static constexpr DB2FieldMeta Fields[4] = { { false, FT_INT, "ID" }, { false, FT_STRING, "SortName" }, { true, FT_BYTE, "UiOrderIndex" }, + { true, FT_INT, "Flags" }, }; - static constexpr DB2LoadInfo Instance{ Fields, 3, &QuestSortMeta::Instance, HOTFIX_SEL_QUEST_SORT }; + static constexpr DB2LoadInfo Instance{ Fields, 4, &QuestSortMeta::Instance, HOTFIX_SEL_QUEST_SORT }; }; struct QuestV2LoadInfo @@ -5836,7 +5838,7 @@ struct TransmogHolidayLoadInfo struct TraitCondLoadInfo { - static constexpr DB2FieldMeta Fields[16] = + static constexpr DB2FieldMeta Fields[17] = { { false, FT_INT, "ID" }, { true, FT_INT, "CondType" }, @@ -5847,6 +5849,7 @@ struct TraitCondLoadInfo { true, FT_INT, "SpecSetID" }, { true, FT_INT, "TraitNodeGroupID" }, { true, FT_INT, "TraitNodeID" }, + { true, FT_INT, "TraitNodeEntryID" }, { true, FT_INT, "TraitCurrencyID" }, { true, FT_INT, "SpentAmountRequired" }, { true, FT_INT, "Flags" }, @@ -5856,7 +5859,7 @@ struct TraitCondLoadInfo { true, FT_INT, "TraitCondAccountElementID" }, }; - static constexpr DB2LoadInfo Instance{ Fields, 16, &TraitCondMeta::Instance, HOTFIX_SEL_TRAIT_COND }; + static constexpr DB2LoadInfo Instance{ Fields, 17, &TraitCondMeta::Instance, HOTFIX_SEL_TRAIT_COND }; }; struct TraitCostLoadInfo @@ -6266,7 +6269,7 @@ struct TransportRotationLoadInfo struct UiMapLoadInfo { - static constexpr DB2FieldMeta Fields[15] = + static constexpr DB2FieldMeta Fields[16] = { { false, FT_STRING, "Name" }, { false, FT_INT, "ID" }, @@ -6283,9 +6286,10 @@ struct UiMapLoadInfo { true, FT_INT, "AlternateUiMapGroup" }, { true, FT_INT, "ContentTuningID" }, { true, FT_INT, "AdventureMapTextureKitID" }, + { true, FT_BYTE, "MapArtZoneTextPosition" }, }; - static constexpr DB2LoadInfo Instance{ Fields, 15, &UiMapMeta::Instance, HOTFIX_SEL_UI_MAP }; + static constexpr DB2LoadInfo Instance{ Fields, 16, &UiMapMeta::Instance, HOTFIX_SEL_UI_MAP }; }; struct UiMapAssignmentLoadInfo diff --git a/src/server/game/DataStores/DB2Metadata.h b/src/server/game/DataStores/DB2Metadata.h index 47557e3b402..a512851c56f 100644 --- a/src/server/game/DataStores/DB2Metadata.h +++ b/src/server/game/DataStores/DB2Metadata.h @@ -4409,12 +4409,12 @@ struct FriendshipRepReactionMeta static constexpr DB2MetaField Fields[4] = { { FT_STRING, 1, true }, - { FT_INT, 1, false }, - { FT_SHORT, 1, false }, + { FT_INT, 1, true }, + { FT_INT, 1, true }, { FT_INT, 1, true }, }; - static constexpr DB2Meta Instance{ 1237638, -1, 4, 4, 0x1689F799, Fields, 1 }; + static constexpr DB2Meta Instance{ 1237638, -1, 4, 4, 0x1BC0DC59, Fields, 1 }; }; struct FriendshipReputationMeta @@ -7253,7 +7253,7 @@ struct JournalEncounterCreatureMeta struct JournalEncounterItemMeta { - static constexpr DB2MetaField Fields[7] = + static constexpr DB2MetaField Fields[8] = { { FT_INT, 1, false }, { FT_SHORT, 1, false }, @@ -7262,9 +7262,10 @@ struct JournalEncounterItemMeta { FT_INT, 1, true }, { FT_BYTE, 1, true }, { FT_INT, 1, true }, + { FT_INT, 1, true }, }; - static constexpr DB2Meta Instance{ 1344467, 0, 7, 7, 0xBEA0FECD, Fields, 1 }; + static constexpr DB2Meta Instance{ 1344467, 0, 8, 8, 0xD95559FA, Fields, 1 }; }; struct JournalEncounterSectionMeta @@ -8132,7 +8133,7 @@ struct MapChallengeModeMeta struct MapDifficultyMeta { - static constexpr DB2MetaField Fields[10] = + static constexpr DB2MetaField Fields[11] = { { FT_STRING, 1, true }, { FT_INT, 1, true }, @@ -8144,9 +8145,10 @@ struct MapDifficultyMeta { FT_INT, 1, true }, { FT_INT, 1, true }, { FT_INT, 1, true }, + { FT_INT, 1, true }, }; - static constexpr DB2Meta Instance{ 1367868, -1, 10, 9, 0x6F2F81AA, Fields, 9 }; + static constexpr DB2Meta Instance{ 1367868, -1, 11, 10, 0xC18134AF, Fields, 10 }; }; struct MapDifficultyXConditionMeta @@ -10237,13 +10239,14 @@ struct QuestPackageItemMeta struct QuestSortMeta { - static constexpr DB2MetaField Fields[2] = + static constexpr DB2MetaField Fields[3] = { { FT_STRING, 1, true }, { FT_BYTE, 1, true }, + { FT_INT, 1, true }, }; - static constexpr DB2Meta Instance{ 1134585, -1, 2, 2, 0xADCB489B, Fields, -1 }; + static constexpr DB2Meta Instance{ 1134585, -1, 3, 3, 0x9B92BE63, Fields, -1 }; }; struct QuestV2Meta @@ -13012,7 +13015,7 @@ struct TradeSkillItemMeta struct TraitCondMeta { - static constexpr DB2MetaField Fields[16] = + static constexpr DB2MetaField Fields[17] = { { FT_INT, 1, false }, { FT_INT, 1, true }, @@ -13030,9 +13033,10 @@ struct TraitCondMeta { FT_INT, 1, true }, { FT_INT, 1, true }, { FT_INT, 1, true }, + { FT_INT, 1, true }, }; - static constexpr DB2Meta Instance{ 4543085, 0, 16, 16, 0xB1A665F6, Fields, 2 }; + static constexpr DB2Meta Instance{ 4543085, 0, 17, 17, 0xBFDD1994, Fields, 2 }; }; struct TraitCondAccountElementMeta @@ -13922,7 +13926,7 @@ struct UiItemInteractionMeta struct UiMapMeta { - static constexpr DB2MetaField Fields[15] = + static constexpr DB2MetaField Fields[16] = { { FT_STRING, 1, true }, { FT_INT, 1, false }, @@ -13939,9 +13943,10 @@ struct UiMapMeta { FT_INT, 1, true }, { FT_INT, 1, true }, { FT_INT, 1, true }, + { FT_BYTE, 1, true }, }; - static constexpr DB2Meta Instance{ 1957206, 1, 15, 15, 0xEB52AA19, Fields, 2 }; + static constexpr DB2Meta Instance{ 1957206, 1, 16, 16, 0x77AEDBE6, Fields, 2 }; }; struct UiMapArtMeta @@ -14032,6 +14037,16 @@ struct UiMapFogOfWarVisualizationMeta static constexpr DB2Meta Instance{ 2006973, -1, 3, 3, 0xD0E714A2, Fields, -1 }; }; +struct UiMapGroupMeta +{ + static constexpr DB2MetaField Fields[1] = + { + { FT_INT, 1, true }, + }; + + static constexpr DB2Meta Instance{ 6033745, -1, 1, 1, 0x6D5EB3BD, Fields, -1 }; +}; + struct UiMapGroupMemberMeta { static constexpr DB2MetaField Fields[5] = @@ -14227,7 +14242,7 @@ struct UiTextureAtlasElementSliceDataMeta struct UiTextureAtlasMemberMeta { - static constexpr DB2MetaField Fields[12] = + static constexpr DB2MetaField Fields[14] = { { FT_STRING_NOT_LOCALIZED, 1, true }, { FT_INT, 1, false }, @@ -14236,6 +14251,8 @@ struct UiTextureAtlasMemberMeta { FT_SHORT, 1, true }, { FT_SHORT, 1, true }, { FT_SHORT, 1, true }, + { FT_SHORT, 1, true }, + { FT_SHORT, 1, true }, { FT_SHORT, 1, false }, { FT_SHORT, 1, true }, { FT_SHORT, 1, true }, @@ -14243,7 +14260,7 @@ struct UiTextureAtlasMemberMeta { FT_BYTE, 1, false }, }; - static constexpr DB2Meta Instance{ 897532, 1, 12, 12, 0xED517842, Fields, 7 }; + static constexpr DB2Meta Instance{ 897532, 1, 14, 14, 0x75E12F73, Fields, 9 }; }; struct UiTextureKitMeta diff --git a/src/server/game/DataStores/DB2Stores.cpp b/src/server/game/DataStores/DB2Stores.cpp index f2c47a79b41..f3552765c43 100644 --- a/src/server/game/DataStores/DB2Stores.cpp +++ b/src/server/game/DataStores/DB2Stores.cpp @@ -1930,9 +1930,7 @@ std::vector<DB2Manager::HotfixOptionalData> const* DB2Manager::GetHotfixOptional uint32 DB2Manager::GetEmptyAnimStateID() const { - return 1778; - // TEMP: well... AnimationData.db2 in 11.0.0 has more rows than max hardcoded anim id in client - // return sAnimationDataStore.GetNumRows(); + return sAnimationDataStore.GetNumRows(); } void DB2Manager::InsertNewHotfix(uint32 tableHash, uint32 recordId) diff --git a/src/server/game/DataStores/DB2Structure.h b/src/server/game/DataStores/DB2Structure.h index 766f9f19dc8..6b83ba2cb17 100644 --- a/src/server/game/DataStores/DB2Structure.h +++ b/src/server/game/DataStores/DB2Structure.h @@ -1683,8 +1683,8 @@ struct FriendshipRepReactionEntry { uint32 ID; LocalizedString Reaction; - uint32 FriendshipRepID; - uint16 ReactionThreshold; + int32 FriendshipRepID; + int32 ReactionThreshold; int32 OverrideColor; }; @@ -2841,6 +2841,7 @@ struct MapDifficultyEntry int32 ItemContextPickerID; int32 Flags; int32 ContentTuningID; + int32 WorldStateExpressionID; uint32 MapID; bool HasResetSchedule() const { return ResetInterval != MAP_DIFFICULTY_RESET_ANYTIME; } @@ -3306,6 +3307,7 @@ struct QuestSortEntry uint32 ID; LocalizedString SortName; int8 UiOrderIndex; + int32 Flags; }; struct QuestV2Entry @@ -4185,6 +4187,7 @@ struct TraitCondEntry int32 SpecSetID; int32 TraitNodeGroupID; int32 TraitNodeID; + int32 TraitNodeEntryID; int32 TraitCurrencyID; int32 SpentAmountRequired; int32 Flags; @@ -4480,6 +4483,7 @@ struct UiMapEntry int32 AlternateUiMapGroup; int32 ContentTuningID; int32 AdventureMapTextureKitID; + int8 MapArtZoneTextPosition; EnumFlag<UiMapFlag> GetFlags() const { return static_cast<UiMapFlag>(Flags); } }; diff --git a/src/server/game/Entities/Creature/GossipDef.cpp b/src/server/game/Entities/Creature/GossipDef.cpp index 818bff310e0..9393fd3a0d1 100644 --- a/src/server/game/Entities/Creature/GossipDef.cpp +++ b/src/server/game/Entities/Creature/GossipDef.cpp @@ -591,6 +591,7 @@ void PlayerMenu::SendQuestGiverOfferReward(Quest const* quest, ObjectGuid npcGUI offer.QuestID = quest->GetQuestId(); offer.AutoLaunched = autoLaunched; + offer.ResetByScheduler = quest->IsResetByScheduler(); offer.SuggestedPartyMembers = quest->GetSuggestedPlayers(); offer.QuestInfoID = quest->GetQuestInfoID(); @@ -693,6 +694,7 @@ void PlayerMenu::SendQuestGiverRequestItems(Quest const* quest, ObjectGuid npcGU } packet.AutoLaunched = autoLaunched; + packet.ResetByScheduler = quest->IsResetByScheduler(); _session->SendPacket(packet.Write()); TC_LOG_DEBUG("network", "WORLD: Sent SMSG_QUESTGIVER_REQUEST_ITEMS NPC={}, questid={}", npcGUID.ToString(), quest->GetQuestId()); diff --git a/src/server/game/Entities/Item/ItemDefines.h b/src/server/game/Entities/Item/ItemDefines.h index 85a7a558e2a..1d93f470c4a 100644 --- a/src/server/game/Entities/Item/ItemDefines.h +++ b/src/server/game/Entities/Item/ItemDefines.h @@ -107,7 +107,7 @@ enum InventoryResult : uint8 EQUIP_ERR_CANT_EQUIP_RATING = 81, // You don't have the personal, team, or battleground rating required to buy that item EQUIP_ERR_EVENT_AUTOEQUIP_BIND_CONFIRM = 82, EQUIP_ERR_NOT_SAME_ACCOUNT = 83, // Account-bound items can only be given to your own characters. - EQUIP_NONE_3 = 84, + EQUIP_ERR_NONE = 84, EQUIP_ERR_ITEM_MAX_LIMIT_CATEGORY_COUNT_EXCEEDED_IS = 85, // You can only carry %d %s EQUIP_ERR_ITEM_MAX_LIMIT_CATEGORY_SOCKETED_EXCEEDED_IS = 86, // You can only equip %d |4item:items in the %s category EQUIP_ERR_SCALING_STAT_ITEM_LEVEL_EXCEEDED = 87, // Your level is too high to use that item @@ -143,6 +143,16 @@ enum InventoryResult : uint8 EQUIP_ERR_REAGENTBAG_ITEM_TYPE = 117,// Only Reagents can be placed in Reagent Bags. EQUIP_ERR_CANT_BULK_SELL_ITEM_WITH_REFUND = 118,// Items that can be refunded can't be bulk sold. EQUIP_ERR_NO_SOULBOUND_ITEM_IN_ACCOUNT_BANK = 119,// Soulbound items cannot be stored in the Warband Bank. + EQUIP_ERR_CANT_DO_THAT_RIGHT_NOW_3 = 120,// You can't do that right now. + EQUIP_ERR_NO_ACCOUNT_INVENTORY_LOCK = 121,// Your character cannot complete this action. + EQUIP_ERR_TOO_MANY_ACCOUNT_BANK_TABS = 122,// You have already purchased the maximum amount of tabs. + EQUIP_ERR_NO_ACCOUNT_BANK_HERE = 123,// You are too far away from a Warband Bank. + EQUIP_ERR_NO_REFUNDABLE_ITEM_IN_ACCOUNT_BANK = 124,// Refundable items cannot be stored in the Warband Bank. + EQUIP_ERR_NO_IMMEDIATE_CONTAINER_IN_ACCOUNT_BANK = 125,// You cannot place that in the Warband Bank. + EQUIP_ERR_NO_OPEN_IMMEDIATE_CONTAINER_IN_ACCOUNT_BANK = 126,// You cannot open this while it is in the Warband Bank. + 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. }; // EnumUtils: DESCRIBE THIS diff --git a/src/server/game/Entities/Item/enuminfo_ItemDefines.cpp b/src/server/game/Entities/Item/enuminfo_ItemDefines.cpp index c5f91ead4b3..f18d83fa079 100644 --- a/src/server/game/Entities/Item/enuminfo_ItemDefines.cpp +++ b/src/server/game/Entities/Item/enuminfo_ItemDefines.cpp @@ -115,7 +115,7 @@ TC_API_EXPORT EnumText EnumUtils<InventoryResult>::ToString(InventoryResult valu case EQUIP_ERR_CANT_EQUIP_RATING: return { "EQUIP_ERR_CANT_EQUIP_RATING", "EQUIP_ERR_CANT_EQUIP_RATING", "You don't have the personal, team, or battleground rating required to buy that item" }; case EQUIP_ERR_EVENT_AUTOEQUIP_BIND_CONFIRM: return { "EQUIP_ERR_EVENT_AUTOEQUIP_BIND_CONFIRM", "EQUIP_ERR_EVENT_AUTOEQUIP_BIND_CONFIRM", "" }; case EQUIP_ERR_NOT_SAME_ACCOUNT: return { "EQUIP_ERR_NOT_SAME_ACCOUNT", "EQUIP_ERR_NOT_SAME_ACCOUNT", "Account-bound items can only be given to your own characters." }; - case EQUIP_NONE_3: return { "EQUIP_NONE_3", "EQUIP_NONE_3", "" }; + case EQUIP_ERR_NONE: return { "EQUIP_ERR_NONE", "EQUIP_ERR_NONE", "" }; case EQUIP_ERR_ITEM_MAX_LIMIT_CATEGORY_COUNT_EXCEEDED_IS: return { "EQUIP_ERR_ITEM_MAX_LIMIT_CATEGORY_COUNT_EXCEEDED_IS", "EQUIP_ERR_ITEM_MAX_LIMIT_CATEGORY_COUNT_EXCEEDED_IS", "You can only carry %d %s" }; case EQUIP_ERR_ITEM_MAX_LIMIT_CATEGORY_SOCKETED_EXCEEDED_IS: return { "EQUIP_ERR_ITEM_MAX_LIMIT_CATEGORY_SOCKETED_EXCEEDED_IS", "EQUIP_ERR_ITEM_MAX_LIMIT_CATEGORY_SOCKETED_EXCEEDED_IS", "You can only equip %d |4item:items in the %s category" }; case EQUIP_ERR_SCALING_STAT_ITEM_LEVEL_EXCEEDED: return { "EQUIP_ERR_SCALING_STAT_ITEM_LEVEL_EXCEEDED", "EQUIP_ERR_SCALING_STAT_ITEM_LEVEL_EXCEEDED", "Your level is too high to use that item" }; @@ -150,12 +150,23 @@ TC_API_EXPORT EnumText EnumUtils<InventoryResult>::ToString(InventoryResult valu case EQUIP_ERR_SLOT_ONLY_REAGENTBAG: return { "EQUIP_ERR_SLOT_ONLY_REAGENTBAG", "EQUIP_ERR_SLOT_ONLY_REAGENTBAG", "Only Reagent Bags can be placed in the reagent bag slot." }; case EQUIP_ERR_REAGENTBAG_ITEM_TYPE: return { "EQUIP_ERR_REAGENTBAG_ITEM_TYPE", "EQUIP_ERR_REAGENTBAG_ITEM_TYPE", "Only Reagents can be placed in Reagent Bags." }; case EQUIP_ERR_CANT_BULK_SELL_ITEM_WITH_REFUND: return { "EQUIP_ERR_CANT_BULK_SELL_ITEM_WITH_REFUND", "EQUIP_ERR_CANT_BULK_SELL_ITEM_WITH_REFUND", "Items that can be refunded can't be bulk sold." }; + case EQUIP_ERR_NO_SOULBOUND_ITEM_IN_ACCOUNT_BANK: return { "EQUIP_ERR_NO_SOULBOUND_ITEM_IN_ACCOUNT_BANK", "EQUIP_ERR_NO_SOULBOUND_ITEM_IN_ACCOUNT_BANK", "Soulbound items cannot be stored in the Warband Bank." }; + case EQUIP_ERR_CANT_DO_THAT_RIGHT_NOW_3: return { "EQUIP_ERR_CANT_DO_THAT_RIGHT_NOW_3", "EQUIP_ERR_CANT_DO_THAT_RIGHT_NOW_3", "You can't do that right now." }; + case EQUIP_ERR_NO_ACCOUNT_INVENTORY_LOCK: return { "EQUIP_ERR_NO_ACCOUNT_INVENTORY_LOCK", "EQUIP_ERR_NO_ACCOUNT_INVENTORY_LOCK", "Your character cannot complete this action." }; + case EQUIP_ERR_TOO_MANY_ACCOUNT_BANK_TABS: return { "EQUIP_ERR_TOO_MANY_ACCOUNT_BANK_TABS", "EQUIP_ERR_TOO_MANY_ACCOUNT_BANK_TABS", "You have already purchased the maximum amount of tabs." }; + case EQUIP_ERR_NO_ACCOUNT_BANK_HERE: return { "EQUIP_ERR_NO_ACCOUNT_BANK_HERE", "EQUIP_ERR_NO_ACCOUNT_BANK_HERE", "You are too far away from a Warband Bank." }; + case EQUIP_ERR_NO_REFUNDABLE_ITEM_IN_ACCOUNT_BANK: return { "EQUIP_ERR_NO_REFUNDABLE_ITEM_IN_ACCOUNT_BANK", "EQUIP_ERR_NO_REFUNDABLE_ITEM_IN_ACCOUNT_BANK", "Refundable items cannot be stored in the Warband Bank." }; + case EQUIP_ERR_NO_IMMEDIATE_CONTAINER_IN_ACCOUNT_BANK: return { "EQUIP_ERR_NO_IMMEDIATE_CONTAINER_IN_ACCOUNT_BANK", "EQUIP_ERR_NO_IMMEDIATE_CONTAINER_IN_ACCOUNT_BANK", "You cannot place that in the Warband Bank." }; + case EQUIP_ERR_NO_OPEN_IMMEDIATE_CONTAINER_IN_ACCOUNT_BANK: return { "EQUIP_ERR_NO_OPEN_IMMEDIATE_CONTAINER_IN_ACCOUNT_BANK", "EQUIP_ERR_NO_OPEN_IMMEDIATE_CONTAINER_IN_ACCOUNT_BANK", "You cannot open this while it is in the Warband Bank." }; + case EQUIP_ERR_CANT_DELETE_IN_ACCOUNT_BANK: return { "EQUIP_ERR_CANT_DELETE_IN_ACCOUNT_BANK", "EQUIP_ERR_CANT_DELETE_IN_ACCOUNT_BANK", "Items must be moved out of the Warband Bank to be deleted." }; + case EQUIP_ERR_BANK_NOT_ACCESSIBLE: return { "EQUIP_ERR_BANK_NOT_ACCESSIBLE", "EQUIP_ERR_BANK_NOT_ACCESSIBLE", "This character does not have access to this bank." }; + case EQUIP_ERR_CANT_TRADE_ACCOUNT_ITEM: return { "EQUIP_ERR_CANT_TRADE_ACCOUNT_ITEM", "EQUIP_ERR_CANT_TRADE_ACCOUNT_ITEM", "You can't trade an item from the Warband bank." }; default: throw std::out_of_range("value"); } } template <> -TC_API_EXPORT size_t EnumUtils<InventoryResult>::Count() { return 119; } +TC_API_EXPORT size_t EnumUtils<InventoryResult>::Count() { return 130; } template <> TC_API_EXPORT InventoryResult EnumUtils<InventoryResult>::FromIndex(size_t index) @@ -246,7 +257,7 @@ TC_API_EXPORT InventoryResult EnumUtils<InventoryResult>::FromIndex(size_t index case 81: return EQUIP_ERR_CANT_EQUIP_RATING; case 82: return EQUIP_ERR_EVENT_AUTOEQUIP_BIND_CONFIRM; case 83: return EQUIP_ERR_NOT_SAME_ACCOUNT; - case 84: return EQUIP_NONE_3; + case 84: return EQUIP_ERR_NONE; case 85: return EQUIP_ERR_ITEM_MAX_LIMIT_CATEGORY_COUNT_EXCEEDED_IS; case 86: return EQUIP_ERR_ITEM_MAX_LIMIT_CATEGORY_SOCKETED_EXCEEDED_IS; case 87: return EQUIP_ERR_SCALING_STAT_ITEM_LEVEL_EXCEEDED; @@ -281,6 +292,17 @@ TC_API_EXPORT InventoryResult EnumUtils<InventoryResult>::FromIndex(size_t index case 116: return EQUIP_ERR_SLOT_ONLY_REAGENTBAG; case 117: return EQUIP_ERR_REAGENTBAG_ITEM_TYPE; case 118: return EQUIP_ERR_CANT_BULK_SELL_ITEM_WITH_REFUND; + case 119: return EQUIP_ERR_NO_SOULBOUND_ITEM_IN_ACCOUNT_BANK; + case 120: return EQUIP_ERR_CANT_DO_THAT_RIGHT_NOW_3; + case 121: return EQUIP_ERR_NO_ACCOUNT_INVENTORY_LOCK; + case 122: return EQUIP_ERR_TOO_MANY_ACCOUNT_BANK_TABS; + case 123: return EQUIP_ERR_NO_ACCOUNT_BANK_HERE; + case 124: return EQUIP_ERR_NO_REFUNDABLE_ITEM_IN_ACCOUNT_BANK; + case 125: return EQUIP_ERR_NO_IMMEDIATE_CONTAINER_IN_ACCOUNT_BANK; + case 126: return EQUIP_ERR_NO_OPEN_IMMEDIATE_CONTAINER_IN_ACCOUNT_BANK; + case 127: return EQUIP_ERR_CANT_DELETE_IN_ACCOUNT_BANK; + case 128: return EQUIP_ERR_BANK_NOT_ACCESSIBLE; + case 129: return EQUIP_ERR_CANT_TRADE_ACCOUNT_ITEM; default: throw std::out_of_range("index"); } } @@ -374,7 +396,7 @@ TC_API_EXPORT size_t EnumUtils<InventoryResult>::ToIndex(InventoryResult value) case EQUIP_ERR_CANT_EQUIP_RATING: return 81; case EQUIP_ERR_EVENT_AUTOEQUIP_BIND_CONFIRM: return 82; case EQUIP_ERR_NOT_SAME_ACCOUNT: return 83; - case EQUIP_NONE_3: return 84; + case EQUIP_ERR_NONE: return 84; case EQUIP_ERR_ITEM_MAX_LIMIT_CATEGORY_COUNT_EXCEEDED_IS: return 85; case EQUIP_ERR_ITEM_MAX_LIMIT_CATEGORY_SOCKETED_EXCEEDED_IS: return 86; case EQUIP_ERR_SCALING_STAT_ITEM_LEVEL_EXCEEDED: return 87; @@ -409,6 +431,17 @@ TC_API_EXPORT size_t EnumUtils<InventoryResult>::ToIndex(InventoryResult value) case EQUIP_ERR_SLOT_ONLY_REAGENTBAG: return 116; case EQUIP_ERR_REAGENTBAG_ITEM_TYPE: return 117; case EQUIP_ERR_CANT_BULK_SELL_ITEM_WITH_REFUND: return 118; + case EQUIP_ERR_NO_SOULBOUND_ITEM_IN_ACCOUNT_BANK: return 119; + case EQUIP_ERR_CANT_DO_THAT_RIGHT_NOW_3: return 120; + case EQUIP_ERR_NO_ACCOUNT_INVENTORY_LOCK: return 121; + case EQUIP_ERR_TOO_MANY_ACCOUNT_BANK_TABS: return 122; + case EQUIP_ERR_NO_ACCOUNT_BANK_HERE: return 123; + case EQUIP_ERR_NO_REFUNDABLE_ITEM_IN_ACCOUNT_BANK: return 124; + case EQUIP_ERR_NO_IMMEDIATE_CONTAINER_IN_ACCOUNT_BANK: return 125; + case EQUIP_ERR_NO_OPEN_IMMEDIATE_CONTAINER_IN_ACCOUNT_BANK: return 126; + case EQUIP_ERR_CANT_DELETE_IN_ACCOUNT_BANK: return 127; + case EQUIP_ERR_BANK_NOT_ACCESSIBLE: return 128; + case EQUIP_ERR_CANT_TRADE_ACCOUNT_ITEM: return 129; default: throw std::out_of_range("value"); } } diff --git a/src/server/game/Entities/Object/Updates/UpdateFields.cpp b/src/server/game/Entities/Object/Updates/UpdateFields.cpp index 8b54351c6c3..074ae923b02 100644 --- a/src/server/game/Entities/Object/Updates/UpdateFields.cpp +++ b/src/server/game/Entities/Object/Updates/UpdateFields.cpp @@ -2124,6 +2124,41 @@ void ArenaCooldown::ClearChangesMask() _changesMask.ResetAll(); } +void ZonePlayerForcedReaction::WriteCreate(ByteBuffer& data, Player const* owner, Player const* receiver) const +{ + data << int32(FactionID); + data << int32(Reaction); +} + +void ZonePlayerForcedReaction::WriteUpdate(ByteBuffer& data, bool ignoreChangesMask, Player const* owner, Player const* receiver) const +{ + Mask changesMask = _changesMask; + if (ignoreChangesMask) + changesMask.SetAll(); + + data.WriteBits(changesMask.GetBlock(0), 3); + + data.FlushBits(); + if (changesMask[0]) + { + if (changesMask[1]) + { + data << int32(FactionID); + } + if (changesMask[2]) + { + data << int32(Reaction); + } + } +} + +void ZonePlayerForcedReaction::ClearChangesMask() +{ + Base::ClearChangesMask(FactionID); + Base::ClearChangesMask(Reaction); + _changesMask.ResetAll(); +} + void PetCreatureName::WriteCreate(ByteBuffer& data, Player const* owner, Player const* receiver) const { data << uint32(CreatureID); @@ -2341,6 +2376,10 @@ void PlayerData::WriteCreate(ByteBuffer& data, EnumFlag<UpdateFieldFlag> fieldVi data << int32(HonorLevel); data << int64(LogoutTime); data << uint32(ArenaCooldowns.size()); + for (uint32 i = 0; i < 32; ++i) + { + ForcedReactions[i].WriteCreate(data, owner, receiver); + } data << int32(Field_1AC); data << int32(Field_1B0); data << int32(CurrentBattlePetSpeciesID); @@ -2406,7 +2445,7 @@ void PlayerData::WriteCreate(ByteBuffer& data, EnumFlag<UpdateFieldFlag> fieldVi void PlayerData::WriteUpdate(ByteBuffer& data, EnumFlag<UpdateFieldFlag> fieldVisibilityFlags, Player const* owner, Player const* receiver) const { - Mask allowedMaskForTarget({ 0xFFFFFFDDu, 0x0001FFFFu, 0x00000000u, 0x00000000u, 0x00000000u, 0x00000000u, 0x00000000u, 0xFFFFFFFEu, 0xFFFFFFFFu, 0x00000001u }); + Mask allowedMaskForTarget({ 0xFFFFFFDDu, 0x0001FFFFu, 0x00000000u, 0x00000000u, 0x00000000u, 0x00000000u, 0x00000000u, 0xFFFFFFFEu, 0xFFFFFFFFu, 0xFFFFFFFFu, 0x00000003u }); AppendAllowedFieldsMaskForFlag(allowedMaskForTarget, fieldVisibilityFlags); WriteUpdate(data, _changesMask & allowedMaskForTarget, false, owner, receiver); } @@ -2414,20 +2453,20 @@ void PlayerData::WriteUpdate(ByteBuffer& data, EnumFlag<UpdateFieldFlag> fieldVi void PlayerData::AppendAllowedFieldsMaskForFlag(Mask& allowedMaskForTarget, EnumFlag<UpdateFieldFlag> fieldVisibilityFlags) { if (fieldVisibilityFlags.HasFlag(UpdateFieldFlag::PartyMember)) - allowedMaskForTarget |= std::array<uint32, 10>{ 0x00000022u, 0xFFFE0000u, 0xFFFFFFFFu, 0xFFFFFFFFu, 0xFFFFFFFFu, 0xFFFFFFFFu, 0xFFFFFFFFu, 0x00000001u, 0x00000000u, 0x00000000u }; + allowedMaskForTarget |= std::array<uint32, 11>{ 0x00000022u, 0xFFFE0000u, 0xFFFFFFFFu, 0xFFFFFFFFu, 0xFFFFFFFFu, 0xFFFFFFFFu, 0xFFFFFFFFu, 0x00000001u, 0x00000000u, 0x00000000u, 0x00000000u }; } void PlayerData::FilterDisallowedFieldsMaskForFlag(Mask& changesMask, EnumFlag<UpdateFieldFlag> fieldVisibilityFlags) { - Mask allowedMaskForTarget({ 0xFFFFFFDDu, 0x0001FFFFu, 0x00000000u, 0x00000000u, 0x00000000u, 0x00000000u, 0x00000000u, 0xFFFFFFFEu, 0xFFFFFFFFu, 0x00000001u }); + Mask allowedMaskForTarget({ 0xFFFFFFDDu, 0x0001FFFFu, 0x00000000u, 0x00000000u, 0x00000000u, 0x00000000u, 0x00000000u, 0xFFFFFFFEu, 0xFFFFFFFFu, 0xFFFFFFFFu, 0x00000003u }); AppendAllowedFieldsMaskForFlag(allowedMaskForTarget, fieldVisibilityFlags); changesMask &= allowedMaskForTarget; } void PlayerData::WriteUpdate(ByteBuffer& data, Mask const& changesMask, bool ignoreNestedChangesMask, Player const* owner, Player const* receiver) const { - data.WriteBits(changesMask.GetBlocksMask(0), 10); - for (uint32 i = 0; i < 10; ++i) + data.WriteBits(changesMask.GetBlocksMask(0), 11); + for (uint32 i = 0; i < 11; ++i) if (changesMask.GetBlock(i)) data.WriteBits(changesMask.GetBlock(i), 32); @@ -2751,21 +2790,31 @@ void PlayerData::WriteUpdate(ByteBuffer& data, Mask const& changesMask, bool ign } } } - if (changesMask[269]) + if (changesMask[252]) + { + for (uint32 i = 0; i < 32; ++i) + { + if (changesMask[253 + i]) + { + ForcedReactions[i].WriteUpdate(data, ignoreNestedChangesMask, owner, receiver); + } + } + } + if (changesMask[302]) { for (uint32 i = 0; i < 19; ++i) { - if (changesMask[270 + i]) + if (changesMask[303 + i]) { data << uint32(Field_3120[i]); } } } - if (changesMask[252]) + if (changesMask[285]) { for (uint32 i = 0; i < 16; ++i) { - if (changesMask[253 + i]) + if (changesMask[286 + i]) { data << VisibleEquipableSpells[i]; } @@ -2824,6 +2873,7 @@ void PlayerData::ClearChangesMask() Base::ClearChangesMask(QuestLog); Base::ClearChangesMask(VisibleItems); Base::ClearChangesMask(AvgItemLevel); + Base::ClearChangesMask(ForcedReactions); Base::ClearChangesMask(VisibleEquipableSpells); Base::ClearChangesMask(Field_3120); _changesMask.ResetAll(); @@ -4204,10 +4254,10 @@ void PersonalCraftingOrderCount::ClearChangesMask() void NPCCraftingOrderInfo::WriteCreate(ByteBuffer& data, Player const* owner, Player const* receiver) const { - data << uint64(Field_0); - data << int32(Field_8); - data << int32(Field_C); - data << int32(Field_10); + data << uint64(OrderID); + data << int32(NpcCraftingOrderSetID); + data << int32(NpcTreasureID); + data << int32(NpcCraftingOrderCustomerID); } void NPCCraftingOrderInfo::WriteUpdate(ByteBuffer& data, bool ignoreChangesMask, Player const* owner, Player const* receiver) const @@ -4221,28 +4271,28 @@ void NPCCraftingOrderInfo::WriteUpdate(ByteBuffer& data, bool ignoreChangesMask, data.FlushBits(); if (changesMask[0]) { - data << uint64(Field_0); + data << uint64(OrderID); } if (changesMask[1]) { - data << int32(Field_8); + data << int32(NpcCraftingOrderSetID); } if (changesMask[2]) { - data << int32(Field_C); + data << int32(NpcTreasureID); } if (changesMask[3]) { - data << int32(Field_10); + data << int32(NpcCraftingOrderCustomerID); } } void NPCCraftingOrderInfo::ClearChangesMask() { - Base::ClearChangesMask(Field_0); - Base::ClearChangesMask(Field_8); - Base::ClearChangesMask(Field_C); - Base::ClearChangesMask(Field_10); + Base::ClearChangesMask(OrderID); + Base::ClearChangesMask(NpcCraftingOrderSetID); + Base::ClearChangesMask(NpcTreasureID); + Base::ClearChangesMask(NpcCraftingOrderCustomerID); _changesMask.ResetAll(); } diff --git a/src/server/game/Entities/Object/Updates/UpdateFields.h b/src/server/game/Entities/Object/Updates/UpdateFields.h index 43b1c60d9a9..cf5a167706b 100644 --- a/src/server/game/Entities/Object/Updates/UpdateFields.h +++ b/src/server/game/Entities/Object/Updates/UpdateFields.h @@ -458,6 +458,16 @@ struct ArenaCooldown : public IsUpdateFieldStructureTag, public HasChangesMask<8 void ClearChangesMask(); }; +struct ZonePlayerForcedReaction : public IsUpdateFieldStructureTag, public HasChangesMask<3> +{ + UpdateField<int32, 0, 1> FactionID; + UpdateField<int32, 0, 2> Reaction; + + void WriteCreate(ByteBuffer& data, Player const* owner, Player const* receiver) const; + void WriteUpdate(ByteBuffer& data, bool ignoreChangesMask, Player const* owner, Player const* receiver) const; + void ClearChangesMask(); +}; + struct PetCreatureName : public IsUpdateFieldStructureTag, public HasChangesMask<3> { UpdateField<uint32, 0, 1> CreatureID; @@ -502,7 +512,7 @@ struct CustomTabardInfo : public IsUpdateFieldStructureTag, public HasChangesMas void ClearChangesMask(); }; -struct PlayerData : public IsUpdateFieldStructureTag, public HasChangesMask<289> +struct PlayerData : public IsUpdateFieldStructureTag, public HasChangesMask<322> { UpdateField<bool, 0, 1> HasQuestSession; UpdateField<bool, 0, 2> HasLevelLink; @@ -552,8 +562,9 @@ struct PlayerData : public IsUpdateFieldStructureTag, public HasChangesMask<289> UpdateFieldArray<UF::QuestLog, 175, 49, 50> QuestLog; UpdateFieldArray<UF::VisibleItem, 19, 225, 226> VisibleItems; UpdateFieldArray<float, 6, 245, 246> AvgItemLevel; - UpdateFieldArray<WorldPackets::Item::ItemInstance, 16, 252, 253> VisibleEquipableSpells; - UpdateFieldArray<uint32, 19, 269, 270> Field_3120; + UpdateFieldArray<UF::ZonePlayerForcedReaction, 32, 252, 253> ForcedReactions; + UpdateFieldArray<WorldPackets::Item::ItemInstance, 16, 285, 286> VisibleEquipableSpells; + UpdateFieldArray<uint32, 19, 302, 303> Field_3120; void WriteCreate(ByteBuffer& data, EnumFlag<UpdateFieldFlag> fieldVisibilityFlags, Player const* owner, Player const* receiver) const; void WriteUpdate(ByteBuffer& data, EnumFlag<UpdateFieldFlag> fieldVisibilityFlags, Player const* owner, Player const* receiver) const; @@ -887,10 +898,10 @@ struct PersonalCraftingOrderCount : public IsUpdateFieldStructureTag, public Has struct NPCCraftingOrderInfo : public IsUpdateFieldStructureTag, public HasChangesMask<4> { - UpdateField<uint64, -1, 0> Field_0; - UpdateField<int32, -1, 1> Field_8; - UpdateField<int32, -1, 2> Field_C; - UpdateField<int32, -1, 3> Field_10; + UpdateField<uint64, -1, 0> OrderID; + UpdateField<int32, -1, 1> NpcCraftingOrderSetID; + UpdateField<int32, -1, 2> NpcTreasureID; + UpdateField<int32, -1, 3> NpcCraftingOrderCustomerID; 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/Object/Updates/UpdateMask.h b/src/server/game/Entities/Object/Updates/UpdateMask.h index b8262387907..a79b5c038ab 100644 --- a/src/server/game/Entities/Object/Updates/UpdateMask.h +++ b/src/server/game/Entities/Object/Updates/UpdateMask.h @@ -63,7 +63,7 @@ public: constexpr bool operator[](uint32 index) const { - return (_blocks[index / 32] & (1 << (index % 32))) != 0; + return (_blocks[UpdateMaskHelpers::GetBlockIndex(index)] & UpdateMaskHelpers::GetBlockFlag(index)) != 0; } constexpr bool IsAnySet() const diff --git a/src/server/game/Entities/Player/Player.cpp b/src/server/game/Entities/Player/Player.cpp index 8bdef90b5cf..38e4b62507b 100644 --- a/src/server/game/Entities/Player/Player.cpp +++ b/src/server/game/Entities/Player/Player.cpp @@ -6604,6 +6604,35 @@ int32 Player::CalculateReputationGain(ReputationSource source, uint32 creatureOr return CalculatePct(rep, percent); } +void Player::SetVisibleForcedReaction(uint32 factionId, ReputationRank rank) +{ + auto itr = std::ranges::find(m_playerData->ForcedReactions, int32(factionId), &UF::ZonePlayerForcedReaction::FactionID); + if (itr == m_playerData->ForcedReactions.end()) + itr = std::ranges::find(m_playerData->ForcedReactions, 0, &UF::ZonePlayerForcedReaction::FactionID); + + if (itr == m_playerData->ForcedReactions.end()) + return; // no more free slots + + auto setter = m_values.ModifyValue(&Player::m_playerData) + .ModifyValue(&UF::PlayerData::ForcedReactions, std::ranges::distance(m_playerData->ForcedReactions.begin(), itr)); + + SetUpdateFieldValue(setter.ModifyValue(&UF::ZonePlayerForcedReaction::FactionID), factionId); + SetUpdateFieldValue(setter.ModifyValue(&UF::ZonePlayerForcedReaction::Reaction), rank); +} + +void Player::RemoveVisibleForcedReaction(uint32 factionId) +{ + auto itr = std::ranges::find(m_playerData->ForcedReactions, int32(factionId), &UF::ZonePlayerForcedReaction::FactionID); + if (itr == m_playerData->ForcedReactions.end()) + return; + + auto setter = m_values.ModifyValue(&Player::m_playerData) + .ModifyValue(&UF::PlayerData::ForcedReactions, std::ranges::distance(m_playerData->ForcedReactions.begin(), itr)); + + SetUpdateFieldValue(setter.ModifyValue(&UF::ZonePlayerForcedReaction::FactionID), 0); + SetUpdateFieldValue(setter.ModifyValue(&UF::ZonePlayerForcedReaction::Reaction), 0); +} + // Calculates how many reputation points player gains in victim's enemy factions void Player::RewardReputation(Unit* victim, float rate) { @@ -17315,14 +17344,9 @@ void Player::SendQuestUpdateAddPlayer(Quest const* quest, uint16 newCount) const void Player::SendQuestGiverStatusMultiple() { - SendQuestGiverStatusMultiple(m_clientGUIDs); -} - -void Player::SendQuestGiverStatusMultiple(GuidUnorderedSet const& guids) -{ WorldPackets::Quest::QuestGiverStatusMultiple response; - for (auto itr = guids.begin(); itr != guids.end(); ++itr) + for (auto itr = m_clientGUIDs.begin(); itr != m_clientGUIDs.end(); ++itr) { if (itr->IsAnyTypeCreature()) { diff --git a/src/server/game/Entities/Player/Player.h b/src/server/game/Entities/Player/Player.h index f83e54de2bc..43a42c6ab71 100644 --- a/src/server/game/Entities/Player/Player.h +++ b/src/server/game/Entities/Player/Player.h @@ -1747,7 +1747,6 @@ class TC_GAME_API Player final : public Unit, public GridObject<Player> void SendQuestUpdateAddItem(ItemTemplate const* itemTemplate, QuestObjective const& obj, uint16 count) const; void SendQuestUpdateAddPlayer(Quest const* quest, uint16 newCount) const; void SendQuestGiverStatusMultiple(); - void SendQuestGiverStatusMultiple(GuidUnorderedSet const& guids); void SendDisplayToast(uint32 entry, DisplayToastType type, bool isBonusRoll, uint32 quantity, DisplayToastMethod method, uint32 questId = 0, Item* item = nullptr) const; uint32 GetSharedQuestID() const { return m_sharedQuestId; } @@ -2342,6 +2341,9 @@ class TC_GAME_API Player final : public Unit, public GridObject<Player> int32 CalculateReputationGain(ReputationSource source, uint32 creatureOrQuestLevel, int32 rep, int32 faction, bool noQuestBonus = false); + void SetVisibleForcedReaction(uint32 factionId, ReputationRank rank); + void RemoveVisibleForcedReaction(uint32 factionId); + void UpdateSkillsForLevel(); void ModifySkillBonus(uint32 skillid, int32 val, bool talent); diff --git a/src/server/game/Entities/Unit/enuminfo_UnitDefines.cpp b/src/server/game/Entities/Unit/enuminfo_UnitDefines.cpp index a5fa869ebc2..8160e9fed22 100644 --- a/src/server/game/Entities/Unit/enuminfo_UnitDefines.cpp +++ b/src/server/game/Entities/Unit/enuminfo_UnitDefines.cpp @@ -421,7 +421,7 @@ TC_API_EXPORT EnumText EnumUtils<NPCFlags>::ToString(NPCFlags value) case UNIT_NPC_FLAG_NONE: return { "UNIT_NPC_FLAG_NONE", "UNIT_NPC_FLAG_NONE", "" }; case UNIT_NPC_FLAG_GOSSIP: return { "UNIT_NPC_FLAG_GOSSIP", "has gossip menu", "100%" }; case UNIT_NPC_FLAG_QUESTGIVER: return { "UNIT_NPC_FLAG_QUESTGIVER", "is quest giver", "100%" }; - case UNIT_NPC_FLAG_ACCOUNT_BANKER: return { "UNIT_NPC_FLAG_ACCOUNT_BANKER", "UNIT_NPC_FLAG_ACCOUNT_BANKER", "" }; + case UNIT_NPC_FLAG_ACCOUNT_BANKER: return { "UNIT_NPC_FLAG_ACCOUNT_BANKER", "is account banker", "" }; case UNIT_NPC_FLAG_UNK2: return { "UNIT_NPC_FLAG_UNK2", "UNIT_NPC_FLAG_UNK2", "" }; case UNIT_NPC_FLAG_TRAINER: return { "UNIT_NPC_FLAG_TRAINER", "is trainer", "100%" }; case UNIT_NPC_FLAG_TRAINER_CLASS: return { "UNIT_NPC_FLAG_TRAINER_CLASS", "is class trainer", "100%" }; diff --git a/src/server/game/Handlers/CharacterHandler.cpp b/src/server/game/Handlers/CharacterHandler.cpp index d2bc7f3887b..635b338dab2 100644 --- a/src/server/game/Handlers/CharacterHandler.cpp +++ b/src/server/game/Handlers/CharacterHandler.cpp @@ -1558,11 +1558,6 @@ void WorldSession::HandleSetFactionInactiveOpcode(WorldPackets::Character::SetFa _player->GetReputationMgr().SetInactive(packet.Index, packet.State); } -void WorldSession::HandleRequestForcedReactionsOpcode(WorldPackets::Reputation::RequestForcedReactions& /*requestForcedReactions*/) -{ - _player->GetReputationMgr().SendForceReactions(); -} - void WorldSession::HandleCheckCharacterNameAvailability(WorldPackets::Character::CheckCharacterNameAvailability& checkCharacterNameAvailability) { // prevent character rename to invalid name diff --git a/src/server/game/Handlers/GroupHandler.cpp b/src/server/game/Handlers/GroupHandler.cpp index a1cc44531c2..e4e67f534fe 100644 --- a/src/server/game/Handlers/GroupHandler.cpp +++ b/src/server/game/Handlers/GroupHandler.cpp @@ -715,6 +715,7 @@ void WorldSession::HandleSendPingUnit(WorldPackets::Party::SendPingUnit const& p broadcastPingUnit.TargetGUID = pingUnit.TargetGUID; broadcastPingUnit.Type = pingUnit.Type; broadcastPingUnit.PinFrameID = pingUnit.PinFrameID; + broadcastPingUnit.PingDuration = pingUnit.PingDuration; broadcastPingUnit.Write(); for (GroupReference const* itr = group->GetFirstMember(); itr != nullptr; itr = itr->next()) @@ -743,6 +744,7 @@ void WorldSession::HandleSendPingWorldPoint(WorldPackets::Party::SendPingWorldPo broadcastPingWorldPoint.Type = pingWorldPoint.Type; broadcastPingWorldPoint.PinFrameID = pingWorldPoint.PinFrameID; broadcastPingWorldPoint.Transport = pingWorldPoint.Transport; + broadcastPingWorldPoint.PingDuration = pingWorldPoint.PingDuration; broadcastPingWorldPoint.Write(); for (GroupReference const* itr = group->GetFirstMember(); itr != nullptr; itr = itr->next()) diff --git a/src/server/game/Handlers/QuestHandler.cpp b/src/server/game/Handlers/QuestHandler.cpp index fe9d3027ef7..9a95bd79374 100644 --- a/src/server/game/Handlers/QuestHandler.cpp +++ b/src/server/game/Handlers/QuestHandler.cpp @@ -756,11 +756,6 @@ void WorldSession::HandleQuestgiverStatusMultipleQuery(WorldPackets::Quest::Ques _player->SendQuestGiverStatusMultiple(); } -void WorldSession::HandleQuestgiverStatusTrackedQueryOpcode(WorldPackets::Quest::QuestGiverStatusTrackedQuery& questGiverStatusTrackedQuery) -{ - _player->SendQuestGiverStatusMultiple(questGiverStatusTrackedQuery.QuestGiverGUIDs); -} - void WorldSession::HandleRequestWorldQuestUpdate(WorldPackets::Quest::RequestWorldQuestUpdate& /*packet*/) { WorldPackets::Quest::WorldQuestUpdateResponse response; diff --git a/src/server/game/Miscellaneous/SharedDefines.h b/src/server/game/Miscellaneous/SharedDefines.h index 4c7c6b7fe65..6a02a959704 100644 --- a/src/server/game/Miscellaneous/SharedDefines.h +++ b/src/server/game/Miscellaneous/SharedDefines.h @@ -7222,1007 +7222,1010 @@ enum class GameError : uint32 ERR_GUILD_BANK_WRAPPED_ITEM = 162, ERR_GUILD_BANK_FULL = 163, ERR_GUILD_BANK_WRONG_TAB = 164, - ERR_GUILD_NEW_LEADER_WRONG_REALM = 165, - ERR_NO_GUILD_CHARTER = 166, - ERR_OUT_OF_RANGE = 167, - ERR_PLAYER_DEAD = 168, - ERR_CLIENT_LOCKED_OUT = 169, - ERR_CLIENT_ON_TRANSPORT = 170, - ERR_KILLED_BY_S = 171, - ERR_LOOT_LOCKED = 172, - ERR_LOOT_TOO_FAR = 173, - ERR_LOOT_DIDNT_KILL = 174, - ERR_LOOT_BAD_FACING = 175, - ERR_LOOT_NOTSTANDING = 176, - ERR_LOOT_STUNNED = 177, - ERR_LOOT_NO_UI = 178, - ERR_LOOT_WHILE_INVULNERABLE = 179, - ERR_NO_LOOT = 180, - ERR_QUEST_ACCEPTED_S = 181, - ERR_QUEST_COMPLETE_S = 182, - ERR_QUEST_FAILED_S = 183, - ERR_QUEST_FAILED_BAG_FULL_S = 184, - ERR_QUEST_FAILED_MAX_COUNT_S = 185, - ERR_QUEST_FAILED_LOW_LEVEL = 186, - ERR_QUEST_FAILED_MISSING_ITEMS = 187, - ERR_QUEST_FAILED_WRONG_RACE = 188, - ERR_QUEST_FAILED_NOT_ENOUGH_MONEY = 189, - ERR_QUEST_FAILED_EXPANSION = 190, - ERR_QUEST_ONLY_ONE_TIMED = 191, - ERR_QUEST_NEED_PREREQS = 192, - ERR_QUEST_NEED_PREREQS_CUSTOM = 193, - ERR_QUEST_ALREADY_ON = 194, - ERR_QUEST_ALREADY_DONE = 195, - ERR_QUEST_ALREADY_DONE_DAILY = 196, - ERR_QUEST_HAS_IN_PROGRESS = 197, - ERR_QUEST_REWARD_EXP_I = 198, - ERR_QUEST_REWARD_MONEY_S = 199, - ERR_QUEST_MUST_CHOOSE = 200, - ERR_QUEST_LOG_FULL = 201, - ERR_COMBAT_DAMAGE_SSI = 202, - ERR_INSPECT_S = 203, - ERR_CANT_USE_ITEM = 204, - ERR_CANT_USE_ITEM_IN_ARENA = 205, - ERR_CANT_USE_ITEM_IN_RATED_BATTLEGROUND = 206, - ERR_MUST_EQUIP_ITEM = 207, - ERR_PASSIVE_ABILITY = 208, - ERR_2HSKILLNOTFOUND = 209, - ERR_NO_ATTACK_TARGET = 210, - ERR_INVALID_ATTACK_TARGET = 211, - ERR_ATTACK_PVP_TARGET_WHILE_UNFLAGGED = 212, - ERR_ATTACK_STUNNED = 213, - ERR_ATTACK_PACIFIED = 214, - ERR_ATTACK_MOUNTED = 215, - ERR_ATTACK_FLEEING = 216, - ERR_ATTACK_CONFUSED = 217, - ERR_ATTACK_CHARMED = 218, - ERR_ATTACK_DEAD = 219, - ERR_ATTACK_PREVENTED_BY_MECHANIC_S = 220, - ERR_ATTACK_CHANNEL = 221, - ERR_TAXISAMENODE = 222, - ERR_TAXINOSUCHPATH = 223, - ERR_TAXIUNSPECIFIEDSERVERERROR = 224, - ERR_TAXINOTENOUGHMONEY = 225, - ERR_TAXITOOFARAWAY = 226, - ERR_TAXINOVENDORNEARBY = 227, - ERR_TAXINOTVISITED = 228, - ERR_TAXIPLAYERBUSY = 229, - ERR_TAXIPLAYERALREADYMOUNTED = 230, - ERR_TAXIPLAYERSHAPESHIFTED = 231, - ERR_TAXIPLAYERMOVING = 232, - ERR_TAXINOPATHS = 233, - ERR_TAXINOTELIGIBLE = 234, - ERR_TAXINOTSTANDING = 235, - ERR_TAXIINCOMBAT = 236, - ERR_NO_REPLY_TARGET = 237, - ERR_GENERIC_NO_TARGET = 238, - ERR_INITIATE_TRADE_S = 239, - ERR_TRADE_REQUEST_S = 240, - ERR_TRADE_BLOCKED_S = 241, - ERR_TRADE_TARGET_DEAD = 242, - ERR_TRADE_TOO_FAR = 243, - ERR_TRADE_CANCELLED = 244, - ERR_TRADE_COMPLETE = 245, - ERR_TRADE_BAG_FULL = 246, - ERR_TRADE_TARGET_BAG_FULL = 247, - ERR_TRADE_MAX_COUNT_EXCEEDED = 248, - ERR_TRADE_TARGET_MAX_COUNT_EXCEEDED = 249, - ERR_INVENTORY_TRADE_TOO_MANY_UNIQUE_ITEM = 250, - ERR_ALREADY_TRADING = 251, - ERR_MOUNT_INVALIDMOUNTEE = 252, - ERR_MOUNT_TOOFARAWAY = 253, - ERR_MOUNT_ALREADYMOUNTED = 254, - ERR_MOUNT_NOTMOUNTABLE = 255, - ERR_MOUNT_NOTYOURPET = 256, - ERR_MOUNT_OTHER = 257, - ERR_MOUNT_LOOTING = 258, - ERR_MOUNT_RACECANTMOUNT = 259, - ERR_MOUNT_SHAPESHIFTED = 260, - ERR_MOUNT_NO_FAVORITES = 261, - ERR_MOUNT_NO_MOUNTS = 262, - ERR_DISMOUNT_NOPET = 263, - ERR_DISMOUNT_NOTMOUNTED = 264, - ERR_DISMOUNT_NOTYOURPET = 265, - ERR_SPELL_FAILED_TOTEMS = 266, - ERR_SPELL_FAILED_REAGENTS = 267, - ERR_SPELL_FAILED_REAGENTS_GENERIC = 268, - ERR_SPELL_FAILED_OPTIONAL_REAGENTS = 269, - ERR_CANT_TRADE_GOLD = 270, - ERR_SPELL_FAILED_EQUIPPED_ITEM = 271, - ERR_SPELL_FAILED_EQUIPPED_ITEM_CLASS_S = 272, - ERR_SPELL_FAILED_SHAPESHIFT_FORM_S = 273, - ERR_SPELL_FAILED_ANOTHER_IN_PROGRESS = 274, - ERR_BADATTACKFACING = 275, - ERR_BADATTACKPOS = 276, - ERR_CHEST_IN_USE = 277, - ERR_USE_CANT_OPEN = 278, - ERR_USE_LOCKED = 279, - ERR_DOOR_LOCKED = 280, - ERR_BUTTON_LOCKED = 281, - ERR_USE_LOCKED_WITH_ITEM_S = 282, - ERR_USE_LOCKED_WITH_SPELL_S = 283, - ERR_USE_LOCKED_WITH_SPELL_KNOWN_SI = 284, - ERR_USE_TOO_FAR = 285, - ERR_USE_BAD_ANGLE = 286, - ERR_USE_OBJECT_MOVING = 287, - ERR_USE_SPELL_FOCUS = 288, - ERR_USE_DESTROYED = 289, - ERR_SET_LOOT_FREEFORALL = 290, - ERR_SET_LOOT_ROUNDROBIN = 291, - ERR_SET_LOOT_MASTER = 292, - ERR_SET_LOOT_GROUP = 293, - ERR_SET_LOOT_THRESHOLD_S = 294, - ERR_NEW_LOOT_MASTER_S = 295, - ERR_SPECIFY_MASTER_LOOTER = 296, - ERR_LOOT_SPEC_CHANGED_S = 297, - ERR_TAME_FAILED = 298, - ERR_CHAT_WHILE_DEAD = 299, - ERR_CHAT_PLAYER_NOT_FOUND_S = 300, - ERR_NEWTAXIPATH = 301, - ERR_NO_PET = 302, - ERR_NOTYOURPET = 303, - ERR_PET_NOT_RENAMEABLE = 304, - ERR_QUEST_OBJECTIVE_COMPLETE_S = 305, - ERR_QUEST_UNKNOWN_COMPLETE = 306, - ERR_QUEST_ADD_KILL_SII = 307, - ERR_QUEST_ADD_FOUND_SII = 308, - ERR_QUEST_ADD_ITEM_SII = 309, - ERR_QUEST_ADD_PLAYER_KILL_SII = 310, - ERR_CANNOTCREATEDIRECTORY = 311, - ERR_CANNOTCREATEFILE = 312, - ERR_PLAYER_WRONG_FACTION = 313, - ERR_PLAYER_IS_NEUTRAL = 314, - ERR_BANKSLOT_FAILED_TOO_MANY = 315, - ERR_BANKSLOT_INSUFFICIENT_FUNDS = 316, - ERR_BANKSLOT_NOTBANKER = 317, - ERR_FRIEND_DB_ERROR = 318, - ERR_FRIEND_LIST_FULL = 319, - ERR_FRIEND_ADDED_S = 320, - ERR_BATTLETAG_FRIEND_ADDED_S = 321, - ERR_FRIEND_ONLINE_SS = 322, - ERR_FRIEND_OFFLINE_S = 323, - ERR_FRIEND_NOT_FOUND = 324, - ERR_FRIEND_WRONG_FACTION = 325, - ERR_FRIEND_REMOVED_S = 326, - ERR_BATTLETAG_FRIEND_REMOVED_S = 327, - ERR_FRIEND_ERROR = 328, - ERR_FRIEND_ALREADY_S = 329, - ERR_FRIEND_SELF = 330, - ERR_FRIEND_DELETED = 331, - ERR_IGNORE_FULL = 332, - ERR_IGNORE_SELF = 333, - ERR_IGNORE_NOT_FOUND = 334, - ERR_IGNORE_ALREADY_S = 335, - ERR_IGNORE_ADDED_S = 336, - ERR_IGNORE_REMOVED_S = 337, - ERR_IGNORE_AMBIGUOUS = 338, - ERR_IGNORE_DELETED = 339, - ERR_ONLY_ONE_BOLT = 340, - ERR_ONLY_ONE_AMMO = 341, - ERR_SPELL_FAILED_EQUIPPED_SPECIFIC_ITEM = 342, - ERR_WRONG_BAG_TYPE_SUBCLASS = 343, - ERR_CANT_WRAP_STACKABLE = 344, - ERR_CANT_WRAP_EQUIPPED = 345, - ERR_CANT_WRAP_WRAPPED = 346, - ERR_CANT_WRAP_BOUND = 347, - ERR_CANT_WRAP_UNIQUE = 348, - ERR_CANT_WRAP_BAGS = 349, - ERR_OUT_OF_MANA = 350, - ERR_OUT_OF_RAGE = 351, - ERR_OUT_OF_FOCUS = 352, - ERR_OUT_OF_ENERGY = 353, - ERR_OUT_OF_CHI = 354, - ERR_OUT_OF_HEALTH = 355, - ERR_OUT_OF_RUNES = 356, - ERR_OUT_OF_RUNIC_POWER = 357, - ERR_OUT_OF_SOUL_SHARDS = 358, - ERR_OUT_OF_LUNAR_POWER = 359, - ERR_OUT_OF_HOLY_POWER = 360, - ERR_OUT_OF_MAELSTROM = 361, - ERR_OUT_OF_COMBO_POINTS = 362, - ERR_OUT_OF_INSANITY = 363, - ERR_OUT_OF_ESSENCE = 364, - ERR_OUT_OF_ARCANE_CHARGES = 365, - ERR_OUT_OF_FURY = 366, - ERR_OUT_OF_PAIN = 367, - ERR_OUT_OF_POWER_DISPLAY = 368, - ERR_LOOT_GONE = 369, - ERR_MOUNT_FORCEDDISMOUNT = 370, - ERR_AUTOFOLLOW_TOO_FAR = 371, - ERR_UNIT_NOT_FOUND = 372, - ERR_INVALID_FOLLOW_TARGET = 373, - ERR_INVALID_FOLLOW_PVP_COMBAT = 374, - ERR_INVALID_FOLLOW_TARGET_PVP_COMBAT = 375, - ERR_INVALID_INSPECT_TARGET = 376, - ERR_GUILDEMBLEM_SUCCESS = 377, - ERR_GUILDEMBLEM_INVALID_TABARD_COLORS = 378, - ERR_GUILDEMBLEM_NOGUILD = 379, - ERR_GUILDEMBLEM_NOTGUILDMASTER = 380, - ERR_GUILDEMBLEM_NOTENOUGHMONEY = 381, - ERR_GUILDEMBLEM_INVALIDVENDOR = 382, - ERR_EMBLEMERROR_NOTABARDGEOSET = 383, - ERR_SPELL_OUT_OF_RANGE = 384, - ERR_COMMAND_NEEDS_TARGET = 385, - ERR_NOAMMO_S = 386, - ERR_TOOBUSYTOFOLLOW = 387, - ERR_DUEL_REQUESTED = 388, - ERR_DUEL_CANCELLED = 389, - ERR_DEATHBINDALREADYBOUND = 390, - ERR_DEATHBIND_SUCCESS_S = 391, - ERR_NOEMOTEWHILERUNNING = 392, - ERR_ZONE_EXPLORED = 393, - ERR_ZONE_EXPLORED_XP = 394, - ERR_INVALID_ITEM_TARGET = 395, - ERR_INVALID_QUEST_TARGET = 396, - ERR_IGNORING_YOU_S = 397, - ERR_FISH_NOT_HOOKED = 398, - ERR_FISH_ESCAPED = 399, - ERR_SPELL_FAILED_NOTUNSHEATHED = 400, - ERR_PETITION_OFFERED_S = 401, - ERR_PETITION_SIGNED = 402, - ERR_PETITION_SIGNED_S = 403, - ERR_PETITION_DECLINED_S = 404, - ERR_PETITION_ALREADY_SIGNED = 405, - ERR_PETITION_RESTRICTED_ACCOUNT_TRIAL = 406, - ERR_PETITION_ALREADY_SIGNED_OTHER = 407, - ERR_PETITION_IN_GUILD = 408, - ERR_PETITION_CREATOR = 409, - ERR_PETITION_NOT_ENOUGH_SIGNATURES = 410, - ERR_PETITION_NOT_SAME_SERVER = 411, - ERR_PETITION_FULL = 412, - ERR_PETITION_ALREADY_SIGNED_BY_S = 413, - ERR_GUILD_NAME_INVALID = 414, - ERR_SPELL_UNLEARNED_S = 415, - ERR_PET_SPELL_ROOTED = 416, - ERR_PET_SPELL_AFFECTING_COMBAT = 417, - ERR_PET_SPELL_OUT_OF_RANGE = 418, - ERR_PET_SPELL_NOT_BEHIND = 419, - ERR_PET_SPELL_TARGETS_DEAD = 420, - ERR_PET_SPELL_DEAD = 421, - ERR_PET_SPELL_NOPATH = 422, - ERR_ITEM_CANT_BE_DESTROYED = 423, - ERR_TICKET_ALREADY_EXISTS = 424, - ERR_TICKET_CREATE_ERROR = 425, - ERR_TICKET_UPDATE_ERROR = 426, - ERR_TICKET_DB_ERROR = 427, - ERR_TICKET_NO_TEXT = 428, - ERR_TICKET_TEXT_TOO_LONG = 429, - ERR_OBJECT_IS_BUSY = 430, - ERR_EXHAUSTION_WELLRESTED = 431, - ERR_EXHAUSTION_RESTED = 432, - ERR_EXHAUSTION_NORMAL = 433, - ERR_EXHAUSTION_TIRED = 434, - ERR_EXHAUSTION_EXHAUSTED = 435, - ERR_NO_ITEMS_WHILE_SHAPESHIFTED = 436, - ERR_CANT_INTERACT_SHAPESHIFTED = 437, - ERR_REALM_NOT_FOUND = 438, - ERR_MAIL_QUEST_ITEM = 439, - ERR_MAIL_BOUND_ITEM = 440, - ERR_MAIL_CONJURED_ITEM = 441, - ERR_MAIL_BAG = 442, - ERR_MAIL_TO_SELF = 443, - ERR_MAIL_TARGET_NOT_FOUND = 444, - ERR_MAIL_DATABASE_ERROR = 445, - ERR_MAIL_DELETE_ITEM_ERROR = 446, - ERR_MAIL_WRAPPED_COD = 447, - ERR_MAIL_CANT_SEND_REALM = 448, - ERR_MAIL_TEMP_RETURN_OUTAGE = 449, - ERR_MAIL_RECEPIENT_CANT_RECEIVE_MAIL = 450, - ERR_MAIL_SENT = 451, - ERR_MAIL_TARGET_IS_TRIAL = 452, - ERR_NOT_HAPPY_ENOUGH = 453, - ERR_USE_CANT_IMMUNE = 454, - ERR_CANT_BE_DISENCHANTED = 455, - ERR_CANT_USE_DISARMED = 456, - ERR_AUCTION_DATABASE_ERROR = 457, - ERR_AUCTION_HIGHER_BID = 458, - ERR_AUCTION_ALREADY_BID = 459, - ERR_AUCTION_OUTBID_S = 460, - ERR_AUCTION_WON_S = 461, - ERR_AUCTION_REMOVED_S = 462, - ERR_AUCTION_BID_PLACED = 463, - ERR_LOGOUT_FAILED = 464, - ERR_QUEST_PUSH_SUCCESS_S = 465, - ERR_QUEST_PUSH_INVALID_S = 466, - ERR_QUEST_PUSH_INVALID_TO_RECIPIENT_S = 467, - ERR_QUEST_PUSH_ACCEPTED_S = 468, - ERR_QUEST_PUSH_DECLINED_S = 469, - ERR_QUEST_PUSH_BUSY_S = 470, - ERR_QUEST_PUSH_DEAD_S = 471, - ERR_QUEST_PUSH_DEAD_TO_RECIPIENT_S = 472, - ERR_QUEST_PUSH_LOG_FULL_S = 473, - ERR_QUEST_PUSH_LOG_FULL_TO_RECIPIENT_S = 474, - ERR_QUEST_PUSH_ONQUEST_S = 475, - ERR_QUEST_PUSH_ONQUEST_TO_RECIPIENT_S = 476, - ERR_QUEST_PUSH_ALREADY_DONE_S = 477, - ERR_QUEST_PUSH_ALREADY_DONE_TO_RECIPIENT_S = 478, - ERR_QUEST_PUSH_NOT_DAILY_S = 479, - ERR_QUEST_PUSH_TIMER_EXPIRED_S = 480, - ERR_QUEST_PUSH_NOT_IN_PARTY_S = 481, - ERR_QUEST_PUSH_DIFFERENT_SERVER_DAILY_S = 482, - ERR_QUEST_PUSH_DIFFERENT_SERVER_DAILY_TO_RECIPIENT_S = 483, - ERR_QUEST_PUSH_NOT_ALLOWED_S = 484, - ERR_QUEST_PUSH_PREREQUISITE_S = 485, - ERR_QUEST_PUSH_PREREQUISITE_TO_RECIPIENT_S = 486, - ERR_QUEST_PUSH_LOW_LEVEL_S = 487, - ERR_QUEST_PUSH_LOW_LEVEL_TO_RECIPIENT_S = 488, - ERR_QUEST_PUSH_HIGH_LEVEL_S = 489, - ERR_QUEST_PUSH_HIGH_LEVEL_TO_RECIPIENT_S = 490, - ERR_QUEST_PUSH_CLASS_S = 491, - ERR_QUEST_PUSH_CLASS_TO_RECIPIENT_S = 492, - ERR_QUEST_PUSH_RACE_S = 493, - ERR_QUEST_PUSH_RACE_TO_RECIPIENT_S = 494, - ERR_QUEST_PUSH_LOW_FACTION_S = 495, - ERR_QUEST_PUSH_LOW_FACTION_TO_RECIPIENT_S = 496, - ERR_QUEST_PUSH_HIGH_FACTION_S = 497, - ERR_QUEST_PUSH_HIGH_FACTION_TO_RECIPIENT_S = 498, - ERR_QUEST_PUSH_EXPANSION_S = 499, - ERR_QUEST_PUSH_EXPANSION_TO_RECIPIENT_S = 500, - ERR_QUEST_PUSH_NOT_GARRISON_OWNER_S = 501, - ERR_QUEST_PUSH_NOT_GARRISON_OWNER_TO_RECIPIENT_S = 502, - ERR_QUEST_PUSH_WRONG_COVENANT_S = 503, - ERR_QUEST_PUSH_WRONG_COVENANT_TO_RECIPIENT_S = 504, - ERR_QUEST_PUSH_NEW_PLAYER_EXPERIENCE_S = 505, - ERR_QUEST_PUSH_NEW_PLAYER_EXPERIENCE_TO_RECIPIENT_S = 506, - ERR_QUEST_PUSH_WRONG_FACTION_S = 507, - ERR_QUEST_PUSH_WRONG_FACTION_TO_RECIPIENT_S = 508, - ERR_QUEST_PUSH_CROSS_FACTION_RESTRICTED_S = 509, - ERR_RAID_GROUP_LOWLEVEL = 510, - ERR_RAID_GROUP_ONLY = 511, - ERR_RAID_GROUP_FULL = 512, - ERR_RAID_GROUP_REQUIREMENTS_UNMATCH = 513, - ERR_CORPSE_IS_NOT_IN_INSTANCE = 514, - ERR_PVP_KILL_HONORABLE = 515, - ERR_PVP_KILL_DISHONORABLE = 516, - ERR_SPELL_FAILED_ALREADY_AT_FULL_HEALTH = 517, - ERR_SPELL_FAILED_ALREADY_AT_FULL_MANA = 518, - ERR_SPELL_FAILED_ALREADY_AT_FULL_POWER_S = 519, - ERR_AUTOLOOT_MONEY_S = 520, - ERR_GENERIC_STUNNED = 521, - ERR_GENERIC_THROTTLE = 522, - ERR_CLUB_FINDER_SEARCHING_TOO_FAST = 523, - ERR_TARGET_STUNNED = 524, - ERR_MUST_REPAIR_DURABILITY = 525, - ERR_RAID_YOU_JOINED = 526, - ERR_RAID_YOU_LEFT = 527, - ERR_INSTANCE_GROUP_JOINED_WITH_PARTY = 528, - ERR_INSTANCE_GROUP_JOINED_WITH_RAID = 529, - ERR_RAID_MEMBER_ADDED_S = 530, - ERR_RAID_MEMBER_REMOVED_S = 531, - ERR_INSTANCE_GROUP_ADDED_S = 532, - ERR_INSTANCE_GROUP_REMOVED_S = 533, - ERR_CLICK_ON_ITEM_TO_FEED = 534, - ERR_TOO_MANY_CHAT_CHANNELS = 535, - ERR_LOOT_ROLL_PENDING = 536, - ERR_LOOT_PLAYER_NOT_FOUND = 537, - ERR_NOT_IN_RAID = 538, - ERR_LOGGING_OUT = 539, - ERR_TARGET_LOGGING_OUT = 540, - ERR_NOT_WHILE_MOUNTED = 541, - ERR_NOT_WHILE_SHAPESHIFTED = 542, - ERR_NOT_IN_COMBAT = 543, - ERR_NOT_WHILE_DISARMED = 544, - ERR_PET_BROKEN = 545, - ERR_TALENT_WIPE_ERROR = 546, - ERR_SPEC_WIPE_ERROR = 547, - ERR_GLYPH_WIPE_ERROR = 548, - ERR_PET_SPEC_WIPE_ERROR = 549, - ERR_FEIGN_DEATH_RESISTED = 550, - ERR_MEETING_STONE_IN_QUEUE_S = 551, - ERR_MEETING_STONE_LEFT_QUEUE_S = 552, - ERR_MEETING_STONE_OTHER_MEMBER_LEFT = 553, - ERR_MEETING_STONE_PARTY_KICKED_FROM_QUEUE = 554, - ERR_MEETING_STONE_MEMBER_STILL_IN_QUEUE = 555, - ERR_MEETING_STONE_SUCCESS = 556, - ERR_MEETING_STONE_IN_PROGRESS = 557, - ERR_MEETING_STONE_MEMBER_ADDED_S = 558, - ERR_MEETING_STONE_GROUP_FULL = 559, - ERR_MEETING_STONE_NOT_LEADER = 560, - ERR_MEETING_STONE_INVALID_LEVEL = 561, - ERR_MEETING_STONE_TARGET_NOT_IN_PARTY = 562, - ERR_MEETING_STONE_TARGET_INVALID_LEVEL = 563, - ERR_MEETING_STONE_MUST_BE_LEADER = 564, - ERR_MEETING_STONE_NO_RAID_GROUP = 565, - ERR_MEETING_STONE_NEED_PARTY = 566, - ERR_MEETING_STONE_NOT_FOUND = 567, - ERR_MEETING_STONE_TARGET_IN_VEHICLE = 568, - ERR_GUILDEMBLEM_SAME = 569, - ERR_EQUIP_TRADE_ITEM = 570, - ERR_PVP_TOGGLE_ON = 571, - ERR_PVP_TOGGLE_OFF = 572, - ERR_GROUP_JOIN_BATTLEGROUND_DESERTERS = 573, - ERR_GROUP_JOIN_BATTLEGROUND_DEAD = 574, - ERR_GROUP_JOIN_BATTLEGROUND_S = 575, - ERR_GROUP_JOIN_BATTLEGROUND_FAIL = 576, - ERR_GROUP_JOIN_BATTLEGROUND_TOO_MANY = 577, - ERR_SOLO_JOIN_BATTLEGROUND_S = 578, - ERR_JOIN_SINGLE_SCENARIO_S = 579, - ERR_BATTLEGROUND_TOO_MANY_QUEUES = 580, - ERR_BATTLEGROUND_CANNOT_QUEUE_FOR_RATED = 581, - ERR_BATTLEDGROUND_QUEUED_FOR_RATED = 582, - ERR_BATTLEGROUND_TEAM_LEFT_QUEUE = 583, - ERR_BATTLEGROUND_NOT_IN_BATTLEGROUND = 584, - ERR_ALREADY_IN_ARENA_TEAM_S = 585, - ERR_INVALID_PROMOTION_CODE = 586, - ERR_BG_PLAYER_JOINED_SS = 587, - ERR_BG_PLAYER_LEFT_S = 588, - ERR_RESTRICTED_ACCOUNT = 589, - ERR_RESTRICTED_ACCOUNT_TRIAL = 590, - ERR_NOT_ENOUGH_PURCHASED_GAME_TIME = 591, - ERR_PLAY_TIME_EXCEEDED = 592, - ERR_APPROACHING_PARTIAL_PLAY_TIME = 593, - ERR_APPROACHING_PARTIAL_PLAY_TIME_2 = 594, - ERR_APPROACHING_NO_PLAY_TIME = 595, - ERR_APPROACHING_NO_PLAY_TIME_2 = 596, - ERR_UNHEALTHY_TIME = 597, - ERR_CHAT_RESTRICTED_TRIAL = 598, - ERR_CHAT_THROTTLED = 599, - ERR_MAIL_REACHED_CAP = 600, - ERR_INVALID_RAID_TARGET = 601, - ERR_RAID_LEADER_READY_CHECK_START_S = 602, - ERR_READY_CHECK_IN_PROGRESS = 603, - ERR_READY_CHECK_THROTTLED = 604, - ERR_DUNGEON_DIFFICULTY_FAILED = 605, - ERR_DUNGEON_DIFFICULTY_CHANGED_S = 606, - ERR_TRADE_WRONG_REALM = 607, - ERR_TRADE_NOT_ON_TAPLIST = 608, - ERR_CHAT_PLAYER_AMBIGUOUS_S = 609, - ERR_LOOT_CANT_LOOT_THAT_NOW = 610, - ERR_LOOT_MASTER_INV_FULL = 611, - ERR_LOOT_MASTER_UNIQUE_ITEM = 612, - ERR_LOOT_MASTER_OTHER = 613, - ERR_FILTERING_YOU_S = 614, - ERR_USE_PREVENTED_BY_MECHANIC_S = 615, - ERR_ITEM_UNIQUE_EQUIPPABLE = 616, - ERR_LFG_LEADER_IS_LFM_S = 617, - ERR_LFG_PENDING = 618, - ERR_CANT_SPEAK_LANGAGE = 619, - ERR_VENDOR_MISSING_TURNINS = 620, - ERR_BATTLEGROUND_NOT_IN_TEAM = 621, - ERR_NOT_IN_BATTLEGROUND = 622, - ERR_NOT_ENOUGH_HONOR_POINTS = 623, - ERR_NOT_ENOUGH_ARENA_POINTS = 624, - ERR_SOCKETING_REQUIRES_META_GEM = 625, - ERR_SOCKETING_META_GEM_ONLY_IN_METASLOT = 626, - ERR_SOCKETING_REQUIRES_HYDRAULIC_GEM = 627, - ERR_SOCKETING_HYDRAULIC_GEM_ONLY_IN_HYDRAULICSLOT = 628, - ERR_SOCKETING_REQUIRES_COGWHEEL_GEM = 629, - ERR_SOCKETING_COGWHEEL_GEM_ONLY_IN_COGWHEELSLOT = 630, - ERR_SOCKETING_ITEM_TOO_LOW_LEVEL = 631, - ERR_ITEM_MAX_COUNT_SOCKETED = 632, - ERR_SYSTEM_DISABLED = 633, - ERR_QUEST_FAILED_TOO_MANY_DAILY_QUESTS_I = 634, - ERR_ITEM_MAX_COUNT_EQUIPPED_SOCKETED = 635, - ERR_ITEM_UNIQUE_EQUIPPABLE_SOCKETED = 636, - ERR_USER_SQUELCHED = 637, - ERR_ACCOUNT_SILENCED = 638, - ERR_PARTY_MEMBER_SILENCED = 639, - ERR_PARTY_MEMBER_SILENCED_LFG_DELIST = 640, - ERR_TOO_MUCH_GOLD = 641, - ERR_NOT_BARBER_SITTING = 642, - ERR_QUEST_FAILED_CAIS = 643, - ERR_INVITE_RESTRICTED_TRIAL = 644, - ERR_VOICE_IGNORE_FULL = 645, - ERR_VOICE_IGNORE_SELF = 646, - ERR_VOICE_IGNORE_NOT_FOUND = 647, - ERR_VOICE_IGNORE_ALREADY_S = 648, - ERR_VOICE_IGNORE_ADDED_S = 649, - ERR_VOICE_IGNORE_REMOVED_S = 650, - ERR_VOICE_IGNORE_AMBIGUOUS = 651, - ERR_VOICE_IGNORE_DELETED = 652, - ERR_UNKNOWN_MACRO_OPTION_S = 653, - ERR_NOT_DURING_ARENA_MATCH = 654, - ERR_NOT_IN_RATED_BATTLEGROUND = 655, - ERR_PLAYER_SILENCED = 656, - ERR_PLAYER_UNSILENCED = 657, - ERR_COMSAT_DISCONNECT = 658, - ERR_COMSAT_RECONNECT_ATTEMPT = 659, - ERR_COMSAT_CONNECT_FAIL = 660, - ERR_MAIL_INVALID_ATTACHMENT_SLOT = 661, - ERR_MAIL_TOO_MANY_ATTACHMENTS = 662, - ERR_MAIL_INVALID_ATTACHMENT = 663, - ERR_MAIL_ATTACHMENT_EXPIRED = 664, - ERR_VOICE_CHAT_PARENTAL_DISABLE_MIC = 665, - ERR_PROFANE_CHAT_NAME = 666, - ERR_PLAYER_SILENCED_ECHO = 667, - ERR_PLAYER_UNSILENCED_ECHO = 668, - ERR_LOOT_CANT_LOOT_THAT = 669, - ERR_ARENA_EXPIRED_CAIS = 670, - ERR_GROUP_ACTION_THROTTLED = 671, - ERR_ALREADY_PICKPOCKETED = 672, - ERR_NAME_INVALID = 673, - ERR_NAME_NO_NAME = 674, - ERR_NAME_TOO_SHORT = 675, - ERR_NAME_TOO_LONG = 676, - ERR_NAME_MIXED_LANGUAGES = 677, - ERR_NAME_PROFANE = 678, - ERR_NAME_RESERVED = 679, - ERR_NAME_THREE_CONSECUTIVE = 680, - ERR_NAME_INVALID_SPACE = 681, - ERR_NAME_CONSECUTIVE_SPACES = 682, - ERR_NAME_RUSSIAN_CONSECUTIVE_SILENT_CHARACTERS = 683, - ERR_NAME_RUSSIAN_SILENT_CHARACTER_AT_BEGINNING_OR_END = 684, - ERR_NAME_DECLENSION_DOESNT_MATCH_BASE_NAME = 685, - ERR_RECRUIT_A_FRIEND_NOT_LINKED = 686, - ERR_RECRUIT_A_FRIEND_NOT_NOW = 687, - ERR_RECRUIT_A_FRIEND_SUMMON_LEVEL_MAX = 688, - ERR_RECRUIT_A_FRIEND_SUMMON_COOLDOWN = 689, - ERR_RECRUIT_A_FRIEND_SUMMON_OFFLINE = 690, - ERR_RECRUIT_A_FRIEND_INSUF_EXPAN_LVL = 691, - ERR_RECRUIT_A_FRIEND_MAP_INCOMING_TRANSFER_NOT_ALLOWED = 692, - ERR_NOT_SAME_ACCOUNT = 693, - ERR_BAD_ON_USE_ENCHANT = 694, - ERR_TRADE_SELF = 695, - ERR_TOO_MANY_SOCKETS = 696, - ERR_ITEM_MAX_LIMIT_CATEGORY_COUNT_EXCEEDED_IS = 697, - ERR_TRADE_TARGET_MAX_LIMIT_CATEGORY_COUNT_EXCEEDED_IS = 698, - ERR_ITEM_MAX_LIMIT_CATEGORY_SOCKETED_EXCEEDED_IS = 699, - ERR_ITEM_MAX_LIMIT_CATEGORY_EQUIPPED_EXCEEDED_IS = 700, - ERR_SHAPESHIFT_FORM_CANNOT_EQUIP = 701, - ERR_ITEM_INVENTORY_FULL_SATCHEL = 702, - ERR_SCALING_STAT_ITEM_LEVEL_EXCEEDED = 703, - ERR_SCALING_STAT_ITEM_LEVEL_TOO_LOW = 704, - ERR_PURCHASE_LEVEL_TOO_LOW = 705, - ERR_GROUP_SWAP_FAILED = 706, - ERR_INVITE_IN_COMBAT = 707, - ERR_INVALID_GLYPH_SLOT = 708, - ERR_GENERIC_NO_VALID_TARGETS = 709, - ERR_CALENDAR_EVENT_ALERT_S = 710, - ERR_PET_LEARN_SPELL_S = 711, - ERR_PET_LEARN_ABILITY_S = 712, - ERR_PET_SPELL_UNLEARNED_S = 713, - ERR_INVITE_UNKNOWN_REALM = 714, - ERR_INVITE_NO_PARTY_SERVER = 715, - ERR_INVITE_PARTY_BUSY = 716, - ERR_INVITE_PARTY_BUSY_PENDING_REQUEST = 717, - ERR_INVITE_PARTY_BUSY_PENDING_SUGGEST = 718, - ERR_PARTY_TARGET_AMBIGUOUS = 719, - ERR_PARTY_LFG_INVITE_RAID_LOCKED = 720, - ERR_PARTY_LFG_BOOT_LIMIT = 721, - ERR_PARTY_LFG_BOOT_COOLDOWN_S = 722, - ERR_PARTY_LFG_BOOT_NOT_ELIGIBLE_S = 723, - ERR_PARTY_LFG_BOOT_INPATIENT_TIMER_S = 724, - ERR_PARTY_LFG_BOOT_IN_PROGRESS = 725, - ERR_PARTY_LFG_BOOT_TOO_FEW_PLAYERS = 726, - ERR_PARTY_LFG_BOOT_VOTE_SUCCEEDED = 727, - ERR_PARTY_LFG_BOOT_VOTE_FAILED = 728, - ERR_PARTY_LFG_BOOT_DISALLOWED_BY_MAP = 729, - ERR_PARTY_LFG_BOOT_DUNGEON_COMPLETE = 730, - ERR_PARTY_LFG_BOOT_LOOT_ROLLS = 731, - ERR_PARTY_LFG_BOOT_VOTE_REGISTERED = 732, - ERR_PARTY_PRIVATE_GROUP_ONLY = 733, - ERR_PARTY_LFG_TELEPORT_IN_COMBAT = 734, - ERR_PARTY_TIME_RUNNING_SEASON_ID_MUST_MATCH = 735, - ERR_RAID_DISALLOWED_BY_LEVEL = 736, - ERR_RAID_DISALLOWED_BY_CROSS_REALM = 737, - ERR_PARTY_ROLE_NOT_AVAILABLE = 738, - ERR_JOIN_LFG_OBJECT_FAILED = 739, - ERR_LFG_REMOVED_LEVELUP = 740, - ERR_LFG_REMOVED_XP_TOGGLE = 741, - ERR_LFG_REMOVED_FACTION_CHANGE = 742, - ERR_BATTLEGROUND_INFO_THROTTLED = 743, - ERR_BATTLEGROUND_ALREADY_IN = 744, - ERR_ARENA_TEAM_CHANGE_FAILED_QUEUED = 745, - ERR_ARENA_TEAM_PERMISSIONS = 746, - ERR_NOT_WHILE_FALLING = 747, - ERR_NOT_WHILE_MOVING = 748, - ERR_NOT_WHILE_FATIGUED = 749, - ERR_MAX_SOCKETS = 750, - ERR_MULTI_CAST_ACTION_TOTEM_S = 751, - ERR_BATTLEGROUND_JOIN_LEVELUP = 752, - ERR_REMOVE_FROM_PVP_QUEUE_XP_GAIN = 753, - ERR_BATTLEGROUND_JOIN_XP_GAIN = 754, - ERR_BATTLEGROUND_JOIN_MERCENARY = 755, - ERR_BATTLEGROUND_JOIN_TOO_MANY_HEALERS = 756, - ERR_BATTLEGROUND_JOIN_RATED_TOO_MANY_HEALERS = 757, - ERR_BATTLEGROUND_JOIN_TOO_MANY_TANKS = 758, - ERR_BATTLEGROUND_JOIN_TOO_MANY_DAMAGE = 759, - ERR_RAID_DIFFICULTY_FAILED = 760, - ERR_RAID_DIFFICULTY_CHANGED_S = 761, - ERR_LEGACY_RAID_DIFFICULTY_CHANGED_S = 762, - ERR_RAID_LOCKOUT_CHANGED_S = 763, - ERR_RAID_CONVERTED_TO_PARTY = 764, - ERR_PARTY_CONVERTED_TO_RAID = 765, - ERR_PLAYER_DIFFICULTY_CHANGED_S = 766, - ERR_GMRESPONSE_DB_ERROR = 767, - ERR_BATTLEGROUND_JOIN_RANGE_INDEX = 768, - ERR_ARENA_JOIN_RANGE_INDEX = 769, - ERR_REMOVE_FROM_PVP_QUEUE_FACTION_CHANGE = 770, - ERR_BATTLEGROUND_JOIN_FAILED = 771, - ERR_BATTLEGROUND_JOIN_NO_VALID_SPEC_FOR_ROLE = 772, - ERR_BATTLEGROUND_JOIN_RESPEC = 773, - ERR_BATTLEGROUND_INVITATION_DECLINED = 774, - ERR_BATTLEGROUND_INVITATION_DECLINED_BY = 775, - ERR_BATTLEGROUND_JOIN_TIMED_OUT = 776, - ERR_BATTLEGROUND_DUPE_QUEUE = 777, - ERR_BATTLEGROUND_JOIN_MUST_COMPLETE_QUEST = 778, - ERR_IN_BATTLEGROUND_RESPEC = 779, - ERR_MAIL_LIMITED_DURATION_ITEM = 780, - ERR_YELL_RESTRICTED_TRIAL = 781, - ERR_CHAT_RAID_RESTRICTED_TRIAL = 782, - ERR_LFG_ROLE_CHECK_FAILED = 783, - ERR_LFG_ROLE_CHECK_FAILED_TIMEOUT = 784, - ERR_LFG_ROLE_CHECK_FAILED_NOT_VIABLE = 785, - ERR_LFG_READY_CHECK_FAILED = 786, - ERR_LFG_READY_CHECK_FAILED_TIMEOUT = 787, - ERR_LFG_GROUP_FULL = 788, - ERR_LFG_NO_LFG_OBJECT = 789, - ERR_LFG_NO_SLOTS_PLAYER = 790, - ERR_LFG_NO_SLOTS_PARTY = 791, - ERR_LFG_NO_SPEC = 792, - ERR_LFG_MISMATCHED_SLOTS = 793, - ERR_LFG_MISMATCHED_SLOTS_LOCAL_XREALM = 794, - ERR_LFG_PARTY_PLAYERS_FROM_DIFFERENT_REALMS = 795, - ERR_LFG_MEMBERS_NOT_PRESENT = 796, - ERR_LFG_GET_INFO_TIMEOUT = 797, - ERR_LFG_INVALID_SLOT = 798, - ERR_LFG_DESERTER_PLAYER = 799, - ERR_LFG_DESERTER_PARTY = 800, - ERR_LFG_DEAD = 801, - ERR_LFG_RANDOM_COOLDOWN_PLAYER = 802, - ERR_LFG_RANDOM_COOLDOWN_PARTY = 803, - ERR_LFG_TOO_MANY_MEMBERS = 804, - ERR_LFG_TOO_FEW_MEMBERS = 805, - ERR_LFG_PROPOSAL_FAILED = 806, - ERR_LFG_PROPOSAL_DECLINED_SELF = 807, - ERR_LFG_PROPOSAL_DECLINED_PARTY = 808, - ERR_LFG_NO_SLOTS_SELECTED = 809, - ERR_LFG_NO_ROLES_SELECTED = 810, - ERR_LFG_ROLE_CHECK_INITIATED = 811, - ERR_LFG_READY_CHECK_INITIATED = 812, - ERR_LFG_PLAYER_DECLINED_ROLE_CHECK = 813, - ERR_LFG_PLAYER_DECLINED_READY_CHECK = 814, - ERR_LFG_JOINED_QUEUE = 815, - ERR_LFG_JOINED_FLEX_QUEUE = 816, - ERR_LFG_JOINED_RF_QUEUE = 817, - ERR_LFG_JOINED_SCENARIO_QUEUE = 818, - ERR_LFG_JOINED_WORLD_PVP_QUEUE = 819, - ERR_LFG_JOINED_BATTLEFIELD_QUEUE = 820, - ERR_LFG_JOINED_LIST = 821, - ERR_LFG_LEFT_QUEUE = 822, - ERR_LFG_LEFT_LIST = 823, - ERR_LFG_ROLE_CHECK_ABORTED = 824, - ERR_LFG_READY_CHECK_ABORTED = 825, - ERR_LFG_CANT_USE_BATTLEGROUND = 826, - ERR_LFG_CANT_USE_DUNGEONS = 827, - ERR_LFG_REASON_TOO_MANY_LFG = 828, - ERR_LFG_FARM_LIMIT = 829, - ERR_LFG_NO_CROSS_FACTION_PARTIES = 830, - ERR_INVALID_TELEPORT_LOCATION = 831, - ERR_TOO_FAR_TO_INTERACT = 832, - ERR_BATTLEGROUND_PLAYERS_FROM_DIFFERENT_REALMS = 833, - ERR_DIFFICULTY_CHANGE_COOLDOWN_S = 834, - ERR_DIFFICULTY_CHANGE_COMBAT_COOLDOWN_S = 835, - ERR_DIFFICULTY_CHANGE_WORLDSTATE = 836, - ERR_DIFFICULTY_CHANGE_ENCOUNTER = 837, - ERR_DIFFICULTY_CHANGE_COMBAT = 838, - ERR_DIFFICULTY_CHANGE_PLAYER_BUSY = 839, - ERR_DIFFICULTY_CHANGE_PLAYER_ON_VEHICLE = 840, - ERR_DIFFICULTY_CHANGE_ALREADY_STARTED = 841, - ERR_DIFFICULTY_CHANGE_OTHER_HEROIC_S = 842, - ERR_DIFFICULTY_CHANGE_HEROIC_INSTANCE_ALREADY_RUNNING = 843, - ERR_ARENA_TEAM_PARTY_SIZE = 844, - ERR_SOLO_SHUFFLE_WARGAME_GROUP_SIZE = 845, - ERR_SOLO_SHUFFLE_WARGAME_GROUP_COMP = 846, - ERR_SOLO_RBG_WARGAME_GROUP_SIZE = 847, - ERR_SOLO_RBG_WARGAME_GROUP_COMP = 848, - ERR_SOLO_MIN_ITEM_LEVEL = 849, - ERR_PVP_PLAYER_ABANDONED = 850, - ERR_BATTLEGROUND_JOIN_GROUP_QUEUE_WITHOUT_HEALER = 851, - ERR_QUEST_FORCE_REMOVED_S = 852, - ERR_ATTACK_NO_ACTIONS = 853, - ERR_IN_RANDOM_BG = 854, - ERR_IN_NON_RANDOM_BG = 855, - ERR_BN_FRIEND_SELF = 856, - ERR_BN_FRIEND_ALREADY = 857, - ERR_BN_FRIEND_BLOCKED = 858, - ERR_BN_FRIEND_LIST_FULL = 859, - ERR_BN_FRIEND_REQUEST_SENT = 860, - ERR_BN_BROADCAST_THROTTLE = 861, - ERR_BG_DEVELOPER_ONLY = 862, - ERR_CURRENCY_SPELL_SLOT_MISMATCH = 863, - ERR_CURRENCY_NOT_TRADABLE = 864, - ERR_REQUIRES_EXPANSION_S = 865, - ERR_QUEST_FAILED_SPELL = 866, - ERR_TALENT_FAILED_UNSPENT_TALENT_POINTS = 867, - ERR_TALENT_FAILED_NOT_ENOUGH_TALENTS_IN_PRIMARY_TREE = 868, - ERR_TALENT_FAILED_NO_PRIMARY_TREE_SELECTED = 869, - ERR_TALENT_FAILED_CANT_REMOVE_TALENT = 870, - ERR_TALENT_FAILED_UNKNOWN = 871, - ERR_TALENT_FAILED_IN_COMBAT = 872, - ERR_TALENT_FAILED_IN_PVP_MATCH = 873, - ERR_TALENT_FAILED_IN_MYTHIC_PLUS = 874, - ERR_WARGAME_REQUEST_FAILURE = 875, - ERR_RANK_REQUIRES_AUTHENTICATOR = 876, - ERR_GUILD_BANK_VOUCHER_FAILED = 877, - ERR_WARGAME_REQUEST_SENT = 878, - ERR_REQUIRES_ACHIEVEMENT_I = 879, - ERR_REFUND_RESULT_EXCEED_MAX_CURRENCY = 880, - ERR_CANT_BUY_QUANTITY = 881, - ERR_ITEM_IS_BATTLE_PAY_LOCKED = 882, - ERR_PARTY_ALREADY_IN_BATTLEGROUND_QUEUE = 883, - ERR_PARTY_CONFIRMING_BATTLEGROUND_QUEUE = 884, - ERR_BATTLEFIELD_TEAM_PARTY_SIZE = 885, - ERR_INSUFF_TRACKED_CURRENCY_IS = 886, - ERR_NOT_ON_TOURNAMENT_REALM = 887, - ERR_GUILD_TRIAL_ACCOUNT_TRIAL = 888, - ERR_GUILD_TRIAL_ACCOUNT_VETERAN = 889, - ERR_GUILD_UNDELETABLE_DUE_TO_LEVEL = 890, - ERR_CANT_DO_THAT_IN_A_GROUP = 891, - ERR_GUILD_LEADER_REPLACED = 892, - ERR_TRANSMOGRIFY_CANT_EQUIP = 893, - ERR_TRANSMOGRIFY_INVALID_ITEM_TYPE = 894, - ERR_TRANSMOGRIFY_NOT_SOULBOUND = 895, - ERR_TRANSMOGRIFY_INVALID_SOURCE = 896, - ERR_TRANSMOGRIFY_INVALID_DESTINATION = 897, - ERR_TRANSMOGRIFY_MISMATCH = 898, - ERR_TRANSMOGRIFY_LEGENDARY = 899, - ERR_TRANSMOGRIFY_SAME_ITEM = 900, - ERR_TRANSMOGRIFY_SAME_APPEARANCE = 901, - ERR_TRANSMOGRIFY_NOT_EQUIPPED = 902, - ERR_VOID_DEPOSIT_FULL = 903, - ERR_VOID_WITHDRAW_FULL = 904, - ERR_VOID_STORAGE_WRAPPED = 905, - ERR_VOID_STORAGE_STACKABLE = 906, - ERR_VOID_STORAGE_UNBOUND = 907, - ERR_VOID_STORAGE_REPAIR = 908, - ERR_VOID_STORAGE_CHARGES = 909, - ERR_VOID_STORAGE_QUEST = 910, - ERR_VOID_STORAGE_CONJURED = 911, - ERR_VOID_STORAGE_MAIL = 912, - ERR_VOID_STORAGE_BAG = 913, - ERR_VOID_TRANSFER_STORAGE_FULL = 914, - ERR_VOID_TRANSFER_INV_FULL = 915, - ERR_VOID_TRANSFER_INTERNAL_ERROR = 916, - ERR_VOID_TRANSFER_ITEM_INVALID = 917, - ERR_DIFFICULTY_DISABLED_IN_LFG = 918, - ERR_VOID_STORAGE_UNIQUE = 919, - ERR_VOID_STORAGE_LOOT = 920, - ERR_VOID_STORAGE_HOLIDAY = 921, - ERR_VOID_STORAGE_DURATION = 922, - ERR_VOID_STORAGE_LOAD_FAILED = 923, - ERR_VOID_STORAGE_INVALID_ITEM = 924, - ERR_VOID_STORAGE_ACCOUNT_ITEM = 925, - ERR_PARENTAL_CONTROLS_CHAT_MUTED = 926, - ERR_SOR_START_EXPERIENCE_INCOMPLETE = 927, - ERR_SOR_INVALID_EMAIL = 928, - ERR_SOR_INVALID_COMMENT = 929, - ERR_CHALLENGE_MODE_RESET_COOLDOWN_S = 930, - ERR_CHALLENGE_MODE_RESET_KEYSTONE = 931, - ERR_PET_JOURNAL_ALREADY_IN_LOADOUT = 932, - ERR_REPORT_SUBMITTED_SUCCESSFULLY = 933, - ERR_REPORT_SUBMISSION_FAILED = 934, - ERR_SUGGESTION_SUBMITTED_SUCCESSFULLY = 935, - ERR_BUG_SUBMITTED_SUCCESSFULLY = 936, - ERR_CHALLENGE_MODE_ENABLED = 937, - ERR_CHALLENGE_MODE_DISABLED = 938, - ERR_PETBATTLE_CREATE_FAILED = 939, - ERR_PETBATTLE_NOT_HERE = 940, - ERR_PETBATTLE_NOT_HERE_ON_TRANSPORT = 941, - ERR_PETBATTLE_NOT_HERE_UNEVEN_GROUND = 942, - ERR_PETBATTLE_NOT_HERE_OBSTRUCTED = 943, - ERR_PETBATTLE_NOT_WHILE_IN_COMBAT = 944, - ERR_PETBATTLE_NOT_WHILE_DEAD = 945, - ERR_PETBATTLE_NOT_WHILE_FLYING = 946, - ERR_PETBATTLE_TARGET_INVALID = 947, - ERR_PETBATTLE_TARGET_OUT_OF_RANGE = 948, - ERR_PETBATTLE_TARGET_NOT_CAPTURABLE = 949, - ERR_PETBATTLE_NOT_A_TRAINER = 950, - ERR_PETBATTLE_DECLINED = 951, - ERR_PETBATTLE_IN_BATTLE = 952, - ERR_PETBATTLE_INVALID_LOADOUT = 953, - ERR_PETBATTLE_ALL_PETS_DEAD = 954, - ERR_PETBATTLE_NO_PETS_IN_SLOTS = 955, - ERR_PETBATTLE_NO_ACCOUNT_LOCK = 956, - ERR_PETBATTLE_WILD_PET_TAPPED = 957, - ERR_PETBATTLE_RESTRICTED_ACCOUNT = 958, - ERR_PETBATTLE_OPPONENT_NOT_AVAILABLE = 959, - ERR_PETBATTLE_NOT_WHILE_IN_MATCHED_BATTLE = 960, - ERR_CANT_HAVE_MORE_PETS_OF_THAT_TYPE = 961, - ERR_CANT_HAVE_MORE_PETS = 962, - ERR_PVP_MAP_NOT_FOUND = 963, - ERR_PVP_MAP_NOT_SET = 964, - ERR_PETBATTLE_QUEUE_QUEUED = 965, - ERR_PETBATTLE_QUEUE_ALREADY_QUEUED = 966, - ERR_PETBATTLE_QUEUE_JOIN_FAILED = 967, - ERR_PETBATTLE_QUEUE_JOURNAL_LOCK = 968, - ERR_PETBATTLE_QUEUE_REMOVED = 969, - ERR_PETBATTLE_QUEUE_PROPOSAL_DECLINED = 970, - ERR_PETBATTLE_QUEUE_PROPOSAL_TIMEOUT = 971, - ERR_PETBATTLE_QUEUE_OPPONENT_DECLINED = 972, - ERR_PETBATTLE_QUEUE_REQUEUED_INTERNAL = 973, - ERR_PETBATTLE_QUEUE_REQUEUED_REMOVED = 974, - ERR_PETBATTLE_QUEUE_SLOT_LOCKED = 975, - ERR_PETBATTLE_QUEUE_SLOT_EMPTY = 976, - ERR_PETBATTLE_QUEUE_SLOT_NO_TRACKER = 977, - ERR_PETBATTLE_QUEUE_SLOT_NO_SPECIES = 978, - ERR_PETBATTLE_QUEUE_SLOT_CANT_BATTLE = 979, - ERR_PETBATTLE_QUEUE_SLOT_REVOKED = 980, - ERR_PETBATTLE_QUEUE_SLOT_DEAD = 981, - ERR_PETBATTLE_QUEUE_SLOT_NO_PET = 982, - ERR_PETBATTLE_QUEUE_NOT_WHILE_NEUTRAL = 983, - ERR_PETBATTLE_GAME_TIME_LIMIT_WARNING = 984, - ERR_PETBATTLE_GAME_ROUNDS_LIMIT_WARNING = 985, - ERR_HAS_RESTRICTION = 986, - ERR_ITEM_UPGRADE_ITEM_TOO_LOW_LEVEL = 987, - ERR_ITEM_UPGRADE_NO_PATH = 988, - ERR_ITEM_UPGRADE_NO_MORE_UPGRADES = 989, - ERR_BONUS_ROLL_EMPTY = 990, - ERR_CHALLENGE_MODE_FULL = 991, - ERR_CHALLENGE_MODE_IN_PROGRESS = 992, - ERR_CHALLENGE_MODE_INCORRECT_KEYSTONE = 993, - ERR_BATTLETAG_FRIEND_NOT_FOUND = 994, - ERR_BATTLETAG_FRIEND_NOT_VALID = 995, - ERR_BATTLETAG_FRIEND_NOT_ALLOWED = 996, - ERR_BATTLETAG_FRIEND_THROTTLED = 997, - ERR_BATTLETAG_FRIEND_SUCCESS = 998, - ERR_PET_TOO_HIGH_LEVEL_TO_UNCAGE = 999, - ERR_PETBATTLE_INTERNAL = 1000, - ERR_CANT_CAGE_PET_YET = 1001, - ERR_NO_LOOT_IN_CHALLENGE_MODE = 1002, - ERR_QUEST_PET_BATTLE_VICTORIES_PVP_II = 1003, - ERR_ROLE_CHECK_ALREADY_IN_PROGRESS = 1004, - ERR_RECRUIT_A_FRIEND_ACCOUNT_LIMIT = 1005, - ERR_RECRUIT_A_FRIEND_FAILED = 1006, - ERR_SET_LOOT_PERSONAL = 1007, - ERR_SET_LOOT_METHOD_FAILED_COMBAT = 1008, - ERR_REAGENT_BANK_FULL = 1009, - ERR_REAGENT_BANK_LOCKED = 1010, - ERR_GARRISON_BUILDING_EXISTS = 1011, - ERR_GARRISON_INVALID_PLOT = 1012, - ERR_GARRISON_INVALID_BUILDINGID = 1013, - ERR_GARRISON_INVALID_PLOT_BUILDING = 1014, - ERR_GARRISON_REQUIRES_BLUEPRINT = 1015, - ERR_GARRISON_NOT_ENOUGH_CURRENCY = 1016, - ERR_GARRISON_NOT_ENOUGH_GOLD = 1017, - ERR_GARRISON_COMPLETE_MISSION_WRONG_FOLLOWER_TYPE = 1018, - ERR_ALREADY_USING_LFG_LIST = 1019, - ERR_RESTRICTED_ACCOUNT_LFG_LIST_TRIAL = 1020, - ERR_TOY_USE_LIMIT_REACHED = 1021, - ERR_TOY_ALREADY_KNOWN = 1022, - ERR_TRANSMOG_SET_ALREADY_KNOWN = 1023, - ERR_NOT_ENOUGH_CURRENCY = 1024, - ERR_SPEC_IS_DISABLED = 1025, - ERR_FEATURE_RESTRICTED_TRIAL = 1026, - ERR_CANT_BE_OBLITERATED = 1027, - ERR_CANT_BE_SCRAPPED = 1028, - ERR_CANT_BE_RECRAFTED = 1029, - ERR_ARTIFACT_RELIC_DOES_NOT_MATCH_ARTIFACT = 1030, - ERR_MUST_EQUIP_ARTIFACT = 1031, - ERR_CANT_DO_THAT_RIGHT_NOW = 1032, - ERR_AFFECTING_COMBAT = 1033, - ERR_EQUIPMENT_MANAGER_COMBAT_SWAP_S = 1034, - ERR_EQUIPMENT_MANAGER_BAGS_FULL = 1035, - ERR_EQUIPMENT_MANAGER_MISSING_ITEM_S = 1036, - ERR_MOVIE_RECORDING_WARNING_PERF = 1037, - ERR_MOVIE_RECORDING_WARNING_DISK_FULL = 1038, - ERR_MOVIE_RECORDING_WARNING_NO_MOVIE = 1039, - ERR_MOVIE_RECORDING_WARNING_REQUIREMENTS = 1040, - ERR_MOVIE_RECORDING_WARNING_COMPRESSING = 1041, - ERR_NO_CHALLENGE_MODE_REWARD = 1042, - ERR_CLAIMED_CHALLENGE_MODE_REWARD = 1043, - ERR_CHALLENGE_MODE_PERIOD_RESET_SS = 1044, - ERR_CANT_DO_THAT_CHALLENGE_MODE_ACTIVE = 1045, - ERR_TALENT_FAILED_REST_AREA = 1046, - ERR_CANNOT_ABANDON_LAST_PET = 1047, - ERR_TEST_CVAR_SET_SSS = 1048, - ERR_QUEST_TURN_IN_FAIL_REASON = 1049, - ERR_CLAIMED_CHALLENGE_MODE_REWARD_OLD = 1050, - ERR_TALENT_GRANTED_BY_AURA = 1051, - ERR_CHALLENGE_MODE_ALREADY_COMPLETE = 1052, - ERR_GLYPH_TARGET_NOT_AVAILABLE = 1053, - ERR_PVP_WARMODE_TOGGLE_ON = 1054, - ERR_PVP_WARMODE_TOGGLE_OFF = 1055, - ERR_SPELL_FAILED_LEVEL_REQUIREMENT = 1056, - ERR_SPELL_FAILED_CANT_FLY_HERE = 1057, - ERR_BATTLEGROUND_JOIN_REQUIRES_LEVEL = 1058, - ERR_BATTLEGROUND_JOIN_DISQUALIFIED = 1059, - ERR_BATTLEGROUND_JOIN_DISQUALIFIED_NO_NAME = 1060, - ERR_VOICE_CHAT_GENERIC_UNABLE_TO_CONNECT = 1061, - ERR_VOICE_CHAT_SERVICE_LOST = 1062, - ERR_VOICE_CHAT_CHANNEL_NAME_TOO_SHORT = 1063, - ERR_VOICE_CHAT_CHANNEL_NAME_TOO_LONG = 1064, - ERR_VOICE_CHAT_CHANNEL_ALREADY_EXISTS = 1065, - ERR_VOICE_CHAT_TARGET_NOT_FOUND = 1066, - ERR_VOICE_CHAT_TOO_MANY_REQUESTS = 1067, - ERR_VOICE_CHAT_PLAYER_SILENCED = 1068, - ERR_VOICE_CHAT_PARENTAL_DISABLE_ALL = 1069, - ERR_VOICE_CHAT_DISABLED = 1070, - ERR_NO_PVP_REWARD = 1071, - ERR_CLAIMED_PVP_REWARD = 1072, - ERR_AZERITE_ESSENCE_SELECTION_FAILED_ESSENCE_NOT_UNLOCKED = 1073, - ERR_AZERITE_ESSENCE_SELECTION_FAILED_CANT_REMOVE_ESSENCE = 1074, - ERR_AZERITE_ESSENCE_SELECTION_FAILED_CONDITION_FAILED = 1075, - ERR_AZERITE_ESSENCE_SELECTION_FAILED_REST_AREA = 1076, - ERR_AZERITE_ESSENCE_SELECTION_FAILED_SLOT_LOCKED = 1077, - ERR_AZERITE_ESSENCE_SELECTION_FAILED_NOT_AT_FORGE = 1078, - ERR_AZERITE_ESSENCE_SELECTION_FAILED_HEART_LEVEL_TOO_LOW = 1079, - ERR_AZERITE_ESSENCE_SELECTION_FAILED_NOT_EQUIPPED = 1080, - ERR_SOCKETING_REQUIRES_PUNCHCARDRED_GEM = 1081, - ERR_SOCKETING_PUNCHCARDRED_GEM_ONLY_IN_PUNCHCARDREDSLOT = 1082, - ERR_SOCKETING_REQUIRES_PUNCHCARDYELLOW_GEM = 1083, - ERR_SOCKETING_PUNCHCARDYELLOW_GEM_ONLY_IN_PUNCHCARDYELLOWSLOT = 1084, - ERR_SOCKETING_REQUIRES_PUNCHCARDBLUE_GEM = 1085, - ERR_SOCKETING_PUNCHCARDBLUE_GEM_ONLY_IN_PUNCHCARDBLUESLOT = 1086, - ERR_SOCKETING_REQUIRES_DOMINATION_SHARD = 1087, - ERR_SOCKETING_DOMINATION_SHARD_ONLY_IN_DOMINATIONSLOT = 1088, - ERR_SOCKETING_REQUIRES_CYPHER_GEM = 1089, - ERR_SOCKETING_CYPHER_GEM_ONLY_IN_CYPHERSLOT = 1090, - ERR_SOCKETING_REQUIRES_TINKER_GEM = 1091, - ERR_SOCKETING_TINKER_GEM_ONLY_IN_TINKERSLOT = 1092, - ERR_SOCKETING_REQUIRES_PRIMORDIAL_GEM = 1093, - ERR_SOCKETING_PRIMORDIAL_GEM_ONLY_IN_PRIMORDIALSLOT = 1094, - ERR_SOCKETING_REQUIRES_FRAGRANCE_GEM = 1095, - ERR_SOCKETING_FRAGRANCE_GEM_ONLY_IN_FRAGRANCESLOT = 1096, - ERR_LEVEL_LINKING_RESULT_LINKED = 1097, - ERR_LEVEL_LINKING_RESULT_UNLINKED = 1098, - ERR_CLUB_FINDER_ERROR_POST_CLUB = 1099, - ERR_CLUB_FINDER_ERROR_APPLY_CLUB = 1100, - ERR_CLUB_FINDER_ERROR_RESPOND_APPLICANT = 1101, - ERR_CLUB_FINDER_ERROR_CANCEL_APPLICATION = 1102, - ERR_CLUB_FINDER_ERROR_TYPE_ACCEPT_APPLICATION = 1103, - ERR_CLUB_FINDER_ERROR_TYPE_NO_INVITE_PERMISSIONS = 1104, - ERR_CLUB_FINDER_ERROR_TYPE_NO_POSTING_PERMISSIONS = 1105, - ERR_CLUB_FINDER_ERROR_TYPE_APPLICANT_LIST = 1106, - ERR_CLUB_FINDER_ERROR_TYPE_APPLICANT_LIST_NO_PERM = 1107, - ERR_CLUB_FINDER_ERROR_TYPE_FINDER_NOT_AVAILABLE = 1108, - ERR_CLUB_FINDER_ERROR_TYPE_GET_POSTING_IDS = 1109, - ERR_CLUB_FINDER_ERROR_TYPE_JOIN_APPLICATION = 1110, - ERR_CLUB_FINDER_ERROR_TYPE_REALM_NOT_ELIGIBLE = 1111, - ERR_CLUB_FINDER_ERROR_TYPE_FLAGGED_RENAME = 1112, - ERR_CLUB_FINDER_ERROR_TYPE_FLAGGED_DESCRIPTION_CHANGE = 1113, - ERR_ITEM_INTERACTION_NOT_ENOUGH_GOLD = 1114, - ERR_ITEM_INTERACTION_NOT_ENOUGH_CURRENCY = 1115, - ERR_ITEM_INTERACTION_NO_CONVERSION_OUTPUT = 1116, - ERR_PLAYER_CHOICE_ERROR_PENDING_CHOICE = 1117, - ERR_SOULBIND_INVALID_CONDUIT = 1118, - ERR_SOULBIND_INVALID_CONDUIT_ITEM = 1119, - ERR_SOULBIND_INVALID_TALENT = 1120, - ERR_SOULBIND_DUPLICATE_CONDUIT = 1121, - ERR_ACTIVATE_SOULBIND_S = 1122, - ERR_ACTIVATE_SOULBIND_FAILED_REST_AREA = 1123, - ERR_CANT_USE_PROFANITY = 1124, - ERR_NOT_IN_PET_BATTLE = 1125, - ERR_NOT_IN_NPE = 1126, - ERR_NO_SPEC = 1127, - ERR_NO_DOMINATIONSHARD_OVERWRITE = 1128, - ERR_USE_WEEKLY_REWARDS_DISABLED = 1129, - ERR_CROSS_FACTION_GROUP_JOINED = 1130, - ERR_CANT_TARGET_UNFRIENDLY_IN_OVERWORLD = 1131, - ERR_EQUIPABLESPELLS_SLOTS_FULL = 1132, - ERR_ITEM_MOD_APPEARANCE_GROUP_ALREADY_KNOWN = 1133, - ERR_CANT_BULK_SELL_ITEM_WITH_REFUND = 1134, - ERR_NO_SOULBOUND_ITEM_IN_ACCOUNT_BANK = 1135, - ERR_NO_REFUNDABLE_ITEM_IN_ACCOUNT_BANK = 1136, - ERR_CANT_DELETE_IN_ACCOUNT_BANK = 1137, - ERR_NO_IMMEDIATE_CONTAINER_IN_ACCOUNT_BANK = 1138, - ERR_NO_OPEN_IMMEDIATE_CONTAINER_IN_ACCOUNT_BANK = 1139, - ERR_NO_ACCOUNT_INVENTORY_LOCK = 1140, - ERR_TOO_MANY_ACCOUNT_BANK_TABS = 1141, - ERR_ACCOUNT_BANK_TAB_NOT_UNLOCKED = 1142, - ERR_BANK_TAB_INVALID_NAME = 1143, - ERR_BANK_TAB_INVALID_TEXT = 1144, - ERR_WOW_LABS_PARTY_ERROR_TYPE_PARTY_IS_FULL = 1145, - ERR_WOW_LABS_PARTY_ERROR_TYPE_MAX_INVITE_SENT = 1146, - ERR_WOW_LABS_PARTY_ERROR_TYPE_PLAYER_ALREADY_INVITED = 1147, - ERR_WOW_LABS_PARTY_ERROR_TYPE_PARTY_INVITE_INVALID = 1148, - ERR_WOW_LABS_LOBBY_MATCHMAKER_ERROR_ENTER_QUEUE_FAILED = 1149, - ERR_WOW_LABS_LOBBY_MATCHMAKER_ERROR_LEAVE_QUEUE_FAILED = 1150, - ERR_TARGET_IS_SELF_FOUND_CANNOT_TRADE = 1151, - ERR_PLAYER_IS_SELF_FOUND_CANNOT_TRADE = 1152, - ERR_MAIL_RECEPIENT_IS_SELF_FOUND_CANNOT_RECEIVE_MAIL = 1153, - ERR_PLAYER_IS_SELF_FOUND_CANNOT_SEND_MAIL = 1154, - ERR_PLAYER_IS_SELF_FOUND_CANNOT_USE_AUCTION_HOUSE = 1155, - ERR_MAIL_TARGET_CANNOT_RECEIVE_MAIL = 1156, - ERR_REMIX_INVALID_TRANSFER_REQUEST = 1157, - ERR_CURRENCY_TRANSFER_INVALID_CHARACTER = 1158, - ERR_CURRENCY_TRANSFER_INVALID_CURRENCY = 1159, - ERR_CURRENCY_TRANSFER_INSUFFICIENT_CURRENCY = 1160, - ERR_CURRENCY_TRANSFER_MAX_QUANTITY = 1161, - ERR_CURRENCY_TRANSFER_NO_VALID_SOURCE = 1162, - ERR_CURRENCY_TRANSFER_CHARACTER_LOGGED_IN = 1163, - ERR_CURRENCY_TRANSFER_SERVER_ERROR = 1164, - ERR_CURRENCY_TRANSFER_UNMET_REQUIREMENTS = 1165, + ERR_GUILD_BANK_WARBANDS_BANK_SOURCE = 165, + ERR_GUILD_NEW_LEADER_WRONG_REALM = 166, + ERR_NO_GUILD_CHARTER = 167, + ERR_OUT_OF_RANGE = 168, + ERR_PLAYER_DEAD = 169, + ERR_CLIENT_LOCKED_OUT = 170, + ERR_CLIENT_ON_TRANSPORT = 171, + ERR_KILLED_BY_S = 172, + ERR_LOOT_LOCKED = 173, + ERR_LOOT_TOO_FAR = 174, + ERR_LOOT_DIDNT_KILL = 175, + ERR_LOOT_BAD_FACING = 176, + ERR_LOOT_NOTSTANDING = 177, + ERR_LOOT_STUNNED = 178, + ERR_LOOT_NO_UI = 179, + ERR_LOOT_WHILE_INVULNERABLE = 180, + ERR_NO_LOOT = 181, + ERR_QUEST_ACCEPTED_S = 182, + ERR_QUEST_COMPLETE_S = 183, + ERR_QUEST_FAILED_S = 184, + ERR_QUEST_FAILED_BAG_FULL_S = 185, + ERR_QUEST_FAILED_MAX_COUNT_S = 186, + ERR_QUEST_FAILED_LOW_LEVEL = 187, + ERR_QUEST_FAILED_MISSING_ITEMS = 188, + ERR_QUEST_FAILED_WRONG_RACE = 189, + ERR_QUEST_FAILED_NOT_ENOUGH_MONEY = 190, + ERR_QUEST_FAILED_EXPANSION = 191, + ERR_QUEST_ONLY_ONE_TIMED = 192, + ERR_QUEST_NEED_PREREQS = 193, + ERR_QUEST_NEED_PREREQS_CUSTOM = 194, + ERR_QUEST_ALREADY_ON = 195, + ERR_QUEST_ALREADY_DONE = 196, + ERR_QUEST_ALREADY_DONE_DAILY = 197, + ERR_QUEST_HAS_IN_PROGRESS = 198, + ERR_QUEST_REWARD_EXP_I = 199, + ERR_QUEST_REWARD_MONEY_S = 200, + ERR_QUEST_MUST_CHOOSE = 201, + ERR_QUEST_LOG_FULL = 202, + ERR_COMBAT_DAMAGE_SSI = 203, + ERR_INSPECT_S = 204, + ERR_CANT_USE_ITEM = 205, + ERR_CANT_USE_ITEM_IN_ARENA = 206, + ERR_CANT_USE_ITEM_IN_RATED_BATTLEGROUND = 207, + ERR_MUST_EQUIP_ITEM = 208, + ERR_PASSIVE_ABILITY = 209, + ERR_2HSKILLNOTFOUND = 210, + ERR_NO_ATTACK_TARGET = 211, + ERR_INVALID_ATTACK_TARGET = 212, + ERR_ATTACK_PVP_TARGET_WHILE_UNFLAGGED = 213, + ERR_ATTACK_STUNNED = 214, + ERR_ATTACK_PACIFIED = 215, + ERR_ATTACK_MOUNTED = 216, + ERR_ATTACK_FLEEING = 217, + ERR_ATTACK_CONFUSED = 218, + ERR_ATTACK_CHARMED = 219, + ERR_ATTACK_DEAD = 220, + ERR_ATTACK_PREVENTED_BY_MECHANIC_S = 221, + ERR_ATTACK_CHANNEL = 222, + ERR_TAXISAMENODE = 223, + ERR_TAXINOSUCHPATH = 224, + ERR_TAXIUNSPECIFIEDSERVERERROR = 225, + ERR_TAXINOTENOUGHMONEY = 226, + ERR_TAXITOOFARAWAY = 227, + ERR_TAXINOVENDORNEARBY = 228, + ERR_TAXINOTVISITED = 229, + ERR_TAXIPLAYERBUSY = 230, + ERR_TAXIPLAYERALREADYMOUNTED = 231, + ERR_TAXIPLAYERSHAPESHIFTED = 232, + ERR_TAXIPLAYERMOVING = 233, + ERR_TAXINOPATHS = 234, + ERR_TAXINOTELIGIBLE = 235, + ERR_TAXINOTSTANDING = 236, + ERR_TAXIINCOMBAT = 237, + ERR_NO_REPLY_TARGET = 238, + ERR_GENERIC_NO_TARGET = 239, + ERR_INITIATE_TRADE_S = 240, + ERR_TRADE_REQUEST_S = 241, + ERR_TRADE_BLOCKED_S = 242, + ERR_TRADE_TARGET_DEAD = 243, + ERR_TRADE_TOO_FAR = 244, + ERR_TRADE_CANCELLED = 245, + ERR_TRADE_COMPLETE = 246, + ERR_TRADE_BAG_FULL = 247, + ERR_TRADE_TARGET_BAG_FULL = 248, + ERR_TRADE_MAX_COUNT_EXCEEDED = 249, + ERR_TRADE_TARGET_MAX_COUNT_EXCEEDED = 250, + ERR_INVENTORY_TRADE_TOO_MANY_UNIQUE_ITEM = 251, + ERR_ALREADY_TRADING = 252, + ERR_MOUNT_INVALIDMOUNTEE = 253, + ERR_MOUNT_TOOFARAWAY = 254, + ERR_MOUNT_ALREADYMOUNTED = 255, + ERR_MOUNT_NOTMOUNTABLE = 256, + ERR_MOUNT_NOTYOURPET = 257, + ERR_MOUNT_OTHER = 258, + ERR_MOUNT_LOOTING = 259, + ERR_MOUNT_RACECANTMOUNT = 260, + ERR_MOUNT_SHAPESHIFTED = 261, + ERR_MOUNT_NO_FAVORITES = 262, + ERR_MOUNT_NO_MOUNTS = 263, + ERR_DISMOUNT_NOPET = 264, + ERR_DISMOUNT_NOTMOUNTED = 265, + ERR_DISMOUNT_NOTYOURPET = 266, + ERR_SPELL_FAILED_TOTEMS = 267, + ERR_SPELL_FAILED_REAGENTS = 268, + ERR_SPELL_FAILED_REAGENTS_GENERIC = 269, + ERR_SPELL_FAILED_OPTIONAL_REAGENTS = 270, + ERR_CANT_TRADE_GOLD = 271, + ERR_SPELL_FAILED_EQUIPPED_ITEM = 272, + ERR_SPELL_FAILED_EQUIPPED_ITEM_CLASS_S = 273, + ERR_SPELL_FAILED_SHAPESHIFT_FORM_S = 274, + ERR_SPELL_FAILED_ANOTHER_IN_PROGRESS = 275, + ERR_BADATTACKFACING = 276, + ERR_BADATTACKPOS = 277, + ERR_CHEST_IN_USE = 278, + ERR_USE_CANT_OPEN = 279, + ERR_USE_LOCKED = 280, + ERR_DOOR_LOCKED = 281, + ERR_BUTTON_LOCKED = 282, + ERR_USE_LOCKED_WITH_ITEM_S = 283, + ERR_USE_LOCKED_WITH_SPELL_S = 284, + ERR_USE_LOCKED_WITH_SPELL_KNOWN_SI = 285, + ERR_USE_TOO_FAR = 286, + ERR_USE_BAD_ANGLE = 287, + ERR_USE_OBJECT_MOVING = 288, + ERR_USE_SPELL_FOCUS = 289, + ERR_USE_DESTROYED = 290, + ERR_SET_LOOT_FREEFORALL = 291, + ERR_SET_LOOT_ROUNDROBIN = 292, + ERR_SET_LOOT_MASTER = 293, + ERR_SET_LOOT_GROUP = 294, + ERR_SET_LOOT_THRESHOLD_S = 295, + ERR_NEW_LOOT_MASTER_S = 296, + ERR_SPECIFY_MASTER_LOOTER = 297, + ERR_LOOT_SPEC_CHANGED_S = 298, + ERR_TAME_FAILED = 299, + ERR_CHAT_WHILE_DEAD = 300, + ERR_CHAT_PLAYER_NOT_FOUND_S = 301, + ERR_NEWTAXIPATH = 302, + ERR_NO_PET = 303, + ERR_NOTYOURPET = 304, + ERR_PET_NOT_RENAMEABLE = 305, + ERR_QUEST_OBJECTIVE_COMPLETE_S = 306, + ERR_QUEST_UNKNOWN_COMPLETE = 307, + ERR_QUEST_ADD_KILL_SII = 308, + ERR_QUEST_ADD_FOUND_SII = 309, + ERR_QUEST_ADD_ITEM_SII = 310, + ERR_QUEST_ADD_PLAYER_KILL_SII = 311, + ERR_CANNOTCREATEDIRECTORY = 312, + ERR_CANNOTCREATEFILE = 313, + ERR_PLAYER_WRONG_FACTION = 314, + ERR_PLAYER_IS_NEUTRAL = 315, + ERR_BANKSLOT_FAILED_TOO_MANY = 316, + ERR_BANKSLOT_INSUFFICIENT_FUNDS = 317, + ERR_BANKSLOT_NOTBANKER = 318, + ERR_FRIEND_DB_ERROR = 319, + ERR_FRIEND_LIST_FULL = 320, + ERR_FRIEND_ADDED_S = 321, + ERR_BATTLETAG_FRIEND_ADDED_S = 322, + ERR_FRIEND_ONLINE_SS = 323, + ERR_FRIEND_OFFLINE_S = 324, + ERR_FRIEND_NOT_FOUND = 325, + ERR_FRIEND_WRONG_FACTION = 326, + ERR_FRIEND_REMOVED_S = 327, + ERR_BATTLETAG_FRIEND_REMOVED_S = 328, + ERR_FRIEND_ERROR = 329, + ERR_FRIEND_ALREADY_S = 330, + ERR_FRIEND_SELF = 331, + ERR_FRIEND_DELETED = 332, + ERR_IGNORE_FULL = 333, + ERR_IGNORE_SELF = 334, + ERR_IGNORE_NOT_FOUND = 335, + ERR_IGNORE_ALREADY_S = 336, + ERR_IGNORE_ADDED_S = 337, + ERR_IGNORE_REMOVED_S = 338, + ERR_IGNORE_AMBIGUOUS = 339, + ERR_IGNORE_DELETED = 340, + ERR_ONLY_ONE_BOLT = 341, + ERR_ONLY_ONE_AMMO = 342, + ERR_SPELL_FAILED_EQUIPPED_SPECIFIC_ITEM = 343, + ERR_WRONG_BAG_TYPE_SUBCLASS = 344, + ERR_CANT_WRAP_STACKABLE = 345, + ERR_CANT_WRAP_EQUIPPED = 346, + ERR_CANT_WRAP_WRAPPED = 347, + ERR_CANT_WRAP_BOUND = 348, + ERR_CANT_WRAP_UNIQUE = 349, + ERR_CANT_WRAP_BAGS = 350, + ERR_OUT_OF_MANA = 351, + ERR_OUT_OF_RAGE = 352, + ERR_OUT_OF_FOCUS = 353, + ERR_OUT_OF_ENERGY = 354, + ERR_OUT_OF_CHI = 355, + ERR_OUT_OF_HEALTH = 356, + ERR_OUT_OF_RUNES = 357, + ERR_OUT_OF_RUNIC_POWER = 358, + ERR_OUT_OF_SOUL_SHARDS = 359, + ERR_OUT_OF_LUNAR_POWER = 360, + ERR_OUT_OF_HOLY_POWER = 361, + ERR_OUT_OF_MAELSTROM = 362, + ERR_OUT_OF_COMBO_POINTS = 363, + ERR_OUT_OF_INSANITY = 364, + ERR_OUT_OF_ESSENCE = 365, + ERR_OUT_OF_ARCANE_CHARGES = 366, + ERR_OUT_OF_FURY = 367, + ERR_OUT_OF_PAIN = 368, + ERR_OUT_OF_POWER_DISPLAY = 369, + ERR_LOOT_GONE = 370, + ERR_MOUNT_FORCEDDISMOUNT = 371, + ERR_AUTOFOLLOW_TOO_FAR = 372, + ERR_UNIT_NOT_FOUND = 373, + ERR_INVALID_FOLLOW_TARGET = 374, + ERR_INVALID_FOLLOW_PVP_COMBAT = 375, + ERR_INVALID_FOLLOW_TARGET_PVP_COMBAT = 376, + ERR_INVALID_INSPECT_TARGET = 377, + ERR_GUILDEMBLEM_SUCCESS = 378, + ERR_GUILDEMBLEM_INVALID_TABARD_COLORS = 379, + ERR_GUILDEMBLEM_NOGUILD = 380, + ERR_GUILDEMBLEM_NOTGUILDMASTER = 381, + ERR_GUILDEMBLEM_NOTENOUGHMONEY = 382, + ERR_GUILDEMBLEM_INVALIDVENDOR = 383, + ERR_EMBLEMERROR_NOTABARDGEOSET = 384, + ERR_SPELL_OUT_OF_RANGE = 385, + ERR_COMMAND_NEEDS_TARGET = 386, + ERR_NOAMMO_S = 387, + ERR_TOOBUSYTOFOLLOW = 388, + ERR_DUEL_REQUESTED = 389, + ERR_DUEL_CANCELLED = 390, + ERR_DEATHBINDALREADYBOUND = 391, + ERR_DEATHBIND_SUCCESS_S = 392, + ERR_NOEMOTEWHILERUNNING = 393, + ERR_ZONE_EXPLORED = 394, + ERR_ZONE_EXPLORED_XP = 395, + ERR_INVALID_ITEM_TARGET = 396, + ERR_INVALID_QUEST_TARGET = 397, + ERR_IGNORING_YOU_S = 398, + ERR_FISH_NOT_HOOKED = 399, + ERR_FISH_ESCAPED = 400, + ERR_SPELL_FAILED_NOTUNSHEATHED = 401, + ERR_PETITION_OFFERED_S = 402, + ERR_PETITION_SIGNED = 403, + ERR_PETITION_SIGNED_S = 404, + ERR_PETITION_DECLINED_S = 405, + ERR_PETITION_ALREADY_SIGNED = 406, + ERR_PETITION_RESTRICTED_ACCOUNT_TRIAL = 407, + ERR_PETITION_ALREADY_SIGNED_OTHER = 408, + ERR_PETITION_IN_GUILD = 409, + ERR_PETITION_CREATOR = 410, + ERR_PETITION_NOT_ENOUGH_SIGNATURES = 411, + ERR_PETITION_NOT_SAME_SERVER = 412, + ERR_PETITION_FULL = 413, + ERR_PETITION_ALREADY_SIGNED_BY_S = 414, + ERR_GUILD_NAME_INVALID = 415, + ERR_SPELL_UNLEARNED_S = 416, + ERR_PET_SPELL_ROOTED = 417, + ERR_PET_SPELL_AFFECTING_COMBAT = 418, + ERR_PET_SPELL_OUT_OF_RANGE = 419, + ERR_PET_SPELL_NOT_BEHIND = 420, + ERR_PET_SPELL_TARGETS_DEAD = 421, + ERR_PET_SPELL_DEAD = 422, + ERR_PET_SPELL_NOPATH = 423, + ERR_ITEM_CANT_BE_DESTROYED = 424, + ERR_TICKET_ALREADY_EXISTS = 425, + ERR_TICKET_CREATE_ERROR = 426, + ERR_TICKET_UPDATE_ERROR = 427, + ERR_TICKET_DB_ERROR = 428, + ERR_TICKET_NO_TEXT = 429, + ERR_TICKET_TEXT_TOO_LONG = 430, + ERR_OBJECT_IS_BUSY = 431, + ERR_EXHAUSTION_WELLRESTED = 432, + ERR_EXHAUSTION_RESTED = 433, + ERR_EXHAUSTION_NORMAL = 434, + ERR_EXHAUSTION_TIRED = 435, + ERR_EXHAUSTION_EXHAUSTED = 436, + ERR_NO_ITEMS_WHILE_SHAPESHIFTED = 437, + ERR_CANT_INTERACT_SHAPESHIFTED = 438, + ERR_REALM_NOT_FOUND = 439, + ERR_MAIL_QUEST_ITEM = 440, + ERR_MAIL_BOUND_ITEM = 441, + ERR_MAIL_CONJURED_ITEM = 442, + ERR_MAIL_BAG = 443, + ERR_MAIL_TO_SELF = 444, + ERR_MAIL_TARGET_NOT_FOUND = 445, + ERR_MAIL_DATABASE_ERROR = 446, + ERR_MAIL_DELETE_ITEM_ERROR = 447, + ERR_MAIL_WRAPPED_COD = 448, + ERR_MAIL_CANT_SEND_REALM = 449, + ERR_MAIL_TEMP_RETURN_OUTAGE = 450, + ERR_MAIL_RECEPIENT_CANT_RECEIVE_MAIL = 451, + ERR_MAIL_SENT = 452, + ERR_MAIL_TARGET_IS_TRIAL = 453, + ERR_NOT_HAPPY_ENOUGH = 454, + ERR_USE_CANT_IMMUNE = 455, + ERR_CANT_BE_DISENCHANTED = 456, + ERR_CANT_USE_DISARMED = 457, + ERR_AUCTION_DATABASE_ERROR = 458, + ERR_AUCTION_HIGHER_BID = 459, + ERR_AUCTION_ALREADY_BID = 460, + ERR_AUCTION_OUTBID_S = 461, + ERR_AUCTION_WON_S = 462, + ERR_AUCTION_REMOVED_S = 463, + ERR_AUCTION_BID_PLACED = 464, + ERR_LOGOUT_FAILED = 465, + ERR_QUEST_PUSH_SUCCESS_S = 466, + ERR_QUEST_PUSH_INVALID_S = 467, + ERR_QUEST_PUSH_INVALID_TO_RECIPIENT_S = 468, + ERR_QUEST_PUSH_ACCEPTED_S = 469, + ERR_QUEST_PUSH_DECLINED_S = 470, + ERR_QUEST_PUSH_BUSY_S = 471, + ERR_QUEST_PUSH_DEAD_S = 472, + ERR_QUEST_PUSH_DEAD_TO_RECIPIENT_S = 473, + ERR_QUEST_PUSH_LOG_FULL_S = 474, + ERR_QUEST_PUSH_LOG_FULL_TO_RECIPIENT_S = 475, + ERR_QUEST_PUSH_ONQUEST_S = 476, + ERR_QUEST_PUSH_ONQUEST_TO_RECIPIENT_S = 477, + ERR_QUEST_PUSH_ALREADY_DONE_S = 478, + ERR_QUEST_PUSH_ALREADY_DONE_TO_RECIPIENT_S = 479, + ERR_QUEST_PUSH_NOT_DAILY_S = 480, + ERR_QUEST_PUSH_TIMER_EXPIRED_S = 481, + ERR_QUEST_PUSH_NOT_IN_PARTY_S = 482, + ERR_QUEST_PUSH_DIFFERENT_SERVER_DAILY_S = 483, + ERR_QUEST_PUSH_DIFFERENT_SERVER_DAILY_TO_RECIPIENT_S = 484, + ERR_QUEST_PUSH_NOT_ALLOWED_S = 485, + ERR_QUEST_PUSH_PREREQUISITE_S = 486, + ERR_QUEST_PUSH_PREREQUISITE_TO_RECIPIENT_S = 487, + ERR_QUEST_PUSH_LOW_LEVEL_S = 488, + ERR_QUEST_PUSH_LOW_LEVEL_TO_RECIPIENT_S = 489, + ERR_QUEST_PUSH_HIGH_LEVEL_S = 490, + ERR_QUEST_PUSH_HIGH_LEVEL_TO_RECIPIENT_S = 491, + ERR_QUEST_PUSH_CLASS_S = 492, + ERR_QUEST_PUSH_CLASS_TO_RECIPIENT_S = 493, + ERR_QUEST_PUSH_RACE_S = 494, + ERR_QUEST_PUSH_RACE_TO_RECIPIENT_S = 495, + ERR_QUEST_PUSH_LOW_FACTION_S = 496, + ERR_QUEST_PUSH_LOW_FACTION_TO_RECIPIENT_S = 497, + ERR_QUEST_PUSH_HIGH_FACTION_S = 498, + ERR_QUEST_PUSH_HIGH_FACTION_TO_RECIPIENT_S = 499, + ERR_QUEST_PUSH_EXPANSION_S = 500, + ERR_QUEST_PUSH_EXPANSION_TO_RECIPIENT_S = 501, + ERR_QUEST_PUSH_NOT_GARRISON_OWNER_S = 502, + ERR_QUEST_PUSH_NOT_GARRISON_OWNER_TO_RECIPIENT_S = 503, + ERR_QUEST_PUSH_WRONG_COVENANT_S = 504, + ERR_QUEST_PUSH_WRONG_COVENANT_TO_RECIPIENT_S = 505, + ERR_QUEST_PUSH_NEW_PLAYER_EXPERIENCE_S = 506, + ERR_QUEST_PUSH_NEW_PLAYER_EXPERIENCE_TO_RECIPIENT_S = 507, + ERR_QUEST_PUSH_WRONG_FACTION_S = 508, + ERR_QUEST_PUSH_WRONG_FACTION_TO_RECIPIENT_S = 509, + ERR_QUEST_PUSH_CROSS_FACTION_RESTRICTED_S = 510, + ERR_RAID_GROUP_LOWLEVEL = 511, + ERR_RAID_GROUP_ONLY = 512, + ERR_RAID_GROUP_FULL = 513, + ERR_RAID_GROUP_REQUIREMENTS_UNMATCH = 514, + ERR_CORPSE_IS_NOT_IN_INSTANCE = 515, + ERR_PVP_KILL_HONORABLE = 516, + ERR_PVP_KILL_DISHONORABLE = 517, + ERR_SPELL_FAILED_ALREADY_AT_FULL_HEALTH = 518, + ERR_SPELL_FAILED_ALREADY_AT_FULL_MANA = 519, + ERR_SPELL_FAILED_ALREADY_AT_FULL_POWER_S = 520, + ERR_AUTOLOOT_MONEY_S = 521, + ERR_GENERIC_STUNNED = 522, + ERR_GENERIC_THROTTLE = 523, + ERR_CLUB_FINDER_SEARCHING_TOO_FAST = 524, + ERR_TARGET_STUNNED = 525, + ERR_MUST_REPAIR_DURABILITY = 526, + ERR_RAID_YOU_JOINED = 527, + ERR_RAID_YOU_LEFT = 528, + ERR_INSTANCE_GROUP_JOINED_WITH_PARTY = 529, + ERR_INSTANCE_GROUP_JOINED_WITH_RAID = 530, + ERR_RAID_MEMBER_ADDED_S = 531, + ERR_RAID_MEMBER_REMOVED_S = 532, + ERR_INSTANCE_GROUP_ADDED_S = 533, + ERR_INSTANCE_GROUP_REMOVED_S = 534, + ERR_CLICK_ON_ITEM_TO_FEED = 535, + ERR_TOO_MANY_CHAT_CHANNELS = 536, + ERR_LOOT_ROLL_PENDING = 537, + ERR_LOOT_PLAYER_NOT_FOUND = 538, + ERR_NOT_IN_RAID = 539, + ERR_LOGGING_OUT = 540, + ERR_TARGET_LOGGING_OUT = 541, + ERR_NOT_WHILE_MOUNTED = 542, + ERR_NOT_WHILE_SHAPESHIFTED = 543, + ERR_NOT_IN_COMBAT = 544, + ERR_NOT_WHILE_DISARMED = 545, + ERR_PET_BROKEN = 546, + ERR_TALENT_WIPE_ERROR = 547, + ERR_SPEC_WIPE_ERROR = 548, + ERR_GLYPH_WIPE_ERROR = 549, + ERR_PET_SPEC_WIPE_ERROR = 550, + ERR_FEIGN_DEATH_RESISTED = 551, + ERR_MEETING_STONE_IN_QUEUE_S = 552, + ERR_MEETING_STONE_LEFT_QUEUE_S = 553, + ERR_MEETING_STONE_OTHER_MEMBER_LEFT = 554, + ERR_MEETING_STONE_PARTY_KICKED_FROM_QUEUE = 555, + ERR_MEETING_STONE_MEMBER_STILL_IN_QUEUE = 556, + ERR_MEETING_STONE_SUCCESS = 557, + ERR_MEETING_STONE_IN_PROGRESS = 558, + ERR_MEETING_STONE_MEMBER_ADDED_S = 559, + ERR_MEETING_STONE_GROUP_FULL = 560, + ERR_MEETING_STONE_NOT_LEADER = 561, + ERR_MEETING_STONE_INVALID_LEVEL = 562, + ERR_MEETING_STONE_TARGET_NOT_IN_PARTY = 563, + ERR_MEETING_STONE_TARGET_INVALID_LEVEL = 564, + ERR_MEETING_STONE_MUST_BE_LEADER = 565, + ERR_MEETING_STONE_NO_RAID_GROUP = 566, + ERR_MEETING_STONE_NEED_PARTY = 567, + ERR_MEETING_STONE_NOT_FOUND = 568, + ERR_MEETING_STONE_TARGET_IN_VEHICLE = 569, + ERR_GUILDEMBLEM_SAME = 570, + ERR_EQUIP_TRADE_ITEM = 571, + ERR_PVP_TOGGLE_ON = 572, + ERR_PVP_TOGGLE_OFF = 573, + ERR_GROUP_JOIN_BATTLEGROUND_DESERTERS = 574, + ERR_GROUP_JOIN_BATTLEGROUND_DEAD = 575, + ERR_GROUP_JOIN_BATTLEGROUND_S = 576, + ERR_GROUP_JOIN_BATTLEGROUND_FAIL = 577, + ERR_GROUP_JOIN_BATTLEGROUND_TOO_MANY = 578, + ERR_SOLO_JOIN_BATTLEGROUND_S = 579, + ERR_JOIN_SINGLE_SCENARIO_S = 580, + ERR_BATTLEGROUND_TOO_MANY_QUEUES = 581, + ERR_BATTLEGROUND_CANNOT_QUEUE_FOR_RATED = 582, + ERR_BATTLEDGROUND_QUEUED_FOR_RATED = 583, + ERR_BATTLEGROUND_TEAM_LEFT_QUEUE = 584, + ERR_BATTLEGROUND_NOT_IN_BATTLEGROUND = 585, + ERR_ALREADY_IN_ARENA_TEAM_S = 586, + ERR_INVALID_PROMOTION_CODE = 587, + ERR_BG_PLAYER_JOINED_SS = 588, + ERR_BG_PLAYER_LEFT_S = 589, + ERR_RESTRICTED_ACCOUNT = 590, + ERR_RESTRICTED_ACCOUNT_TRIAL = 591, + ERR_NOT_ENOUGH_PURCHASED_GAME_TIME = 592, + ERR_PLAY_TIME_EXCEEDED = 593, + ERR_APPROACHING_PARTIAL_PLAY_TIME = 594, + ERR_APPROACHING_PARTIAL_PLAY_TIME_2 = 595, + ERR_APPROACHING_NO_PLAY_TIME = 596, + ERR_APPROACHING_NO_PLAY_TIME_2 = 597, + ERR_UNHEALTHY_TIME = 598, + ERR_CHAT_RESTRICTED_TRIAL = 599, + ERR_CHAT_THROTTLED = 600, + ERR_MAIL_REACHED_CAP = 601, + ERR_INVALID_RAID_TARGET = 602, + ERR_RAID_LEADER_READY_CHECK_START_S = 603, + ERR_READY_CHECK_IN_PROGRESS = 604, + ERR_READY_CHECK_THROTTLED = 605, + ERR_DUNGEON_DIFFICULTY_FAILED = 606, + ERR_DUNGEON_DIFFICULTY_CHANGED_S = 607, + ERR_TRADE_WRONG_REALM = 608, + ERR_TRADE_NOT_ON_TAPLIST = 609, + ERR_CHAT_PLAYER_AMBIGUOUS_S = 610, + ERR_LOOT_CANT_LOOT_THAT_NOW = 611, + ERR_LOOT_MASTER_INV_FULL = 612, + ERR_LOOT_MASTER_UNIQUE_ITEM = 613, + ERR_LOOT_MASTER_OTHER = 614, + ERR_FILTERING_YOU_S = 615, + ERR_USE_PREVENTED_BY_MECHANIC_S = 616, + ERR_ITEM_UNIQUE_EQUIPPABLE = 617, + ERR_LFG_LEADER_IS_LFM_S = 618, + ERR_LFG_PENDING = 619, + ERR_CANT_SPEAK_LANGAGE = 620, + ERR_VENDOR_MISSING_TURNINS = 621, + ERR_BATTLEGROUND_NOT_IN_TEAM = 622, + ERR_NOT_IN_BATTLEGROUND = 623, + ERR_NOT_ENOUGH_HONOR_POINTS = 624, + ERR_NOT_ENOUGH_ARENA_POINTS = 625, + ERR_SOCKETING_REQUIRES_META_GEM = 626, + ERR_SOCKETING_META_GEM_ONLY_IN_METASLOT = 627, + ERR_SOCKETING_REQUIRES_HYDRAULIC_GEM = 628, + ERR_SOCKETING_HYDRAULIC_GEM_ONLY_IN_HYDRAULICSLOT = 629, + ERR_SOCKETING_REQUIRES_COGWHEEL_GEM = 630, + ERR_SOCKETING_COGWHEEL_GEM_ONLY_IN_COGWHEELSLOT = 631, + ERR_SOCKETING_ITEM_TOO_LOW_LEVEL = 632, + ERR_ITEM_MAX_COUNT_SOCKETED = 633, + ERR_SYSTEM_DISABLED = 634, + ERR_QUEST_FAILED_TOO_MANY_DAILY_QUESTS_I = 635, + ERR_ITEM_MAX_COUNT_EQUIPPED_SOCKETED = 636, + ERR_ITEM_UNIQUE_EQUIPPABLE_SOCKETED = 637, + ERR_USER_SQUELCHED = 638, + ERR_ACCOUNT_SILENCED = 639, + ERR_PARTY_MEMBER_SILENCED = 640, + ERR_PARTY_MEMBER_SILENCED_LFG_DELIST = 641, + ERR_TOO_MUCH_GOLD = 642, + ERR_NOT_BARBER_SITTING = 643, + ERR_QUEST_FAILED_CAIS = 644, + ERR_INVITE_RESTRICTED_TRIAL = 645, + ERR_VOICE_IGNORE_FULL = 646, + ERR_VOICE_IGNORE_SELF = 647, + ERR_VOICE_IGNORE_NOT_FOUND = 648, + ERR_VOICE_IGNORE_ALREADY_S = 649, + ERR_VOICE_IGNORE_ADDED_S = 650, + ERR_VOICE_IGNORE_REMOVED_S = 651, + ERR_VOICE_IGNORE_AMBIGUOUS = 652, + ERR_VOICE_IGNORE_DELETED = 653, + ERR_UNKNOWN_MACRO_OPTION_S = 654, + ERR_NOT_DURING_ARENA_MATCH = 655, + ERR_NOT_IN_RATED_BATTLEGROUND = 656, + ERR_PLAYER_SILENCED = 657, + ERR_PLAYER_UNSILENCED = 658, + ERR_COMSAT_DISCONNECT = 659, + ERR_COMSAT_RECONNECT_ATTEMPT = 660, + ERR_COMSAT_CONNECT_FAIL = 661, + ERR_MAIL_INVALID_ATTACHMENT_SLOT = 662, + ERR_MAIL_TOO_MANY_ATTACHMENTS = 663, + ERR_MAIL_INVALID_ATTACHMENT = 664, + ERR_MAIL_ATTACHMENT_EXPIRED = 665, + ERR_VOICE_CHAT_PARENTAL_DISABLE_MIC = 666, + ERR_PROFANE_CHAT_NAME = 667, + ERR_PLAYER_SILENCED_ECHO = 668, + ERR_PLAYER_UNSILENCED_ECHO = 669, + ERR_LOOT_CANT_LOOT_THAT = 670, + ERR_ARENA_EXPIRED_CAIS = 671, + ERR_GROUP_ACTION_THROTTLED = 672, + ERR_ALREADY_PICKPOCKETED = 673, + ERR_NAME_INVALID = 674, + ERR_NAME_NO_NAME = 675, + ERR_NAME_TOO_SHORT = 676, + ERR_NAME_TOO_LONG = 677, + ERR_NAME_MIXED_LANGUAGES = 678, + ERR_NAME_PROFANE = 679, + ERR_NAME_RESERVED = 680, + ERR_NAME_THREE_CONSECUTIVE = 681, + ERR_NAME_INVALID_SPACE = 682, + ERR_NAME_CONSECUTIVE_SPACES = 683, + ERR_NAME_RUSSIAN_CONSECUTIVE_SILENT_CHARACTERS = 684, + ERR_NAME_RUSSIAN_SILENT_CHARACTER_AT_BEGINNING_OR_END = 685, + ERR_NAME_DECLENSION_DOESNT_MATCH_BASE_NAME = 686, + ERR_RECRUIT_A_FRIEND_NOT_LINKED = 687, + ERR_RECRUIT_A_FRIEND_NOT_NOW = 688, + ERR_RECRUIT_A_FRIEND_SUMMON_LEVEL_MAX = 689, + ERR_RECRUIT_A_FRIEND_SUMMON_COOLDOWN = 690, + ERR_RECRUIT_A_FRIEND_SUMMON_OFFLINE = 691, + ERR_RECRUIT_A_FRIEND_INSUF_EXPAN_LVL = 692, + ERR_RECRUIT_A_FRIEND_MAP_INCOMING_TRANSFER_NOT_ALLOWED = 693, + ERR_NOT_SAME_ACCOUNT = 694, + ERR_BAD_ON_USE_ENCHANT = 695, + ERR_TRADE_SELF = 696, + ERR_TOO_MANY_SOCKETS = 697, + ERR_ITEM_MAX_LIMIT_CATEGORY_COUNT_EXCEEDED_IS = 698, + ERR_TRADE_TARGET_MAX_LIMIT_CATEGORY_COUNT_EXCEEDED_IS = 699, + ERR_ITEM_MAX_LIMIT_CATEGORY_SOCKETED_EXCEEDED_IS = 700, + ERR_ITEM_MAX_LIMIT_CATEGORY_EQUIPPED_EXCEEDED_IS = 701, + ERR_SHAPESHIFT_FORM_CANNOT_EQUIP = 702, + ERR_ITEM_INVENTORY_FULL_SATCHEL = 703, + ERR_SCALING_STAT_ITEM_LEVEL_EXCEEDED = 704, + ERR_SCALING_STAT_ITEM_LEVEL_TOO_LOW = 705, + ERR_PURCHASE_LEVEL_TOO_LOW = 706, + ERR_GROUP_SWAP_FAILED = 707, + ERR_INVITE_IN_COMBAT = 708, + ERR_INVALID_GLYPH_SLOT = 709, + ERR_GENERIC_NO_VALID_TARGETS = 710, + ERR_CALENDAR_EVENT_ALERT_S = 711, + ERR_PET_LEARN_SPELL_S = 712, + ERR_PET_LEARN_ABILITY_S = 713, + ERR_PET_SPELL_UNLEARNED_S = 714, + ERR_INVITE_UNKNOWN_REALM = 715, + ERR_INVITE_NO_PARTY_SERVER = 716, + ERR_INVITE_PARTY_BUSY = 717, + ERR_INVITE_PARTY_BUSY_PENDING_REQUEST = 718, + ERR_INVITE_PARTY_BUSY_PENDING_SUGGEST = 719, + ERR_PARTY_TARGET_AMBIGUOUS = 720, + ERR_PARTY_LFG_INVITE_RAID_LOCKED = 721, + ERR_PARTY_LFG_BOOT_LIMIT = 722, + ERR_PARTY_LFG_BOOT_COOLDOWN_S = 723, + ERR_PARTY_LFG_BOOT_NOT_ELIGIBLE_S = 724, + ERR_PARTY_LFG_BOOT_INPATIENT_TIMER_S = 725, + ERR_PARTY_LFG_BOOT_IN_PROGRESS = 726, + ERR_PARTY_LFG_BOOT_TOO_FEW_PLAYERS = 727, + ERR_PARTY_LFG_BOOT_VOTE_SUCCEEDED = 728, + ERR_PARTY_LFG_BOOT_VOTE_FAILED = 729, + ERR_PARTY_LFG_BOOT_DISALLOWED_BY_MAP = 730, + ERR_PARTY_LFG_BOOT_DUNGEON_COMPLETE = 731, + ERR_PARTY_LFG_BOOT_LOOT_ROLLS = 732, + ERR_PARTY_LFG_BOOT_VOTE_REGISTERED = 733, + ERR_PARTY_PRIVATE_GROUP_ONLY = 734, + ERR_PARTY_LFG_TELEPORT_IN_COMBAT = 735, + ERR_PARTY_TIME_RUNNING_SEASON_ID_MUST_MATCH = 736, + ERR_RAID_DISALLOWED_BY_LEVEL = 737, + ERR_RAID_DISALLOWED_BY_CROSS_REALM = 738, + ERR_PARTY_ROLE_NOT_AVAILABLE = 739, + ERR_JOIN_LFG_OBJECT_FAILED = 740, + ERR_LFG_REMOVED_LEVELUP = 741, + ERR_LFG_REMOVED_XP_TOGGLE = 742, + ERR_LFG_REMOVED_FACTION_CHANGE = 743, + ERR_BATTLEGROUND_INFO_THROTTLED = 744, + ERR_BATTLEGROUND_ALREADY_IN = 745, + ERR_ARENA_TEAM_CHANGE_FAILED_QUEUED = 746, + ERR_ARENA_TEAM_PERMISSIONS = 747, + ERR_NOT_WHILE_FALLING = 748, + ERR_NOT_WHILE_MOVING = 749, + ERR_NOT_WHILE_FATIGUED = 750, + ERR_MAX_SOCKETS = 751, + ERR_MULTI_CAST_ACTION_TOTEM_S = 752, + ERR_BATTLEGROUND_JOIN_LEVELUP = 753, + ERR_REMOVE_FROM_PVP_QUEUE_XP_GAIN = 754, + ERR_BATTLEGROUND_JOIN_XP_GAIN = 755, + ERR_BATTLEGROUND_JOIN_MERCENARY = 756, + ERR_BATTLEGROUND_JOIN_TOO_MANY_HEALERS = 757, + ERR_BATTLEGROUND_JOIN_RATED_TOO_MANY_HEALERS = 758, + ERR_BATTLEGROUND_JOIN_TOO_MANY_TANKS = 759, + ERR_BATTLEGROUND_JOIN_TOO_MANY_DAMAGE = 760, + ERR_RAID_DIFFICULTY_FAILED = 761, + ERR_RAID_DIFFICULTY_CHANGED_S = 762, + ERR_LEGACY_RAID_DIFFICULTY_CHANGED_S = 763, + ERR_RAID_LOCKOUT_CHANGED_S = 764, + ERR_RAID_CONVERTED_TO_PARTY = 765, + ERR_PARTY_CONVERTED_TO_RAID = 766, + ERR_PLAYER_DIFFICULTY_CHANGED_S = 767, + ERR_GMRESPONSE_DB_ERROR = 768, + ERR_BATTLEGROUND_JOIN_RANGE_INDEX = 769, + ERR_ARENA_JOIN_RANGE_INDEX = 770, + ERR_REMOVE_FROM_PVP_QUEUE_FACTION_CHANGE = 771, + ERR_BATTLEGROUND_JOIN_FAILED = 772, + ERR_BATTLEGROUND_JOIN_NO_VALID_SPEC_FOR_ROLE = 773, + ERR_BATTLEGROUND_JOIN_RESPEC = 774, + ERR_BATTLEGROUND_INVITATION_DECLINED = 775, + ERR_BATTLEGROUND_INVITATION_DECLINED_BY = 776, + ERR_BATTLEGROUND_JOIN_TIMED_OUT = 777, + ERR_BATTLEGROUND_DUPE_QUEUE = 778, + ERR_BATTLEGROUND_JOIN_MUST_COMPLETE_QUEST = 779, + ERR_IN_BATTLEGROUND_RESPEC = 780, + ERR_MAIL_LIMITED_DURATION_ITEM = 781, + ERR_YELL_RESTRICTED_TRIAL = 782, + ERR_CHAT_RAID_RESTRICTED_TRIAL = 783, + ERR_LFG_ROLE_CHECK_FAILED = 784, + ERR_LFG_ROLE_CHECK_FAILED_TIMEOUT = 785, + ERR_LFG_ROLE_CHECK_FAILED_NOT_VIABLE = 786, + ERR_LFG_READY_CHECK_FAILED = 787, + ERR_LFG_READY_CHECK_FAILED_TIMEOUT = 788, + ERR_LFG_GROUP_FULL = 789, + ERR_LFG_NO_LFG_OBJECT = 790, + ERR_LFG_NO_SLOTS_PLAYER = 791, + ERR_LFG_NO_SLOTS_PARTY = 792, + ERR_LFG_NO_SPEC = 793, + ERR_LFG_MISMATCHED_SLOTS = 794, + ERR_LFG_MISMATCHED_SLOTS_LOCAL_XREALM = 795, + ERR_LFG_PARTY_PLAYERS_FROM_DIFFERENT_REALMS = 796, + ERR_LFG_MEMBERS_NOT_PRESENT = 797, + ERR_LFG_GET_INFO_TIMEOUT = 798, + ERR_LFG_INVALID_SLOT = 799, + ERR_LFG_DESERTER_PLAYER = 800, + ERR_LFG_DESERTER_PARTY = 801, + ERR_LFG_DEAD = 802, + ERR_LFG_RANDOM_COOLDOWN_PLAYER = 803, + ERR_LFG_RANDOM_COOLDOWN_PARTY = 804, + ERR_LFG_TOO_MANY_MEMBERS = 805, + ERR_LFG_TOO_FEW_MEMBERS = 806, + ERR_LFG_PROPOSAL_FAILED = 807, + ERR_LFG_PROPOSAL_DECLINED_SELF = 808, + ERR_LFG_PROPOSAL_DECLINED_PARTY = 809, + ERR_LFG_NO_SLOTS_SELECTED = 810, + ERR_LFG_NO_ROLES_SELECTED = 811, + ERR_LFG_ROLE_CHECK_INITIATED = 812, + ERR_LFG_READY_CHECK_INITIATED = 813, + ERR_LFG_PLAYER_DECLINED_ROLE_CHECK = 814, + ERR_LFG_PLAYER_DECLINED_READY_CHECK = 815, + ERR_LFG_JOINED_QUEUE = 816, + ERR_LFG_JOINED_FLEX_QUEUE = 817, + ERR_LFG_JOINED_RF_QUEUE = 818, + ERR_LFG_JOINED_SCENARIO_QUEUE = 819, + ERR_LFG_JOINED_WORLD_PVP_QUEUE = 820, + ERR_LFG_JOINED_BATTLEFIELD_QUEUE = 821, + ERR_LFG_JOINED_LIST = 822, + ERR_LFG_LEFT_QUEUE = 823, + ERR_LFG_LEFT_LIST = 824, + ERR_LFG_ROLE_CHECK_ABORTED = 825, + ERR_LFG_READY_CHECK_ABORTED = 826, + ERR_LFG_CANT_USE_BATTLEGROUND = 827, + ERR_LFG_CANT_USE_DUNGEONS = 828, + ERR_LFG_REASON_TOO_MANY_LFG = 829, + ERR_LFG_FARM_LIMIT = 830, + ERR_LFG_NO_CROSS_FACTION_PARTIES = 831, + ERR_INVALID_TELEPORT_LOCATION = 832, + ERR_TOO_FAR_TO_INTERACT = 833, + ERR_BATTLEGROUND_PLAYERS_FROM_DIFFERENT_REALMS = 834, + ERR_DIFFICULTY_CHANGE_COOLDOWN_S = 835, + ERR_DIFFICULTY_CHANGE_COMBAT_COOLDOWN_S = 836, + ERR_DIFFICULTY_CHANGE_WORLDSTATE = 837, + ERR_DIFFICULTY_CHANGE_ENCOUNTER = 838, + ERR_DIFFICULTY_CHANGE_COMBAT = 839, + ERR_DIFFICULTY_CHANGE_PLAYER_BUSY = 840, + ERR_DIFFICULTY_CHANGE_PLAYER_ON_VEHICLE = 841, + ERR_DIFFICULTY_CHANGE_ALREADY_STARTED = 842, + ERR_DIFFICULTY_CHANGE_OTHER_HEROIC_S = 843, + ERR_DIFFICULTY_CHANGE_HEROIC_INSTANCE_ALREADY_RUNNING = 844, + ERR_ARENA_TEAM_PARTY_SIZE = 845, + ERR_SOLO_SHUFFLE_WARGAME_GROUP_SIZE = 846, + ERR_SOLO_SHUFFLE_WARGAME_GROUP_COMP = 847, + ERR_SOLO_RBG_WARGAME_GROUP_SIZE = 848, + ERR_SOLO_RBG_WARGAME_GROUP_COMP = 849, + ERR_SOLO_MIN_ITEM_LEVEL = 850, + ERR_PVP_PLAYER_ABANDONED = 851, + ERR_BATTLEGROUND_JOIN_GROUP_QUEUE_WITHOUT_HEALER = 852, + ERR_QUEST_FORCE_REMOVED_S = 853, + ERR_ATTACK_NO_ACTIONS = 854, + ERR_IN_RANDOM_BG = 855, + ERR_IN_NON_RANDOM_BG = 856, + ERR_BN_FRIEND_SELF = 857, + ERR_BN_FRIEND_ALREADY = 858, + ERR_BN_FRIEND_BLOCKED = 859, + ERR_BN_FRIEND_LIST_FULL = 860, + ERR_BN_FRIEND_REQUEST_SENT = 861, + ERR_BN_BROADCAST_THROTTLE = 862, + ERR_BG_DEVELOPER_ONLY = 863, + ERR_CURRENCY_SPELL_SLOT_MISMATCH = 864, + ERR_CURRENCY_NOT_TRADABLE = 865, + ERR_REQUIRES_EXPANSION_S = 866, + ERR_QUEST_FAILED_SPELL = 867, + ERR_TALENT_FAILED_UNSPENT_TALENT_POINTS = 868, + ERR_TALENT_FAILED_NOT_ENOUGH_TALENTS_IN_PRIMARY_TREE = 869, + ERR_TALENT_FAILED_NO_PRIMARY_TREE_SELECTED = 870, + ERR_TALENT_FAILED_CANT_REMOVE_TALENT = 871, + ERR_TALENT_FAILED_UNKNOWN = 872, + ERR_TALENT_FAILED_IN_COMBAT = 873, + ERR_TALENT_FAILED_IN_PVP_MATCH = 874, + ERR_TALENT_FAILED_IN_MYTHIC_PLUS = 875, + ERR_WARGAME_REQUEST_FAILURE = 876, + ERR_RANK_REQUIRES_AUTHENTICATOR = 877, + ERR_GUILD_BANK_VOUCHER_FAILED = 878, + ERR_WARGAME_REQUEST_SENT = 879, + ERR_REQUIRES_ACHIEVEMENT_I = 880, + ERR_REFUND_RESULT_EXCEED_MAX_CURRENCY = 881, + ERR_CANT_BUY_QUANTITY = 882, + ERR_ITEM_IS_BATTLE_PAY_LOCKED = 883, + ERR_PARTY_ALREADY_IN_BATTLEGROUND_QUEUE = 884, + ERR_PARTY_CONFIRMING_BATTLEGROUND_QUEUE = 885, + ERR_BATTLEFIELD_TEAM_PARTY_SIZE = 886, + ERR_INSUFF_TRACKED_CURRENCY_IS = 887, + ERR_NOT_ON_TOURNAMENT_REALM = 888, + ERR_GUILD_TRIAL_ACCOUNT_TRIAL = 889, + ERR_GUILD_TRIAL_ACCOUNT_VETERAN = 890, + ERR_GUILD_UNDELETABLE_DUE_TO_LEVEL = 891, + ERR_CANT_DO_THAT_IN_A_GROUP = 892, + ERR_GUILD_LEADER_REPLACED = 893, + ERR_TRANSMOGRIFY_CANT_EQUIP = 894, + ERR_TRANSMOGRIFY_INVALID_ITEM_TYPE = 895, + ERR_TRANSMOGRIFY_NOT_SOULBOUND = 896, + ERR_TRANSMOGRIFY_INVALID_SOURCE = 897, + ERR_TRANSMOGRIFY_INVALID_DESTINATION = 898, + ERR_TRANSMOGRIFY_MISMATCH = 899, + ERR_TRANSMOGRIFY_LEGENDARY = 900, + ERR_TRANSMOGRIFY_SAME_ITEM = 901, + ERR_TRANSMOGRIFY_SAME_APPEARANCE = 902, + ERR_TRANSMOGRIFY_NOT_EQUIPPED = 903, + ERR_VOID_DEPOSIT_FULL = 904, + ERR_VOID_WITHDRAW_FULL = 905, + ERR_VOID_STORAGE_WRAPPED = 906, + ERR_VOID_STORAGE_STACKABLE = 907, + ERR_VOID_STORAGE_UNBOUND = 908, + ERR_VOID_STORAGE_REPAIR = 909, + ERR_VOID_STORAGE_CHARGES = 910, + ERR_VOID_STORAGE_QUEST = 911, + ERR_VOID_STORAGE_CONJURED = 912, + ERR_VOID_STORAGE_MAIL = 913, + ERR_VOID_STORAGE_BAG = 914, + ERR_VOID_TRANSFER_STORAGE_FULL = 915, + ERR_VOID_TRANSFER_INV_FULL = 916, + ERR_VOID_TRANSFER_INTERNAL_ERROR = 917, + ERR_VOID_TRANSFER_ITEM_INVALID = 918, + ERR_DIFFICULTY_DISABLED_IN_LFG = 919, + ERR_VOID_STORAGE_UNIQUE = 920, + ERR_VOID_STORAGE_LOOT = 921, + ERR_VOID_STORAGE_HOLIDAY = 922, + ERR_VOID_STORAGE_DURATION = 923, + ERR_VOID_STORAGE_LOAD_FAILED = 924, + ERR_VOID_STORAGE_INVALID_ITEM = 925, + ERR_VOID_STORAGE_ACCOUNT_ITEM = 926, + ERR_PARENTAL_CONTROLS_CHAT_MUTED = 927, + ERR_SOR_START_EXPERIENCE_INCOMPLETE = 928, + ERR_SOR_INVALID_EMAIL = 929, + ERR_SOR_INVALID_COMMENT = 930, + ERR_CHALLENGE_MODE_RESET_COOLDOWN_S = 931, + ERR_CHALLENGE_MODE_RESET_KEYSTONE = 932, + ERR_PET_JOURNAL_ALREADY_IN_LOADOUT = 933, + ERR_REPORT_SUBMITTED_SUCCESSFULLY = 934, + ERR_REPORT_SUBMISSION_FAILED = 935, + ERR_SUGGESTION_SUBMITTED_SUCCESSFULLY = 936, + ERR_BUG_SUBMITTED_SUCCESSFULLY = 937, + ERR_CHALLENGE_MODE_ENABLED = 938, + ERR_CHALLENGE_MODE_DISABLED = 939, + ERR_PETBATTLE_CREATE_FAILED = 940, + ERR_PETBATTLE_NOT_HERE = 941, + ERR_PETBATTLE_NOT_HERE_ON_TRANSPORT = 942, + ERR_PETBATTLE_NOT_HERE_UNEVEN_GROUND = 943, + ERR_PETBATTLE_NOT_HERE_OBSTRUCTED = 944, + ERR_PETBATTLE_NOT_WHILE_IN_COMBAT = 945, + ERR_PETBATTLE_NOT_WHILE_DEAD = 946, + ERR_PETBATTLE_NOT_WHILE_FLYING = 947, + ERR_PETBATTLE_TARGET_INVALID = 948, + ERR_PETBATTLE_TARGET_OUT_OF_RANGE = 949, + ERR_PETBATTLE_TARGET_NOT_CAPTURABLE = 950, + ERR_PETBATTLE_NOT_A_TRAINER = 951, + ERR_PETBATTLE_DECLINED = 952, + ERR_PETBATTLE_IN_BATTLE = 953, + ERR_PETBATTLE_INVALID_LOADOUT = 954, + ERR_PETBATTLE_ALL_PETS_DEAD = 955, + ERR_PETBATTLE_NO_PETS_IN_SLOTS = 956, + ERR_PETBATTLE_NO_ACCOUNT_LOCK = 957, + ERR_PETBATTLE_WILD_PET_TAPPED = 958, + ERR_PETBATTLE_RESTRICTED_ACCOUNT = 959, + ERR_PETBATTLE_OPPONENT_NOT_AVAILABLE = 960, + ERR_PETBATTLE_NOT_WHILE_IN_MATCHED_BATTLE = 961, + ERR_CANT_HAVE_MORE_PETS_OF_THAT_TYPE = 962, + ERR_CANT_HAVE_MORE_PETS = 963, + ERR_PVP_MAP_NOT_FOUND = 964, + ERR_PVP_MAP_NOT_SET = 965, + ERR_PETBATTLE_QUEUE_QUEUED = 966, + ERR_PETBATTLE_QUEUE_ALREADY_QUEUED = 967, + ERR_PETBATTLE_QUEUE_JOIN_FAILED = 968, + ERR_PETBATTLE_QUEUE_JOURNAL_LOCK = 969, + ERR_PETBATTLE_QUEUE_REMOVED = 970, + ERR_PETBATTLE_QUEUE_PROPOSAL_DECLINED = 971, + ERR_PETBATTLE_QUEUE_PROPOSAL_TIMEOUT = 972, + ERR_PETBATTLE_QUEUE_OPPONENT_DECLINED = 973, + ERR_PETBATTLE_QUEUE_REQUEUED_INTERNAL = 974, + ERR_PETBATTLE_QUEUE_REQUEUED_REMOVED = 975, + ERR_PETBATTLE_QUEUE_SLOT_LOCKED = 976, + ERR_PETBATTLE_QUEUE_SLOT_EMPTY = 977, + ERR_PETBATTLE_QUEUE_SLOT_NO_TRACKER = 978, + ERR_PETBATTLE_QUEUE_SLOT_NO_SPECIES = 979, + ERR_PETBATTLE_QUEUE_SLOT_CANT_BATTLE = 980, + ERR_PETBATTLE_QUEUE_SLOT_REVOKED = 981, + ERR_PETBATTLE_QUEUE_SLOT_DEAD = 982, + ERR_PETBATTLE_QUEUE_SLOT_NO_PET = 983, + ERR_PETBATTLE_QUEUE_NOT_WHILE_NEUTRAL = 984, + ERR_PETBATTLE_GAME_TIME_LIMIT_WARNING = 985, + ERR_PETBATTLE_GAME_ROUNDS_LIMIT_WARNING = 986, + ERR_HAS_RESTRICTION = 987, + ERR_ITEM_UPGRADE_ITEM_TOO_LOW_LEVEL = 988, + ERR_ITEM_UPGRADE_NO_PATH = 989, + ERR_ITEM_UPGRADE_NO_MORE_UPGRADES = 990, + ERR_BONUS_ROLL_EMPTY = 991, + ERR_CHALLENGE_MODE_FULL = 992, + ERR_CHALLENGE_MODE_IN_PROGRESS = 993, + ERR_CHALLENGE_MODE_INCORRECT_KEYSTONE = 994, + ERR_BATTLETAG_FRIEND_NOT_FOUND = 995, + ERR_BATTLETAG_FRIEND_NOT_VALID = 996, + ERR_BATTLETAG_FRIEND_NOT_ALLOWED = 997, + ERR_BATTLETAG_FRIEND_THROTTLED = 998, + ERR_BATTLETAG_FRIEND_SUCCESS = 999, + ERR_PET_TOO_HIGH_LEVEL_TO_UNCAGE = 1000, + ERR_PETBATTLE_INTERNAL = 1001, + ERR_CANT_CAGE_PET_YET = 1002, + ERR_NO_LOOT_IN_CHALLENGE_MODE = 1003, + ERR_QUEST_PET_BATTLE_VICTORIES_PVP_II = 1004, + ERR_ROLE_CHECK_ALREADY_IN_PROGRESS = 1005, + ERR_RECRUIT_A_FRIEND_ACCOUNT_LIMIT = 1006, + ERR_RECRUIT_A_FRIEND_FAILED = 1007, + ERR_SET_LOOT_PERSONAL = 1008, + ERR_SET_LOOT_METHOD_FAILED_COMBAT = 1009, + ERR_REAGENT_BANK_FULL = 1010, + ERR_REAGENT_BANK_LOCKED = 1011, + ERR_GARRISON_BUILDING_EXISTS = 1012, + ERR_GARRISON_INVALID_PLOT = 1013, + ERR_GARRISON_INVALID_BUILDINGID = 1014, + ERR_GARRISON_INVALID_PLOT_BUILDING = 1015, + ERR_GARRISON_REQUIRES_BLUEPRINT = 1016, + ERR_GARRISON_NOT_ENOUGH_CURRENCY = 1017, + ERR_GARRISON_NOT_ENOUGH_GOLD = 1018, + ERR_GARRISON_COMPLETE_MISSION_WRONG_FOLLOWER_TYPE = 1019, + ERR_ALREADY_USING_LFG_LIST = 1020, + ERR_RESTRICTED_ACCOUNT_LFG_LIST_TRIAL = 1021, + ERR_TOY_USE_LIMIT_REACHED = 1022, + ERR_TOY_ALREADY_KNOWN = 1023, + ERR_TRANSMOG_SET_ALREADY_KNOWN = 1024, + ERR_NOT_ENOUGH_CURRENCY = 1025, + ERR_SPEC_IS_DISABLED = 1026, + ERR_FEATURE_RESTRICTED_TRIAL = 1027, + ERR_CANT_BE_OBLITERATED = 1028, + ERR_CANT_BE_SCRAPPED = 1029, + ERR_CANT_BE_RECRAFTED = 1030, + ERR_ARTIFACT_RELIC_DOES_NOT_MATCH_ARTIFACT = 1031, + ERR_MUST_EQUIP_ARTIFACT = 1032, + ERR_CANT_DO_THAT_RIGHT_NOW = 1033, + ERR_AFFECTING_COMBAT = 1034, + ERR_EQUIPMENT_MANAGER_COMBAT_SWAP_S = 1035, + ERR_EQUIPMENT_MANAGER_BAGS_FULL = 1036, + ERR_EQUIPMENT_MANAGER_MISSING_ITEM_S = 1037, + ERR_MOVIE_RECORDING_WARNING_PERF = 1038, + ERR_MOVIE_RECORDING_WARNING_DISK_FULL = 1039, + ERR_MOVIE_RECORDING_WARNING_NO_MOVIE = 1040, + ERR_MOVIE_RECORDING_WARNING_REQUIREMENTS = 1041, + ERR_MOVIE_RECORDING_WARNING_COMPRESSING = 1042, + ERR_NO_CHALLENGE_MODE_REWARD = 1043, + ERR_CLAIMED_CHALLENGE_MODE_REWARD = 1044, + ERR_CHALLENGE_MODE_PERIOD_RESET_SS = 1045, + ERR_CANT_DO_THAT_CHALLENGE_MODE_ACTIVE = 1046, + ERR_TALENT_FAILED_REST_AREA = 1047, + ERR_CANNOT_ABANDON_LAST_PET = 1048, + ERR_TEST_CVAR_SET_SSS = 1049, + ERR_QUEST_TURN_IN_FAIL_REASON = 1050, + ERR_CLAIMED_CHALLENGE_MODE_REWARD_OLD = 1051, + ERR_TALENT_GRANTED_BY_AURA = 1052, + ERR_CHALLENGE_MODE_ALREADY_COMPLETE = 1053, + ERR_GLYPH_TARGET_NOT_AVAILABLE = 1054, + ERR_PVP_WARMODE_TOGGLE_ON = 1055, + ERR_PVP_WARMODE_TOGGLE_OFF = 1056, + ERR_SPELL_FAILED_LEVEL_REQUIREMENT = 1057, + ERR_SPELL_FAILED_CANT_FLY_HERE = 1058, + ERR_BATTLEGROUND_JOIN_REQUIRES_LEVEL = 1059, + ERR_BATTLEGROUND_JOIN_DISQUALIFIED = 1060, + ERR_BATTLEGROUND_JOIN_DISQUALIFIED_NO_NAME = 1061, + ERR_VOICE_CHAT_GENERIC_UNABLE_TO_CONNECT = 1062, + ERR_VOICE_CHAT_SERVICE_LOST = 1063, + ERR_VOICE_CHAT_CHANNEL_NAME_TOO_SHORT = 1064, + ERR_VOICE_CHAT_CHANNEL_NAME_TOO_LONG = 1065, + ERR_VOICE_CHAT_CHANNEL_ALREADY_EXISTS = 1066, + ERR_VOICE_CHAT_TARGET_NOT_FOUND = 1067, + ERR_VOICE_CHAT_TOO_MANY_REQUESTS = 1068, + ERR_VOICE_CHAT_PLAYER_SILENCED = 1069, + ERR_VOICE_CHAT_PARENTAL_DISABLE_ALL = 1070, + ERR_VOICE_CHAT_DISABLED = 1071, + ERR_NO_PVP_REWARD = 1072, + ERR_CLAIMED_PVP_REWARD = 1073, + ERR_AZERITE_ESSENCE_SELECTION_FAILED_ESSENCE_NOT_UNLOCKED = 1074, + ERR_AZERITE_ESSENCE_SELECTION_FAILED_CANT_REMOVE_ESSENCE = 1075, + ERR_AZERITE_ESSENCE_SELECTION_FAILED_CONDITION_FAILED = 1076, + ERR_AZERITE_ESSENCE_SELECTION_FAILED_REST_AREA = 1077, + ERR_AZERITE_ESSENCE_SELECTION_FAILED_SLOT_LOCKED = 1078, + ERR_AZERITE_ESSENCE_SELECTION_FAILED_NOT_AT_FORGE = 1079, + ERR_AZERITE_ESSENCE_SELECTION_FAILED_HEART_LEVEL_TOO_LOW = 1080, + ERR_AZERITE_ESSENCE_SELECTION_FAILED_NOT_EQUIPPED = 1081, + ERR_SOCKETING_REQUIRES_PUNCHCARDRED_GEM = 1082, + ERR_SOCKETING_PUNCHCARDRED_GEM_ONLY_IN_PUNCHCARDREDSLOT = 1083, + ERR_SOCKETING_REQUIRES_PUNCHCARDYELLOW_GEM = 1084, + ERR_SOCKETING_PUNCHCARDYELLOW_GEM_ONLY_IN_PUNCHCARDYELLOWSLOT = 1085, + ERR_SOCKETING_REQUIRES_PUNCHCARDBLUE_GEM = 1086, + ERR_SOCKETING_PUNCHCARDBLUE_GEM_ONLY_IN_PUNCHCARDBLUESLOT = 1087, + ERR_SOCKETING_REQUIRES_DOMINATION_SHARD = 1088, + ERR_SOCKETING_DOMINATION_SHARD_ONLY_IN_DOMINATIONSLOT = 1089, + ERR_SOCKETING_REQUIRES_CYPHER_GEM = 1090, + ERR_SOCKETING_CYPHER_GEM_ONLY_IN_CYPHERSLOT = 1091, + ERR_SOCKETING_REQUIRES_TINKER_GEM = 1092, + ERR_SOCKETING_TINKER_GEM_ONLY_IN_TINKERSLOT = 1093, + ERR_SOCKETING_REQUIRES_PRIMORDIAL_GEM = 1094, + ERR_SOCKETING_PRIMORDIAL_GEM_ONLY_IN_PRIMORDIALSLOT = 1095, + ERR_SOCKETING_REQUIRES_FRAGRANCE_GEM = 1096, + ERR_SOCKETING_FRAGRANCE_GEM_ONLY_IN_FRAGRANCESLOT = 1097, + ERR_LEVEL_LINKING_RESULT_LINKED = 1098, + ERR_LEVEL_LINKING_RESULT_UNLINKED = 1099, + ERR_CLUB_FINDER_ERROR_POST_CLUB = 1100, + ERR_CLUB_FINDER_ERROR_APPLY_CLUB = 1101, + ERR_CLUB_FINDER_ERROR_RESPOND_APPLICANT = 1102, + ERR_CLUB_FINDER_ERROR_CANCEL_APPLICATION = 1103, + ERR_CLUB_FINDER_ERROR_TYPE_ACCEPT_APPLICATION = 1104, + ERR_CLUB_FINDER_ERROR_TYPE_NO_INVITE_PERMISSIONS = 1105, + ERR_CLUB_FINDER_ERROR_TYPE_NO_POSTING_PERMISSIONS = 1106, + ERR_CLUB_FINDER_ERROR_TYPE_APPLICANT_LIST = 1107, + ERR_CLUB_FINDER_ERROR_TYPE_APPLICANT_LIST_NO_PERM = 1108, + ERR_CLUB_FINDER_ERROR_TYPE_FINDER_NOT_AVAILABLE = 1109, + ERR_CLUB_FINDER_ERROR_TYPE_GET_POSTING_IDS = 1110, + ERR_CLUB_FINDER_ERROR_TYPE_JOIN_APPLICATION = 1111, + ERR_CLUB_FINDER_ERROR_TYPE_REALM_NOT_ELIGIBLE = 1112, + ERR_CLUB_FINDER_ERROR_TYPE_FLAGGED_RENAME = 1113, + ERR_CLUB_FINDER_ERROR_TYPE_FLAGGED_DESCRIPTION_CHANGE = 1114, + ERR_ITEM_INTERACTION_NOT_ENOUGH_GOLD = 1115, + ERR_ITEM_INTERACTION_NOT_ENOUGH_CURRENCY = 1116, + ERR_ITEM_INTERACTION_NO_CONVERSION_OUTPUT = 1117, + ERR_PLAYER_CHOICE_ERROR_PENDING_CHOICE = 1118, + ERR_SOULBIND_INVALID_CONDUIT = 1119, + ERR_SOULBIND_INVALID_CONDUIT_ITEM = 1120, + ERR_SOULBIND_INVALID_TALENT = 1121, + ERR_SOULBIND_DUPLICATE_CONDUIT = 1122, + ERR_ACTIVATE_SOULBIND_S = 1123, + ERR_ACTIVATE_SOULBIND_FAILED_REST_AREA = 1124, + ERR_CANT_USE_PROFANITY = 1125, + ERR_NOT_IN_PET_BATTLE = 1126, + ERR_NOT_IN_NPE = 1127, + ERR_NO_SPEC = 1128, + ERR_NO_DOMINATIONSHARD_OVERWRITE = 1129, + ERR_USE_WEEKLY_REWARDS_DISABLED = 1130, + ERR_CROSS_FACTION_GROUP_JOINED = 1131, + ERR_CANT_TARGET_UNFRIENDLY_IN_OVERWORLD = 1132, + ERR_EQUIPABLESPELLS_SLOTS_FULL = 1133, + ERR_ITEM_MOD_APPEARANCE_GROUP_ALREADY_KNOWN = 1134, + ERR_CANT_BULK_SELL_ITEM_WITH_REFUND = 1135, + ERR_NO_SOULBOUND_ITEM_IN_ACCOUNT_BANK = 1136, + ERR_NO_REFUNDABLE_ITEM_IN_ACCOUNT_BANK = 1137, + ERR_CANT_DELETE_IN_ACCOUNT_BANK = 1138, + ERR_NO_IMMEDIATE_CONTAINER_IN_ACCOUNT_BANK = 1139, + ERR_NO_OPEN_IMMEDIATE_CONTAINER_IN_ACCOUNT_BANK = 1140, + ERR_CANT_TRADE_ACCOUNT_ITEM = 1141, + ERR_NO_ACCOUNT_INVENTORY_LOCK = 1142, + ERR_BANK_NOT_ACCESSIBLE = 1143, + ERR_TOO_MANY_ACCOUNT_BANK_TABS = 1144, + ERR_ACCOUNT_BANK_TAB_NOT_UNLOCKED = 1145, + ERR_BANK_TAB_INVALID_NAME = 1146, + ERR_BANK_TAB_INVALID_TEXT = 1147, + ERR_WOW_LABS_PARTY_ERROR_TYPE_PARTY_IS_FULL = 1148, + ERR_WOW_LABS_PARTY_ERROR_TYPE_MAX_INVITE_SENT = 1149, + ERR_WOW_LABS_PARTY_ERROR_TYPE_PLAYER_ALREADY_INVITED = 1150, + ERR_WOW_LABS_PARTY_ERROR_TYPE_PARTY_INVITE_INVALID = 1151, + ERR_WOW_LABS_LOBBY_MATCHMAKER_ERROR_ENTER_QUEUE_FAILED = 1152, + ERR_WOW_LABS_LOBBY_MATCHMAKER_ERROR_LEAVE_QUEUE_FAILED = 1153, + ERR_TARGET_IS_SELF_FOUND_CANNOT_TRADE = 1154, + ERR_PLAYER_IS_SELF_FOUND_CANNOT_TRADE = 1155, + ERR_MAIL_RECEPIENT_IS_SELF_FOUND_CANNOT_RECEIVE_MAIL = 1156, + ERR_PLAYER_IS_SELF_FOUND_CANNOT_SEND_MAIL = 1157, + ERR_PLAYER_IS_SELF_FOUND_CANNOT_USE_AUCTION_HOUSE = 1158, + ERR_MAIL_TARGET_CANNOT_RECEIVE_MAIL = 1159, + ERR_REMIX_INVALID_TRANSFER_REQUEST = 1160, + ERR_CURRENCY_TRANSFER_INVALID_CHARACTER = 1161, + ERR_CURRENCY_TRANSFER_INVALID_CURRENCY = 1162, + ERR_CURRENCY_TRANSFER_INSUFFICIENT_CURRENCY = 1163, + ERR_CURRENCY_TRANSFER_MAX_QUANTITY = 1164, + ERR_CURRENCY_TRANSFER_NO_VALID_SOURCE = 1165, + ERR_CURRENCY_TRANSFER_CHARACTER_LOGGED_IN = 1166, + ERR_CURRENCY_TRANSFER_SERVER_ERROR = 1167, + ERR_CURRENCY_TRANSFER_UNMET_REQUIREMENTS = 1168, }; enum class MountResult : uint32 diff --git a/src/server/game/Miscellaneous/enuminfo_SharedDefines.cpp b/src/server/game/Miscellaneous/enuminfo_SharedDefines.cpp index 6ced40d6a20..76dfd8d84ea 100644 --- a/src/server/game/Miscellaneous/enuminfo_SharedDefines.cpp +++ b/src/server/game/Miscellaneous/enuminfo_SharedDefines.cpp @@ -2530,13 +2530,14 @@ TC_API_EXPORT EnumText EnumUtils<SpellCastResult>::ToString(SpellCastResult valu case SPELL_FAILED_CANT_FLY_HERE: return { "SPELL_FAILED_CANT_FLY_HERE", "SPELL_FAILED_CANT_FLY_HERE", "" }; case SPELL_FAILED_DRAGONRIDING_RIDING_REQUIREMENT: return { "SPELL_FAILED_DRAGONRIDING_RIDING_REQUIREMENT", "SPELL_FAILED_DRAGONRIDING_RIDING_REQUIREMENT", "" }; case SPELL_FAILED_ITEM_MOD_APPEARANCE_GROUP_ALREADY_KNOWN: return { "SPELL_FAILED_ITEM_MOD_APPEARANCE_GROUP_ALREADY_KNOWN", "SPELL_FAILED_ITEM_MOD_APPEARANCE_GROUP_ALREADY_KNOWN", "" }; + case SPELL_FAILED_ITEM_CREATION_DISABLED_FOR_EVENT: return { "SPELL_FAILED_ITEM_CREATION_DISABLED_FOR_EVENT", "SPELL_FAILED_ITEM_CREATION_DISABLED_FOR_EVENT", "" }; case SPELL_FAILED_UNKNOWN: return { "SPELL_FAILED_UNKNOWN", "SPELL_FAILED_UNKNOWN", "" }; default: throw std::out_of_range("value"); } } template <> -TC_API_EXPORT size_t EnumUtils<SpellCastResult>::Count() { return 322; } +TC_API_EXPORT size_t EnumUtils<SpellCastResult>::Count() { return 323; } template <> TC_API_EXPORT SpellCastResult EnumUtils<SpellCastResult>::FromIndex(size_t index) @@ -2864,7 +2865,8 @@ TC_API_EXPORT SpellCastResult EnumUtils<SpellCastResult>::FromIndex(size_t index case 318: return SPELL_FAILED_CANT_FLY_HERE; case 319: return SPELL_FAILED_DRAGONRIDING_RIDING_REQUIREMENT; case 320: return SPELL_FAILED_ITEM_MOD_APPEARANCE_GROUP_ALREADY_KNOWN; - case 321: return SPELL_FAILED_UNKNOWN; + case 321: return SPELL_FAILED_ITEM_CREATION_DISABLED_FOR_EVENT; + case 322: return SPELL_FAILED_UNKNOWN; default: throw std::out_of_range("index"); } } @@ -3195,7 +3197,8 @@ TC_API_EXPORT size_t EnumUtils<SpellCastResult>::ToIndex(SpellCastResult value) case SPELL_FAILED_CANT_FLY_HERE: return 318; case SPELL_FAILED_DRAGONRIDING_RIDING_REQUIREMENT: return 319; case SPELL_FAILED_ITEM_MOD_APPEARANCE_GROUP_ALREADY_KNOWN: return 320; - case SPELL_FAILED_UNKNOWN: return 321; + case SPELL_FAILED_ITEM_CREATION_DISABLED_FOR_EVENT: return 321; + case SPELL_FAILED_UNKNOWN: return 322; default: throw std::out_of_range("value"); } } diff --git a/src/server/game/Reputation/ReputationMgr.cpp b/src/server/game/Reputation/ReputationMgr.cpp index 576a111dec1..ed049e73cf6 100644 --- a/src/server/game/Reputation/ReputationMgr.cpp +++ b/src/server/game/Reputation/ReputationMgr.cpp @@ -299,9 +299,15 @@ int32 ReputationMgr::GetRenownMaxLevel(FactionEntry const* renownFactionEntry) c void ReputationMgr::ApplyForceReaction(uint32 faction_id, ReputationRank rank, bool apply) { if (apply) + { _forcedReactions[faction_id] = rank; + _player->SetVisibleForcedReaction(faction_id, rank); + } else + { _forcedReactions.erase(faction_id); + _player->RemoveVisibleForcedReaction(faction_id); + } } ReputationFlags ReputationMgr::GetDefaultStateFlags(FactionEntry const* factionEntry) const @@ -321,22 +327,6 @@ ReputationFlags ReputationMgr::GetDefaultStateFlags(FactionEntry const* factionE return flags; } -void ReputationMgr::SendForceReactions() -{ - WorldPackets::Reputation::SetForcedReactions setForcedReactions; - setForcedReactions.Reactions.resize(_forcedReactions.size()); - - std::size_t i = 0; - for (ForcedReactions::const_iterator itr = _forcedReactions.begin(); itr != _forcedReactions.end(); ++itr) - { - WorldPackets::Reputation::ForcedReaction& forcedReaction = setForcedReactions.Reactions[i++]; - forcedReaction.Faction = int32(itr->first); - forcedReaction.Reaction = int32(itr->second); - } - - _player->SendDirectMessage(setForcedReactions.Write()); -} - void ReputationMgr::SendState(FactionState const* faction) { WorldPackets::Reputation::SetFactionStanding setFactionStanding; diff --git a/src/server/game/Reputation/ReputationMgr.h b/src/server/game/Reputation/ReputationMgr.h index 269c323ca8b..e4cd11978ae 100644 --- a/src/server/game/Reputation/ReputationMgr.h +++ b/src/server/game/Reputation/ReputationMgr.h @@ -149,7 +149,6 @@ class TC_GAME_API ReputationMgr public: // senders void SendInitialReputations(); - void SendForceReactions(); void SendState(FactionState const* faction); private: // internal helper functions diff --git a/src/server/game/Server/Packets/CharacterPackets.cpp b/src/server/game/Server/Packets/CharacterPackets.cpp index 1fd503aa176..3ae3077e37a 100644 --- a/src/server/game/Server/Packets/CharacterPackets.cpp +++ b/src/server/game/Server/Packets/CharacterPackets.cpp @@ -189,6 +189,7 @@ ByteBuffer& operator<<(ByteBuffer& data, EnumCharactersResult::CharacterInfoBasi data << uint8(visualItem.Subclass); data << int32(visualItem.SecondaryItemModifiedAppearanceID); data << uint32(visualItem.ItemID); + data << uint32(visualItem.TransmogrifiedItemID); return data; } diff --git a/src/server/game/Server/Packets/CharacterPackets.h b/src/server/game/Server/Packets/CharacterPackets.h index e061ce3f7fa..d10a7f7b031 100644 --- a/src/server/game/Server/Packets/CharacterPackets.h +++ b/src/server/game/Server/Packets/CharacterPackets.h @@ -185,6 +185,7 @@ namespace WorldPackets uint8 InvType = 0; uint8 Subclass = 0; uint32 ItemID = 0; + uint32 TransmogrifiedItemID = 0; }; std::array<VisualItemInfo, 19> VisualItems = { }; diff --git a/src/server/game/Server/Packets/GuildPackets.cpp b/src/server/game/Server/Packets/GuildPackets.cpp index db54693206f..f6c75915527 100644 --- a/src/server/game/Server/Packets/GuildPackets.cpp +++ b/src/server/game/Server/Packets/GuildPackets.cpp @@ -80,16 +80,6 @@ WorldPacket const* WorldPackets::Guild::GuildRoster::Write() return &_worldPacket; } -WorldPacket const* WorldPackets::Guild::GuildRosterUpdate::Write() -{ - _worldPacket << uint32(MemberData.size()); - - for (GuildRosterMemberData const& member : MemberData) - _worldPacket << member; - - return &_worldPacket; -} - void WorldPackets::Guild::GuildUpdateMotdText::Read() { uint32 textLen = _worldPacket.ReadBits(11); @@ -114,6 +104,12 @@ void WorldPackets::Guild::AcceptGuildInvite::Read() _worldPacket >> GuildGuid; } +void WorldPackets::Guild::GuildDeclineInvitation::Read() +{ + _worldPacket >> GuildGuid; + _worldPacket >> Bits<1>(IsAuto); +} + void WorldPackets::Guild::DeclineGuildInvites::Read() { Allow = _worldPacket.ReadBit(); diff --git a/src/server/game/Server/Packets/GuildPackets.h b/src/server/game/Server/Packets/GuildPackets.h index f78d582c83f..2ca2fdbc202 100644 --- a/src/server/game/Server/Packets/GuildPackets.h +++ b/src/server/game/Server/Packets/GuildPackets.h @@ -136,16 +136,6 @@ namespace WorldPackets int32 GuildFlags = 0; }; - class GuildRosterUpdate final : public ServerPacket - { - public: - GuildRosterUpdate() : ServerPacket(SMSG_GUILD_ROSTER_UPDATE, 4) { } - - WorldPacket const* Write() override; - - std::vector<GuildRosterMemberData> MemberData; - }; - class GuildUpdateMotdText final : public ClientPacket { public: @@ -183,7 +173,10 @@ namespace WorldPackets public: GuildDeclineInvitation(WorldPacket&& packet) : ClientPacket(CMSG_GUILD_DECLINE_INVITATION, std::move(packet)) { } - void Read() override { } + void Read() override; + + ObjectGuid GuildGuid; + bool IsAuto = false; }; class DeclineGuildInvites final : public ClientPacket diff --git a/src/server/game/Server/Packets/NPCPackets.cpp b/src/server/game/Server/Packets/NPCPackets.cpp index 7ba4257f4f1..0608a51dbcd 100644 --- a/src/server/game/Server/Packets/NPCPackets.cpp +++ b/src/server/game/Server/Packets/NPCPackets.cpp @@ -24,6 +24,7 @@ ByteBuffer& operator<<(ByteBuffer& data, TreasureItem const& treasureItem) data << Bits<1>(treasureItem.Type); data << int32(treasureItem.ID); data << int32(treasureItem.Quantity); + data << int8(treasureItem.ItemContext); return data; } @@ -76,6 +77,7 @@ ByteBuffer& operator<<(ByteBuffer& data, ClientGossipText const& gossipText) data << int32(gossipText.QuestID); data << int32(gossipText.ContentTuningID); data << int32(gossipText.QuestType); + data << int32(gossipText.Unused1102); data << int32(gossipText.QuestFlags[0]); data << int32(gossipText.QuestFlags[1]); data << int32(gossipText.QuestFlags[2]); diff --git a/src/server/game/Server/Packets/NPCPackets.h b/src/server/game/Server/Packets/NPCPackets.h index 41b96bfc763..895f44f69eb 100644 --- a/src/server/game/Server/Packets/NPCPackets.h +++ b/src/server/game/Server/Packets/NPCPackets.h @@ -67,6 +67,7 @@ namespace WorldPackets GossipOptionRewardType Type = GossipOptionRewardType(0); int32 ID = 0; int32 Quantity = 0; + int8 ItemContext = 0; }; struct TreasureLootList @@ -97,6 +98,7 @@ namespace WorldPackets int32 QuestID = 0; int32 ContentTuningID = 0; int32 QuestType = 0; + int32 Unused1102 = 0; bool Repeatable = false; bool ResetByScheduler = false; bool Important = false; diff --git a/src/server/game/Server/Packets/PartyPackets.cpp b/src/server/game/Server/Packets/PartyPackets.cpp index a45e6c4f7a8..721e80749b3 100644 --- a/src/server/game/Server/Packets/PartyPackets.cpp +++ b/src/server/game/Server/Packets/PartyPackets.cpp @@ -748,6 +748,7 @@ void WorldPackets::Party::SendPingUnit::Read() _worldPacket >> TargetGUID; _worldPacket >> As<uint8>(Type); _worldPacket >> PinFrameID; + _worldPacket >> PingDuration; } WorldPacket const* WorldPackets::Party::ReceivePingUnit::Write() @@ -756,6 +757,7 @@ WorldPacket const* WorldPackets::Party::ReceivePingUnit::Write() _worldPacket << TargetGUID; _worldPacket << uint8(Type); _worldPacket << uint32(PinFrameID); + _worldPacket << PingDuration; return &_worldPacket; } @@ -768,6 +770,7 @@ void WorldPackets::Party::SendPingWorldPoint::Read() _worldPacket >> As<int32>(Type); _worldPacket >> PinFrameID; _worldPacket >> Transport; + _worldPacket >> PingDuration; } WorldPacket const* WorldPackets::Party::ReceivePingWorldPoint::Write() @@ -778,6 +781,7 @@ WorldPacket const* WorldPackets::Party::ReceivePingWorldPoint::Write() _worldPacket << uint8(Type); _worldPacket << uint32(PinFrameID); _worldPacket << Transport; + _worldPacket << PingDuration; return &_worldPacket; } diff --git a/src/server/game/Server/Packets/PartyPackets.h b/src/server/game/Server/Packets/PartyPackets.h index 1adaa3d33dd..2e89556966d 100644 --- a/src/server/game/Server/Packets/PartyPackets.h +++ b/src/server/game/Server/Packets/PartyPackets.h @@ -690,6 +690,7 @@ namespace WorldPackets ObjectGuid TargetGUID; PingSubjectType Type = PingSubjectType::Max; uint32 PinFrameID = 0; + Duration<Milliseconds, int32> PingDuration; }; class ReceivePingUnit final : public ServerPacket @@ -703,6 +704,7 @@ namespace WorldPackets ObjectGuid TargetGUID; PingSubjectType Type = PingSubjectType::Max; uint32 PinFrameID = 0; + Duration<Milliseconds, int32> PingDuration; }; class SendPingWorldPoint final : public ClientPacket @@ -718,6 +720,7 @@ namespace WorldPackets PingSubjectType Type = PingSubjectType::Max; uint32 PinFrameID = 0; ObjectGuid Transport; + Duration<Milliseconds, int32> PingDuration; }; class ReceivePingWorldPoint final : public ServerPacket @@ -732,6 +735,7 @@ namespace WorldPackets TaggedPosition<Position::XYZ> Point; PingSubjectType Type = PingSubjectType::Max; uint32 PinFrameID = 0; + Duration<Milliseconds, int32> PingDuration; ObjectGuid Transport; }; diff --git a/src/server/game/Server/Packets/QuestPackets.cpp b/src/server/game/Server/Packets/QuestPackets.cpp index d1f31ccc7a7..7f4c8a06f3e 100644 --- a/src/server/game/Server/Packets/QuestPackets.cpp +++ b/src/server/game/Server/Packets/QuestPackets.cpp @@ -46,22 +46,6 @@ void QuestGiverStatusQuery::Read() _worldPacket >> QuestGiverGUID; } -void QuestGiverStatusTrackedQuery::Read() -{ - uint32 guidCount = 0; - _worldPacket >> guidCount; - if (guidCount > 1000) - throw PacketArrayMaxCapacityException(guidCount, 1000); - - QuestGiverGUIDs.reserve(guidCount); - for (uint32 i = 0; i < guidCount; ++i) - { - ObjectGuid guid; - _worldPacket >> guid; - QuestGiverGUIDs.insert(guid); - } -} - WorldPacket const* QuestGiverStatus::Write() { _worldPacket << QuestGiver.Guid; @@ -183,6 +167,7 @@ WorldPacket const* QueryQuestInfoResponse::Write() _worldPacket << uint32(Info.Objectives.size()); _worldPacket << uint64(Info.AllowableRaces.RawValue); _worldPacket << uint32(Info.TreasurePickerID.size()); + _worldPacket << uint32(Info.TreasurePickerID2.size()); _worldPacket << int32(Info.Expansion); _worldPacket << int32(Info.ManagedWorldStateID); _worldPacket << int32(Info.QuestSessionBonus); @@ -197,6 +182,9 @@ WorldPacket const* QueryQuestInfoResponse::Write() if (!Info.TreasurePickerID.empty()) _worldPacket.append(Info.TreasurePickerID.data(), Info.TreasurePickerID.size()); + if (!Info.TreasurePickerID2.empty()) + _worldPacket.append(Info.TreasurePickerID2.data(), Info.TreasurePickerID2.size()); + _worldPacket << BitsSize<9>(Info.LogTitle); _worldPacket << BitsSize<12>(Info.LogDescription); _worldPacket << BitsSize<12>(Info.QuestDescription); @@ -377,6 +365,8 @@ ByteBuffer& operator<<(ByteBuffer& data, QuestRewards const& questRewards) ByteBuffer& operator<<(ByteBuffer& data, QuestGiverOfferReward const& offer) { + data << offer.Rewards; // QuestRewards + data << int32(offer.Emotes.size()); data << offer.QuestGiverGUID; data << int32(offer.QuestGiverCreatureID); data << int32(offer.QuestID); @@ -385,7 +375,6 @@ ByteBuffer& operator<<(ByteBuffer& data, QuestGiverOfferReward const& offer) data << int32(offer.QuestFlags[2]); // FlagsEx2 data << int32(offer.SuggestedPartyMembers); data << int32(offer.QuestInfoID); - data << int32(offer.Emotes.size()); for (QuestDescEmote const& emote : offer.Emotes) { data << int32(emote.Type); @@ -394,10 +383,9 @@ ByteBuffer& operator<<(ByteBuffer& data, QuestGiverOfferReward const& offer) data << Bits<1>(offer.AutoLaunched); data << Bits<1>(false); // Unused + data << Bits<1>(offer.ResetByScheduler); data.FlushBits(); - data << offer.Rewards; // QuestRewards - return data; } @@ -540,6 +528,8 @@ WorldPacket const* QuestGiverQuestDetails::Write() WorldPacket const* QuestGiverRequestItems::Write() { + _worldPacket << int32(Collect.size()); + _worldPacket << int32(Currency.size()); _worldPacket << QuestGiverGUID; _worldPacket << int32(QuestGiverCreatureID); _worldPacket << int32(QuestID); @@ -550,8 +540,6 @@ WorldPacket const* QuestGiverRequestItems::Write() _worldPacket << uint32(QuestFlags[2]); _worldPacket << int32(SuggestPartyMembers); _worldPacket << int32(MoneyToGet); - _worldPacket << int32(Collect.size()); - _worldPacket << int32(Currency.size()); _worldPacket << int32(StatusFlags); _worldPacket << int32(QuestInfoID); @@ -569,6 +557,7 @@ WorldPacket const* QuestGiverRequestItems::Write() } _worldPacket << Bits<1>(AutoLaunched); + _worldPacket << Bits<1>(ResetByScheduler); _worldPacket.FlushBits(); _worldPacket << int32(QuestGiverCreatureID); diff --git a/src/server/game/Server/Packets/QuestPackets.h b/src/server/game/Server/Packets/QuestPackets.h index f119eac4e31..2e295a44b9b 100644 --- a/src/server/game/Server/Packets/QuestPackets.h +++ b/src/server/game/Server/Packets/QuestPackets.h @@ -49,16 +49,6 @@ namespace WorldPackets void Read() override { } }; - class QuestGiverStatusTrackedQuery final : public ClientPacket - { - public: - QuestGiverStatusTrackedQuery(WorldPacket&& packet) : ClientPacket(CMSG_QUEST_GIVER_STATUS_TRACKED_QUERY, std::move(packet)) { } - - void Read() override; - - GuidUnorderedSet QuestGiverGUIDs; - }; - struct QuestGiverInfo { QuestGiverInfo() { } @@ -186,6 +176,7 @@ namespace WorldPackets int32 AreaGroupID = 0; int64 TimeAllowed = 0; std::span<int32 const> TreasurePickerID; + std::span<int32 const> TreasurePickerID2; // unknown purpose, used only sometimes and only if TreasurePickerID is empty int32 Expansion = 0; int32 ManagedWorldStateID = 0; int32 QuestSessionBonus = 0; @@ -320,6 +311,7 @@ namespace WorldPackets int32 QuestGiverCreatureID = 0; int32 QuestID = 0; bool AutoLaunched = false; + bool ResetByScheduler = false; int32 SuggestedPartyMembers = 0; QuestRewards Rewards; std::vector<QuestDescEmote> Emotes; @@ -478,6 +470,7 @@ namespace WorldPackets int32 CompEmoteDelay = 0; int32 CompEmoteType = 0; bool AutoLaunched = false; + bool ResetByScheduler = false; int32 SuggestPartyMembers = 0; int32 MoneyToGet = 0; std::vector<QuestObjectiveCollect> Collect; diff --git a/src/server/game/Server/Packets/ReputationPackets.cpp b/src/server/game/Server/Packets/ReputationPackets.cpp index fece28f80b7..0f867067736 100644 --- a/src/server/game/Server/Packets/ReputationPackets.cpp +++ b/src/server/game/Server/Packets/ReputationPackets.cpp @@ -53,22 +53,6 @@ WorldPacket const* WorldPackets::Reputation::InitializeFactions::Write() return &_worldPacket; } -ByteBuffer& operator<<(ByteBuffer& data, WorldPackets::Reputation::ForcedReaction const& forcedReaction) -{ - data << int32(forcedReaction.Faction); - data << int32(forcedReaction.Reaction); - return data; -} - -WorldPacket const* WorldPackets::Reputation::SetForcedReactions::Write() -{ - _worldPacket << uint32(Reactions.size()); - for (ForcedReaction const& reaction : Reactions) - _worldPacket << reaction; - - return &_worldPacket; -} - ByteBuffer& operator<<(ByteBuffer& data, WorldPackets::Reputation::FactionStandingData const& factionStanding) { data << int32(factionStanding.Index); diff --git a/src/server/game/Server/Packets/ReputationPackets.h b/src/server/game/Server/Packets/ReputationPackets.h index 98b0146e9b4..30199fdd246 100644 --- a/src/server/game/Server/Packets/ReputationPackets.h +++ b/src/server/game/Server/Packets/ReputationPackets.h @@ -49,30 +49,6 @@ namespace WorldPackets std::vector<FactionBonusData> Bonuses; }; - class RequestForcedReactions final : public ClientPacket - { - public: - RequestForcedReactions(WorldPacket&& packet) : ClientPacket(CMSG_REQUEST_FORCED_REACTIONS, std::move(packet)) { } - - void Read() override { } - }; - - struct ForcedReaction - { - int32 Faction = 0; - int32 Reaction = 0; - }; - - class SetForcedReactions final : public ServerPacket - { - public: - SetForcedReactions() : ServerPacket(SMSG_SET_FORCED_REACTIONS) { } - - WorldPacket const* Write() override; - - std::vector<ForcedReaction> Reactions; - }; - struct FactionStandingData { FactionStandingData() { } diff --git a/src/server/game/Server/Protocol/Opcodes.cpp b/src/server/game/Server/Protocol/Opcodes.cpp index 9df1813dc0c..5f4455f9770 100644 --- a/src/server/game/Server/Protocol/Opcodes.cpp +++ b/src/server/game/Server/Protocol/Opcodes.cpp @@ -401,6 +401,7 @@ void OpcodeTable::InitializeClientOpcodes() DEFINE_HANDLER(CMSG_CRAFTING_ORDER_CLAIM, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::Handle_NULL); DEFINE_HANDLER(CMSG_CRAFTING_ORDER_CREATE, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::Handle_NULL); DEFINE_HANDLER(CMSG_CRAFTING_ORDER_FULFILL, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::Handle_NULL); + DEFINE_HANDLER(CMSG_CRAFTING_ORDER_GET_NPC_REWARD_INFO, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::Handle_NULL); DEFINE_HANDLER(CMSG_CRAFTING_ORDER_LIST_CRAFTER_ORDERS, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::Handle_NULL); DEFINE_HANDLER(CMSG_CRAFTING_ORDER_LIST_MY_ORDERS, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::Handle_NULL); DEFINE_HANDLER(CMSG_CRAFTING_ORDER_REJECT, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::Handle_NULL); @@ -785,7 +786,6 @@ void OpcodeTable::InitializeClientOpcodes() DEFINE_HANDLER(CMSG_QUEST_GIVER_REQUEST_REWARD, STATUS_LOGGEDIN, PROCESS_INPLACE, &WorldSession::HandleQuestgiverRequestRewardOpcode); DEFINE_HANDLER(CMSG_QUEST_GIVER_STATUS_MULTIPLE_QUERY, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleQuestgiverStatusMultipleQuery); DEFINE_HANDLER(CMSG_QUEST_GIVER_STATUS_QUERY, STATUS_LOGGEDIN, PROCESS_INPLACE, &WorldSession::HandleQuestgiverStatusQueryOpcode); - DEFINE_HANDLER(CMSG_QUEST_GIVER_STATUS_TRACKED_QUERY, STATUS_LOGGEDIN, PROCESS_INPLACE, &WorldSession::HandleQuestgiverStatusTrackedQueryOpcode); DEFINE_HANDLER(CMSG_QUEST_LOG_REMOVE_QUEST, STATUS_LOGGEDIN, PROCESS_INPLACE, &WorldSession::HandleQuestLogRemoveQuest); DEFINE_HANDLER(CMSG_QUEST_POI_QUERY, STATUS_LOGGEDIN, PROCESS_INPLACE, &WorldSession::HandleQuestPOIQuery); DEFINE_HANDLER(CMSG_QUEST_PUSH_RESULT, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleQuestPushResult); @@ -826,7 +826,6 @@ void OpcodeTable::InitializeClientOpcodes() DEFINE_HANDLER(CMSG_REQUEST_COVENANT_CALLINGS, STATUS_UNHANDLED, PROCESS_INPLACE, &WorldSession::Handle_NULL); DEFINE_HANDLER(CMSG_REQUEST_CROWD_CONTROL_SPELL, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::Handle_NULL); DEFINE_HANDLER(CMSG_REQUEST_CURRENCY_DATA_FOR_ACCOUNT_CHARACTERS, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::Handle_NULL); - DEFINE_HANDLER(CMSG_REQUEST_FORCED_REACTIONS, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleRequestForcedReactionsOpcode); DEFINE_HANDLER(CMSG_REQUEST_GARRISON_TALENT_WORLD_QUEST_UNLOCKS, STATUS_UNHANDLED, PROCESS_INPLACE, &WorldSession::Handle_NULL); DEFINE_HANDLER(CMSG_REQUEST_GUILD_PARTY_STATE, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleGuildRequestPartyState); DEFINE_HANDLER(CMSG_REQUEST_GUILD_REWARDS_LIST, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleRequestGuildRewardsList); @@ -834,6 +833,7 @@ void OpcodeTable::InitializeClientOpcodes() DEFINE_HANDLER(CMSG_REQUEST_LFG_LIST_BLACKLIST, STATUS_UNHANDLED, PROCESS_INPLACE, &WorldSession::Handle_NULL); DEFINE_HANDLER(CMSG_REQUEST_MYTHIC_PLUS_AFFIXES, STATUS_UNHANDLED, PROCESS_INPLACE, &WorldSession::Handle_NULL); DEFINE_HANDLER(CMSG_REQUEST_MYTHIC_PLUS_SEASON_DATA, STATUS_UNHANDLED, PROCESS_INPLACE, &WorldSession::Handle_NULL); + DEFINE_HANDLER(CMSG_REQUEST_PARTY_ELIGIBILITY_FOR_DELVE_TIERS, STATUS_UNHANDLED, PROCESS_INPLACE, &WorldSession::Handle_NULL); DEFINE_HANDLER(CMSG_REQUEST_PARTY_JOIN_UPDATES, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleRequestPartyJoinUpdates); DEFINE_HANDLER(CMSG_REQUEST_PARTY_MEMBER_STATS, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleRequestPartyMemberStatsOpcode); DEFINE_HANDLER(CMSG_REQUEST_PET_INFO, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleRequestPetInfo); @@ -1554,7 +1554,6 @@ void OpcodeTable::InitializeServerOpcodes() DEFINE_SERVER_OPCODE_HANDLER(SMSG_GUILD_RESET, STATUS_UNHANDLED, CONNECTION_TYPE_REALM); DEFINE_SERVER_OPCODE_HANDLER(SMSG_GUILD_REWARD_LIST, STATUS_NEVER, CONNECTION_TYPE_REALM); DEFINE_SERVER_OPCODE_HANDLER(SMSG_GUILD_ROSTER, STATUS_NEVER, CONNECTION_TYPE_REALM); - DEFINE_SERVER_OPCODE_HANDLER(SMSG_GUILD_ROSTER_UPDATE, STATUS_NEVER, CONNECTION_TYPE_REALM); DEFINE_SERVER_OPCODE_HANDLER(SMSG_GUILD_SEND_RANK_CHANGE, STATUS_NEVER, CONNECTION_TYPE_REALM); DEFINE_SERVER_OPCODE_HANDLER(SMSG_HARDCORE_DEATH_ALERT, STATUS_UNHANDLED, CONNECTION_TYPE_REALM); DEFINE_SERVER_OPCODE_HANDLER(SMSG_HEALTH_UPDATE, STATUS_NEVER, CONNECTION_TYPE_REALM); @@ -1813,6 +1812,7 @@ void OpcodeTable::InitializeServerOpcodes() DEFINE_SERVER_OPCODE_HANDLER(SMSG_OVERRIDE_LIGHT, STATUS_NEVER, CONNECTION_TYPE_REALM); DEFINE_SERVER_OPCODE_HANDLER(SMSG_PAGE_TEXT, STATUS_NEVER, CONNECTION_TYPE_REALM); DEFINE_SERVER_OPCODE_HANDLER(SMSG_PARTY_COMMAND_RESULT, STATUS_NEVER, CONNECTION_TYPE_REALM); + DEFINE_SERVER_OPCODE_HANDLER(SMSG_PARTY_ELIGIBILITY_FOR_DELVE_TIERS_RESPONSE, STATUS_UNHANDLED, CONNECTION_TYPE_REALM); DEFINE_SERVER_OPCODE_HANDLER(SMSG_PARTY_INVITE, STATUS_NEVER, CONNECTION_TYPE_REALM); DEFINE_SERVER_OPCODE_HANDLER(SMSG_PARTY_KILL_LOG, STATUS_NEVER, CONNECTION_TYPE_REALM); DEFINE_SERVER_OPCODE_HANDLER(SMSG_PARTY_MEMBER_FULL_STATE, STATUS_NEVER, CONNECTION_TYPE_REALM); @@ -2054,7 +2054,6 @@ void OpcodeTable::InitializeServerOpcodes() DEFINE_SERVER_OPCODE_HANDLER(SMSG_SET_FACTION_STANDING, STATUS_NEVER, CONNECTION_TYPE_INSTANCE); DEFINE_SERVER_OPCODE_HANDLER(SMSG_SET_FACTION_VISIBLE, STATUS_NEVER, CONNECTION_TYPE_INSTANCE); DEFINE_SERVER_OPCODE_HANDLER(SMSG_SET_FLAT_SPELL_MODIFIER, STATUS_NEVER, CONNECTION_TYPE_INSTANCE); - DEFINE_SERVER_OPCODE_HANDLER(SMSG_SET_FORCED_REACTIONS, STATUS_NEVER, CONNECTION_TYPE_INSTANCE); DEFINE_SERVER_OPCODE_HANDLER(SMSG_SET_ITEM_PURCHASE_DATA, STATUS_NEVER, CONNECTION_TYPE_INSTANCE); DEFINE_SERVER_OPCODE_HANDLER(SMSG_SET_LOOT_METHOD_FAILED, STATUS_UNHANDLED, CONNECTION_TYPE_REALM); DEFINE_SERVER_OPCODE_HANDLER(SMSG_SET_MAX_WEEKLY_QUANTITY, STATUS_UNHANDLED, CONNECTION_TYPE_REALM); @@ -2072,6 +2071,7 @@ void OpcodeTable::InitializeServerOpcodes() DEFINE_SERVER_OPCODE_HANDLER(SMSG_SET_VEHICLE_REC_ID, STATUS_NEVER, CONNECTION_TYPE_INSTANCE); DEFINE_SERVER_OPCODE_HANDLER(SMSG_SHADOWLANDS_CAPACITANCE_UPDATE, STATUS_UNHANDLED, CONNECTION_TYPE_REALM); DEFINE_SERVER_OPCODE_HANDLER(SMSG_SHIPMENT_FACTION_UPDATE_RESULT, STATUS_UNHANDLED, CONNECTION_TYPE_INSTANCE); + DEFINE_SERVER_OPCODE_HANDLER(SMSG_SHOW_DELVES_COMPANION_CONFIGURATION_UI, STATUS_UNHANDLED, CONNECTION_TYPE_REALM); DEFINE_SERVER_OPCODE_HANDLER(SMSG_SHOW_DELVES_DISPLAY_UI, STATUS_UNHANDLED, CONNECTION_TYPE_REALM); DEFINE_SERVER_OPCODE_HANDLER(SMSG_SHOW_NEUTRAL_PLAYER_FACTION_SELECT_UI, STATUS_UNHANDLED, CONNECTION_TYPE_REALM); DEFINE_SERVER_OPCODE_HANDLER(SMSG_SHOW_QUEST_COMPLETION_TEXT, STATUS_UNHANDLED, CONNECTION_TYPE_REALM); diff --git a/src/server/game/Server/Protocol/Opcodes.h b/src/server/game/Server/Protocol/Opcodes.h index e6dbc884121..0a90b36114e 100644 --- a/src/server/game/Server/Protocol/Opcodes.h +++ b/src/server/game/Server/Protocol/Opcodes.h @@ -48,35 +48,35 @@ constexpr uint16 UNKNOWN_OPCODE = 0xBADD; // special marker value for uninitia enum OpcodeClient : uint16 { - CMSG_ABANDON_NPE_RESPONSE = 0x33E9, + CMSG_ABANDON_NPE_RESPONSE = 0x33E8, CMSG_ACCEPT_GUILD_INVITE = 0x35FD, - CMSG_ACCEPT_RETURNING_PLAYER_PROMPT = 0x33AA, + CMSG_ACCEPT_RETURNING_PLAYER_PROMPT = 0x33A9, CMSG_ACCEPT_SOCIAL_CONTRACT = 0x3744, CMSG_ACCEPT_TRADE = 0x315A, CMSG_ACCEPT_WARGAME_INVITE = 0x35E0, - CMSG_ACCOUNT_BANK_DEPOSIT_MONEY = 0x342B, - CMSG_ACCOUNT_BANK_WITHDRAW_MONEY = 0x342C, + CMSG_ACCOUNT_BANK_DEPOSIT_MONEY = 0x342A, + CMSG_ACCOUNT_BANK_WITHDRAW_MONEY = 0x342B, CMSG_ACCOUNT_NOTIFICATION_ACKNOWLEDGED = 0x3733, - CMSG_ACTIVATE_SOULBIND = 0x33D8, + CMSG_ACTIVATE_SOULBIND = 0x33D7, CMSG_ACTIVATE_TAXI = 0x34B3, CMSG_ADDON_LIST = 0x35D8, - CMSG_ADD_ACCOUNT_COSMETIC = 0x32C2, + CMSG_ADD_ACCOUNT_COSMETIC = 0x32C1, CMSG_ADD_BATTLENET_FRIEND = 0x3658, CMSG_ADD_FRIEND = 0x36CD, CMSG_ADD_IGNORE = 0x36D1, - CMSG_ADD_TOY = 0x32C1, + CMSG_ADD_TOY = 0x32C0, CMSG_ADVENTURE_JOURNAL_OPEN_QUEST = 0x3206, - CMSG_ADVENTURE_JOURNAL_UPDATE_SUGGESTIONS = 0x33DB, - CMSG_ADVENTURE_MAP_START_QUEST = 0x337D, + CMSG_ADVENTURE_JOURNAL_UPDATE_SUGGESTIONS = 0x33DA, + CMSG_ADVENTURE_MAP_START_QUEST = 0x337C, CMSG_ALTER_APPEARANCE = 0x3504, CMSG_AREA_SPIRIT_HEALER_QUERY = 0x34B8, CMSG_AREA_SPIRIT_HEALER_QUEUE = 0x34B9, CMSG_AREA_TRIGGER = 0x31D9, CMSG_ARTIFACT_ADD_POWER = 0x31AA, CMSG_ARTIFACT_SET_APPEARANCE = 0x31AC, - CMSG_ASSIGN_EQUIPMENT_SET_SPEC = 0x3212, - CMSG_ATTACK_STOP = 0x3270, - CMSG_ATTACK_SWING = 0x326F, + CMSG_ASSIGN_EQUIPMENT_SET_SPEC = 0x3211, + CMSG_ATTACK_STOP = 0x326F, + CMSG_ATTACK_SWING = 0x326E, CMSG_AUCTIONABLE_TOKEN_SELL = 0x36E3, CMSG_AUCTIONABLE_TOKEN_SELL_AT_MARKET_PRICE = 0x36E4, CMSG_AUCTION_BROWSE_QUERY = 0x34D8, @@ -102,21 +102,21 @@ enum OpcodeClient : uint16 CMSG_AUTOBANK_REAGENT = 0x3999, CMSG_AUTOSTORE_BANK_ITEM = 0x3996, CMSG_AUTOSTORE_BANK_REAGENT = 0x3998, - CMSG_AUTO_DEPOSIT_ACCOUNT_BANK = 0x3436, + CMSG_AUTO_DEPOSIT_ACCOUNT_BANK = 0x3435, CMSG_AUTO_EQUIP_ITEM = 0x399A, CMSG_AUTO_EQUIP_ITEM_SLOT = 0x399F, CMSG_AUTO_GUILD_BANK_ITEM = 0x34BF, CMSG_AUTO_STORE_BAG_ITEM = 0x399B, CMSG_AUTO_STORE_GUILD_BANK_ITEM = 0x34C8, - CMSG_AZERITE_EMPOWERED_ITEM_SELECT_POWER = 0x33A6, - CMSG_AZERITE_EMPOWERED_ITEM_VIEWED = 0x3388, - CMSG_AZERITE_ESSENCE_ACTIVATE_ESSENCE = 0x33A8, - CMSG_AZERITE_ESSENCE_UNLOCK_MILESTONE = 0x33A7, + CMSG_AZERITE_EMPOWERED_ITEM_SELECT_POWER = 0x33A5, + CMSG_AZERITE_EMPOWERED_ITEM_VIEWED = 0x3387, + CMSG_AZERITE_ESSENCE_ACTIVATE_ESSENCE = 0x33A7, + CMSG_AZERITE_ESSENCE_UNLOCK_MILESTONE = 0x33A6, CMSG_BANKER_ACTIVATE = 0x34BB, CMSG_BATTLEFIELD_LEAVE = 0x3173, CMSG_BATTLEFIELD_LIST = 0x317E, CMSG_BATTLEFIELD_PORT = 0x353A, - CMSG_BATTLEMASTER_HELLO = 0x32DF, + CMSG_BATTLEMASTER_HELLO = 0x32DE, CMSG_BATTLEMASTER_JOIN = 0x3531, CMSG_BATTLEMASTER_JOIN_ARENA = 0x3532, CMSG_BATTLEMASTER_JOIN_BRAWL = 0x3538, @@ -152,7 +152,7 @@ enum OpcodeClient : uint16 CMSG_BLACK_MARKET_BID_ON_ITEM = 0x3542, CMSG_BLACK_MARKET_OPEN = 0x3540, CMSG_BLACK_MARKET_REQUEST_ITEMS = 0x3541, - CMSG_BONUS_ROLL = 0x33A9, + CMSG_BONUS_ROLL = 0x33A8, CMSG_BUG_REPORT = 0x3683, CMSG_BUSY_TRADE = 0x3158, CMSG_BUY_ACCOUNT_BANK_TAB = 0x3597, @@ -178,22 +178,22 @@ enum OpcodeClient : uint16 CMSG_CALENDAR_UPDATE_EVENT = 0x367C, CMSG_CANCEL_AURA = 0x31AE, CMSG_CANCEL_AUTO_REPEAT_SPELL = 0x34F6, - CMSG_CANCEL_CAST = 0x32C8, - CMSG_CANCEL_CHANNELLING = 0x3289, - CMSG_CANCEL_GROWTH_AURA = 0x3291, - CMSG_CANCEL_MASTER_LOOT_ROLL = 0x321E, + CMSG_CANCEL_CAST = 0x32C7, + CMSG_CANCEL_CHANNELLING = 0x3288, + CMSG_CANCEL_GROWTH_AURA = 0x3290, + CMSG_CANCEL_MASTER_LOOT_ROLL = 0x321D, CMSG_CANCEL_MOD_SPEED_NO_CONTROL_AURAS = 0x31AD, - CMSG_CANCEL_MOUNT_AURA = 0x32A4, + CMSG_CANCEL_MOUNT_AURA = 0x32A3, CMSG_CANCEL_QUEUED_SPELL = 0x317F, CMSG_CANCEL_TEMP_ENCHANTMENT = 0x3501, CMSG_CANCEL_TRADE = 0x315C, CMSG_CAN_DUEL = 0x3660, CMSG_CAN_REDEEM_TOKEN_FOR_BALANCE = 0x3705, - CMSG_CAST_SPELL = 0x32C5, + CMSG_CAST_SPELL = 0x32C4, CMSG_CHALLENGE_MODE_REQUEST_LEADERS = 0x305E, - CMSG_CHANGE_BAG_SLOT_FLAG = 0x3361, - CMSG_CHANGE_BANK_BAG_SLOT_FLAG = 0x3362, - CMSG_CHANGE_MONUMENT_APPEARANCE = 0x3342, + CMSG_CHANGE_BAG_SLOT_FLAG = 0x3360, + CMSG_CHANGE_BANK_BAG_SLOT_FLAG = 0x3361, + CMSG_CHANGE_MONUMENT_APPEARANCE = 0x3341, CMSG_CHANGE_REALM_TICKET = 0x36F7, CMSG_CHANGE_SUB_GROUP = 0x364A, CMSG_CHARACTER_CHECK_UPGRADE = 0x36C3, @@ -243,25 +243,25 @@ enum OpcodeClient : uint16 CMSG_CHAT_REPORT_IGNORED = 0x37DF, CMSG_CHAT_UNREGISTER_ALL_ADDON_PREFIXES = 0x37E2, CMSG_CHECK_CHARACTER_NAME_AVAILABILITY = 0x3643, - CMSG_CHECK_IS_ADVENTURE_MAP_POI_VALID = 0x3261, - CMSG_CHOICE_RESPONSE = 0x32CD, - CMSG_CHROMIE_TIME_SELECT_EXPANSION = 0x33D7, - CMSG_CLAIM_WEEKLY_REWARD = 0x33B4, - CMSG_CLASS_TALENTS_DELETE_CONFIG = 0x3410, - CMSG_CLASS_TALENTS_NOTIFY_EMPTY_CONFIG = 0x3216, - CMSG_CLASS_TALENTS_NOTIFY_VALIDATION_FAILED = 0x3412, - CMSG_CLASS_TALENTS_RENAME_CONFIG = 0x340F, - CMSG_CLASS_TALENTS_REQUEST_NEW_CONFIG = 0x340E, - CMSG_CLASS_TALENTS_SET_STARTER_BUILD_ACTIVE = 0x3413, - CMSG_CLASS_TALENTS_SET_USES_SHARED_ACTION_BARS = 0x3215, + CMSG_CHECK_IS_ADVENTURE_MAP_POI_VALID = 0x3260, + CMSG_CHOICE_RESPONSE = 0x32CC, + CMSG_CHROMIE_TIME_SELECT_EXPANSION = 0x33D6, + CMSG_CLAIM_WEEKLY_REWARD = 0x33B3, + CMSG_CLASS_TALENTS_DELETE_CONFIG = 0x340F, + CMSG_CLASS_TALENTS_NOTIFY_EMPTY_CONFIG = 0x3215, + CMSG_CLASS_TALENTS_NOTIFY_VALIDATION_FAILED = 0x3411, + CMSG_CLASS_TALENTS_RENAME_CONFIG = 0x340E, + CMSG_CLASS_TALENTS_REQUEST_NEW_CONFIG = 0x340D, + CMSG_CLASS_TALENTS_SET_STARTER_BUILD_ACTIVE = 0x3412, + CMSG_CLASS_TALENTS_SET_USES_SHARED_ACTION_BARS = 0x3214, CMSG_CLEAR_NEW_APPEARANCE = 0x3129, CMSG_CLEAR_RAID_MARKER = 0x31A6, CMSG_CLEAR_TRADE_ITEM = 0x315E, CMSG_CLIENT_PORT_GRAVEYARD = 0x353C, CMSG_CLOSE_INTERACTION = 0x349A, - CMSG_CLOSE_QUEST_CHOICE = 0x32CE, - CMSG_CLOSE_RUNEFORGE_INTERACTION = 0x33DF, - CMSG_CLOSE_TRAIT_SYSTEM_INTERACTION = 0x3414, + CMSG_CLOSE_QUEST_CHOICE = 0x32CD, + CMSG_CLOSE_RUNEFORGE_INTERACTION = 0x33DE, + CMSG_CLOSE_TRAIT_SYSTEM_INTERACTION = 0x3413, CMSG_CLUB_FINDER_APPLICATION_RESPONSE = 0x371C, CMSG_CLUB_FINDER_GET_APPLICANTS_LIST = 0x371A, CMSG_CLUB_FINDER_POST = 0x3717, @@ -289,26 +289,27 @@ enum OpcodeClient : uint16 CMSG_COMPLETE_CINEMATIC = 0x355A, CMSG_COMPLETE_MOVIE = 0x34EC, CMSG_CONFIRM_ARTIFACT_RESPEC = 0x31AB, - CMSG_CONFIRM_RESPEC_WIPE = 0x3218, + CMSG_CONFIRM_RESPEC_WIPE = 0x3217, CMSG_CONNECT_TO_FAILED = 0x35D4, CMSG_CONSUMABLE_TOKEN_BUY = 0x36E6, CMSG_CONSUMABLE_TOKEN_BUY_AT_MARKET_PRICE = 0x36E7, CMSG_CONSUMABLE_TOKEN_CAN_VETERAN_BUY = 0x36E5, CMSG_CONSUMABLE_TOKEN_REDEEM = 0x36E9, CMSG_CONSUMABLE_TOKEN_REDEEM_CONFIRMATION = 0x36EA, - CMSG_CONTENT_TRACKING_START_TRACKING = 0x3424, - CMSG_CONTENT_TRACKING_STOP_TRACKING = 0x3425, + CMSG_CONTENT_TRACKING_START_TRACKING = 0x3423, + CMSG_CONTENT_TRACKING_STOP_TRACKING = 0x3424, CMSG_CONTRIBUTION_CONTRIBUTE = 0x356F, CMSG_CONTRIBUTION_LAST_UPDATE_REQUEST = 0x3570, CMSG_CONVERSATION_CINEMATIC_READY = 0x355C, CMSG_CONVERSATION_LINE_STARTED = 0x355B, - CMSG_CONVERT_ITEM_TO_BIND_TO_ACCOUNT = 0x3435, + CMSG_CONVERT_ITEM_TO_BIND_TO_ACCOUNT = 0x3434, CMSG_CONVERT_RAID = 0x364C, CMSG_COVENANT_RENOWN_REQUEST_CATCHUP_STATE = 0x3583, CMSG_CRAFTING_ORDER_CANCEL = 0x358F, CMSG_CRAFTING_ORDER_CLAIM = 0x358C, CMSG_CRAFTING_ORDER_CREATE = 0x3588, CMSG_CRAFTING_ORDER_FULFILL = 0x358E, + CMSG_CRAFTING_ORDER_GET_NPC_REWARD_INFO = 0x358B, CMSG_CRAFTING_ORDER_LIST_CRAFTER_ORDERS = 0x358A, CMSG_CRAFTING_ORDER_LIST_MY_ORDERS = 0x3589, CMSG_CRAFTING_ORDER_REJECT = 0x3590, @@ -316,7 +317,7 @@ enum OpcodeClient : uint16 CMSG_CRAFTING_ORDER_REPORT_PLAYER = 0x3591, CMSG_CRAFTING_ORDER_UPDATE_IGNORE_LIST = 0x3592, CMSG_CREATE_CHARACTER = 0x3642, - CMSG_CREATE_SHIPMENT = 0x332B, + CMSG_CREATE_SHIPMENT = 0x332A, CMSG_DB_QUERY_BULK = 0x35E4, CMSG_DECLINE_GUILD_INVITES = 0x352E, CMSG_DECLINE_PETITION = 0x3549, @@ -324,8 +325,8 @@ enum OpcodeClient : uint16 CMSG_DELVE_TELEPORT_OUT = 0x359E, CMSG_DEL_FRIEND = 0x36CE, CMSG_DEL_IGNORE = 0x36D2, - CMSG_DEPOSIT_REAGENT_BANK = 0x336B, - CMSG_DESTROY_ITEM = 0x32BB, + CMSG_DEPOSIT_REAGENT_BANK = 0x336A, + CMSG_DESTROY_ITEM = 0x32BA, CMSG_DF_BOOT_PLAYER_VOTE = 0x3618, CMSG_DF_CONFIRM_EXPAND_SEARCH = 0x360A, CMSG_DF_GET_JOIN_STATUS = 0x3616, @@ -339,10 +340,10 @@ enum OpcodeClient : uint16 CMSG_DISCARDED_TIME_SYNC_ACKS = 0x3A42, CMSG_DISMISS_CRITTER = 0x3508, CMSG_DO_COUNTDOWN = 0x3716, - CMSG_DO_MASTER_LOOT_ROLL = 0x321D, + CMSG_DO_MASTER_LOOT_ROLL = 0x321C, CMSG_DO_READY_CHECK = 0x3632, CMSG_DUEL_RESPONSE = 0x34F1, - CMSG_EJECT_PASSENGER = 0x3256, + CMSG_EJECT_PASSENGER = 0x3255, CMSG_EMOTE = 0x3556, CMSG_ENABLE_NAGLE = 0x377F, CMSG_ENABLE_TAXI_NODE = 0x34B1, @@ -355,45 +356,45 @@ enum OpcodeClient : uint16 CMSG_GAME_EVENT_DEBUG_ENABLE = 0x31B1, CMSG_GAME_OBJ_REPORT_USE = 0x34FE, CMSG_GAME_OBJ_USE = 0x34FD, - CMSG_GARRISON_ADD_FOLLOWER_HEALTH = 0x3326, - CMSG_GARRISON_ASSIGN_FOLLOWER_TO_BUILDING = 0x330C, - CMSG_GARRISON_CANCEL_CONSTRUCTION = 0x32F9, - CMSG_GARRISON_CHECK_UPGRADEABLE = 0x335D, - CMSG_GARRISON_COMPLETE_MISSION = 0x334F, - CMSG_GARRISON_FULLY_HEAL_ALL_FOLLOWERS = 0x3327, - CMSG_GARRISON_GENERATE_RECRUITS = 0x330F, - CMSG_GARRISON_GET_CLASS_SPEC_CATEGORY_INFO = 0x331E, - CMSG_GARRISON_GET_MAP_DATA = 0x3325, - CMSG_GARRISON_GET_MISSION_REWARD = 0x3381, - CMSG_GARRISON_LEARN_TALENT = 0x331A, - CMSG_GARRISON_MISSION_BONUS_ROLL = 0x3351, - CMSG_GARRISON_PURCHASE_BUILDING = 0x32F5, - CMSG_GARRISON_RECRUIT_FOLLOWER = 0x3311, - CMSG_GARRISON_REMOVE_FOLLOWER = 0x3346, - CMSG_GARRISON_REMOVE_FOLLOWER_FROM_BUILDING = 0x330D, - CMSG_GARRISON_RENAME_FOLLOWER = 0x330E, - CMSG_GARRISON_REQUEST_BLUEPRINT_AND_SPECIALIZATION_DATA = 0x32F4, - CMSG_GARRISON_REQUEST_SHIPMENT_INFO = 0x3329, - CMSG_GARRISON_RESEARCH_TALENT = 0x3312, - CMSG_GARRISON_SET_BUILDING_ACTIVE = 0x32F6, - CMSG_GARRISON_SET_FOLLOWER_FAVORITE = 0x330A, - CMSG_GARRISON_SET_FOLLOWER_INACTIVE = 0x3302, - CMSG_GARRISON_SET_RECRUITMENT_PREFERENCES = 0x3310, - CMSG_GARRISON_SOCKET_TALENT = 0x33EC, - CMSG_GARRISON_START_MISSION = 0x334E, - CMSG_GARRISON_SWAP_BUILDINGS = 0x32FA, + CMSG_GARRISON_ADD_FOLLOWER_HEALTH = 0x3325, + CMSG_GARRISON_ASSIGN_FOLLOWER_TO_BUILDING = 0x330B, + CMSG_GARRISON_CANCEL_CONSTRUCTION = 0x32F8, + CMSG_GARRISON_CHECK_UPGRADEABLE = 0x335C, + CMSG_GARRISON_COMPLETE_MISSION = 0x334E, + CMSG_GARRISON_FULLY_HEAL_ALL_FOLLOWERS = 0x3326, + CMSG_GARRISON_GENERATE_RECRUITS = 0x330E, + CMSG_GARRISON_GET_CLASS_SPEC_CATEGORY_INFO = 0x331D, + CMSG_GARRISON_GET_MAP_DATA = 0x3324, + CMSG_GARRISON_GET_MISSION_REWARD = 0x3380, + CMSG_GARRISON_LEARN_TALENT = 0x3319, + CMSG_GARRISON_MISSION_BONUS_ROLL = 0x3350, + CMSG_GARRISON_PURCHASE_BUILDING = 0x32F4, + CMSG_GARRISON_RECRUIT_FOLLOWER = 0x3310, + CMSG_GARRISON_REMOVE_FOLLOWER = 0x3345, + CMSG_GARRISON_REMOVE_FOLLOWER_FROM_BUILDING = 0x330C, + CMSG_GARRISON_RENAME_FOLLOWER = 0x330D, + CMSG_GARRISON_REQUEST_BLUEPRINT_AND_SPECIALIZATION_DATA = 0x32F3, + CMSG_GARRISON_REQUEST_SHIPMENT_INFO = 0x3328, + CMSG_GARRISON_RESEARCH_TALENT = 0x3311, + CMSG_GARRISON_SET_BUILDING_ACTIVE = 0x32F5, + CMSG_GARRISON_SET_FOLLOWER_FAVORITE = 0x3309, + CMSG_GARRISON_SET_FOLLOWER_INACTIVE = 0x3301, + CMSG_GARRISON_SET_RECRUITMENT_PREFERENCES = 0x330F, + CMSG_GARRISON_SOCKET_TALENT = 0x33EB, + CMSG_GARRISON_START_MISSION = 0x334D, + CMSG_GARRISON_SWAP_BUILDINGS = 0x32F9, CMSG_GENERATE_RANDOM_CHARACTER_NAME = 0x35E7, CMSG_GET_ACCOUNT_CHARACTER_LIST = 0x36B3, CMSG_GET_ACCOUNT_NOTIFICATIONS = 0x3732, - CMSG_GET_GARRISON_INFO = 0x32EF, + CMSG_GET_GARRISON_INFO = 0x32EE, CMSG_GET_ITEM_PURCHASE_DATA = 0x3544, - CMSG_GET_LANDING_PAGE_SHIPMENTS = 0x332A, - CMSG_GET_MIRROR_IMAGE_DATA = 0x32BF, + CMSG_GET_LANDING_PAGE_SHIPMENTS = 0x3329, + CMSG_GET_MIRROR_IMAGE_DATA = 0x32BE, CMSG_GET_PVP_OPTIONS_ENABLED = 0x35EE, CMSG_GET_RAF_ACCOUNT_INFO = 0x3720, CMSG_GET_REGIONWIDE_CHARACTER_RESTRICTION_AND_MAIL_DATA = 0x375E, CMSG_GET_REMAINING_GAME_TIME = 0x36E8, - CMSG_GET_TROPHY_LIST = 0x333F, + CMSG_GET_TROPHY_LIST = 0x333E, CMSG_GET_UNDELETE_CHARACTER_COOLDOWN_STATUS = 0x36DC, CMSG_GET_VAS_ACCOUNT_CHARACTER_LIST = 0x36ED, CMSG_GET_VAS_TRANSFER_TARGET_REALM_LIST = 0x36EE, @@ -445,20 +446,20 @@ enum OpcodeClient : uint16 CMSG_GUILD_UPDATE_INFO_TEXT = 0x502A, CMSG_GUILD_UPDATE_MOTD_TEXT = 0x5029, CMSG_HEARTH_AND_RESURRECT = 0x3516, - CMSG_HIDE_QUEST_CHOICE = 0x32CF, + CMSG_HIDE_QUEST_CHOICE = 0x32CE, CMSG_HOTFIX_REQUEST = 0x35E5, CMSG_IGNORE_TRADE = 0x3159, CMSG_INITIATE_ROLE_POLL = 0x35DA, CMSG_INITIATE_TRADE = 0x3156, CMSG_INSPECT = 0x353E, CMSG_INSTANCE_LOCK_RESPONSE = 0x351B, - CMSG_ISLAND_QUEUE = 0x33B0, + CMSG_ISLAND_QUEUE = 0x33AF, CMSG_ITEM_PURCHASE_REFUND = 0x3545, - CMSG_ITEM_TEXT_QUERY = 0x335E, + CMSG_ITEM_TEXT_QUERY = 0x335D, CMSG_JOIN_PET_BATTLE_QUEUE = 0x31E0, CMSG_JOIN_RATED_BATTLEGROUND = 0x3179, CMSG_KEEP_ALIVE = 0x367D, - CMSG_KEYBOUND_OVERRIDE = 0x3233, + CMSG_KEYBOUND_OVERRIDE = 0x3232, CMSG_LATENCY_REPORT = 0x3785, CMSG_LEARN_PVP_TALENTS = 0x356E, CMSG_LEARN_TALENTS = 0x356C, @@ -470,17 +471,17 @@ enum OpcodeClient : uint16 CMSG_LFG_LIST_GET_STATUS = 0x360D, CMSG_LFG_LIST_INVITE_APPLICANT = 0x3612, CMSG_LFG_LIST_INVITE_RESPONSE = 0x3613, - CMSG_LFG_LIST_JOIN = 0x33A4, + CMSG_LFG_LIST_JOIN = 0x33A3, CMSG_LFG_LIST_LEAVE = 0x360C, CMSG_LFG_LIST_SEARCH = 0x360E, - CMSG_LFG_LIST_UPDATE_REQUEST = 0x33A5, + CMSG_LFG_LIST_UPDATE_REQUEST = 0x33A4, CMSG_LIST_INVENTORY = 0x34A8, CMSG_LIVE_REGION_ACCOUNT_RESTORE = 0x36B6, CMSG_LIVE_REGION_CHARACTER_COPY = 0x36B5, CMSG_LIVE_REGION_GET_ACCOUNT_CHARACTER_LIST = 0x36B4, CMSG_LIVE_REGION_KEY_BINDINGS_COPY = 0x36B7, CMSG_LOADING_SCREEN_NOTIFY = 0x35F8, - CMSG_LOAD_SELECTED_TROPHY = 0x3340, + CMSG_LOAD_SELECTED_TROPHY = 0x333F, CMSG_LOBBY_MATCHMAKER_ACCEPT_PARTY_INVITE = 0x373D, CMSG_LOBBY_MATCHMAKER_CREATE_CHARACTER = 0x374B, CMSG_LOBBY_MATCHMAKER_LEAVE_PARTY = 0x3740, @@ -495,22 +496,22 @@ enum OpcodeClient : uint16 CMSG_LOGOUT_REQUEST = 0x34E6, CMSG_LOG_DISCONNECT = 0x377D, CMSG_LOG_STREAMING_ERROR = 0x3781, - CMSG_LOOT_ITEM = 0x321B, - CMSG_LOOT_MONEY = 0x321A, - CMSG_LOOT_RELEASE = 0x321F, - CMSG_LOOT_ROLL = 0x3220, - CMSG_LOOT_UNIT = 0x3219, + CMSG_LOOT_ITEM = 0x321A, + CMSG_LOOT_MONEY = 0x3219, + CMSG_LOOT_RELEASE = 0x321E, + CMSG_LOOT_ROLL = 0x321F, + CMSG_LOOT_UNIT = 0x3218, CMSG_LOW_LEVEL_RAID1 = 0x369F, CMSG_LOW_LEVEL_RAID2 = 0x3522, CMSG_MAIL_CREATE_TEXT_ITEM = 0x3550, - CMSG_MAIL_DELETE = 0x3235, + CMSG_MAIL_DELETE = 0x3234, CMSG_MAIL_GET_LIST = 0x354B, CMSG_MAIL_MARK_AS_READ = 0x354F, CMSG_MAIL_RETURN_TO_SENDER = 0x3653, CMSG_MAIL_TAKE_ITEM = 0x354D, CMSG_MAIL_TAKE_MONEY = 0x354C, - CMSG_MAKE_CONTITIONAL_APPEARANCE_PERMANENT = 0x3237, - CMSG_MASTER_LOOT_ITEM = 0x321C, + CMSG_MAKE_CONTITIONAL_APPEARANCE_PERMANENT = 0x3236, + CMSG_MASTER_LOOT_ITEM = 0x321B, CMSG_MERGE_GUILD_BANK_ITEM_WITH_GUILD_BANK_ITEM = 0x34C9, CMSG_MERGE_GUILD_BANK_ITEM_WITH_ITEM = 0x34C6, CMSG_MERGE_ITEM_WITH_GUILD_BANK_ITEM = 0x34C4, @@ -518,7 +519,7 @@ enum OpcodeClient : uint16 CMSG_MISSILE_TRAJECTORY_COLLISION = 0x318A, CMSG_MOUNT_CLEAR_FANFARE = 0x3127, CMSG_MOUNT_SET_FAVORITE = 0x3630, - CMSG_MOUNT_SPECIAL_ANIM = 0x32A5, + CMSG_MOUNT_SPECIAL_ANIM = 0x32A4, CMSG_MOVE_ADD_IMPULSE_ACK = 0x3A51, CMSG_MOVE_APPLY_INERTIA_ACK = 0x3A4F, CMSG_MOVE_APPLY_MOVEMENT_FORCE_ACK = 0x3A15, @@ -613,24 +614,24 @@ enum OpcodeClient : uint16 CMSG_NEXT_CINEMATIC_CAMERA = 0x3559, CMSG_OBJECT_UPDATE_FAILED = 0x3180, CMSG_OBJECT_UPDATE_RESCUED = 0x3181, - CMSG_OFFER_PETITION = 0x33D6, + CMSG_OFFER_PETITION = 0x33D5, CMSG_OPENING_CINEMATIC = 0x3558, - CMSG_OPEN_ITEM = 0x335F, - CMSG_OPEN_MISSION_NPC = 0x3320, - CMSG_OPEN_SHIPMENT_NPC = 0x3328, - CMSG_OPEN_TRADESKILL_NPC = 0x3333, + CMSG_OPEN_ITEM = 0x335E, + CMSG_OPEN_MISSION_NPC = 0x331F, + CMSG_OPEN_SHIPMENT_NPC = 0x3327, + CMSG_OPEN_TRADESKILL_NPC = 0x3332, CMSG_OPT_OUT_OF_LOOT = 0x3505, CMSG_OVERRIDE_SCREEN_FLASH = 0x352F, CMSG_PARTY_INVITE = 0x3604, CMSG_PARTY_INVITE_RESPONSE = 0x3606, CMSG_PARTY_UNINVITE = 0x3645, - CMSG_PERFORM_ITEM_INTERACTION = 0x323F, - CMSG_PERKS_PROGRAM_ITEMS_REFRESHED = 0x33FE, + CMSG_PERFORM_ITEM_INTERACTION = 0x323E, + CMSG_PERKS_PROGRAM_ITEMS_REFRESHED = 0x33FD, CMSG_PERKS_PROGRAM_REQUEST_PENDING_REWARDS = 0x3135, - CMSG_PERKS_PROGRAM_REQUEST_PURCHASE = 0x3400, - CMSG_PERKS_PROGRAM_REQUEST_REFUND = 0x3401, - CMSG_PERKS_PROGRAM_SET_FROZEN_VENDOR_ITEM = 0x3402, - CMSG_PERKS_PROGRAM_STATUS_REQUEST = 0x33FF, + CMSG_PERKS_PROGRAM_REQUEST_PURCHASE = 0x33FF, + CMSG_PERKS_PROGRAM_REQUEST_REFUND = 0x3400, + CMSG_PERKS_PROGRAM_SET_FROZEN_VENDOR_ITEM = 0x3401, + CMSG_PERKS_PROGRAM_STATUS_REQUEST = 0x33FE, CMSG_PETITION_BUY = 0x34D1, CMSG_PETITION_RENAME_GUILD = 0x36C6, CMSG_PETITION_SHOW_LIST = 0x34D0, @@ -640,7 +641,7 @@ enum OpcodeClient : uint16 CMSG_PET_ACTION = 0x3491, CMSG_PET_BATTLE_FINAL_NOTIFY = 0x31E5, CMSG_PET_BATTLE_INPUT = 0x363F, - CMSG_PET_BATTLE_QUEUE_PROPOSE_MATCH_RESULT = 0x3234, + CMSG_PET_BATTLE_QUEUE_PROPOSE_MATCH_RESULT = 0x3233, CMSG_PET_BATTLE_QUIT_NOTIFY = 0x31E4, CMSG_PET_BATTLE_REPLACE_FRONT_PET = 0x3640, CMSG_PET_BATTLE_REQUEST_PVP = 0x31DE, @@ -649,7 +650,7 @@ enum OpcodeClient : uint16 CMSG_PET_BATTLE_SCRIPT_ERROR_NOTIFY = 0x31E6, CMSG_PET_BATTLE_WILD_LOCATION_FAIL = 0x31DD, CMSG_PET_CANCEL_AURA = 0x3495, - CMSG_PET_CAST_SPELL = 0x32C4, + CMSG_PET_CAST_SPELL = 0x32C3, CMSG_PET_RENAME = 0x3682, CMSG_PET_SET_ACTION = 0x3490, CMSG_PET_SPELL_AUTOCAST = 0x3496, @@ -658,30 +659,30 @@ enum OpcodeClient : uint16 CMSG_PLAYER_LOGIN = 0x35EA, CMSG_PUSH_QUEST_TO_PARTY = 0x34A6, CMSG_PVP_LOG_DATA = 0x317C, - CMSG_QUERY_BATTLE_PET_NAME = 0x3298, + CMSG_QUERY_BATTLE_PET_NAME = 0x3297, CMSG_QUERY_CORPSE_LOCATION_FROM_CLIENT = 0x365E, CMSG_QUERY_CORPSE_TRANSPORT = 0x365F, CMSG_QUERY_COUNTDOWN_TIMER = 0x31A9, - CMSG_QUERY_CREATURE = 0x3292, - CMSG_QUERY_GAME_OBJECT = 0x3293, - CMSG_QUERY_GARRISON_PET_NAME = 0x3299, + CMSG_QUERY_CREATURE = 0x3291, + CMSG_QUERY_GAME_OBJECT = 0x3292, + CMSG_QUERY_GARRISON_PET_NAME = 0x3298, CMSG_QUERY_GUILD_INFO = 0x3688, CMSG_QUERY_INSPECT_ACHIEVEMENTS = 0x350F, CMSG_QUERY_NEXT_MAIL_TIME = 0x354E, - CMSG_QUERY_NPC_TEXT = 0x3294, - CMSG_QUERY_PAGE_TEXT = 0x3296, - CMSG_QUERY_PETITION = 0x329A, - CMSG_QUERY_PET_NAME = 0x3297, + CMSG_QUERY_NPC_TEXT = 0x3293, + CMSG_QUERY_PAGE_TEXT = 0x3295, + CMSG_QUERY_PETITION = 0x3299, + CMSG_QUERY_PET_NAME = 0x3296, CMSG_QUERY_PLAYER_NAMES = 0x3786, CMSG_QUERY_PLAYER_NAMES_FOR_COMMUNITY = 0x3784, CMSG_QUERY_PLAYER_NAME_BY_COMMUNITY_ID = 0x3783, CMSG_QUERY_QUEST_COMPLETION_NPCS = 0x3175, - CMSG_QUERY_QUEST_INFO = 0x3295, + CMSG_QUERY_QUEST_INFO = 0x3294, CMSG_QUERY_QUEST_ITEM_USABILITY = 0x3176, CMSG_QUERY_REALM_NAME = 0x3687, CMSG_QUERY_SCENARIO_POI = 0x3654, CMSG_QUERY_TIME = 0x34E5, - CMSG_QUERY_TREASURE_PICKER = 0x3384, + CMSG_QUERY_TREASURE_PICKER = 0x3383, CMSG_QUERY_VOID_STORAGE = 0x31A2, CMSG_QUEST_CONFIRM_ACCEPT = 0x34A5, CMSG_QUEST_GIVER_ACCEPT_QUEST = 0x349F, @@ -693,12 +694,11 @@ enum OpcodeClient : uint16 CMSG_QUEST_GIVER_REQUEST_REWARD = 0x34A2, CMSG_QUEST_GIVER_STATUS_MULTIPLE_QUERY = 0x34A4, CMSG_QUEST_GIVER_STATUS_QUERY = 0x34A3, - CMSG_QUEST_GIVER_STATUS_TRACKED_QUERY = 0x3594, CMSG_QUEST_LOG_REMOVE_QUEST = 0x3543, CMSG_QUEST_POI_QUERY = 0x36AD, CMSG_QUEST_PUSH_RESULT = 0x34A7, - CMSG_QUEST_SESSION_BEGIN_RESPONSE = 0x33C8, - CMSG_QUEST_SESSION_REQUEST_START = 0x33C7, + CMSG_QUEST_SESSION_BEGIN_RESPONSE = 0x33C7, + CMSG_QUEST_SESSION_REQUEST_START = 0x33C6, CMSG_QUEST_SESSION_REQUEST_STOP = 0x372B, CMSG_QUEUED_MESSAGES_END = 0x3780, CMSG_QUICK_JOIN_AUTO_ACCEPT_REQUESTS = 0x3703, @@ -712,100 +712,100 @@ enum OpcodeClient : uint16 CMSG_RAF_UPDATE_RECRUITMENT_INFO = 0x3722, CMSG_RANDOM_ROLL = 0x3652, CMSG_READY_CHECK_RESPONSE = 0x3633, - CMSG_READ_ITEM = 0x3360, + CMSG_READ_ITEM = 0x335F, CMSG_RECLAIM_CORPSE = 0x34EA, - CMSG_REMOVE_NEW_ITEM = 0x3387, + CMSG_REMOVE_NEW_ITEM = 0x3386, CMSG_REMOVE_RAF_RECRUIT = 0x3724, CMSG_REORDER_CHARACTERS = 0x35E9, CMSG_REPAIR_ITEM = 0x34FB, - CMSG_REPLACE_TROPHY = 0x3341, + CMSG_REPLACE_TROPHY = 0x3340, CMSG_REPOP_REQUEST = 0x353B, CMSG_REPORT_CLIENT_VARIABLES = 0x36FD, CMSG_REPORT_ENABLED_ADDONS = 0x36FC, CMSG_REPORT_KEYBINDING_EXECUTION_COUNTS = 0x36FE, CMSG_REPORT_PVP_PLAYER_AFK = 0x3503, - CMSG_REPORT_SERVER_LAG = 0x33C0, - CMSG_REPORT_STUCK_IN_COMBAT = 0x33C1, + CMSG_REPORT_SERVER_LAG = 0x33BF, + CMSG_REPORT_STUCK_IN_COMBAT = 0x33C0, CMSG_REQUEST_ACCOUNT_DATA = 0x3693, - CMSG_REQUEST_AREA_POI_UPDATE = 0x3386, + CMSG_REQUEST_AREA_POI_UPDATE = 0x3385, CMSG_REQUEST_BATTLEFIELD_STATUS = 0x35DC, CMSG_REQUEST_CEMETERY_LIST = 0x3177, CMSG_REQUEST_CHARACTER_GUILD_FOLLOW_INFO = 0x3689, - CMSG_REQUEST_COVENANT_CALLINGS = 0x33B2, + CMSG_REQUEST_COVENANT_CALLINGS = 0x33B1, CMSG_REQUEST_CROWD_CONTROL_SPELL = 0x353F, CMSG_REQUEST_CURRENCY_DATA_FOR_ACCOUNT_CHARACTERS = 0x313C, - CMSG_REQUEST_FORCED_REACTIONS = 0x3210, - CMSG_REQUEST_GARRISON_TALENT_WORLD_QUEST_UNLOCKS = 0x33EB, + CMSG_REQUEST_GARRISON_TALENT_WORLD_QUEST_UNLOCKS = 0x33EA, CMSG_REQUEST_GUILD_PARTY_STATE = 0x31A8, CMSG_REQUEST_GUILD_REWARDS_LIST = 0x31A7, - CMSG_REQUEST_LATEST_SPLASH_SCREEN = 0x33C2, - CMSG_REQUEST_LFG_LIST_BLACKLIST = 0x32D0, + CMSG_REQUEST_LATEST_SPLASH_SCREEN = 0x33C1, + CMSG_REQUEST_LFG_LIST_BLACKLIST = 0x32CF, CMSG_REQUEST_MYTHIC_PLUS_AFFIXES = 0x320A, CMSG_REQUEST_MYTHIC_PLUS_SEASON_DATA = 0x320B, + CMSG_REQUEST_PARTY_ELIGIBILITY_FOR_DELVE_TIERS = 0x3438, CMSG_REQUEST_PARTY_JOIN_UPDATES = 0x35F7, CMSG_REQUEST_PARTY_MEMBER_STATS = 0x3651, CMSG_REQUEST_PET_INFO = 0x3497, - CMSG_REQUEST_PLAYED_TIME = 0x329D, + CMSG_REQUEST_PLAYED_TIME = 0x329C, CMSG_REQUEST_PVP_REWARDS = 0x3195, CMSG_REQUEST_RAID_INFO = 0x36C7, CMSG_REQUEST_RATED_PVP_INFO = 0x35E3, CMSG_REQUEST_REALM_GUILD_MASTER_INFO = 0x3761, CMSG_REQUEST_SCHEDULED_PVP_INFO = 0x3196, CMSG_REQUEST_STABLED_PETS = 0x3498, - CMSG_REQUEST_VEHICLE_EXIT = 0x3251, - CMSG_REQUEST_VEHICLE_NEXT_SEAT = 0x3253, - CMSG_REQUEST_VEHICLE_PREV_SEAT = 0x3252, - CMSG_REQUEST_VEHICLE_SWITCH_SEAT = 0x3254, - CMSG_REQUEST_WEEKLY_REWARDS = 0x33B5, - CMSG_REQUEST_WORLD_QUEST_UPDATE = 0x3385, + CMSG_REQUEST_VEHICLE_EXIT = 0x3250, + CMSG_REQUEST_VEHICLE_NEXT_SEAT = 0x3252, + CMSG_REQUEST_VEHICLE_PREV_SEAT = 0x3251, + CMSG_REQUEST_VEHICLE_SWITCH_SEAT = 0x3253, + CMSG_REQUEST_WEEKLY_REWARDS = 0x33B4, + CMSG_REQUEST_WORLD_QUEST_UPDATE = 0x3384, CMSG_RESET_CHALLENGE_MODE = 0x3208, CMSG_RESET_CHALLENGE_MODE_CHEAT = 0x3209, CMSG_RESET_INSTANCES = 0x3666, CMSG_RESURRECT_RESPONSE = 0x3681, - CMSG_REVERT_MONUMENT_APPEARANCE = 0x3343, - CMSG_RIDE_VEHICLE_INTERACT = 0x3255, + CMSG_REVERT_MONUMENT_APPEARANCE = 0x3342, + CMSG_RIDE_VEHICLE_INTERACT = 0x3254, CMSG_RPE_RESET_CHARACTER = 0x374E, CMSG_SAVE_ACCOUNT_DATA_EXPORT = 0x3748, CMSG_SAVE_CUF_PROFILES = 0x318B, CMSG_SAVE_EQUIPMENT_SET = 0x3519, - CMSG_SAVE_GUILD_EMBLEM = 0x32D4, - CMSG_SAVE_PERSONAL_EMBLEM = 0x32D5, - CMSG_SCENE_PLAYBACK_CANCELED = 0x3230, - CMSG_SCENE_PLAYBACK_COMPLETE = 0x322F, - CMSG_SCENE_TRIGGER_EVENT = 0x3231, - CMSG_SEAMLESS_TRANSFER_COMPLETE = 0x3427, + CMSG_SAVE_GUILD_EMBLEM = 0x32D3, + CMSG_SAVE_PERSONAL_EMBLEM = 0x32D4, + CMSG_SCENE_PLAYBACK_CANCELED = 0x322F, + CMSG_SCENE_PLAYBACK_COMPLETE = 0x322E, + CMSG_SCENE_TRIGGER_EVENT = 0x3230, + CMSG_SEAMLESS_TRANSFER_COMPLETE = 0x3426, CMSG_SELF_RES = 0x3546, CMSG_SELL_ALL_JUNK_ITEMS = 0x34AA, CMSG_SELL_ITEM = 0x34A9, CMSG_SEND_CHARACTER_CLUB_INVITATION = 0x36F6, CMSG_SEND_CONTACT_LIST = 0x36CC, CMSG_SEND_MAIL = 0x35FA, - CMSG_SEND_PING_UNIT = 0x3429, - CMSG_SEND_PING_WORLD_POINT = 0x342A, + CMSG_SEND_PING_UNIT = 0x3428, + CMSG_SEND_PING_WORLD_POINT = 0x3429, CMSG_SEND_TEXT_EMOTE = 0x348E, CMSG_SERVER_TIME_OFFSET_REQUEST = 0x369A, CMSG_SETUP_WARBAND_GROUPS = 0x375C, - CMSG_SET_ACHIEVEMENTS_HIDDEN = 0x3236, + CMSG_SET_ACHIEVEMENTS_HIDDEN = 0x3235, CMSG_SET_ACTION_BAR_TOGGLES = 0x3547, CMSG_SET_ACTION_BUTTON = 0x3634, CMSG_SET_ACTIVE_MOVER = 0x3A3D, - CMSG_SET_ADVANCED_COMBAT_LOGGING = 0x32E2, + CMSG_SET_ADVANCED_COMBAT_LOGGING = 0x32E1, CMSG_SET_ASSISTANT_LEADER = 0x364D, - CMSG_SET_BACKPACK_AUTOSORT_DISABLED = 0x3363, - CMSG_SET_BACKPACK_SELL_JUNK_DISABLED = 0x3364, - CMSG_SET_BANK_AUTOSORT_DISABLED = 0x3365, + CMSG_SET_BACKPACK_AUTOSORT_DISABLED = 0x3362, + CMSG_SET_BACKPACK_SELL_JUNK_DISABLED = 0x3363, + CMSG_SET_BANK_AUTOSORT_DISABLED = 0x3364, CMSG_SET_CONTACT_NOTES = 0x36CF, CMSG_SET_CURRENCY_FLAGS = 0x3169, - CMSG_SET_DIFFICULTY_ID = 0x3232, + CMSG_SET_DIFFICULTY_ID = 0x3231, CMSG_SET_DUNGEON_DIFFICULTY = 0x3680, - CMSG_SET_EMPOWER_MIN_HOLD_STAGE_PERCENT = 0x328C, + CMSG_SET_EMPOWER_MIN_HOLD_STAGE_PERCENT = 0x328B, CMSG_SET_EVERYONE_IS_ASSISTANT = 0x361A, CMSG_SET_EXCLUDED_CHAT_CENSOR_SOURCES = 0x3704, CMSG_SET_FACTION_AT_WAR = 0x34ED, CMSG_SET_FACTION_INACTIVE = 0x34EF, CMSG_SET_FACTION_NOT_AT_WAR = 0x34EE, CMSG_SET_GAME_EVENT_DEBUG_VIEW_STATE = 0x31B9, - CMSG_SET_INSERT_ITEMS_LEFT_TO_RIGHT = 0x3367, + CMSG_SET_INSERT_ITEMS_LEFT_TO_RIGHT = 0x3366, CMSG_SET_LOOT_METHOD = 0x3646, CMSG_SET_LOOT_SPECIALIZATION = 0x3554, CMSG_SET_PARTY_ASSIGNMENT = 0x364F, @@ -814,36 +814,36 @@ enum OpcodeClient : uint16 CMSG_SET_PET_SLOT = 0x3167, CMSG_SET_PLAYER_DECLINED_NAMES = 0x3686, CMSG_SET_PREFERRED_CEMETERY = 0x3178, - CMSG_SET_PVP = 0x32D9, + CMSG_SET_PVP = 0x32D8, CMSG_SET_RAID_DIFFICULTY = 0x36D8, CMSG_SET_RESTRICT_PINGS_TO_ASSISTANTS = 0x361B, CMSG_SET_ROLE = 0x35D9, CMSG_SET_SAVED_INSTANCE_EXTEND = 0x3684, CMSG_SET_SELECTION = 0x353D, CMSG_SET_SHEATHED = 0x348F, - CMSG_SET_SORT_BAGS_RIGHT_TO_LEFT = 0x3366, + CMSG_SET_SORT_BAGS_RIGHT_TO_LEFT = 0x3365, CMSG_SET_TAXI_BENCHMARK_MODE = 0x3502, - CMSG_SET_TITLE = 0x32A3, + CMSG_SET_TITLE = 0x32A2, CMSG_SET_TRADE_CURRENCY = 0x3160, CMSG_SET_TRADE_GOLD = 0x315F, CMSG_SET_TRADE_ITEM = 0x315D, - CMSG_SET_USING_PARTY_GARRISON = 0x3322, - CMSG_SET_WAR_MODE = 0x32DA, + CMSG_SET_USING_PARTY_GARRISON = 0x3321, + CMSG_SET_WAR_MODE = 0x32D9, CMSG_SET_WATCHED_FACTION = 0x34F0, CMSG_SHOW_TRADE_SKILL = 0x36BF, CMSG_SIGN_PETITION = 0x3548, CMSG_SILENCE_PARTY_TALKER = 0x3650, CMSG_SOCIAL_CONTRACT_REQUEST = 0x3743, CMSG_SOCKET_GEMS = 0x34FA, - CMSG_SORT_ACCOUNT_BANK_BAGS = 0x342D, - CMSG_SORT_BAGS = 0x3368, - CMSG_SORT_BANK_BAGS = 0x3369, - CMSG_SORT_REAGENT_BANK_BAGS = 0x336A, - CMSG_SPAWN_TRACKING_UPDATE = 0x32B8, - CMSG_SPECTATE_CHANGE = 0x3420, + CMSG_SORT_ACCOUNT_BANK_BAGS = 0x342C, + CMSG_SORT_BAGS = 0x3367, + CMSG_SORT_BANK_BAGS = 0x3368, + CMSG_SORT_REAGENT_BANK_BAGS = 0x3369, + CMSG_SPAWN_TRACKING_UPDATE = 0x32B7, + CMSG_SPECTATE_CHANGE = 0x341F, CMSG_SPELL_CLICK = 0x349C, - CMSG_SPELL_EMPOWER_RELEASE = 0x328A, - CMSG_SPELL_EMPOWER_RESTART = 0x328B, + CMSG_SPELL_EMPOWER_RELEASE = 0x3289, + CMSG_SPELL_EMPOWER_RESTART = 0x328A, CMSG_SPIRIT_HEALER_ACTIVATE = 0x34B7, CMSG_SPLIT_GUILD_BANK_ITEM = 0x34CA, CMSG_SPLIT_GUILD_BANK_ITEM_TO_INVENTORY = 0x34C7, @@ -855,7 +855,7 @@ enum OpcodeClient : uint16 CMSG_START_WAR_GAME = 0x35DE, CMSG_STORE_GUILD_BANK_ITEM = 0x34C0, CMSG_SUBMIT_USER_FEEDBACK = 0x3692, - CMSG_SUBSCRIPTION_INTERSTITIAL_RESPONSE = 0x33E0, + CMSG_SUBSCRIPTION_INTERSTITIAL_RESPONSE = 0x33DF, CMSG_SUMMON_RESPONSE = 0x3668, CMSG_SUPPORT_TICKET_SUBMIT_COMPLAINT = 0x3644, CMSG_SURRENDER_ARENA = 0x3174, @@ -867,7 +867,7 @@ enum OpcodeClient : uint16 CMSG_SWAP_ITEM_WITH_GUILD_BANK_ITEM = 0x34C1, CMSG_SWAP_SUB_GROUPS = 0x364B, CMSG_SWAP_VOID_ITEM = 0x31A4, - CMSG_TABARD_VENDOR_ACTIVATE = 0x32D6, + CMSG_TABARD_VENDOR_ACTIVATE = 0x32D5, CMSG_TALK_TO_GOSSIP = 0x3499, CMSG_TAXI_NODE_STATUS_QUERY = 0x34B0, CMSG_TAXI_QUERY_AVAILABLE_NODES = 0x34B2, @@ -877,19 +877,19 @@ enum OpcodeClient : uint16 CMSG_TIME_SYNC_RESPONSE_DROPPED = 0x3A40, CMSG_TIME_SYNC_RESPONSE_FAILED = 0x3A3F, CMSG_TOGGLE_DIFFICULTY = 0x3655, - CMSG_TOGGLE_PVP = 0x32D8, + CMSG_TOGGLE_PVP = 0x32D7, CMSG_TOTEM_DESTROYED = 0x3507, CMSG_TOY_CLEAR_FANFARE = 0x3128, - CMSG_TRADE_SKILL_SET_FAVORITE = 0x3383, + CMSG_TRADE_SKILL_SET_FAVORITE = 0x3382, CMSG_TRAINER_BUY_SPELL = 0x34B6, CMSG_TRAINER_LIST = 0x34B5, - CMSG_TRAITS_COMMIT_CONFIG = 0x3408, - CMSG_TRAITS_TALENT_TEST_UNLEARN_SPELLS = 0x3406, - CMSG_TRANSFER_CURRENCY_FROM_ACCOUNT_CHARACTER = 0x3437, + CMSG_TRAITS_COMMIT_CONFIG = 0x3407, + CMSG_TRAITS_TALENT_TEST_UNLEARN_SPELLS = 0x3405, + CMSG_TRANSFER_CURRENCY_FROM_ACCOUNT_CHARACTER = 0x3436, CMSG_TRANSMOGRIFY_ITEMS = 0x3197, CMSG_TURN_IN_PETITION = 0x354A, CMSG_TUTORIAL = 0x36D9, - CMSG_UI_MAP_QUEST_LINES_REQUEST = 0x33B1, + CMSG_UI_MAP_QUEST_LINES_REQUEST = 0x33B0, CMSG_UNACCEPT_TRADE = 0x315B, CMSG_UNDELETE_CHARACTER = 0x36DB, CMSG_UNLEARN_SKILL = 0x34F4, @@ -898,20 +898,20 @@ enum OpcodeClient : uint16 CMSG_UPDATE_AADC_STATUS = 0x3737, CMSG_UPDATE_ACCOUNT_BANK_TAB_SETTINGS = 0x359D, CMSG_UPDATE_ACCOUNT_DATA = 0x3694, - CMSG_UPDATE_AREA_TRIGGER_VISUAL = 0x32C7, + CMSG_UPDATE_AREA_TRIGGER_VISUAL = 0x32C6, CMSG_UPDATE_CLIENT_SETTINGS = 0x3662, - CMSG_UPDATE_CRAFTING_NPC_RECIPES = 0x3334, + CMSG_UPDATE_CRAFTING_NPC_RECIPES = 0x3333, CMSG_UPDATE_MISSILE_TRAJECTORY = 0x3A44, CMSG_UPDATE_RAID_TARGET = 0x364E, - CMSG_UPDATE_SPELL_VISUAL = 0x32C6, + CMSG_UPDATE_SPELL_VISUAL = 0x32C5, CMSG_UPDATE_VAS_PURCHASE_STATES = 0x36F0, - CMSG_UPGRADE_GARRISON = 0x32EA, - CMSG_UPGRADE_RUNEFORGE_LEGENDARY = 0x33DE, + CMSG_UPGRADE_GARRISON = 0x32E9, + CMSG_UPGRADE_RUNEFORGE_LEGENDARY = 0x33DD, CMSG_USED_FOLLOW = 0x3186, - CMSG_USE_CRITTER_ITEM = 0x325B, + CMSG_USE_CRITTER_ITEM = 0x325A, CMSG_USE_EQUIPMENT_SET = 0x3995, - CMSG_USE_ITEM = 0x32C0, - CMSG_USE_TOY = 0x32C3, + CMSG_USE_ITEM = 0x32BF, + CMSG_USE_TOY = 0x32C2, CMSG_VAS_CHECK_TRANSFER_OK = 0x3709, CMSG_VAS_GET_QUEUE_MINUTES = 0x3708, CMSG_VAS_GET_SERVICE_STATUS = 0x3707, @@ -923,7 +923,7 @@ enum OpcodeClient : uint16 CMSG_WARDEN3_DATA = 0x35EC, CMSG_WHO = 0x367F, CMSG_WHO_IS = 0x367E, - CMSG_WORLD_LOOT_OBJECT_CLICK = 0x3423, + CMSG_WORLD_LOOT_OBJECT_CLICK = 0x3422, CMSG_WORLD_PORT_RESPONSE = 0x35F9, CMSG_WRAP_ITEM = 0x3994, }; @@ -931,15 +931,15 @@ enum OpcodeClient : uint16 enum OpcodeServer : uint16 { SMSG_ABORT_NEW_WORLD = 0x259B, - SMSG_ACCOUNT_CHARACTER_CURRENCY_LISTS = 0x28A1, - SMSG_ACCOUNT_CONVERSION_STATE_UPDATE = 0x28A6, - SMSG_ACCOUNT_COSMETIC_ADDED = 0x2864, - SMSG_ACCOUNT_CRITERIA_UPDATE = 0x284B, + SMSG_ACCOUNT_CHARACTER_CURRENCY_LISTS = 0x28A0, + SMSG_ACCOUNT_CONVERSION_STATE_UPDATE = 0x28A5, + SMSG_ACCOUNT_COSMETIC_ADDED = 0x2863, + SMSG_ACCOUNT_CRITERIA_UPDATE = 0x284A, SMSG_ACCOUNT_DATA_TIMES = 0x270C, - SMSG_ACCOUNT_EXPORT_RESPONSE = 0x2892, + SMSG_ACCOUNT_EXPORT_RESPONSE = 0x2891, SMSG_ACCOUNT_MOUNT_REMOVED = 0x25B2, SMSG_ACCOUNT_MOUNT_UPDATE = 0x25B1, - SMSG_ACCOUNT_NOTIFICATIONS_RESPONSE = 0x2863, + SMSG_ACCOUNT_NOTIFICATIONS_RESPONSE = 0x2862, SMSG_ACCOUNT_TOY_UPDATE = 0x25B3, SMSG_ACCOUNT_TRANSMOG_SET_FAVORITES_UPDATE = 0x25B7, SMSG_ACCOUNT_TRANSMOG_UPDATE = 0x25B6, @@ -949,26 +949,26 @@ enum OpcodeServer : uint16 SMSG_ACTIVATE_SOULBIND_FAILED = 0x3019, SMSG_ACTIVATE_TAXI_REPLY = 0x2681, SMSG_ACTIVE_GLYPHS = 0x2C56, - SMSG_ACTIVE_SCHEDULED_WORLD_STATE_INFO = 0x2748, + SMSG_ACTIVE_SCHEDULED_WORLD_STATE_INFO = 0x2747, SMSG_ADDON_LIST_REQUEST = 0x2643, SMSG_ADD_BATTLENET_FRIEND_RESPONSE = 0x263E, SMSG_ADD_ITEM_PASSIVE = 0x25AD, SMSG_ADD_LOSS_OF_CONTROL = 0x2674, SMSG_ADD_RUNE_POWER = 0x26BB, SMSG_ADJUST_SPLINE_DURATION = 0x25D3, - SMSG_ADVANCED_COMBAT_LOG = 0x2860, - SMSG_ADVENTURE_JOURNAL_DATA_RESPONSE = 0x285B, + SMSG_ADVANCED_COMBAT_LOG = 0x285F, + SMSG_ADVENTURE_JOURNAL_DATA_RESPONSE = 0x285A, SMSG_AE_LOOT_TARGETS = 0x2619, SMSG_AE_LOOT_TARGET_ACK = 0x261A, SMSG_AI_REACTION = 0x26B8, - SMSG_ALLIED_RACE_DETAILS = 0x27F6, + SMSG_ALLIED_RACE_DETAILS = 0x27F5, SMSG_ALL_ACCOUNT_CRITERIA = 0x2571, SMSG_ALL_ACHIEVEMENT_DATA = 0x2570, SMSG_ALL_GUILD_ACHIEVEMENTS = 0x29B8, - SMSG_APPLY_MOUNT_EQUIPMENT_RESULT = 0x2839, + SMSG_APPLY_MOUNT_EQUIPMENT_RESULT = 0x2838, SMSG_ARCHAEOLOGY_SURVERY_CAST = 0x2589, SMSG_AREA_POI_UPDATE_RESPONSE = 0x3010, - SMSG_AREA_SPIRIT_HEALER_TIME = 0x2741, + SMSG_AREA_SPIRIT_HEALER_TIME = 0x2740, SMSG_AREA_TRIGGER_DENIED = 0x2903, SMSG_AREA_TRIGGER_FORCE_SET_POSITION_AND_FACING = 0x2900, SMSG_AREA_TRIGGER_NO_CORPSE = 0x2718, @@ -980,28 +980,28 @@ enum OpcodeServer : uint16 SMSG_ARENA_CLEAR_OPPONENTS = 0x264A, SMSG_ARENA_CROWD_CONTROL_SPELL_RESULT = 0x2633, SMSG_ARENA_PREP_OPPONENT_SPECIALIZATIONS = 0x2649, - SMSG_ARTIFACT_ENDGAME_POWERS_REFUNDED = 0x27A2, - SMSG_ARTIFACT_FORGE_ERROR = 0x27A0, - SMSG_ARTIFACT_RESPEC_PROMPT = 0x27A1, - SMSG_ARTIFACT_XP_GAIN = 0x27E9, + SMSG_ARTIFACT_ENDGAME_POWERS_REFUNDED = 0x27A1, + SMSG_ARTIFACT_FORGE_ERROR = 0x279F, + SMSG_ARTIFACT_RESPEC_PROMPT = 0x27A0, + SMSG_ARTIFACT_XP_GAIN = 0x27E8, SMSG_ATTACKER_STATE_UPDATE = 0x294E, SMSG_ATTACK_START = 0x2939, SMSG_ATTACK_STOP = 0x293A, SMSG_ATTACK_SWING_ERROR = 0x2948, SMSG_ATTACK_SWING_LANDED_LOG = 0x2949, - SMSG_AUCTIONABLE_TOKEN_AUCTION_SOLD = 0x27D2, - SMSG_AUCTIONABLE_TOKEN_SELL_AT_MARKET_PRICE_RESPONSE = 0x27D1, - SMSG_AUCTIONABLE_TOKEN_SELL_CONFIRM_REQUIRED = 0x27D0, + SMSG_AUCTIONABLE_TOKEN_AUCTION_SOLD = 0x27D1, + SMSG_AUCTIONABLE_TOKEN_SELL_AT_MARKET_PRICE_RESPONSE = 0x27D0, + SMSG_AUCTIONABLE_TOKEN_SELL_CONFIRM_REQUIRED = 0x27CF, SMSG_AUCTION_CLOSED_NOTIFICATION = 0x26F5, SMSG_AUCTION_COMMAND_RESULT = 0x26F2, - SMSG_AUCTION_DISABLE_NEW_POSTINGS = 0x287F, - SMSG_AUCTION_FAVORITE_LIST = 0x2852, - SMSG_AUCTION_GET_COMMODITY_QUOTE_RESULT = 0x284A, + SMSG_AUCTION_DISABLE_NEW_POSTINGS = 0x287E, + SMSG_AUCTION_FAVORITE_LIST = 0x2851, + SMSG_AUCTION_GET_COMMODITY_QUOTE_RESULT = 0x2849, SMSG_AUCTION_HELLO_RESPONSE = 0x26F0, - SMSG_AUCTION_LIST_BIDDED_ITEMS_RESULT = 0x2849, - SMSG_AUCTION_LIST_BUCKETS_RESULT = 0x2846, - SMSG_AUCTION_LIST_ITEMS_RESULT = 0x2847, - SMSG_AUCTION_LIST_OWNED_ITEMS_RESULT = 0x2848, + SMSG_AUCTION_LIST_BIDDED_ITEMS_RESULT = 0x2848, + SMSG_AUCTION_LIST_BUCKETS_RESULT = 0x2845, + SMSG_AUCTION_LIST_ITEMS_RESULT = 0x2846, + SMSG_AUCTION_LIST_OWNED_ITEMS_RESULT = 0x2847, SMSG_AUCTION_OUTBID_NOTIFICATION = 0x26F4, SMSG_AUCTION_OWNER_BID_NOTIFICATION = 0x26F6, SMSG_AUCTION_REPLICATE_RESPONSE = 0x26F1, @@ -1012,10 +1012,10 @@ enum OpcodeServer : uint16 SMSG_AUTH_FAILED = 0x256C, SMSG_AUTH_RESPONSE = 0x256D, SMSG_AVAILABLE_HOTFIXES = 0x290F, - SMSG_BACKPACK_DEFAULT_SIZE_CHANGED = 0x2880, + SMSG_BACKPACK_DEFAULT_SIZE_CHANGED = 0x287F, SMSG_BAG_CLEANUP_FINISHED = 0x2DA7, SMSG_BARBER_SHOP_RESULT = 0x26C0, - SMSG_BATCH_PRESENCE_SUBSCRIPTION = 0x282A, + SMSG_BATCH_PRESENCE_SUBSCRIPTION = 0x2829, SMSG_BATTLEFIELD_LIST = 0x2927, SMSG_BATTLEFIELD_PORT_DENIED = 0x292D, SMSG_BATTLEFIELD_STATUS_ACTIVE = 0x2923, @@ -1031,29 +1031,29 @@ enum OpcodeServer : uint16 SMSG_BATTLEGROUND_PLAYER_LEFT = 0x292C, SMSG_BATTLEGROUND_PLAYER_POSITIONS = 0x2928, SMSG_BATTLEGROUND_POINTS = 0x294A, - SMSG_BATTLENET_CHALLENGE_ABORT = 0x278A, - SMSG_BATTLENET_CHALLENGE_START = 0x2789, - SMSG_BATTLENET_NOTIFICATION = 0x2802, - SMSG_BATTLENET_RESPONSE = 0x2801, - SMSG_BATTLE_NET_CONNECTION_STATUS = 0x2803, - SMSG_BATTLE_PAY_ACK_FAILED = 0x2785, - SMSG_BATTLE_PAY_BATTLE_PET_DELIVERED = 0x277A, - SMSG_BATTLE_PAY_COLLECTION_ITEM_DELIVERED = 0x277B, - SMSG_BATTLE_PAY_CONFIRM_PURCHASE = 0x2784, - SMSG_BATTLE_PAY_DELIVERY_ENDED = 0x2778, - SMSG_BATTLE_PAY_DELIVERY_STARTED = 0x2777, - SMSG_BATTLE_PAY_DISTRIBUTION_ASSIGN_VAS_RESPONSE = 0x2869, - SMSG_BATTLE_PAY_DISTRIBUTION_UNREVOKED = 0x2775, - SMSG_BATTLE_PAY_DISTRIBUTION_UPDATE = 0x2776, - SMSG_BATTLE_PAY_GET_DISTRIBUTION_LIST_RESPONSE = 0x2774, - SMSG_BATTLE_PAY_GET_PRODUCT_LIST_RESPONSE = 0x2772, - SMSG_BATTLE_PAY_GET_PURCHASE_LIST_RESPONSE = 0x2773, - SMSG_BATTLE_PAY_MOUNT_DELIVERED = 0x2779, - SMSG_BATTLE_PAY_PURCHASE_UPDATE = 0x2783, - SMSG_BATTLE_PAY_START_CHECKOUT = 0x281E, - SMSG_BATTLE_PAY_START_DISTRIBUTION_ASSIGN_TO_TARGET_RESPONSE = 0x2781, - SMSG_BATTLE_PAY_START_PURCHASE_RESPONSE = 0x2780, - SMSG_BATTLE_PAY_VALIDATE_PURCHASE_RESPONSE = 0x2812, + SMSG_BATTLENET_CHALLENGE_ABORT = 0x2789, + SMSG_BATTLENET_CHALLENGE_START = 0x2788, + SMSG_BATTLENET_NOTIFICATION = 0x2801, + SMSG_BATTLENET_RESPONSE = 0x2800, + SMSG_BATTLE_NET_CONNECTION_STATUS = 0x2802, + SMSG_BATTLE_PAY_ACK_FAILED = 0x2784, + SMSG_BATTLE_PAY_BATTLE_PET_DELIVERED = 0x2779, + SMSG_BATTLE_PAY_COLLECTION_ITEM_DELIVERED = 0x277A, + SMSG_BATTLE_PAY_CONFIRM_PURCHASE = 0x2783, + SMSG_BATTLE_PAY_DELIVERY_ENDED = 0x2777, + SMSG_BATTLE_PAY_DELIVERY_STARTED = 0x2776, + SMSG_BATTLE_PAY_DISTRIBUTION_ASSIGN_VAS_RESPONSE = 0x2868, + SMSG_BATTLE_PAY_DISTRIBUTION_UNREVOKED = 0x2774, + SMSG_BATTLE_PAY_DISTRIBUTION_UPDATE = 0x2775, + SMSG_BATTLE_PAY_GET_DISTRIBUTION_LIST_RESPONSE = 0x2773, + SMSG_BATTLE_PAY_GET_PRODUCT_LIST_RESPONSE = 0x2771, + SMSG_BATTLE_PAY_GET_PURCHASE_LIST_RESPONSE = 0x2772, + SMSG_BATTLE_PAY_MOUNT_DELIVERED = 0x2778, + SMSG_BATTLE_PAY_PURCHASE_UPDATE = 0x2782, + SMSG_BATTLE_PAY_START_CHECKOUT = 0x281D, + SMSG_BATTLE_PAY_START_DISTRIBUTION_ASSIGN_TO_TARGET_RESPONSE = 0x2780, + SMSG_BATTLE_PAY_START_PURCHASE_RESPONSE = 0x277F, + SMSG_BATTLE_PAY_VALIDATE_PURCHASE_RESPONSE = 0x2811, SMSG_BATTLE_PETS_HEALED = 0x25F5, SMSG_BATTLE_PET_CAGE_DATE_ERROR = 0x267C, SMSG_BATTLE_PET_DELETED = 0x25F2, @@ -1074,8 +1074,8 @@ enum OpcodeServer : uint16 SMSG_BOSS_KILL = 0x294D, SMSG_BREAK_TARGET = 0x2938, SMSG_BROADCAST_ACHIEVEMENT = 0x2BBC, - SMSG_BROADCAST_SUMMON_CAST = 0x282C, - SMSG_BROADCAST_SUMMON_RESPONSE = 0x282D, + SMSG_BROADCAST_SUMMON_CAST = 0x282B, + SMSG_BROADCAST_SUMMON_RESPONSE = 0x282C, SMSG_BUY_FAILED = 0x26C9, SMSG_BUY_SUCCEEDED = 0x26C8, SMSG_CACHE_INFO = 0x291D, @@ -1100,7 +1100,7 @@ enum OpcodeServer : uint16 SMSG_CALENDAR_SEND_CALENDAR = 0x268F, SMSG_CALENDAR_SEND_EVENT = 0x2690, SMSG_CALENDAR_SEND_NUM_PENDING = 0x26A0, - SMSG_CAMERA_EFFECT = 0x2727, + SMSG_CAMERA_EFFECT = 0x2726, SMSG_CANCEL_AUTO_REPEAT = 0x26E0, SMSG_CANCEL_COMBAT = 0x2947, SMSG_CANCEL_ORPHAN_SPELL_VISUAL = 0x2C48, @@ -1110,7 +1110,7 @@ enum OpcodeServer : uint16 SMSG_CANCEL_SPELL_VISUAL = 0x2C46, SMSG_CANCEL_SPELL_VISUAL_KIT = 0x2C4A, SMSG_CAN_DUEL_RESULT = 0x2943, - SMSG_CAN_REDEEM_TOKEN_FOR_BALANCE_RESPONSE = 0x2811, + SMSG_CAN_REDEEM_TOKEN_FOR_BALANCE_RESPONSE = 0x2810, SMSG_CAPTURE_POINT_REMOVED = 0x292A, SMSG_CAST_FAILED = 0x2C59, SMSG_CAS_REFRESH_REMOTE_DATA = 0x267A, @@ -1121,22 +1121,22 @@ enum OpcodeServer : uint16 SMSG_CHALLENGE_MODE_START = 0x2609, SMSG_CHALLENGE_MODE_UPDATE_DEATH_COUNT = 0x260A, SMSG_CHANGE_PLAYER_DIFFICULTY_RESULT = 0x3004, - SMSG_CHANGE_REALM_TICKET_RESPONSE = 0x2804, + SMSG_CHANGE_REALM_TICKET_RESPONSE = 0x2803, SMSG_CHANNEL_LIST = 0x2BC4, SMSG_CHANNEL_NOTIFY = 0x2BC1, SMSG_CHANNEL_NOTIFY_JOINED = 0x2BC2, SMSG_CHANNEL_NOTIFY_LEFT = 0x2BC3, - SMSG_CHARACTER_CHECK_UPGRADE_RESULT = 0x27BD, + SMSG_CHARACTER_CHECK_UPGRADE_RESULT = 0x27BC, SMSG_CHARACTER_LOGIN_FAILED = 0x2707, - SMSG_CHARACTER_OBJECT_TEST_RESPONSE = 0x2788, - SMSG_CHARACTER_RENAME_RESULT = 0x2764, - SMSG_CHARACTER_UPGRADE_ABORTED = 0x27BC, - SMSG_CHARACTER_UPGRADE_COMPLETE = 0x27BB, - SMSG_CHARACTER_UPGRADE_MANUAL_UNREVOKE_RESULT = 0x27BE, - SMSG_CHARACTER_UPGRADE_STARTED = 0x27BA, + SMSG_CHARACTER_OBJECT_TEST_RESPONSE = 0x2787, + SMSG_CHARACTER_RENAME_RESULT = 0x2763, + SMSG_CHARACTER_UPGRADE_ABORTED = 0x27BB, + SMSG_CHARACTER_UPGRADE_COMPLETE = 0x27BA, + SMSG_CHARACTER_UPGRADE_MANUAL_UNREVOKE_RESULT = 0x27BD, + SMSG_CHARACTER_UPGRADE_STARTED = 0x27B9, SMSG_CHAR_CUSTOMIZE_FAILURE = 0x26E4, SMSG_CHAR_CUSTOMIZE_SUCCESS = 0x26E5, - SMSG_CHAR_FACTION_CHANGE_RESULT = 0x27A7, + SMSG_CHAR_FACTION_CHANGE_RESULT = 0x27A6, SMSG_CHAT = 0x2BAD, SMSG_CHAT_AUTO_RESPONDED = 0x2BB8, SMSG_CHAT_CAN_LOCAL_WHISPER_TARGET_RESPONSE = 0x2BCB, @@ -1155,8 +1155,8 @@ enum OpcodeServer : uint16 SMSG_CHECK_ABANDON_NPE = 0x301A, SMSG_CHECK_CHARACTER_NAME_AVAILABILITY_RESULT = 0x2587, SMSG_CHECK_WARGAME_ENTRY = 0x2593, - SMSG_CHROMIE_TIME_SELECT_EXPANSION_SUCCESS = 0x2855, - SMSG_CLAIM_RAF_REWARD_RESPONSE = 0x283D, + SMSG_CHROMIE_TIME_SELECT_EXPANSION_SUCCESS = 0x2854, + SMSG_CLAIM_RAF_REWARD_RESPONSE = 0x283C, SMSG_CLEAR_ALL_SPELL_CHARGES = 0x2C26, SMSG_CLEAR_BOSS_EMOTES = 0x25BE, SMSG_CLEAR_COOLDOWN = 0x26BD, @@ -1165,65 +1165,65 @@ enum OpcodeServer : uint16 SMSG_CLEAR_SPELL_CHARGES = 0x2C27, SMSG_CLEAR_TARGET = 0x2944, SMSG_CLEAR_TREASURE_PICKER_CACHE = 0x2AA2, - SMSG_CLOSE_ARTIFACT_FORGE = 0x279F, - SMSG_CLUB_FINDER_ERROR_MESSAGE = 0x2835, - SMSG_CLUB_FINDER_GET_CLUB_POSTING_IDS_RESPONSE = 0x2838, - SMSG_CLUB_FINDER_LOOKUP_CLUB_POSTINGS_LIST = 0x2836, - SMSG_CLUB_FINDER_RESPONSE_CHARACTER_APPLICATION_LIST = 0x2833, - SMSG_CLUB_FINDER_RESPONSE_POST_RECRUITMENT_MESSAGE = 0x2837, - SMSG_CLUB_FINDER_UPDATE_APPLICATIONS = 0x2834, - SMSG_CLUB_FINDER_WHISPER_APPLICANT_RESPONSE = 0x2875, + SMSG_CLOSE_ARTIFACT_FORGE = 0x279E, + SMSG_CLUB_FINDER_ERROR_MESSAGE = 0x2834, + SMSG_CLUB_FINDER_GET_CLUB_POSTING_IDS_RESPONSE = 0x2837, + SMSG_CLUB_FINDER_LOOKUP_CLUB_POSTINGS_LIST = 0x2835, + SMSG_CLUB_FINDER_RESPONSE_CHARACTER_APPLICATION_LIST = 0x2832, + SMSG_CLUB_FINDER_RESPONSE_POST_RECRUITMENT_MESSAGE = 0x2836, + SMSG_CLUB_FINDER_UPDATE_APPLICATIONS = 0x2833, + SMSG_CLUB_FINDER_WHISPER_APPLICANT_RESPONSE = 0x2874, SMSG_COIN_REMOVED = 0x2618, SMSG_COMBAT_EVENT_FAILED = 0x293B, SMSG_COMMENTATOR_MAP_INFO = 0x2709, SMSG_COMMENTATOR_PLAYER_INFO = 0x270A, SMSG_COMMENTATOR_STATE_CHANGED = 0x2708, - SMSG_COMMERCE_TOKEN_GET_COUNT_RESPONSE = 0x27CD, - SMSG_COMMERCE_TOKEN_GET_LOG_RESPONSE = 0x27D9, - SMSG_COMMERCE_TOKEN_GET_MARKET_PRICE_RESPONSE = 0x27CF, - SMSG_COMMERCE_TOKEN_UPDATE = 0x27CE, + SMSG_COMMERCE_TOKEN_GET_COUNT_RESPONSE = 0x27CC, + SMSG_COMMERCE_TOKEN_GET_LOG_RESPONSE = 0x27D8, + SMSG_COMMERCE_TOKEN_GET_MARKET_PRICE_RESPONSE = 0x27CE, + SMSG_COMMERCE_TOKEN_UPDATE = 0x27CD, SMSG_COMPLAINT_RESULT = 0x26AF, - SMSG_COMPLETE_SHIPMENT_RESPONSE = 0x2798, - SMSG_CONFIRM_PARTY_INVITE = 0x2810, + SMSG_COMPLETE_SHIPMENT_RESPONSE = 0x2797, + SMSG_CONFIRM_PARTY_INVITE = 0x280F, SMSG_CONNECT_TO = 0x304D, SMSG_CONSOLE_WRITE = 0x2636, - SMSG_CONSUMABLE_TOKEN_BUY_AT_MARKET_PRICE_RESPONSE = 0x27D5, - SMSG_CONSUMABLE_TOKEN_BUY_CHOICE_REQUIRED = 0x27D4, - SMSG_CONSUMABLE_TOKEN_CAN_VETERAN_BUY_RESPONSE = 0x27D3, - SMSG_CONSUMABLE_TOKEN_REDEEM_CONFIRM_REQUIRED = 0x27D7, - SMSG_CONSUMABLE_TOKEN_REDEEM_RESPONSE = 0x27D8, - SMSG_CONTACT_LIST = 0x2786, - SMSG_CONTRIBUTION_LAST_UPDATE_RESPONSE = 0x2817, + SMSG_CONSUMABLE_TOKEN_BUY_AT_MARKET_PRICE_RESPONSE = 0x27D4, + SMSG_CONSUMABLE_TOKEN_BUY_CHOICE_REQUIRED = 0x27D3, + SMSG_CONSUMABLE_TOKEN_CAN_VETERAN_BUY_RESPONSE = 0x27D2, + SMSG_CONSUMABLE_TOKEN_REDEEM_CONFIRM_REQUIRED = 0x27D6, + SMSG_CONSUMABLE_TOKEN_REDEEM_RESPONSE = 0x27D7, + SMSG_CONTACT_LIST = 0x2785, + SMSG_CONTRIBUTION_LAST_UPDATE_RESPONSE = 0x2816, SMSG_CONTROL_UPDATE = 0x2648, - SMSG_CONVERT_ITEMS_TO_CURRENCY_VALUE = 0x285E, - SMSG_COOLDOWN_CHEAT = 0x273A, + SMSG_CONVERT_ITEMS_TO_CURRENCY_VALUE = 0x285D, + SMSG_COOLDOWN_CHEAT = 0x2739, SMSG_COOLDOWN_EVENT = 0x26BC, SMSG_CORPSE_LOCATION = 0x2650, - SMSG_CORPSE_RECLAIM_DELAY = 0x274B, + SMSG_CORPSE_RECLAIM_DELAY = 0x274A, SMSG_CORPSE_TRANSPORT_QUERY = 0x2714, SMSG_COVENANT_CALLINGS_AVAILABILITY_RESPONSE = 0x2AA4, - SMSG_COVENANT_PREVIEW_OPEN_NPC = 0x27F9, - SMSG_COVENANT_RENOWN_SEND_CATCHUP_STATE = 0x285F, - SMSG_CRAFTING_HOUSE_HELLO_RESPONSE = 0x288C, - SMSG_CRAFTING_ORDER_CANCEL_RESULT = 0x2888, - SMSG_CRAFTING_ORDER_CLAIM_RESULT = 0x2884, - SMSG_CRAFTING_ORDER_CRAFT_RESULT = 0x2886, - SMSG_CRAFTING_ORDER_CREATE_RESULT = 0x2882, - SMSG_CRAFTING_ORDER_FULFILL_RESULT = 0x2887, - SMSG_CRAFTING_ORDER_LIST_ORDERS_RESPONSE = 0x2883, - SMSG_CRAFTING_ORDER_NPC_REWARD_INFO = 0x288E, - SMSG_CRAFTING_ORDER_REJECT_RESULT = 0x288A, - SMSG_CRAFTING_ORDER_RELEASE_RESULT = 0x2885, - SMSG_CRAFTING_ORDER_UPDATE_STATE = 0x288D, - SMSG_CRAFT_ENCHANT_RESULT = 0x288B, + SMSG_COVENANT_PREVIEW_OPEN_NPC = 0x27F8, + SMSG_COVENANT_RENOWN_SEND_CATCHUP_STATE = 0x285E, + SMSG_CRAFTING_HOUSE_HELLO_RESPONSE = 0x288B, + SMSG_CRAFTING_ORDER_CANCEL_RESULT = 0x2887, + SMSG_CRAFTING_ORDER_CLAIM_RESULT = 0x2883, + SMSG_CRAFTING_ORDER_CRAFT_RESULT = 0x2885, + SMSG_CRAFTING_ORDER_CREATE_RESULT = 0x2881, + SMSG_CRAFTING_ORDER_FULFILL_RESULT = 0x2886, + SMSG_CRAFTING_ORDER_LIST_ORDERS_RESPONSE = 0x2882, + SMSG_CRAFTING_ORDER_NPC_REWARD_INFO = 0x288D, + SMSG_CRAFTING_ORDER_REJECT_RESULT = 0x2889, + SMSG_CRAFTING_ORDER_RELEASE_RESULT = 0x2884, + SMSG_CRAFTING_ORDER_UPDATE_STATE = 0x288C, + SMSG_CRAFT_ENCHANT_RESULT = 0x288A, SMSG_CREATE_CHAR = 0x2703, - SMSG_CREATE_SHIPMENT_RESPONSE = 0x2797, - SMSG_CREATOR_VISUALS_OVERRIDE = 0x2891, + SMSG_CREATE_SHIPMENT_RESPONSE = 0x2796, + SMSG_CREATOR_VISUALS_OVERRIDE = 0x2890, SMSG_CRITERIA_DELETED = 0x26E9, SMSG_CRITERIA_UPDATE = 0x26E3, SMSG_CROSSED_INEBRIATION_THRESHOLD = 0x26C4, - SMSG_CURRENCY_TRANSFER_LOG = 0x28A3, - SMSG_CURRENCY_TRANSFER_RESULT = 0x28A2, + SMSG_CURRENCY_TRANSFER_LOG = 0x28A2, + SMSG_CURRENCY_TRANSFER_RESULT = 0x28A1, SMSG_CUSTOM_LOAD_SCREEN = 0x25CE, SMSG_DAILY_QUESTS_RESET = 0x2A80, SMSG_DAMAGE_CALC_LOG = 0x2C65, @@ -1233,7 +1233,7 @@ enum OpcodeServer : uint16 SMSG_DEFENSE_MESSAGE = 0x2BB6, SMSG_DELETE_CHAR = 0x2704, SMSG_DELETE_EXPIRED_MISSIONS_RESULT = 0x2980, - SMSG_DESTROY_ARENA_UNIT = 0x2743, + SMSG_DESTROY_ARENA_UNIT = 0x2742, SMSG_DESTRUCTIBLE_BUILDING_DAMAGE = 0x26FB, SMSG_DIFFERENT_INSTANCE_FROM_PARTY = 0x258C, SMSG_DISENCHANT_CREDIT = 0x25AA, @@ -1243,9 +1243,9 @@ enum OpcodeServer : uint16 SMSG_DISPLAY_PLAYER_CHOICE = 0x2FFC, SMSG_DISPLAY_PROMOTION = 0x264D, SMSG_DISPLAY_QUEST_POPUP = 0x2A9E, - SMSG_DISPLAY_SOULBIND_UPDATE_MESSAGE = 0x2862, + SMSG_DISPLAY_SOULBIND_UPDATE_MESSAGE = 0x2861, SMSG_DISPLAY_TOAST = 0x2625, - SMSG_DISPLAY_WORLD_TEXT = 0x27EA, + SMSG_DISPLAY_WORLD_TEXT = 0x27E9, SMSG_DISPLAY_WORLD_TEXT_ON_TARGET = 0x2C64, SMSG_DONT_AUTO_PUSH_SPELLS_TO_ACTION_BAR = 0x25E3, SMSG_DROP_NEW_CONNECTION = 0x304C, @@ -1256,50 +1256,50 @@ enum OpcodeServer : uint16 SMSG_DUEL_OUT_OF_BOUNDS = 0x293E, SMSG_DUEL_REQUESTED = 0x293C, SMSG_DUEL_WINNER = 0x2942, - SMSG_DURABILITY_DAMAGE_DEATH = 0x2746, - SMSG_EMOTE = 0x27C4, + SMSG_DURABILITY_DAMAGE_DEATH = 0x2745, + SMSG_EMOTE = 0x27C3, SMSG_ENABLE_BARBER_SHOP = 0x26BF, SMSG_ENCHANTMENT_LOG = 0x2715, - SMSG_ENCOUNTER_END = 0x277F, - SMSG_ENCOUNTER_START = 0x277E, + SMSG_ENCOUNTER_END = 0x277E, + SMSG_ENCOUNTER_START = 0x277D, SMSG_END_LIGHTNING_STORM = 0x26AC, SMSG_ENTER_ENCRYPTED_MODE = 0x3049, SMSG_ENUM_CHARACTERS_RESULT = 0x2584, - SMSG_ENUM_VAS_PURCHASE_STATES_RESPONSE = 0x27EF, + SMSG_ENUM_VAS_PURCHASE_STATES_RESPONSE = 0x27EE, SMSG_ENVIRONMENTAL_DAMAGE_LOG = 0x2C1E, SMSG_EQUIPMENT_SET_ID = 0x26B5, SMSG_EXPECTED_SPAM_RECORDS = 0x2BB1, - SMSG_EXPLORATION_EXPERIENCE = 0x2760, - SMSG_EXTERNAL_TRANSACTION_ID_GENERATED = 0x285C, - SMSG_FACTION_BONUS_INFO = 0x2726, + SMSG_EXPLORATION_EXPERIENCE = 0x275F, + SMSG_EXTERNAL_TRANSACTION_ID_GENERATED = 0x285B, + SMSG_FACTION_BONUS_INFO = 0x2725, SMSG_FAILED_PLAYER_CONDITION = 0x2FFA, - SMSG_FAILED_QUEST_TURN_IN = 0x280D, + SMSG_FAILED_QUEST_TURN_IN = 0x280C, SMSG_FEATURE_SYSTEM_STATUS = 0x25C2, - SMSG_FEATURE_SYSTEM_STATUS2 = 0x28A0, + SMSG_FEATURE_SYSTEM_STATUS2 = 0x289F, SMSG_FEATURE_SYSTEM_STATUS_GLUE_SCREEN = 0x25C3, - SMSG_FEIGN_DEATH_RESISTED = 0x2745, + SMSG_FEIGN_DEATH_RESISTED = 0x2744, SMSG_FISH_ESCAPED = 0x26D3, SMSG_FISH_NOT_HOOKED = 0x26D2, SMSG_FLIGHT_SPLINE_SYNC = 0x2E2D, SMSG_FLUSH_COMBAT_LOG_FILE = 0x2C20, SMSG_FORCED_DEATH_UPDATE = 0x26D7, - SMSG_FORCE_ANIM = 0x2752, - SMSG_FORCE_ANIMATIONS = 0x2753, + SMSG_FORCE_ANIM = 0x2751, + SMSG_FORCE_ANIMATIONS = 0x2752, SMSG_FORCE_OBJECT_RELINK = 0x264C, SMSG_FORCE_RANDOM_TRANSMOG_TOAST = 0x25B5, SMSG_FORCE_SPAWN_TRACKING_UPDATE = 0x2AA1, - SMSG_FRIEND_STATUS = 0x2787, - SMSG_GAIN_MAW_POWER = 0x27DE, + SMSG_FRIEND_STATUS = 0x2786, + SMSG_GAIN_MAW_POWER = 0x27DD, SMSG_GAME_OBJECT_ACTIVATE_ANIM_KIT = 0x25C6, - SMSG_GAME_OBJECT_BASE = 0x2824, - SMSG_GAME_OBJECT_CLOSE_INTERACTION = 0x2874, + SMSG_GAME_OBJECT_BASE = 0x2823, + SMSG_GAME_OBJECT_CLOSE_INTERACTION = 0x2873, SMSG_GAME_OBJECT_CUSTOM_ANIM = 0x25C7, SMSG_GAME_OBJECT_DESPAWN = 0x25C8, - SMSG_GAME_OBJECT_INTERACTION = 0x2873, + SMSG_GAME_OBJECT_INTERACTION = 0x2872, SMSG_GAME_OBJECT_PLAY_SPELL_VISUAL = 0x2C4D, SMSG_GAME_OBJECT_PLAY_SPELL_VISUAL_KIT = 0x2C4C, - SMSG_GAME_OBJECT_RESET_STATE = 0x2720, - SMSG_GAME_OBJECT_SET_STATE_LOCAL = 0x2800, + SMSG_GAME_OBJECT_RESET_STATE = 0x271F, + SMSG_GAME_OBJECT_SET_STATE_LOCAL = 0x27FF, SMSG_GAME_SPEED_SET = 0x2685, SMSG_GAME_TIME_SET = 0x270E, SMSG_GAME_TIME_UPDATE = 0x270D, @@ -1374,18 +1374,18 @@ enum OpcodeServer : uint16 SMSG_GARRISON_UPGRADE_RESULT = 0x296B, SMSG_GARRISON_USE_RECALL_PORTAL_RESULT = 0x297D, SMSG_GENERATE_RANDOM_CHARACTER_NAME_RESULT = 0x2588, - SMSG_GENERATE_SSO_TOKEN_RESPONSE = 0x2818, - SMSG_GET_ACCOUNT_CHARACTER_LIST_RESULT = 0x2762, + SMSG_GENERATE_SSO_TOKEN_RESPONSE = 0x2817, + SMSG_GET_ACCOUNT_CHARACTER_LIST_RESULT = 0x2761, SMSG_GET_GARRISON_INFO_RESULT = 0x295E, - SMSG_GET_LANDING_PAGE_SHIPMENTS_RESPONSE = 0x279A, - SMSG_GET_REALM_HIDDEN_RESULT = 0x2897, - SMSG_GET_REMAINING_GAME_TIME_RESPONSE = 0x27D6, - SMSG_GET_SELECTED_TROPHY_ID_RESPONSE = 0x27C2, - SMSG_GET_SHIPMENTS_OF_TYPE_RESPONSE = 0x2799, - SMSG_GET_SHIPMENT_INFO_RESPONSE = 0x2795, - SMSG_GET_TROPHY_LIST_RESPONSE = 0x27C1, - SMSG_GET_VAS_ACCOUNT_CHARACTER_LIST_RESULT = 0x27EB, - SMSG_GET_VAS_TRANSFER_TARGET_REALM_LIST_RESULT = 0x27EC, + SMSG_GET_LANDING_PAGE_SHIPMENTS_RESPONSE = 0x2799, + SMSG_GET_REALM_HIDDEN_RESULT = 0x2896, + SMSG_GET_REMAINING_GAME_TIME_RESPONSE = 0x27D5, + SMSG_GET_SELECTED_TROPHY_ID_RESPONSE = 0x27C1, + SMSG_GET_SHIPMENTS_OF_TYPE_RESPONSE = 0x2798, + SMSG_GET_SHIPMENT_INFO_RESPONSE = 0x2794, + SMSG_GET_TROPHY_LIST_RESPONSE = 0x27C0, + SMSG_GET_VAS_ACCOUNT_CHARACTER_LIST_RESULT = 0x27EA, + SMSG_GET_VAS_TRANSFER_TARGET_REALM_LIST_RESULT = 0x27EB, SMSG_GM_PLAYER_INFO = 0x3005, SMSG_GM_REQUEST_PLAYER_INFO = 0x2FFB, SMSG_GM_TICKET_CASE_STATUS = 0x26A7, @@ -1394,123 +1394,122 @@ enum OpcodeServer : uint16 SMSG_GOSSIP_COMPLETE = 0x2A97, SMSG_GOSSIP_MESSAGE = 0x2A98, SMSG_GOSSIP_OPTION_NPC_INTERACTION = 0x2AA8, - SMSG_GOSSIP_POI = 0x2792, + SMSG_GOSSIP_POI = 0x2791, SMSG_GOSSIP_QUEST_UPDATE = 0x2A99, SMSG_GOSSIP_REFRESH_OPTIONS = 0x2AA7, SMSG_GROUP_ACTION_THROTTLED = 0x2590, - SMSG_GROUP_AUTO_KICK = 0x278F, - SMSG_GROUP_DECLINE = 0x278B, - SMSG_GROUP_DESTROYED = 0x278E, + SMSG_GROUP_AUTO_KICK = 0x278E, + SMSG_GROUP_DECLINE = 0x278A, + SMSG_GROUP_DESTROYED = 0x278D, SMSG_GROUP_NEW_LEADER = 0x262E, - SMSG_GROUP_REQUEST_DECLINE = 0x278C, - SMSG_GROUP_UNINVITE = 0x278D, - SMSG_GUILD_ACHIEVEMENT_DELETED = 0x29C6, - SMSG_GUILD_ACHIEVEMENT_EARNED = 0x29C5, - SMSG_GUILD_ACHIEVEMENT_MEMBERS = 0x29C8, - SMSG_GUILD_BANK_LOG_QUERY_RESULTS = 0x29E0, - SMSG_GUILD_BANK_QUERY_RESULTS = 0x29DF, - SMSG_GUILD_BANK_REMAINING_WITHDRAW_MONEY = 0x29E1, - SMSG_GUILD_BANK_TEXT_QUERY_RESULT = 0x29E4, - SMSG_GUILD_CHALLENGE_COMPLETED = 0x29D4, - SMSG_GUILD_CHALLENGE_UPDATE = 0x29D3, - SMSG_GUILD_CHANGE_NAME_RESULT = 0x29DE, + SMSG_GROUP_REQUEST_DECLINE = 0x278B, + SMSG_GROUP_UNINVITE = 0x278C, + SMSG_GUILD_ACHIEVEMENT_DELETED = 0x29C5, + SMSG_GUILD_ACHIEVEMENT_EARNED = 0x29C4, + SMSG_GUILD_ACHIEVEMENT_MEMBERS = 0x29C7, + SMSG_GUILD_BANK_LOG_QUERY_RESULTS = 0x29DF, + SMSG_GUILD_BANK_QUERY_RESULTS = 0x29DE, + SMSG_GUILD_BANK_REMAINING_WITHDRAW_MONEY = 0x29E0, + SMSG_GUILD_BANK_TEXT_QUERY_RESULT = 0x29E3, + SMSG_GUILD_CHALLENGE_COMPLETED = 0x29D3, + SMSG_GUILD_CHALLENGE_UPDATE = 0x29D2, + SMSG_GUILD_CHANGE_NAME_RESULT = 0x29DD, SMSG_GUILD_COMMAND_RESULT = 0x29BA, - SMSG_GUILD_CRITERIA_DELETED = 0x29C7, - SMSG_GUILD_CRITERIA_UPDATE = 0x29C4, - SMSG_GUILD_EVENT_BANK_CONTENTS_CHANGED = 0x29F9, - SMSG_GUILD_EVENT_BANK_MONEY_CHANGED = 0x29F8, - SMSG_GUILD_EVENT_DISBANDED = 0x29EE, - SMSG_GUILD_EVENT_LOG_QUERY_RESULTS = 0x29E3, - SMSG_GUILD_EVENT_MOTD = 0x29EF, - SMSG_GUILD_EVENT_NEW_LEADER = 0x29ED, - SMSG_GUILD_EVENT_PLAYER_JOINED = 0x29EB, - SMSG_GUILD_EVENT_PLAYER_LEFT = 0x29EC, - SMSG_GUILD_EVENT_PRESENCE_CHANGE = 0x29F0, - SMSG_GUILD_EVENT_RANKS_UPDATED = 0x29F2, - SMSG_GUILD_EVENT_RANK_CHANGED = 0x29F3, - SMSG_GUILD_EVENT_STATUS_CHANGE = 0x29F1, - SMSG_GUILD_EVENT_TAB_ADDED = 0x29F4, - SMSG_GUILD_EVENT_TAB_DELETED = 0x29F5, - SMSG_GUILD_EVENT_TAB_MODIFIED = 0x29F6, - SMSG_GUILD_EVENT_TAB_TEXT_CHANGED = 0x29F7, - SMSG_GUILD_FLAGGED_FOR_RENAME = 0x29DD, - SMSG_GUILD_HARDCORE_MEMBER_DEATH = 0x29BD, - SMSG_GUILD_INVITE = 0x29CB, - SMSG_GUILD_INVITE_DECLINED = 0x29E9, - SMSG_GUILD_INVITE_EXPIRED = 0x29EA, - SMSG_GUILD_ITEM_LOOTED_NOTIFY = 0x29D5, - SMSG_GUILD_KNOWN_RECIPES = 0x29BF, - SMSG_GUILD_MEMBERS_WITH_RECIPE = 0x29C0, - SMSG_GUILD_MEMBER_DAILY_RESET = 0x29E5, - SMSG_GUILD_MEMBER_RECIPES = 0x29BE, - SMSG_GUILD_MEMBER_UPDATE_NOTE = 0x29CA, - SMSG_GUILD_MOVED = 0x29DB, - SMSG_GUILD_MOVE_STARTING = 0x29DA, - SMSG_GUILD_NAME_CHANGED = 0x29DC, - SMSG_GUILD_NEWS = 0x29C2, - SMSG_GUILD_NEWS_DELETED = 0x29C3, - SMSG_GUILD_PARTY_STATE = 0x29CC, - SMSG_GUILD_PERMISSIONS_QUERY_RESULTS = 0x29E2, - SMSG_GUILD_RANKS = 0x29C9, - SMSG_GUILD_REPUTATION_REACTION_CHANGED = 0x29CD, - SMSG_GUILD_RESET = 0x29D9, - SMSG_GUILD_REWARD_LIST = 0x29C1, + SMSG_GUILD_CRITERIA_DELETED = 0x29C6, + SMSG_GUILD_CRITERIA_UPDATE = 0x29C3, + SMSG_GUILD_EVENT_BANK_CONTENTS_CHANGED = 0x29F8, + SMSG_GUILD_EVENT_BANK_MONEY_CHANGED = 0x29F7, + SMSG_GUILD_EVENT_DISBANDED = 0x29ED, + SMSG_GUILD_EVENT_LOG_QUERY_RESULTS = 0x29E2, + SMSG_GUILD_EVENT_MOTD = 0x29EE, + SMSG_GUILD_EVENT_NEW_LEADER = 0x29EC, + SMSG_GUILD_EVENT_PLAYER_JOINED = 0x29EA, + SMSG_GUILD_EVENT_PLAYER_LEFT = 0x29EB, + SMSG_GUILD_EVENT_PRESENCE_CHANGE = 0x29EF, + SMSG_GUILD_EVENT_RANKS_UPDATED = 0x29F1, + SMSG_GUILD_EVENT_RANK_CHANGED = 0x29F2, + SMSG_GUILD_EVENT_STATUS_CHANGE = 0x29F0, + SMSG_GUILD_EVENT_TAB_ADDED = 0x29F3, + SMSG_GUILD_EVENT_TAB_DELETED = 0x29F4, + SMSG_GUILD_EVENT_TAB_MODIFIED = 0x29F5, + SMSG_GUILD_EVENT_TAB_TEXT_CHANGED = 0x29F6, + SMSG_GUILD_FLAGGED_FOR_RENAME = 0x29DC, + SMSG_GUILD_HARDCORE_MEMBER_DEATH = 0x29BC, + SMSG_GUILD_INVITE = 0x29CA, + SMSG_GUILD_INVITE_DECLINED = 0x29E8, + SMSG_GUILD_INVITE_EXPIRED = 0x29E9, + SMSG_GUILD_ITEM_LOOTED_NOTIFY = 0x29D4, + SMSG_GUILD_KNOWN_RECIPES = 0x29BE, + SMSG_GUILD_MEMBERS_WITH_RECIPE = 0x29BF, + SMSG_GUILD_MEMBER_DAILY_RESET = 0x29E4, + SMSG_GUILD_MEMBER_RECIPES = 0x29BD, + SMSG_GUILD_MEMBER_UPDATE_NOTE = 0x29C9, + SMSG_GUILD_MOVED = 0x29DA, + SMSG_GUILD_MOVE_STARTING = 0x29D9, + SMSG_GUILD_NAME_CHANGED = 0x29DB, + SMSG_GUILD_NEWS = 0x29C1, + SMSG_GUILD_NEWS_DELETED = 0x29C2, + SMSG_GUILD_PARTY_STATE = 0x29CB, + SMSG_GUILD_PERMISSIONS_QUERY_RESULTS = 0x29E1, + SMSG_GUILD_RANKS = 0x29C8, + SMSG_GUILD_REPUTATION_REACTION_CHANGED = 0x29CC, + SMSG_GUILD_RESET = 0x29D8, + SMSG_GUILD_REWARD_LIST = 0x29C0, SMSG_GUILD_ROSTER = 0x29BB, - SMSG_GUILD_ROSTER_UPDATE = 0x29BC, SMSG_GUILD_SEND_RANK_CHANGE = 0x29B9, - SMSG_HARDCORE_DEATH_ALERT = 0x289F, + SMSG_HARDCORE_DEATH_ALERT = 0x289E, SMSG_HEALTH_UPDATE = 0x26D4, SMSG_HIGHEST_THREAT_UPDATE = 0x26DC, SMSG_HOTFIX_CONNECT = 0x2911, SMSG_HOTFIX_MESSAGE = 0x2910, - SMSG_INITIALIZE_FACTIONS = 0x2725, + SMSG_INITIALIZE_FACTIONS = 0x2724, SMSG_INITIAL_SETUP = 0x2580, - SMSG_INIT_WORLD_STATES = 0x2747, + SMSG_INIT_WORLD_STATES = 0x2746, SMSG_INSPECT_RESULT = 0x2632, - SMSG_INSTANCE_ENCOUNTER_CHANGE_PRIORITY = 0x27AD, - SMSG_INSTANCE_ENCOUNTER_DISENGAGE_UNIT = 0x27AC, - SMSG_INSTANCE_ENCOUNTER_END = 0x27B5, - SMSG_INSTANCE_ENCOUNTER_ENGAGE_UNIT = 0x27AB, - SMSG_INSTANCE_ENCOUNTER_GAIN_COMBAT_RESURRECTION_CHARGE = 0x27B7, - SMSG_INSTANCE_ENCOUNTER_IN_COMBAT_RESURRECTION = 0x27B6, - SMSG_INSTANCE_ENCOUNTER_OBJECTIVE_COMPLETE = 0x27B0, - SMSG_INSTANCE_ENCOUNTER_OBJECTIVE_START = 0x27AF, - SMSG_INSTANCE_ENCOUNTER_OBJECTIVE_UPDATE = 0x27B4, - SMSG_INSTANCE_ENCOUNTER_PHASE_SHIFT_CHANGED = 0x27B8, - SMSG_INSTANCE_ENCOUNTER_START = 0x27B1, - SMSG_INSTANCE_ENCOUNTER_TIMER_START = 0x27AE, - SMSG_INSTANCE_ENCOUNTER_UPDATE_ALLOW_RELEASE_IN_PROGRESS = 0x27B3, - SMSG_INSTANCE_ENCOUNTER_UPDATE_SUPPRESS_RELEASE = 0x27B2, + SMSG_INSTANCE_ENCOUNTER_CHANGE_PRIORITY = 0x27AC, + SMSG_INSTANCE_ENCOUNTER_DISENGAGE_UNIT = 0x27AB, + SMSG_INSTANCE_ENCOUNTER_END = 0x27B4, + SMSG_INSTANCE_ENCOUNTER_ENGAGE_UNIT = 0x27AA, + SMSG_INSTANCE_ENCOUNTER_GAIN_COMBAT_RESURRECTION_CHARGE = 0x27B6, + SMSG_INSTANCE_ENCOUNTER_IN_COMBAT_RESURRECTION = 0x27B5, + SMSG_INSTANCE_ENCOUNTER_OBJECTIVE_COMPLETE = 0x27AF, + SMSG_INSTANCE_ENCOUNTER_OBJECTIVE_START = 0x27AE, + SMSG_INSTANCE_ENCOUNTER_OBJECTIVE_UPDATE = 0x27B3, + SMSG_INSTANCE_ENCOUNTER_PHASE_SHIFT_CHANGED = 0x27B7, + SMSG_INSTANCE_ENCOUNTER_START = 0x27B0, + SMSG_INSTANCE_ENCOUNTER_TIMER_START = 0x27AD, + SMSG_INSTANCE_ENCOUNTER_UPDATE_ALLOW_RELEASE_IN_PROGRESS = 0x27B2, + SMSG_INSTANCE_ENCOUNTER_UPDATE_SUPPRESS_RELEASE = 0x27B1, SMSG_INSTANCE_GROUP_SIZE_CHANGED = 0x26FC, SMSG_INSTANCE_INFO = 0x2635, SMSG_INSTANCE_RESET = 0x268A, SMSG_INSTANCE_RESET_FAILED = 0x268B, - SMSG_INSTANCE_SAVE_CREATED = 0x277D, + SMSG_INSTANCE_SAVE_CREATED = 0x277C, SMSG_INTERRUPT_POWER_REGEN = 0x2C5B, SMSG_INVALIDATE_PAGE_TEXT = 0x2918, SMSG_INVALIDATE_PLAYER = 0x2FFF, - SMSG_INVALID_PROMOTION_CODE = 0x2754, + SMSG_INVALID_PROMOTION_CODE = 0x2753, SMSG_INVENTORY_CHANGE_FAILURE = 0x2DA5, - SMSG_INVENTORY_FIXUP_COMPLETE = 0x280F, - SMSG_INVENTORY_FULL_OVERFLOW = 0x2820, - SMSG_ISLAND_AZERITE_GAIN = 0x275D, - SMSG_ISLAND_COMPLETE = 0x275E, + SMSG_INVENTORY_FIXUP_COMPLETE = 0x280E, + SMSG_INVENTORY_FULL_OVERFLOW = 0x281F, + SMSG_ISLAND_AZERITE_GAIN = 0x275C, + SMSG_ISLAND_COMPLETE = 0x275D, SMSG_IS_QUEST_COMPLETE_RESPONSE = 0x2A84, SMSG_ITEM_CHANGED = 0x26ED, - SMSG_ITEM_COOLDOWN = 0x27C3, - SMSG_ITEM_ENCHANT_TIME_UPDATE = 0x2756, + SMSG_ITEM_COOLDOWN = 0x27C2, + SMSG_ITEM_ENCHANT_TIME_UPDATE = 0x2755, SMSG_ITEM_EXPIRE_PURCHASE_REFUND = 0x259F, - SMSG_ITEM_INTERACTION_COMPLETE = 0x2854, + SMSG_ITEM_INTERACTION_COMPLETE = 0x2853, SMSG_ITEM_PURCHASE_REFUND_RESULT = 0x259D, SMSG_ITEM_PUSH_RESULT = 0x2624, - SMSG_ITEM_TIME_UPDATE = 0x2755, + SMSG_ITEM_TIME_UPDATE = 0x2754, SMSG_KICK_REASON = 0x268D, - SMSG_LATENCY_REPORT_PING = 0x2865, + SMSG_LATENCY_REPORT_PING = 0x2864, SMSG_LEARNED_SPELLS = 0x2C4F, SMSG_LEARN_PVP_TALENT_FAILED = 0x25D7, SMSG_LEARN_TALENT_FAILED = 0x25D6, - SMSG_LEGACY_LOOT_RULES = 0x2825, - SMSG_LEVEL_LINKING_RESULT = 0x283B, + SMSG_LEGACY_LOOT_RULES = 0x2824, + SMSG_LEVEL_LINKING_RESULT = 0x283A, SMSG_LEVEL_UP_INFO = 0x26EB, SMSG_LFG_BOOT_PLAYER = 0x2A35, SMSG_LFG_DISABLED = 0x2A33, @@ -1539,16 +1538,16 @@ enum OpcodeServer : uint16 SMSG_LFG_SLOT_INVALID = 0x2A30, SMSG_LFG_TELEPORT_DENIED = 0x2A32, SMSG_LFG_UPDATE_STATUS = 0x2A24, - SMSG_LIVE_REGION_ACCOUNT_RESTORE_RESULT = 0x276F, - SMSG_LIVE_REGION_CHARACTER_COPY_RESULT = 0x276E, - SMSG_LIVE_REGION_GET_ACCOUNT_CHARACTER_LIST_RESULT = 0x2763, - SMSG_LIVE_REGION_KEY_BINDINGS_COPY_RESULT = 0x2770, + SMSG_LIVE_REGION_ACCOUNT_RESTORE_RESULT = 0x276E, + SMSG_LIVE_REGION_CHARACTER_COPY_RESULT = 0x276D, + SMSG_LIVE_REGION_GET_ACCOUNT_CHARACTER_LIST_RESULT = 0x2762, + SMSG_LIVE_REGION_KEY_BINDINGS_COPY_RESULT = 0x276F, SMSG_LOAD_CUF_PROFILES = 0x25BF, SMSG_LOAD_EQUIPMENT_SET = 0x2710, - SMSG_LOBBY_MATCHMAKER_LOBBY_ACQUIRED_SERVER = 0x2876, - SMSG_LOBBY_MATCHMAKER_PARTY_INFO = 0x2877, - SMSG_LOBBY_MATCHMAKER_PARTY_INVITE_REJECTED = 0x2878, - SMSG_LOBBY_MATCHMAKER_RECEIVE_INVITE = 0x2879, + SMSG_LOBBY_MATCHMAKER_LOBBY_ACQUIRED_SERVER = 0x2875, + SMSG_LOBBY_MATCHMAKER_PARTY_INFO = 0x2876, + SMSG_LOBBY_MATCHMAKER_PARTY_INVITE_REJECTED = 0x2877, + SMSG_LOBBY_MATCHMAKER_RECEIVE_INVITE = 0x2878, SMSG_LOGIN_SET_TIME_SPEED = 0x270F, SMSG_LOGIN_VERIFY_WORLD = 0x259A, SMSG_LOGOUT_CANCEL_ACK = 0x2689, @@ -1556,7 +1555,7 @@ enum OpcodeServer : uint16 SMSG_LOGOUT_RESPONSE = 0x2687, SMSG_LOG_XP_GAIN = 0x26E7, SMSG_LOOT_ALL_PASSED = 0x2622, - SMSG_LOOT_LIST = 0x2742, + SMSG_LOOT_LIST = 0x2741, SMSG_LOOT_MONEY_NOTIFY = 0x261D, SMSG_LOOT_RELEASE = 0x261C, SMSG_LOOT_RELEASE_ALL = 0x261B, @@ -1567,20 +1566,20 @@ enum OpcodeServer : uint16 SMSG_LOOT_ROLL_WON = 0x2623, SMSG_LOSS_OF_CONTROL_AURA_UPDATE = 0x2673, SMSG_MAIL_COMMAND_RESULT = 0x263C, - SMSG_MAIL_LIST_RESULT = 0x2757, - SMSG_MAIL_QUERY_NEXT_TIME_RESULT = 0x2758, + SMSG_MAIL_LIST_RESULT = 0x2756, + SMSG_MAIL_QUERY_NEXT_TIME_RESULT = 0x2757, SMSG_MAP_OBJECTIVES_INIT = 0x294C, SMSG_MAP_OBJ_EVENTS = 0x25C9, SMSG_MASTER_LOOT_CANDIDATE_LIST = 0x2620, - SMSG_MEETING_STONE_FAILED = 0x287A, + SMSG_MEETING_STONE_FAILED = 0x2879, SMSG_MESSAGE_BOX = 0x2576, SMSG_MINIMAP_PING = 0x26D1, SMSG_MIRROR_IMAGE_COMPONENTED_DATA = 0x2C14, SMSG_MIRROR_IMAGE_CREATURE_DATA = 0x2C13, SMSG_MISSILE_CANCEL = 0x25CA, - SMSG_MODIFY_COOLDOWN = 0x2765, + SMSG_MODIFY_COOLDOWN = 0x2764, SMSG_MOUNT_RESULT = 0x257B, - SMSG_MOVEMENT_ENFORCEMENT_ALERT = 0x282B, + SMSG_MOVEMENT_ENFORCEMENT_ALERT = 0x282A, SMSG_MOVE_ADD_IMPULSE = 0x2E34, SMSG_MOVE_APPLY_INERTIA = 0x2E30, SMSG_MOVE_APPLY_MOVEMENT_FORCE = 0x2E17, @@ -1690,51 +1689,52 @@ enum OpcodeServer : uint16 SMSG_MOVE_UPDATE_TELEPORT = 0x2DE1, SMSG_MOVE_UPDATE_TURN_RATE = 0x2DDD, SMSG_MOVE_UPDATE_WALK_SPEED = 0x2DD8, - SMSG_MULTI_FLOOR_LEAVE_FLOOR = 0x27DB, - SMSG_MULTI_FLOOR_NEW_FLOOR = 0x27DA, + SMSG_MULTI_FLOOR_LEAVE_FLOOR = 0x27DA, + SMSG_MULTI_FLOOR_NEW_FLOOR = 0x27D9, SMSG_MYTHIC_PLUS_ALL_MAP_STATS = 0x260D, SMSG_MYTHIC_PLUS_CURRENT_AFFIXES = 0x260F, SMSG_MYTHIC_PLUS_NEW_WEEK_RECORD = 0x2613, SMSG_MYTHIC_PLUS_SEASON_DATA = 0x260E, SMSG_NEUTRAL_PLAYER_FACTION_SELECT_RESULT = 0x25DE, - SMSG_NEW_DATA_BUILD = 0x2896, + SMSG_NEW_DATA_BUILD = 0x2895, SMSG_NEW_TAXI_PATH = 0x2682, SMSG_NEW_WORLD = 0x2597, SMSG_NOTIFY_DEST_LOC_SPELL_CAST = 0x2C45, SMSG_NOTIFY_MISSILE_TRAJECTORY_COLLISION = 0x26AE, SMSG_NOTIFY_MONEY = 0x259C, SMSG_NOTIFY_RECEIVED_MAIL = 0x263D, - SMSG_NPC_INTERACTION_OPEN_RESULT = 0x2872, + SMSG_NPC_INTERACTION_OPEN_RESULT = 0x2871, SMSG_OFFER_PETITION_ERROR = 0x26B9, SMSG_ON_CANCEL_EXPECTED_RIDE_VEHICLE_AURA = 0x26E8, SMSG_ON_MONSTER_MOVE = 0x2DD4, - SMSG_OPEN_ARTIFACT_FORGE = 0x279E, + SMSG_OPEN_ARTIFACT_FORGE = 0x279D, SMSG_OPEN_CONTAINER = 0x2DA6, SMSG_OPEN_LFG_DUNGEON_FINDER = 0x2A31, - SMSG_OPEN_SHIPMENT_NPC_RESULT = 0x2796, + SMSG_OPEN_SHIPMENT_NPC_RESULT = 0x2795, SMSG_OVERRIDE_LIGHT = 0x26BE, SMSG_PAGE_TEXT = 0x271B, - SMSG_PARTY_COMMAND_RESULT = 0x2790, + SMSG_PARTY_COMMAND_RESULT = 0x278F, + SMSG_PARTY_ELIGIBILITY_FOR_DELVE_TIERS_RESPONSE = 0x28AA, SMSG_PARTY_INVITE = 0x25C0, - SMSG_PARTY_KILL_LOG = 0x275B, - SMSG_PARTY_MEMBER_FULL_STATE = 0x275A, - SMSG_PARTY_MEMBER_PARTIAL_STATE = 0x2759, - SMSG_PARTY_NOTIFY_LFG_LEADER_CHANGE = 0x285A, + SMSG_PARTY_KILL_LOG = 0x275A, + SMSG_PARTY_MEMBER_FULL_STATE = 0x2759, + SMSG_PARTY_MEMBER_PARTIAL_STATE = 0x2758, + SMSG_PARTY_NOTIFY_LFG_LEADER_CHANGE = 0x2859, SMSG_PARTY_UPDATE = 0x25F6, SMSG_PAST_TIME_EVENTS = 0x25C5, SMSG_PAUSE_MIRROR_TIMER = 0x2712, SMSG_PENDING_RAID_LOCK = 0x26FA, - SMSG_PERKS_PROGRAM_ACTIVITY_COMPLETE = 0x286F, - SMSG_PERKS_PROGRAM_ACTIVITY_UPDATE = 0x286B, - SMSG_PERKS_PROGRAM_DISABLED = 0x2870, - SMSG_PERKS_PROGRAM_RESULT = 0x286C, - SMSG_PERKS_PROGRAM_VENDOR_UPDATE = 0x286A, + SMSG_PERKS_PROGRAM_ACTIVITY_COMPLETE = 0x286E, + SMSG_PERKS_PROGRAM_ACTIVITY_UPDATE = 0x286A, + SMSG_PERKS_PROGRAM_DISABLED = 0x286F, + SMSG_PERKS_PROGRAM_RESULT = 0x286B, + SMSG_PERKS_PROGRAM_VENDOR_UPDATE = 0x2869, SMSG_PETITION_ALREADY_SIGNED = 0x25A2, - SMSG_PETITION_RENAME_GUILD_RESPONSE = 0x29FB, + SMSG_PETITION_RENAME_GUILD_RESPONSE = 0x29FA, SMSG_PETITION_SHOW_LIST = 0x26C1, SMSG_PETITION_SHOW_SIGNATURES = 0x26C2, - SMSG_PETITION_SIGN_RESULTS = 0x274D, - SMSG_PET_ACTION_FEEDBACK = 0x274A, + SMSG_PETITION_SIGN_RESULTS = 0x274C, + SMSG_PET_ACTION_FEEDBACK = 0x2749, SMSG_PET_ACTION_SOUND = 0x26A4, SMSG_PET_BATTLE_CHAT_RESTRICTED = 0x2604, SMSG_PET_BATTLE_DEBUG_QUEUE_DUMP_RESPONSE = 0x2678, @@ -1777,7 +1777,7 @@ enum OpcodeServer : uint16 SMSG_PLAYER_HIDE_ARROW_CALLOUT = 0x3023, SMSG_PLAYER_IS_ADVENTURE_MAP_POI_VALID = 0x3009, SMSG_PLAYER_OPEN_SUBSCRIPTION_INTERSTITIAL = 0x300E, - SMSG_PLAYER_SAVE_GUILD_EMBLEM = 0x29FA, + SMSG_PLAYER_SAVE_GUILD_EMBLEM = 0x29F9, SMSG_PLAYER_SAVE_PERSONAL_EMBLEM = 0x3025, SMSG_PLAYER_SHOW_ARROW_CALLOUT = 0x3022, SMSG_PLAYER_SHOW_GENERIC_WIDGET_DISPLAY = 0x3020, @@ -1786,13 +1786,13 @@ enum OpcodeServer : uint16 SMSG_PLAYER_SKINNED = 0x3006, SMSG_PLAYER_TUTORIAL_HIGHLIGHT_SPELL = 0x300D, SMSG_PLAYER_TUTORIAL_UNHIGHLIGHT_SPELL = 0x300C, - SMSG_PLAY_MUSIC = 0x276A, - SMSG_PLAY_OBJECT_SOUND = 0x276B, - SMSG_PLAY_ONE_SHOT_ANIM_KIT = 0x2732, + SMSG_PLAY_MUSIC = 0x2769, + SMSG_PLAY_OBJECT_SOUND = 0x276A, + SMSG_PLAY_ONE_SHOT_ANIM_KIT = 0x2731, SMSG_PLAY_ORPHAN_SPELL_VISUAL = 0x2C49, SMSG_PLAY_SCENE = 0x2637, - SMSG_PLAY_SOUND = 0x2769, - SMSG_PLAY_SPEAKERBOT_SOUND = 0x276C, + SMSG_PLAY_SOUND = 0x2768, + SMSG_PLAY_SPEAKERBOT_SOUND = 0x276B, SMSG_PLAY_SPELL_VISUAL = 0x2C47, SMSG_PLAY_SPELL_VISUAL_KIT = 0x2C4B, SMSG_PLAY_TIME_WARNING = 0x2700, @@ -1800,11 +1800,11 @@ enum OpcodeServer : uint16 SMSG_POWER_UPDATE = 0x26D5, SMSG_PRELOAD_CHILD_MAP = 0x2579, SMSG_PRELOAD_WORLD = 0x2598, - SMSG_PREPOPULATE_NAME_CACHE = 0x282E, - SMSG_PRE_RESSURECT = 0x2768, + SMSG_PREPOPULATE_NAME_CACHE = 0x282D, + SMSG_PRE_RESSURECT = 0x2767, SMSG_PRINT_NOTIFICATION = 0x25CD, - SMSG_PROC_RESIST = 0x275C, - SMSG_PROFESSION_GOSSIP = 0x27FB, + SMSG_PROC_RESIST = 0x275B, + SMSG_PROFESSION_GOSSIP = 0x27FA, SMSG_PUSH_SPELL_TO_ACTION_BAR = 0x2C53, SMSG_PVP_CREDIT = 0x2946, SMSG_PVP_MATCH_COMPLETE = 0x2951, @@ -1813,13 +1813,13 @@ enum OpcodeServer : uint16 SMSG_PVP_MATCH_START = 0x294F, SMSG_PVP_MATCH_STATISTICS = 0x2932, SMSG_PVP_OPTIONS_ENABLED = 0x2935, - SMSG_PVP_TIER_RECORD = 0x2866, + SMSG_PVP_TIER_RECORD = 0x2865, SMSG_QUERY_BATTLE_PET_NAME_RESPONSE = 0x291A, SMSG_QUERY_CREATURE_RESPONSE = 0x2914, SMSG_QUERY_GAME_OBJECT_RESPONSE = 0x2915, SMSG_QUERY_GARRISON_PET_NAME_RESPONSE = 0x299F, - SMSG_QUERY_GUILD_FOLLOW_INFO_RESPONSE = 0x29E8, - SMSG_QUERY_GUILD_INFO_RESPONSE = 0x29E6, + SMSG_QUERY_GUILD_FOLLOW_INFO_RESPONSE = 0x29E7, + SMSG_QUERY_GUILD_INFO_RESPONSE = 0x29E5, SMSG_QUERY_ITEM_TEXT_RESPONSE = 0x291E, SMSG_QUERY_NPC_TEXT_RESPONSE = 0x2916, SMSG_QUERY_PAGE_TEXT_RESPONSE = 0x2917, @@ -1828,7 +1828,7 @@ enum OpcodeServer : uint16 SMSG_QUERY_PLAYER_NAMES_RESPONSE = 0x301D, SMSG_QUERY_PLAYER_NAME_BY_COMMUNITY_ID_RESPONSE = 0x3002, SMSG_QUERY_QUEST_INFO_RESPONSE = 0x2A96, - SMSG_QUERY_REALM_GUILD_MASTER_INFO_RESPONSE = 0x29E7, + SMSG_QUERY_REALM_GUILD_MASTER_INFO_RESPONSE = 0x29E6, SMSG_QUERY_TIME_RESPONSE = 0x26E6, SMSG_QUEST_COMPLETION_NPC_RESPONSE = 0x2A81, SMSG_QUEST_CONFIRM_ACCEPT = 0x2A8F, @@ -1848,22 +1848,22 @@ enum OpcodeServer : uint16 SMSG_QUEST_POI_QUERY_RESPONSE = 0x2A9D, SMSG_QUEST_POI_UPDATE_RESPONSE = 0x2A9F, SMSG_QUEST_PUSH_RESULT = 0x2A90, - SMSG_QUEST_SESSION_INFO_RESPONSE = 0x2850, - SMSG_QUEST_SESSION_READY_CHECK = 0x283F, - SMSG_QUEST_SESSION_READY_CHECK_RESPONSE = 0x2840, - SMSG_QUEST_SESSION_RESULT = 0x283E, + SMSG_QUEST_SESSION_INFO_RESPONSE = 0x284F, + SMSG_QUEST_SESSION_READY_CHECK = 0x283E, + SMSG_QUEST_SESSION_READY_CHECK_RESPONSE = 0x283F, + SMSG_QUEST_SESSION_RESULT = 0x283D, SMSG_QUEST_UPDATE_ADD_CREDIT = 0x2A8C, SMSG_QUEST_UPDATE_ADD_CREDIT_SIMPLE = 0x2A8D, SMSG_QUEST_UPDATE_ADD_PVP_CREDIT = 0x2A8E, SMSG_QUEST_UPDATE_COMPLETE = 0x2A89, SMSG_QUEST_UPDATE_FAILED = 0x2A8A, SMSG_QUEST_UPDATE_FAILED_TIMER = 0x2A8B, - SMSG_QUEUE_SUMMARY_UPDATE = 0x280E, - SMSG_RAF_ACCOUNT_INFO = 0x283C, - SMSG_RAF_ACTIVITY_STATE_CHANGED = 0x284C, - SMSG_RAF_DEBUG_FRIEND_MONTHS = 0x2893, - SMSG_RAID_DIFFICULTY_SET = 0x27A8, - SMSG_RAID_GROUP_ONLY = 0x27AA, + SMSG_QUEUE_SUMMARY_UPDATE = 0x280D, + SMSG_RAF_ACCOUNT_INFO = 0x283B, + SMSG_RAF_ACTIVITY_STATE_CHANGED = 0x284B, + SMSG_RAF_DEBUG_FRIEND_MONTHS = 0x2892, + SMSG_RAID_DIFFICULTY_SET = 0x27A7, + SMSG_RAID_GROUP_ONLY = 0x27A9, SMSG_RAID_INSTANCE_MESSAGE = 0x2BB4, SMSG_RAID_MARKERS_CHANGED = 0x25A3, SMSG_RANDOM_ROLL = 0x2631, @@ -1871,13 +1871,13 @@ enum OpcodeServer : uint16 SMSG_READY_CHECK_COMPLETED = 0x25FA, SMSG_READY_CHECK_RESPONSE = 0x25F9, SMSG_READY_CHECK_STARTED = 0x25F8, - SMSG_READ_ITEM_RESULT_FAILED = 0x27A4, - SMSG_READ_ITEM_RESULT_OK = 0x279B, + SMSG_READ_ITEM_RESULT_FAILED = 0x27A3, + SMSG_READ_ITEM_RESULT_OK = 0x279A, SMSG_REALM_QUERY_RESPONSE = 0x2913, - SMSG_REATTACH_RESURRECT = 0x274C, + SMSG_REATTACH_RESURRECT = 0x274B, SMSG_RECEIVE_PING_UNIT = 0x25A4, SMSG_RECEIVE_PING_WORLD_POINT = 0x25A5, - SMSG_RECRAFT_ITEM_RESULT = 0x2889, + SMSG_RECRAFT_ITEM_RESULT = 0x2888, SMSG_RECRUIT_A_FRIEND_FAILURE = 0x26C3, SMSG_REFRESH_COMPONENT = 0x2652, SMSG_REFRESH_SPELL_HISTORY = 0x2C2B, @@ -1885,21 +1885,21 @@ enum OpcodeServer : uint16 SMSG_REGIONWIDE_CHARACTER_RESTRICTIONS_DATA = 0x2585, SMSG_REMOVE_ITEM_PASSIVE = 0x25AE, SMSG_REMOVE_SPELL_FROM_ACTION_BAR = 0x2C54, - SMSG_REPLACE_TROPHY_RESPONSE = 0x27C0, + SMSG_REPLACE_TROPHY_RESPONSE = 0x27BF, SMSG_REPORT_PVP_PLAYER_AFK_RESULT = 0x3001, SMSG_REQUEST_CEMETERY_LIST_RESPONSE = 0x2591, SMSG_REQUEST_PVP_REWARDS_RESPONSE = 0x2936, SMSG_REQUEST_SCHEDULED_PVP_INFO_RESPONSE = 0x2937, SMSG_RESET_COMPRESSION_CONTEXT = 0x304F, SMSG_RESET_FAILED_NOTIFY = 0x26BA, - SMSG_RESET_LAST_LOADED_CONFIG_CVARS = 0x2890, + SMSG_RESET_LAST_LOADED_CONFIG_CVARS = 0x288F, SMSG_RESET_QUEST_POI = 0x2AA0, SMSG_RESET_RANGED_COMBAT_TIMER = 0x2945, SMSG_RESET_WEEKLY_CURRENCY = 0x2575, SMSG_RESPEC_WIPE_CONFIRM = 0x2614, SMSG_RESPOND_INSPECT_ACHIEVEMENTS = 0x2572, - SMSG_RESPONSE_PERK_PENDING_REWARDS = 0x286D, - SMSG_RESPONSE_PERK_RECENT_PURCHASES = 0x286E, + SMSG_RESPONSE_PERK_PENDING_REWARDS = 0x286C, + SMSG_RESPONSE_PERK_RECENT_PURCHASES = 0x286D, SMSG_RESTART_GLOBAL_COOLDOWN = 0x2C63, SMSG_RESTRICTED_ACCOUNT_WARNING = 0x25BC, SMSG_RESUME_CAST = 0x2C3D, @@ -1908,21 +1908,21 @@ enum OpcodeServer : uint16 SMSG_RESUME_TOKEN = 0x25AC, SMSG_RESURRECT_REQUEST = 0x257E, SMSG_RESYNC_RUNES = 0x2C61, - SMSG_RETURNING_PLAYER_PROMPT = 0x27A3, - SMSG_RETURN_APPLICANT_LIST = 0x2832, - SMSG_RETURN_RECRUITING_CLUBS = 0x2831, + SMSG_RETURNING_PLAYER_PROMPT = 0x27A2, + SMSG_RETURN_APPLICANT_LIST = 0x2831, + SMSG_RETURN_RECRUITING_CLUBS = 0x2830, SMSG_ROLE_CHANGED_INFORM = 0x258D, SMSG_ROLE_CHOSEN = 0x2A39, SMSG_ROLE_POLL_INFORM = 0x258E, - SMSG_RUNEFORGE_LEGENDARY_CRAFTING_OPEN_NPC = 0x27FA, + SMSG_RUNEFORGE_LEGENDARY_CRAFTING_OPEN_NPC = 0x27F9, SMSG_RUNE_REGEN_DEBUG = 0x25B9, - SMSG_SCENARIO_COMPLETED = 0x27E8, + SMSG_SCENARIO_COMPLETED = 0x27E7, SMSG_SCENARIO_POIS = 0x2634, SMSG_SCENARIO_PROGRESS_UPDATE = 0x262D, - SMSG_SCENARIO_SHOW_CRITERIA = 0x27FE, + SMSG_SCENARIO_SHOW_CRITERIA = 0x27FD, SMSG_SCENARIO_STATE = 0x262C, - SMSG_SCENARIO_UI_UPDATE = 0x27FD, - SMSG_SCENARIO_VACATE = 0x27A5, + SMSG_SCENARIO_UI_UPDATE = 0x27FC, + SMSG_SCENARIO_VACATE = 0x27A4, SMSG_SCENE_OBJECT_EVENT = 0x25E4, SMSG_SCENE_OBJECT_PET_BATTLE_FINAL_ROUND = 0x25E9, SMSG_SCENE_OBJECT_PET_BATTLE_FINISHED = 0x25EA, @@ -1945,46 +1945,46 @@ enum OpcodeServer : uint16 SMSG_SERVER_TIME_OFFSET = 0x2716, SMSG_SETUP_COMBAT_LOG_FILE_FLUSH = 0x2C1F, SMSG_SETUP_CURRENCY = 0x2573, - SMSG_SET_AI_ANIM_KIT = 0x2731, - SMSG_SET_ANIM_TIER = 0x2735, + SMSG_SET_AI_ANIM_KIT = 0x2730, + SMSG_SET_ANIM_TIER = 0x2734, SMSG_SET_CHR_UPGRADE_TIER = 0x25E1, SMSG_SET_CURRENCY = 0x2574, SMSG_SET_DF_FAST_LAUNCH_RESULT = 0x2A2E, SMSG_SET_DUNGEON_DIFFICULTY = 0x26A8, SMSG_SET_FACTION_AT_WAR = 0x2702, - SMSG_SET_FACTION_NOT_VISIBLE = 0x272C, - SMSG_SET_FACTION_STANDING = 0x272D, - SMSG_SET_FACTION_VISIBLE = 0x272B, + SMSG_SET_FACTION_NOT_VISIBLE = 0x272B, + SMSG_SET_FACTION_STANDING = 0x272C, + SMSG_SET_FACTION_VISIBLE = 0x272A, SMSG_SET_FLAT_SPELL_MODIFIER = 0x2C38, - SMSG_SET_FORCED_REACTIONS = 0x271F, SMSG_SET_ITEM_PURCHASE_DATA = 0x259E, - SMSG_SET_LOOT_METHOD_FAILED = 0x27CC, + SMSG_SET_LOOT_METHOD_FAILED = 0x27CB, SMSG_SET_MAX_WEEKLY_QUANTITY = 0x25A1, - SMSG_SET_MELEE_ANIM_KIT = 0x2734, - SMSG_SET_MOVEMENT_ANIM_KIT = 0x2733, + SMSG_SET_MELEE_ANIM_KIT = 0x2733, + SMSG_SET_MOVEMENT_ANIM_KIT = 0x2732, SMSG_SET_PCT_SPELL_MODIFIER = 0x2C39, SMSG_SET_PET_SPECIALIZATION = 0x2626, SMSG_SET_PLAYER_DECLINED_NAMES_RESULT = 0x3003, SMSG_SET_PLAY_HOVER_ANIM = 0x25BD, - SMSG_SET_PROFICIENCY = 0x2736, - SMSG_SET_QUEST_REPLAY_COOLDOWN_OVERRIDE = 0x2845, + SMSG_SET_PROFICIENCY = 0x2735, + SMSG_SET_QUEST_REPLAY_COOLDOWN_OVERRIDE = 0x2844, SMSG_SET_SHIPMENT_READY_RESPONSE = 0x2998, SMSG_SET_SPELL_CHARGES = 0x2C28, SMSG_SET_TIME_ZONE_INFORMATION = 0x267B, SMSG_SET_VEHICLE_REC_ID = 0x26F9, - SMSG_SHADOWLANDS_CAPACITANCE_UPDATE = 0x2871, + SMSG_SHADOWLANDS_CAPACITANCE_UPDATE = 0x2870, SMSG_SHIPMENT_FACTION_UPDATE_RESULT = 0x2999, - SMSG_SHOW_DELVES_DISPLAY_UI = 0x28A7, + SMSG_SHOW_DELVES_COMPANION_CONFIGURATION_UI = 0x28A8, + SMSG_SHOW_DELVES_DISPLAY_UI = 0x28A6, SMSG_SHOW_NEUTRAL_PLAYER_FACTION_SELECT_UI = 0x25DD, SMSG_SHOW_QUEST_COMPLETION_TEXT = 0x2A95, SMSG_SHOW_TAXI_NODES = 0x26D0, - SMSG_SHOW_TRADE_SKILL_RESPONSE = 0x2771, - SMSG_SOCIAL_CONTRACT_REQUEST_RESPONSE = 0x287B, - SMSG_SOCKET_GEMS_FAILURE = 0x2729, - SMSG_SOCKET_GEMS_SUCCESS = 0x2728, + SMSG_SHOW_TRADE_SKILL_RESPONSE = 0x2770, + SMSG_SOCIAL_CONTRACT_REQUEST_RESPONSE = 0x287A, + SMSG_SOCKET_GEMS_FAILURE = 0x2728, + SMSG_SOCKET_GEMS_SUCCESS = 0x2727, SMSG_SPECIAL_MOUNT_ANIM = 0x26A3, - SMSG_SPECTATE_END = 0x2895, - SMSG_SPECTATE_PLAYER = 0x2894, + SMSG_SPECTATE_END = 0x2894, + SMSG_SPECTATE_PLAYER = 0x2893, SMSG_SPEC_INVOLUNTARILY_CHANGED = 0x271A, SMSG_SPELL_ABSORB_LOG = 0x2C1C, SMSG_SPELL_CATEGORY_COOLDOWN = 0x2C16, @@ -2014,7 +2014,7 @@ enum OpcodeServer : uint16 SMSG_SPELL_PREPARE = 0x2C3A, SMSG_SPELL_START = 0x2C3C, SMSG_SPELL_VISUAL_LOAD_SCREEN = 0x25CF, - SMSG_SPLASH_SCREEN_SHOW_LATEST = 0x2856, + SMSG_SPLASH_SCREEN_SHOW_LATEST = 0x2855, SMSG_STAND_STATE_UPDATE = 0x271E, SMSG_STARTER_BUILD_ACTIVATE_FAILED = 0x25D5, SMSG_START_ELAPSED_TIMER = 0x2606, @@ -2025,24 +2025,24 @@ enum OpcodeServer : uint16 SMSG_START_TIMER = 0x25A8, SMSG_STOP_ELAPSED_TIMER = 0x2607, SMSG_STOP_MIRROR_TIMER = 0x2713, - SMSG_STOP_SPEAKERBOT_SOUND = 0x276D, + SMSG_STOP_SPEAKERBOT_SOUND = 0x276C, SMSG_STOP_TIMER = 0x25A9, SMSG_STREAMING_MOVIES = 0x25A7, - SMSG_SUGGEST_INVITE_INFORM = 0x2791, + SMSG_SUGGEST_INVITE_INFORM = 0x2790, SMSG_SUMMON_CANCEL = 0x26B4, SMSG_SUMMON_RAID_MEMBER_VALIDATE_FAILED = 0x258F, - SMSG_SUMMON_REQUEST = 0x2723, + SMSG_SUMMON_REQUEST = 0x2722, SMSG_SUPERCEDED_SPELLS = 0x2C4E, SMSG_SUSPEND_COMMS = 0x304A, SMSG_SUSPEND_TOKEN = 0x25AB, - SMSG_SYNC_WOW_ENTITLEMENTS = 0x284E, + SMSG_SYNC_WOW_ENTITLEMENTS = 0x284D, SMSG_TALENTS_INVOLUNTARILY_RESET = 0x2719, SMSG_TAXI_NODE_STATUS = 0x2680, SMSG_TEXT_EMOTE = 0x267E, SMSG_THREAT_CLEAR = 0x26DF, SMSG_THREAT_REMOVE = 0x26DE, SMSG_THREAT_UPDATE = 0x26DD, - SMSG_TIMERUNNING_SEASON_ENDED = 0x28AA, + SMSG_TIMERUNNING_SEASON_ENDED = 0x28A9, SMSG_TIME_ADJUSTMENT = 0x2DD3, SMSG_TIME_SYNC_REQUEST = 0x2DD2, SMSG_TITLE_EARNED = 0x26DA, @@ -2059,49 +2059,49 @@ enum OpcodeServer : uint16 SMSG_TRANSFER_ABORTED = 0x2705, SMSG_TRANSFER_PENDING = 0x25D0, SMSG_TREASURE_PICKER_RESPONSE = 0x291F, - SMSG_TRIGGER_CINEMATIC = 0x27C5, + SMSG_TRIGGER_CINEMATIC = 0x27C4, SMSG_TRIGGER_MOVIE = 0x26CE, - SMSG_TURN_IN_PETITION_RESULT = 0x274F, - SMSG_TUTORIAL_FLAGS = 0x27B9, + SMSG_TURN_IN_PETITION_RESULT = 0x274E, + SMSG_TUTORIAL_FLAGS = 0x27B8, SMSG_UI_MAP_QUEST_LINES_RESPONSE = 0x2AA3, - SMSG_UNDELETE_CHARACTER_RESPONSE = 0x27C7, - SMSG_UNDELETE_COOLDOWN_STATUS_RESPONSE = 0x27C8, + SMSG_UNDELETE_CHARACTER_RESPONSE = 0x27C6, + SMSG_UNDELETE_COOLDOWN_STATUS_RESPONSE = 0x27C7, SMSG_UNLEARNED_SPELLS = 0x2C50, SMSG_UNLOAD_CHILD_MAP = 0x257A, - SMSG_UPDATE_AADC_STATUS_RESPONSE = 0x2867, + SMSG_UPDATE_AADC_STATUS_RESPONSE = 0x2866, SMSG_UPDATE_ACCOUNT_DATA = 0x270B, SMSG_UPDATE_ACTION_BUTTONS = 0x25E2, - SMSG_UPDATE_BNET_SESSION_KEY = 0x281F, + SMSG_UPDATE_BNET_SESSION_KEY = 0x281E, SMSG_UPDATE_CAPTURE_POINT = 0x2929, - SMSG_UPDATE_CELESTIAL_BODY = 0x281B, - SMSG_UPDATE_CHARACTER_FLAGS = 0x27BF, - SMSG_UPDATE_CHARGE_CATEGORY_COOLDOWN = 0x2767, - SMSG_UPDATE_COOLDOWN = 0x2766, + SMSG_UPDATE_CELESTIAL_BODY = 0x281A, + SMSG_UPDATE_CHARACTER_FLAGS = 0x27BE, + SMSG_UPDATE_CHARGE_CATEGORY_COOLDOWN = 0x2766, + SMSG_UPDATE_COOLDOWN = 0x2765, SMSG_UPDATE_CRAFTING_NPC_RECIPES = 0x2996, SMSG_UPDATE_DAILY_MISSION_COUNTER = 0x297F, SMSG_UPDATE_EXPANSION_LEVEL = 0x2647, - SMSG_UPDATE_GAME_TIME_STATE = 0x2822, + SMSG_UPDATE_GAME_TIME_STATE = 0x2821, SMSG_UPDATE_INSTANCE_OWNERSHIP = 0x26AD, SMSG_UPDATE_LAST_INSTANCE = 0x268C, - SMSG_UPDATE_OBJECT = 0x27C6, + SMSG_UPDATE_OBJECT = 0x27C5, SMSG_UPDATE_PRIMARY_SPEC = 0x25DA, SMSG_UPDATE_RECENT_PLAYER_GUIDS = 0x25F7, SMSG_UPDATE_TALENT_DATA = 0x25D9, - SMSG_UPDATE_WORLD_STATE = 0x2749, + SMSG_UPDATE_WORLD_STATE = 0x2748, SMSG_USERLIST_ADD = 0x2BB9, SMSG_USERLIST_REMOVE = 0x2BBA, SMSG_USERLIST_UPDATE = 0x2BBB, - SMSG_USE_EQUIPMENT_SET_RESULT = 0x2750, - SMSG_VAS_CHECK_TRANSFER_OK_RESPONSE = 0x2816, - SMSG_VAS_GET_QUEUE_MINUTES_RESPONSE = 0x2814, - SMSG_VAS_GET_SERVICE_STATUS_RESPONSE = 0x2813, - SMSG_VAS_PURCHASE_COMPLETE = 0x27EE, - SMSG_VAS_PURCHASE_STATE_UPDATE = 0x27ED, + SMSG_USE_EQUIPMENT_SET_RESULT = 0x274F, + SMSG_VAS_CHECK_TRANSFER_OK_RESPONSE = 0x2815, + SMSG_VAS_GET_QUEUE_MINUTES_RESPONSE = 0x2813, + SMSG_VAS_GET_SERVICE_STATUS_RESPONSE = 0x2812, + SMSG_VAS_PURCHASE_COMPLETE = 0x27ED, + SMSG_VAS_PURCHASE_STATE_UPDATE = 0x27EC, SMSG_VENDOR_INVENTORY = 0x25BB, SMSG_VIGNETTE_UPDATE = 0x3008, - SMSG_VOICE_CHANNEL_INFO_RESPONSE = 0x281A, - SMSG_VOICE_CHANNEL_STT_TOKEN_RESPONSE = 0x2861, - SMSG_VOICE_LOGIN_RESPONSE = 0x2819, + SMSG_VOICE_CHANNEL_INFO_RESPONSE = 0x2819, + SMSG_VOICE_CHANNEL_STT_TOKEN_RESPONSE = 0x2860, + SMSG_VOICE_LOGIN_RESPONSE = 0x2818, SMSG_VOID_ITEM_SWAP_RESPONSE = 0x2DA4, SMSG_VOID_STORAGE_CONTENTS = 0x2DA1, SMSG_VOID_STORAGE_FAILED = 0x2DA0, @@ -2110,28 +2110,28 @@ enum OpcodeServer : uint16 SMSG_WAIT_QUEUE_FINISH = 0x256F, SMSG_WAIT_QUEUE_UPDATE = 0x256E, SMSG_WARDEN3_DATA = 0x2577, - SMSG_WARDEN3_DISABLED = 0x281D, - SMSG_WARDEN3_ENABLED = 0x281C, - SMSG_WARFRONT_COMPLETE = 0x275F, + SMSG_WARDEN3_DISABLED = 0x281C, + SMSG_WARDEN3_ENABLED = 0x281B, + SMSG_WARFRONT_COMPLETE = 0x275E, SMSG_WARGAME_REQUEST_OPPONENT_RESPONSE = 0x2934, SMSG_WARGAME_REQUEST_SUCCESSFULLY_SENT_TO_OPPONENT = 0x2933, SMSG_WEATHER = 0x26AA, - SMSG_WEEKLY_REWARDS_PROGRESS_RESULT = 0x2859, - SMSG_WEEKLY_REWARDS_RESULT = 0x2857, - SMSG_WEEKLY_REWARD_CLAIM_RESULT = 0x2858, + SMSG_WEEKLY_REWARDS_PROGRESS_RESULT = 0x2858, + SMSG_WEEKLY_REWARDS_RESULT = 0x2856, + SMSG_WEEKLY_REWARD_CLAIM_RESULT = 0x2857, SMSG_WHO = 0x2BAE, SMSG_WHO_IS = 0x26A9, - SMSG_WILL_BE_KICKED_FOR_ADDED_SUBSCRIPTION_TIME = 0x2821, + SMSG_WILL_BE_KICKED_FOR_ADDED_SUBSCRIPTION_TIME = 0x2820, SMSG_WORLD_QUEST_UPDATE_RESPONSE = 0x300F, SMSG_WORLD_SERVER_INFO = 0x25B0, - SMSG_WOW_ENTITLEMENT_NOTIFICATION = 0x284F, - SMSG_WOW_LABS_NOTIFY_PLAYERS_MATCH_END = 0x287C, - SMSG_WOW_LABS_NOTIFY_PLAYERS_MATCH_STATE_CHANGED = 0x287D, - SMSG_WOW_LABS_PARTY_ERROR = 0x2881, - SMSG_WOW_LABS_SET_PREDICTION_CIRCLE = 0x287E, - SMSG_XP_AWARDED_FROM_CURRENCY = 0x288F, + SMSG_WOW_ENTITLEMENT_NOTIFICATION = 0x284E, + SMSG_WOW_LABS_NOTIFY_PLAYERS_MATCH_END = 0x287B, + SMSG_WOW_LABS_NOTIFY_PLAYERS_MATCH_STATE_CHANGED = 0x287C, + SMSG_WOW_LABS_PARTY_ERROR = 0x2880, + SMSG_WOW_LABS_SET_PREDICTION_CIRCLE = 0x287D, + SMSG_XP_AWARDED_FROM_CURRENCY = 0x288E, SMSG_XP_GAIN_ABORTED = 0x25CC, - SMSG_XP_GAIN_ENABLED = 0x27A9, + SMSG_XP_GAIN_ENABLED = 0x27A8, SMSG_ZONE_UNDER_ATTACK = 0x2BB5, // Opcodes that are not generated automatically diff --git a/src/server/game/Server/WorldSession.h b/src/server/game/Server/WorldSession.h index fb05eeeb24a..8aaeadacfba 100644 --- a/src/server/game/Server/WorldSession.h +++ b/src/server/game/Server/WorldSession.h @@ -660,7 +660,6 @@ namespace WorldPackets class QuestConfirmAccept; class QuestGiverStatusQuery; class QuestGiverStatusMultipleQuery; - class QuestGiverStatusTrackedQuery; class QuestGiverHello; class QueryQuestInfo; class QuestGiverChooseReward; @@ -682,11 +681,6 @@ namespace WorldPackets class GrantLevel; } - namespace Reputation - { - class RequestForcedReactions; - } - namespace Toy { class AccountToyUpdate; @@ -1310,7 +1304,6 @@ class TC_GAME_API WorldSession void HandleSetFactionNotAtWar(WorldPackets::Character::SetFactionNotAtWar& packet); void HandleSetWatchedFactionOpcode(WorldPackets::Character::SetWatchedFaction& packet); void HandleSetFactionInactiveOpcode(WorldPackets::Character::SetFactionInactive& packet); - void HandleRequestForcedReactionsOpcode(WorldPackets::Reputation::RequestForcedReactions& requestForcedReactions); void HandleUpdateAccountData(WorldPackets::ClientConfig::UserClientUpdateAccountData& packet); void HandleRequestAccountData(WorldPackets::ClientConfig::RequestAccountData& request); @@ -1556,7 +1549,6 @@ class TC_GAME_API WorldSession void HandleQuestgiverStatusQueryOpcode(WorldPackets::Quest::QuestGiverStatusQuery& packet); void HandleQuestgiverStatusMultipleQuery(WorldPackets::Quest::QuestGiverStatusMultipleQuery& packet); - void HandleQuestgiverStatusTrackedQueryOpcode(WorldPackets::Quest::QuestGiverStatusTrackedQuery& questGiverStatusTrackedQuery); void HandleQuestgiverHelloOpcode(WorldPackets::Quest::QuestGiverHello& packet); void HandleQuestgiverAcceptQuestOpcode(WorldPackets::Quest::QuestGiverAcceptQuest& packet); void HandleQuestgiverQueryQuestOpcode(WorldPackets::Quest::QuestGiverQueryQuest& packet); diff --git a/src/server/game/Spells/Auras/SpellAuraEffects.cpp b/src/server/game/Spells/Auras/SpellAuraEffects.cpp index 0d7d98afc25..7e917275510 100644 --- a/src/server/game/Spells/Auras/SpellAuraEffects.cpp +++ b/src/server/game/Spells/Auras/SpellAuraEffects.cpp @@ -5094,7 +5094,6 @@ void AuraEffect::HandleForceReaction(AuraApplication const* aurApp, uint8 mode, ReputationRank factionRank = ReputationRank(GetAmount()); player->GetReputationMgr().ApplyForceReaction(factionId, factionRank, apply); - player->GetReputationMgr().SendForceReactions(); // stop fighting at apply (if forced rank friendly) or at remove (if real rank friendly) if ((apply && factionRank >= REP_FRIENDLY) || (!apply && player->GetReputationRank(factionId) >= REP_FRIENDLY)) diff --git a/src/server/game/Spells/TraitMgr.cpp b/src/server/game/Spells/TraitMgr.cpp index 64df1f2d0de..7733a0ac2dc 100644 --- a/src/server/game/Spells/TraitMgr.cpp +++ b/src/server/game/Spells/TraitMgr.cpp @@ -540,13 +540,7 @@ bool MeetsTraitCondition(WorldPackets::Traits::TraitConfig const& traitConfig, P if (!cachedCurrencies) FillSpentCurrenciesMap(traitConfig, cachedCurrencies.emplace()); - if (condition->TraitNodeGroupID) - { - auto itr = cachedCurrencies->try_emplace(condition->TraitCurrencyID, 0).first; - if (itr->second < condition->SpentAmountRequired) - return false; - } - else if (condition->TraitNodeID) + if (condition->TraitNodeGroupID || condition->TraitNodeID || condition->TraitNodeEntryID) { auto itr = cachedCurrencies->try_emplace(condition->TraitCurrencyID, 0).first; if (itr->second < condition->SpentAmountRequired) diff --git a/src/tools/map_extractor/loadlib/DBFilesClientList.h b/src/tools/map_extractor/loadlib/DBFilesClientList.h index 4876ba6ed17..2a011e2f216 100644 --- a/src/tools/map_extractor/loadlib/DBFilesClientList.h +++ b/src/tools/map_extractor/loadlib/DBFilesClientList.h @@ -959,6 +959,7 @@ DB2FileInfo const DBFilesClientList[] = { 1957219, "UiMapAssignment.db2" }, { 2006972, "UiMapFogOfWar.db2" }, { 2006973, "UiMapFogOfWarVisualization.db2" }, + { 6033745, "UiMapGroup.db2" }, { 1957204, "UiMapGroupMember.db2" }, { 2030690, "UiMapLink.db2" }, { 1957217, "UiMapXMapArt.db2" }, |