6 - Combat Flow

*SMACK SMACK SMACK* So you want to learn something about combat flow? 

*SMACK SMACK SMACK* Hold on, just got to deal with this creature. 

*SMACK SMACK SMACK* Alright, with that problem dealt with, let’s get going.

Did you notice anything interesting about the paragraph above? There is something a bit strange about the formatting, don’t you think? Let’s break it down: 

*SMACK SMACK SMACK*

So you want to learn something about combat flow?

*SMACK SMACK SMACK*

Hold on, just got to deal with this creature.

*SMACK SMACK SMACK*

Alright, with that problem dealt with, let’s get going. 

Hmm, looks like the paragraph structure repeats three SMACK’s, and then nine words. 

That’s right, we’re starting off by building on the idea of patterns! One point I talked about in my previous post is how patterns in games serve as little puzzles for the player which they get joy from deciphering and abusing. This idea extends into combat as the player deciphers an opponent’s moves to figure out the best strategy to defeat their opponent. 

For the purpose of this blog, we’re going to focus on combat flow by breaking down attack patterns using the fighting-game style breakdown: Start-up time, Active time, and Recovery time.

Start-up Time

When designing any particular attack for your game, your player should always be made aware of when an attack is being made against them. Why? Because an attack that the player can’t react to is a game the player can’t play. Think of a tennis game: One player hits the ball towards the other player and the player has from the time their opponent swings at the ball, to the point that the ball passes them to react. If the ball were to move too fast, the player wouldn’t be able to react to it. 

You might be thinking to yourself now, “But ProphecyToad, that’s the point of tennis, that’s what makes them a better player!” You’d be right! But that’s sport, not a video game. Now, how would you feel if you played a game where the AI were always the better player, moving and attacking faster than you can react? You probably wouldn't want to play.

Let’s move the projectile analogy over to someone playing an FPS game and the opponent is a sniper. You COULD make the sniper shoot the player without any notice, and if you’re a hardcode game where realism is the draw like Escape From Tarkov that’s fine, but for non-realism games this increases frustration for other players.


How could we fix this issue? An attack start-up time! How an attack start-up is portrayed to the player differs from game to game, but the concept is the same: The player is given some kind of information that warns them of an incoming attack. This start-up should give the player enough time to recognise the danger and react to the attack. Following the sniper analogy, it is very common for snipers in video games to have a scope flare or laser to show the player where they are and that they are looking at the player, which is an indicator of incoming danger that the player can react to. Here is an example from Halo Infinite:

Let’s look at another example using my favourite Stygian Zinogre from Monster Hunter: World. The Stygian Zinogre has an ultimate move where it attempts to combo the player with powerful attacks. How does the player know this attack is coming? The creature will howl and stand on its hind legs before beginning its assault on the player. As soon as the player sees this animation, they are able to discern what is coming next and construct a plan to react.

Active Time

This is a developer’s favourite time, because this is the time where they get to try to beat the player (Hopefully fairly). This time should be made obvious to the player and should have a consistent duration for each individual attack so that the player can understand how long they have to be defensive for before they can become the aggressor. Let’s use our old friend Stygian Zinogre to visualise this. 

In the video above, the Stygian Zinogre’s attack consists of a howl (startup), two slams, and a spiral tackle (active), and a final howl (recovery).  Each section of this attack takes the same amount of time every time the attack happens, and always happens in the same order. This means that after the player witnesses the attack enough times, they will understand exactly how long the attack will go for and how to react when they see the attack’s start-up frames.


Recovery Time

This is the player’s favourite time, because this is where they get to enact their revenge on whatever has attacked them. This are the down-time between attacks where the creature is unable to make any reactive decisions and is instead stuck “recovering” from their own previous decisions. This can be known as the players “opening” to attack. Without this opening, the player has no clear time during combat where they can take an action against the creature.


Finishing up the analysis of the Stygian Zinogre’s ultimate attack, the recovery frames of their attack can be seen during the final howl. During this howl, the Stygian Zinogre indicates it has finished its attack and pauses for several seconds. These precious few seconds are the player’s opening to close in and strike, before the start-up of the next attack begins.



Visualising Combat Flow

You can find a lot of information about creating combat animations online, but let’s instead visualise a typical combat flow using my favourite tool, Paint.

In the above him image, you can see the three stages of an attack clearly defined, as well as a Neutral state. The neutral state is a period of uncertainty for the player as whatever it is they are fighting hasn’t made its intentions known yet. Will it leap, swipe, bite, or breathe fire? The player doesn’t know and so the player is likely waiting for the first visual queue, that being the start-up.

During the start-up, if the attack animation has a unique start-up (and it should), the player can read their enemy’s incoming attack and react before they take any damage. The duration of this start-up should be directly proportional to the amount of damage the player will take. A higher damage attack should have more start-up frames, while a weaker attack may not.


After the attack is completed, the player is rewarded with a period of very low threat while the enemy recovers from their attack. This is the period where the player can get some damage in before their enemy begins their assault again.

Now, say, I think I’ve seen a graph like this before somewhere?


Your Games Create Stories

Some of you may already be familiar with the traditional narrative arc used in storytelling. Doesn’t it look surprisingly similar to the image I just showed? That’s because each moment in your game is about creating a story for the player to immerse themselves in, and that includes attacks. Each attack should feel like an important moment where the player is presented a problem that they can choose their response to, and the conclusion is determined by their choice; just like a story. In stories, sometimes shocking the reader with a very sudden action can engage the reader more, but in interactive experiences this isn’t the case. Players want agency, they want to be able to determine the outcome of the things they are presented with. 

To them, it is their story, and they deserve the chance to decide the outcome.

More Resources

If you would like some more resources to look into animation theory, check these out:

Breaking Down Attack Animations

Masahiro Sakurai – Creator of Kirby and Super Smash Bros

https://www.youtube.com/watch?v=LewXWM7HDd8&ab_channel=MasahiroSakuraionCreatingGames


The Five Fundamentals of Game Animation: An Introduction

Video game animation study

https://www.youtube.com/watch?v=CrOGr8i575k&ab_channel=VideoGameAnimationStudy

FROG TIME!

Woh, freaky! Check out this species of glass frog! Their skin is transparent and you can see their neatly packed organs!