A C# game engine (text-based) that I'm writing while learning stuff.
Basic idea:
- Engine that is multi-threaded, running each internal "service" on its own thread.
- Generic interfaces for the internal Network handler, to make it protocol agnostic.
- Provide a comprehensive and robust plugin API to allow for plugins to handle the majority of game logic.
- Add hooks and events to the internal game system. This will allow plugins to handle events that can be emitted by other plugins.
This project requires .NET Core SDK 3.1
NOTE: Networking in XeonProject is handled via plugins hooking into the NetManager and enqueuing new NetEvents. For a default solution, XeonNet provides a TCP transport layer with Telnet and GMCP parsing and processing.
- Clone the repo.
- Build the solution.
- (Optional) Enter the XeonNet folder and
dotnet build
- Run XeonProject to generate default config and make the plugins directory.
- (Optional) Copy XeonNet.dll to the plugins directory.
- (Optional) Edit XeonConfig.json
- Run XeonProject