top of page

Shadowstep

A turn-based puzzle game played in two parallel dimensions simultaneously.

​

Designed for Godot Wild Jam #72, where it ranked #15 out of 155 entries.

​

Shadowstep is a game that uses two cameras to create puzzles that must be solved by switching between two worlds. This means that each level is actually two superimposed levels presenting different challenges and visuals. This confusing level design challenges the spatial navigation skills of the players and give Shadowstep a unique twist within the turn-based puzzle genre.

Design highlights

Level Design

For the level design of Shadowstep, after making a gameplay prototype, I started by dividing every game mechanics into atoms represented by a letter each. These mechanics can either be a player action or a interaction with a specific component of the game (e.g. an enemy). ​

A (4).png

Once defined, these atoms were then assembled into 'molecules' composed of multiple atoms. Sometimes, a molecule can be marked with a '+' sign to indicate an increased complexity (without adding new atoms). Those molecules were then arranged into a cascading chart that gave me the bare-bones outline of the level. Lower-complexity molecules are placed at the top, which corresponds to the beginning of the level, and their complexity increases further down the chart.

Inserting breaks that reset the complexity of molecules after a very complex line allow the player to catch their breath, and are the perfect moment to introduce a new mechanic to learn.

​

A (2).png

From these charts, I then made a blockout of each level in Level Designer Toolkit (LDtk), using one layer for each of the two worlds (the real world and the shadow realm). Using the layers of LDtk allowed me to work easily on the different worlds of a same level easily, and to make sure there was some overlap between them to allow the player to use correctly the shadowstep ability. Here is an example of the blockout of level 2:

Real_World.png

Level 2 "Real World" map blockout

Shadow_World.png

Level 2 "Shadow Realm" map blockout

_composite.png

Level 2 superimposed map blockout

After this step, the only thing left was to recreate the level in Godot using a tilemap. Since I was working with an artist for this jam, I used a basic tilemap for the bare layout of the level made of squares of solid color: blue squares for walkable tiles, red squares for obstacle and yellow squares for inaccessible tiles. This allowed the level artist to populate the level with art freely by drawing with the final tileset over the placeholders. Indicating the inaccessible tiles in yellow might seem odd, but it was a clever request of the artist. Since the player could never reach the yellow tiles, it didn't really matter what visuals were on them. Thus, it allowed the artist to be creative with the non-playable areas rather than drawing endless expanses of rocks and trees.

image_2025-02-27_160953561.png
image_2025-02-27_160311107.png

It was also important to make this distinction between obstacles and non-playable areas since the two worlds are overlapping. For instance, a non-playable area in the real world might be a walkable area in the shadow realm, and thus it needs to be marked in red instead of yellow in the real world layout to make sure the player doesn't accidentally use the 'step' mechanic to exit the level.

bottom of page