What I know about gamedev

Today, a realization struck me. In my life I have published 2 fully featured games (along with the domain and so on). This theoretically grants me the right to do a short ex-cathedra.

What games did you make?

I made two fully-featured games. First of them was called Bellum, and was essentially a browser-based strategy game written entirely in Python (and some minor JavaScript). You had a mothership that could travel to any planet and deploy troops there.

It even had full integration with SMF forum, ie. if you changed your password there, the password change would be propagated to the game as well.

First full commit appeared on 5 September 2009 (I was 18 at the time). The rest is history, even well-documented. The game was deemed ready to be players on 19 March 2011

Second of the games was called Ninja Tower. It was designed to be a 2D platformer beat’em up, team deathmatch cross a MOBA. It had a pretty complex mechanism for load balancing and player selection. Even two movies from the gameplay survived and are available here. The server was divided in three tiers:

  1. cshardmgr – only one, talks to lobby
  2. lshardmgr – talks to cshardmgr and allocates a game
  3. sakura – service that runs to provide the gaming world; clients would then connect to this part and carry out the mayhem

Ninja Tower was written by 3 people: I wrote the server parts, Iwan wrote the client, and my very good friend Piotr Maszlanka (sic!) wrote the tools for character design and map design.

So what’s your budget?

When I built both of our games, there was a slight problem. We could either work for the companies that hired us, or work on the game. So we did the game essentially for free. While programmers can get interested in an idea and just go for it, artists aren’t like that.

My dear friend, who stuck with me through 3 schools (Michał Żak, who by any means is also an excellent photographer, so be sure to check out his works), did the graphics design for Bellum, for free. But you probably don’t have a friend like these. While making Ninja Tower it was a long search for a pixel artist, who was rewarded only by his appearance in the credits, and ended up providing us with 2 original characters, but only one was playable. The other character was therefore unceremoniously stolen from other 2D platformer.

So, at first, before you do anything answer yourself this: do I have the budget? If you don’t, there’s a choice of begging portals to realize your dream of making your own game. And seeing that the market has become really hard, I wouldn’t do this anymore.

How did my games fail?

Well, Bellum was counted to sustain itself through other player mediated conflict. At the launch of the game, which happened at Student’s Work Trade Fair in my technical high school (technikum) we had the absolute most of 20 active players at one point. Remember, that the galaxy was vast, so there was little conflict, and soon most players were cashing in resources, that was too much to spend even on the army. Try to introduce some sort of AI-based conflict if you don’t expect to have a thousand users at the launch date, just in order to keep the game interesting.

Ninja Tower (despite it’s technical excellence) failed in the same way: too few players, too few characters and too few maps. Players were forced to wait for a long time before his enemy would be online. Again, I suggest the use of AI bots to keep the game interesting while it ramps up the hype. Or just say: you’re ready to play the real game until you defeat an AI guardian, who could have some quirk that the player would then have to understand how to exploit.


By Piotr Maślanka

Programmer, paramedic, entrepreneur, biotechnologist, expert witness. Your favourite renaissance man.

Leave a comment

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.