mirror of
https://github.com/kadeshar/mod-player-bot-level-brackets.git
synced 2026-01-13 09:17:19 +00:00
Compare commits
19 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
c32caa4ed5 | ||
|
|
ff8fe6615d | ||
|
|
f34341ad79 | ||
|
|
9eb71eccd7 | ||
|
|
53cb413df8 | ||
|
|
59bb0b05c7 | ||
|
|
eda05a45b4 | ||
|
|
dcea8b2828 | ||
|
|
5afea4a2b2 | ||
|
|
38c57aa7b3 | ||
|
|
2118be9e96 | ||
|
|
958d848d55 | ||
|
|
6ef0559ae2 | ||
|
|
ad13013ea1 | ||
|
|
82c5f9d3ea | ||
|
|
ca380ade3e | ||
|
|
014dbd49ee | ||
|
|
69e346e357 | ||
|
|
5a6c54eab4 |
216
README.md
216
README.md
@@ -8,54 +8,34 @@
|
|||||||
|
|
||||||
Overview
|
Overview
|
||||||
--------
|
--------
|
||||||
The Bot Level Brackets module for AzerothCore ensures an even spread of player bots across configurable level ranges (brackets). It periodically monitors bot levels and automatically adjusts them by transferring bots from overpopulated brackets to those with a deficit. During adjustments, bots will be run through the normal Playerbots Randomize function, clearing and restoring them based on their new level. Bots that are not immediately safe for level reset (for example, those in combat or engaged in other activities) are flagged for pending adjustment and processed later when they become safe. Additionally, Death Knight bots are safeguarded to never be assigned a level below 55.
|
The Bot Level Brackets module for AzerothCore ensures an even spread of player bots across configurable level ranges (brackets). It periodically monitors bot levels and automatically adjusts them by transferring bots from overpopulated brackets to those with a deficit. During adjustments, bots are run through the normal Playerbots Randomize function, clearing and restoring them based on their new level. Bots that are not immediately safe for level reset (for example, those in combat or engaged in other activities) are flagged for pending adjustment and processed later when they become safe. Additionally, Death Knight bots are safeguarded to never be assigned a level below 55.
|
||||||
|
|
||||||
Features
|
Features
|
||||||
--------
|
--------
|
||||||
- **Configurable Faction-Specific Level Brackets:**
|
- **Configurable Faction-Specific Level Brackets:**
|
||||||
Define nine distinct level brackets for Alliance and Horde bots with configurable lower and upper bounds:
|
Define level brackets for Alliance and Horde bots with configurable lower and upper bounds.
|
||||||
- 1-9 , 10-19 , 20-29 , 30-39 , 40-49 , 50-59 , 60-69 , 70-79 , 80
|
|
||||||
|
|
||||||
- **Desired Percentage Distribution:**
|
- **Desired Percentage Distribution:**
|
||||||
Target percentages can be set for the number of bots within each level bracket. The sum of percentages for each faction must equal 100. If it does not, the system will try to balance out the remaining percentages itself.
|
Specify a desired percentage for bots in each bracket. The percentages for each faction must sum to 100.
|
||||||
|
|
||||||
- **Dynamic Bot Adjustment:**
|
- **Dynamic Bot Adjustment:**
|
||||||
Bots in overpopulated brackets are automatically adjusted to a random level within a bracket with a deficit. Adjustments include resetting XP, removing equipped items, trade skills, learned spells, quests, and active auras, and dismissing pets.
|
Bots in overpopulated brackets are adjusted to a random level within a bracket with a deficit.
|
||||||
|
|
||||||
- **Death Knight Level Safeguard:**
|
- **Death Knight Level Safeguard:**
|
||||||
Bots of the Death Knight class are enforced a minimum level of 55, ensuring they are only assigned to higher brackets.
|
Death Knight bots are enforced a minimum level of 55.
|
||||||
|
- **Guild Bot Exclusion:**
|
||||||
|
When enabled, bots that are in a guild with at least one real (non-bot) player online are excluded from bot bracket calculations and will not be adjusted.
|
||||||
|
- **Friend List Exclusion:**
|
||||||
|
When enabled, bots that are on real players' friend lists are excluded from level bracket adjustments.
|
||||||
|
- **Dynamic Distribution:**
|
||||||
|
Optionally enable dynamic recalculation of bot distribution percentages based on the number of non-bot players present in each bracket.
|
||||||
|
- **Debug Modes:**
|
||||||
|
Full and Lite debug modes provide detailed logging for troubleshooting and monitoring bot adjustments.
|
||||||
|
|
||||||
- **Support for Random Bots:**
|
Minimum and Maximum Bot Level Support
|
||||||
The module applies exclusively to bots managed by RandomPlayerbotMgr.
|
----------------------------------------
|
||||||
|
This module supports setting minimum and maximum levels for random bots via Playerbots options:
|
||||||
- **Dynamic Distribution Toggle:**
|
- **AiPlayerbot.RandomBotMinLevel:** Default is 1.
|
||||||
Enable or disable the dynamic recalculation of bot distribution percentages based on the number of non-bot players in each level bracket via the `BotLevelBrackets.UseDynamicDistribution` option.
|
- **AiPlayerbot.RandomBotMaxLevel:** Default is 80.
|
||||||
|
|
||||||
- **Dynamic Real Player Weighting with Inverse Scaling:**
|
|
||||||
When dynamic distribution is enabled, the module uses a configurable weight multiplier (set via `BotLevelBrackets.RealPlayerWeight`) to boost each real player's contribution to the desired distribution. This weight is further scaled inversely by the total number of real players online, ensuring that when few players are active, each player's impact on the bot distribution is significantly increased.
|
|
||||||
**Note:** The `RealPlayerWeight` option only takes effect when `BotLevelBrackets.UseDynamicDistribution` is enabled.
|
|
||||||
|
|
||||||
- **Debug Mode:**
|
|
||||||
An optional debug mode provides detailed logging for monitoring bot adjustments and troubleshooting module operations.
|
|
||||||
|
|
||||||
### Minimum and Maximum Bot Level Support
|
|
||||||
|
|
||||||
This module now supports setting a minimum and maximum level for random bots via the Playerbots `playerbots.conf` options:
|
|
||||||
|
|
||||||
- **AiPlayerbot.RandomBotMinLevel:**
|
|
||||||
Sets the minimum level allowed for random bots. The default value is 1.
|
|
||||||
|
|
||||||
- **AiPlayerbot.RandomBotMaxLevel:**
|
|
||||||
Sets the maximum level allowed for random bots. The default value is 80.
|
|
||||||
|
|
||||||
> **Warning:** If you configure the maximum bot level to a value below 55, ensure that Death Knight bots are disabled. The module enforces a minimum level of 55 for Death Knight bots; therefore, setting the maximum level under 55 would conflict with this safeguard and could lead to unintended behavior and Death Knight bots not moving brackets.
|
|
||||||
|
|
||||||
### Dynamic Real Player Weighting and Scaling
|
|
||||||
|
|
||||||
When dynamic distribution is enabled (`BotLevelBrackets.UseDynamicDistribution`), the module recalculates the desired bot percentages for each level bracket based on the number of non-bot players present.
|
|
||||||
|
|
||||||
The total weight across all brackets is computed, and each bracket’s desired percentage is derived from its share of that total. This ensures that while more players in a bracket increase its weight, each additional player contributes progressively less.
|
|
||||||
|
|
||||||
|
> **Warning:** If you configure the maximum bot level to a value below 55, ensure that Death Knight bots are disabled.
|
||||||
|
|
||||||
Installation
|
Installation
|
||||||
------------
|
------------
|
||||||
@@ -85,60 +65,144 @@ Installation
|
|||||||
|
|
||||||
Configuration Options
|
Configuration Options
|
||||||
---------------------
|
---------------------
|
||||||
Customize the module’s behavior by editing the `mod_player_bot_level_brackets.conf` file. The configuration options are separated for Alliance and Horde bots:
|
Customize the module’s behavior by editing the `mod_player_bot_level_brackets.conf` file. The configuration options are split into global settings and faction-specific level bracket settings.
|
||||||
|
|
||||||
### Global Settings
|
### Global Settings
|
||||||
|
|
||||||
Setting | Description | Default | Valid Values
|
Setting | Description | Default | Valid Values
|
||||||
------------------------------------------|----------------------------------------------------------------------------------------------------------------------------------|---------|--------------------
|
---------------------------------------------|----------------------------------------------------------------------------------------------------------------------------------|---------|--------------------
|
||||||
BotLevelBrackets.DebugMode | Enables detailed debug logging for module operations. | 0 | 0 (off) / 1 (on)
|
BotLevelBrackets.Enabled | Enables the module. | 1 | 0 (off) / 1 (on)
|
||||||
BotLevelBrackets.CheckFrequency | Frequency (in seconds) for performing the bot bracket distribution check. | 300 | Positive Integer
|
BotLevelBrackets.FullDebugMode | Enables full debug logging for the Bot Level Brackets module. | 0 | 0 (off) / 1 (on)
|
||||||
BotLevelBrackets.CheckFlaggedFrequency | Frequency (in seconds) at which the bot level reset is performed for flagged bots that failed safety checks initially. | 15 | Positive Integer
|
BotLevelBrackets.LiteDebugMode | Enables lite debug logging for the Bot Level Brackets module. | 0 | 0 (off) / 1 (on)
|
||||||
BotLevelBrackets.RealPlayerWeight | Multiplier applied to each real player's contribution in their level bracket. This value is further scaled inversely by the total number of real players online. **Only active if dynamic distribution is enabled.** | 1.0 | Floating point number
|
BotLevelBrackets.CheckFrequency | Frequency (in seconds) at which the bot level distribution check is performed. | 300 | Positive Integer
|
||||||
BotLevelBrackets.UseDynamicDistribution | Enables dynamic recalculation of bot distribution percentages based on the number of non-bot players in each bracket. | 0 | 0 (off) / 1 (on)
|
BotLevelBrackets.CheckFlaggedFrequency | Frequency (in seconds) at which the bot level reset is performed for flagged bots that initially failed safety checks. | 15 | Positive Integer
|
||||||
|
BotLevelBrackets.UseDynamicDistribution | Enables dynamic recalculation of bot distribution percentages based on non-bot player counts per bracket. | 0 | 0 (off) / 1 (on)
|
||||||
|
BotLevelBrackets.RealPlayerWeight | Multiplier applied to each real player's contribution (active only if dynamic distribution is enabled). | 1.0 | Floating point number
|
||||||
|
BotLevelBrackets.IgnoreFriendListed | Ignores bots that are on real players' friend lists from any bracket calculations. | 1 | 0 (off) / 1 (on)
|
||||||
|
BotLevelBrackets.IgnoreGuildBotsWithRealPlayers | Excludes bots in a guild with at least one real (non-bot) player online from adjustments. | 1 | 0 (disabled) / 1 (enabled)
|
||||||
|
BotLevelBrackets.NumRanges | Number of level brackets used for bot distribution. Both factions must have the same number defined. | 9 | Positive Integer
|
||||||
|
|
||||||
|
**IMPORTANT:** If you extend the number of brackets beyond the default 9, you must update both your `mod_player_bot_level_brackets.conf` file and the accompanying `mod_player_bot_level_brackets.conf.dist` file to include configuration lines for the additional ranges (e.g. Range10, Range11, etc.), ensuring that the sum of the Pct values remains 100.
|
||||||
|
|
||||||
### Alliance Level Brackets Configuration
|
### Alliance Level Brackets Configuration
|
||||||
*The percentages below must sum to 100.*
|
*The percentages below must sum to 100.*
|
||||||
|
|
||||||
Setting | Description | Default | Valid Values
|
For each bracket, define:
|
||||||
-------------------------------------------|---------------------------------------------------------------|---------|--------------------
|
|
||||||
BotLevelBrackets.Alliance.Range1Pct | Desired percentage of Alliance bots within level range 1-9. | 12 | 0-100
|
- **BotLevelBrackets.Alliance.RangeX.Lower:**
|
||||||
BotLevelBrackets.Alliance.Range2Pct | Desired percentage of Alliance bots within level range 10-19. | 11 | 0-100
|
The lower bound (inclusive) of bracket X.
|
||||||
BotLevelBrackets.Alliance.Range3Pct | Desired percentage of Alliance bots within level range 20-29. | 11 | 0-100
|
|
||||||
BotLevelBrackets.Alliance.Range4Pct | Desired percentage of Alliance bots within level range 30-39. | 11 | 0-100
|
- **BotLevelBrackets.Alliance.RangeX.Upper:**
|
||||||
BotLevelBrackets.Alliance.Range5Pct | Desired percentage of Alliance bots within level range 40-49. | 11 | 0-100
|
The upper bound (inclusive) of bracket X.
|
||||||
BotLevelBrackets.Alliance.Range6Pct | Desired percentage of Alliance bots within level range 50-59. | 11 | 0-100
|
|
||||||
BotLevelBrackets.Alliance.Range7Pct | Desired percentage of Alliance bots within level range 60-69. | 11 | 0-100
|
- **BotLevelBrackets.Alliance.RangeX.Pct:**
|
||||||
BotLevelBrackets.Alliance.Range8Pct | Desired percentage of Alliance bots within level range 70-79. | 11 | 0-100
|
The desired percentage of Alliance bots that should fall into bracket X.
|
||||||
BotLevelBrackets.Alliance.Range9Pct | Desired percentage of Alliance bots at level 80. | 11 | 0-100
|
|
||||||
|
**EXAMPLE:**
|
||||||
|
The default configuration below defines 9 brackets:
|
||||||
|
- Range1 covers levels 1–9
|
||||||
|
`BotLevelBrackets.Alliance.Range1.Lower = 1`
|
||||||
|
`BotLevelBrackets.Alliance.Range1.Upper = 9`
|
||||||
|
`BotLevelBrackets.Alliance.Range1.Pct = 12`
|
||||||
|
- Range2 covers levels 10–19
|
||||||
|
`BotLevelBrackets.Alliance.Range2.Lower = 10`
|
||||||
|
`BotLevelBrackets.Alliance.Range2.Upper = 19`
|
||||||
|
`BotLevelBrackets.Alliance.Range2.Pct = 11`
|
||||||
|
- Range3 covers levels 20–29
|
||||||
|
`BotLevelBrackets.Alliance.Range3.Lower = 20`
|
||||||
|
`BotLevelBrackets.Alliance.Range3.Upper = 29`
|
||||||
|
`BotLevelBrackets.Alliance.Range3.Pct = 11`
|
||||||
|
- Range4 covers levels 30–39
|
||||||
|
`BotLevelBrackets.Alliance.Range4.Lower = 30`
|
||||||
|
`BotLevelBrackets.Alliance.Range4.Upper = 39`
|
||||||
|
`BotLevelBrackets.Alliance.Range4.Pct = 11`
|
||||||
|
- Range5 covers levels 40–49
|
||||||
|
`BotLevelBrackets.Alliance.Range5.Lower = 40`
|
||||||
|
`BotLevelBrackets.Alliance.Range5.Upper = 49`
|
||||||
|
`BotLevelBrackets.Alliance.Range5.Pct = 11`
|
||||||
|
- Range6 covers levels 50–59
|
||||||
|
`BotLevelBrackets.Alliance.Range6.Lower = 50`
|
||||||
|
`BotLevelBrackets.Alliance.Range6.Upper = 59`
|
||||||
|
`BotLevelBrackets.Alliance.Range6.Pct = 11`
|
||||||
|
- Range7 covers levels 60–69
|
||||||
|
`BotLevelBrackets.Alliance.Range7.Lower = 60`
|
||||||
|
`BotLevelBrackets.Alliance.Range7.Upper = 69`
|
||||||
|
`BotLevelBrackets.Alliance.Range7.Pct = 11`
|
||||||
|
- Range8 covers levels 70–79
|
||||||
|
`BotLevelBrackets.Alliance.Range8.Lower = 70`
|
||||||
|
`BotLevelBrackets.Alliance.Range8.Upper = 79`
|
||||||
|
`BotLevelBrackets.Alliance.Range8.Pct = 11`
|
||||||
|
- Range9 covers level 80 only
|
||||||
|
`BotLevelBrackets.Alliance.Range9.Lower = 80`
|
||||||
|
`BotLevelBrackets.Alliance.Range9.Upper = 80`
|
||||||
|
`BotLevelBrackets.Alliance.Range9.Pct = 11`
|
||||||
|
|
||||||
|
To isolate a specific level (e.g., level 60) into its own bracket, set the Lower and Upper for that range to the same value (e.g., 60) and adjust the adjacent ranges accordingly.
|
||||||
|
|
||||||
### Horde Level Brackets Configuration
|
### Horde Level Brackets Configuration
|
||||||
*The percentages below must sum to 100.*
|
*The percentages below must sum to 100.*
|
||||||
|
|
||||||
Setting | Description | Default | Valid Values
|
For each bracket, define:
|
||||||
-------------------------------------------|---------------------------------------------------------------|---------|--------------------
|
|
||||||
BotLevelBrackets.Horde.Range1Pct | Desired percentage of Horde bots within level range 1-9. | 12 | 0-100
|
- **BotLevelBrackets.Horde.RangeX.Lower:**
|
||||||
BotLevelBrackets.Horde.Range2Pct | Desired percentage of Horde bots within level range 10-19. | 11 | 0-100
|
The lower bound (inclusive) of bracket X.
|
||||||
BotLevelBrackets.Horde.Range3Pct | Desired percentage of Horde bots within level range 20-29. | 11 | 0-100
|
|
||||||
BotLevelBrackets.Horde.Range4Pct | Desired percentage of Horde bots within level range 30-39. | 11 | 0-100
|
- **BotLevelBrackets.Horde.RangeX.Upper:**
|
||||||
BotLevelBrackets.Horde.Range5Pct | Desired percentage of Horde bots within level range 40-49. | 11 | 0-100
|
The upper bound (inclusive) of bracket X.
|
||||||
BotLevelBrackets.Horde.Range6Pct | Desired percentage of Horde bots within level range 50-59. | 11 | 0-100
|
|
||||||
BotLevelBrackets.Horde.Range7Pct | Desired percentage of Horde bots within level range 60-69. | 11 | 0-100
|
- **BotLevelBrackets.Horde.RangeX.Pct:**
|
||||||
BotLevelBrackets.Horde.Range8Pct | Desired percentage of Horde bots within level range 70-79. | 11 | 0-100
|
The desired percentage of Horde bots that should fall into bracket X.
|
||||||
BotLevelBrackets.Horde.Range9Pct | Desired percentage of Horde bots at level 80. | 11 | 0-100
|
|
||||||
|
**EXAMPLE:**
|
||||||
|
The default configuration below defines 9 brackets:
|
||||||
|
- Range1 covers levels 1–9
|
||||||
|
`BotLevelBrackets.Horde.Range1.Lower = 1`
|
||||||
|
`BotLevelBrackets.Horde.Range1.Upper = 9`
|
||||||
|
`BotLevelBrackets.Horde.Range1.Pct = 12`
|
||||||
|
- Range2 covers levels 10–19
|
||||||
|
`BotLevelBrackets.Horde.Range2.Lower = 10`
|
||||||
|
`BotLevelBrackets.Horde.Range2.Upper = 19`
|
||||||
|
`BotLevelBrackets.Horde.Range2.Pct = 11`
|
||||||
|
- Range3 covers levels 20–29
|
||||||
|
`BotLevelBrackets.Horde.Range3.Lower = 20`
|
||||||
|
`BotLevelBrackets.Horde.Range3.Upper = 29`
|
||||||
|
`BotLevelBrackets.Horde.Range3.Pct = 11`
|
||||||
|
- Range4 covers levels 30–39
|
||||||
|
`BotLevelBrackets.Horde.Range4.Lower = 30`
|
||||||
|
`BotLevelBrackets.Horde.Range4.Upper = 39`
|
||||||
|
`BotLevelBrackets.Horde.Range4.Pct = 11`
|
||||||
|
- Range5 covers levels 40–49
|
||||||
|
`BotLevelBrackets.Horde.Range5.Lower = 40`
|
||||||
|
`BotLevelBrackets.Horde.Range5.Upper = 49`
|
||||||
|
`BotLevelBrackets.Horde.Range5.Pct = 11`
|
||||||
|
- Range6 covers levels 50–59
|
||||||
|
`BotLevelBrackets.Horde.Range6.Lower = 50`
|
||||||
|
`BotLevelBrackets.Horde.Range6.Upper = 59`
|
||||||
|
`BotLevelBrackets.Horde.Range6.Pct = 11`
|
||||||
|
- Range7 covers levels 60–69
|
||||||
|
`BotLevelBrackets.Horde.Range7.Lower = 60`
|
||||||
|
`BotLevelBrackets.Horde.Range7.Upper = 69`
|
||||||
|
`BotLevelBrackets.Horde.Range7.Pct = 11`
|
||||||
|
- Range8 covers levels 70–79
|
||||||
|
`BotLevelBrackets.Horde.Range8.Lower = 70`
|
||||||
|
`BotLevelBrackets.Horde.Range8.Upper = 79`
|
||||||
|
`BotLevelBrackets.Horde.Range8.Pct = 11`
|
||||||
|
- Range9 covers level 80 only
|
||||||
|
`BotLevelBrackets.Horde.Range9.Lower = 80`
|
||||||
|
`BotLevelBrackets.Horde.Range9.Upper = 80`
|
||||||
|
`BotLevelBrackets.Horde.Range9.Pct = 11`
|
||||||
|
|
||||||
Debugging
|
Debugging
|
||||||
---------
|
---------
|
||||||
To enable detailed debug logging, update the configuration file:
|
To enable detailed debug logging, update the configuration file with one of the following:
|
||||||
|
|
||||||
BotLevelBrackets.DebugMode = 1
|
|
||||||
|
|
||||||
This setting outputs logs detailing bot level adjustments, percentages and distribution to the server console.
|
|
||||||
|
|
||||||
|
BotLevelBrackets.FullDebugMode = 1
|
||||||
|
BotLevelBrackets.LiteDebugMode = 1
|
||||||
|
|
||||||
Troubleshooting
|
Troubleshooting
|
||||||
---------
|
---------------
|
||||||
> **Bots are not randomizing their levels within the ranges brackets.** Make sure in your `playerbots.conf` that `AiPlayerbot.DisableRandomLevels` = false. Otherwise bots will be all reset to the set level in your playerbots config.
|
> **Bots are not randomizing their levels within the range brackets.**
|
||||||
|
> Ensure that in your `playerbots.conf` the option `AiPlayerbot.DisableRandomLevels` is set to false. Otherwise, bots will be reset to the fixed level specified in your Playerbots configuration.
|
||||||
|
|
||||||
License
|
License
|
||||||
-------
|
-------
|
||||||
|
|||||||
@@ -4,24 +4,50 @@
|
|||||||
# mod-player-bot-level-brackets configuration
|
# mod-player-bot-level-brackets configuration
|
||||||
##############################################
|
##############################################
|
||||||
#
|
#
|
||||||
# BotLevelBrackets.DebugMode
|
# BotLevelBrackets.Enabled
|
||||||
# Description: Enables debug logging for the Bot Level Brackets module.
|
# Description: Enables the module.
|
||||||
|
# Default: 1 (enabled)
|
||||||
|
# Valid values: 0 (off) / 1 (on)
|
||||||
|
BotLevelBrackets.Enabled = 1
|
||||||
|
|
||||||
|
#
|
||||||
|
# BotLevelBrackets.FullDebugMode
|
||||||
|
# Description: Enables full debug logging for the Bot Level Brackets module.
|
||||||
# Default: 0 (disabled)
|
# Default: 0 (disabled)
|
||||||
# Valid values: 0 (off) / 1 (on)
|
# Valid values: 0 (off) / 1 (on)
|
||||||
BotLevelBrackets.DebugMode = 0
|
BotLevelBrackets.FullDebugMode = 0
|
||||||
|
|
||||||
|
#
|
||||||
|
# BotLevelBrackets.LiteDebugMode
|
||||||
|
# Description: Enables lite debug logging for the Bot Level Brackets module.
|
||||||
|
# Default: 0 (disabled)
|
||||||
|
# Valid values: 0 (off) / 1 (on)
|
||||||
|
BotLevelBrackets.LiteDebugMode = 0
|
||||||
|
|
||||||
|
#
|
||||||
# BotLevelBrackets.CheckFrequency
|
# BotLevelBrackets.CheckFrequency
|
||||||
# Description: The frequency (in seconds) at which the bot level distribution check is performed.
|
# Description: The frequency (in seconds) at which the bot level distribution check is performed.
|
||||||
# Default: 300
|
# Default: 300
|
||||||
BotLevelBrackets.CheckFrequency = 300
|
BotLevelBrackets.CheckFrequency = 300
|
||||||
|
|
||||||
|
#
|
||||||
# BotLevelBrackets.CheckFlaggedFrequency
|
# BotLevelBrackets.CheckFlaggedFrequency
|
||||||
# Description: The frequency (in seconds) at which the bot level reset is performed for flagged bots that failed safety checks initially.
|
# Description: The frequency (in seconds) at which the bot level reset is performed for flagged bots that failed safety checks initially.
|
||||||
# Default: 15
|
# Default: 15
|
||||||
BotLevelBrackets.CheckFlaggedFrequency = 15
|
BotLevelBrackets.CheckFlaggedFrequency = 15
|
||||||
|
|
||||||
|
#
|
||||||
|
# BotLevelBrackets.IgnoreGuildBotsWithRealPlayers
|
||||||
|
# Description: When enabled, bots that are in a guild with at least one real (non-bot) player online are excluded
|
||||||
|
# from bot bracket calculations and will not be level changed or flagged.
|
||||||
|
# Default: 1 (enabled)
|
||||||
|
# Valid values: 0 (disabled) / 1 (enabled)
|
||||||
|
BotLevelBrackets.IgnoreGuildBotsWithRealPlayers = 1
|
||||||
|
|
||||||
|
#
|
||||||
# BotLevelBrackets.UseDynamicDistribution
|
# BotLevelBrackets.UseDynamicDistribution
|
||||||
# Description: Enables dynamic recalculation of bot distribution percentages based on the number of non-bot players present in each level bracket.
|
# Description: Enables dynamic recalculation of bot distribution percentages based on the number of non-bot players
|
||||||
|
# present in each level bracket.
|
||||||
# Default: 0 (disabled)
|
# Default: 0 (disabled)
|
||||||
# Valid values: 0 (off) / 1 (on)
|
# Valid values: 0 (off) / 1 (on)
|
||||||
BotLevelBrackets.UseDynamicDistribution = 0
|
BotLevelBrackets.UseDynamicDistribution = 0
|
||||||
@@ -35,99 +61,148 @@ BotLevelBrackets.UseDynamicDistribution = 0
|
|||||||
BotLevelBrackets.RealPlayerWeight = 1.0
|
BotLevelBrackets.RealPlayerWeight = 1.0
|
||||||
|
|
||||||
#
|
#
|
||||||
# Alliance Level Brackets Configuration
|
# BotLevelBrackets.IgnoreFriendListed
|
||||||
# The percentages below must sum to 100.
|
# Description: Ignore bots that are on real players friend's lists from any brackets.
|
||||||
#
|
# Default: 1 (enabled)
|
||||||
# BotLevelBrackets.Alliance.Range1Pct
|
# Valid values: 0 (off) / 1 (on)
|
||||||
# Description: Desired percentage of Alliance bots within level range 1-9.
|
BotLevelBrackets.IgnoreFriendListed = 1
|
||||||
# Default: 12
|
|
||||||
BotLevelBrackets.Alliance.Range1Pct = 12
|
|
||||||
|
|
||||||
# BotLevelBrackets.Alliance.Range2Pct
|
|
||||||
# Description: Desired percentage of Alliance bots within level range 10-19.
|
|
||||||
# Default: 11
|
|
||||||
BotLevelBrackets.Alliance.Range2Pct = 11
|
|
||||||
|
|
||||||
# BotLevelBrackets.Alliance.Range3Pct
|
|
||||||
# Description: Desired percentage of Alliance bots within level range 20-29.
|
|
||||||
# Default: 11
|
|
||||||
BotLevelBrackets.Alliance.Range3Pct = 11
|
|
||||||
|
|
||||||
# BotLevelBrackets.Alliance.Range4Pct
|
|
||||||
# Description: Desired percentage of Alliance bots within level range 30-39.
|
|
||||||
# Default: 11
|
|
||||||
BotLevelBrackets.Alliance.Range4Pct = 11
|
|
||||||
|
|
||||||
# BotLevelBrackets.Alliance.Range5Pct
|
|
||||||
# Description: Desired percentage of Alliance bots within level range 40-49.
|
|
||||||
# Default: 11
|
|
||||||
BotLevelBrackets.Alliance.Range5Pct = 11
|
|
||||||
|
|
||||||
# BotLevelBrackets.Alliance.Range6Pct
|
|
||||||
# Description: Desired percentage of Alliance bots within level range 50-59.
|
|
||||||
# Default: 11
|
|
||||||
BotLevelBrackets.Alliance.Range6Pct = 11
|
|
||||||
|
|
||||||
# BotLevelBrackets.Alliance.Range7Pct
|
|
||||||
# Description: Desired percentage of Alliance bots within level range 60-69.
|
|
||||||
# Default: 11
|
|
||||||
BotLevelBrackets.Alliance.Range7Pct = 11
|
|
||||||
|
|
||||||
# BotLevelBrackets.Alliance.Range8Pct
|
|
||||||
# Description: Desired percentage of Alliance bots within level range 70-79.
|
|
||||||
# Default: 11
|
|
||||||
BotLevelBrackets.Alliance.Range8Pct = 11
|
|
||||||
|
|
||||||
# BotLevelBrackets.Alliance.Range9Pct
|
|
||||||
# Description: Desired percentage of Alliance bots within level range 80.
|
|
||||||
# Default: 11
|
|
||||||
BotLevelBrackets.Alliance.Range9Pct = 11
|
|
||||||
|
|
||||||
#
|
#
|
||||||
# Horde Level Brackets Configuration
|
# BotLevelBrackets.NumRanges
|
||||||
# The percentages below must sum to 100.
|
# Description: The number of level brackets used for bot distribution.
|
||||||
|
# Both Alliance and Horde should have the same number of brackets defined below.
|
||||||
|
# Default: 9
|
||||||
#
|
#
|
||||||
# BotLevelBrackets.Horde.Range1Pct
|
# IMPORTANT: If you are extending the number of brackets beyond 9, you must update your
|
||||||
# Description: Desired percentage of Horde bots within level range 1-9.
|
# mod_player_bot_level_brackets.conf file AND the corresponding mod_player_bot_level_brackets.conf.dist file to include configuration
|
||||||
# Default: 12
|
# lines for the additional bracket lines added below (e.g. Range10, Range11, etc.). Ensure that the
|
||||||
BotLevelBrackets.Horde.Range1Pct = 12
|
# sum of the Pct values for each faction remains 100.
|
||||||
|
BotLevelBrackets.NumRanges = 9
|
||||||
|
|
||||||
# BotLevelBrackets.Horde.Range2Pct
|
##############################################
|
||||||
# Description: Desired percentage of Horde bots within level range 10-19.
|
# Alliance Level Brackets Configuration
|
||||||
# Default: 11
|
##############################################
|
||||||
BotLevelBrackets.Horde.Range2Pct = 11
|
# The following settings define the level brackets for Alliance bots.
|
||||||
|
# For each bracket, you must specify three parameters:
|
||||||
|
#
|
||||||
|
# BotLevelBrackets.Alliance.RangeX.Lower
|
||||||
|
# Description: The lower bound (inclusive) of bracket X.
|
||||||
|
#
|
||||||
|
# BotLevelBrackets.Alliance.RangeX.Upper
|
||||||
|
# Description: The upper bound (inclusive) of bracket X.
|
||||||
|
#
|
||||||
|
# BotLevelBrackets.Alliance.RangeX.Pct
|
||||||
|
# Description: The desired percentage of Alliance bots that should fall into bracket X.
|
||||||
|
#
|
||||||
|
# EXAMPLE:
|
||||||
|
# The default configuration below defines 9 brackets:
|
||||||
|
#
|
||||||
|
# Range1 covers levels 1-9, Range2 covers levels 10-19, Range3 covers levels 20-29, and so on.
|
||||||
|
#
|
||||||
|
# To customize or add a new bracket (for example, to isolate level 60 in its own bracket), you can:
|
||||||
|
# - Set Range7.Lower = 60 and Range7.Upper = 60, then adjust the Pct values for Range6 and Range8 accordingly.
|
||||||
|
#
|
||||||
|
# Also, if you want to add an extra bracket beyond the default 9, you must:
|
||||||
|
# 1. Increase BotLevelBrackets.NumRanges to the desired number.
|
||||||
|
# 2. Add configuration lines for the new RangeX.Lower, RangeX.Upper, and RangeX.Pct.
|
||||||
|
#
|
||||||
|
# NOTE:
|
||||||
|
# The sum of all Pct values for the Alliance brackets must equal 100.
|
||||||
|
#
|
||||||
|
BotLevelBrackets.Alliance.Range1.Lower = 1
|
||||||
|
BotLevelBrackets.Alliance.Range1.Upper = 9
|
||||||
|
BotLevelBrackets.Alliance.Range1.Pct = 12
|
||||||
|
|
||||||
# BotLevelBrackets.Horde.Range3Pct
|
BotLevelBrackets.Alliance.Range2.Lower = 10
|
||||||
# Description: Desired percentage of Horde bots within level range 20-29.
|
BotLevelBrackets.Alliance.Range2.Upper = 19
|
||||||
# Default: 11
|
BotLevelBrackets.Alliance.Range2.Pct = 11
|
||||||
BotLevelBrackets.Horde.Range3Pct = 11
|
|
||||||
|
|
||||||
# BotLevelBrackets.Horde.Range4Pct
|
BotLevelBrackets.Alliance.Range3.Lower = 20
|
||||||
# Description: Desired percentage of Horde bots within level range 30-39.
|
BotLevelBrackets.Alliance.Range3.Upper = 29
|
||||||
# Default: 11
|
BotLevelBrackets.Alliance.Range3.Pct = 11
|
||||||
BotLevelBrackets.Horde.Range4Pct = 11
|
|
||||||
|
|
||||||
# BotLevelBrackets.Horde.Range5Pct
|
BotLevelBrackets.Alliance.Range4.Lower = 30
|
||||||
# Description: Desired percentage of Horde bots within level range 40-49.
|
BotLevelBrackets.Alliance.Range4.Upper = 39
|
||||||
# Default: 11
|
BotLevelBrackets.Alliance.Range4.Pct = 11
|
||||||
BotLevelBrackets.Horde.Range5Pct = 11
|
|
||||||
|
|
||||||
# BotLevelBrackets.Horde.Range6Pct
|
BotLevelBrackets.Alliance.Range5.Lower = 40
|
||||||
# Description: Desired percentage of Horde bots within level range 50-59.
|
BotLevelBrackets.Alliance.Range5.Upper = 49
|
||||||
# Default: 11
|
BotLevelBrackets.Alliance.Range5.Pct = 11
|
||||||
BotLevelBrackets.Horde.Range6Pct = 11
|
|
||||||
|
|
||||||
# BotLevelBrackets.Horde.Range7Pct
|
BotLevelBrackets.Alliance.Range6.Lower = 50
|
||||||
# Description: Desired percentage of Horde bots within level range 60-69.
|
BotLevelBrackets.Alliance.Range6.Upper = 59
|
||||||
# Default: 11
|
BotLevelBrackets.Alliance.Range6.Pct = 11
|
||||||
BotLevelBrackets.Horde.Range7Pct = 11
|
|
||||||
|
|
||||||
# BotLevelBrackets.Horde.Range8Pct
|
BotLevelBrackets.Alliance.Range7.Lower = 60
|
||||||
# Description: Desired percentage of Horde bots within level range 70-79.
|
BotLevelBrackets.Alliance.Range7.Upper = 69
|
||||||
# Default: 11
|
BotLevelBrackets.Alliance.Range7.Pct = 11
|
||||||
BotLevelBrackets.Horde.Range8Pct = 11
|
|
||||||
|
|
||||||
# BotLevelBrackets.Horde.Range9Pct
|
BotLevelBrackets.Alliance.Range8.Lower = 70
|
||||||
# Description: Desired percentage of Horde bots within level range 80.
|
BotLevelBrackets.Alliance.Range8.Upper = 79
|
||||||
# Default: 11
|
BotLevelBrackets.Alliance.Range8.Pct = 11
|
||||||
BotLevelBrackets.Horde.Range9Pct = 11
|
|
||||||
|
BotLevelBrackets.Alliance.Range9.Lower = 80
|
||||||
|
BotLevelBrackets.Alliance.Range9.Upper = 80
|
||||||
|
BotLevelBrackets.Alliance.Range9.Pct = 11
|
||||||
|
|
||||||
|
##############################################
|
||||||
|
# Horde Level Brackets Configuration
|
||||||
|
##############################################
|
||||||
|
# The following settings define the level brackets for Horde bots.
|
||||||
|
# For each bracket, you must specify:
|
||||||
|
#
|
||||||
|
# BotLevelBrackets.Horde.RangeX.Lower
|
||||||
|
# Description: The lower bound (inclusive) of bracket X.
|
||||||
|
#
|
||||||
|
# BotLevelBrackets.Horde.RangeX.Upper
|
||||||
|
# Description: The upper bound (inclusive) of bracket X.
|
||||||
|
#
|
||||||
|
# BotLevelBrackets.Horde.RangeX.Pct
|
||||||
|
# Description: The desired percentage of Horde bots that should fall into bracket X.
|
||||||
|
#
|
||||||
|
# EXAMPLE:
|
||||||
|
# The default configuration below defines 9 brackets:
|
||||||
|
#
|
||||||
|
# Range1 covers levels 1-9, Range2 covers levels 10-19, Range3 covers levels 20-29, and so on.
|
||||||
|
#
|
||||||
|
# To customize or add a new bracket (for example, to isolate level 70 in its own bracket), you can:
|
||||||
|
# - Set Range8.Lower = 70 and Range8.Upper = 70, then adjust the Pct values for the adjacent ranges.
|
||||||
|
#
|
||||||
|
# NOTE:
|
||||||
|
# The sum of all Pct values for the Horde brackets must equal 100.
|
||||||
|
#
|
||||||
|
BotLevelBrackets.Horde.Range1.Lower = 1
|
||||||
|
BotLevelBrackets.Horde.Range1.Upper = 9
|
||||||
|
BotLevelBrackets.Horde.Range1.Pct = 12
|
||||||
|
|
||||||
|
BotLevelBrackets.Horde.Range2.Lower = 10
|
||||||
|
BotLevelBrackets.Horde.Range2.Upper = 19
|
||||||
|
BotLevelBrackets.Horde.Range2.Pct = 11
|
||||||
|
|
||||||
|
BotLevelBrackets.Horde.Range3.Lower = 20
|
||||||
|
BotLevelBrackets.Horde.Range3.Upper = 29
|
||||||
|
BotLevelBrackets.Horde.Range3.Pct = 11
|
||||||
|
|
||||||
|
BotLevelBrackets.Horde.Range4.Lower = 30
|
||||||
|
BotLevelBrackets.Horde.Range4.Upper = 39
|
||||||
|
BotLevelBrackets.Horde.Range4.Pct = 11
|
||||||
|
|
||||||
|
BotLevelBrackets.Horde.Range5.Lower = 40
|
||||||
|
BotLevelBrackets.Horde.Range5.Upper = 49
|
||||||
|
BotLevelBrackets.Horde.Range5.Pct = 11
|
||||||
|
|
||||||
|
BotLevelBrackets.Horde.Range6.Lower = 50
|
||||||
|
BotLevelBrackets.Horde.Range6.Upper = 59
|
||||||
|
BotLevelBrackets.Horde.Range6.Pct = 11
|
||||||
|
|
||||||
|
BotLevelBrackets.Horde.Range7.Lower = 60
|
||||||
|
BotLevelBrackets.Horde.Range7.Upper = 69
|
||||||
|
BotLevelBrackets.Horde.Range7.Pct = 11
|
||||||
|
|
||||||
|
BotLevelBrackets.Horde.Range8.Lower = 70
|
||||||
|
BotLevelBrackets.Horde.Range8.Upper = 79
|
||||||
|
BotLevelBrackets.Horde.Range8.Pct = 11
|
||||||
|
|
||||||
|
BotLevelBrackets.Horde.Range9.Lower = 80
|
||||||
|
BotLevelBrackets.Horde.Range9.Upper = 80
|
||||||
|
BotLevelBrackets.Horde.Range9.Pct = 11
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user