mirror of
https://github.com/uprightbass360/AzerothCore-RealmMaster.git
synced 2026-01-13 09:07:20 +00:00
282 lines
8.2 KiB
Markdown
282 lines
8.2 KiB
Markdown
# AzerothCore Module Configuration Requirements
|
|
|
|
This document outlines all manual configuration steps required for the enabled modules that cannot be automated through Docker container processes.
|
|
|
|
## 🚨 Critical Compatibility Issues
|
|
|
|
### MODULE_PLAYERBOTS - INCOMPATIBLE WITH STANDARD AZEROTHCORE
|
|
|
|
**❌ BREAKING ISSUE**: mod-playerbots requires a completely different AzerothCore branch:
|
|
- **Required Branch**: `liyunfan1223/azerothcore-wotlk/tree/Playerbot`
|
|
- **Current Setup**: Standard AzerothCore (INCOMPATIBLE)
|
|
|
|
**Resolution Options**:
|
|
1. **Switch to Playerbot Branch** (Recommended for bot-focused servers)
|
|
- Fork the Playerbot branch
|
|
- Rebuild entire server stack with Playerbot core
|
|
- Note: May be incompatible with some other modules
|
|
|
|
2. **Disable Playerbots** (Recommended for standard servers)
|
|
- Set `MODULE_PLAYERBOTS=0` in environment file
|
|
- Continue with standard AzerothCore
|
|
|
|
---
|
|
|
|
## 📦 Client-Side Patch Requirements
|
|
|
|
### MODULE_INDIVIDUAL_PROGRESSION
|
|
|
|
**Required Client Patches** (stored in: `${STORAGE_PATH}/modules/mod-individual-progression/optional/`):
|
|
|
|
| Patch File | Description | Required |
|
|
|------------|-------------|----------|
|
|
| `patch-V.mpq` | Vanilla crafting and recipe restoration | ✅ Yes |
|
|
| `patch-J.mpq` | Vanilla login screen | ❌ Optional |
|
|
| `patch-U.mpq` | Vanilla loading screens | ❌ Optional |
|
|
| `patch-S.mpq` | Alternative WotLK mana costs | ❌ Don't use with patch-V |
|
|
|
|
**Installation**: Players must copy required patches to their `WoW/Data/` directory.
|
|
|
|
### MODULE_ARAC (All Races All Classes)
|
|
|
|
**Required Client Patch**:
|
|
- **File**: `Patch-A.MPQ`
|
|
- **Location**: `${STORAGE_PATH}/modules/mod-arac/patch-contents/`
|
|
- **Installation**: Players must copy to `WoW/Data/` directory
|
|
|
|
**Server-Side**: DBC files are automatically applied during module installation.
|
|
|
|
---
|
|
|
|
## ⚙️ Critical Server Configuration Changes
|
|
|
|
### MODULE_INDIVIDUAL_PROGRESSION
|
|
|
|
**Required worldserver.conf Changes**:
|
|
```ini
|
|
# CRITICAL - Required for progress saving
|
|
EnablePlayerSettings = 1
|
|
|
|
# CRITICAL - Required for item stat overrides
|
|
DBC.EnforceItemAttributes = 0
|
|
```
|
|
|
|
**File Location**: `${STORAGE_PATH}/config/worldserver.conf`
|
|
|
|
### MODULE_AOE_LOOT
|
|
|
|
**Required worldserver.conf Optimization**:
|
|
```ini
|
|
# Prevent corpse cleanup issues with AoE looting
|
|
# Default: 0.5, Required: 0.01 or lower
|
|
Rate.Corpse.Decay.Looted = 0.01
|
|
```
|
|
|
|
---
|
|
|
|
## 🤖 Manual NPC Spawning Requirements
|
|
|
|
The following modules require manual NPC spawning using GM commands:
|
|
|
|
### MODULE_TRANSMOG
|
|
```
|
|
.npc add 190010
|
|
```
|
|
**Recommended Locations**: Major cities (Stormwind, Orgrimmar, Ironforge, Undercity)
|
|
|
|
### MODULE_NPC_ENCHANTER
|
|
```
|
|
.npc add [enchanter_npc_id]
|
|
```
|
|
**Note**: Check module documentation for specific NPC ID
|
|
|
|
### MODULE_REAGENT_BANK
|
|
```
|
|
.npc add 290011
|
|
```
|
|
**Recommended Locations**: Major cities near banks
|
|
|
|
### MODULE_ASSISTANT
|
|
```
|
|
.npc add [assistant_npc_id]
|
|
```
|
|
**Note**: Check module documentation for specific NPC ID
|
|
|
|
**Requirements**:
|
|
- GM account with level 3+ permissions
|
|
- Access to worldserver console or in-game GM commands
|
|
|
|
---
|
|
|
|
## 💾 Database Backup Requirements
|
|
|
|
**CRITICAL**: The following modules modify core database tables and require backup:
|
|
|
|
- **MODULE_ARAC**: Modifies race/class restrictions
|
|
- **MODULE_INDIVIDUAL_PROGRESSION**: Adds progression tracking tables
|
|
|
|
**Backup Command**:
|
|
```bash
|
|
docker exec ac-mysql mysqldump -u root -p${MYSQL_ROOT_PASSWORD} --all-databases > backup-$(date +%Y%m%d-%H%M%S).sql
|
|
```
|
|
|
|
---
|
|
|
|
## 🖥️ Eluna Lua Scripting Setup
|
|
|
|
### MODULE_ELUNA - Complete Setup
|
|
|
|
**Automated Setup Available**:
|
|
```bash
|
|
./scripts/setup-eluna.sh
|
|
```
|
|
|
|
**Manual Configuration Requirements**:
|
|
- **Script Directory**: `${STORAGE_PATH}/lua_scripts/` (volume mounted automatically)
|
|
- **English DBC Files**: Recommended for full functionality
|
|
- **Container Integration**: Scripts loaded automatically on worldserver start
|
|
|
|
**Example Scripts Provided**:
|
|
- `welcome.lua` - Player login welcome messages
|
|
- `server_info.lua` - Custom `.info` and `.serverinfo` commands
|
|
- `level_rewards.lua` - Milestone rewards for leveling
|
|
- `init.lua` - Script documentation and loader
|
|
|
|
**Key Configuration** (`mod_LuaEngine.conf`):
|
|
```ini
|
|
Eluna.ScriptPath = "lua_scripts"
|
|
Eluna.AutoReload = false # Enable only for development
|
|
Eluna.BytecodeCache = true # Performance optimization
|
|
Eluna.TraceBack = false # Enable for debugging
|
|
```
|
|
|
|
**Important Compatibility Notes**:
|
|
- ⚠️ **AzerothCore mod-eluna is NOT compatible with standard Eluna scripts**
|
|
- Scripts must be written specifically for AzerothCore's mod-eluna API
|
|
- Standard Eluna community scripts will NOT work
|
|
|
|
**Script Management Commands**:
|
|
- `.reload eluna` - Reload all Lua scripts
|
|
- `.lua [code]` - Execute Lua code directly (if enabled)
|
|
|
|
---
|
|
|
|
## 🔧 Module-Specific Configuration Files
|
|
|
|
### MODULE_PLAYERBOTS - playerbots.conf
|
|
**Key Settings**:
|
|
- `MinRandomBots = 500` (Default - reduce for performance)
|
|
- `MaxRandomBots = 500` (Default - reduce for performance)
|
|
- RandomBot account management settings
|
|
|
|
### MODULE_AOE_LOOT - mod_aoe_loot.conf
|
|
**Key Settings**:
|
|
- Loot range configuration (default: 55.0)
|
|
- Group behavior settings
|
|
|
|
### MODULE_LEARN_SPELLS - mod_learnspells.conf
|
|
**Key Settings**:
|
|
- Maximum level limits
|
|
- First login behavior
|
|
|
|
### MODULE_INDIVIDUAL_PROGRESSION - individual_progression.conf
|
|
**Key Settings**:
|
|
- Era progression rules
|
|
- Content unlock thresholds
|
|
|
|
### MODULE_TRANSMOG - transmog.conf
|
|
**Key Settings**:
|
|
- Transmogrification rules
|
|
- Cost settings
|
|
- Restriction configurations
|
|
|
|
---
|
|
|
|
## 🎯 Performance Considerations
|
|
|
|
### MODULE_PLAYERBOTS
|
|
- **Impact**: High - Can run thousands of AI bots
|
|
- **Recommendation**: Start with low bot counts (50-100)
|
|
- **Monitoring**: CPU usage, memory consumption, database load
|
|
|
|
### MODULE_ELUNA
|
|
- **Impact**: Variable - Depends on Lua script complexity
|
|
- **Requirement**: English DBC files for full functionality
|
|
- **Script Location**: `${STORAGE_PATH}/lua_scripts/` (automatically mounted)
|
|
- **Setup**: Run `./scripts/setup-eluna.sh` to create example scripts
|
|
- **Monitoring**: Script execution times
|
|
- **Reloading**: Use `.reload eluna` command in worldserver console
|
|
|
|
---
|
|
|
|
## 📋 Deployment Checklist
|
|
|
|
### Pre-Deployment
|
|
- [ ] **Critical**: Resolve Playerbots compatibility (switch branch OR disable)
|
|
- [ ] Backup database (if using ARAC or INDIVIDUAL_PROGRESSION)
|
|
- [ ] Update worldserver.conf with required settings
|
|
- [ ] Test configuration in development environment
|
|
|
|
### During Deployment
|
|
- [ ] Rebuild containers: `./scripts/rebuild-with-modules.sh`
|
|
- [ ] Verify module compilation success
|
|
- [ ] Apply any remaining SQL scripts manually
|
|
- [ ] Create GM account for NPC spawning
|
|
|
|
### Post-Deployment
|
|
- [ ] Spawn required NPCs using GM commands
|
|
- [ ] Test each module's functionality
|
|
- [ ] Distribute client patches to players
|
|
- [ ] Monitor server performance
|
|
- [ ] Adjust module configurations as needed
|
|
|
|
---
|
|
|
|
## 🚨 Known Compatibility Issues
|
|
|
|
### AzerothCore Version Dependencies
|
|
- **MODULE_TRANSMOG**: Requires minimum commit `b6cb9247ba96a862ee274c0765004e6d2e66e9e4`
|
|
- **MODULE_PLAYERBOTS**: Requires custom Playerbot branch (incompatible with standard)
|
|
|
|
### Module Conflicts
|
|
- **INDIVIDUAL_PROGRESSION + Standard AzerothCore**: patch-S.mpq conflicts with patch-V.mpq
|
|
- **ELUNA Scripts**: AzerothCore mod-eluna is NOT compatible with standard Eluna scripts
|
|
|
|
### Database Conflicts
|
|
- **MODULE_TRANSMOG**: Must delete conflicting npc_text IDs (50000, 50001) if upgrading
|
|
|
|
---
|
|
|
|
## 📞 Support and Resources
|
|
|
|
### Module Documentation
|
|
Each module's GitHub repository contains detailed configuration documentation:
|
|
- Configuration file examples (`.conf.dist` files)
|
|
- SQL requirements
|
|
- Client-side patch information
|
|
|
|
### Testing Recommendations
|
|
1. **Development Environment**: Test all modules in non-production environment first
|
|
2. **Staged Rollout**: Enable modules incrementally to identify issues
|
|
3. **Player Communication**: Provide clear client patch installation instructions
|
|
4. **Rollback Plan**: Maintain database backups for quick rollback if needed
|
|
|
|
---
|
|
|
|
## 🔄 Configuration Update Script
|
|
|
|
Run the module configuration analysis script to check your current setup:
|
|
|
|
```bash
|
|
./scripts/configure-modules.sh
|
|
```
|
|
|
|
This script will:
|
|
- Analyze your enabled modules
|
|
- Identify missing configuration requirements
|
|
- Provide step-by-step resolution guidance
|
|
- Check for compatibility issues
|
|
|
|
---
|
|
|
|
*Last Updated: $(date)* |