EmberEmu Ember Save

An early days World of Warcraft 1.12.1 emulator @ https://discord.gg/WpPJzQS

Project README

🔥 Ember

An experimental modular MMO server emulator.


Ember is an educational and research emulator developed to investigate MMO server architectures and bleeding-edge C++ language features and tooling.

While most emulators strive for feature completeness, Ember aims to be a production quality codebase and deployment architecture.

Docker Quick Start

Ember uses Docker to make it easy to get the project up and running within minutes. Once you have Docker (version 19 and up) installed, simply run...

Docker 19:

Linux & MacOS:

DOCKER_BUILDKIT=1 docker build <path to Dockerfile>

Windows:

set "DOCKER_BUILDKIT=1" && docker build <path to Dockerfile>

Ember uses DOCKER_BUILDKIT=1 to enable experimental features in Docker 19 that allow for build caching. It can be omitted by setting it as an environmental variable.

Docker 20+:

docker build <path to Dockerfile>

Want to do it the traditional way? That's fine too, just see docs/GettingStarted.md.

Need help?

We have a Discord server over at https://discord.gg/WpPJzQS or you can check our website out for further documentation.

Supported platforms

Ember aims to support the following platforms as a minimum:

Operating System Architectures
Linux x86, x64, ARMv7
Windows x86, x64
Mac OS x86, x64

Compiler support

Any compiler version equal or greater than the supported version should be capable of compiling Ember. Minimum versions support all language features required but will not receive any fixes to support their use (e.g. compiler-specific workarounds).

Supported Minimum
MSVC 19.30 (VS2022) 19.30 (VS2022)
Clang 18 18
GCC 14 14

Language support

Ember currently targets C++23 but allows for the use of upcoming language additions (e.g. technical specifications and drafts) as long as all three supported compilers provide a reasonable level of support.

Build status

master development
GitHub Docker Image CI Docker Image CI
AppVeyor Build status Build status
Coverity Coverity Scan Status Coverity Scan Status

Why WoW 1.12.1?

Our primary goal isn't to produce a feature-complete, up-to-date emulator to use with newer clients. The 1.12.1 protocol was chosen as a fixed target to leverage the extensive research of prior projects, allowing for greater focus on writing code over reverse engineering.

License

This project is licensed under the Mozilla Public License Version 2.0. A full copy of the license can be found in LICENSE or by clicking here.

Open Source Agenda is not affiliated with "EmberEmu Ember" Project. README Source: EmberEmu/Ember
Stars
33
Open Issues
2
Last Commit
2 weeks ago
Repository

Open Source Agenda Badge

Open Source Agenda Rating