Important
ALE is an independent Lua scripting engine specifically designed for AzerothCore. This project has diverged from the original Eluna project and is no longer compatible with standard Eluna scripts. Scripts written for ALE will not work with the original Eluna engine and vice versa.
🚀 Overview
ALE is a powerful, AzerothCore-specific implementation of a Lua scripting engine that enables server administrators and developers to create custom gameplay features, events, and mechanics without modifying the core server code.
Key Features
- Native AzerothCore Integration: Built specifically for AzerothCore's architecture
- Enhanced API: Extended functionality for AzerothCore, beyond the original Eluna specification.
- Community-Driven Development: Actively maintained with community contributions
⚠️ Compatibility Notice
ALE vs Original Eluna
ALE is NOT compatible with the original Eluna project. This fork has evolved independently with AzerothCore-specific enhancements and API changes that make scripts non-interchangeable.
For Original Eluna Compatibility
If you need to use standard Eluna scripts or maintain compatibility with the original Eluna project, please use the dedicated AzerothCore port available at:
This repository maintains compatibility with the original Eluna API and supports standard Eluna scripts.
📋 Table of Contents
⚡ Installation
Prerequisites
- AzerothCore server installation
- Git version control system
- CMake build system
Installation Steps
# Navigate to your AzerothCore modules directory
cd <azerothcore-path>/modules
# Clone the mod-ale repository
git clone https://github.com/azerothcore/mod-ale.git
# Configure build with your preferred Lua version
cd <azerothcore-build-directory>
cmake ../ -DLUA_VERSION=luajit # Options: luajit, lua52, lua53, lua54
# Default: If no version is specified, Lua 5.2 will be used
# Rebuild your AzerothCore server
make -j$(nproc)
Supported Lua Versions
- LuaJIT (Recommended for performance)
- Lua 5.2 (Default)
- Lua 5.3
- Lua 5.4
📚 Documentation
Getting Started
- Installation Guide - Complete installation and setup instructions
- Usage Guide - Learn how to write your first Lua scripts
- Implementation Details - Advanced features and technical details
Advanced Topics
- Contributing Guide - How to contribute to ALE development
- Advanced Integration - Custom builds and maintaining modifications
API Reference
- mod-ale API Documentation - Complete API reference for mod-ale
- Hooks Documentation - Available event hooks
- Lua 5.2 Reference - Official Lua language documentation
Warning
API Differences: ALE functions may not be available in the original Eluna project and vice versa. Always refer to the ALE specific documentation when developing scripts.
💬 Support
Getting Help
- GitHub Issues: Report bugs or request features
- Discord Community: Join our Discord server
- AzerothCore Discord: Official AzerothCore support
Resources
🤝 Contributing
We welcome contributions from the community! Whether you code or not, there are many ways to help improve ALE.
Development Workflow
Quick Start
- Fork the repository
- Create a feature branch from
master - Implement your changes with proper testing
- Follow the existing code style and conventions
- Submit a pull request with a clear description
Full Contributing Guide
For detailed information on how to contribute code, documentation, scripts, or help the community, see our Contributing Guide.
🌟 Acknowledgements
Original Project
mod-ale is built upon the foundation of the original Eluna project. We acknowledge and thank the original Eluna team for their pioneering work in Lua scripting for World of Warcraft server emulators.
Related Projects
- Original Eluna Repository - The original Eluna project
- Eluna Discord Community - Original Eluna community support
- ElunaAzerothCore - AzerothCore with original Eluna compatibility
Supported Emulators
- AzerothCore - Primary target (this project)
- TrinityCore - Original Eluna support
- MaNGOS
- cMaNGOS
📄 License
This project is licensed under the GNU General Public License v3.0. See LICENSE for details.