Judge A Map By Its Cover

Cover objects are a core piece of a level designer’s toolbox, and there are many ways to use them. The examples below look at de_dust2 from Counter-Strike: Global Offensive, but some of the same concepts apply in other first-person shooter level design.

For those unfamiliar with the basics of Counter-Strike, the defusal game mode pits a team of attackers (Ts) against a team of defenders (CTs) in a series of 1-life rounds. The attackers win a round by planting and detonating a bomb at one of the two bombsites, or by eliminating the defenders. The defenders win a round by eliminating the attackers, defusing the bomb, or by running the clock out.

A full round of Counter-Strike tends to have a few phases of play:

  1. Attackers probe the enemy defenses for information and opportunities to gain map control.
  2. Attackers commit to taking one of the bombsites, spending utility (smoke grenades, flashbangs, and molotovs) to gain an advantage in the fight.
  3. If the attackers succeed in planting the bomb, defenders now have an opportunity to attempt retaking the bombsite against the attackers. This behaves as a kind of role-swap where attackers are now defending and defenders are now attacking.

Cover plays many roles in each of these phases.

Also for context, this article isn’t about competitive Counter-Strike map theory and tactics. My interest is as a level designer and my experience with de_dust2 is as a casual player where some of these patterns play differently from how they play in the esport scene.

Freestanding Cover

Freestanding cover objects provide a full loop of pathing around them. Players can use these cover objects to hide or hold against many angles. Here on B site for example, a player can use the tall box to hide from upper tunnels (left of image center), or to hide from window and defender arch (off screen to left)

Each line here is an angle this tall cover can block. Pink is to defender doors. Red is to window. Blue is to upper tunnel.

Freestanding cover leaves options open. A player can choose to peek from either side, loop around it, or disengage. They can choose to hold close to the cover and try to peek wide and fast, throwing their opponent’s aim, or they can try to back off and play from range. So long as they are in an even fight, they have options to play that cover to their advantage. Even in a 1v2, freestanding cover can help the outnumbered player juke and stay alive, burning precious seconds off the clock.

Because of this versatility, freestanding cover tends to work best on objective sites where players may duel or attempt to run the clock down.

Directional or Team-Favored Cover

On de_dust2’s B site, there is a cubby in the wall where a large wooden gate is shut. This recess is deep enough for a player to hide behind the post and use it as cover against an attack from the upper tunnels.

The team-favored quality of cover depends on how each team approaches it. For the defending CTs, this cubby is fully visible; they don’t need to clear those angles when they enter the site. But for the attacking Ts, this cubby could hold a sneaky player, and they could lose the round if they don’t clear that angle.

How the cubby looks to a defender holding against upper tunnel
How the cubby looks to the attacker attempting to push into B site

Even once the attacker has cleared the cubby, they can’t use this same cover against the defenders. The cover offered by this cubby is only useful against upper tunnels. Even worse, the cubby is exposed from the defender archway, which means attackers can’t use this cover when they are holding the B site against a defender retake.

Red lines mark the angles from which the cubby is exposed

Although this cubby is defender-favored, it still requires a big commitment. If attackers throw a molotov into the cubby, that defender has no good options. Unlike the freestanding cover on the site, the cubby doesn’t allow a defender to disengage without being spotted.

The cubby is also small enough that a long rifle muzzle can stick out. The defender in this cubby either needs a short-barreled weapon or to play anti-flash (looking at the wall) and wait for a teammate to provide info. A deeper corner, which could hold more defenders or give a single defender more options, would significantly shift the balance of this site.

Another Team-Favored Cover

On the attacker approach to A site, there is a large blue garbage bin. This is a massive cover object creating a deep pocket of cover on either side. However, the attacker entryway to this area minimizes the cover that the blue bin could provide to a defender.

Attacker approach to long A, blue bin in center. Red lines mark the angles that attackers need to worry about.

A defender could try to tuck into the corner on their side of blue bin, but their weapon muzzle may stick out, and the shallow depth of their corner favors the attacker clearing that angle. (By having a wider sweep of the corner, an attacker would see the defender’s shoulder before the defender could see the attacker’s.)

The defender perspective onto the attacker entrance at long A and the blue bin. Red marks the main attacker entrance. Pink marks the additional angle defenders have to worry about if attackers successfully take control.

In practice, if attackers successfully make it out the threshold into long A, they can tuck behind blue bin and create a crossfire against any defender attempting to push into attacker territory. By gaining control of blue bin, the attackers can lock the defenders out of this part of the map without a serious expense of utility. If attackers don’t succeed in taking blue bin, they haven’t lost much ground because the defenders can’t use the blue bin against the attackers.

Imagine instead if the blue bin was a freestanding cover object like those crates on the B site objective. If attackers succeeded in pushing into long A, then they would have an additional angle to loop around the blue bins, making it harder for defenders to hold. On the other hand, if the attackers failed to push into long A, then defenders could also take control of the blue bin and use it to hold any further attack against long A. If defenders could use blue bin, they would effectively lock attackers out.


A cover object pivots when players can use the same object against multiple angles. Freestanding cover objects pivot, since they can be played for many different angles, but simple corners can also pivot.

On long A, the timings from the start of a round mean that defenders arrive at this pivot corner just before attackers can push out the arch.

Defender view of long A toward the attacker arch. The pink line marks the pivot. The red line marks where the attackers will appear.
Attacker view peeking long A. The pink line marks the pivot.

This pivot behaves almost like a control point in the battle for map control. Defenders start with tentative control of this angle. If attackers succeed in their push, they can take control of the corner and use this lower part of long A as a staging area to commit to the A-site attack. Defenders could attempt retaking long A from attackers, or attackers could opt to silently disengage and leave defenders worried about an attack that never comes.

Outside of Counter-Strike, payload levels often use corners like checkpoints. Defenders start with control of a corner that lets them hold back the attack. But if attackers manage to push the defenders away from the corner, the attackers can now push up and use that same corner against the defenders into the next stretch of the fight.

Cover can also soften or harden the effect of a pivot. Imagine how some alternatives to long A might play:

Adding a full sized cover object here would create an extra pocket that attackers need to clear on their approach to the A site. To clear this pocket, attackers would be exposed to all of the angles at the top of long A. Also, if a defender has to disengage from a fight on the pivot, they would now have this safe pocket to retreat to instead of being stuck in the killzone of the long A street.

A similar cover object deeper on long A has the opposite effect. This reduces the number of angles that an attacker has to worry about when peeking the corner. It blocks off the sightline at “Goose” (the left corner at the top of the street). This cover also lengthens the distance a defender needs to retreat from the pivot before reaching safety. Attackers could also creep up to the pocket created by this cover and hold there safely, similar to how blue bin functions prior to this area.

The height of the cover also plays a role. If a players have full cover and can still throw utility over the top, this lets players extend their control of the space without stepping into an enemy’s crosshair.

However, for Counter-Strike’s gameplay, any of these cover modifications to long A could upset a delicate balance, making long A plays either the dominant tactic or a nonviable tactic.

A Note About Utility

If you aren’t familiar with the specifics of Counter-Strike, the empty stretch of road on long A may look like bad level design. In Call of Duty, this area would be a death trap, and common Call of Duty layout patterns would suggest the area needs flank routes and more cover here. However, in Counter-Strike these paths are possible in exchange for utility.

Smoke grenades deny vision. Smoking a threshold or t-junction can deny a path or allow a safe crossing. Smoking a corner create pockets of hidden information and off angles for enemies to worry about. Players can also deploy a smoke in the open, like the one pictured above, to create new angles for players to fight around. Smokes behave like cover objects in how they conceal information.

Molotovs and incendiary grenades behave as area denial. They can negate a cover object. In the picture above, my molotov is clearing out the corner behind the car. If an enemy is hiding in the corner, I would hear a hit effect of the molotov damage ticking. The enemy trapped in the corner would either have to deploy a smoke to extinguish the molotov or try to escape the flames and run into my crosshair.

There are also flashbangs, which can blind players or force them to look away for a crucial moment.

This combination of utility makes it possible for attackers to push areas like long A, but it comes at a cost. Each player can only carry so much utility, and grenades cost resources as part of a match’s persistent economy. When players throw their utility to push long A, they have made an investment that requires them to follow through before the smokes fade.

Bigger Patterns

Taken together, these details of cover form a few patterns:

On the attacker side of the map, cover tends to be attacker-favored with opportunities to gain territory and lock defenders out from easily retaking it. I think of this pattern as “footholds”. The attacker side of long A and the upper tunnels are both attacker-favored footholds.

The objective sites are built to support defender retakes, which means they have the most freestanding cover in the map and support a wider variety of engagement angles. There may be some team-favored positions such as the cubby on B site, but these tend to come at the cost of locking a player to their position.

Separating the attacker-favored footholds from the defender sides of the map there are killzones without any cover. For B site, it is the long hall of upper tunnels. For A site, it is the long stretch of road. In both cases, the killzones require a hard commitment where attackers need to spend their limited utility to attempt the crossing.

These patterns reinforce the stages of play I described at the start, and when a map rearranges these patterns, the stages of play change too. Some Counter-Strike maps make the attacker footholds weaker, offering greater possibility for defenders to get aggressive and lock attackers out of options on the map. Other maps make path commitments harder or easier, which affects how defender prioritize positioning and resources. Even within the same game mode rules, a few tweaks to cover can make a huge difference in how a map plays.

Closing Notes

The notes above aren’t comprehensive. Cover has different quirks in every game, even within the same genre. What’s true of Counter-Strike isn’t quite true of Halo or Call of Duty. Despite that, I hope the notes above gave you some new ways to think about cover and how level design can use it.

Thanks for reading,


Methods of Analysis and Mario

In the following, I will analyze the gameplay experience of the original Super Mario Bros. as a demonstration of two analytical methods.¹ First, I will isolate the variety of goals common to all goal-oriented games. Second, I will use an overlooked object-based analysis to complement the more common action-based analysis. Through these methods, a better understanding of a game’s generalized experience can be accessed.

The Variety of Goals
Most video games have a variety of goals. Global goals (those that encompass the entire gameplay experience) are either internally or externally constructed. The internal goals are either based in the game’s narrative reality or in the game’s mechanics, while the game’s external goals are socially constructed.

Goals_FlowchartThe dashed line indicates the jump from global to local.

In conversation, I might adopt a global goal to explain a game. “I’m trying to save the princess,” I might say, referencing the narrative goal. Or instead, “I’m trying to finish the game,” referencing a mechanic-informed goal. In yet another explanation, I might say “I’m trying to beat my high score,” or “I’m trying to beat my best time.” None of these explanations capture the essence of Mario, however. All are about reaching an end state, not about the process necessary to reach it.

To understand the gameplay and generalize the game’s individual experiences, analyze local goals instead. The way to access these local goals is by separating global goals into their elements. To achieve Mario’s mechanic-informed global goal (completing the game), a player must complete worlds, which depends upon completing levels. Assuming the player has basic familiarity with Mario, to complete a level, the player must not die. Avoiding death may be considered the irreducible local goal, but it is passive. Translated to an action, the player’s local goal is to gain lives.

Some of these steps from the global to the local were less than obvious, but the point is to understand a game’s experience more accurately. This division could similarly be performed for the other two global goals. I wouldn’t expect the narrative goal to provide much insight for Mario—the fiction has little bearing on the gameplay—but a social goal might lead to a very interesting (and very different) analysis. I will be focusing exclusively on the mechanic-informed local goal (to gain extra lives) from this point onward.

Actions and Objects
While designers such as Anna Anthropy and Chris Crawford have recommended an action- or verb-based analysis of games, this method overlooks aspects. Even though the platformer genre is associated with the act of “platforming,” it is just as associated with collectibles. I do not suggest either mode of analysis in isolation, but an object-based analysis is especially valuable for this genre.

For example, in level 1-1 there is a choice to descend a pipe into a secret area and gain 19 coins or to continue onward with the opportunity for a hidden 1-up, a mushroom (or fire-flower), a star, and 15 coins. What at first appears to be beneficial to the goal is comparatively detrimental. However, this judgment depends on the local goal; a speed-runner would take the “detrimental” route. An action-based analysis overlooks the experience of exploration created through objects.

Objects also affect player choice through the conflict of risk and reward. In level 8-2 there is a 1-up that, while easily found, requires the player to proceed past three winged turtles at an uncomfortable speed. Moving too quickly or too slowly will force the 1-up off screen, and the player will gain nothing. A similar risk occurs again in 8-2 with a mushroom surrounded by bullets and another flying turtle. Objects provide the framework for actions, and challenges imbue objects with value.

More specifically, consider the role of invisible blocks. From the action-analysis, they oppose the player’s expectations. The anticipated jump is interrupted, and the player potentially loses a life for their accidental discovery. Once a hidden block is made visible, however, it extends the range of the player’s actions by providing a new surface to jump off of. Often more valuable is the unexpected content, though. Discovering a secret 1-up or discovering coins concealed in brick is satisfying. This sense of discovery is a central experience in Mario that would be less easily understood from an action-based analysis alone.

The local goal is made meaningful through scarcity as well. In Mario there are three ways to gain lives. For objects, the player can either collect 100 coins or a single 1-up mushroom. This ratio creates value that only exists due to the comparison. For actions, the player can perform a turtle-shell trick. (This means hitting a turtle shell 9 times by either jumping on it repeatedly, hitting it against 8 other enemies, or some combination.) This trick requires several conditions, making it as rare as 1-up mushrooms, while inherently more difficult.


From this local, mechanic-informed goal of gaining lives, skilled play is characterized by creating optimal routes through objects and actions, risks and rewards. Mario becomes about much more than beating the game or saving the princess.²

TL;DR When analyzing games, it’s beneficial to ask “How does gameplay (constructed by the interaction of objects and actions) affect local goals and, by extension, the generalized experience of a game?”

¹ The version of Super Mario Bros. referenced is from the SNES Super Mario Bros. All Stars.

² This analysis also provides a baseline from which other Mario games may be compared. I will leave this for later, but in brief, a trend of devaluing bonus lives becomes apparent from Super Mario Bros. 3 onward.

Related Reading:
Anna Anthropy’s “Level design lesson: to the right, hold on tight.”

Robert Yang’s “Ludodiegesis, or Pinchbeck’s unified field theory of FPS games.”

A Theory of Cooperative Competition

In cooperative games, players act against a common opposition, while in competitive games players oppose one another. I want to approach these terms—competitive and cooperative—in a different way. Instead of a struggle for shared success, it is useful to define cooperation as a struggle for shared enjoyment.

This definition decouples success from enjoyment, because there can be enjoyment in defeat. When I die in a game to protect my friends regardless of their success without me, when a friend suddenly falls and our virtual mortality is made tangible, or when we resist defeat in a glorious last stand, we have found an enjoyment distinct from success. These examples are a narrow sampling of cooperative gameplay. Cooperative enjoyment can also be part of competitive games. Consider the following examples:

Chess has four general outcomes. 1) Player A wins by a significant amount, and Player B loses. 2) Player A loses by a significant amount, and Player B wins. 3) Player A and Player B tie. 4) Player A wins or loses in a close game.

Because Chess is competitive, success would only be upon victory. This means that outcome 1 is the goal, followed in order of desirability by outcomes 4, 3, and 2. However, anyone who has played Chess knows that outcomes 1 and 2 are the least interesting; a four-move checkmate is only amusing the first time.

The ideal chess game is outcome 4, a series of cunning traps that are detected and circumvented until one succeeds, regardless of victory or defeat. This reality makes more sense from the perspective of cooperative enjoyment than from the traditional notion of competition. Both players are cooperating for the shared enjoyment of outcome 4.

There is also an unusual amount of trust involved. Stronger players might remove pieces, modify rules, or secretly weaken their strategies as handicaps to increase the likelihood of outcomes 4 and decrease the likelihood of outcomes 1 or 2. Either player could also intentionally lose, forcing outcomes 1 or 2, and eliminating all enjoyment. There is a mutually expected sportsmanship.


A visual summary of Chess

The second example is Call of Duty (any of the games since 2007’s Modern Warfare will do). There are three general outcomes in a multiplayer match of CoD. 1) Player A’s kill-death ratio is negative. 2) Player A’s kill-death ratio is positive. 3) Player A’s kill-death ratio is neutral, give or take. This is a specific way of playing CoD; most players ignore deaths and focus instead on whether they were on the winning team or not. However, kill-death ratio is the only way a player can influence my team’s success or failure, so that is the metric I chose. (If recent CoD games offered support interaction, like the medics of CoD3, this would not be the case.) Even so, these categories are scalable down to each engagement in a match, and up to a session of matches without changing my findings.

The only enjoyable outcome is 2. Like any effective random reward schedule, outcome 2 happens just often enough for players to continue playing. Outcome 1 leaves players frustrated, but there is a need to redeem oneself and play “one more match.” Outcome 3 is almost as bad, because players know they are capable of outcome 2. And so they play again.

Most modern competitive shooters amplify these problems. They are designed for competition (and victory), rather than cooperative enjoyment. CoD’s “score streaks” unlock bonuses (e.g. airstrikes, helicopters, dogs) that behave as positive feedback loops. These bonuses cause arbitrary death, which causes the positive feedback loop of frustration. Unreal Tournament 2004’s “adrenaline” also unlocked bonuses (e.g. invisibility, health regeneration, speed boost), but these were not arbitrary.

Unlike Chess, there is no way to examine CoD for cooperative enjoyment. Even if players have friends on their team, the only cooperative interaction is by sharing tactical knowledge, and the benefits of this in CoD are limited. In short, CoD’s multiplayer is severely asocial.


A visual summary of CoD

TLDR; A multiplayer game’s encounter/match/session needs to be intrinsically satisfying, or else only victory will be. Thinking of competition through the perspective of cooperative enjoyment may help in achieving this.

Note: the graphs are visual representations of my quantified subjective experiences. They are not based upon data I have collected. I could have made the curve steeper for Call of Duty, or scored a tie in Chess less enjoyably, so read them cautiously.

On Multiplayer Level Design: Basics

I’ve designed amateur levels for a while now.¹ For each level, I’ve attempted to explain the rationale behind my specific layout or weapon choices, yet I’ve never written about a general theory of multiplayer level design. That is the point of this post.

Below are several abstracted principles, and though I’ve written them as absolutes for clarity’s sake, they are my subjective observations. The first three principles should be apparent; these are my advice for new level designers. The last three are debatable, so I have attempted to defend them in the text below.

1. A successful design follows from familiarity with the game. Play until you understand.

2. Playing games is necessary, but not sufficient, to understand them.

3. Understanding differs from skill. Inept players can be capable designers.

4. Levels do not exist in isolation.

5. Mechanics inform, but do not determine, level design.

6. Levels are the medium through which players encounter a game’s systems.²

In early 2008 I purchased Unreal Tournament 3 because it had a level editor, not because I loved Unreal. My early levels were flawed by this; they played like Call of Duty, Halo, or whatever I was playing at the time. This isn’t a problem that goes away either. My latest designs are visibly influenced by Quake III. The solution is to be aware of these influences when designing.

In the early Unreal games, there was no codified style. Unreal suffered from imbalanced and redundant weaponry. Although UT99 reduced these problems, the level style was inconsistent. Compare Inoxx’s SpaceNoxx or Pyramid to Akuma’s Viridian or Malevolence. The divergence of styles made UT99 many games in one.

UT2k4 and UT3 were more consistent. Separate styles bound the levels to their respective games. Checker’s Ironic belongs to UT2k4, not UT99 or UT3.³ This same stylistic consistency is true of Quake III, Team Fortress 2, and Counter Strike. I could build Dust in Unreal, but I would be ignoring both mechanical and stylistic differences between the two games. Dust would not be an ideal expression of “Unreal-ness.”

Yet, when modding for UT3 was at its peak, ports of Quake III levels were common. From a mechanical view, these two games are almost identical. The movement, the weapons, and the power-ups are similar. They could be the same game. The style of their levels is incompatible, though, and it’s at this point that most ported levels failed.

One-way paths, dead-ends, and narrow corridors are typical of Quake levels. These elements reinforce strategies built around timing pickups. Many paths are pointlessly dangerous without timing items correctly. UT2k4 and UT3 levels avoid this style of design. Although timing is a part of strategic play, predicting the enemy’s location relative to one’s own is more important.

There are exceptions in both games, though. Quake III’s Vertical Vengeance is compatible with UT3 (Moonflyer built an excellent port), and Inoxx’s UT99 levels are arguably more compatible with Quake than with Unreal. Despite these exceptions, I think my points about the role of level design still stand.

This summer I had a brief, freelance level design gig. An independent programmer needed levels for his mechanically complete game. He requested something like Quake or Unreal, and though there were several design restrictions, he gave me enormous freedom. By designing the first multiplayer level for the game, I was central to defining the style, and—by extension—defining the game.

In designing levels, even as an amateur, be aware. No level exists in isolation, and familiarity with a game’s style and mechanics is essential when designing levels for it. Reviews seldom mention level design, and indies are quick to cut corners, but its role can’t be ignored. If nothing else, remember that to design, you have to play.


¹ I use “amateur” in both senses of the word. I design my levels out of love for the process, but I’m also not paid for my work.

² In games like Skyrim, I consider both the main world and individual dungeons to be levels. There are also many games without levels; this principle doesn’t apply to them.

³ Checker’s Ironic was originally built for UT2k3, not UT2k4. However, the two games and their level design styles are much more similar to each other than they are to UT99 or UT3.