mirror of
https://github.com/liyunfan1223/mod-playerbots.git
synced 2026-06-20 15:39:25 +02:00
Created Troubleshooting (markdown)
parent
f2e4f0138e
commit
ac6668d46b
214
Troubleshooting.md
Normal file
214
Troubleshooting.md
Normal file
@ -0,0 +1,214 @@
|
||||
# Troubleshooting
|
||||
|
||||
This page covers the most common issues encountered when installing and running `mod-playerbots`, based on community support experience. If your issue isn't listed here, check the [Discord server](https://discord.gg/NQm5QShwf9) or [open a GitHub issue](https://github.com/mod-playerbots/mod-playerbots/issues/new?template=bug_report.md).
|
||||
|
||||
---
|
||||
|
||||
## Table of Contents
|
||||
|
||||
- [Build & Compilation Issues](#build--compilation-issues)
|
||||
- [Database Issues](#database-issues)
|
||||
- [Configuration Issues](#configuration-issues)
|
||||
- [Server Crashes & Performance](#server-crashes--performance)
|
||||
- [Platform-Specific Issues](#platform-specific-issues)
|
||||
- [Docker Issues](#docker-issues)
|
||||
- [Client & Gameplay Issues](#client--gameplay-issues)
|
||||
|
||||
---
|
||||
|
||||
## Build & Compilation Issues
|
||||
|
||||
### Hundreds of compilation errors (500+)
|
||||
|
||||
**Cause:** You are building `mod-playerbots` against the standard AzerothCore repository instead of the required Playerbots fork.
|
||||
|
||||
**Fix:** You **must** use the Playerbots fork:
|
||||
|
||||
```bash
|
||||
git clone https://github.com/mod-playerbots/azerothcore-wotlk.git --branch=Playerbot
|
||||
```
|
||||
|
||||
The standard `azerothcore/azerothcore-wotlk` repository will not work. See the [Installation Guide](Installation-Guide) for full instructions.
|
||||
|
||||
---
|
||||
|
||||
### Thousands of "unused parameter" warnings
|
||||
|
||||
**Cause:** The `mod-playerbots` codebase has not yet been fully cleaned up for compiler warnings. These are cosmetic and **do not affect functionality**.
|
||||
|
||||
**Fix:** Suppress warnings by adding this to your cmake command:
|
||||
|
||||
```bash
|
||||
cmake .. -DCMAKE_CXX_FLAGS="-w"
|
||||
```
|
||||
|
||||
Or set `-DWITH_WARNINGS=0`. This also significantly speeds up recompilation since the compiler skips warning output.
|
||||
|
||||
---
|
||||
|
||||
### Third-party module fails to compile after update
|
||||
|
||||
**Cause:** The playerbots AzerothCore fork may be behind the latest upstream AzerothCore. Modules targeting the newest AC version may reference APIs or headers that don't exist yet or have changed in the fork.
|
||||
|
||||
**Fix:** Use an older release or commit of the third-party module that matches the fork's AC version. Check the module's release history or ask in Discord for a known-compatible version.
|
||||
|
||||
|
||||
---
|
||||
|
||||
### Visual Studio runs out of memory during compilation (Windows)
|
||||
|
||||
**Fix:** In Visual Studio, go to *Tools > Options > Projects and Solutions > Build and Run* and set **maximum number of parallel project builds** to **4** (down from the default).
|
||||
|
||||
---
|
||||
|
||||
## Database Issues
|
||||
|
||||
### `Table 'XXXX' doesn't exist`
|
||||
|
||||
**Cause:** The playerbots SQL files were not imported into the database. The auto-updater does not always pick up module SQL files.
|
||||
|
||||
**Fix:** Manually import the SQL files:
|
||||
|
||||
```bash
|
||||
mysql -u acore -p acore_characters < modules/mod-playerbots/sql/characters/base/playerbots_characters.sql
|
||||
mysql -u acore -p acore_world < modules/mod-playerbots/sql/world/base/playerbots_world.sql
|
||||
```
|
||||
|
||||
> Make sure you import to the **correct databases**: character SQL goes to `acore_characters`, world SQL goes to `acore_world`.
|
||||
|
||||
---
|
||||
|
||||
### `Unknown database 'acore_playerbots'`
|
||||
|
||||
**Cause:** The `acore_playerbots` database was not created, or the database user does not have permission to access it. The playerbots module uses this database in addition to the standard `acore_characters` and `acore_world` databases.
|
||||
|
||||
**Fix:** Create the database and grant permissions:
|
||||
|
||||
```sql
|
||||
CREATE DATABASE IF NOT EXISTS acore_playerbots;
|
||||
GRANT ALL PRIVILEGES ON acore_playerbots.* TO 'acore'@'localhost';
|
||||
FLUSH PRIVILEGES;
|
||||
```
|
||||
|
||||
Then restart the server.
|
||||
|
||||
---
|
||||
|
||||
## Configuration Issues
|
||||
|
||||
### Changes to `playerbots.conf` have no effect
|
||||
|
||||
**Cause:** You may have edited the `.conf.dist` file in the module source directory instead of the `.conf` file in the server's configuration directory.
|
||||
|
||||
**Fix:** Edit the configuration file in your **server's install directory**:
|
||||
|
||||
```
|
||||
<install_dir>/etc/modules/playerbots.conf # Linux/macOS
|
||||
<install_dir>\configs\modules\playerbots.conf # Windows
|
||||
```
|
||||
|
||||
The `.conf.dist` files are templates. The server reads `.conf` files from the install directory, not from the source folders. Both `.conf.dist`and `.conf`are required for the module to work correctly.
|
||||
|
||||
---
|
||||
|
||||
### `.playerbot` command doesn't exist in-game
|
||||
|
||||
**Cause:** The module was not compiled into the server.
|
||||
|
||||
**Fix:**
|
||||
1. Verify the module is in `azerothcore-wotlk/modules/mod-playerbots/` before building.
|
||||
2. Rebuild the server (cmake + make/build).
|
||||
|
||||
---
|
||||
|
||||
## Server Crashes & Performance
|
||||
|
||||
|
||||
### Server diff time steadily increases / server becomes laggy
|
||||
|
||||
**Cause:** Too many bots for your hardware, or not enough processing threads.
|
||||
|
||||
**Fix:**
|
||||
1. **Increase map update threads** in `worldserver.conf`:
|
||||
```
|
||||
MapUpdate.Threads = 4
|
||||
```
|
||||
Set this to 4–6 for most systems (roughly number of CPU cores minus 2).
|
||||
|
||||
2. **Reduce bot count.** Start with 50–200 bots and scale up while monitoring performance. Check with `.server info` in-game.
|
||||
|
||||
---
|
||||
|
||||
### Server crashes in dungeons/raids with bots
|
||||
|
||||
**Possible causes:**
|
||||
- Conflicting modules (especially Individual Progression + Playerbots)
|
||||
- Uninitialized bot strategies for specific encounters
|
||||
|
||||
**Fix:**
|
||||
1. Disable conflicting modules to isolate the issue.
|
||||
2. Update to the latest playerbots version.
|
||||
3. Report crashes with full logs and stack traces as a [GitHub issue](https://github.com/mod-playerbots/mod-playerbots/issues/new?template=bug_report.md).
|
||||
|
||||
To get useful crash logs:
|
||||
- **Linux:** Run worldserver under GDB: `gdb -ex run ./worldserver` and type `bt` after the crash.
|
||||
- **Windows:** Check the crash log in your server directory or enable Windows Error Reporting.
|
||||
|
||||
---
|
||||
|
||||
## Platform-Specific Issues
|
||||
|
||||
---
|
||||
|
||||
## Docker Issues
|
||||
|
||||
### Worldserver stuck in boot loop / `Unknown database` errors
|
||||
|
||||
**Cause:** The Docker db-import container does not automatically import module SQL files, and the `acore_playerbots` database may not have been created.
|
||||
|
||||
**Fix:**
|
||||
|
||||
1. Ensure the `acore_playerbots` database exists and the user has permissions (connect to the MySQL container or use an admin tool):
|
||||
```sql
|
||||
CREATE DATABASE IF NOT EXISTS acore_playerbots;
|
||||
GRANT ALL PRIVILEGES ON acore_playerbots.* TO 'acore'@'%';
|
||||
FLUSH PRIVILEGES;
|
||||
```
|
||||
|
||||
2. Copy the module SQL files to the custom import directories before building:
|
||||
```bash
|
||||
mkdir -p data/sql/custom/db_characters data/sql/custom/db_world
|
||||
cp modules/mod-playerbots/sql/characters/base/*.sql data/sql/custom/db_characters/
|
||||
cp modules/mod-playerbots/sql/world/base/*.sql data/sql/custom/db_world/
|
||||
```
|
||||
|
||||
3. Restart the containers: `docker compose down && docker compose up -d --build`
|
||||
|
||||
---
|
||||
|
||||
## Client & Gameplay Issues
|
||||
|
||||
### Bots don't cast spells / have missing abilities
|
||||
|
||||
**Cause:** Non-enUS DBC files are being used on the server. The bot spell system relies on enUS spell name lookups.
|
||||
|
||||
**Fix:** Use **enUS** DBC files server-side. Your game client can be in any language — only the server-side DBC files need to be enUS.
|
||||
|
||||
---
|
||||
|
||||
### Bots stuck at level 1 after hours of running
|
||||
|
||||
**Cause:** Bots need time and proper configuration to level. On first startup with many bots, the system is initializing.
|
||||
|
||||
**Fix:**
|
||||
1. Let the server run for a full cycle (check `playerbots.conf` for bot update intervals).
|
||||
2. Ensure `AiPlayerbot.RandomBotAutologin = 1` is set.
|
||||
3. Check server logs for SQL or pathfinding errors that might be preventing bot activity.
|
||||
|
||||
---
|
||||
|
||||
## Still Need Help?
|
||||
|
||||
- Check the [Discord server](https://discord.gg/NQm5QShwf9) `#support` channel
|
||||
- Search [existing GitHub issues](https://github.com/mod-playerbots/mod-playerbots/issues)
|
||||
- [Open a new issue](https://github.com/mod-playerbots/mod-playerbots/issues/new?template=bug_report.md) with your logs, configuration, and platform details
|
||||
Loading…
x
Reference in New Issue
Block a user