feat(Core/Config): Add Legacy Arena Points config option (#16940)

* feat:(Core/Config): Add legacy Arena points option

* Update IWorld.h

* Update World.cpp

* Update World.cpp

* typo

* Update worldserver.conf.dist

* Update worldserver.conf.dist

* Update World.cpp

* Update World.cpp

* defaults to true

Co-authored-by: Kitzunu <24550914+Kitzunu@users.noreply.github.com>

* config text

Co-authored-by: Kitzunu <24550914+Kitzunu@users.noreply.github.com>

* Update src/server/apps/worldserver/worldserver.conf.dist

* Update src/server/apps/worldserver/worldserver.conf.dist

* Update src/server/game/World/World.cpp

---------

Co-authored-by: Kitzunu <24550914+Kitzunu@users.noreply.github.com>
Co-authored-by: Gultask <100873791+Gultask@users.noreply.github.com>
Co-authored-by: Skjalf <47818697+Nyeriah@users.noreply.github.com>
This commit is contained in:
Maria-sequel
2023-08-09 05:44:44 +02:00
committed by GitHub
parent 47ae5eef50
commit 1cd181f923
4 changed files with 11 additions and 1 deletions

View File

@@ -948,6 +948,14 @@ MaxArenaPoints = 10000
StartArenaPoints = 0
#
# Arena.LegacyArenaPoints
# Description: Use arena point calculation from TBC for season 1 - 5 when rating is less or equal to 1500
# Default: 1 - (Enabled)
# 0 - (Disabled)
Arena.LegacyArenaPoints = 0
#
# RecruitAFriend.MaxLevel
# Description: Highest level up to which a character can benefit from the Recruit-A-Friend

View File

@@ -658,7 +658,7 @@ uint32 ArenaTeam::GetPoints(uint32 memberRating)
if (rating <= 1500)
{
if (sWorld->getIntConfig(CONFIG_ARENA_SEASON_ID) < 6)
if (sWorld->getIntConfig(CONFIG_ARENA_SEASON_ID) < 6 && sWorld->getIntConfig(CONFIG_LEGACY_ARENA_POINTS_CALC))
points = (float)rating * 0.22f + 14.0f;
else
points = 344;

View File

@@ -326,6 +326,7 @@ enum WorldIntConfigs
CONFIG_ARENA_GAMES_REQUIRED,
CONFIG_ARENA_SEASON_ID,
CONFIG_ARENA_START_RATING,
CONFIG_LEGACY_ARENA_POINTS_CALC,
CONFIG_ARENA_START_PERSONAL_RATING,
CONFIG_ARENA_START_MATCHMAKER_RATING,
CONFIG_HONOR_AFTER_DUEL,

View File

@@ -1179,6 +1179,7 @@ void World::LoadConfigSettings(bool reload)
_int_configs[CONFIG_ARENA_GAMES_REQUIRED] = sConfigMgr->GetOption<uint32>("Arena.GamesRequired", 10);
_int_configs[CONFIG_ARENA_SEASON_ID] = sConfigMgr->GetOption<uint32>("Arena.ArenaSeason.ID", 1);
_int_configs[CONFIG_ARENA_START_RATING] = sConfigMgr->GetOption<uint32>("Arena.ArenaStartRating", 0);
_int_configs[CONFIG_LEGACY_ARENA_POINTS_CALC] = sConfigMgr->GetOption<uint32>("Arena.LegacyArenaPoints", 0);
_int_configs[CONFIG_ARENA_START_PERSONAL_RATING] = sConfigMgr->GetOption<uint32>("Arena.ArenaStartPersonalRating", 1000);
_int_configs[CONFIG_ARENA_START_MATCHMAKER_RATING] = sConfigMgr->GetOption<uint32>("Arena.ArenaStartMatchmakerRating", 1500);
_bool_configs[CONFIG_ARENA_SEASON_IN_PROGRESS] = sConfigMgr->GetOption<bool>("Arena.ArenaSeason.InProgress", true);