8.2 KiB
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:
-
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
-
Disable Playerbots (Recommended for standard servers)
- Set
MODULE_PLAYERBOTS=0in environment file - Continue with standard AzerothCore
- Set
📦 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:
# 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:
# 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:
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:
./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 messagesserver_info.lua- Custom.infoand.serverinfocommandslevel_rewards.lua- Milestone rewards for levelinginit.lua- Script documentation and loader
Key Configuration (mod_LuaEngine.conf):
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.shto create example scripts - Monitoring: Script execution times
- Reloading: Use
.reload elunacommand 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.distfiles) - SQL requirements
- Client-side patch information
Testing Recommendations
- Development Environment: Test all modules in non-production environment first
- Staged Rollout: Enable modules incrementally to identify issues
- Player Communication: Provide clear client patch installation instructions
- Rollback Plan: Maintain database backups for quick rollback if needed
🔄 Configuration Update Script
Run the module configuration analysis script to check your current setup:
./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)