Dodgeball 2D is a competitive top-down arena dodgeball game with RTS-style movement.
- Programming the entire game, which includes:
- Using Mirror’s NetworkManager to accept player connection requests to form lobbies and teams.
- Granting players client-side prediction on the power of their dodgeball throw despite throwing being server-authoritative.
- Validating players’ movement commands using 2D vector math.
- Allowing players to set their own name that all other players will see.
- Writing a custom script that automatically sets the bounds of the dodgeball arena; any modification of the arena’s size will shift the bounds accordingly.
Development of Dodgeball-2D began in mid December 2020 after I completed a Udemy course involving the use of the multiplayer framework Mirror. The game was intended to be a small project to demonstrate my understanding of multiplayer programming in Unity with Mirror. The project was released for testing on January 3rd; it was playable but riddled with bugs with many issues related to networking. I ended up stumbling upon this GitHub issue, which was still open at the time, that was causing a bug in my code. It was then I decided I would try Unreal Engine 4 in search of a game engine with better built-in multiplayer capabilities. The long gap between this project and Telekinetic Dodgeball was spent learning UE4.