Monday, 9 September 2013

GameMaker for a gamedev start up



The game development tool is probably one of the most important aspects from the job. I love coding, tinkering, making it reusable, creating components and modularizing code.

As a strategy move I decided to go for Game Maker as our tool and here is why:

Being a start-up and self-funded means that our budget is very low (almost nil) which means that we can’t afford too much in the tool itself. Not only that, we need to move fast. It is not like we have 6 months to build a single game. We also need to iterate fast, we may start a game and find out that was not exactly what we think it would be.

I got the free version and I was amazed with how simple it was to get something up and running. They made the things very simple… I built a quick demo in a day which would take me a few days in other tools – just to catch up with the reference.

What did attract me the most on Game Maker was the out of the box features that it has: advertisement, in app purchase and analytics (and other stuff) – but those three definitely got my attention. From my research at the time, any other tool I would have to build my own or pay for it.

But it is not a bed of roses. Their programming language is procedure (function) oriented. Although you can create “objects” (entities), these are more data holders than anything else. You can set behaviour and inherit that behaviour but you can’t create functions inside of that object and call from somewhere else (there are ways around it, but is not elegant nor maintainable).

The point above was big downside for me as a developer where I couldn’t create my logic and reuse in various place in an intuitive and clean way (as in most object oriented languages).  

Overall it is a good tool, gets the job done in an easy and quick way. Specially the deployment. I was very happy to see versioning and with one click I created an Android package – that worked!

I have been using for the last 3 months and am happy with it. So far we created about 3 games, one has been canned, one is half way and seeking for funding and the third is my personal project.

Summary:
  • Not too expensive (maybe not anymore - as they just nearly doubled their price - ouch!)
  • Easy and quick to create 2d games
  • Good set of base out of the box features
  • Not the greatest programming language