This is educational project in early prototype phase and full of bad code, hardcode and lack of error handling. Current goal is understanding workflow.
Project inspired by TrinityCore
The main goal is to create modern, distributed, scalable World of Warcraft server emulator.
- Basic login to the realm
- Switch client from realm server to world server
- Create a character
- Log into the world
- Think about design (Event sourcing? RPC? Main entities to deal with?)
- Basic world update loop
- Clients synchronisation
- Handle user registration
- Persistence
- Distributed runtime
- Plugins for scripting world behaviour (dynamic linking? LUA?)
- Use suitable tools for database, messaging, e.t.c.