Dreamcatcher

Dreamworld Bullet Hell

Summary

Dreamcatcher is a single-player bullet hell game demo developed for the Game Zanga 14 Game Jam, hosted in Lebanon. Drawing inspiration from titles like The Binding of Isaac and Deltarune, it is about a man whose dreams seemingly come to life, and must fight through various levels, each full of everyday household items come to life.

BACKGROUND

Our team signed up for the Game Zanga 14 Game Jam (running between 13/08/2026 - 16/08/2026), with the theme of the jam being ‘Dreams’. We discussed what we wanted to develop two hours before the announcement of the theme, and we all decided to make a ‘bullet hell’ game, since none of us had ever done so before and we wanted to challenge ourselves. Once the theme was announced, all we had to do is plan out how to tie the ideas and theme together, and as such Dreamcatcher’s development began.

The idea for inanimate household objects being the enemy the player fights came about while we happened to be talking about Deltarune, which similarly features NPCs and battles against enemies that are ordinary real-world objects. Additionally, certain aspects of the game (such as the Tooth boss) drew inspiration from real-world statistics about commonly occurring dreams and nightmares, and the upgrade system was inspired by the events of a lucid dream one of the developers had, where making different hand gestures gave them different abilities in their dream.

My Contributions

One of my main contributions to the game was procedural level generation. Inspired by The Binding of Isaac, I wanted the game to feature a series of randomised levels, ensuring no run was the same as the previous one. Once I had a prototype for the level generator, I pitched the idea to my team, and we agreed to implement this system into the game. Levels consisted of pre-made rooms and preset enemy spawns, which were all randomised. For generating special rooms, such as the Boss room, I created a custom tree data structure (since Unity does not support trees), and assigned the possible spawn locations of special rooms based on their distance to the root node, i.e. the room where the player starts. This was done to make sure that the player wouldn’t have to immediately face that particular level’s boss immediately upon spawning, as well as not receiving the maximum amount of upgrades before having even faced one enemy. This, of course, also encouraged the player to explore the level fully, ensuring they interact with our product as much as possible.

I was also somewhat involved with the game’s level design, as well as its visual design. Granted, due to this game not being fully finished and rather just a playable demo, the levels were not nearly as detailed and fleshed out as I personally would have liked them to be before having to submit the game for review. While we did have enough time to produce a playable version of the game, in my opinion we made the scope of this project too big, which resulted in us having less time left over to flesh out the game’s visual and audio aspects, with us mostly focusing on the gameplay aspect.

Contributors

Ivan (Gameplay Programmer, Level Design)
Elie (Gameplay Programmer, Music)
Hussein (Gameplay Programmer)
Antonio (Gameplay Programmer)
VK (3D Artist)
Cosimo (3D Artist)

Proposed cover art for Dreamcatcher

Household objects become enemies

‘Devil’s Horns’ unique hand gesture, which allows the player to shoot three projectiles at a time.

The House

Hand Upgrades - each finger has an individual buff, and certain gestures give you special abilities

Get in touch with me for a full demo