Room Of Doom

discroom hammerGIF lazorGIF throwGIF roomOfDoomSequence 01_1
Gamejam

I made this game during another internal game jam at Bossa, where we had two days to throw something together. Here's the original pitch email I sent around:

Pitch: "Based on THE blockbuster of the last century—CUBE (anyone saw that? No...? Okay).

In short, it’s WarioWare meets Fall Guys, and I’d probably been playing too much Disc Room at the time—sorry.

Four (?) players need to find the exit from a cube made up of several tiny rooms, each with a randomly generated deadly minigame. As you enter a room, the game is defined by two random spinning words: an action and a target (like 'Dodge the blades'). The key is figuring out what you’re supposed to do before you die.

Each room has four doors. Dead players can vote on which door to take next, but the last surviving player gets the final say. Just like in the movie, the room’s difficulty is based on its number—you can see it on the outside. Non-prime numbers are safe and have power-ups; prime-numbered rooms are deadly. I think that’s how it worked…

Chicken Dinner goes to whoever dies the least by the time you find the exit."

I started with a simple room setup inspired by Disc Room. The first working prototype shows a room where spinning blades fly around, immediately taking out one of the players.

After that, I added more variety, like a room with a giant spinning hammer and another filled with lasers you definitely don’t want to touch.

I also prototyped a few interaction-based minigames, like the throwing challenge, where players have to grab and toss objects while avoiding hazards.

At the end of the jam, I cut together a trailer to show the whole thing off. You can watch the final result here: Room of Doom trailer.

ezgif-17e6a1d75244f8 GIF 15-06-2021 15-42-02 GIF 15-06-2021 18-51-31 GIF 16-06-2021 10-10-19 GIF 16-06-2021 15-27-02 GIF 16-06-2021 15-57-35 GIF 16-06-2021 18-53-55 GIF 17-06-2021 12-45-41 GIF 17-06-2021 15-25-27 GIF 18-06-2021 12-22-29 GIF 18-06-2021 12-32-51 GIF 18-06-2021 13-03-00 GIF 23-06-2021 16-43-36 GIF 23-06-2021 17-22-31 GIF 24-06-2021 14-23-13 GIF 24-06-2021 14-24-35 GIF 24-06-2021 14-35-20 GIF 24-06-2021 16-43-18 GIF 24-06-2021 18-23-56 GIF 25-06-2021 14-32-55
Character Controller

The game felt great from the start, so we moved straight into full production. I built a brand-new character controller from scratch—something responsive, easy to tweak, and satisfying to play. It all started with the jump: simple, consistent, and reliable. No matter the situation, the player always hits the same height, as shown in this jump test.

From there, I focused on slope handling. Adding a subtle bounce gave movement a nice flow, visible in this slope close-up. Curved surfaces like halfpipes required the controller to align smoothly, as seen in the halfpipe traversal.

Moving platforms were next. The player stays grounded and synced to them, even when they shift or rotate—this moving platform demo shows it working in action. I then layered in bouncers and wall jumps, combining movement into more complex chains. Here’s a bounce and knockoff test, followed by wall jumps on spinning platforms, and a full combo run in this halfpipe, walljump, and bounce demo.

To improve responsiveness, I added a jump buffer, shown here in the jump buffer demo. I also exposed key variables like gravity, jump height, and fall speed in a settings menu for live tweaking. You can see those in action here: jump height and gravity, jump force, ride height, and fall multiplier. We also built a preset system to save and load configurations, which you can see in this preset demo.

For visuals, I added procedural legs to make the movement feel more grounded, shown in the procedural legs close-up. Dashing became a key mechanic, letting players launch themselves and react to surfaces dynamically. In this dash knockback test you can see how hitting a wall reacts, and here’s a general dash ability demo.

Once everything was polished, I integrated the controller into the level and ran gameplay tests, like the one shown in this in-level demo. For polish and debugging, I added trail FX and movement visualizations, visible in the trail effect close-up and debug trail demo.

Finally, I experimented with special surfaces like sticky walls. Players could dash into them and slowly slide down instead of bouncing off. It added another traversal option, shown in the sticky surface test.

bladeGIF onklinskeGIF pressFGIF RODbestoffGIF ROD_Sequence 02
Final Version

Later on, we tried to find a strong theme for the game and decided to go with an Indiana Jones vibe. Each player became an adventurer trying to survive deadly rooms inside a trap-filled temple. We focused on reskinning the game and added more temple-themed hazards, like spinning blades and arrow traps, which you can see in the temple trap showcase.

We also added an online mode so you could play with friends, not just locally. The online multiplayer demo shows how we integrated matchmaking and lobby flow into the game.

The game flow demo runs through the main menu, lobby setup, and entering the first dungeon in the temple version. We also put together a best-of clip showing the chaos of up to eight players trying to survive at once.

After testing, we decided to return to the original lab theme, since the temple version wasn’t received as well as we’d hoped. But this time, we polished everything—added giant monsters, trapdoors, and deadly green lab water. I recorded and edited a new trailer featuring the updated lab version, which you can watch here: final Room of Doom trailer.