From 4e1eaea0b4feaff6aaccc0791ca8209845887286 Mon Sep 17 00:00:00 2001 From: ElderShell Date: Fri, 15 May 2026 21:48:19 -0600 Subject: [PATCH] disable lfg and battleground queue --- .github/README.md | 14 ++++++++++++++ conf/dist/config.cmake | 2 ++ src/cmake/showoptions.cmake | 12 ++++++++++++ src/server/game/CMakeLists.txt | 8 ++++++++ src/server/game/DungeonFinding/LFGMgr.cpp | 8 ++++++++ src/server/game/Handlers/BattleGroundHandler.cpp | 8 ++++++++ 6 files changed, 52 insertions(+) diff --git a/.github/README.md b/.github/README.md index 3a9e654d6..5f5bfa625 100644 --- a/.github/README.md +++ b/.github/README.md @@ -91,3 +91,17 @@ It's important to note that AzerothCore is not an official Blizzard Entertainmen [JetBrains](https://www.jetbrains.com/?from=AzerothCore) is providing free [open-source licenses](https://www.jetbrains.com/community/opensource/) to the AzerothCore developers. [![JetBrains logo.](https://resources.jetbrains.com/storage/products/company/brand/logos/jetbrains.svg)](https://jb.gg/OpenSourceSupport) + +## Quick compile guide for Debian 13 + +Note: Only mariadb has been tested, but mysql should be compatible. + +```sh +apt install git cmake make gcc g++ clang libssl-dev libbz2-dev libreadline-dev libncurses-dev libboost-all-dev lsb-release gnupg wget screen mariadb-server libmariadb-dev libmariadb-dev-compat +git clone https://git.everwrath.xyz/ElderShell/EverWrath.git +mkdir build +cd build +cmake ../ -DCMAKE_INSTALL_PREFIX=../env/dist/ -DCMAKE_C_COMPILER=/usr/bin/clang -DCMAKE_CXX_COMPILER=/usr/bin/clang++ -DWITH_WARNINGS=1 -DTOOLS_BUILD=all -DSCRIPTS=static -DMODULES=static +make -j$(nproc) +make install +``` diff --git a/conf/dist/config.cmake b/conf/dist/config.cmake index ce2e079f3..fa46f827a 100644 --- a/conf/dist/config.cmake +++ b/conf/dist/config.cmake @@ -107,6 +107,8 @@ option(WITH_STRICT_DATABASE_TYPE_CHECKS "Enable strict checking of database fiel option(WITHOUT_METRICS "Disable metrics reporting (i.e. InfluxDB and Grafana)" 0) option(WITH_DETAILED_METRICS "Enable detailed metrics reporting (i.e. time each session takes to update)" 0) option(TOOL_CONFIG_MERGER "Install the Python config merger tool alongside config files" 0) +option(DISABLE_LFG "Disable dungeon finder system" 1) +option(DISABLE_BATTLEGROUND "Disable battleground queue" 1) CheckApplicationsBuildList() CheckToolsBuildList() diff --git a/src/cmake/showoptions.cmake b/src/cmake/showoptions.cmake index 443584127..299ac6343 100644 --- a/src/cmake/showoptions.cmake +++ b/src/cmake/showoptions.cmake @@ -148,6 +148,18 @@ else() message("* Show source tree : No (For UNIX default)") endif() +if(DISABLE_LFG) + message("* Disable dungeon finder : Yes (default)") +else() + message("* Disable dungeon finder : No") +endif() + +if(DISABLE_BATTLEGROUND) + message("* Disable battleground queue : Yes (default)") +else() + message("* Disable battleground queue : No") +endif() + if(WITH_STRICT_DATABASE_TYPE_CHECKS) message("") message(" *** WITH_STRICT_DATABASE_TYPE_CHECKS - WARNING!") diff --git a/src/server/game/CMakeLists.txt b/src/server/game/CMakeLists.txt index 3ac1d0d35..cb1209dad 100644 --- a/src/server/game/CMakeLists.txt +++ b/src/server/game/CMakeLists.txt @@ -67,3 +67,11 @@ if (USE_COREPCH) endif () CU_RUN_HOOK(AFTER_GAME_LIBRARY) + +if(DISABLE_LFG) + add_definitions(-DDISABLE_LFG) +endif() + +if(DISABLE_BATTLEGROUND) + add_definitions(-DDISABLE_BATTLEGROUND) +endif() diff --git a/src/server/game/DungeonFinding/LFGMgr.cpp b/src/server/game/DungeonFinding/LFGMgr.cpp index 9da1f9199..d7b9792f1 100644 --- a/src/server/game/DungeonFinding/LFGMgr.cpp +++ b/src/server/game/DungeonFinding/LFGMgr.cpp @@ -601,6 +601,14 @@ namespace lfg ObjectGuid guid = player->GetGUID(); ObjectGuid gguid = grp ? grp->GetGUID() : guid; LfgJoinResultData joinData; + +#ifdef DISABLE_LFG + joinData.result = LFG_JOIN_NOT_MEET_REQS; + + player->GetSession()->SendLfgJoinResult(joinData); + return; +#endif + LfgGuidSet players; uint32 rDungeonId = 0; bool isContinue = grp && grp->isLFGGroup() && GetState(gguid) != LFG_STATE_FINISHED_DUNGEON; diff --git a/src/server/game/Handlers/BattleGroundHandler.cpp b/src/server/game/Handlers/BattleGroundHandler.cpp index 499bae1e6..a34c2a2da 100644 --- a/src/server/game/Handlers/BattleGroundHandler.cpp +++ b/src/server/game/Handlers/BattleGroundHandler.cpp @@ -75,6 +75,14 @@ void WorldSession::HandleBattlemasterJoinOpcode(WorldPacket& recvData) uint32 bgTypeId_; uint32 instanceId; uint8 joinAsGroup; + +#ifdef DISABLE_BATTLEGROUND + WorldPacket data; + sBattlegroundMgr->BuildGroupJoinedBattlegroundPacket(&data, ERR_BATTLEGROUND_NONE); + SendPacket(&data); + return; +#endif + bool isPremade = false; recvData >> guid; // battlemaster guid