aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOvahlord <dreadkiller@gmx.de>2024-08-27 04:48:44 +0200
committerOvahlord <dreadkiller@gmx.de>2024-08-27 04:48:44 +0200
commit753c87ce24e64e34256eba2fa20444d7776113ca (patch)
tree0b79fe82fd5c7c0e2badc02f9e05a5198caf0ad2
parent3b9845ee44e15a740708bc54f9d1a86b6d8ef799 (diff)
Core/Packets: updated packet structure of SMSG_BATTLEFIELD_LIST and updated BattlegroundTypeId enum
-rw-r--r--src/server/game/Battlegrounds/BattlegroundMgr.cpp2
-rw-r--r--src/server/game/Groups/Group.cpp3
-rw-r--r--src/server/game/Handlers/BattleGroundHandler.cpp3
-rw-r--r--src/server/game/Miscellaneous/SharedDefines.h85
-rw-r--r--src/server/game/Server/Packets/BattlegroundPackets.cpp1
-rw-r--r--src/server/game/Server/Packets/BattlegroundPackets.h3
6 files changed, 13 insertions, 84 deletions
diff --git a/src/server/game/Battlegrounds/BattlegroundMgr.cpp b/src/server/game/Battlegrounds/BattlegroundMgr.cpp
index b2856d6ef7b..db59a1fbd4c 100644
--- a/src/server/game/Battlegrounds/BattlegroundMgr.cpp
+++ b/src/server/game/Battlegrounds/BattlegroundMgr.cpp
@@ -487,7 +487,7 @@ bool BattlegroundMgr::IsArenaType(BattlegroundTypeId bgTypeId)
bool BattlegroundMgr::IsRandomBattleground(uint32 battlemasterListId)
{
- return battlemasterListId == BATTLEGROUND_RB || battlemasterListId == BATTLEGROUND_RANDOM_EPIC;
+ return battlemasterListId == BATTLEGROUND_RB;
}
BattlegroundQueueTypeId BattlegroundMgr::BGQueueTypeId(uint16 battlemasterListId, BattlegroundQueueIdType type, bool rated, uint8 teamSize)
diff --git a/src/server/game/Groups/Group.cpp b/src/server/game/Groups/Group.cpp
index e9a0bb5abdb..4d8842d85d6 100644
--- a/src/server/game/Groups/Group.cpp
+++ b/src/server/game/Groups/Group.cpp
@@ -1253,8 +1253,7 @@ GroupJoinBattlegroundResult Group::CanJoinBattlegroundQueue(BattlegroundTemplate
if (member->InBattlegroundQueueForBattlegroundQueueType(bgQueueTypeId))
return ERR_BATTLEGROUND_JOIN_FAILED; // not blizz-like
// don't let join if someone from the group is in bg queue random
- bool isInRandomBgQueue = member->InBattlegroundQueueForBattlegroundQueueType(BattlegroundMgr::BGQueueTypeId(BATTLEGROUND_RB, BattlegroundQueueIdType::Battleground, false, 0))
- || member->InBattlegroundQueueForBattlegroundQueueType(BattlegroundMgr::BGQueueTypeId(BATTLEGROUND_RANDOM_EPIC, BattlegroundQueueIdType::Battleground, false, 0));
+ bool isInRandomBgQueue = member->InBattlegroundQueueForBattlegroundQueueType(BattlegroundMgr::BGQueueTypeId(BATTLEGROUND_RB, BattlegroundQueueIdType::Battleground, false, 0));
if (bgOrTemplate->Id != BATTLEGROUND_AA && isInRandomBgQueue)
return ERR_IN_RANDOM_BG;
// don't let join to bg queue random if someone from the group is already in bg queue
diff --git a/src/server/game/Handlers/BattleGroundHandler.cpp b/src/server/game/Handlers/BattleGroundHandler.cpp
index e03cd9c51b1..67cdd9f28e1 100644
--- a/src/server/game/Handlers/BattleGroundHandler.cpp
+++ b/src/server/game/Handlers/BattleGroundHandler.cpp
@@ -152,8 +152,7 @@ void WorldSession::HandleBattlemasterJoinOpcode(WorldPackets::Battleground::Batt
return;
}
- bool isInRandomBgQueue = _player->InBattlegroundQueueForBattlegroundQueueType(BattlegroundMgr::BGQueueTypeId(BATTLEGROUND_RB, BattlegroundQueueIdType::Battleground, false, 0))
- || _player->InBattlegroundQueueForBattlegroundQueueType(BattlegroundMgr::BGQueueTypeId(BATTLEGROUND_RANDOM_EPIC, BattlegroundQueueIdType::Battleground, false, 0));
+ bool isInRandomBgQueue = _player->InBattlegroundQueueForBattlegroundQueueType(BattlegroundMgr::BGQueueTypeId(BATTLEGROUND_RB, BattlegroundQueueIdType::Battleground, false, 0));
if (!BattlegroundMgr::IsRandomBattleground(bgTypeId) && isInRandomBgQueue)
{
// player is already in random queue
diff --git a/src/server/game/Miscellaneous/SharedDefines.h b/src/server/game/Miscellaneous/SharedDefines.h
index 1c6135fad6d..3adf09cba24 100644
--- a/src/server/game/Miscellaneous/SharedDefines.h
+++ b/src/server/game/Miscellaneous/SharedDefines.h
@@ -6385,7 +6385,7 @@ enum PvPTeamId : uint8
uint8 constexpr PVP_TEAMS_COUNT = 2;
-// Indexes of BattlemasterList.db2 (9.0.2.37176)
+// Indexes of BattlemasterList.db2 (4.4.0.56014)
enum BattlegroundTypeId : uint32
{
BATTLEGROUND_TYPE_NONE = 0, // None
@@ -6407,83 +6407,12 @@ enum BattlegroundTypeId : uint32
BATTLEGROUND_RATED_25_VS_25 = 102, // Rated Battleground 25 vs 25
BATTLEGROUND_TP = 108, // Twin Peaks
BATTLEGROUND_BFG = 120, // Battle For Gilneas
- // 656 = "Rated Eye of the Storm"
- BATTLEGROUND_TK = 699, // Temple of Kotmogu
- // 706 = "CTF3"
- BATTLEGROUND_SM = 708, // Silvershard Mines
- BATTLEGROUND_TVA = 719, // Tol'Viron Arena
- BATTLEGROUND_DG = 754, // Deepwind Gorge
- BATTLEGROUND_TTP = 757, // The Tiger's Peak
- BATTLEGROUND_SS_VS_TM = 789, // Southshore vs. Tarren Mill
- BATTLEGROUND_SMALL_D = 803, // Small Battleground D
- BATTLEGROUND_BRH = 808, // Black Rook Hold Arena
- // 809 = "New Nagrand Arena (Legion)"
- BATTLEGROUND_AF = 816, // Ashamane's Fall
- // 844 = "New Blade's Edge Arena (Legion)"
- BATTLEGROUND_BRAWL_TBG = 846, // Brawl - The Battle for Gilneas (Old City Map)
- BATTLEGROUND_BRAWL_ABW = 847, // Brawl - Arathi Basin Winter
- // 848 = "AI Test - Arathi Basin"
- BATTLEGROUND_BRAWL_DD = 849, // Brawl - Deepwind Dunk
- BATTLEGROUND_BRAWL_SPS = 853, // Brawl - Shadow-Pan Showdown
- // 856 = "[TEMP] RaceTrackBG"
- BATTLEGROUND_BR = 857, // Blackrock
- BATTLEGROUND_BRAWL_TH = 858, // Brawl - Temple of Hotmogu
- BATTLEGROUND_BRAWL_GL = 859, // Brawl - Gravity Lapse
- BATTLEGROUND_BRAWL_DD2 = 860, // Brawl - Deepwind Dunk
- BATTLEGROUND_BRAWL_WS = 861, // Brawl - Warsong Scramble
- BATTLEGROUND_BRAWL_EH = 862, // Brawl - Eye of the Horn
- BATTLEGROUND_BRAWL_AA = 866, // Brawl - All Arenas
- BATTLEGROUND_RL2 = 868, // Ruins of Lordaeron
- BATTLEGROUND_DS2 = 869, // Dalaran Sewers
- BATTLEGROUND_TVA2 = 870, // Tol'Viron Arena
- BATTLEGROUND_TTP2 = 871, // The Tiger's Peak
- BATTLEGROUND_BRHA2 = 872, // Black Rook Hold Arena
- BATTLEGROUND_NA2 = 873, // Nagrand Arena
- BATTLEGROUND_AF2 = 874, // Ashamane's Fall
- BATTLEGROUND_BEA2 = 875, // Blade's Edge Arena
- // 878 = "AI Test - Warsong Gulch"
- BATTLEGROUND_BRAWL_DS = 879, // Brawl - Deep Six
- BATTLEGROUND_BRAWL_AB = 880, // Brawl - Arathi Basin
- BATTLEGROUND_BRAWL_DG = 881, // Brawl - Deepwind Gorge
- BATTLEGROUND_BRAWL_ES = 882, // Brawl - Eye of the Storm
- BATTLEGROUND_BRAWL_SM = 883, // Brawl - Silvershard Mines
- BATTLEGROUND_BRAWL_TK = 884, // Brawl - Temple of Kotmogue
- BATTLEGROUND_BRAWL_TBG2 = 885, // Brawl - The Battle for Gilneas
- BATTLEGROUND_BRAWL_WG = 886, // Brawl - Warsong Gulch
- BATTLEGROUND_CI = 887, // Cooking: Impossible
- BATTLEGROUND_DOM_SS = 890, // Domination - Seething Strand
- // 893 = "8.0 BG Temp"
- BATTLEGROUND_SS = 894, // Seething Shore
- BATTLEGROUND_HP = 897, // Hooking Point
- BATTLEGROUND_RANDOM_EPIC = 901, // Random Epic Battleground
- BATTLEGROUND_TTP3 = 902, // The Tiger's Peak
- BATTLEGROUND_MB = 903, // Mugambala
- BATTLEGROUND_BRAWL_AA2 = 904, // Brawl - All Arenas
- BATTLEGROUND_BRAWL_AASH = 905, // Brawl - All Arenas - Stocked House
- BATTLEGROUND_AF3 = 906, // Ashamane's Fall
- BATTLEGROUND_BEA3 = 907, // Blade's Edge Arena
- BATTLEGROUND_BE2 = 908, // Blade's Edge
- BATTLEGROUND_DS3 = 909, // Dalaran Sewers
- BATTLEGROUND_NA3 = 910, // Nagrand Arena
- BATTLEGROUND_RL3 = 911, // Ruins of Lordaeron
- BATTLEGROUND_TVA3 = 912, // Tol'Viron Arena
- BATTLEGROUND_BRHA3 = 913, // Black Rook Hold Arena
- BATTLEGROUND_WG_CTF = 1014, // Warsong Gulch Capture the Flag
- BATTLEGROUND_EB_BW = 1017, // Epic Battleground - Battle for Wintergrasp
- BATTLEGROUND_DOM_AB = 1018, // Domination - Arathi Basin
- BATTLEGROUND_AB_CS = 1019, // Arathi Basin Comp Stomp
- BATTLEGROUND_EB_A = 1020, // Epic Battleground - Ashran
- BATTLEGROUND_CA = 1021, // Classic Ashran (Endless)
- BATTLEGROUND_BRAWL_AB2 = 1022, // Brawl - Arathi Basin
- BATTLEGROUND_TR = 1025, // The Robodrome (Arena)
- BATTLEGROUND_RANDOM_BG = 1029, // Random Battleground
- BATTLEGROUND_EB_BW2 = 1030, // Epic Battleground - Battle for Wintergrasp
- // 1031 = "Programmer Map - Battlefield"
- BATTLEGROUND_KR = 1033, // Korrak's Revenge
- BATTLEGROUND_EPIC_BG_WF = 1036, // Epic Battleground - Warfront Arathi (PvP)
- BATTLEGROUND_DOM_DG = 1037, // Domination - Deepwind Gorge
- BATTLEGROUND_DOM_DG2 = 1039, // Domination - Deepwind Gorge
- BATTLEGROUND_ED = 1041, // Empyrean Domain
+ BATTLEGROUND_ICC = 441, // Icecrown Citadel
+ BATTLEGROUND_RS = 443, // The Ruby Sanctum
+ BATTLEGROUND_RATED_EY = 656, // Rated Eye of the Storm
+ BATTLEGROUND_WG = 1089, // Wintergrasp
+ BATTLEGROUND_TB = 1116, // Battle for Tol Barad
+ BATTLEGROUND_BFG_OLD = 1121 // The Battle for Gilneas (Old City Map)
};
#define MAX_BATTLEGROUND_TYPE_ID 845
diff --git a/src/server/game/Server/Packets/BattlegroundPackets.cpp b/src/server/game/Server/Packets/BattlegroundPackets.cpp
index b732f337d2c..75369ca6133 100644
--- a/src/server/game/Server/Packets/BattlegroundPackets.cpp
+++ b/src/server/game/Server/Packets/BattlegroundPackets.cpp
@@ -228,6 +228,7 @@ void WorldPackets::Battleground::BattlefieldListRequest::Read()
WorldPacket const* WorldPackets::Battleground::BattlefieldList::Write()
{
_worldPacket << BattlemasterGuid;
+ _worldPacket << int32(CurrentMaxInstanceIndex);
_worldPacket << int32(BattlemasterListID);
_worldPacket << uint8(MinLevel);
_worldPacket << uint8(MaxLevel);
diff --git a/src/server/game/Server/Packets/BattlegroundPackets.h b/src/server/game/Server/Packets/BattlegroundPackets.h
index e7e077ce29a..fa9bfe64543 100644
--- a/src/server/game/Server/Packets/BattlegroundPackets.h
+++ b/src/server/game/Server/Packets/BattlegroundPackets.h
@@ -284,6 +284,7 @@ namespace WorldPackets
WorldPacket const* Write() override;
ObjectGuid BattlemasterGuid;
+ int32 CurrentMaxInstanceIndex = 0;
int32 BattlemasterListID = 0;
uint8 MinLevel = 0;
uint8 MaxLevel = 0;
@@ -303,7 +304,7 @@ namespace WorldPackets
class PVPOptionsEnabled final : public ServerPacket
{
public:
- PVPOptionsEnabled() : ServerPacket(SMSG_PVP_OPTIONS_ENABLED, 1) { }
+ PVPOptionsEnabled() : ServerPacket(SMSG_PVP_OPTIONS_ENABLED, 1 + 1) { }
WorldPacket const* Write() override;