This weekend was the GMTK 2020 Game Jam, a 48 hour competition to make a computer game to a common theme with a focus on game design rather than aesthetic. It was organised by Mark Brown, creator of the Game Maker’s Toolkit youtube channel and was the third such jam organised. It was also the largest game jam ever recorded by the game hosting website itch.io.
I’d previously sworn off of computer game jams. This was mostly due to my experiences with one of the other big, popular game jams Ludum Dare (officially pronounced luh-dum dah-re) where the theme is voted on before the jam from user submitted entries. This seems to be a great way to produce bad themes, and I’d gotten increasingly frustrated with the ones chosen. It also didn’t help that there’s a definite slant towards what Ludum Dare judges like towards faux-8-bit aesthetics and 2D games and that’s just not what I want to make.
Mark runs a discord server for the patreons of his channel, and it’s one of the nicest places on the internet. It’s a weird mix of game developers, designers and lay people that just works (the $1/month barrier to entry also almost certainly helps). I missed last year’s jam, but set myself the target of joining this year’s jam because having watched last year’s go past and the generally wholesome nature of the community (and importantly there wasn’t the same slant towards the faux-8-bit aesthetic that I disliked so much about Ludum Dare) made me rethink my ban on jams.
~
At a little after 20:02 BST, the theme was announced for the 2020 GMTK Game Jam via the medium of a youtube video premier. “Out of Control” was the theme, chosen by Mark some time before and kept secret. Some small areas of the GMTK discord had been opened to the public so that anyone could join the various game jam channels and those channels had very quickly become almost entirely unusable. There was a small patreon-only voice channel but otherwise I felt quite disconnected from the jam community.
One advantage of the Ludum Dare theme voting system is that by the time the jam starts you know all of the possible options for the theme, and traditionally I sat down on the Wednesday before and thrashed out at least two ideas for each theme so that once the jam started I wasn’t just staring at an empty IDE. I had been concerned that I’d have this issue with the single curated theme but I needn’t have worried.
Very quickly I settled on two ideas:
-
An RTS set in the pike and shotte era where you can only control units near your commander, probably from a 3rd person perspective from the commander itself.
-
An FPS on board a space station where a person printer has gone haywire and keeps printing new clones, some of which repeat your previous actions.
The first idea felt more achievable, but it also felt like almost everyone had had the same idea and Mark had made it very clear that innovation was meant to be a big factor of the judging criteria. The second idea had the initial problem that I wasn’t entirely sure how the game would actually work but I settled on an initial concept that you’d have to work your way through an environment to fix the spaceship in a adventure game puzzle style whilst your clones mess stuff up.
A giant technical challenge lurked behind the innocent concerns about the core game loop. After quickly abandoning doing my own “physics” for the player character and just using the Unity physics engine I build a simple input replay mechanism to produce the clones. I recorded the start and end times of every player input and replayed it with the same code for both player and clone in the hopes that the same inputs in the same order would produce the same results.
Nope.