July 2020 I participated in my second "game jam" - defined on the GMTK2020 game jam website as "a 48 hour game making marathon, focused on design, mechanics, and clever ideas." This was my first time building (and finishing!) a game by myself - everything except the audio was created by me within the game jam weekend. It was a ton of fun participating in the jam, and a great design excercise.
My game ranked #361 Overall out of a whopping 5,388 total entries.
Here was my process for designing and building the game. You can play the game here on my itch.io page. The game was built using Godot Engine
The theme for the game jam is typically given right at the start of the clock, which means ALL game design is done during the jam. The theme for this one was Out of Control". I feel like this theme is deceptively difficult to do well from a game-design perspective. Your brain may immediately go towards removing the player's control over their character or the game itself, but doing so can easily lead to a frustrating and/or boring player experience.
My approach for these Game Jams is to spend the first hour or two coming up with as many ideas as possible - even if they are unrealistic or not fleshed out at all. Here are some of the other ideas I had that I chose NOT to use:
Eventually I settled on an idea I had labeled as "Wacky Weapon" which involved a giant sword that you could throw, but you couldn't control where it flies and it hurts the defenseless player as well. I liked this idea because it fit the theme without stripping all control from the player. It forces a risk-reward balancing game of leading the enemies into the flight path of the sword without letting it hit their player character.
After getting a quick prototype working with a moveable player character and a basic enemy that chased the player around and hurt them on collision, it was time to design the star of the show - the Weapon. I needed a way to "activate" the sword without taking damage (since I didn't want the player to be able to control the weapon, but also wanted it to damage him/her, there was a risk the weapon would fly straight for the player as soon as they throw it). My solution was to have a brief activation phase where the sword would fly to a random point X distance away, and rotate around until it launces in a direction.
Activation phase, moving phase, rotating phase... since this was a computer-controlled character, it made sense to give it a simple state machine.
It took a good amount of tweaking all the numbers in order to get the game mechanics to "feel" right - enemy movement speed needed to be slower than player speed for it to feel fair, but when they were too slow or too quick it became difficult to bait them into the swords trajectory. The sword also needed to do enough damage that it felt impactful and scary to the player, but not so much that the game was over after getting hit once or twice.
Once the game felt pretty close to right, I created a couple different connected rooms for the player to progress through that gradually got harder and harder to complete without taking damage from either your sword or the enemies touching you. The player is locked in the current room until all enemies are defeated, after which the sword becomes peaceful and the next room is unlocked. The game is won after beating each room, with the last one featuring a LARGE enemy that moves very slowly, but spawns the smaller, basic enemy at a fixed interval. My philosophy with game jam games is that they should be easy enough that the player can beat them on their first or second try - any more difficult than that and you risk the player getting frustrated and moving on to the next game. Participants are incentivized to play and rate as many games as possible after the jam, so average player retention levels are already lower than normal.
The spirit of a Game Jam is to have fun, so I added some fun bits as well. I gave the player's character a funny little running animation, like he is terrified of the giant sword that is flying around. I got a lot of positive comments about this, so I'm glad I did it :) I think it was refreshing and also thematic to have a character that didn't look like he was in control of the situation.
Around the same point I built the function to spawn enemies into the room for the final boss, I also had a silly thought cross my mind - "what if I spawned a bunch of swords and they went crazy?". So I added it at the end of the game as a "bonus" level. A TON of swords appear, one every couple seconds, in the activated state. It was a hit with the players that got that far, some even leaving screenshots in the comments as their trophy!
Overall, I was very pleased with my submission to the Game Jam and I look forward to building on the concept a little more at some point. One of the features that didn't make it into the final submission due to time constraints was an "upgrade" mechanic, where you could improve the characteristics of the sword, such as damage, movement speed, or number of attacks when active.