top of page

IN THE DARK

IN THE DARK is a 2D metroidvania that I solo developed over the course of 18 months while I was a student in college. Everything within the game, from the art, to the music, code, and design is made and implemented by myself. It's out now on Steam, along with a free demo of the first area. I encourage you to check out the store page, and play through the demo!

Steam Store Page

Below is the release trailer and a couple videos of the game, followed by discussions of its creation alongside visual examples.

The Final Product

Here is what a couple streamers said while playing the game:

Some of the Major Systems

Map System

As a metroidvania, one of IN THE DARK's most important features is the map, as exploration and a growing area are a central component of giving a sense of player and world progression.

Each of the 11 areas of the game have a hidden map piece that will unlock the map for that area, showing an outline of the environment, and a few landmark locations (like the player's position, save points, places to buy health, and bosses). Each piece cost a certain number of coins, depending on the size of the area and how far in the game the player likely is.

 

When the player unlocks more parts of the map, they can see where each area is in relation to each other, as well as where each area might meet another new area. 

The map system provides a constant goal for the player, and gives a natural sense of progression as more is uncovered. It adds actual use to the player's gameplay in helping navigation, and incentivizes getting coins. By providing general information on the relative locations of key events, there is enough to push the player and stimulate their curiosity without giving away too much.

Each area and their connections were designed to allow for partially non-linear navigation, with some areas being more guided, and others more open-ended with multiple routes.

The map for each area was implemented as an image overlay on top of each area, with a camera looking at the whole area and only rendering the 2D map image. This way, the map could get live information about the player's location. The connected areas were then represented as pure images attached to the area the player was in, since those areas were not in the same scene, and thus the camera couldn't see them.

Shadow System

One of the more unique features of IN THE DARK are the shadows that arise from both the player and the enemies in the game. When the player dies, they return back to where they last saved (either at specific points or the entrance of an area). When they do, a shadow version of themselves spawns next to them. This shadow moves in unison with the player, doing every action in sync with the player's inputs (if you press left, both you and the shadow run left. If you press jump, both you and the shadow jump). The catch is that the shadow cannot be hurt by enemies.

Enemies also have shadows, but unlike the player's, they are more for thematic consistency. When the player dies, any enemies that have been killed also spawn their own shadows. This serves as a respawn mechanic for enemies. Instead of simply resetting the enemies upon death, their dead bodies remain while their shadows function as enemy replacements.

Reasoning for Design:

Players soon find that by pressing attack, both they are their shadow attack. This can lead to strategies like using the shadow to attack while the player is farther away; or perhaps overlapping the player on top of the shadow to hit for double damage. The shadow functions almost like a second player, helping the player overcome a tough section that they may be struggling with. The shadow only lasts for 30 seconds after it spawns, as to not be too overly powerful.

The idea behind the shadow is to function almost like a come-back mechanic. It's supposed to help the player, without being too intrusive or taking too much away from the player's own skill and improvement.

The main purpose of the enemy shadows is to maintains the themes and narrative of the game, keeping it intertwined with the gameplay.

One of the main downsides of the shadow is that it can help the player greatly with combat, but is otherwise useless when the player is struggling with a platforming section. If I were to improve the shadow further, I would look for ways to make it more useful in pure platofrming sections.

Bosses

Within IN THE DARK, the player will run into a number of bosses, which serve as either important narrative points, marks of progress, or barriers to rewards (or occasionally all three).

The most important aspect of the fights is clarity, so that every mistake is viewed as the player's own doing, rather than "cheap" or unfair tactics. To achieve an ease of understanding, the bosses attacks are telegraphed, and their movements and sounds give indications of what attacks they will try to do. 

Boss encounters show up as multiple types, either as a single, large enemy, a series of enemies within a room, or a chase. The videos to the right show each kind, including both the first boss and the last.

Both bosses and enemies were implemented as state machines, with a series of possible attacks they would choose from a combination of randomness, their distance from the player, and how low on health they were. Unity's animator served as an incredibly helpful tool in separating out their different states, with hit detection being easily linked to their attack animations.

This final video, the final boss, is what I believe to be the best designed encounter in the game. It is modeled after the Mantis Lords in Hollow Knight, and forces the player to use every ability they've uncovered so far. The boss takes turns attacking with its right and left arms, increasing in speed as its health lowers. At the halfway mark, it switches to attacking with both arms at the same time, also at increasing speeds. Its slow starting pace is a nice introduction to how it will behave, and its constant increase in intensity helps give it a climactic feel. I strongly encourage you to give it a look.

Player Abilities

Another important aspect of a metroidvania is the abilities that a player can unlock. Throughout the game, there are 5 different abilities that the player can acquire, being a sword, teleport, ground pound, double jump, and glider.

Each of these abilities is made to benefit the player with both platforming and combat. By acquiring a new ability, the player has a new skill that can aid them in fighting enemies, and give them access to more of the map. For instance, one of the abilities is a teleport, where the player quickly dashes forwards, turning invisible for the duration of the dash. This can allow the player to move through thin walls, giving them access to more parts of the map, and it also gives them a fast movement option to escape enemy attacks.

 

In addition to gaining new abilities, the player can also find various stations throughout the world that can increment their health or the damage that their sword does. 

These abilities serve as one of the main points of player progression, and connect heavily with the game's enemies and exploration.

Retrospect

IN THE DARK was the first game I started to make, and one of my biggest achievements. While I certainly didn't stick with the common advice of "starting small," I learned tons about the entire game development process, from the first designs on paper to Steam integration.

There were certainly better decisions I could have made by following better object-oriented principles, scoping smaller, and iterating more with playtesters, but IN THE DARK vastly increased my skill and understanding of game engines, programming, game design, art and sound creation and integration, and the importance of other people's eyes.

___________________________________________

Here is one last video showing the progress IN THE DARK made from its early to late development.

bottom of page