“All Bets Are Off!” — A GMTK Game Jam Postmortem

Jay Kozatt
9 min readJul 18, 2022

(Gameplay video courtesy of John Bone, the guy behind the art of the game)

Today I’m writing a more blog-y kind of piece than usual, since I wanted to talk about my first experience at a game jam, ever. And woo… it was a 48-hour one at that.

Long story short: It was absolutely insane.

I’ve never crunched as hard as I did for this game, ever. But well, let’s dive into what happened, shall we?

Going into the Jam

For this occasion, I was joined by my little buddy, John Bone (previously referred to as ‘Cid’), and by an old friend we made on the studio where John and I also met: Ram99, a quite prodigious musician in my own opinion.

When the GMTK announcement for the jam came, John and I quickly jumped into the opportunity. Since it was a nice chance to shake things up, after things had gotten so stale with our main flag project. And when Ram came over and asked us to join just a week right before the jam, we were all set.

Had Ram not appeared when he did, it is very unlike that “All Bets Are Off!” would have gotten any audiowork done on it at all. Specially in hindsight, after seeing strapped up for time I was while working on it.

As far as I know, none of us had ever joined a game jam. At least, not to a 48-hour one. So, it’s far to say that we were a bit under-prepared.

After seeing how the voting and rating has been going, I think we’d have had a better chance of standing out had I prepared my Unity installation to build for WebGL. But alas, I did not… and it would have been far too risky to go into it blind having never compiled a project for WebGL, ever. So we had to make do with a standard downloadable & executable game, instead of the far superior for this format, in-browser game.

I’m proud of the result of our efforts, and I believe we made a genuinely fun game that I’d even love playing in bursts had I not made it myself. So, I reckon if I had prepared to build for WebGL, we’d have had far greater reach than what we’re probably gonna have.

That is my only real grievance.

Day 1: An Underwhelming Theme

So, hyped up as frick, we sat staring intensely into the screen while we waited the theme announcement. And when it finally came, I was… underwhelmed?

The theme was:

ROLL OF THE DICE

And I was all like: “Jeez… this feels… restrictive? And also, kinda boring to be honest.”

It felt like the theme was forcing us towards the idea of ‘randomness’ as a central mechanic, and I wasn’t liking it at all. I thought that if I allowed us to embrace ‘randomness’ as a core concept for our game, then it would turn out uninspired and same-y when compared to the vast majority of games that people would produce.

And so, I resisted.

Like, really hard.

For 2 hours, I discarded every thought that dealt with randomness as its central gimmick, and focused on the ‘rolling’ part of “roll of the dice”. That seemed to me like the word that held the most potential.

Then, I thought about reinterpreting the meaning of dice, as in “to slice (normally into cubes)”. And so, my thought process started to dance around the idea of cutting.

Having set myself on the idea of dice, as in ‘slice’, my mind went to a rolling Jack the Ripper, that would go by, rolling as ball, slicing people into literal dice. And the movement would be something akin to Sonic the Hedgehog. But my team didn’t seem convinced, and the more I sketched it out, the more it seem unfeasible to do under our time constraint. So I ditched it, and started to play around with the meaning of ‘roll’.

A quick search into Google revealed:

Roll — verb. 1. move or cause to move in a particular direction by turning over and over on an axis.

That gave me what I needed.

I’d have to stretch pretty far the meaning of ‘turning over and over an axis’, but that gave me a lead.

I started playing around with some old broken headphones, and spun them around in the air, just to then stick out my finger, causing the cable to quickly wrap around it.

I finally had something that showed real promise, and went to sketch it out. I just needed to pitch it convincingly to my team, and we’d be set.

(Yeah… those are Among Us astronauts… They are easy to draw)

A badly drawn picture and a pitch later, we’re all on board.

However, Ram stated that it’d be a waste not to do anything with the value of the die, and I agreed. But also rebuked that doing so would be more of a supporting mechanic and therefore, we should be prepared to make do without it.

And so, we began to work.

Let’s quickly skim over some of the pictures from that day:

And so we got to the end of day 1.

Ram sat this one out, since he need to first see how the game would look, to get a feel for what he needed to compose.

But by the end of day 1, I had already managed to get a die spinning sort of adequately, and the entangling of the wire with its subsequent tackle were already implemented too in some capacity.

I was really stressed that, by the end of that day, not all gameplay was fully operational, and so… I had failed to accomplish the milestone of having working gameplay by the end of the first day. I was beginning to realise that I was probably behind schedule, but went to bed anyway, with the best disposition not to make of this a death march.

But well… Not knowing how much time it would take for Ram to come up with a music track, I decided to make a build and drop him a screenshot so that when he woke up, he’d be able to start work ASAP, by having actual hands on experience of the product.

I did so, and then went to bed.

Day 2: The Death March

This day saw me coding furiously, since there were a ton of features yet to be implemented, and I’d have to really rush if I wanted to still have enough time to implement audio and also be able to sleep ‘early’.

John was out for most of the day since he had a birthday to attend to (kids need to be allowed to be kids), but since he had already done most of his work on day 1, it was fine.

Ram, on the other hand, really surprised me by coming up with a track in record time. I had never experienced a musician turning up with a basic track that fast, and it sounded amazing!

It was only 35 seconds long on his first iteration, but it was really well polished. Yet he said he wanted to make it at least 2 minutes long.

And so, after around 8 hours he came to me with his final version, which ended up 1:21 minutes long and is the one you got to hear on the game.

But no need to force things. If it works, it works.

So I got him to help me hunt for sound effects, since he now was free. Gave him a list and sent him on his way, while I focused on coding everything else that was left (which was still a lot). And he came through most superbly.

I couldn’t have asked for better assistance. The sounds he got me were pretty much perfect by themselves, and by the time I got around to implementing them (which was on the morning of the next day), I barely had to do anything to them on FMOD Studio to get them to fit nicely.

I honestly am really pleased with the work he did. He did astonishingly!

And so, he freed me to worry only about the code, which was getting harder by the hour due to fatigue from the previous day.

He went to bed, and I continued deep into the night.

My aim to finish up before 4AM fell short, and so I kept working hard straight into the morning.

When my focus started to fail me, I wrote down a list of things left to do, as to free up some mental power that was kept busy remembering what needed to be done.

And so, I slowly but surely, watched video tutorials to skip the step of coming with algorithmic solutions, so I could go straight to modifying them for our needs; and in that way, I managed to tackle item after item on my list, with astonishing speed unlike anything I’d had shown in quite some time. And then…

8AM — The code was all finished. Only the audiowork remained left to implement.

Deadline for the jam was 1PM.

I could definitely make it in time… If I wasn’t so goddamn tired...

And since I’d have stop the music that infused me with vigour and adrenaline all those previous hours, I was bound to feel the heat right then and there.

Yet here I was…

So close to getting the game finished…

I just needed to push a tad bit more.

And so I did. One hour later, I had finished setting up all audio in FMOD Studio, and it was sounding most excellent. The balance seemed to all be right.

One more hour later… 10AM…

  • “That’s it! It is over… I… finished a game… I feel like I wanna die, but I did it. I finished a game.”

Spent a couple more minutes making a build to upload, writing up the description for the page, taking screenshots and creating a rudimentary cover image, and by 11AM the game was up.

After such a violent struggle, I had managed to finish my first game ever, and during a 48-hour game jam at that.

I cannot describe to you how proud I felt at that moment.

My first finished game, ever! (Not my first project ever, though)

And all done in less than 48 hours! AND HECK! IT WAS EVEN A FUN GAME!

Jeez!…

Loving all the dopamine I’m getting.

(Here’s the result, if you wanna see for yourself)

After reflecting upon all that, I feel like I might have been able to do better, and avoid the death march I had on the last day. But through it all, I can’t really think what I could have done differently.

Except for maybe, adjusting my scope which thanks to John had already been reduced, due to the fact that he was only gonna be available on the first day. But I think that goes without saying.

My scope almost went too far, but I managed to pull through in the end at huge expense for myself.

So I hope that for future experiences I do better.

And also, I’ll have to look into the WebGL thing for next time, so that my next jam’s game has a better chance of standing out in the crowd.

See you all, next time!

--

--

Jay Kozatt

Indie Developer. Writing about my career and life insights as a mobile games developer.