In 2015, the free-to-play live service game Halo: Online launched and sadly soon closed its doors forever. The game has since been unplayable in it's original form. The Anvil Station private server project aims to resurrect and preserve this game as it was, making it playable once again for the public.
I've been working as the primary game server developer, with research assistance coming from another member of the team. The other team members work primarily on the game's live service API, which I give occasional assistance to. My job has been to reverse engineer the game client to identify and reimplement missing code relating to server hosting, networking and simulation which was stripped from the game client.
Worked and communicated with a small team of 4 to meet project needs
Reverse-engineered the game client using IDA Pro
Game client modified at runtime using injected DLL to restore missing server hosting features (networking, session & simulation)
Implemented low-level x86 function hooking & C++ code insertion
Automatic session creation on startup
Implemented server communication with game live service for matchmaking, assigning player loadouts and submitting player stats
Implemented map & gamemode voting system