Berlin Interpretation 1992, was our entry for the 7DRL Challenge 2026. You can play online, for free, here
It’s 1992. A German PC gaming magazine, Dungeon Weekly, is hosting a worldwide tournament. The challenge: complete a series of strange dungeon-crawling “games” they send you. Each one feels familiar, but never quite the same.
Every dungeon is a mutated version of a game, the genre that is coming to be known as “rogue-likes” in the USENET circles… but core elements of these games appear, disappear, and recombine: sometimes the gameplay is close to what you would expect, sometimes the rules are bent in unexpected ways. You’ll have to adapt, survive, while carrying your character’s progress from one challenge to the next, if you want to win the challenge’s grand prize: A 486DX2 gaming computer.
However, unknown to the players, the tournament is part of a massive experiment run by a mysterious Berlin institute studying what truly makes a roguelike fun. As players around the world compete, their adventures become data points in an evolving theory of game design.
But something about the tournament feels… strange.
This was my 22nd 7DRL Challenge; alongside friends Camilo Ramirez, Dinti, and QuietGecko, we made another retro-inspired game, similar in vein to last year’s Rogue Monster Theolodorus, however in this one I decided to play a bit with the idea behind the infamous Berlin Interpretation and turn it into the main game mechanic, with each run becoming a sequence of random permutations of a roguelike formula, wrapped in a narrative of a play by email contest from the early 90s and a sweet monochromatic UI with PC-Speaker sounds.

The result was ok… I was overambitious as usual and we didn’t manage to implement a tactically or strategically challenging roguelike; so I decided to just switch off these two attributes from the interpretation, from the initial version. Seriously speaking that’s something I hope to address in a follow-up version. Below is a condensed timeline of the development of the 7DRL version of the game.
February 26 – An initial idea
After playing around with ideas for a couple of days, I put up a one pager explaining what the game was about, and sent it to Camilo to see if he would be interested.
Initially the idea was that certain famous Mechner developer from California wanted to create a roguelike version of his famous game, set in Persia. But he wasn’t sure what was a roguelike so he contacted a research institute of Berlin to find out; the institute would create a prototype game called Dungeons of Persia, and experiment toggling “roguelike” features on and off and recording the results to come up with a satisfactory response and prototype for the developer.
Febryary 27 – UniGEM
Prior to the actual 7DRL itself, I started working on a new generic project: UniGEM, which, in a similar fashion to past year’s UniWin31, sought to mimic the appearance of the GEM Desktop Environment for DOS (I actually started from the source code of UniWin31)
One of the biggest challenges was trying to use the original font from GEM, after much research and trying to convert the original ancient font files to modern TTFs, I gave up and just used an exported PNG image to bring it into TextMeshPro
March the 1st, Camilo starts, themes evolve
Based on his availability, Camilo decided to start his 7 days timeframe on March the 1st; and right on he went for the more challenging bits of this idea: Making a hybrid movement and interaction system that allowed for both turn-based and grid-based movement to be enabled or disabled based on player choice, all possible combinations.
As for me, I finished working in UniGEM – got it to the point where we would need it for the game. Hopefully some other dev will find it useful.

Still in prep mode, I started having doubts myself about the theme; maybe doing another Prince of Persia top-down turn based “roguelike” or even just using the mechanics somehow again was too much… so I started considering options.
My main idea was to make it German and about exploration so I considered Jules Verne (a Journey to the Center of the Earth?), Wolfenstein (years ago wanted to make a wolf3dRL to compete head to head with DoomRL) and even the Grimm Fairytales (maybe Hansel & Gretel).
In the end, however, I decided to stick to the rogue mythos. It’s just rogue, fantasy DnD. Mainly because I wanted to put an emphasis on how what made the game different came from outside the internal roguelike, and more from the metagame wrapping it around.
March 2, Day 1
The first thing I did was working in the UI of the game setup window; i.e. the part from when the player was going to be able to turn on and off the features of the roguelike he wanted to play; this included the concept of a “genome code” that could encode his choices to share it easily with others, as well as showing some details of the options selected by the player.
Then, I replicated Camilo’s test scene and made it use an off-screen camera rendering to the UI Canvas, with a lot of tweaking required to keep the pixel perfect look.

In terms of game flow, I made mockups for a combat window and an end-of-run evaluation window (with some initial work in the “Exit game” flow leading to it). Sadly we didn’t end up having enough time to implement the modal combat at all.

There was also some discussion with Dinti about the references to use for the music, which included German early 90s electronic music scene.
March 3, Day 2
Dinti started working in the tracks for the game based on the prior discussion, while Camilo worked in the classes responsible for managing the dungeon’s layout and handling collision checking.

In parallel, I began working on the systems to deliver the game’s story, laying out the foundations for the in-game email messaging system, and a functional “Mail” window. This system is intended to be the primary vehicle for the game’s metanarrative; the goal is to frame the roguelike gameplay within a larger, evolving story that unfolds outside of the dungeon itself.

March 4, Day 3
After hitting issues with Unity’s physics system, Camilo undertook a major overhaul of the core movement and dungeon systems, rewriting the movement logic for both player and enemies. He also added dynamic population to the dungeon.
I worked on improvements for the user interface, allowing Windows, such as the email client, to be dragged around the screen, and brought to the top when interacted. I also made the email window scrollable (useless in the end, as I didn’t end up adding enough email content for this to be useful). And the “downloaded” apps were displayed as part of the desktop. (this triggered the need of having pixel art for the app icons, but I ended up using a single one for a “document” from the classic mac icons.)
The game’s narrative and identity also evolved. The player’s in-game identity was changed from being a researcher of an institution to a player participating in the “Yendor Challenge”, playing different roguelikes while the research was secretly happening in the background. A flow for handling the “death email” was implemented, contributing to the meta-narrative that frames the player’s dungeon runs.

March 5, Day 4
This was a day for building out the game’s meta-structure and improving the data-driven aspects of the narrative. A major step forward was made in the meta-game progression, with the implementation of a system to generate emails at the end of each round, and allowing players to “download” attachments and open challenge programs with dynamic configurations, creating the game-within-a-game loop that drives the overarching story.
To support this new content, significant work was done on the backend. Email data is now loaded from external JSON files, making it much easier to edit and expand the game’s narrative without changing game code. Rounding out the narrative work, some minor tweaks were made to the content of the round-specific emails.
On the technical and presentation side, a new music track by Dinti was added to the game, enhancing the atmosphere, and further work was also done in the windowing system to make sure the experience was smooth.
March 6, Day 5
I centered on improving the user interface flow and advancing the game’s narrative elements, particularly those related to the in-game email system. The evaluation window that appears at the end of a round was improved with better text and data loading. The mail window itself received visual tweaks to its appearance and scrollable area. Crucially, the text content for emails across all rounds of the game was updated, and a “leaked” email was implemented and sent to the player.
As for Camilo, he made significant progress on enemy behavior with the implementation of pathfinding. AI-controlled enemies can now intelligently navigate the dungeon in both real-time and grid-based movement modes.
The user interface’s modal system was made more robust. The code now allows for stacking modal windows and enforces a clear flow, preventing players from interacting with background elements when a confirmation or pop-up is active.
I unlocked work for Dinti, the idea was to create further variations from the track he did.
March 7, Day 6
The focus shifted heavily towards implementing and refining the game’s combat mechanics. As a complement of the hybrid movement system, Camilo worked on introducing a hybrid combat system that worked as well for all the permutations of grid-based and turn-based system. He also worked on improving collision detection between the player and enemies for the real-time movement mode. I also worked on making enemies be properly initialized using structured “Race” data via Unity Addressable objects.
The ASCII mode was created for the player and monsters, as it is one of the criteria that can be toggled on and off.
This was complemented by the addition of new, more detailed sprites for both the player and various monsters, as I decided to use Oryx Design Lab “Ultimate Roguelike” 1bit tileset which suit perfectly (and we didn’t have a devoted pixel artist on team and Camilo was more than busy).

To provide better feedback during fights, I included battle messages in the game’s log. The main game window was also updated to prominently display the player’s stats and current game settings, giving the player crucial information at a glance.
I started thinking of the key art for the game page, I contacted friend Thomas Biskup to see if maybe he had some pictures from Berlin I could use; he sent some pics but suggested that Berlin in 1992 was pretty different so I would be better off generating some.
New audio tracks by Dinti were also added to enhance the atmosphere, while integrating them I noticed they had variations in the volume, probably caused by the effects he used to create the variations over original tracks.

I closed the day by allowing progress within the tournament rounds by completing levels, i.e. finding the stairs to the next one, and organizing the HUD a bit.
March 8, Day 7
The last day, so we needed to wrap up and get things done. I implemented several core gameplay systems and did significant refactoring; introducing multi-level dungeons and a round-based game structure, where players advance by stepping on stairs.
This was supported by the creation of a procedural dungeon level generator, with safeguards to prevent overly large, empty levels. I also added a much needed simple raycasting line of sight algorithm, which could be toggled based on the game options.

Combat and character progression saw substantial updates. The damage calculation for the player’s “bump attack” was corrected, and also allowed players to level up by defeating enemies. Monsters are now strategically selected based on the current dungeon level and their difficulty tier, providing a scaling challenge and, to improve player feedback, attack messages are now displayed for non-grid-based attacks.
The user interface was also improved, with the new game panel now showing clearer English descriptions for options.
Under the hood, significant code reorganization took place. The logic for the player’s entry point into a level and pathfinding utilities were centralized for easier management. Other quality-of-life improvements included clearing the message log at the start of a new game and ensuring that email loading functions correctly in web-based builds, a need that I discovered in last hours deployment tests to itchio.
At the last minute, 7:20PM, I called for the power of QuietGecko to add a batch of sound effects, and amazing addition to the player experience of course. I got them from them at 11:21 PM so they were the last thing to add. The Gecko always comes to the rescue.
March 9, Post Jam Fixes (7DRL++)
I was happy with what we delivered, but I saw there were some rough edges which could deter from enjoyment, so I decided to spin a quick day 0 fix version.
The most important change was the introduction of health recovery for the player upon completing a level, making the game hopefully winnable. This brought memories of my 7DRL from 2019, which was impossible to win due to lack of any way to recover health.
Secondly, several game settings that we just didn’t have time to implement during the 7DRL challenge were marked as read-only to make the game space more clear to the players and to provide real variety over the runs, additionally the order of the options was fixed on the window, for readability.

Finally, the placement of the player and enemies when using the ASCII display mode in the game window was fixed.
The future
What is coming next from this game? I think the 7DRL missed important subsystems for roguelike games, which limited the execution of all the different aspects being toggable or not; that’s one thing I hope to address soon.
For the moment, up to today I’ve released 2 more patched versions (the original 7DRL submission can of course be downloaded from the page)
Version 0.3
- Fix critical progression level throwing players forward two levels on each round
- This one is critical to make the game winnable, unless you are a god..
- Keep a separate state for training mode to prevent it affecting tournament game mode.
- Use all music tracks for training mode, victory variations, and defeat.
- Add Reboot option to menu to start again.
- Fix qualitative depth descriptions
- Show “You have new email” alert
- Fix: placing player behind the level in graphics mode
- Use proper walls and floors in ASCII mode
Version 0.4
- Gameplay Improvements
- Allow diagonal movement using Shift
- Allow passing turn if on turn based
- Prevent spending action points when bumping walls in fluid turn based.
- Place more monsters per room
- Spawn enemies randomly in addition to initial population
- Fixes
- Fix issue with hard to get into corridors in fluid mode for both enemies and player.
- Make enemy visible if can see player
- Prevent enemies from stepping on each other in grid based mode
- Spend turn when attacking in non-grid mode.
- Improve enemy action point consumption and pathfinding
- In Turn based fluid mode, only enemies close to the player should act.
- Audio
- Play audio when attacking in non-grid based
- Play SFX on new level
- Visual Improvements
- Remove menu button from windows
- Scroll to top when reading new email
