25
Apr
08

Engagement Distance

One of the key considerations in designing a shooter is engagement distance. This is the distance between the player and their opponents during combat.

Once upon a time (2001), I wrote an arena shooter called Mojotron as a hobby project. It was somewhat similar to Geometry Wars, except that Geometry Wars hadn’t been written yet (I was inspired by Llamatron instead). After I finished it, I worked on a sequel that would take that fast-paced combat and place it into a top-down maze exploration game. Like a combination of Gauntlet and Geometry Wars.

I took the Mojotron combat model, added scrolling and hooked up a random level generator that would produce networks of rooms (DungeonMaker, very cool).

Suddenly the game became noticeably less fun.

Monsters would shoot you from offscreen. Weapons that were appropriate for short ranges became frustrating to use against distant targets. Fast melee monsters that were easy to react to became very difficult if you were unknowingly scrolling toward them. In some situations, monsters were totally non-threatening, because they were too slow and too distant. The difficulty became very inconsistent.

The old single-screen arena had an important property: it put an upper limit on the distance to the opponents. The engagement distance varied from extremely short ranges (those claustrophobic moments when the player is hemmed in by monsters), up to the dimensions of the screen. By having a rough idea of the distance of the monsters, I was able to easily tune monster speeds so that they gave the player a challenging, but not excessive reaction time test. I was able to tune the speed of the player’s bullets so that they didn’t require the player to lead monsters by insane amounts.

When scrolling levels went in, all of that object speed tuning went out the window.

The most extreme examples of controlling engagement distance are the old 2D forced-scroll shmups (R-Type, 1942, Raptor and so on). Every time an enemy emerges into the screen a quick-draw gunfight starts between the player and the enemy. Neither gets to open fire before the other, the range and the timing are perfectly matched.

Imagine what a shmup would be like without this restriction. Bullets from all the enemies in the level would rain down on the player, and the player would spend most of their time killing enemies that aren’t even visible.

I could’ve applied that to my shooter, freeze everything that’s outside the screen but it seemed cheap, and at the time I didn’t understand what a central design decision it was.

In a modern 3D shooter, the situation is quite different because line-of-sight and facing direction play a key role in visibility. The level designer helps determine the engagement distance by placing walls.

You might imagine that this solves the problem, but amazingly, there was a 3D shooter called Chrome which managed to make the same mistakes my hobby game did. It had very open outdoor levels and no upper limit on how far enemy troops could see. This resulted in every confrontation turning into a sniper battle at extreme distance. This mightn’t have been a total disaster (Far Cry pulled it off), but the weapons frequently weren’t accurate enough to hit things at that range. In the end, it totally destroyed the gameplay.

Shooter designers need to decide on what the ideal distances are for combat. This influences the design of weapons, levels, cameras and movement speeds.


2 Responses to “Engagement Distance”


  1. 1 Don
    June 21, 2008 at 9:19 am

    So does this mean you’re working on a shooter??

  2. June 21, 2008 at 10:28 am

    I couldn’t possibly comment on unannounced games. 🙂

    This was more spurred by Undertow. It’s a fairly elaborate team deathmatch shooter on XBLA with top-down shooter style gameplay. Or at least it would have shooter gameplay if they hadn’t muffed setting speeds and ranges so badly.


Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s


%d bloggers like this: