clearified the ac

This commit is contained in:
bash 2026-04-05 11:25:53 +02:00
parent a4a3a3d964
commit 9ebccc23a2

View File

@ -865,28 +865,43 @@ AiPlayerbot.ExcludedHunterPetFamilies = ""
#
#
####################################################################################################
####################################################################################################
# ACTIVITY
#
# BotActiveAlone (%)
# - Determines the percentage of bots that remain active when no real players are nearby.
# - Default is 40% (which is practise kinda translates into 45-50%).
# - If `botActiveAloneSmartScale` is enabled, automatically temporarily down scale activity based on latency.
# - 40% will be activated in a random rotation for the amount of seconds specified in <BotActiveAloneDurationSeconds>.
# - There are multiple conditions when bots will forced to be active e.g. when in BG/instance/attacked, some are configurable below.
#- When 100$ all bots will be active without any rotation or logic applied but comes with performance hit.
# BotActiveAlone
# - Controls how many bots are active when no real players are nearby.
# - Think of it as a rough percentage: 10 means approximately 10% of bots will be active.
# Not exact — the actual number may vary slightly per rotation cycle.
# - The active bots rotate: every <DurationSeconds> a different set of bots takes a turn.
# - The real number of active bots will always be higher than this value, because bots in
# combat, dungeons, battlegrounds, LFG queue, groups with real players, etc. are always
# forced active on top of this (see force rules below).
# - Set to 100 (with SmartScale off) = all bots always active. Maximum server load.
# - Set to 0 = only bots that match a force rule below will be active.
#
# BotActiveAloneDurationSeconds
# - How often the active roster rotates (in seconds). A different group of bots wakes up
# and the previous group may go idle.
# - This is a minimum, not exact. If a bot is in combat or meets any force rule when the
# rotation happens, it stays active until those conditions end — it won't be cut off
# mid-fight just because its turn expired.
#
AiPlayerbot.BotActiveAlone = 10
AiPlayerbot.BotActiveAloneDurationSeconds = 30
# Some additional rules that enforces the bot to be active
#
# - bot is within this distance from a real player.
# - bot is in the same zone as a real player.
# - bot is in the same continent as a real player.
# - bot is a real player's friend.
# - bot is in a real player's guild.
# Force-active rules (1 = on, 0 = off)
# These override the percentage above. If any of these conditions is true, the bot stays active.
#
# InRadius - A real player is within this many yards (set to 0 to disable).
# InZone - A real player is in the same zone (e.g. Elwynn Forest).
# InMap - A real player is on the same continent (e.g. Eastern Kingdoms).
# IsFriend - A real player has this bot on their friends list.
# InGuild - This bot is in a guild that has a real player in it.
#
# Bots are also always forced active (not configurable) when:
# in combat, inside a dungeon/raid/BG, in a BG or LFG queue,
# grouped with a real player, or controlled by a real player.
#
AiPlayerbot.BotActiveAloneForceWhenInRadius = 150
AiPlayerbot.BotActiveAloneForceWhenInZone = 1
@ -894,15 +909,21 @@ AiPlayerbot.BotActiveAloneForceWhenInMap = 0
AiPlayerbot.BotActiveAloneForceWhenIsFriend = 0
AiPlayerbot.BotActiveAloneForceWhenInGuild = 1
# SmartScale (automatic scaling of percentage of active bots based on latency)
# The default is 1. When enabled (smart) scales the 'BotActiveAlone' value.
# (The scaling will be overruled by the BotActiveAloneForceWhen...rules)
# SmartScale — automatically reduces active bots when the server is struggling.
# Monitors the server's update time (how long each server tick takes in milliseconds).
# When the server slows down, fewer bots are kept active to reduce load.
#
# Limitfloor - when DIFF (latency) is above floor, activity scaling begins
# LimitCeiling - when DIFF (latency) is above ceiling, activity is 0%
# Floor (default 50ms) - Below this, no reduction. Server is running fine.
# Ceiling (default 200ms) - At or above this, all non-forced bots are paused.
# Between floor and ceiling, activity scales down gradually.
# Example: BotActiveAlone=10, floor=50, ceiling=200
# Server at 50ms → ~10% active (no reduction)
# Server at 125ms → ~5% active (half reduction)
# Server at 200ms → 0% active (only forced bots remain)
#
# MinLevel - only apply scaling when level is above or equal to min(bot)Level
# MaxLevel - only apply scaling when level is lower or equal of max(bot)Level
# MinLevel/MaxLevel — only bots within this level range are affected by SmartScale.
# Bots outside the range always use the full BotActiveAlone value.
# Force rules always win over SmartScale.
#
AiPlayerbot.botActiveAloneSmartScale = 1
AiPlayerbot.botActiveAloneSmartScaleDiffLimitfloor = 50