React logo

React

Socket.io logo

Socket.io

Node.js logo

Node.js

Project Date: 2022-05-18

MULTI-PLAYER TENZIES

This was my first-ever significant project. Originally I wanted to make a table-top multiplayer game, but it didn’t take long to realize I had bit off more than I could chew. Instead, I made the back-end additions necessary to this game that I created at the end of a scrimba-react course. I had really pushed myself on this project, so I remember it fondly.

Goal

Learn about websockets and database building to create a real-time dice game that could be played by my friends in-between League of Legends queue timers.

Project Features

  • Server-validated game logic

  • Real-time player interaction through websocket connections

  • JSON Database updated live on the server

  • Fun confetti upon winning 😉

Outcome

I made a playable game! The backend is server-validated. So Player A makes an input, the server takes the data, runs it through the game logic, and updates the client-side state of Players A, B, C, and D in the room.

I definitely learned how unglamorous backend can be. I put in a lot of work for someone to click a die and have it turn green on multiple clients. That said, I have the barebones framework complete, and it would be relatively easy to add more features like player power-ups/weapons that they could interact with the enemy board.

Eventually, I’d like to go back and polish the CSS and add those features. But I checked my boxes on this project. I learned how to build my own back-end & real-time database and I worked out my React muscles. At the time, I had to get rolling on more projects so I could be that much closer to employment.