Motefall

An action roguelite that compresses an ARPG run into a single session.

The goal

Survivors-likes are easy to read and ask almost nothing of you up front. ARPGs like Path of Exile 2 have real build depth, but charge about a hundred hours of literacy for it. My bet with Motefall is that the depth isn't what keeps people out. The bookkeeping is.

So the whole run happens in one sitting, across four phases from scarcity to pinnacle. You still get the shape of a full run, finding your build, hitting the power spike, running into the wall, without a campaign in front of it.

Three pillars

  • Everything is visual. No invisible continuous stats. Power is discrete and renderable: +1 projectile, not +7% damage. You should be able to read a build off a screenshot.
  • Verbs can't roll badly. Every legal combination has to work and has to be visible. Suboptimal is discovery rather than failure, and no drop makes your run worse.
  • Genre DNA lives in acquisition. Build pieces drop from enemies during the run. The meta layer widens what you know, never what you start with.

The reject filter

Five laws that every proposed mechanic has to survive. The fifth does the most work: keep the exponential door closed. Nothing may chain or recursively emit. Waves never re-refract, objects trigger at most once per parent wave, and statuses apply once per enemy per wave. Damage stays linear in object count.

That constraint is what makes the elemental system workable. Three elements pair into six reactions, and each one carries a hard bound. A knockback reaction spends its collision damage on first contact and never re-launches the victim. A chain's hop budget is fixed when it spawns and only shrinks. Without those, one detonation in a packed arena would cascade across the whole field.

This build is then tuned hard toward the reactions on purpose. Enemies die to what you detonate rather than to what you swing, so a full melee combo takes well under half a health bar off a basic enemy while a single stacked reaction takes more than the whole combo. The loop becomes positional: you apply with swings, then detonate.

That is a question being asked, not an answer being shipped. The prototype exists to find out whether applying and detonating debuffs feels rewarding, and the fastest way to find out is to make it the only thing that matters. A finished version would not necessarily be balanced this way.

What's built

  • Six pair reactions across Fire, Water, and Lightning, each with its own bound
  • Six enemy archetypes, one silhouette each, so a still frame tells you what's on the field
  • Telegraphed attacks whose aim locks at wind-up, so sidestepping is real counterplay
  • Armor as a second health bar that absorbs everything and never spills over
  • Rally: banked health you reclaim by landing hits, so defence is aggression
  • Elemental pillars, standing terrain you spend to detonate

How I work

Every non-obvious decision gets a number and a written reason. There are 74 so far. They record why a thing changed and what the alternative would have cost, not just what changed. The payoff shows up months later, when the obvious fix for a problem turns out to be something an earlier ruling already rejected for a reason I would otherwise have forgotten.

Phase gates get judged by playing the build, never self-certified. The first one was played and did not pass. The verdict was "feels good, but not great yet", and it stands in the document as the current state. The work now is tuning against that rather than building past it.

A worked example

Playtesters wanted the basic swings to hit harder, so I gave them 40% more damage and shipped it. The next report said they still read as "mainly to apply the debuff". A buff you can feel that doesn't change what the move is for is worth stopping on.

The cause was somewhere else. A hit was landing 15% of its authored impulse, because two multipliers were compounding, which moved an enemy six pixels. Its body radius is twelve. Nothing visibly reacted when you connected, so the swing felt like a delivery mechanism for a status effect instead of a hit.

Both changes shipped in the end. The damage made it hit harder and the impulse made it land. What I took from it is that "do more damage" and "feel like it connected" are separate dials, and the report only named one of them.

Credits

Built in Godot 4.6 with GDScript. The implementation was paired with Claude Code. The design, the systems, the rulings and the tuning are mine.

Playable build and release notes on itch.io.

Systems in depth →

Every element, every reaction, and what each enemy is built to ask of you.

← Back to portfolio