diff --git a/src/server/apps/worldserver/worldserver.conf.dist b/src/server/apps/worldserver/worldserver.conf.dist index 9b36fe680..9618e31a7 100644 --- a/src/server/apps/worldserver/worldserver.conf.dist +++ b/src/server/apps/worldserver/worldserver.conf.dist @@ -3141,6 +3141,16 @@ LeaveGroupOnLogout.Enabled = 0 Group.Raid.LevelRestriction = 10 +# +# Group.RandomRollMaximum +# +# The maximum value for use with the client '/roll' command. +# Blizzlike and maximum value is 1000000. (Based on Classic and 3.3.5a client testing respectively) +# Default: 1000000 +# + +Group.RandomRollMaximum = 1000000 + # ################################################################################################### diff --git a/src/server/game/Handlers/GroupHandler.cpp b/src/server/game/Handlers/GroupHandler.cpp index 85a9f0888..c8f14779b 100644 --- a/src/server/game/Handlers/GroupHandler.cpp +++ b/src/server/game/Handlers/GroupHandler.cpp @@ -543,10 +543,8 @@ void WorldSession::HandleRandomRollOpcode(WorldPackets::Misc::RandomRollClient& maximum = packet.Max; /** error handling **/ - if (minimum > maximum || maximum > 10000) // < 32768 for urand call - { + if (minimum > maximum || maximum > sWorld->getIntConfig(CONFIG_RANDOM_ROLL_MAXIMUM)) return; - } GetPlayer()->DoRandomRoll(minimum, maximum); } diff --git a/src/server/game/World/WorldConfig.cpp b/src/server/game/World/WorldConfig.cpp index 7a0b1db40..c38b36ff0 100644 --- a/src/server/game/World/WorldConfig.cpp +++ b/src/server/game/World/WorldConfig.cpp @@ -492,6 +492,8 @@ void WorldConfig::BuildConfigCache() SetConfigValue(CONFIG_LEAVE_GROUP_ON_LOGOUT, "LeaveGroupOnLogout.Enabled", false); + SetConfigValue(CONFIG_RANDOM_ROLL_MAXIMUM, "Group.RandomRollMaximum", 1000000); + SetConfigValue(CONFIG_QUEST_POI_ENABLED, "QuestPOI.Enabled", true); SetConfigValue(CONFIG_CHANGE_FACTION_MAX_MONEY, "ChangeFaction.MaxMoney", 0); diff --git a/src/server/game/World/WorldConfig.h b/src/server/game/World/WorldConfig.h index 3776fcac9..475bed337 100644 --- a/src/server/game/World/WorldConfig.h +++ b/src/server/game/World/WorldConfig.h @@ -129,6 +129,7 @@ enum ServerConfigs CONFIG_ALLOW_JOIN_BG_AND_LFG, CONFIG_MISS_CHANCE_MULTIPLIER_ONLY_FOR_PLAYERS, CONFIG_LEAVE_GROUP_ON_LOGOUT, + CONFIG_RANDOM_ROLL_MAXIMUM, CONFIG_QUEST_POI_ENABLED, CONFIG_VMAP_BLIZZLIKE_PVP_LOS, CONFIG_VMAP_BLIZZLIKE_LOS_OPEN_WORLD,