Post - Jam


The SAAM Arcade 2021 game jam was quite the journey.

When looking at potential jams to join earlier this week this jam caught my eye. However I didn't see how I would be able to create a game around community, as my mind immediately to games with a lot of interacting elements, which all depend on each other etc. Waaay out of my league. Especially with the week timeframe.

So I decided clicked away to go find another jam which would be more at my skill level. But before long an idea popped up in my head. What if I made a game which consists of connecting colored dots to each other and by doing so the lines you draw between them become an art piece? (I’ve been playing quite a bit of mini motorways, so of course my head went with connecting the same colors to each other haha)

I didn’t yet know how I would even draw the lines. I could spawn hundreds of objects to draw the line and have them check in a chain whether or not they connected to the right colored dot right?

It being late in the evening already, I decided I would give it a go. If I managed to make the veeerrryyy basics of this idea, I would continue and join the jam. If not, no harm done, I could always find another jam.

So before not to long I had managed to draw a single line between the mouses current position and the previous position. I could only draw it for a single frame though, because I used gamemakers regular draw event, no more. So I went on and tried to find something whit which I could both draw the line and have it stay drawn.

The solution? Surfaces. Which I had no experience with whatsoever. Why? Because I didn’t really get them. They are above my skill level.

Or so I thought.

 Nope, they are.

Or are they?

Eh, kinda?

Okay, so basically I managed to have lines I already knew how to draw before stay on screen and not disappear after a single frame. Succes! Atleast, success enough to actually join the jam and call it a day.

The next day, I had a look at the Smithsonian’s current art collection to find art I could base the game off. As I would really like to incorporate the SAAM into the game, big time. I looked for drippings of similar kind of art, but I didn’t have to look long, because literally the sixth piece I saw was bang on! Bradford’s Amendment #8 was exactly what I needed.

I made dots that choose a certain color from a list. I had to find a way to communicate that color to the object drawing the lines however. The solution? Arrays! Which… I also never used before. Eh, this is going to be a though jam eh…

Turns out, array are verry easy to use. I can’t believe I ‘vent used them before! They would have made my live so much easier and my code less like plate of spaghetti and more like… a tomato soup? No… that doesn’t sound right either… More like a…  plate of spaghetti with a few less strings of pasta! Yeah…

Okay, so, anyhow, instead of letting the dots pick a color I let them pick a number. That number gets referenced to check which row of the array needs to be used. From there it checks a column for the sprite it needs to be, aka the color, another for which hex/color code it needs to use to draw etc.

Now if I click a colored dot the drawing object checks which color it needs to draw from the array, and my mouse object saves the number the dot picked, i.e. the color, and when I release the mouse button on another dot it checks if that dots picked number (color) matches. (At this point you would’ve only be able to connect the same colors to each other) Great! The base of the game is essentially done now!

I run the game to test it. All goes well. I open another program/window, for whatever reason, and then go back to the game. It immediately crashes after that. Why? Because the surface I’ve been drawing on suddenly stopped existing!? WHY?

Why? Because apparently when you open another window/program it completely destroys the surface, like it has never existed. So when you go back to the game it can’t find it’s brutally murdered friend that was chilling with him just a few moments ago,.

Fine. Or you know what? Not fine! Not cool dude… But I’ve to find a solution to this or I can burry my game next to the murdered surfaces, r.i.p..

Lucky, I’m obviously not the only one with this problem. I just need to create a buffer which I need to save the surface to. Then, after I recreate the surface, which is empty at that point, I draw the saved surface of the buffer onto the new surface. (Oh, before that I tried to save the surface as an png file to and draw that onto a new surface. Yeah, a computer doesn’t like it when you save your surface as an png file multiple times per second, let alone the 240 times per second I tried to do lol)

Now it’s working again, but the game is, well, really boring. I knew it wasn’t going to be the most engaging game ever, but right now I would rather be that surface that gets, well let’s say disposed of, every time you open another window, than play this game for more than half a second.

So now I made it that you can connect color to the same color OR the neighboring color from the rainbow. Yellow, for example, would be able to connect orange, itself or green. And I added the abillity to connect them in a row/chain, and added the multiplier to encourage players to connect different shapes and make long chains (communities). On top of that I made them shapes. At first as a colorblind-friendly option, but than just as the standard option. That way I wasn’t limited by the colors of the rainbow. Now I could use the colors of the painting it was inspired by! And I could add more paintings! (Next update perhaps)

So after that it was time for the tedious work of adding score trackers, buttons, all that fun stuff. I used several hours to create my own image of the Smithsonian. Yeah, won’t recommend, but by the time I realized that I was in too deep… Then I went on and created some sounds, using the chrome music lab, and I searched for some music that would fit.

I submitted my game about 10 minutes before the deadline. I didn’t get to adding multiple art pieces/levels or actually saving your scores past the session. I will add those later. However, this game took a toll on me, it was quite exhausting, since all of the core mechanics rely on stuff I didn’t know just a week ago. I do like how the game turned out. It somehow makes me feel nostalgic.

I Would love to see your version of Amendment #8! Or any feedback for that matter! What did you think of the game? How could I improve the gameplay?

Get ARTificial

Leave a comment

Log in with itch.io to leave a comment.