Writ

300 Situation in Level Design

2023-09-29

A few years ago I read a short post called The Door Problem of Combat Design (which I think would be snazzier if it was called ‘The 300 Situation’). It’s a great short read, which briefly describes a common level design mistake where the player opens a door, and is immediately disincentivized from going through the door. Generally, the problem is that the player just uses the doorway as a choke point to defeat boring enemies, then progress into the space (which should have been used for the encounter itself).

This is something I can’t shake out of my head when I see it, such as with Skillup’s Deathloop Review.

I had to fall back through this corridor, and what i realized is that all the enemies will just run through the corridor, and i could just kill them as they did so.

The door problem, in a nutshell.

Daikatana

I ran up against another great example in Daikatana, the infamously-bad game. As practically everyone who has played it after the dust settles has agreed, it’s not that bad. But I did notice several very poor level design mistakes, and the 300 situation came up in two distinctly different ways that I wanted to outline.

Classic Form

The classic form of the 300 situation is where you open a door, a flood of enemies rush at you, and you’re overwhelmed by numbers and types, and you’re best suited by stepping back and using the door as a choke point, as below.

Immediately upon opening the door, you’re met with guards, flies, security drones, and possibly melee mechs. Hitscan ranged, flying melee, and flying spawners. There’s no reasonable way to use the layout presented to you to get cover from the ranged enemies, nor kite the melee ones. If you sit and think about it long enough you’d probably find a way to push forward without dying, but you’d certainly lose more health than if you just… stayed at the door.

Part of this is a problem of the bots in use - they’re generally not very able to be viewed by the player before combat begins, they aggro nearly immediately every time. So the player is not given time to take in the level and choose how this encounter should play out first.

But simple AI isn’t really a blocker, it’s just a different tool for LD’s. It seems as if the player could have been given more hard cover and high ground, with enemies running a gauntlet below you to get to you. It’d retain some of the core idea of the encounter, and with some tweaking could probably be done without any particular bot tricks.

Impossible Race Form

The impossible race form of the 300 situation is where you open a door, see an enemy down the hall who starts stomping towards you - a classic dps race. Here’s what that looks like in Daikatana;

But you’re not given enough room or tools to be able to actually succeed in the race. As a consequence, you’re incentivized to just back off and avoid the race entirely, and move the encounter into a larger previous area that turns it into a mobility challenge.

But, because this is Daikatana, the bots are broken and unable to physically move through a door. So instead of making you transform it from dps race into mobility challenge, it just… negates the challenge entirely.

Let’s leave aside the laughably broken bots. What fixes this?

One option is to lengthen the hallway, or an animation for the enemy that moves them from an idle state to a combat state ("whoa! Get him!"). This would make it a proper dps race. Or you could have an extended spawning animation (a doom portal), telling the player a race is about to start. But you’d still have the problem that the player is probably best off by just backing off.

You could make narrower rooms going into the dps race, so that no matter how far back you go, you’re still in a race. That can be a little too obvious if used too often. Maybe a diode (a tall drop that the player can’t climb back up) before the race. Or to have the player perform the race after getting to the end of the hall - after flipping a switch or something.

And let me linger on what a DPS race might look like in a shock-like game - maybe the player is stealthing through the hallway in a way that the enemy can’t see. It presents the problem to the player immediately, and lets them realize that to get to the end of the hallf (where their goal is), they will have to unstealth and aggro the enemy. It gives them some time to plan ahead what their part of the race will look like.

T-Trap Form

Technically this is an attempt to solve the classic form; just don’t allow the player to go back through the door. Trap them in the room with the enemies. Make the door a diode, sure. What makes this a "trap" though, is that the player is not given any opportunity to move or make decisions before the fight begins.

I call this the "T-Trap" because of the T shaped nature of it - the enemies are hidden from the player on either side of the door, and the player is trapped as soon as he steps through it. Not only is the player put through a diode, but the information is hidden from you until the trap is sprung.

All site content protected by CC-BY-4.0 license