Theolodorus, commander of the army of Yendor, rebels against the authority of his creator, seeking redemption for the suffering he has brought into the land.
Experience dungeon crawling like it was 1994, with graphics created by Glenn Wichman himself, one of the developers of the original Rogue.
You can download for free for Windows from itch.io here.
As I have been doing it for the last 21 years, I joined the 7DRL Challenge this year. I had wanted to make a game featuring Windows 3.1 visuals for a long time… my first computer was a 486 with Windows 3.1 and, although most of my gaming was DOS, I still feel some nostalgia for the particular experience of these early Windows games.
On that era and platform, I feel there was a distinct lack of roguelikes and RPGs in general, with Castle of the Winds being about the only thing out there. I set out to fix that.
Rogue Monster: Theolodorus is a combination of a traditional roguelike (turn-based, top-down, permadeath, no metaprogression) with a deck-builder, card-battler game (Slay the Spire is a clear inspiration here).
Its main appeal, of course, is its very distinct retro visuals, however I also intented to create a smooth experience, modernized to the 2020s while retaining the original charm.
The Wizard of Yendor
I’ve known Glenn for years, and I probably have been asking him to participate together in the 7DRL Challenge more than once. Glenn is of course a pretty busy person, so things never worked out… until this year! he managed to make some time to do some very sweet pixel art under the default Windows 3.1 16 colors VGA palette restrictions, and following the style overall of the aforementioned Castle of the Winds and also some other references like Chips’ Challenge.
It had only been 40 years since Glenn did the graphics for the Macintosh version of rogue in 1985, so I think his role in the project was perfect given we were aiming for similar graphics, albeit this time we had the luxury of color.
While considering what visual style to pursue, Glenn thought of following the style of a different artist, Michael Kosaka, who created the sprite sheet for enemies and environments for Atari ST rogue around 1986 (while Glenn did the fonts). While they looked charming, they were similar to DOS graphics and beyond, I told Glenn it would be much more unique to follow the visual line of Macintosh games, including his own.
(I later found out this same person worked in the art of Budokan: The Martial Spirit, as well as Centurion: Defender of Rome, and many other good games from the past. Moreover, he still seems to be active in the videogames industry. What legends!)
For the monsters, I gave Glenn some references from the Castlevania Netflix series, but down the road we found they were maybe too elaborate to fit 32×32 pixels 16 colors. For a moment I considered doing something similar to Soulash (2?) and using monster portraits instead, but ultimately we decided to just let some details out.
Cards.
Since the moment we participated on Global Game Jam on January, Mauro asked me to let him know of any upcoming jams in case he could participate, so I did. I was mostly interested in his prowess as a game designer, and his knowledge on deckbuilders. He could also code, of course, but in the end it was hard to coordinate efforts on that.
I told him what the idea was in general terms, and let him dream a bit about it; we planned on meeting at a cafe on Saturday, but adulting and parenting life for both made it impossible, so we had to settle with a call over discord.
In his mind, the game would be puzzle-oriented, with lots of environmental interaction and much more limited and granular health; the player would have to find the cards scattered in the level, and use them to unlock parts of the level, attack enemies, or recover health. There was going to be an elemental system affecting the outcome of combat based on enemy vulnerabilities, with the possibility of harnessing the power of other tiles in the level, and cards that could alter the terrain around the player creating barriers to defend himself.

While I think these ideas were great, I thought some elements of them were a bit incompatible with my overall idea of a game that was heavier on traditional roll-playing dungeon hacking, mashed-up with a deck builder. Also, generating these environments procedurally would have been a great challenge… Overall, I think his design was maybe a bit too ambitious for a jam game, but I can imagine it working on a full fledged game.
I asked Mauro to instead focus on building a good set of cards, extending the starter set I had created (which was meant to be temporary, but ended up carrying out until the end). I told him to imagine he was making a standard deck builder heavily inspired by Slay the Spire, but with some spatiality on it. In the end he came up with a set of “Weapon” cards, that had an area of effect around the player making trade-offs between focused power, the ability to hit several enemies, or to hit them at a given range.
Chip music, low-bitrate mono
Another important aspect for the experience I wanted to provide was the audio; in a similar fashion to replicating the limited graphics of the era, I wanted to evoke the restrictions of the PC audio around 1994 materialized in VERY short, low bitrate WAV bitstreams for sound effects, as well as FM Synthesis music as exemplified by sound cards such as the Sound Blaster series.
Weeks before, I stumbled upon the work of Dinti, a musician from Cali, Colombia, and noticed he really enjoyed playing around with synthesizers and audio hardware. We had talked before but never had the chance to work together, so I thought this was a perfect chance as well.
There was a lot of back and forth where I showed Dinti many references of what I was looking for; he finally settled to emulate the Yamaha YM2612 sound chip, which is pretty similar to the YM3812 (OPL2) and YMF262 (OPL3) used on the Adlib and Sound Blaster cards. This was the first time he used a tracker and was very excited to learn all the stuff around it; the results were amazing.
In hindsight, I think I missed the mark a bit for music as the support for sound cards on Windows 3.1 was limited as I understand? I could have instead shot for replicating the MME (Multimedia Extensions) MIDI sounds support, like this. Honestly I need to research more on this and what the difference would have been, but in the end it was probably for good since the music was sweet.
And of course, there’s no slashie’s 7DRL without the QuietGecko, long time game audio partner. He was having a super busy week but managed to jump into the project during the weekend and work some sweet sound effects; he didn’t want to go all the way down the bitrate ladder, but still provided some low-quality effects to give life to game and let me tell you, the experience is just not the same without them.
Alas, we didn’t manage to integrate all of his work for the original 7DRL version, due to how things had to be wrapped up, but that was one of the reasons to work the 12DRL version (more info on that below)
The tale of the Rogue Monster
For this game, I wanted to tell an interesting story.
Even if it was going to be a traditional roguelike, a dungeon hack you would play over and over again, I felt the lack of sophisticated visuals was a great opportunity to tell an interesting story in written form (taking hints again from Castle of the Winds 1 and 2). I don’t know of many other story-driven games for Windows 3.1.
Of course, the devices used to convey the story would have to accommodate to the repetitive structure of the game, and all I had was a broad idea of the narrative context of the game, and too little time to attempt to expand on it with good quality. I contacted old narrative-design partner Stoltverd (for the second time this year, he should be getting tired of me!), to entrust him the task of telling an interesting story, in a way that wouldn’t annoy the players, and making the best use of the features of the media we were emulating.
The reference I used for this was Azure Dreams, especially the Gameboy Color edition, which I think did a good job of telling a story without getting in the way of the player on every run; in Azure’s case this was done mostly by dialogs triggered at certain milestones of your journey in the tower.
In the end, we decided to use “Flashbacks” that would be delivered to the player in random order for him to assemble the bits of the story, and the development of Theolodorus as a character, throughout different runs.
Pixel Artists of the arcane
As the jam was coming to an end, it became evident we were going to need some help with the pixel art, so that Glenn could focus on the monsters and the environment; we still needed art for the cards, and some basic UI.
At the last moment, I invoked the powers of Kevin Parra (Economic Bubble Burst) and Awahervida (Monte del Diablo, Dungeons of Persia, Emerald Woods). I was lucky to have them jump into the project and provide the much needed assistance.
uniwin31
Some days before the challenge, I created a set of Unity widgets replicating the look of the Windows 3.1 GUI, you can find them here.
They are still a bit raw (especially the scrollable areas?) but they work!
Soothing Sounds of the HDD
Another aspect I wanted to put in, to augment the 1994 experience, was the constant sound of a Hard Disk Drive spinning in the background. Most people will probably not notice it, but QuietGecko was there to follow my idea and further pushed it forward with a heavy mouse click sound which we ended up integrating for all clicks. *CLICK!*
The Demon Theolodorus
We didn’t have the time or resources to make a complete title screen, but I still wanted to somehow convey to the player a more complete image of his anti-hero, to bolster their imagination. I aimed to have a higher res image of Theo against a pitch white background, with some text hinting the player to the conflict going on in his mind.
That portrayal was another big contribution of awahervida; while for the original release we had to do with a less-than-optional version of it, basically a downscaling and downsampling of the reference artwork with some rushed tweaks, for the improved edition awa did his magic working under the same palette constraints, but intentionally making heavy use of dithering and playing with the light to transform Glenn’s 32×32 portrayal into an enigmatic figure. Note that for the pose, we were strongly inspired by Castlevania Netflix concept art 🙂
It’s never the same game twice
Because of how things went, I ended up without procedural level generation up until the last hours of the last day. The limited time left me no choice but to consider a standard “rooms and corridors” implementation for the dungeon, it was going to be boring but at least would check the roguelike mark. It was also the simplest possible algorithm so what could go wrong?
Everything.
I still don’t know what happened, but my good old simple algorithm that I initially made for RODNEY back on 7DRL 2013, and which I had already ported to TypeScript (so in theory was easy to port to C#), failed again and again, causing infinite loops, being unable to extend the dungeon away from the starter room. Damn.
On the last day of the challenge, still with a lot of content to integrate, I think I was going around the three hours mark trying to make it work. I thought of giving up procgen, it was going to be a sad roguelike but at least playable.
As a last resort, I thought well… let’s turn off the damn overlap validation, and see if it fails because of something else down the road; it didn’t fail and, on the contrary, the results were… quite beautiful: organic, unpredictable, weird (as rooms and corridors overlapped without control over each other, leaving just their shadow in the cold stone blocks). It was a very effective way to create interesting layouts which, by the way, were also OPEN, which was a concern I had on my mind over the initial plan, because it would have ended up with just a lot of bottlenecks in the corridors.
Making a game in 7 days
Now, let me share how things went for the implementation of the game; not that there was a plan or anything, I just winged it, and almost failed.
Day 1 – Walk around in a random map using placeholder sprites – making sure the foundations are solid.
Day 2 – Experimented and defined the gameplay twist of the game over the traditional roguelike formula. In this case I set the following core elements
- Interaction would be divided in two modes with the first being “Movement” mode, allowing the player to move around and pick up things, but NOT attacking enemies, and
- Cast mode, where the player can use cards both to engage with enemies OR affect the environment. When the hand is exhausted, 5 turns pass, giving the enemies an opportunity to hit the player.
I also created the main UI elements that would be needed for the gameplay differentiators.
Day 3 – Pushed hard to implement the designed features, in this case the entire deck dealing and shuffling logic.
Day 4 – Pushed further developing the combat system and also initial art integration, and creating a first playable build to gather feedback from the team.
Day 5 – Implemented additional gameplay elements on top of the core mechanics, playtested and tweaked values. Addressed feedback by the team.
Day 6 – More of the same Day 5, in this case I implemented artifacts, and integrated art for the cards.
Day 7 – Only the last day of the jam, around 3:14PM, it started to feel like a game. It was a mad rush to polish, integrate content, code procedural level generation, and submit a complete game.
I was already out of energy but pushed to integrate work made by Mauro and Aguahervida, which was really important for the completion of the game.
Is Seven Days Enough?
By the 7DRL deadline, we managed to deliver a complete game, but at what cost? 😛
After recovering my energy for a couple of days, I thought it was time to strike back at it and produce an improved version following the usual 7DRL++ params, same contents, improved experience.
The work span 2 days (March 12 and 13) and was focused in three aspects:
- Improving the difficulty curve of the game (original version was too easy)
- Improving feedback when using the cards
- Integrate the missing audio
Of these, I managed the last two since, even now, the game is too easy (even if it feels better with enemy placement in groups, using pathfinding, and higher cost of cards and items). The “animations” (more like timed markers placed in the map), and the sound effects really help make the game feel much better.
You can read more details about that update here
Cool thrift store find
As the challenge was ending, with too little time left and while thinking of ways to “sell” the game keeping on with the spirit of the project, I thought of the possibility of Simernio (NovaMundi, FormulaProc, Muiscamuy), creating a suitable cover art following the amazing work he had done for my 2022 entry, SpelunklyRL.
As a reference we took cover art from games of the early 90s (of course), and he started by collecting a pinterest board full of goodness. We wanted to transmit the style of the era including early 3D rendering, high contrast, something that you could see in a computer games magazine. Given the limitations of the computer graphics of the time, we decided to avoid trying to render a complex character, and instead show his shadow, hinting of his presence.
I complemented the composition with the idea of bullet points that could have pushed you to impulse buy the game if you saw this box in the Computers store or in a magazine. And then, just for fun, created a CD jewel case version of it.














1 Comment