About this project

Ember is an educational and research emulation project focused on MMO server architectures and modern language tooling. Unlike many emulators that prioritize feature parity, Ember emphasizes quality of implementation and performance, targeting modern platforms and toolchains. Key points from the README: - Not a fork: Ember was written from the ground up with zero code reuse from other cores, though it draws on prior research into protocols and formats. - Target: World of Warcraft 1.12.1 protocol, chosen as a fixed target to leverage existing research and focus on code quality rather than reverse engineering. - Research contributions: The project has produced patches for authentication vulnerabilities in major cores, client integrity validation, two-factor authentication, a more complete understanding of the authentication protocol, message structure fixes, and correct character customization validation. These advancements have been shared with other projects. - Setup: Docker is used for quick start; a GettingStarted.md document covers manual setup. - Platforms and compilers: Supports MSVC 19.30 (VS2022)+, Clang 21+, and GCC 15+. Minimum versions are listed but receive no fixes. - Language standard: Targets C++26, permitting future language additions if all three compilers support them reasonably. - Build status: CI via GitHub Actions and Coverity scans are shown for master and development branches. - License: Mozilla Public License 2.0. - Community: Discord server and website (mmoemulator.com) for help and documentation. The README also notes a retro ASCII-art banner when the server runs. The project is intended for educational and research purposes, investigating MMO server architectures and bleeding-edge language standards.