This month I'm going to make a game.


Semi-related to the outcome of this month, I have an idea for a game that was way larger than the scope of what I am able to accomplish within a month. That whole game needed a huge backend effort with item shops, account managements, complex scoring structure and balancing.

For this month I figured since I know absolutely nothing about the tool I was using (GameMaker Studio 2) or anything about coding. I decided to start small. Just a simple "15 Puzzle".

This would be a grind mechanic for my overall puzzle themed game and it was a simple enough concept that I was confident in creating it by the end of the month. Well, I completely overestimated how long it would take. I actually completed all the tasks I wanted to do in nine days. So I had another twenty-one days left. I'll get back to what I did with all that extra time later.

The first step was to learn how to use GameMaker Studio 2. The company who makes this engine is very good about putting tutorials in front of you and helping give you all the resources you need to make your game. First they ask what kind of UI you would like based on your ability to code; they have a code editor for the experienced people and a more visual drag and drop feature for people not as familiar with code.

I figured the Drag and Drop (DnD) option would better for my skills, or lack thereof. So loaded up a new file and watched their provided video series based around the fundamentals of GMS2 and the DnD features.



As you can see there is an overall plan for the game, but the green area is what I focused on for this month. To say I completed this month's task I had to make: The Puzzle, Timer, and a Reset button. The Puzzle needed: Pieces, random creation, acceptable moves, and a win condition.


Something that has been very helpful to me was watching other tutorials for the specific functionality I needed, which is basically 90% of the code I have written. One thing that I noticed was all the tutorials were based on an old version of GMS2 from 2014 (five years old at this point) and back then there was no Drag And Drop system. So it was basically useless to use DnD since I just basically have all my actions just execute a code block. If I ever decide to just expand on this game I might as well just go straight code. Which is a challenge for me, because this is the one skills I can't just seem to click.

That's the game I ended up with after nine days. Overall I thought this part wasn't that bad, a lot of trial and error and finding specific lines of code that failed for some stupid syntax reason.

After this I thought that I would try to learn how to do the basics of back-end work: a highscore stored on the site for anyone to try and beat. I thought I found the perfect video tutorial. But after downloading his source file and trying to adapt his prepared and well commented code into my project I just could not figure it out. I spent the next two weeks looking up tutorials from multiple people with similar solutions to creating an ini file to store the data and drawing them out onto a table. But it was just beyond me, I had a week left and I got nowhere. I wasn't going to try to and study to fundamentals of computer science, data architecture, and back-end infrastructure just to have a stupid high score on a simple puzzle game.

As proud I am to have the game "working" as well as it does in just nine days. I'm still bewildered about anything involving code. This mountain will just have to wait another day. Unless I can make a ton of money to just hire someone to do it for me, that'll probably be an easier plan honestly.