Global Game Jam 2018 ran from the 26th January 2018 – 28th January 2018, during which I worked with my game jam team, Volatile Element where we created ‘Migraine’:
You, the player have a migraine and you need to find painkillers, a cup and some water. Simple enough? Not in your modern day office filled with ear piercing noises!
You can view a preview of the game below or play the final game jam version of Migraine online or via download here.
The past few jams most of the Volatile Element team have had other commitments so only myself and Denholm Munn have been able to participate. However! One of the original programmers of the team, Matthew Moore was able to make it to #GGJ18.
Matthew and I worked on the code as normal and Denholm worked on the art assets, even though the diversifier ‘Upside Down’ (One or more game systems programmed by an artist, major art assets produced by programmers/coders) was very tempting.
In Migraine the player’s migraine is always getting worse and will slowly worsen over time. Getting close to sources of sound, jumping or running will dramatically increase how quickly the migraine becomes unbearable.
We added a few complications to make the game harder. Sometimes there won’t be a ‘sound-free’ path for the player to take. So they’ll need to find the route with the least amount of sound sources, or decide to run through the sounds.
We also added the requirement for the player to have a cup before they can collect water. This sounds simple enough as they’re heading to the kitchen but unfortunately (conveniently) the sink is broken; so the player needs to go back towards the centre of the office to find a water cooler.
What Went Right
We revisited the post processing stack for Migraine as we felt it was the best way to convey the sense of having a migraine to the player. Our intent was to have the screen become redder (among other effects) while the migraine was worsening at an accelerated rate but due to time constraints we left it as a intermittent animation.
I feel as though (and hope) Git is something I can add to the positive of every game jam postmortem.
As the past few jams have just been Denholm and myself, our use of Git has been very limited. Used only by me and only committing when we had a successful build or major feature complete.
With Matthew returning he and I needed to use Git together, making sure we ended up with as few merge conflicts as possible. 12 game jams in and a lot of research later we believe we have a workable solution to using Git with Unity which I plan to write a blog post about at some point but for now, some pointers:
- Commit often.
- Yes, even that little bug fix.
- NEVER work in the same scene as another person at the same time where possible.
- Always try and work in your own scenes.
- If you can replicate your work without the scene, delete it when you’re finished to keep your project clean.
- Allocate a single member of your team to work on the main game scene, all updates and changes should go through them.
- Use feature branching.
- As tempting as it is to spend 8 hours working on a single branch you will save more time creating and merging branches than trying to fix 47 merge conflicts when you’re tired.
- Agree on a naming system, I personally like initials_feature_description, so: jb_main_menu as an example.
- These branches should be merged into another branch, ‘development’ which is then merged into your ‘master’ branch.
- Finally, prefab EVERYTHING.
What Went Wrong
One thing we’ve always struggled with in our game jam games is the level of difficulty. We always try to strike a balance between playability and presentability which always has a negative impact on the final game, mainly being too easy.
This presents itself in Migraine as being able to sprint through the majority of the level to win quickly.
We also had the opposite problem of the game being too difficulty in certain instances, although this does stem from the procedural nature of the game and a few bugs which I’ll go into more detail below.
In our next few game jams we need to allocate more time to test for difficulty, investigate adding more debug commands and easy to change parameters for last minute tweaking.
Surprisingly there were very few game breaking bugs (that we were aware of) in the final version of the game.
The only noteworthy bug we were left with was sometimes a noise making prop would spawn too close to the player and cause them to die during the intro cinematic. Thankfully this was a very rare occurrence so we focused our time on other areas.
Reflecting on the game I think we created a well polished, short and fun game; one that I think we might revisit in the future. We needed to spend more time fine tuning the difficulty which is something we’ll try and work on over the next few jams.
The jam process itself went really well. Our use of Git seems to work really well for us now. The next step will be to try and get art and sounds included in the git flow rather than exchanged via memory sticks throughout and at the end of the jam.
You can download or play Migraine online here.