Eyos (In Development)
A multiplayer RTS game written in C++ with data oriented design in mind. A learning project to deppen my C++ knowlegde and my network programming skills.
Eyos is a cross platform (Windows and Linux) targeting 2D multiplayer RTS focused on managing a massive amount of units. I see this project as a chance to enhance and challenge my network programming skills as well as my software engineering skills. The development of this project is open and can be found on github. (GitHub).
My main responsibilities
The network architecture
I am in charge for the network architecture which supports the synchronization of millions of entities via the network. The chosen architecture is an peer to peerish server-client approach, with deterministic lock step. As descripted in this article Age of Empire and in this book Architecting Networked Games by Joshua L. Glazer and Sanjay Madhav. The host starts up a dedicated server on their machine and that one confirms the gameplay.
I am working with GitHub Actions. It verifies that our game can be build on Windows (
msvc) and Linux (our test environment is Ubuntu) with GCC9 and Clang9 tool chain. Our code gets also tested and verified with clang-tidy and clang format every time someone pushes. Besides this
ctest runs our unit tests (Catch2)
|Duration:||Decemeber 2019 - Ongoing Development|
|Roles:||QA Engineer, Engine & Network programmer|
|Engine:||Eyos Custom Game Framework|
|Platform:||Windows & Linux|
|Technologies:||cmake, clang & msvc, git, bgfx, GitHub Actions, hack'n plan|