top of page

BACKSTAGE AT MIDNIGHT

Backstage at Midnight is a 3D top-down roguelike in which you explore a mysterious realm called the Endless Stage that whisks people away each night.

During the witching hour, explore and escape, this mysterious backstage world through a never ending performance.

 

Each run is procedurally generated making the game unique each time you play.

This initial demo was developed over four months entirely solo and will continue to be developed throughout this year and potentially beyond.

​

This game is being developed in order to demonstrate my practice in procedural generation and in modular design. Everything in this game is being developed such that it interacts without needing to be hard coded to do so. When this project is finished, I am intending that players should be able to discover unique item interactions that even I had no idea were in the game - but that make perfect sense in it's systems.​

​

This game is currently still in development, but an early demo is above.

GAMEPLAY DESIGN

image1.gif

The game uses simple procedural generation to generate a 2D map based on a series of parameters such as size and difficulty.

​

It iterates through itself multiple times until it is able to successfully place a series of rooms fitting those parameters, else instantly crashing allowing me to quickly find and fix any bugs in the process.

 

Each 2D room then instantiates a room from a pool of rooms matching it’s room type, such as 1x1, 2x2, Boss, Treasure etc in the same layout and adds doorways where appropriate.

image_2026-06-11_192816046.png

Since the rooms are all chosen from pools, adding or removing them is as simple as adding or removing them from the appropriate list.

 

Additionally, they each have a difficulty ranking. By default, the map generates rooms from 1 difficulty (difficulty 1 on level 1, difficulty 2 on level 2 and so on) but this can be expanded to be a range, allowing for sections of the game that pull from multiple different difficulties for a more dynamic experience.

 

Here the map generator has pulled the pools for the Difficulty 1 “1x1” and Treasure Rooms.

One of my goals for this project was to create modular systems that would allow for rapid content creation and iteration. 

​

I did so, by creating a shared set of modifiers that both enemies and in game collectable upgrades used.

​

Any time I introduced a new mechanic to the game, it would be added to this list, meaning that one new mechanic, could be used in combination with others to create multiple new enemies and items, which was essential for the large amount of content variety that a roguelike game requires and allows for rapid testing, balancing and iteration..  

image_2026-07-01_125142412.png
image_2026-07-01_125249998.png

Examples of this, include the spread of a projectile shot, how bouncy the projectiles were, how they interacted with gravity or on collision and so on and so forth. Everything was set up to be modular and customisable even if I didn’t need it to be at the time of creation, so that anything could be changed on the fly for extremely rapid iteration based on feedback. ​You can see examples of this, in these photos.

​

Even elements like item rarity and the rules that the procedural generation follows can be changed this way, including during run time.

LEVEL DESIGN

The level design process of the individual rooms was largely built up around the enemies. For the small rooms, each enemy receives one room to itself and another where it is in combination with another enemy. For the larger rooms, each enemy is paired up with every other enemy for as many interesting combinations as possible, and 1-2 “all-star” rooms are made which feature all or most enemies from that floor.

 

Making more rooms for each floor in the future would further revolve around what layout works best with the combination of enemies present: does the player want cover? Is the enemy moving or stationary? Is the player shooting one, or multiple projectiles? Are the projectiles bouncy, do they have a long life, are they close range?

​

The below video shows some examples of level design within the game.

​

These videos below show further gameplay.​

GALLERY

bottom of page