This project was created for the advanced games programming module during my time at university. The task was to create an underwater multiplayer game using C++, Urho3D, & Visual Studio. My idea was a simple game where players would swim around an underwater level and compete to collect the most fish.The fish use an implementation of Boids to navigate around the map and stay together in schools. The server handles most of the functions that occur within the game and triggers remote events to update the client on what is happening, for example when a player collects a fish the server registers that and updates that player's score variable before packing that into an event and sending it to the player. After that the fish object is deleted from the server scene which leads to that fish disappearing for all connected clients. Once a player collects enough fish to pass the score threshold two events are triggered by the server, the first goes out to the winning player to inform them they have won and the second goes out to the other plays to inform them that the game is over.