Recently I’ve had a few ideas for games I would like to make, and with so many tools available to help you make games I wasn’t sure where the best place would be to begin. To help me decide I thought of a simple puzzle game I could create which would help me get an understanding of what the various environments are like. In this game a grid would appear which contains a number of different colored gems. The player could then swap the color of the gems in order to make lines of 3 which would cause the gems to dissappear and be replaced by more. Every time the player made a line of gems they would score some points.
As I had recently acquired it thanks to Humble Bundle, I decided to try Game Maker Studio 2 first. Created by YoYo Games it provides a fully featured environment in which to develop games. With a drag and drop interface it aims to help you quickly and easily create prototypes or even complete games, but what was it like to use?
Eventful – As you would expect with a game, a great deal of it is driven by events. In this case, the user pressing buttons on the keyboard to move a cursor around the screen. GameMaker really makes it easy to add an event to an object, and then add some logic for what happens when that event fires.
Spritely – GameMaker does really want to provide you everything you need to make a game. It provides tools to help you create, sprites and even animations for them. While I didn’t delve in to the animation much, I was very pleased that I didn’t need a seperate application to create the images I wanted to use for my game.
Out of date tutorials and lots of them – Learning a new language can be tricky, but when there’s some good tutorials or examples it gets easier. Unfortunately a large amount of what I found was out of date and couldn’t really help me.
Context – When writing a script it’s hard to understand what the current context is. Do I have a reference to the object the script is associated with? Can I access the event that’s been fired? How do I get a reference to another object? These were questions I had, but again struggled to find answers for.
A bit here, a bit there – While it’s great that we can associate pieces of game logic with the relevant object it quickly becomes hard to organise your code. In particular I had code for the “Room”, in this case my grid, which randomly generated the gems on creation. This code was hidden behind a property on a side menu and a number of times I forgot how to get to it!
GameMaker Studio really does make it easy to start making games, but as soon as you want to do something a bit different, you find yourself fighting the framework without a great deal of documentation to support you. That being said it did provide a great sandbox for me to try out some ideas and for that alone I would recommend it!