Updates based on feedback

Keleborn 2026-03-16 13:06:14 -07:00
parent ac6668d46b
commit a876a63007

@ -115,10 +115,19 @@ After building and installing, a `playerbots.conf.dist` file will be in your ser
> **Critical:** Always edit the `.conf` file in your **server's install/config directory**, not the `.conf.dist` file in the module source folder. Changes to `.conf.dist` or to files in the source `modules/` directory have no effect on the running server. Both the `.conf.dist` and `.conf` files must be present for the module to work. > **Critical:** Always edit the `.conf` file in your **server's install/config directory**, not the `.conf.dist` file in the module source folder. Changes to `.conf.dist` or to files in the source `modules/` directory have no effect on the running server. Both the `.conf.dist` and `.conf` files must be present for the module to work.
3. **Tune MySQL for playerbots.** The default MySQL configuration is not adequate for use with playerbots and will lead to increased disk activity and decreased performance. Key settings to add to your MySQL config (`my.cnf` or `my.ini`): 3. **Increase map update threads** in `worldserver.conf`. This is the single most impactful performance setting for playerbots:
```
MapUpdate.Threads = 4
```
Set this to 46 for most systems (roughly number of CPU cores minus 2). AzerothCore performance is heavily dependent on single-core performance, and you are unlikely to see any benefit from using more than 8 threads. Setting this to 12, 16, or higher does not improve performance — it can actually increase overhead.
4. **Tune MySQL for playerbots.** The default MySQL configuration is not adequate for use with playerbots and will lead to increased disk activity and decreased performance. Key settings to add to your MySQL config (`my.cnf` or `my.ini`):
```ini ```ini
[mysqld] [mysqld]
skip-log-bin # Disables binary logging — reduces disk writes by 75-90%. Safe for single-server setups that don't need replication.
innodb_buffer_pool_size = 4G # Set to ~50% of total RAM innodb_buffer_pool_size = 4G # Set to ~50% of total RAM
innodb_io_capacity = 500 innodb_io_capacity = 500
innodb_io_capacity_max = 2500 innodb_io_capacity_max = 2500
@ -147,6 +156,8 @@ If you already have a working AzerothCore server and want to add `mod-playerbots
mysqldump -u acore -p acore_characters > characters_backup.sql mysqldump -u acore -p acore_characters > characters_backup.sql
``` ```
> **Tip:** If you only need to back up specific characters rather than the entire database, you can use the `.pdump write` and `.pdump load` commands in-game. For example, `.pdump write dump.sql <character_name>` exports a single character, and `.pdump load dump.sql <account_name>` imports it. This is a quick option if you don't need a full database backup.
2. **Switch your AzerothCore repository to the Playerbots fork.** From your existing `azerothcore-wotlk` directory, change the remote URL and pull the Playerbot branch: 2. **Switch your AzerothCore repository to the Playerbots fork.** From your existing `azerothcore-wotlk` directory, change the remote URL and pull the Playerbot branch:
```bash ```bash
cd azerothcore-wotlk cd azerothcore-wotlk
@ -275,4 +286,6 @@ make -j $(nproc)
make install make install
``` ```
> **Note:** If you are only pulling updates (no new cmake options or module additions), you can skip the `cmake ..` step and just run `make -j $(nproc) && make install`. Re-running cmake is only necessary when you change build options, add/remove modules, or do a fresh build.
> **Important:** Always update **both** the core and the module together. Running a newer module against an older core (or vice versa) can cause compilation errors or runtime crashes. > **Important:** Always update **both** the core and the module together. Running a newer module against an older core (or vice versa) can cause compilation errors or runtime crashes.