Combat Flow

It’s time for my first substantial post in a while.

Overview

When it comes to combat systems, one of the common problems in MMOs is that they don’t have a strong flow. Let me explain some terms I’m going to use here:

  1. Combat Encounter: This is the entirety of a fight, which may be anywhere from a single to a dozen monsters.
  2. Combat Flow: This is the natural progression that happens in the course of a fight.
  3. Combat Segment: This is a sub-object within the encounter. One encounter may consist of multiple segments, each of which has their own combat flow.  For example, each monster may be a segment.

Simple enough. In most non-MMO combat-focused games, the duration of the flow is nearly identical to the duration of the encounter. The actions I take trickle down, changing how I will proceed in the near future. This tends to be true no matter how many opponents you are facing.

Example Scenarios

Let’s say I’m playing a fighting game with a single opponent. My actions at any given second are determined by what’s happening in the fight. If I break my opponent’s guard, I’m going to press an attack… but perhaps more cautiously if he pulled off a good combo breaker last time. I’m going to change my approach depending on the relative health of the my opponent and my character. I’m going to watch how my opponent attacks and look for holes to exploit. Even if we disengage briefly, the flow still persists. That disengagement period is more likely to happen due to previous events, and our next actions are influenced by the disengage.

Next, let’s say we have an action-RPG with an emphasis on the action (Ninja Gaiden or God of War more than Diablo). In these, most combat encounters consist of multiple opponents. When this is true, positioning naturally becomes a critical flow element. You move through the network of enemies, with your relative positions increasing and decreasing the strategic weight of different options. The other enemies alter my behavior, and the fight proceeds as a unit. These games naturally benefit from a matrix of positioning, time and vulnerabilities. Note that with the except of a few uber attacks, these games tend to have no use restrictions on attacks. You can do that super powerful attack over and over if you can pull it off, but there’s a good chance it’s not appropriate, it will leave you vulnerable and it just doesn’t fit in your chains. On that note, I ought to post about combat cancels in the future.

This doesn’t just apply to action games. Magic the Gathering is a great example of a game with a strong combat flow, if not always because of the same principles. Even RTS games like Total War follow this loose guideline.

How does the MMORPG fit in?

Now we get to the MMORPG. Say that the MMORPG has a 60 second encounter and the action RPG has a 30 second encounter.  You fight 3 enemies in the MMORPG and 5 in the action RPG. With most of the MMORPGs, the duration of the flow = encounter duration / # of enemies. This is an over-generalization, but it makes it easier to make my point. If there are three guys, I’m going to kill one and then do exactly the same thing to the next guy and I will repeat it for each opponent. Depending on the game, my overall approach to the fight may change, but for this we’ll assume the standard encounter is 3 opponents.

With the above scenario, the generic MMORPG encounter is made up of three 20 second segments. Each of these segments has the same flow, making the repetition cycle 20 seconds. With the action RPG, the the duration of the flow = the duration of the encounter. This gives it a 30 second repetition cycle. Even though the overall encounter is shorter, the repetition cycle is longer. That’s a good thing.

Note that while time is a critical element here, combat flow is not about the total length of the fight. Whether your combat takes 30 seconds or 5 minutes, you generally want to make the flow equal the encounter length. Special circumstances can be exceptions, but as a rule of thumb you want to extend the combat flow to be equal to or close to the length of the encounter. You definitely don’t want the combat segments = # of opponents. Although you can measure the repetition cycle, that number alone isn’t necessarily useful. An example with two 30 second repetition cycle scenarios: If you make me kill five guys at 30 seconds each (2.5 minute encounter) and my approach to each is identical, then it’s actually going to feel more repetitive than a combat that pits me three guys at 10 seconds each in an encounter with only one segment.

When an MMORPG reduces the time it takes to defeat a single opponent, it becomes easier to see this problem in the combat system. Players won’t describe it this way, but it can be the cause for many symptoms related to the combat system. Most MMORPGs remove the key elements that contribute to combat flow. There are often technical reasons behind the removal. For the sake of argument, let’s assume  it’s impossible / unfeasible / a bad idea / whatever to make an MMORPG that has a combat system on par with an action game, just because it’s close to what most MMORPGs offer. If this is the case, it means the game systems need to compensate for the inherent loss of flow-strengthening elements.

Broken Flow

In MMOs where you fight multiple enemies, it’s common for the resource pool to be the main element that carries over from one enemy to the next. In contrast, nearly all action games use time and vulnerability as their restriction instead of a resource pool. All of your attacks are available, but they are locked in chains. Attacks have varying execution times. This is not as simple as an activation time. The following components are usually present:

  1. Pre-hit frames: The time between clicking the attack and damage.
  2. Hit frames: The time when the attack is hitting.
  3. Post-hit frames: Time after the attack when you can’t act.

Then, each attack has other considerations. Does it stutter the enemy? Can I get the most benefit out of my attack at this range? Will this leave me vulnerable with the current positioning of the enemies? Can I cancel this attack if I need to react to an unexpected threat? Attack use is calculated and mana pools tend to be for encounter-winning abilities. Additionally, the positioning tends to be a binary switch for whether powers can be used in an MMO, while it impacts the strategic options in action games.

Now let’s look at the MMO resource pool (usually mana). What does it accomplish? It’s primarily a disabler, not an enabler. With standard implementations, the resource pool simply prevents actions that you might want to take. In contrast, time and vulnerability based systems adjust how effective action are in each situation. You may always be able to use a big charge up attack, but chances are it’ll be one of your less frequently used abilities. With a resource pool, you can choose to either be effective now or effective later. There’s a consideration for efficiency over the course of an encounter, which contributes some flow. It’s not as strong as the flow that comes from time, vulnerability and position-based combat.

Note this doesn’t mean you can’t use resource pools, but it does mean that it will not provide the combat flow you want in the combat system. So, for the tally, MMORPGs lose flow in the following areas:

  1. Actions rarely vary in effectiveness in a non-formulaic way.
  2. Actions are resource-limited, not effectiveness-dependent.
  3. Actions cannot be changed once started.
  4. Actions are binary on/off due to position, as opposed to adjusting the effectiveness based on position.
  5. Actions rarely carry over from one opponent to the next.
  6. Actions rarely impact the enemy in a way that strategically alters my potential actions.

This post is full of gross over-generalizations and there are with exceptions, but I hope those don’t distract people from the point I’m trying to make. The traditional MMORPG’s combat flow suffers in numerous areas, and yet we expect people to use that combat system much longer than they would in other games. We need the flow in our games to be consistently close to the encounter duration so that we don’t have as many repetition cycles, especially in games with fast combat.