Ritual Breaker: A GGJ Game For Four Druids And Two Traitors

It’s been a few years since the GGJ whose theme was “deception” – a theme that we, back then, utterly and completely ignored. The only way to make up for that (I assume) is to use the theme in another GGJ! So here, after 6 years, my honor as a jammer is finally restored. I proudly present our game:


Six druids have come together to perform
the yearly Super Important Ritual.
But unbeknownst to them, two traitors
have infiltrated their ranks!

Complete the rituals, but watch out for
those which fail – and who participated!

Watch your fellow players!
Identify the traitors!
(Potentially) Save the world!

A deceptive platforming game for four druids
and two traitors with XBox360 Controllers.

GGJ Page with Windows build

Ritual Breaker (Global Game Jam 2016)


  • Elise Terranova: Art, Game Design, Hat Design
  • Heiko Weible: Programming, Game Design
  • Tobias Wehrum: Programming, Game Design, Sound Design

Used assets:

This GGJ was a lot of fun and for once, I was actually happy with our core concept right from the beginning! After the initial idea from Heiko, we settled really fast on the rough plan: Some sort of single screen game where each of 6-8 players controls an avatar and accomplishes tasks with the other players. There should be a lot going on, so while the traitors try to sabotage the game, everybody should be already distracted – and even when somebody fails to do something, it might be because of difficulty instead of because of them being a traitor.

Of course, the development wasn’t such a smooth ride. Like every jam, phases where it went really well and phases where I felt like the game was going nowhere alternated. I particularly remember the first night right before sleep when I frantically wrote down seemingly brilliant ideas for how the game will not only work, but be perfect – and then the next day, when I implemented one of the ideas, only to find out that it and all of the other ideas were flawed and I had no idea how to fix it.

I suppose it’s obvious to anyone who ever tried it, but: It’s surprisingly hard to make a good traitor game! The game has to be interesting for two asynchronous sides, there is a lot of hidden information going on and both sides need meaningful actions. And ideally, every action should also help to identify who the traitors are or allow the traitors to obfuscate their identity.

In the end, after a lot of testing (thanks to all our enthusiastic testers!) and iterations, we arrived at the current concept: Six players, two of them traitors who don’t know each other, but know that they are a traitor. Then a series of three-player-rituals pops up, and players can go into them and “complete” them by pressing the A button – or fail them by pressing the B button if they are traitors. If 11 rituals are completed successfully, the players win. If 9 rituals fail, the traitors win. And if the time runs out before either happens, the players win if they can identify both traitors.

While the game offers a bit of strategy for the traitors (e.g. they can decide how long to play “good” and wait until the other traitor failed some rituals; blame somebody else for a failed ritual; wait until there are lots of rituals which only their participation needed and then fail them all), they might still struggle to successfully deceive the players because the wrong rituals spawn or they feel like they don’t have any good options. The ritual-spawning balancing was something we couldn’t properly balance before our time ran out.

In the end though, while it is a bit flawed, I am proud of the game we made there and I definitely had a good time at the GGJ 2016! Thanks a lot to the organizers, our relentless testers and my fellow team members Elise and Heiko for being such a joy to work with! And thanks to Wooga for letting us stay at their great offices here in Berlin.

PS: Here is a screenshot and a few slides that Elise made to explain the game:

screenshot2-howto 3-traitorordruid 4-controls 5-vote

Leave a Reply

Your email address will not be published. Required fields are marked *