Rails Invaders at RailsRumble

Rails Invaders at RailsRumble

Taking part to a programming event is most of the time an interesting adventure considering that it let you meet people with the same coding passion as yours. Solving problems together in a strict time constraint it’s a very challenging and entertaining experience. Everyone give his contribution to reach a common objective.

That’s what happened at RailsRumble 2015 with the friends of Welaika.
We had to produce a Ruby on Rails based application in 48 hours in team of up to 4 members.

We formed the team and proposed different projects to be implemented.

The Team

We came up with the decision of making a Rails backend for a javascript browser videogame that acquires the players the points and adjust in real-time for each client connected the current ranking.

We organized the work so that some members will produce the back and other the front part of the project.

We decided to use a Javascript Game Engine called Phaser to have something easy to use and we decide to start from one of the example projects (a space invaders clone) to boost up the client side development. After some customizations we came up with Rails Invaders client side code.

the client side videogame

For the Rails server we implemented a OAuth2 based user login, the persistance of the users and matches with Postgresql relational database and we decided to poll the current match status to the server to keep track of the matches running instant after instant.

coding-hard

During the night I decided that I would implement also the support for LeapMotion periferic to allow the user to pilot the starship with its bare hand! It was like the 4 in the morning but I was able to pushed that feature

After lot of code, lot of coffee and some Heroes of the Storm games we came out with this:

It has been a very satisfying weekend!

A couple of weeks later, it turned out that our Rails Invaders won the Third Price of the competition!

Project Details
Try the game!
Rails Rumble organizer decided as usual to Teardown Heroku server instances