Using Frame Data
When you look at frame data, you're going to see a lot of numbers. I know some people are deathly afraid of numbers or just go mentally numb when they see the huge tables, but it's all really simple. You don't need anything beyond a first grade education to derive meaning from these numbers. Hopefully this guide will help you make some sense of what they all mean.
Have you ever seen frame data? I think many people skim over these charts and see the +'s and -'s and think to themselves, "+'s are good and -'s are bad." And for the most part, they are right, but they don't take that extra step to understand how these numbers relate to each other or how they work in specific situations.
Intuitively, I think we all understand that attacks take time to hit, have a time when they hit, and have a time when you just can't do anything. We call these periods of time: startup, active, and recovery. All moves transition though these three phases in that order. And these phases are measured in units of time that we call: frames.
- So what is a frame? Television, movies, games, videos and such are all like flip-books, just a series of still-images shown in rapid succession to give the illusion of smooth motion. A frame is one of these still-images. You don't need to know how this magic trick works. For fighting games and understanding frame data, you just need to know that a frame represents the smallest unit of measurable time. Regardless of how much real-world time a frame is representing, 4 frames will always be less time than 5 frames and 2 frames will always be more time than 1 frame.
- The standard for most fighting games is to run at 60fps, that is to say that 1 frame will last 1/60th of a second.
- Startup is the time starting from when a move initiates to the first hitting frame (inclusive). With a move initiating when you press a button (or complete the motion/command).
- Active frames are the frames during which a move's effect can occur. For attacks, these would be the hitting frames where the attack can hit, be blocked, or be caught.
- Recovery are all the frames following the active frames. These are the frames remaining till you are free to move again.
In the frame data on this site, we use the time-to-hit convention. Startup will list when the move hits, a point in time, which is different from Active and Recovery, durations of time.
If a move is said to have 5 frames of startup, it actually has 4 frames of startup and hits on frame 5. This is so you don't have to do any extra math to figure out when a move hits. When calculating the total animation time of a move, remember to subtract a 1.
Most frame data for other games use this same convention, but some may list startup as true-startup. So beware of this if you notice your calculations are always off by 1.
- Blockstun and Hitstun
- Blockstun is the period of time after blocking an attack where the blocking character is stuck in a guarding animation.
- Likewise, hitstun is the period of time after getting hit by an attack where the character is stuck in a reeling animation.
- See also the next entry.
- Attack Level
- Many games on this wiki use an Attack Level system to standardize numbers such as Blockstun, Hitstun, and Hitstop for every move in the game, with a few exceptions (which we record in the notes for such moves). You can find these numbers in the games' Frame Data pages, which are linked in the sidebar on the left - for example click here for the Strive table.
- Static Difference
Blockstun - ((Active - 1) + Recovery) = Static Difference
- Static Difference is the difference in recovery time between the aggressor's attack and the defender's blockstun, assuming you blocked the move on the first active frame. People often use this interchangeable with frame advantage.
- Frame Advantage
Blockstun - (Remaining Active + Recovery) = Frame Advantage
- Frame advantage is a situation in which you can act before your opponent can. Frame disadvantage is when your opponent can act before you can. Even, or neutral, is when you and your opponent recover on the same frame.
Blockstun - Recovery = Maximum Frame Advantage
- A meaty is when you land your attack midway through its active frames. When an attack hits, it still has to transition through its remaining active frames, plus its recovery frames before it completes. By landing your attacks as meaty, you recover sooner, giving yourself more frame advantage. The most common way to meaty an attack is to knockdown your opponent and have them wakeup midway in to your attack.
- Calculating Frame Advantage
- Static difference is the frame advantage you would have if you land your attack on the first active frame; in other words, it is the worst case scenario. A perfect meaty is when you land your attack on the last active frame -- the best case scenario. The frame advantage of a move is not a single number, but a range of numbers.
FAQ and Stuff
Q. What can't frame data tell me?
A. Frame data is information on timings. Sometimes there'll be additional information like attack effects and such. The major thing frame data lacks is the positional data. It can tell us when a move will hit, but it can't tell us where the move will hit. We can see if there's enough time to do a move, but you still need to go back to the game to make sure the move is relevant, spacing-wise.
Q. Are frames different from game to game?
Generally, fighting games run at roughly 60 frames per second. That is, one frame is shown for a 1/60th of a second before proceeding to the next frame.
This isn't always consistent within a game. Super Street Fighter 2 Turbo, for example, runs at a slightly higher than normal framerate on Zangeif's stage, and a slower on T. Hawk's stage. Guilty Gear exhibits momentary slowdown when large amounts of special effects are on the screen. Console ports sometimes also have speed differences, Guilty Gear Accent Core, PS2 Capcom Vs SNK 2, and PS2 Third Strike all run faster than their arcade counterparts.
When thinking of frames, it's best to think of them as just that. Avoid associating them with real world time. 1 frame is always less time then 2 frames, but 1 frame in SF4 isn't 1 frame in GGAC.
Q. How many frames per second can the human eye see?
A. This question isn't so simple to answer, and perhaps even the question is incorrect. But I can tell you that back when First-Person Shooters and 3D hardware were getting big, I could absolutely see the difference between 15fps, 30fps, 60fps, and 100+fps. As we kept managing higher and higher frame rates, there was never a point where it felt like my eyes/brain were missing frames. Though there was definitely a point where I was missing money.
If you're interested in the topic, there's google.
Q. How many frames can people react to?
A. To best answer this question, we should first differentiate between two types of reaction time: simple reactions, and complex reactions.
Simple reactions are when you are waiting to react to a single possible action. The classical example is pressing a button when you see a light appear. On average people can perform simple reactions in around 13 frames, but this will become slower if the animation is more subtle.
Complex reactions are when you must react differently to different stimuli. For example, pressing different buttons depending on the color of light that appears. On average performing a complex reaction takes over 20 frames, and can take longer depending on how many different stimuli the person must react to.
Simple reactions are clearly much faster than complex reactions, but for novice players EVERYTHING in a fighting game looks like a complex reaction. So how do players react to situations and attacks as if they were simple reactions? As a player gains knowledge of a game and learns the habits of his opponent, he can filter out unlikely options in his mind to improve his reaction time!
Case Study 1 (Brief Introduction to Frame Advantage, and Why Knowledge is Power)
Let's take a look at a situation in GGAC. You're Ky and you're fighting Jam. Jam does her 5H and you block it. What can you do afterwards?
- Let's look at Jam's 5H data
- Startup: 13
- Active: 3(3)3(3)3
- Recovery: 15
- Static Difference: +1
- Jam's 5H is a three hit move. Number in parenthesis represent the number of frames between each hit.
What we want to look at is the static difference on Jam's 5H. It's +1, a positive number. This means, if you block Jam's 5H, Jam gets to "go first." She recovers one frame before you recover from blocking her 5H. Now let's say that after the 5H Jam follows up with her 5K.
- Here's Jam's 5K data
- Startup: 5
- Active: 4
- Recovery: 7
- Static Difference: +1
Here, the important bit is the startup, which is 5 frames. After blocking Jam's 5H you need a move with 3 frames of startup to beat the incoming 5K. It's 3 frames of startup, instead of 4, because you are starting one frame late. 4 frames of startup is needed to trade, and anything 5 frames or more will get beaten out.
Looking over Ky's data we see that 2P is his fastest move, at 4 frames of startup. In this particular situation, Ky can only trade with his 2P or risk a Vapor Thrust.
Now you might be thinking you didn't need to look at a bunch of boring charts to figure this out, you could just play the game and come to the same conclusion. And yeah, you could. But how long would that take, and would you even arrive to the same conclusion? How do you know when you solved the situation? There are a lot of variables in a match. Human execution alone adds a lot of noise to experiments. I know for people without access to frame data, or refuse to look at frame data, tight situations like the above, they sometimes conclude Ky can beat out Jam's 5K if he gets his 2P out early enough. But with the data, we see that early enough doesn't exist. Should Ky ever beat out Jam's 5K then it is due to an error in execution on Jam's part.
But we do have the data, so let's take an even closer look at this situation. Reviewing Jam's data we see that 5K isn't even her fastest move. 2P is 1 frame faster. What if she followed up her 5H with 2P instead of 5K? That means that after a 5H, against a 2P, Ky would need a move with 3 frames of startup to at least trade. But Ky doesn't have any move faster than 4 frames. What about the Vapor Thrust? It just so happens that Jam's 2P also recovers in time to block a Vapor Thrust.
In actuality, Ky has no options after normal blocking Jam's 5H. And we learned all this without even fighting the matchup!
Have you ever heard of the OG player Buktooth? Let me paraphrase him:
"Match experience can replace knowledge, but knowledge can often let you come to conclusions that would otherwise require match experience."
Case Study 2 (Creating Frame Advantage: Meaty Setup, Okizeme)
- May's 5K data
- Startup: 9
- Active: 6
- Recovery: 9
- Static Difference: -3
When May knocks you down, she can run up and do a 5K with near impunity. Her 5K is throw invincible, affording novice May players an easy reversal-throw-safe okizeme. And is relatively safe against many backdashes. But when not meatied, 5K is frame disadvantage on block. Many novice May players improperly meaty their 5K, requiring them to chain to other moves to create space, or burn meter to avoid a frame-disadvantageous situation.
With a proper meaty 5K, May keeps her throw invincibility while also becoming reversal-safe against a large majority of the game's reversals and topping it all off with a +2 on block. The frame advantage gained from a meatied 5K aids her command-throw game.
Case Study 3 (Meaty Setup, Traveling Hitbox)
Many moves are in-place: their hitboxes move nowhere and you must forcibly position your opponent to take the attack midway through. This is how meaty setups done on okizeme work.
The second way to meaty a move is to make use of a traveling hitbox. Any character with a run can use the momentum from their run to cause their attack to travel and hit midway through its active frames. Some attacks move by themselves: Axl's green chain is a good example of this, along with Zappa's f.S and Slayer's 2D.
An example of using dash momentum to induce a meaty is with Ky's 2D. Ky's 2D, in most instances, is punishable on block, if it weren't for his ability to jump-cancel or special-cancel it. But canceling 2D to a jump or a special move carries its own risks.
By running, putting the attack out early, and then using the run's momentum to carry the attack into your opponent on its latter active frames, you can make 2D safe, or even frame advantage, on block.
Slayer's 2D is a more common example of a traveling hitbox. It's also easier to do, the attack has built-in movement. Should Slayer's 2D be blocked from a close range, your opponent can probably punish it: you hit early in the active frames and you now have more recovery.
But if you space yourself further back, you'll hit with the late frames and have less recovery and be safe, but at the cost of more startup.
Case Study 4 (Relative Advantage)
- Chipp's 6K data
- Startup: 19
- Active: 7
- Recovery: 3+3
- Static Difference: -1
You don't always need frame advantage to be in a positive situation. Chipp's 6K is -1 on block, but even so, against a slow character like Axl he still maintains relative frame advantage. Chipp's fastest attacks are 4f startup. Axl needs a move with at least 5f startup to trade, but Axl's fastest normal is 6f. Even though Chipp is at frame disadvantage, this is still a "frame advantage" situation. Axl is forced to risk a catch-counter or take the pressure.