Combat Game Monster Maze

Uno Multiplayer

Spring 2020

I aimed to replicate the timeless UNO card game, primarily to enjoy it with my friends during the COVID lockdown. This endeavour offered an excellent opportunity for me to explore the complexities of multiplayer game logic. To achieve this, I chose to use Socket.IO due to its swift functionality and straightforward player tracking capabilities. It also worked well on the web, allowing friends to easily join via a browser link.

JavaScript
SocketIO
Multiplayer
Anti-cheat

Key Features

Challenges, solutions and lessons learnt

As this was my first multiplayer project, it was quite challenging to plan out the communication between clients and the server. My objective was to minimize the amount of information sent to the clients to reduce client-side waiting. However, I learned that attempting to send only specific information can introduce significant complexity when bugs arise. If I were to work on a similar project in the future, I would consider organizing the data that needs to be synchronized with clients separately to make it clear where data enters and exits the system.