From bae4dd8ccf773209b1175111ef88da998df8d49d Mon Sep 17 00:00:00 2001 From: Benjamin Jackson <38561765+heyitsbench@users.noreply.github.com> Date: Fri, 11 Jul 2025 07:30:20 -0400 Subject: [PATCH] feat(Core): Add config for legacy arena team start rating. (#22080) Co-authored-by: Tereneckla --- src/server/apps/worldserver/worldserver.conf.dist | 9 ++++++++- src/server/game/Battlegrounds/ArenaTeam.cpp | 4 +++- src/server/game/World/WorldConfig.cpp | 1 + src/server/game/World/WorldConfig.h | 1 + 4 files changed, 13 insertions(+), 2 deletions(-) diff --git a/src/server/apps/worldserver/worldserver.conf.dist b/src/server/apps/worldserver/worldserver.conf.dist index d2b5af453..ecccd2cef 100644 --- a/src/server/apps/worldserver/worldserver.conf.dist +++ b/src/server/apps/worldserver/worldserver.conf.dist @@ -3856,11 +3856,18 @@ Arena.QueueAnnouncer.Detail = 3 # # Arena.ArenaStartRating -# Description: Start rating for new arena teams. +# Description: Start rating for new arena teams. (Applies to season 6 and higher) # Default: 0 Arena.ArenaStartRating = 0 +# +# Arena.LegacyArenaStartRating +# Description: Start rating for new arena teams. (Only applies to season 1 - 5) +# Default: 1500 + +Arena.LegacyArenaStartRating = 1500 + # # Arena.ArenaStartPersonalRating # Description: Start personal rating when joining a team. diff --git a/src/server/game/Battlegrounds/ArenaTeam.cpp b/src/server/game/Battlegrounds/ArenaTeam.cpp index b93822810..753fc9d48 100644 --- a/src/server/game/Battlegrounds/ArenaTeam.cpp +++ b/src/server/game/Battlegrounds/ArenaTeam.cpp @@ -36,7 +36,9 @@ ArenaTeam::ArenaTeam() Stats.WeekGames = 0; Stats.SeasonGames = 0; Stats.Rank = 0; - Stats.Rating = sWorld->getIntConfig(CONFIG_ARENA_START_RATING); + Stats.Rating = (sArenaSeasonMgr->GetCurrentSeason() < 6) + ? sWorld->getIntConfig(CONFIG_LEGACY_ARENA_START_RATING) + : sWorld->getIntConfig(CONFIG_ARENA_START_RATING); Stats.WeekWins = 0; Stats.SeasonWins = 0; } diff --git a/src/server/game/World/WorldConfig.cpp b/src/server/game/World/WorldConfig.cpp index 1af0672c3..28e2f38eb 100644 --- a/src/server/game/World/WorldConfig.cpp +++ b/src/server/game/World/WorldConfig.cpp @@ -443,6 +443,7 @@ void WorldConfig::BuildConfigCache() SetConfigValue(CONFIG_ARENA_AUTO_DISTRIBUTE_INTERVAL_DAYS, "Arena.AutoDistributeInterval", 7); SetConfigValue(CONFIG_ARENA_GAMES_REQUIRED, "Arena.GamesRequired", 10); SetConfigValue(CONFIG_ARENA_START_RATING, "Arena.ArenaStartRating", 0); + SetConfigValue(CONFIG_LEGACY_ARENA_START_RATING, "Arena.LegacyArenaStartRating", 1500); SetConfigValue(CONFIG_LEGACY_ARENA_POINTS_CALC, "Arena.LegacyArenaPoints", 0); SetConfigValue(CONFIG_ARENA_START_PERSONAL_RATING, "Arena.ArenaStartPersonalRating", 0); SetConfigValue(CONFIG_ARENA_START_MATCHMAKER_RATING, "Arena.ArenaStartMatchmakerRating", 1500); diff --git a/src/server/game/World/WorldConfig.h b/src/server/game/World/WorldConfig.h index 7474df38e..2372c7063 100644 --- a/src/server/game/World/WorldConfig.h +++ b/src/server/game/World/WorldConfig.h @@ -281,6 +281,7 @@ enum ServerConfigs CONFIG_ARENA_AUTO_DISTRIBUTE_INTERVAL_DAYS, CONFIG_ARENA_GAMES_REQUIRED, CONFIG_ARENA_START_RATING, + CONFIG_LEGACY_ARENA_START_RATING, CONFIG_LEGACY_ARENA_POINTS_CALC, CONFIG_ARENA_START_PERSONAL_RATING, CONFIG_ARENA_START_MATCHMAKER_RATING,