How I made my first game: Part Deux

Ludum Dare #38 Post Mortem – Part Two

Click here to read Part One!

Ludum Dare is split into two parts: The Jam and the Compo. The Jam lasts 72 hours and is fairly open and flexible. The Compo is a bit more challenging, only 48 hours and you must share your source code at the end of the competition.

I had 2 reasons for choosing an easy-to-create game:

  1. I had an optometrist appointment Saturday morning so although I got up at 8am to eat a good breakfast, I dashed out to learn how to jab contacts into my eyeballs and didn’t get home until noon.
  2. I had a commitment after work on Monday which meant I would have to submit on Sunday (48 hours), although I would submit for the Jam because my source code would mostly come from the aid of tutorials!
A little PDL never hurt anyone

I’m not really into cowboys, so I did a bit of planning before I started coding. Admittedly my game development knowledge is lacking, so I attacked it like any other coding problem and detailed what I thought the game loop might look like.

First things first – I hate DnD

Dungeons & Dragons is great, Drag is great, Death Drops are great – Drag n Drop… mmm not so great. This is something I avoid when making mobile apps in Android Studio. The idea of drag-and-drop is to add ease and simplicity to a process, however I find the underlying code can be messy and often it’s more frustrating and encumbering than quick and easy. I felt confident enough in my junior programming skills to avoid the DnD feature of GameMaker as much as possible. Learning GML (Game Maker Language) would be a great way to cross “Learning something new” off my goal list.


After searching for a few “matching game” tutorials, I stumbled across this one that met my needs perfectly. I coded along while watching the video, altering things as I went and making tons of comments. I did not pause the video and test the code… this was my first mistake – got all the way to the end of the video and pressed “Run”… it didn’t run? 🚷

I get knocked down…

Well I was stuck for quite a while! This was quite the dilemma, I had been on a roll but now? Stuck! Of course it was bound to happen, but I couldn’t help but feel a bit hopeless with time running out.

I considered the pivot! Should I scrap everything before I make any art and use Twine to create a story based game? Should I start from scratch with the tutorial again? I needed a break.

But I get up again!

I hopped on the bus to my friend’s place for moral support & discovered the GameMaker debugger! Bless. 🙏

My while loop was the culprit. Control flow wasn’t flowin’. Also, my brain does not compute x & y coordinates very well. In fact my wild guesses as to where to put things and how many to put where were close but wow I really should have taken a moment to draw a grid and figure it out. Lesson learned!

Speaking of lessons learned – I learned a LOT during this process! For example, I got the chance to implement a 2-dimensional array, which previously I had only experienced in a final exam: coding with pencil and paper. Really fun to see it work its magic. I’ll dive into this more in the next post.

It’s alive!!!


With the game running I was back in action and stayed in a groove until around 9pm. In that time I whipped up some sprites and a nifty “animated” background in GIMP. I tweaked the logic so the game was definitely playable as-is, which meant I could spend the rest of the time with assets. I stuck with my first iteration of in-game art: aka WYSIWG or whatever happens, happens art. 😉

I took the rest of the night off for a hearty meal and video games, of course. Slept in the next morning, and got back to work around 10 on Sunday. Throughout the afternoon I alternated from designing the start and winning screen, to recording audio sound effects with Audacity.

Match the Fleas Ludum Dare

👏 The game was finished & submitted, with time to spare! 🎉
 

Tune in to the third post of this 3-Part retrospective, where I share the finished game and reflect on what went wrong, what went right and what the future holds!

2 thoughts on “How I made my first game: Part Deux

Leave a Reply

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