##################################################
# PLAYERBOT CONFIGURATION FILE                   #
##################################################

###################################################################################################
# SECTION INDEX
#   GENERAL SETTINGS
#    PLAYERBOT SETTINGS
#        GENERAL
#        SUMMON OPTIONS
#        MOUNT
#        GEAR
#        LOOTING
#        TIMERS
#        DISTANCES
#        THRESHOLDS
#        QUESTS
#        COMBAT
#        CHEATS
#        SPELLS
#    PLAYERBOT RNDBOT SPECIFIC SETTINGS
#        GENERAL
#        LEVELS
#        GEAR
#        QUESTS
#        ACTIVITIES
#        SPELLS
#        STRATEGIES
#        TELEPORTS
#        BATTLEGROUND & ARENA & PVP
#        INTERVALS
#    PREMADE SPECS
#        INFORMATION
#        WARRIOR
#        PALADIN
#        HUNTER
#        ROGUE
#        PRIEST
#        DEATHKNIGHT
#        SHAMAN
#        MAGE
#        WARLOCK
#        DRUID
#    RANDOM BOT DEFAULT TALENT SPEC 
#        WARRIOR
#        PALADIN
#        HUNTER
#        ROGUE
#        PRIEST
#        DEATHKNIGHT
#        SHAMAN
#        MAGE
#        WARLOCK
#        DRUID
#    PLAYERBOT SYSTEM SETTINGS
#        DATABASE & CONNECTIONS
#        DEBUG        
#        CHAT SETTINGS
#        LOGS
#    DEPRECIATED (TEMPORARY)
#
#
#
#
#
###################################################################################################

###################################################################################################

###################################
#                                 #
# GENERAL SETTINGS                #
#                                 #
###################################

####################################################################################################

# Enable or disable AI Playerbot
AiPlayerbot.Enabled = 1

# Enable random bot system
AiPlayerbot.RandomBotAutologin = 1

# Random bot count
AiPlayerbot.MinRandomBots = 50
AiPlayerbot.MaxRandomBots = 50

# Random bot accounts
# If you are not using any expansion at all, you may have to set this manually, then
# please ensure that RandomBotAccountCount is at least greater than (MaxRandomBots / 10 + AddClassAccountPoolSize)
# default: 0 - Automatic
AiPlayerbot.RandomBotAccountCount = 0

# Delete all random bot accounts (reset randombots)
AiPlayerbot.DeleteRandomBotAccounts = 0

###################################################################################################

###################################
#                                 #
# PLAYERBOT SETTINGS              #
#                                 #
###################################

####################################################################################################

####################################################################################################
# GENERAL
#
#

# The maximum number of bots that a player can control simultaneously
AiPlayerbot.MaxAddedBots = 40

# Enable/Disable create bot by addclass command (0 = GM only, 1 = enable)
# default: 1 (enable)
AiPlayerbot.AddClassCommand = 1

# Set the addclass command account pool size
AiPlayerbot.AddClassAccountPoolSize = 50

# Bot group invitation permission level (0 = GM only, 1 = accept based on level, 2 = always accept)
# default: 1 (accept based on level)
AiPlayerbot.GroupInvitationPermission = 1

# auto-login all player alts as bots on player login
AiPlayerbot.BotAutologin = 0

# Allow/deny bots from the player's account
AiPlayerbot.AllowAccountBots = 1

# Allow/deny bots in the player's guild
AiPlayerbot.AllowGuildBots = 1

# Random bot guild count
AiPlayerbot.RandomBotGuildCount = 20

# Delete all random bot guilds
AiPlayerbot.DeleteRandomBotGuilds = 0

# Randombots will invite nearby bots to guilds
AiPlayerbot.RandomBotGuildNearby = 0

# Randombots will invite players to groups/raids/guilds.
AiPlayerbot.RandomBotInvitePlayer = 0

# Bots will chat in say/guild when they invite other bots to groups/raids/guilds
AiPlayerbot.InviteChat = 0

# Bots will be summoned to player when accept group invitation
AiPlayerbot.SummonWhenGroup = 1

# Added following config
# Selfbot permission level (0 = disabled, 1 = gm only (default), 2 = all players, 3 = activate on login)
AiPlayerbot.SelfBotLevel = 1

# Give free food to bots
# Default: 1 (enabled)
AiPlayerbot.FreeFood = 1

# Non-GM player can only use init=auto to initialize bots based on their own level and gear score
# default: 0 (non-gm player can use any intialization commands)
AiPlayerbot.AutoInitOnly = 0

# The upper limit ratio of bot equipment level for init=auto
# default: 1.0 (same with the player)
AiPlayerbot.AutoInitEquipLevelLimitRatio = 1.0

# Bot automatically trains spells when talking to trainer (yes = train all available spells as long as the bot has the money, free = auto trains with no money cost, no = only list spells)
AiPlayerbot.AutoTrainSpells = yes

#
#
#
####################################################################################################

####################################################################################################
# SUMMON OPTIONS
#
#

# Enable/Disable summoning bots when the master is in combat
# default: 1 (enabled)
AiPlayerbot.AllowSummonInCombat = 1

# Enable/Disable summoning bots when the master is dead
# default: 1 (enabled)
AiPlayerbot.AllowSummonWhenMasterIsDead = 1

# Enable/Disable summoning bots when they are dead (0 = only when the bots are ghosts, 1 = always)
# default: 1 (always)
AiPlayerbot.AllowSummonWhenBotIsDead = 1

# Enable/Disable reviving the bots when summoning them (0 = disable, 1 = disable in combat, 2 = enable)
# default: 1 (disable in combat)
AiPlayerbot.ReviveBotWhenSummoned = 1

# Enable/Disable bot repair gear when summon (0 = no, 1 = yes)
# default: 1
AiPlayerbot.BotRepairWhenSummon = 1

#
#
#
####################################################################################################

####################################################################################################
# MOUNT
#
#

# Defines at what level a bot will naturally use its 60% ground mount
# note: was level 20 during WotLK, 30 during TBC, 40 during Vanilla
# default: 20
AiPlayerbot.UseGroundMountAtMinLevel = 20

# Defines at what level a bot will naturally use its 100% fast ground mount
# note: was level 40 during WotLK, 60 during Vanilla
# default: 40
AiPlayerbot.UseFastGroundMountAtMinLevel = 40

# Defines at what level a bot will naturally use its 150% fly mount
# note: was level 60 during WotLK, 70 during TBC
# default: 60
AiPlayerbot.UseFlyMountAtMinLevel = 60

# Defines at what level a bot will naturally use its 280% fast fly mount
# note: was level 70 during WotLK and TBC
# default: 70
AiPlayerbot.UseFastFlyMountAtMinLevel = 70

#
#
#
####################################################################################################

####################################################################################################
# GEAR
#
#

# Show helmet and cloak on randombots (reset required)
AiPlayerbot.RandomBotShowHelmet = 1
AiPlayerbot.RandomBotShowCloak = 1

# Bots equip upgrades (Bots will equip any item obtained from looting or a quest if they are upgrades)
# Default: 1 (enable)
AiPlayerbot.AutoEquipUpgradeLoot = 1

# Equip upgrade threshold for auto equip upgrade
# Default: 1.1 (Equip when the equipment score is 1.1 times higher than the current)
AiPlayerbot.EquipUpgradeThreshold = 1.1

# Two rounds of equipment initialization to create more suitable gear
AiPlayerbot.TwoRoundsGearInit = 0

#
#
#
####################################################################################################

####################################################################################################
# LOOTING
#
#

# Bots will say information about items when collecting them
AiPlayerbot.SayWhenCollectingItems = 1

# Bots keep looting when group loop method is free for all
# Default: 0 (disabled)
AiPlayerbot.FreeMethodLoot = 0

# Bots loot roll level (0 = pass, 1 = greed, 2 = need)
# Default: 1 (greed)
AiPlayerbot.LootRollLevel = 1

#
#
#
####################################################################################################

####################################################################################################
# TIMERS
#
#

# Max AI iterations per tick
AiPlayerbot.IterationsPerTick = 10

# Delay between two short-time spells cast
AiPlayerbot.GlobalCooldown = 500

# Max wait time when moving
AiPlayerbot.MaxWaitForMove = 5000

# Disables use of MoveSplinePath for bot movement, will result in more erratic bot movement but means stun/snare/root/etc
# will work on bots (they wont reliably work when MoveSplinePath is enabled, though slowing effects still work ok)
# Default: 0 - MoveSplinePath enabled
#          1 - MoveSplinePath disabled in BG/Arena only
#          2 - MoveSplinePath disabled everywhere
AiPlayerbot.DisableMoveSplinePath = 0

# Max search time for movement (higher for better movement on slopes)
# default: 3
AiPlayerbot.MaxMovementSearchTime = 3

# Action expiration time
AiPlayerbot.ExpireActionTime = 5000

# Max dispel auras duration
AiPlayerbot.DispelAuraDuration = 700

# Delay between two bot actions
AiPlayerbot.ReactDelay = 100

# Dynamically adjust react delay for bots in different status to reduce server lags
AiPlayerbot.DynamicReactDelay = 1

# Inactivity delay
AiPlayerbot.PassiveDelay = 10000

# Minimum delay between repeating actions (chat messages, emotes etc)
AiPlayerbot.RepeatDelay = 2000

# Delay timers
AiPlayerbot.ErrorDelay = 100
AiPlayerbot.RpgDelay = 10000
AiPlayerbot.SitDelay = 20000
# ReturnDelay has a minimum value of 2000 - lower values will cause a crash!
AiPlayerbot.ReturnDelay = 2000
AiPlayerbot.LootDelay = 1000

#
#
#
####################################################################################################

####################################################################################################
# DISTANCES
#
#

AiPlayerbot.FarDistance = 20.0
AiPlayerbot.SightDistance = 75.0
AiPlayerbot.SpellDistance = 28.5
AiPlayerbot.ShootDistance = 5.0
AiPlayerbot.ReactDistance = 150.0
AiPlayerbot.GrindDistance = 75.0
AiPlayerbot.HealDistance = 38.5
AiPlayerbot.LootDistance = 15.0
AiPlayerbot.FleeDistance = 5.0
AiPlayerbot.TooCloseDistance = 5.0
AiPlayerbot.MeleeDistance = 0.75
AiPlayerbot.FollowDistance = 1.5
AiPlayerbot.WhisperDistance = 6000.0
AiPlayerbot.ContactDistance = 0.45
AiPlayerbot.AoeRadius = 10
AiPlayerbot.RpgDistance = 200
AiPlayerbot.AggroDistance = 22

#
#
#
####################################################################################################

####################################################################################################
#THRESHOLDS
#
#

# Set XP rate for bots (default: 1.0)
# Server XP Rate * AiPlayerbot.PlayerbotsXPRate
AiPlayerbot.PlayerbotsXPRate = 1.0

# Health/Mana levels
AiPlayerbot.CriticalHealth = 25
AiPlayerbot.LowHealth = 45
AiPlayerbot.MediumHealth = 65
AiPlayerbot.AlmostFullHealth = 85
AiPlayerbot.LowMana = 15
AiPlayerbot.MediumMana = 40
AiPlayerbot.HighMana = 65

#
#
#
####################################################################################################

####################################################################################################
# QUESTS
#
#

# Bots pick their quest reward (yes = picks the most useful item, no = list all rewards, ask = pick useful item and lists if multiple)
AiPlayerbot.AutoPickReward = yes

# Sync quests with player (Bots will complete quests the moment you hand them in. Bots will ignore looting quest items.)
# Default: 1 (enable)
AiPlayerbot.SyncQuestWithPlayer = 1

# Bots will auto-complete quests for the player when handing in
# Default: 0 (disabled)
AiPlayerbot.SyncQuestForPlayer = 0

# Bots will drop obsolete quests
# Default: 1 (enabled)
AiPlayerbot.DropObsoleteQuests = 1

#
#
#
####################################################################################################

####################################################################################################
# COMBAT
#
#

# Auto add dungeon/raid strategies when entering the instance if implemented
AiPlayerbot.ApplyInstanceStrategies = 1

# Enable auto avoid aoe (experimental)
# Default: 1 (enable)
AiPlayerbot.AutoAvoidAoe = 1

# Only avoid aoe spells with a radius smaller than this value
AiPlayerbot.MaxAoeAvoidRadius = 15.0

# A whitelist of aoe spell IDs that should not be avoided
AiPlayerbot.AoeAvoidSpellWhitelist = 50759,57491,13810

# Enable healer bot save mana
# Default: 1 (enable)
AiPlayerbot.AutoSaveMana = 1

# Healer bot save mana threshold
# Default: 60 (60%)
AiPlayerbot.SaveManaThreshold = 60

# Bot can flee for enemy
AiPlayerbot.FleeingEnabled = 1

#
#
#
####################################################################################################

####################################################################################################
# CHEATS
#
#

# Enable/Disable maintenance command, learn all available spells and skills, supplement consumables, repair, etc.
# default: 1 (enable)
AiPlayerbot.MaintenanceCommand = 1

# Enable/Disable autogear command, auto upgrade player bots gears, the quality is limited by AutoGearQualityLimit and AutoGearScoreLimit
# default: 1 (enable)
AiPlayerbot.AutoGearCommand = 1

# Enable/Disable autogear command on player alt bots
# Default: 1 (enable)
AiPlayerbot.AutoGearCommandAltBots = 1

# Equips quality limitation for auto gear command (1 = normal, 2 = uncommon, 3 = rare, 4 = epic, 5 = legendary)
# default: 3 (rare)
AiPlayerbot.AutoGearQualityLimit = 3

# Equips item level (not gearScore) limitation for auto gear command (0 = no limit)
# default: 0 (no limit)
AiPlayerbot.AutoGearScoreLimit = 0

# Enables/Disables bot cheating
AiPlayerbot.BotCheats = "taxi"

#
#
#
####################################################################################################

####################################################################################################
# SPELLS
#
#

# ID of spell to open lootable chests
AiPlayerbot.OpenGoSpell = 6477

#
#
#
###################################################################################################

#######################################
#                                     #
# PLAYERBOT RNDBOT SPECIFIC SETTINGS  #
#                                     #
#######################################

####################################################################################################
# GENERAL
#
#

# Enables/Disables password to bot account
AiPlayerbot.RandomBotRandomPassword = 0

# Accounts to create for random bots
AiPlayerbot.RandomBotAccountPrefix = "rndbot"

AiPlayerbot.RandomBotMinLevel = 1
AiPlayerbot.RandomBotMaxLevel = 80

# Sync max random bot level with max level of online players
# Default: 0 (disabled)
AiPlayerbot.SyncLevelWithPlayers = 0

# Mark many quests <= Bot level as complete (slows down bot creation)
AiPlayerbot.PreQuests = 0

# Enable LFG for random bots
AiPlayerbot.RandomBotJoinLfg = 1

# Enable/Disable periodic online - offline to mimic the real-world scenario where not all players are online simultaneously
# When enabled, bots are randomly selected to go online or offline periodically from a larger set
# Default: 0 (disabled, the set of online bots remains fixed)
AiPlayerbot.EnablePeriodicOnlineOffline = 0

# Defines the ratio between the total number of bots (including offline ones) and the number of bots currently online (MaxRandomBots)
# This setting must greater than 1.0 and only applies when EnablePeriodicOnlineOffline
# Default: 2.0 (total number of bots is twice the number of MaxRandomBots)
AiPlayerbot.PeriodicOnlineOfflineRatio = 2.0

# Percentage ratio of alliance and horde
AiPlayerbot.RandomBotAllianceRatio = 50
AiPlayerbot.RandomBotHordeRatio = 50

# Disable death knight for bots login
AiPlayerbot.DisableDeathKnightLogin = 0

# Enable expansion limitation for talents and glyphs - ie: level <= 60 bot only uses talents
# available in vanilla, level <= 70 bot only uses talents available in TBC)
# Default: 0
AiPlayerbot.LimitTalentsExpansion = 0

#
#
#
####################################################################################################

####################################################################################################
# LEVELS
#
#

# Disable random levels for randombots
# Every bots started on the specified level and level up by killing mobs.
AiPlayerbot.DisableRandomLevels = 0

# Set randombots starting level here if "AiPlayerbot.DisableRandomLevels" enabled
AiPlayerbot.RandombotStartingLevel = 5

# Chance random bot has max level on first randomize (default 0.15)
AiPlayerbot.RandomBotMaxLevelChance = 0.15

# Fix the level of random bot (won't level up by grinding)
# Default: 0 (disable)
AiPlayerbot.RandomBotFixedLevel = 0

# Set RandomBotMaxLevel bots to RandomBotMinLevel or not
AiPlayerbot.DowngradeMaxLevelBot = 0

#
#
#
####################################################################################################

####################################################################################################
# GEAR
#
#

# Equips quality limitation for random bots (1 = normal, 2 = uncommon, 3 = rare, 4 = epic, 5 = legendary)
# default: 3 (rare)
AiPlayerbot.RandomGearQualityLimit = 3

# Equips gear score limitation for random bots (0 = no limit)
# default: 0 (no limit)
AiPlayerbot.RandomGearScoreLimit = 0

# Set minimum level of randombots where gets enchants on items (Maxlevel + 1 to disable)
# Default: 60
AiPlayerbot.MinEnchantingBotLevel = 60

# Enable expansion limitation for enchants - ie: level <= 60 bot only uses enchants
# available in vanilla, level <= 70 bot only uses enchants available in TBC)
# Default: 1
AiPlayerbot.LimitEnchantExpansion = 1

# Enable expansion limitation for gear - ie: level <= 60 bot only uses gear
# available in vanilla, level <= 70 bot only uses gear available in TBC)
# Default: 1
AiPlayerbot.LimitGearExpansion = 1

# Change random bot has lower gear
AiPlayerbot.RandomGearLoweringChance = 0

# Randombots checking players gear score level and deny the group invite if it's too low
# Default: 0 (disabled)
AiPlayerbot.GearScoreCheck = 0

# Enable/Disable bot equipments persistence (stop random initialization) after certain level (EquipmentPersistenceLevel)
# default: 0 (disable)
AiPlayerbot.EquipmentPersistence = 0

# default: 80
AiPlayerbot.EquipmentPersistenceLevel = 80

# Randombots automatically upgrade equipments on levelup
# Default: 1 (enabled)
AiPlayerbot.AutoUpgradeEquip = 1

# Only set wolf pets for hunters to have higher damage (0 = disabled, 1 = enabled only for max-level, 2 = enabled)
# Default: 0 (disabled)
AiPlayerbot.HunterWolfPet = 0

#
#
#
####################################################################################################


####################################################################################################
# ACTIVITIES
#
#
# Specify percent of active bots
# The default is 10. With 10% of all bots going active or inactive each minute. Regardless
# This value is only applied to inactive areas where no real-players are detected, when
# real-players are nearby, friend, group, guild, bg, instances etc the value is always
# enforced to 100%
AiPlayerbot.BotActiveAlone = 100

# Force botActiveAlone when bot is ... of real player
AiPlayerbot.BotActiveAloneForceWhenInRadius = 150
AiPlayerbot.BotActiveAloneForceWhenInZone = 1
AiPlayerbot.BotActiveAloneForceWhenInMap = 0
AiPlayerbot.BotActiveAloneForceWhenIsFriend = 1
AiPlayerbot.BotActiveAloneForceWhenInGuild = 1

# SmartScale is enabled or not.
# The default is 1. When enabled (smart) scales the 'BotActiveAlone' value.
# (The scaling will be overruled by the BotActiveAloneForceWhen...rules)
#
#   Limitfloor - when DIFF (latency) above floor, activity scaling is applied starting with 90%
#   LimitCeiling - when DIFF (latency) above ceiling, activity is 0%;
#
#   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
#
AiPlayerbot.botActiveAloneSmartScale = 1
AiPlayerbot.botActiveAloneSmartScaleDiffLimitfloor = 50
AiPlayerbot.botActiveAloneSmartScaleDiffLimitCeiling = 200
AiPlayerbot.botActiveAloneSmartScaleWhenMinLevel = 1
AiPlayerbot.botActiveAloneSmartScaleWhenMaxLevel = 80

#
#
#
####################################################################################################

####################################################################################################
# QUESTS
#
#

# Quest that will be completed and rewarded to all random bots
AiPlayerbot.RandomBotQuestIds = "7848,3802,5505,6502,7761,10277,10285,11492,24499,24511,24710,24712"

# Randombots will group with nearby bots to do shared quests
AiPlayerbot.RandomBotGroupNearby = 0

# Random Bots will pick quests on their own and try to complete
# Default: 1 (enabled)
AiPlayerbot.AutoDoQuests = 1

# Random Bots will behave more like real players (exprimental)
# This option will override AutoDoQuests
# Default: 0 (disabled)
AiPlayerbot.EnableNewRpgStrategy = 0

# Quest items to leave (do not destroy)
AiPlayerbot.RandomBotQuestItems = "6948,5175,5176,5177,5178,16309,12382,13704,11000"

#
#
#
####################################################################################################

####################################################################################################
# SPELLS
#
#

# Randombots automatically learn classquest reward spells on levelup
# Default: 0 (disabled)
AiPlayerbot.AutoLearnQuestSpells = 0

# Randombots automatically learn trainable spells on levelup
# Default: 1 (enabled)
AiPlayerbot.AutoLearnTrainerSpells = 1

# Randombots automatically picks talent points on levelup
# Default: 1 (enabled)
AiPlayerbot.AutoPickTalents = 1

# Spells every random bot will learn on randomize (54197 - cold weather flying)
AiPlayerbot.RandomBotSpellIds = "54197"

#
#
#
####################################################################################################

####################################################################################################
# STRATEGIES
#
#

# Random bot default strategies (applied after defaults)
AiPlayerbot.RandomBotCombatStrategies = "+dps,+dps assist,-threat"
# AiPlayerbot.RandomBotNonCombatStrategies = "+grind,+loot,+rpg,+custom::say"
AiPlayerbot.RandomBotNonCombatStrategies = ""
AiPlayerbot.CombatStrategies = ""
AiPlayerbot.NonCombatStrategies = ""

#
#
#
####################################################################################################

####################################################################################################
# TELEPORTS
#
#

# Maps where bots can be teleported to
AiPlayerbot.RandomBotMaps = 0,1,530,571

# Probabilty bots teleport to banker (city)
# default: 0.25
AiPlayerbot.ProbTeleToBankers = 0.25

# How far random bots are teleported after death
AiPlayerbot.RandomBotTeleportDistance = 100

# Level diff between random bots and nearby creatures for random teleports
AiPlayerbot.RandomBotTeleLowerLevel = 3
AiPlayerbot.RandomBotTeleHigherLevel = 1

# Bots automatically teleport to another place for leveling on levelup
# Default: 1 (enabled)
AiPlayerbot.AutoTeleportForLevel = 1

#
#
#
####################################################################################################

####################################################################################################
# BATTLEGROUNDS & ARENAS & PVP
#
#

# Enable BG/Arena for random Bots
AiPlayerbot.RandomBotJoinBG = 1

# Enable Auto join BG - have bots start BG's and Arenas on their own
AiPlayerbot.RandomBotAutoJoinBG = 0

# Required Configuration for RandomBotAutoJoinBG
#
# Known issue: When enabling a lot of brackats in combination with multiple instances,
#              can lead to more instances created by bots than intended (over-queuing).
#
# This section controls the level brackets and 
# automatic bot participation in battlegrounds and arenas.
#
# Brackets:
# - Specify the level ranges for bots to auto-join:
#   - Warsong Gulch (WS): 0 = 10-19, 1 = 20-29, 2 = 30-39, ..., 7 = 80 (default: 7)
#   - Rated Arena: 0 = 10-14, 1 = 15-19, ..., 14 = 80-84 (default: 14)
# - Multiple brackets can be specified as a comma-separated list (e.g., "0,2,5").
#
# Counts:
# - Specify the number of Battlegrounds to auto-fill per bracket.
# - For battlegrounds, Count is the number of bots per bracket. For example:
#   - Warsong Gulch Count = 1 adds 20 bots (10 per team).
# - Ensure there are enough eligible bots to meet the specified counts.
#
# Arena Considerations:
# - Rated Arena brackets default to level 80-84 (bracket 14).
# - Custom code changes are required for lower-level arena brackets to function properly.
#
# Battleground bracket range possibilities:
# AiPlayerbot.RandomBotAutoJoinICBrackets = 0,1
# AiPlayerbot.RandomBotAutoJoinEYBrackets = 0,1,2
# AiPlayerbot.RandomBotAutoJoinAVBrackets = 0,1,2,3
# AiPlayerbot.RandomBotAutoJoinABBrackets = 0,1,2,3,4,5,6
# AiPlayerbot.RandomBotAutoJoinWSBrackets = 0,1,2,3,4,5,6,7

AiPlayerbot.RandomBotAutoJoinICBrackets = 1
AiPlayerbot.RandomBotAutoJoinEYBrackets = 2
AiPlayerbot.RandomBotAutoJoinAVBrackets = 3
AiPlayerbot.RandomBotAutoJoinABBrackets = 6
AiPlayerbot.RandomBotAutoJoinWSBrackets = 7

# Battlegrounds count (per bracket!):
AiPlayerbot.RandomBotAutoJoinBGICCount = 0
AiPlayerbot.RandomBotAutoJoinBGEYCount = 1
AiPlayerbot.RandomBotAutoJoinBGAVCount = 0
AiPlayerbot.RandomBotAutoJoinBGABCount = 1
AiPlayerbot.RandomBotAutoJoinBGWSCount = 1

# Arena configuration:
AiPlayerbot.RandomBotAutoJoinArenaBracket = 14

AiPlayerbot.RandomBotAutoJoinBGRatedArena2v2Count = 0
AiPlayerbot.RandomBotAutoJoinBGRatedArena3v3Count = 0
AiPlayerbot.RandomBotAutoJoinBGRatedArena5v5Count = 0

# Random bot arena team count
# Teams are created when bots are initialized on server restart.
# You may need to first delete all arena teams, then reinitialize bots.
# Warning: Reinitializing bots completely resets them (command in game: .playerbots rndbot init)
# Bots only join one arena team to avoid queueing issues. Take that into account when increasing count.
# Default: 2v2: 10 (20 Bots), 3v3: 10 (30 bots), 5v5: 5 (25 bots).
AiPlayerbot.RandomBotArenaTeam2v2Count = 10
AiPlayerbot.RandomBotArenaTeam3v3Count = 10
AiPlayerbot.RandomBotArenaTeam5v5Count = 5

# Arena rating is randomized on team creation.
# Default: Max: 2000, Min: 1000.
AiPlayerbot.RandomBotArenaTeamMaxRating = 2000
AiPlayerbot.RandomBotArenaTeamMinRating = 1000

# Delete all random bot arena teams
AiPlayerbot.DeleteRandomBotArenaTeams = 0

# PvP Restricted Zones (bots don't pvp)
AiPlayerbot.PvpProhibitedZoneIds = "2255,656,2361,2362,2363,976,35,2268,3425,392,541,1446,3828,3712,3738,3565,3539,3623,4152,3988,4658,4284,4418,4436,4275,4323,4395,3703,4298,139"

# PvP Restricted Areas (bots don't pvp)
AiPlayerbot.PvpProhibitedAreaIds = "976,35,392,2268,4161,4010,4317,4312"

# Improve react speed in battleground and arena (may cause lag)
AiPlayerbot.FastReactInBG = 1

#
#
#
####################################################################################################

####################################################################################################
# INTERVALS
#
#

# All In seconds
AiPlayerbot.RandomBotUpdateInterval = 20
AiPlayerbot.RandomBotCountChangeMinInterval = 1800
AiPlayerbot.RandomBotCountChangeMaxInterval = 7200
AiPlayerbot.MinRandomBotInWorldTime = 600
AiPlayerbot.MaxRandomBotInWorldTime = 28800
AiPlayerbot.MinRandomBotRandomizeTime = 7200
AiPlayerbot.MaxRandomBotRandomizeTime = 1209600
AiPlayerbot.RandomBotsPerInterval = 60
AiPlayerbot.MinRandomBotReviveTime = 60
AiPlayerbot.MaxRandomBotReviveTime = 300
AiPlayerbot.MinRandomBotTeleportInterval = 3600
AiPlayerbot.MaxRandomBotTeleportInterval = 18000
AiPlayerbot.PermanantlyInWorldTime = 31104000

#
#
#
####################################################################################################

###################################
#                                 #
# PREMADE SPECS                   #
#                                 #
###################################

###################################################################################################
# INFORMATION
#
#

# AiPlayerbot.PremadeSpecName.<class>.<specno> = <name>         #Name of the talent specialisation
# AiPlayerbot.PremadeSpecLink.<class>.<specno>.<level> = <link> #Wowhead style link the bot should work towards at given level.
# AiPlayerbot.PremadeSpecGlyph.<class>.<specno> = <major 1>,<minor 1>,<major 2>,<minor 2>,<minor 3>,<major 3>   #ItemId of the glyphs
# e.g., formulate the link on https://www.wowhead.com/wotlk/talent-calc/warrior/3022032123335100202012013031251-32505010002
# 0 <= specno < 20, 1 <= level <= 80

#
#
#
###################################################################################################

###################################################################################################
# WARRIOR
#
#

AiPlayerbot.PremadeSpecName.1.0 = arms pve
AiPlayerbot.PremadeSpecGlyph.1.0 = 43418,43395,43423,43399,49084,43421
AiPlayerbot.PremadeSpecLink.1.0.60 = 3022032023335100002012211231241
AiPlayerbot.PremadeSpecLink.1.0.80 = 3022032023335100102012213231251-305-2033
AiPlayerbot.PremadeSpecName.1.1 = fury pve
AiPlayerbot.PremadeSpecGlyph.1.1 = 43418,43395,43414,43399,49084,43432
AiPlayerbot.PremadeSpecLink.1.1.60 = -305053000500310053120501351
AiPlayerbot.PremadeSpecLink.1.1.80 = 32002300233-305053000500310153120511351
AiPlayerbot.PremadeSpecName.1.2 = prot pve
AiPlayerbot.PremadeSpecGlyph.1.2 = 43424,43395,43425,43399,49084,45793
AiPlayerbot.PremadeSpecLink.1.2.60 = --053351225000210521030113321
AiPlayerbot.PremadeSpecLink.1.2.80 = 3500030023-301-053351225000210521030113321

#
#
#
###################################################################################################

###################################################################################################
# PALADIN
#
#

AiPlayerbot.PremadeSpecName.2.0 = holy pve
AiPlayerbot.PremadeSpecGlyph.2.0 = 41106,43367,45741,43369,43365,41109
AiPlayerbot.PremadeSpecLink.2.0.60 = 50350151020013053100515221
AiPlayerbot.PremadeSpecLink.2.0.80 = 50350152220013053100515221-503201312
AiPlayerbot.PremadeSpecName.2.1 = prot pve
AiPlayerbot.PremadeSpecGlyph.2.1 = 41099,43367,43869,43369,43365,45745
AiPlayerbot.PremadeSpecLink.2.1.60 = -05005135203102311333112321
AiPlayerbot.PremadeSpecLink.2.1.80 = -05005135203102311333312321-502302012003
AiPlayerbot.PremadeSpecName.2.2 = ret pve
AiPlayerbot.PremadeSpecGlyph.2.2 = 41092,43367,41099,43369,43365,43869
AiPlayerbot.PremadeSpecLink.2.2.60 = --05230051203331302133231131
AiPlayerbot.PremadeSpecLink.2.2.65 = -05-05230051203331302133231131
AiPlayerbot.PremadeSpecLink.2.2.80 = 050501-05-05232051203331302133231331

#
#
#
###################################################################################################

###################################################################################################
# HUNTER
#
#

AiPlayerbot.PremadeSpecName.3.0 = bm pve
AiPlayerbot.PremadeSpecGlyph.3.0 = 42912,43350,42902,43351,43338,45732
AiPlayerbot.PremadeSpecLink.3.0.60 = 51200201505112243100511351
AiPlayerbot.PremadeSpecLink.3.0.80 = 51200201505112253100531351-015305021
AiPlayerbot.PremadeSpecName.3.1 = mm pve
AiPlayerbot.PremadeSpecGlyph.3.1 = 42912,43350,42914,43351,43338,45732
AiPlayerbot.PremadeSpecLink.3.1.60 = -025315101030013233125031051
AiPlayerbot.PremadeSpecLink.3.1.80 = 502-025335101030013233135031351-5000002
AiPlayerbot.PremadeSpecName.3.2 = surv pve
AiPlayerbot.PremadeSpecGlyph.3.2 = 42912,43350,45731,43351,43338,45732
AiPlayerbot.PremadeSpecLink.3.2.60 = --5000032500033330502135201311
AiPlayerbot.PremadeSpecLink.3.2.80 = -005305101-5000032500033330532135301321

# HUNTER PET
#
# Ferocity
AiPlayerbot.PremadeHunterPetLink.0.16 = 2100003030103010101
AiPlayerbot.PremadeHunterPetLink.0.20 = 2100013030103010122
# Tenacity
AiPlayerbot.PremadeHunterPetLink.1.16 = 21103000300120101001
AiPlayerbot.PremadeHunterPetLink.1.20 = 21303010300120101002
# Cunning
AiPlayerbot.PremadeHunterPetLink.2.16 = 2100020330000211001
AiPlayerbot.PremadeHunterPetLink.2.20 = 21000203300002110221

#
#
#
###################################################################################################

###################################################################################################
# ROGUE
#
#

AiPlayerbot.PremadeSpecName.4.0 = as pve
AiPlayerbot.PremadeSpecGlyph.4.0 = 45768,43379,45761,43380,43378,45766
AiPlayerbot.PremadeSpecLink.4.0.60 = 005323005350100520103331051
AiPlayerbot.PremadeSpecLink.4.0.80 = 005323005350100520103331051-005005005003-2
AiPlayerbot.PremadeSpecName.4.1 = combat pve
AiPlayerbot.PremadeSpecGlyph.4.1 = 42962,43379,45762,43380,43378,42969
AiPlayerbot.PremadeSpecLink.4.1.60 = -0252051000035015223100501251
AiPlayerbot.PremadeSpecLink.4.1.80 = 00532000523-0252051000035015223100501251
AiPlayerbot.PremadeSpecName.4.2 = subtlety pve
AiPlayerbot.PremadeSpecGlyph.4.2 = 42967,43379,45764,43380,43378,45767
AiPlayerbot.PremadeSpecLink.4.2.60 = --5120122030321121050135031241
AiPlayerbot.PremadeSpecLink.4.2.80 = 0053231-2-5120222030321121050135231251

#
#
#
###################################################################################################

###################################################################################################
# PRIEST
#
#

AiPlayerbot.PremadeSpecName.5.0 = disc pve
AiPlayerbot.PremadeSpecGlyph.5.0 = 42408,43371,42400,43374,43342,45756
AiPlayerbot.PremadeSpecLink.5.0.60 = 0503203130300512301323131051
AiPlayerbot.PremadeSpecLink.5.0.80 = 0503203130300512331323231251-03520103
AiPlayerbot.PremadeSpecName.5.1 = holy pve
AiPlayerbot.PremadeSpecGlyph.5.1 = 42408,43371,42400,43374,43342,42396
AiPlayerbot.PremadeSpecLink.5.1.60 = -035050031301152530000331331
AiPlayerbot.PremadeSpecLink.5.1.80 = 05032031-235050032302152530000331351
AiPlayerbot.PremadeSpecName.5.2 = shadow pve
AiPlayerbot.PremadeSpecGlyph.5.2 = 42406,43371,42407,43374,43342,42415
AiPlayerbot.PremadeSpecLink.5.2.60 = --325003041203010323150301351
AiPlayerbot.PremadeSpecLink.5.2.80 = 0503203--325023051223010323152301351

#
#
#
###################################################################################################

###################################################################################################
# DEATHKNIGHT
#
#

AiPlayerbot.PremadeSpecName.6.0 = blood pve
AiPlayerbot.PremadeSpecGlyph.6.0 = 45805,43673,43827,43544,43672,43554
AiPlayerbot.PremadeSpecLink.6.0.60 = 035502150300331320102013111-005
AiPlayerbot.PremadeSpecLink.6.0.80 = 0355021533003313201020131351-005-005032
AiPlayerbot.PremadeSpecName.6.1 = frost pve
AiPlayerbot.PremadeSpecGlyph.6.1 = 45805,43673,43547,43544,43672,43543
AiPlayerbot.PremadeSpecLink.6.1.60 = -32003350332203012300023101351
AiPlayerbot.PremadeSpecLink.6.1.80 = -32002350352203012300033101351-230200305003
AiPlayerbot.PremadeSpecName.6.2 = unholy pve
AiPlayerbot.PremadeSpecGlyph.6.2 = 43542,43673,43546,43544,43672,43549
AiPlayerbot.PremadeSpecLink.6.2.60 = --2301303050032151000150013131151
AiPlayerbot.PremadeSpecLink.6.2.80 = -320033500002-2301303050032151000150013133151
AiPlayerbot.PremadeSpecName.6.3 = double aura blood pve
AiPlayerbot.PremadeSpecGlyph.6.3 = 45805,43673,43827,43544,43672,43554
AiPlayerbot.PremadeSpecLink.6.3.60 = 005512153330030320102013-305
AiPlayerbot.PremadeSpecLink.6.3.80 = 005512153330030320102013-3050505002023001-002

#
#
#
###################################################################################################

###################################################################################################
# SHAMAN
#
#

AiPlayerbot.PremadeSpecName.7.0 = ele pve
AiPlayerbot.PremadeSpecGlyph.7.0 = 41536,43385,41532,43386,44923,45776
AiPlayerbot.PremadeSpecLink.7.0.60 = 4530001520213351102301351
AiPlayerbot.PremadeSpecLink.7.0.80 = 3530001523213351322301351-005050031
AiPlayerbot.PremadeSpecName.7.1 = enh pve
AiPlayerbot.PremadeSpecGlyph.7.1 = 41542,43385,41539,43386,44923,45771
AiPlayerbot.PremadeSpecLink.7.1.60 = -30205033005001333031131131051
AiPlayerbot.PremadeSpecLink.7.1.80 = 053030052-30205033005021333031131131051
AiPlayerbot.PremadeSpecName.7.2 = resto pve
AiPlayerbot.PremadeSpecGlyph.7.2 = 41517,43385,41527,43386,44923,45775
AiPlayerbot.PremadeSpecLink.7.2.60 = --50005301235310501102321251
AiPlayerbot.PremadeSpecLink.7.2.80 = -00502033-50005331335310501122331251

#
#
#
###################################################################################################

###################################################################################################
# MAGE
#
#

AiPlayerbot.PremadeSpecName.8.0 = arcane pve
AiPlayerbot.PremadeSpecGlyph.8.0 = 42735,43339,44955,43364,43361,42751
AiPlayerbot.PremadeSpecLink.8.0.60 = 23000503110033014032310150532
AiPlayerbot.PremadeSpecLink.8.0.80 = 23000523310033015032310250532-03-203203001
AiPlayerbot.PremadeSpecName.8.1 = fire pve
AiPlayerbot.PremadeSpecGlyph.8.1 = 42739,43339,45737,43364,44920,42751
AiPlayerbot.PremadeSpecLink.8.1.60 = -0055030011302231053120321341
AiPlayerbot.PremadeSpecLink.8.1.80 = 23000503110003-0055030011302331053120321351
AiPlayerbot.PremadeSpecName.8.2 = frost pve
AiPlayerbot.PremadeSpecGlyph.8.2 = 42742,43339,50045,43364,43361,42751
AiPlayerbot.PremadeSpecLink.8.2.60 = --0533030313203100030152231151
AiPlayerbot.PremadeSpecLink.8.2.80 = 23002303110003--0533030313203100030152231351
AiPlayerbot.PremadeSpecName.8.3 = frostfire pve
AiPlayerbot.PremadeSpecGlyph.8.3 = 44684,44920,42751,43339,43364,45737
AiPlayerbot.PremadeSpecLink.8.3.60 = -2305032012303331053120300051
AiPlayerbot.PremadeSpecLink.8.3.80 = -2305032012303331053120311351-023303031

#
#
#
###################################################################################################

###################################################################################################
# WARLOCK
#
#

AiPlayerbot.PremadeSpecName.9.0 = affli pve
AiPlayerbot.PremadeSpecGlyph.9.0 = 45785,43390,50077,43394,43393,45779
AiPlayerbot.PremadeSpecLink.9.0.60 = 2350022001113510053500131151
AiPlayerbot.PremadeSpecLink.9.0.70 = 2350022001113510053500131151--55
AiPlayerbot.PremadeSpecLink.9.0.80 = 2350022001113510253500331151--5500000501
AiPlayerbot.PremadeSpecName.9.1 = emo pve
AiPlayerbot.PremadeSpecGlyph.9.1 = 45785,43390,50077,43394,43393,42459
AiPlayerbot.PremadeSpecLink.9.1.60 = -003203301135112530135201051
AiPlayerbot.PremadeSpecLink.9.1.70 = -003203301135112530135201051-55
AiPlayerbot.PremadeSpecLink.9.1.80 = -003203301135112530135221351-55000005
AiPlayerbot.PremadeSpecName.9.2 = destro pve
AiPlayerbot.PremadeSpecGlyph.9.2 = 45785,43390,50077,43394,43393,42454
AiPlayerbot.PremadeSpecLink.9.2.60 = --05203205210131051313230341
AiPlayerbot.PremadeSpecLink.9.2.80 = -03310030003-05203205210331051335230351

#
#
#
###################################################################################################

###################################################################################################
# DRUID
#
#

AiPlayerbot.PremadeSpecName.11.0 = balance pve
AiPlayerbot.PremadeSpecGlyph.11.0 = 40916,43331,40921,43335,44922,40919
AiPlayerbot.PremadeSpecLink.11.0.60 = 5022203105331003213005301231
AiPlayerbot.PremadeSpecLink.11.0.80 = 5032203105331303213305301231--205003012
AiPlayerbot.PremadeSpecName.11.1 = bear pve
AiPlayerbot.PremadeSpecGlyph.11.1 = 40897,43331,46372,43335,43332,40899
AiPlayerbot.PremadeSpecLink.11.1.60 = -500232130322110353100301310501
AiPlayerbot.PremadeSpecLink.11.1.80 = -501232130322110353120303313511-20350001
AiPlayerbot.PremadeSpecName.11.2 = resto pve
AiPlayerbot.PremadeSpecGlyph.11.2 = 40913,43331,40906,43335,44922,45602
AiPlayerbot.PremadeSpecLink.11.2.60 = --230033312031500531050113051
AiPlayerbot.PremadeSpecLink.11.2.80 = 05320031--230033312031501531053313051
AiPlayerbot.PremadeSpecName.11.3 = cat pve
AiPlayerbot.PremadeSpecGlyph.11.3 = 40902,43331,40901,43335,44922,45604
AiPlayerbot.PremadeSpecLink.11.3.60 = -552202032322010053100030310501
AiPlayerbot.PremadeSpecLink.11.3.80 = -553202032322010053100030310511-205503012

#
#
#
###################################################################################################

###################################
#                                 #
# WORLD BUFFS                     #
#                                 #
###################################

####################################################################################################
# 
#
#

# Applies a permanent buff to all bots when not in combat simulating flasks, food, rune etc.
# WorldBuff.Faction.Class.Spec.MinLevel.MaxLevel

AiPlayerbot.WorldBuff.0.1.0.80.80 = 53760,57358                    #WARRIOR ARMS
AiPlayerbot.WorldBuff.0.1.1.80.80 = 53760,57358                    #WARRIOR FURY
AiPlayerbot.WorldBuff.0.1.2.80.80 = 53758,57356                    #WARRIOR PROTECTION
AiPlayerbot.WorldBuff.0.2.0.80.80 = 60347,53749,57332              #PALADIN HOLY
AiPlayerbot.WorldBuff.0.2.1.80.80 = 53758,57356                    #PALADIN PROTECTION
AiPlayerbot.WorldBuff.0.2.2.80.80 = 53760,57371                    #PALADIN RETRIBUTION
AiPlayerbot.WorldBuff.0.3.0.80.80 = 53760,57325                    #HUNTER BEAST
AiPlayerbot.WorldBuff.0.3.1.80.80 = 53760,57358                    #HUNTER MARKSMANSHIP
AiPlayerbot.WorldBuff.0.3.2.80.80 = 53760,57367                    #HUNTER SURVIVAL
AiPlayerbot.WorldBuff.0.4.0.80.80 = 53760,57325                    #ROGUE ASSASINATION
AiPlayerbot.WorldBuff.0.4.1.80.80 = 53760,57358                    #ROGUE COMBAT
AiPlayerbot.WorldBuff.0.4.2.80.80 = 53760,57367                    #ROGUE SUBTLETY
AiPlayerbot.WorldBuff.0.5.0.80.80 = 53755,57327                    #PRIEST DISCIPLINE
AiPlayerbot.WorldBuff.0.5.1.80.80 = 53755,57327                    #PRIEST HOLY
AiPlayerbot.WorldBuff.0.5.2.80.80 = 53755,57327                    #PRIEST SHADOW
AiPlayerbot.WorldBuff.0.6.0.80.80 = 53758,57356                    #DEATH KNIGHT BLOOD
AiPlayerbot.WorldBuff.0.6.1.80.80 = 53760,57358                    #DEATH KNIGHT FROST
AiPlayerbot.WorldBuff.0.6.2.80.80 = 53760,57358                    #DEATH KNIGHT UNHOLY
AiPlayerbot.WorldBuff.0.6.3.80.80 = 53760,57371                    #DEATH KNIGHT BLOOD DPS
AiPlayerbot.WorldBuff.0.7.0.80.80 = 53755,57327                    #SHAMAN ELEMENTAL
AiPlayerbot.WorldBuff.0.7.1.80.80 = 53760,57325                    #SHAMAN ENHANCEMENT
AiPlayerbot.WorldBuff.0.7.2.80.80 = 53755,57327                    #SHAMAN RESTORATION
AiPlayerbot.WorldBuff.0.8.0.80.80 = 53755,57327                    #MAGE ARCANE
AiPlayerbot.WorldBuff.0.8.1.80.80 = 53755,57327                    #MAGE FIRE
AiPlayerbot.WorldBuff.0.8.2.80.80 = 53755,57327                    #MAGE FROST
AiPlayerbot.WorldBuff.0.9.0.80.80 = 53755,57327                    #WARLOCK AFFLICTION
AiPlayerbot.WorldBuff.0.9.1.80.80 = 53755,57327                    #WARLOCK DEMONOLOGY
AiPlayerbot.WorldBuff.0.9.2.80.80 = 53755,57327                    #WARLOCK DESTRUCTION
AiPlayerbot.WorldBuff.0.11.0.80.80 = 53755,57327                   #DRUID BALANCE
AiPlayerbot.WorldBuff.0.11.1.80.80 = 53749,53763,57367             #DRUID FERAL BEAR
AiPlayerbot.WorldBuff.0.11.2.80.80 = 54212,57334                   #DRUID RESTORATION
AiPlayerbot.WorldBuff.0.11.3.80.80 = 53760,57358                   #DRUID FERAL CAT

#
#
#
###################################################################################################

###################################
#                                 #
# RANDOM BOT DEFAULT TALENT SPEC  #
#                                 #
###################################

####################################################################################################
# 
#
#

# AiPlayerbot.RandomClassSpecProb.<class>.<specno>  # The probability to choose the spec
# AiPlayerbot.RandomClassSpecIndex.<class>.<specno> # The spec index in PremadeSpec

#
#
#
####################################################################################################

####################################################################################################
# WARRIOR
#
#

AiPlayerbot.RandomClassSpecProb.1.0 = 20
AiPlayerbot.RandomClassSpecIndex.1.0 = 0
AiPlayerbot.RandomClassSpecProb.1.1 = 40
AiPlayerbot.RandomClassSpecIndex.1.1 = 1
AiPlayerbot.RandomClassSpecProb.1.2 = 40
AiPlayerbot.RandomClassSpecIndex.1.2 = 2

#
#
#
####################################################################################################

####################################################################################################
# PALADIN
#
#

AiPlayerbot.RandomClassSpecProb.2.0 = 30
AiPlayerbot.RandomClassSpecIndex.2.0 = 0
AiPlayerbot.RandomClassSpecProb.2.1 = 40
AiPlayerbot.RandomClassSpecIndex.2.1 = 1
AiPlayerbot.RandomClassSpecProb.2.2 = 30
AiPlayerbot.RandomClassSpecIndex.2.2 = 2

#
#
#
####################################################################################################

####################################################################################################
# HUNTER
#
#

AiPlayerbot.RandomClassSpecProb.3.0 = 33
AiPlayerbot.RandomClassSpecIndex.3.0 = 0
AiPlayerbot.RandomClassSpecProb.3.1 = 33
AiPlayerbot.RandomClassSpecIndex.3.1 = 1
AiPlayerbot.RandomClassSpecProb.3.2 = 33
AiPlayerbot.RandomClassSpecIndex.3.2 = 2

#
#
#
####################################################################################################

####################################################################################################
# ROGUE
#
#

AiPlayerbot.RandomClassSpecProb.4.0 = 45
AiPlayerbot.RandomClassSpecIndex.4.0 = 0
AiPlayerbot.RandomClassSpecProb.4.1 = 45
AiPlayerbot.RandomClassSpecIndex.4.1 = 1
AiPlayerbot.RandomClassSpecProb.4.2 = 10
AiPlayerbot.RandomClassSpecIndex.4.2 = 2

#
#
#
####################################################################################################

####################################################################################################
# PRIEST
#
#

AiPlayerbot.RandomClassSpecProb.5.0 = 40
AiPlayerbot.RandomClassSpecIndex.5.0 = 0
AiPlayerbot.RandomClassSpecProb.5.1 = 35
AiPlayerbot.RandomClassSpecIndex.5.1 = 1
AiPlayerbot.RandomClassSpecProb.5.2 = 25
AiPlayerbot.RandomClassSpecIndex.5.2 = 2

#
#
#
####################################################################################################

####################################################################################################
# DEATHKNIGHT
#
#

AiPlayerbot.RandomClassSpecProb.6.0 = 30
AiPlayerbot.RandomClassSpecIndex.6.0 = 0
AiPlayerbot.RandomClassSpecProb.6.1 = 40
AiPlayerbot.RandomClassSpecIndex.6.1 = 1
AiPlayerbot.RandomClassSpecProb.6.2 = 30
AiPlayerbot.RandomClassSpecIndex.6.2 = 2

#
#
#
####################################################################################################

####################################################################################################
# SHAMAN
#
#

AiPlayerbot.RandomClassSpecProb.7.0 = 33
AiPlayerbot.RandomClassSpecIndex.7.0 = 0
AiPlayerbot.RandomClassSpecProb.7.1 = 33
AiPlayerbot.RandomClassSpecIndex.7.1 = 1
AiPlayerbot.RandomClassSpecProb.7.2 = 33
AiPlayerbot.RandomClassSpecIndex.7.2 = 2

#
#
#
####################################################################################################

####################################################################################################
# MAGE
#
#

AiPlayerbot.RandomClassSpecProb.8.0 = 30
AiPlayerbot.RandomClassSpecIndex.8.0 = 0
AiPlayerbot.RandomClassSpecProb.8.1 = 30
AiPlayerbot.RandomClassSpecIndex.8.1 = 1
AiPlayerbot.RandomClassSpecProb.8.2 = 40
AiPlayerbot.RandomClassSpecIndex.8.2 = 2

#
#
#
####################################################################################################

####################################################################################################
# WARLOCK
#
#

AiPlayerbot.RandomClassSpecProb.9.0 = 45
AiPlayerbot.RandomClassSpecIndex.9.0 = 0
AiPlayerbot.RandomClassSpecProb.9.1 = 45
AiPlayerbot.RandomClassSpecIndex.9.1 = 1
AiPlayerbot.RandomClassSpecProb.9.2 = 10
AiPlayerbot.RandomClassSpecIndex.9.2 = 2

#
#
#
####################################################################################################

####################################################################################################
# DRUID
#
#

AiPlayerbot.RandomClassSpecProb.11.0 = 20
AiPlayerbot.RandomClassSpecIndex.11.0 = 0
AiPlayerbot.RandomClassSpecProb.11.1 = 25
AiPlayerbot.RandomClassSpecIndex.11.1 = 1
AiPlayerbot.RandomClassSpecProb.11.2 = 35
AiPlayerbot.RandomClassSpecIndex.11.2 = 2
AiPlayerbot.RandomClassSpecProb.11.3 = 20
AiPlayerbot.RandomClassSpecIndex.11.3 = 3
#
#
#
###################################################################################################


###################################
#                                 #
# PLAYERBOT SYSTEM SETTINGS       #
#                                 #
###################################

####################################################################################################
# DATABASE & CONNECTIONS
#
#

#    PlayerbotsDatabaseInfo
#        Description: Database connection settings for the playerbots server.
#        Example:     "hostname;port;username;password;database"
#                     ".;somenumber;username;password;database" - (Use named pipes on Windows
#                                                                 "enable-named-pipe" to [mysqld]
#                                                                 section my.ini)
#                     ".;/path/to/unix_socket;username;password;database" - (use Unix sockets on
#                                                                           Unix/Linux)
#        Default:     "127.0.0.1;3306;acore;acore;acore_playerbots"       - (PlayerbotDatabaseInfo)

PlayerbotsDatabaseInfo = "127.0.0.1;3306;acore;acore;acore_playerbots"

#
#    PlayerbotsDatabase.WorkerThreads
#        Description: The amount of worker threads spawned to handle asynchronous (delayed) MySQL
#                     statements. Each worker thread is mirrored with its own connection to the
#                     MySQL server and their own thread on the MySQL server.
#        Default:     1 - (PlayerbotsDatabase.WorkerThreads)

PlayerbotsDatabase.WorkerThreads     = 1

#
#    PlayerbotsDatabase.SynchThreads
#        Description: The amount of MySQL connections spawned to handle.
#        Default:     1 - (PlayerbotDatabase.WorkerThreads)

PlayerbotsDatabase.SynchThreads     = 1

#    Playerbot.Updates.EnableDatabases
#        Description: Determined if updates system work with playerbot database.
#
#        Default:     1  - (Enabled)
#                     0  - (Disabled)

Playerbots.Updates.EnableDatabases = 1

# Command server port, 0 - disabled
AiPlayerbot.CommandServerPort = 8888

#
#
#
####################################################################################################

####################################################################################################
# DEBUG SWITCHES
#
#

AiPlayerbot.SpellDump = 0
AiPlayerbot.LogInGroupOnly = 1
AiPlayerbot.LogValuesPerTick = 0
AiPlayerbot.RandomChangeMultiplier = 1

# Tell which spell is avoiding (experimental)
# Default: 0 (disable)
AiPlayerbot.TellWhenAvoidAoe = 0

# Enables/Disables performance monitor
AiPlayerbot.PerfMonEnabled = 0

#
#
#
####################################################################################################

####################################################################################################
# CHAT SETTINGS
#
#

# Prefix for bot chat commands (e.g. follow, stay)
AiPlayerbot.CommandPrefix = ""

# Separator for bot chat commands
AiPlayerbot.CommandSeparator = "\\\\"

# Enable playerbot talk (say / yell / general chatting / lfg)
AiPlayerbot.RandomBotTalk = 1
# Enable playerbot emote
AiPlayerbot.RandomBotEmote = 0
# Enable dungeon suggestions for random bots
AiPlayerbot.RandomBotSuggestDungeons = 1
# Bots greet to the players
AiPlayerbot.EnableGreet = 0
# Chance to reply to toxic links with toxic links (0-100)
AiPlayerbot.ToxicLinksRepliesChance = 30
# Chance to reply to thunderfury with thunderfury (0-100)
AiPlayerbot.ThunderfuryRepliesChance = 40
# Bots will chat in guild about certain events (int) (0-100)
AiPlayerbot.GuildRepliesRate = 100
# Bots will chat in guild about certain events
AIPlayerbot.GuildFeedback = 1
# Bots without a master will say their lines
AiPlayerbot.RandomBotSayWithoutMaster = 0

#
#
#
####################################################################################################

####################################################################################################
#
# Broadcast rates
#
# 1 - to enable broadcasts globally, 0 - to disable (default 1)
AiPlayerbot.EnableBroadcasts = 1
#
# all broadcast chances should be in range 0-30000
#
# value of 0 will disable this particular broadcast
# setting value to 30000 does not guarantee the broadcast, as there are some internal randoms as well
#
# setting channel broadcast chance to 0, will re-route most broadcasts to other available channels
# setting all channel broadcasts to 0 will disable most broadcasts
AiPlayerbot.BroadcastToGuildGlobalChance = 30000
AiPlayerbot.BroadcastToWorldGlobalChance = 30000
AiPlayerbot.BroadcastToGeneralGlobalChance = 30000
AiPlayerbot.BroadcastToTradeGlobalChance = 30000
AiPlayerbot.BroadcastToLFGGlobalChance = 30000
AiPlayerbot.BroadcastToLocalDefenseGlobalChance = 30000
AiPlayerbot.BroadcastToWorldDefenseGlobalChance = 30000
AiPlayerbot.BroadcastToGuildRecruitmentGlobalChance = 30000
#
# individual settings
# setting one of these to 0 will disable the particular broadcast
AiPlayerbot.BroadcastChanceLootingItemPoor = 30
AiPlayerbot.BroadcastChanceLootingItemNormal = 150
AiPlayerbot.BroadcastChanceLootingItemUncommon = 10000
AiPlayerbot.BroadcastChanceLootingItemRare = 20000
AiPlayerbot.BroadcastChanceLootingItemEpic = 30000
AiPlayerbot.BroadcastChanceLootingItemLegendary = 30000
AiPlayerbot.BroadcastChanceLootingItemArtifact = 30000
#
AiPlayerbot.BroadcastChanceQuestAccepted = 6000
AiPlayerbot.BroadcastChanceQuestUpdateObjectiveCompleted = 300
AiPlayerbot.BroadcastChanceQuestUpdateObjectiveProgress = 300
AiPlayerbot.BroadcastChanceQuestUpdateFailedTimer = 300
AiPlayerbot.BroadcastChanceQuestUpdateComplete = 1000
AiPlayerbot.BroadcastChanceQuestTurnedIn = 10000
#
AiPlayerbot.BroadcastChanceKillNormal = 30
AiPlayerbot.BroadcastChanceKillElite = 300
AiPlayerbot.BroadcastChanceKillRareelite = 3000
AiPlayerbot.BroadcastChanceKillWorldboss = 20000
AiPlayerbot.BroadcastChanceKillRare = 10000
AiPlayerbot.BroadcastChanceKillUnknown = 100
AiPlayerbot.BroadcastChanceKillPet = 10
AiPlayerbot.BroadcastChanceKillPlayer = 30
#
AiPlayerbot.BroadcastChanceLevelupGeneric = 20000
AiPlayerbot.BroadcastChanceLevelupTenX = 30000
AiPlayerbot.BroadcastChanceLevelupMaxLevel = 30000
#
AiPlayerbot.BroadcastChanceSuggestInstance = 5000
AiPlayerbot.BroadcastChanceSuggestQuest = 10000
AiPlayerbot.BroadcastChanceSuggestGrindMaterials = 5000
AiPlayerbot.BroadcastChanceSuggestGrindReputation = 5000
AiPlayerbot.BroadcastChanceSuggestSell = 300
AiPlayerbot.BroadcastChanceSuggestSomething = 30000
#
# Very rude speeches
AiPlayerbot.BroadcastChanceSuggestSomethingToxic = 0
#
# Specifically for "<word> [item link]"
AiPlayerbot.BroadcastChanceSuggestToxicLinks = 0
#
# prefix is used as a word in "<word> [item link]"
AiPlayerbot.ToxicLinksPrefix = gnomes
#
# chance to suggest thunderfury
AiPlayerbot.BroadcastChanceSuggestThunderfury = 1
#
# does not depend on global chance
AiPlayerbot.BroadcastChanceGuildManagement = 30000
#
####################################################################################################

####################################################################################################
# LOGS
#
#

# Custom config to allow logfiles to be created.
# Example: AiPlayerbot.AllowedLogFiles = travelNodes.csv,travelPaths.csv,TravelNodeStore.h,bot_movement.csv,bot_location.csv
AiPlayerbot.AllowedLogFiles = ""

#
#
#
####################################################################################################

###################################################################################################
###################################################################################################
###################################################################################################
###################################################################################################
###################################################################################################

##############################################
# Deprecated (temporary)                     #
##############################################

# Log on all random bots on start
AiPlayerbot.RandomBotLoginAtStartup = 1

# Guild Task system
AiPlayerbot.EnableGuildTasks = 0

# Enable dungeon suggestions in lower case randomly
AiPlayerbot.SuggestDungeonsInLowerCaseRandomly = 0

# Chance bot chooses RPG (Teleport to random camp for their level) instead of grinding
AiPlayerbot.RandomBotRpgChance = 0.20

# Set randombots movement speed to walking anywhere
AiPlayerbot.RandombotsWalkingRPG = 0

# Set randombots movement speed to walking only inside buildings
AiPlayerbot.RandombotsWalkingRPG.InDoors = 0

# Premade spell to avoid (undetected spells)
# spellid-radius, ...
AiPlayerbot.PremadeAvoidAoe = 62234-4

AiPlayerbot.MinRandomBotsPriceChangeInterval = 7200
AiPlayerbot.MaxRandomBotsPriceChangeInterval = 172800
AiPlayerbot.MinRandomBotChangeStrategyTime = 180
AiPlayerbot.MaxRandomBotChangeStrategyTime = 720


# How often tasks are changed
AiPlayerbot.MinGuildTaskChangeTime = 172800
AiPlayerbot.MaxGuildTaskChangeTime = 432000

# Mail spam interval
AiPlayerbot.MinGuildTaskAdvertisementTime = 300
AiPlayerbot.MaxGuildTaskAdvertisementTime = 28800

# Delay before reward is sent
AiPlayerbot.MinGuildTaskRewardTime = 300
AiPlayerbot.MaxGuildTaskRewardTime = 3600

# Cleanup of guild tasks interval
AiPlayerbot.GuildTaskAdvertCleanupTime = 300

# Specify max distance between victim and bot when creating guild kill task
AiPlayerbot.GuildTaskKillTaskDistance = 200

# Distance margin for facade calculations
AiPlayerbot.TargetPosRecalcDistance = 0.1

# Allow bots to be summoned near innkeepers
AiPlayerbot.SummonAtInnkeepersEnabled = 1
