Para Bellum

The purpose of the Para Bellum project was to create an online game that I could play with my friends across a variety of platforms. At the time, I was using a Chromebook for most of my mobile computing and it would have been fairly inconvenient to recompile binaries for my little ARM machine, as well as my friends’ x86 machines, every time I made a change to the user interface. A web app seemed like just what I needed to fulfil the project’s goals, so I wrote a little JavaScript.

 

The game server runs in Node.js and connects to a MongoDB database hosted elsewhere. The only client I created is a web page that connects to the server via the Socket.IO library. The web client accepts player input using keyboard and mouse events and it draws game elements to a canvas. In retrospect, both the client and server are total spaghetti that would be more comprehensible, maintainable, and extensible with better planning; but they work, so I haven’t touched them in years.

Skirmish is the default game mode: it’s a best-of-three deathmatch for two teams of human players with a medium density of asteroids. Although it is possible to play Para Bellum in the singleplayer menu screen, it’s way more fun with friends. Gameplay is designed to be extremely quick and easy to learn, while still allowing for feats of high skill. Drifting around a group of asteroids, launching yourself past the enemy team, and eliminating them with a blanket of lasers just feels really good.

Play Para Bellum