Inspiration

I was inspired by the Nexmo demo to make a multiplayer .io game that could be live demoed in front of the audience. I started with the idea of building a server in nodejs where user's could connect to the game, and would then be paired up to control a single character in the game.These characters could then dual it out.

The final part of my solution was to host the server on google cloud platform.

What it does

The final product is different from the inspiration. Firstly, the Nexmo api wasn't used - as i found it a bit too hard to decipher using my limited server knowledge, and had some questions about it's usability for this real time game.

The final product is a .io game where each player controls a 'unicorn' - the goal is to ram other unicorns off the screen using their horn. Also, to avoid being rammed off the screen.

How I built it

The product is hosted using the app engine on google cloud platform, and it does run - albeit a bit laggy and without much capacity for a lot of players.

I used Nodejs with the express and socket.io packages to create the game. Everytime someone connects, the game creates a new player - they can then use the 'a' 'w' 'd' keys to control their unicorn and ram others off the screen.

Challenges I ran into

I had no previous experience with any of these concepts, Nodejs, Google cloud platform or any game engine experience. So learning everything on the fly was a unique experience. I would have liked to use the Nexmo api, but i did find it a bit confusing and it seems like it's over engineered for what i wanted it for (just key presses).

Accomplishments that I'm proud of

Everything, especially the skills in node and gcp - which i can now use for other, more ambitious projects.

What I learned

Basic node, the google cloud application engine and some basic game engine concepts like making my own collision detection and drawing unicorns using mathematical equations.

What's next for Daeda game

It'll live online as part of my portfolio, and may become a prototype for a more complex .io game.

Share this project:

Updates