I’m a complete novice in all things game design and coding. The idea that I could build a complete game from scratch seemed rather far-fetched. However, I love playing games and like most gamers, I've always thought it would be cool to make my own.
The Fire Jump tutorial seemed a good place to start, given the codeless way of programming with GameMaker Visual; in other words, my only hope. The aim was to follow along the four part series and build an infinite platformer game. At first glance, even this seemed a little out of my reach, but I dived into the step by step guide keen to learn. Oh, and as a new addition to the Fire Jump tutorial there is now a full video series of the written tutorial! Check it out:
The early steps were a simple case of familiarising myself with importing assets, creating sprites and objects and building a game room. Then came the task of making them interact. Thankfully the guide made life relatively straightforward and seeing as actions like “set speed” or “set gravity” are aptly named, getting my player sprite to move and bounce on window ledges was a pretty straightforward process.
Then came a challenge: making the windows move down the screen as my player moved up. For this I had admittedly had to copy the instructions, I really didn’t understand why I was using those actions or how they worked. However, by persevering I had successfully reached the end of part one and as I bounced my player up the never ending cascade of windows, a feeling of achievement emerged.
I'd been working for little more than an hour and I had something to show for it: an infinite platform game (well the bare bones of one anyway).
Moving through to part two of the tutorial I couldn’t help but feel like the information wasn’t sinking in. The window challenge was still bugging me, I was perfectly capable of copying the variables into actions but I felt a bit frustrated that I couldn’t figure out why these had the effect they did.
Then it finally happened. Later in the guide I was programming the trapped civilians for my hero to save which required a return to my problem event. Once again I scratched my head and as I linked the civilian sprites to the windows and reviewed the script and there it was, something had clicked!
Finally I understood. Something which made utterly no sense to me a few hours prior was now crystal clear.
I felt a greater sense of accomplishment at this eureka moment than any other. Understanding why the screen was moving down is probably a small learning but it was important to me. In a way, that’s what following the tutorial brings: little learning victories. I was never going to immediately understand game physics and I'm still far from an expert, but this problem was solved and for me, that was a win.
Getting to grips with game design
As the tutorial went on, I found things started to flow. Adding details like fire obstacles or the ability for my player to shoot foam meant revisiting similar object events, adding new actions to the scripts to ensure each sprite interacted in a specific way. This is where my learning experience really thrived, for I rarely understood the script before using a feature a few times.
I can’t lie, there are still a few sections which filled me with confusion and sadly those eureka moments are yet to come. I certainly spent longer on creating particles and creating a menu sequence than I should have but I got there in the end! Over the course of a weekend I had a fully functioning game with a menu, sounds, obstacles to avoid, civilians to save and high scores to be set.
I made a game!
So there you have it, I made a game! It might not play as smoothly as it should: my windows may spawn too close at times and my civilians jump at a strange height when rescued but who cares, I made a game!
I’ve come away now with the knowledge to take a sprite, give them a world to move in and objects to interact with. I couldn’t recreate this alone, I still need tutorials, guides and help from the community but for me this is the perfect start and ultimately I can only get better from here.
What’s next on my game design journey? Who knows?
But if I can make a game, so can you!