Skip to content
Gates of Yomi in mid-run: top-down bullet-heaven combat at night among red torii gates, the player surrounded by approaching underworld enemies.
All work03 · Gates of Yomi
Bullet-Heaven Roguelite Cancelled

Gates of Yomi

Gates of Yomi is a bullet-heaven roguelite where you cut your way out of the underworld against escalating swarms of enemies, building up a run with every weapon and upgrade you pick along the way to your survival.

// Spec
Year
2022
Engine
Godot 4.2
Role
Game Programmer
Team
2 people
Platforms
PC
SCROLL
// Overview

Gates of Yomi was the first project I ever worked on at a larger scale as a game developer, a bullet-heaven roguelite that I designed and built together with Frog on Fire. It was a great learning experience and a lot of fun: I architected all of the systems and built small tools along the way. As both my friend and I gained more experience, we decided not to continue with the project and took on more exciting challenges in our careers.

Here are a few of the works that went into it:

  • Built the core bullet-heaven loop, where the player shreds through waves of enemies piling onto them nonstop while they keep gaining upgrades and abilities to fight through them.
  • Wrote a unique enemy spawning system where the game itself decided what to spawn and when to spawn with a credit-based system, keeping the game matching the player’s tempo and each run unique.
  • Enemy and player behavior runs on a hierarchical state machine, which kept the logic readable and easy to extend as I added new enemy types and behaviors.
  • Backed the project with a suite of 53 GUT unit tests covering the core systems, so I could refactor freely without breaking things I had already gotten working.
  • The whole project’s version control was handled by me alone.
// Tech stack
EngineGodot 4.2 (GDScript)
TestingGUT (53 unit tests)
// Credits
Programming Albedo
Art Frog on Fire

Gates of Yomi was the first project I ever worked on at a larger scale as a game developer, a bullet-heaven roguelite that I designed and built together with Frog on Fire. It was a great learning experience and a lot of fun: I architected all of the systems and built small tools along the way. As both my friend and I gained more experience, we decided not to continue with the project and took on more exciting challenges in our careers.

Here are a few of the works that went into it:

Gameplay

  • Built the core bullet-heaven loop, where the player shreds through waves of enemies piling onto them nonstop while they keep gaining upgrades and abilities to fight through them.
  • Wrote a unique enemy spawning system where the game itself decided what to spawn and when to spawn with a credit-based system, keeping the game matching the player’s tempo and each run unique.

Architecture

  • Enemy and player behavior runs on a hierarchical state machine, which kept the logic readable and easy to extend as I added new enemy types and behaviors.
  • Backed the project with a suite of 53 GUT unit tests covering the core systems, so I could refactor freely without breaking things I had already gotten working.

Git version control

  • The whole project’s version control was handled by me alone.