• Welcome to Smashboards, the world's largest Super Smash Brothers community! Over 250,000 Smash Bros. fans from around the world have come to discuss these great games in over 19 million posts!

    You are currently viewing our boards as a visitor. Click here to sign up right now and start on your path in the Smash community!

Compilation of technical/frame data

Sangoku

Smash Master
Joined
Apr 25, 2010
Messages
3,931
Location
Geneva, Switzerland
Hello everyone.

I thought it could be useful to make a compilation of some technical data, as there is a lot of knowledge, but since things are floating around everywhere it's hard to find the information sometimes. This can be completed by anyone who wants to add something and I might dig into ant-d's posts to make a full and complete compilation. I doubt this might turn out to be useful right away, but it will be easier to check once questions are raised.

I linked at the beginning of each sections to the original thread or website. If nothing is linked, it means it comes directly from my testing.

1. General rules
2. Input Settings
3. General moves
4. Character specific attacks
5. Character specific physics
6. Character specific tricks and attack variation
7. Knockback and hitstun



1. General rules

1.1 There is always a delay of one frame. When you input anything (jump, attack, DI, really anything) it won't start on the next frame, but a frame after. There is always one frame of delay. This is true for the emulator that allows frame by frame testing: Mupen 64. We are actually unsure if this rule applies to the console or to Project 64.

1.2 When different buttons must be pressed "at the same time" to perform a move, it often doesn't have to. It's probably because the developpers knew being frame perfect would be too difficult, so they left us some room for error.

2. Input Settings

Uncheck raw data.

Calibrate your controller in Windows.

2.1 Range

2.1.1 What is it?

This value measures how far the joystick is pushed at maximum. If you set this value to "90", then when you push your joystick down to one direction, the value will be of "90", if you push it half way, it will be "45", etc. The values vary between 0 and 128. However, most plugins don't express this value in absolute (ie 0-128), but as a percentage of it. In the rest of the thread, I'll always talk in absolute value if not specified otherwise.

2.1.2 What is affected?

- The speed of the menu navigation: the time needed to go to one setting to another and the speed of the hand in the character selection menu.
- Walking speed (not the running speed)
- X-acceleration in the air
- Ability to perform smash attacks
- Ability to dash
- Stick jump height
- Ability to tilt (therefore performing any tilted move, A moves and B moves)
- How far you DI at each input

2.1.3 What value should I use?

If you choose the maximum value, you theoretically won't get hindered in any point. However, it might feel uncomfortable for you or you just don't have the choice (if you're considering console, you can't change the range value).

Anyway, this value shouldn't get below 80 (63%). Indeed, your maximum horizontal acceleration, maximum stick jump height and farthest DI per input is reached at 80, so if you set it lower than 80, you'll be hindered in the said aspects (although up to 75 it doesn't change much). It is also important to note that any value above 80 won't help going farther or have a better DI. However, because the joystick moves in a circular motion, having a range of 80 is not enough. If you fully input upright, you won't go 80 in the Y-direction and 80 in the X-direction. In order to achieve this, you need to have a range of 115 (90%).
In short: 80-128 (63%-100%), whatever feels more comfortable within that range, but be careful with the diagonal directions.

If you're a console player you don't have access to these settings, so how can you check if your controller still has enough range or not? The most well-known test is the Yoshi test. This test has the advantage of checking both the Y-direction range and the X-direction range. To do it, pick Yoshi, go to Hyrule, go to the right edge of the middle platform (in teetering animation), then push your joystick upright (try to be as precise as possible) and if Yoshi lands on the top of the tent, then your joystick is really healthy. If you can't land doing that way, it doesn't mean your joystick is completely worn out. Try to stick jump more vertically, then move it horizontally to see if you can land on the tent that way. If you can quite easily, then your range should be fine, if you can't, then it's not. Now there's a disadvantage of the Yoshi test: it tests both the X-direction and the Y-direction at the same time. Indeed it is also a disadvantage, because one "healthy" direction can compensate for the other. For example, if you have 80 (ie max) in the Y-direction, even if you have up to only 45 in the X-direction, the test will be positive.

That's why it might be better to have two separate tests in addition. Unfortunately, I don't know any tests for the X-direction. For the Y-direction, simply do a stick jump with Luigi on Dreamland and he should land on the top platform.

2.2 Deadzone

2.2.1 What is it?

This value measures how far you can tilt the joystick before it's recognized. If you set this value to "5", then when you push your joystick of "5" or less (the angle represented by this "5" depends on your range) in one direction, it will be recognized as if nothing was pressed.

2.2.2 What is affected?

Anything that requires moving the joystick

2.2.3 What value should I use?

The only point of deadzone is it has to feel comfortable for you. It must not feel too sensitive or too unresponsive.

2.3 Threshold

2.3.1 What is it?

This value measures how far you need to press an analogue button for it to be registred. An example is the L/R triggers of the gamecube controller.

2.3.2 What is affected?

Nothing if you're using a N64 controller. I don't know about other controllers used, so if anyone wants to add something here...

2.3.3 What value should I use?

It doesn't matter if you're using a N64 controller.

3. General moves

3.1 Grounded

3.1.1 Joystick

-Dash: the threshold is 56 and only allows one intermediary step, for example you tilt to 20 on the first frame, then 56 on the next.
-Walk: below the value of 56, you'll walk at any range (except if you're lower than the deadzone).
-Tilts: they start from 20. Below that range there won't be no tilt, even if the character is walking (for an F-Tilt for example).
-Smashes: they start from 56, with one more condition. For a D-Smash you have 3 frames to go down of at least 56 and press "a" (this means you can go like: 25, 50, 60. Or 55, 55, 56.). For a F-Smash, you have 4 frames (meaning 3 intermediary frames below 56) and for a U-Smash, it depends on the character jumping animation duration.
Note: non-tilting position (<20) aren't taken into account in the 3 and 4 frames windows, meaning you can wait all you want at 19 and then perform a smash.
-Crouch: you need to go 55 down to crouch, then you can move up to 50 and the character will still be crouching. He stands up at 49 and you need to go to 55 again to crouch.

3.1.3 Grabs

-Grabs happen when you press "A" and "Z" "at the same time" (remember what I said at the beginning of the thread) or when you hold "Z", then press "A" (shield grab). "R" is just a button where "A" and "Z" have been mapped at the same time.
-As there is room for error, you can cancel a jab by pressing "Z" (or "R") within a 2 frame-window. This means you input your jab, then the next frame and the frame after, you can cancel it with "Z" or "R".
-Pikachu, Mario, Luigi and Ness all have a jab hitbox starting on the 3rd frame after the input, therefore it will be out if the jab is cancelled by the grab on the second frame after the jab (don't forget there's one frame delay, so 2+1 makes 3, enough to have the jab hitbox out).

3.1.4 Shields

cf. the other dedicated thread.

3.2 Jumps

3.2.1 Stick jump

-You have 3 frames to go from >20 (tilting position) to 53 (jumping).
-Depending on the value input to jump, the height will be different. 53 being the minimum and 80 being the maximum. In other words there are 28 different stick jump heights possible.

3.2.2 Short hopping

-You must press the "C" button for at most 3 frames.
-This is the same for every character.

3.2.3 Second Jump

-Same as grounded stick jump, 3 frames to go from the tilting position to 53

3.2.4 Other jumps

There exist height variations of "C" button jumps (short hop and full hop). The character will jump lower if you input a horizontal tilt between the last frame of jumping animation (grounded) to the first frame in the air. The more you tilt, the lower the height of the jump will be.

3.2.5 Fastfall

-You must go down of at least 53 within 3 frames (2 intermediary frames) while the character is already falling

3.2.6 Landing

-Regular landing lag is 3 frames, meaning during 4 frames the character won't do anything (input delay). Nothing will come out before the 5th frame.
-It goes up to 7 frames if you fastfall (I have no idea why it's not simply the double of a regular landing)

3.2.7 Jumping formulas (computing the height)

From Madao's testing (refer to the "5. Character specific physics" section for the missing information):

Jumping formula for 1st Jump

Initial 1st Jump Y-Velocity = Y x Jumping Height Multiplier + Base Jump Height
Jumping Value for Y
Still Short Hop = 45
Moving Short Hop = 36
Still C Stick First Jump = 77
Moving First Jump = 63
Tap Jump = 80

Jumping formula for 2nd Jump (excluding Jigglypuff, Kirby, Ness, & Yoshi)
Initial 2nd Jump Y-Velocity = (80 x Jumping Height Multiplier + Base Jump Height) x Multiplier for 2nd Jump


3.3 Air attacks

3.3.1 Fair, Bair, Dair and Uair all happen if you tilt at least to 20 in the correct direction.

3.3.2 To perform a Uair without jumping, there are several cases.
---On keyboard, your only possibility (except from buffering) is pressing up and "A" on the exact same frame.
---On controller you have the following possibilies:
------ you smash quick enough (full tilt between two frames), then it's a keyboard situation, ie 1 frame.
------ you don't smash quick enough (which is more reasonable) and then again there's two situations:
--------- you catch it half-way, meaning you're pressing "A" while your joystick is moving up, and the press corresponds to when your joystick is tilted from 20 to 53.
--------- at one frame, you're at <53 (ie no jump), then the next frame you've pushed to >53 AND pressed "A" at the same time. Then it's again a keyboard situation.
--------- you don't smash at all, but rather lightly tilt the joystick so it ends up getting in the wanted range (20-53) then press "A"

3.4 Z-cancel and Tech

From Madao's testing:

Z cancel has a frame window of 11. Due to input lag (cf. General Rule 1.1) you have to press it 1 frame early
so the real window is from the 12th last frame to the 2nd last frame.

Teching has a frame window of 20.

3.5 Stale moves

Taken from the original thread:

When you connect with move X, it is then considered stale. Connecting with a different move increases the power of move X by one stage; there are three different stages between "stale" and "fresh".

Stale: 0.75x
Level 1: 0.82x
Level 2: 0.89x
Level 3: 0.96x
Fresh: 1.00x

The damage done by a move is multiplied by these factors and rounded up. Because of this:

Moves that deal 24% or less are basically fresh at level 3.
Moves that deal 9% or less are basically fresh at level 2.
Moves that deal 5% or less are basically fresh at level 1.
Moves that deal 3% or less are basically immune to staleness.

I'm having trouble testing this, but I believe the staleness of a projectile is determined on creation. This would mean that if you can fire two projectiles without either hitting, they'll both be fresh if they do connect.


4. Character specific attacks

4.1 Starting lag

From the original post:


|:dk64:|:falcon64:|:fox64:|:kirby64:|:link64:|:luigi64:|:mario64:|:ness64:|:pikachu64:|:jigglypuff64:|:samus64:|:yoshi64:
Jab 1|4|4|2|2|5|1|1|1|1|4|3|2
Jab 2|5|3|3|2|5|2|2|2||4|6|2
Jab 3||4|9||5|2|2|5||||
Jab repeatedly||9||7|10|||||||

Dash attack|2|6|4|4|8|2|7|7|4|4|6|8
Grab|5|5|5|5|16|5|5|5|5|5|19|14
Taunt||||||47||||||
Forward throw||||50|11|||2||||
Back throw||11|10||11|17|17|2||||

Get-up attack up|19|17|16|17|18|19|19|19||17|17|
Get-up attack down||19|18|||||19|16||19|13
Ledge attack|8|30|23|14|23|23|23|23|19|14|21|14
Ledge attack slow|48|77|68|59|61|42|42|42|69|71|62|66

Up tilt|3|7|5|3|7|4|4|4|4|6|7|6
Down tilt|10|7|5|3|11|2|4|3|5|10|7|7
Forward tilt|11|8|5|3|14|7|7|6|4|6|6|7
Forward tilt mid-high||8|5||||||||6|
Forward tilt high|11|8|5|3||7|7|6|4|6|6|7
Forward tilt mid-low||8|5||||||||6|
Forward tilt low|11|8|5|3||7|7|6|4|6|6|7

Up smash|15|3|5|13|10|6|6|12|9|7|16|5
Down smash|11|7|5|6|8|7|7|12|9|6|7|5
Forward smash|26|15|11|9|15|15|15|17|20|11|11|17
Forward smash mid-high||||||15|15||||11|
Forward smash high|26|15||||15|15||||11|17
Forward smash mid-low||||||15|15||||11|
Forward smash low|26|15||||15|15||||11|17

Up air|2|4|5|9|4|1|1|7|2|7|5|8
Down air|5|6|3|3|4|9|9|3|7|3|3|3
Forward air|7|6|5|7|14|10|10|9|6|7|4|10
Back air|7|6|3|5|5|9|9|9|9|7|4|9
Neutral air|3|3|3|2|3|2|2|4|2|5|3|4

Neutral special|28|41|24|19|25|15|15|19|20|11|16|17
Neutral special air||41|14|||||||||
Special throw|||||7|||||||
Neutral special full|22||||||||||20|
Up special|2|12|42|22|7|1|1|23||27|3|22
Up special hit||||||||0||||
Down special|18|11|0|||0|0||34|0|9|29
Down special explosion|||||||||||9|
Up special air|2|12|||7||||||3|
Down special air||11||22||0||||||

4.2 Hitbox duration

From the original post:


|:dk64:|:falcon64:|:fox64:|:kirby64:|:link64:|:luigi64:|:mario64:|:ness64:|:pikachu64:|:jigglypuff64:|:samus64:|:yoshi64:
Jab 1|4|4|2|2|4|2|2|2|4|2|2|3
Jab 2|6|4|3|3|2|3|3|3||3|5|3
Jab 3||5|30||6|6|5|6||||
Jab repeatedly||42||27|30|||||||

Dash attack|24|20|20|14|26|36|21|18|15|14|20|14
Grab|1|1|1|1|12|1|1|1|1|1|19|6
Taunt||||||3||||||
Forward throw||||2|8|||24||||
Back throw||8|8||8|28|28|24||||

Get-up attack up|10|2|10|9|12|6|6|6||9|2|
Get-up attack down||5|9|||||7|9||5|7
Ledge attack|10|4|16|10|5|6|6|6|6|10|6|3
Ledge attack slow|6|6|7|8|6|6|6|6|4|8|5|4

Up tilt|20|16|8|8|9|12|12|15|10|8|22|4
Down tilt|6|8|4|7|8|4|7|5|8|5|5|3
Forward tilt|6|7|8|6|6|5|10|5|10|4|5|3
Forward tilt mid-high||7|8||||||||5|
Forward tilt high|6|7|8|6||5|10|5|10|4|5|3
Forward tilt mid-low||7|8||||||||5|
Forward tilt low|6|7|8|6||5|10|5|10|4|5|3

Up smash|3|8|16|10|25|9|9|13|9|7|18|10
Down smash|20|15|5|20|15|22|22|40|19|20|15|17
Forward smash|6|8|13|14|10|5|5|4|22|8|4|7
Forward smash mid-high||||||5|5||||4|
Forward smash high|6|8||||5|5||||4|7
Forward smash mid-low||||||5|5||||4|
Forward smash low|6|5||||5|5||||4|7

Up air|18|9|8|70|44|10|10|9|8|9|14|2
Down air|24|18|20|29|60|23|23|17|18|29|9|27
Forward air|8|22|18|21|20|16|16|17|20|16|23|5
Back air|28|12|24|20|21|10|10|10|12|14|12|10
Neutral air|26|24|28|28|26|34|34|35|26|28|24|34

Neutral special|3|5|30|40|20|30|32|19|18|16|29|6
Neutral special air||5|30|||||||||
Special throw|||||16|||||||
Neutral special full|8||||||||||29|
Up special|70|32|30|60|32|23|22|159||98|30|49
Up special hit||||||||18||||
Down special|12|20|1|||44|44||11|1|47|27
Down special explosion|||||||||||105|
Up special air|70|32|||32||||||28|
Down special air||20||8||46||||||

4.3 Ending lag

From the original post:


|:dk64:|:falcon64:|:fox64:|:kirby64:|:link64:|:luigi64:|:mario64:|:ness64:|:pikachu64:|:jigglypuff64:|:samus64:|:yoshi64:
Jab 1|16|13|13|13|14|14|14|14|28|11|16|18
Jab 2|22|12|13|14|14|14|14|14||12|18|15
Jab 3||22|14||28|17|18|13||||
Jab repeatedly||9||10|13|||||||

Dash attack|44|14|16|22|12|22|12|12|38|22|14|14
Grab|9|9|9|9|56|9|9|9|9|9|61|49
Taunt||||||28||||||
Forward throw||||27|20|||18||||
Back throw||24|21||21|21|20|18||||

Get-up attack up|20|30|23|23|19|24|24|24||23|30|
Get-up attack down||25|22|||||23|24||25|29
Ledge attack|41|25|15|32|21|29|29|28|24|32|22|32
Ledge attack slow|35|9|14|27|22|21|21|21|16|15|22|19

Up tilt|36|16|10|6|13|25|25|15|11|9|14|15
Down tilt|5|15|20|19|20|11|28|5|12|24|27|13
Forward tilt|25|14|13|18|19|30|25|23|15|17|20|19
Forward tilt mid-high||14|13||||||||20|
Forward tilt high|25|14|13|18||30|25|23|15|17|20|19
Forward tilt mid-low||14|13||||||||20|
Forward tilt low|25|14|13|18||30|25|23|15|17|20|19

Up smash|41|34|38|26|19|44|44|14|21|40|25|32
Down smash|38|27|39|29|26|15|15|2|25|28|27|37
Forward smash|27|38|27|16|32|21|33|28|19|20|26|26
Forward smash mid-high||||||21|33||||26|
Forward smash high|27|38||||21|33||||26|26
Forward smash mid-low||||||21|33||||26|
Forward smash low|27|41||||21|33||||26|26

Up air|39|20|26|0|21|28|28|25|23|23|20|31
Down air|30|15|26|17|25|6|6|9|19|17|27|19
Forward air|34|16|16|11|21|13|13|15|13|16|24|24
Back air|24|17|12|14|13|20|20|20|20|18|23|22
Neutral air|30|22|18|19|10|13|13|0|8|16|22|11

Neutral special|68|43|0|19|0|0|0|33|25|27|0|14
Neutral special air||43|0|||||||||
Special throw|||||0|||||||
Neutral special full|63||||||||||0|
Up special|27|20|21|13|59|59|59|45||54|67|0
Up special hit||||||||25||||
Up special landing||||||||||||
Down special|11|53|38|||42|42||57|248|0|26
Down special explosion|||||||||||0|
Up special air|27|20|||59||||||55|
Down special air||18||26||40||||||


4.4 Hitboxes

Color code:

Body Hitboxes
Yellow Hitbox - If an opponent's red hitbox collides with this, the character gets hurt.
Blue Hitbox - Completely invincible and out of the game. Cannot be hit.
Green hitbox - Invincible but can still be hit and cause hitlag for the attacker.


Attack Hitboxes
Red Hitbox - The actual hitbox of the attack.


There has been a great work done by a (or more, I don't know) Japanese player concerning hitboxes. Every move can be shown frame by frame with hitboxes, normal animation, or any combination of both. It was originally only for the Japanese version of the game. It's a software called ssb Framedisplay, pretty easy to use. Download it here. All credit goes to Hijiki422.

Concerning the American version now:

Taken from the original thread:

First download the program (either download the Japanese version above, but if you don't want to download a big file, here's an empty version).
To view the hitboxes for the American version, download the characters folders and replace the Japanese ones from the program downloaded above. Or if you downloaded the empty version, just unzip each character file in the "data" folder.

Yoshi
Kirby
Samus
Pikachu
Jigglypuff
Donkey Kong
Mario
Link
Luigi
Fox
Ness
Captain Falcon
Miscellanea

If you want to have a look at a specific attack quickly, you can also view the GIFs (huge thanks to MCG for creating them and compiling them into a table)


|:dk64:|:falcon64:|:fox64:|:kirby64:|:link64:|:luigi64:|:mario64:|:ness64:|:pikachu64:|:jigglypuff64:|:samus64:|:yoshi64:
Jab 1| :dk64: | :falcon64: | :fox64: | :kirby64: | :link64: | :luigi64: | :mario64: | :ness64: | :pikachu64: | :jigglypuff64: | :samus64: | :yoshi64:
Jab 2| :dk64: | :falcon64: | :fox64: | :kirby64: | :link64: | :luigi64: | :mario64: | :ness64: || :jigglypuff64: | :samus64: | :yoshi64:
Jab 3|| :falcon64: | :fox64: || :link64: | :luigi64: | :mario64: | :ness64: ||||
Jab repeatedly|| :falcon64: || :kirby64: | :link64: |||||||

Dash attack| :dk64: | :falcon64: | :fox64: | :kirby64: | :link64: | :luigi64: | :mario64: | :ness64: | :pikachu64: | :jigglypuff64: | :samus64: | :yoshi64:
Crouch| :dk64: | :falcon64: | :fox64: | :kirby64: | :link64: | :luigi64: | :mario64: | :ness64: | :pikachu64: | :jigglypuff64: | :samus64: | :yoshi64:
Grab| :dk64: | :falcon64: | :fox64: | :kirby64: | :link64: | :luigi64: | :mario64: | :ness64: | :pikachu64: | :jigglypuff64: | :samus64: | :yoshi64:
Taunt|||||| :luigi64: ||||||
Forward throw| :dk64: | :falcon64: | :fox64: | :kirby64: | :link64: | :luigi64: | :mario64: | :ness64: | :pikachu64: | :jigglypuff64: | :samus64: | :yoshi64:
Back throw| :dk64: | :falcon64: | :fox64: | :kirby64: | :link64: | :luigi64: | :mario64: | :ness64: | :pikachu64: | :jigglypuff64: | :samus64: | :yoshi64:
Cargo| :dk64: |||||||||||
Forward roll| :dk64: | :falcon64: | :fox64: | :kirby64: | :link64: | :luigi64: | :mario64: | :ness64: | :pikachu64: | :jigglypuff64: | :samus64: | :yoshi64:
Back roll| :dk64: | :falcon64: | :fox64: | :kirby64: | :link64: | :luigi64: | :mario64: | :ness64: | :pikachu64: | :jigglypuff64: | :samus64: | :yoshi64:

Get-up up| :dk64: | :falcon64: || :kirby64: | :link64: | :luigi64: | :mario64: ||| :jigglypuff64: | :samus64: |
Get-up down||| :fox64: ||||| :ness64: | :pikachu64: ||| :yoshi64:
Get-up attack up| :dk64: | :falcon64: | :fox64: | :kirby64: | :link64: | :luigi64: | :mario64: | :ness64: || :jigglypuff64: | :samus64: |
Get-up attack down|| :falcon64: | :fox64: ||||| :ness64: | :pikachu64: || :samus64: | :yoshi64:
Get-up forward roll up|||| :kirby64: |||||| :jigglypuff64: | :samus64: |
Get-up back roll up| :dk64: |||| :link64: | :luigi64: | :mario64: |||||
Get-up forward roll down||||||||| :pikachu64: |||
Get-up back roll down|| :falcon64: | :fox64: ||||| :ness64: |||| :yoshi64:

Ledge get-up| :dk64: | :falcon64: | :fox64: | :kirby64: | :link64: | :luigi64: | :mario64: | :ness64: | :pikachu64: | :jigglypuff64: | :samus64: | :yoshi64:
Ledge get-up slow| :dk64: | :falcon64: | :fox64: | :kirby64: | :link64: | :luigi64: | :mario64: | :ness64: | :pikachu64: | :jigglypuff64: | :samus64: | :yoshi64:
Ledge attack| :dk64: | :falcon64: | :fox64: | :kirby64: | :link64: | :luigi64: | :mario64: | :ness64: | :pikachu64: | :jigglypuff64: | :samus64: | :yoshi64:
Ledge attack slow| :dk64: | :falcon64: | :fox64: | :kirby64: | :link64: | :luigi64: | :mario64: | :ness64: | :pikachu64: | :jigglypuff64: | :samus64: | :yoshi64:
Ledge roll| :dk64: | :falcon64: | :fox64: | :kirby64: | :link64: | :luigi64: | :mario64: | :ness64: | :pikachu64: | :jigglypuff64: | :samus64: | :yoshi64:
Ledge roll slow| :dk64: | :falcon64: | :fox64: | :kirby64: | :link64: | :luigi64: | :mario64: | :ness64: | :pikachu64: | :jigglypuff64: | :samus64: | :yoshi64:

Up tilt| :dk64: | :falcon64: | :fox64: | :kirby64: | :link64: | :luigi64: | :mario64: | :ness64: | :pikachu64: | :jigglypuff64: | :samus64: | :yoshi64:
Down tilt| :dk64: | :falcon64: | :fox64: | :kirby64: | :link64: | :luigi64: | :mario64: | :ness64: | :pikachu64: | :jigglypuff64: | :samus64: | :yoshi64:
Forward tilt| :dk64: | :falcon64: | :fox64: | :kirby64: | :link64: | :luigi64: | :mario64: | :ness64: | :pikachu64: | :jigglypuff64: | :samus64: | :yoshi64:
Forward tilt mid-high|| :falcon64: | :fox64: |||||||| :samus64: |
Forward tilt high| :dk64: | :falcon64: | :fox64: | :kirby64: || :luigi64: | :mario64: | :ness64: | :pikachu64: | :jigglypuff64: | :samus64: | :yoshi64:
Forward tilt mid-low|| :falcon64: | :fox64: |||||||| :samus64: |
Forward tilt low| :dk64: | :falcon64: | :fox64: | :kirby64: || :luigi64: | :mario64: | :ness64: | :pikachu64: | :jigglypuff64: | :samus64: | :yoshi64:

Up smash| :dk64: | :falcon64: | :fox64: | :kirby64: | :link64: | :luigi64: | :mario64: | :ness64: | :pikachu64: | :jigglypuff64: | :samus64: | :yoshi64:
Down smash| :dk64: | :falcon64: | :fox64: | :kirby64: | :link64: | :luigi64: | :mario64: | :ness64: | :pikachu64: | :jigglypuff64: | :samus64: | :yoshi64:
Forward smash| :dk64: | :falcon64: | :fox64: | :kirby64: | :link64: | :luigi64: | :mario64: | :ness64: | :pikachu64: | :jigglypuff64: | :samus64: | :yoshi64:
Forward smash mid-high|||||| :luigi64: | :mario64: |||| :samus64: |
Forward smash high| :dk64: | :falcon64: |||| :luigi64: | :mario64: |||| :samus64: | :yoshi64:
Forward smash mid-low|||||| :luigi64: | :mario64: |||| :samus64: |
Forward smash low| :dk64: | :falcon64: |||| :luigi64: | :mario64: |||| :samus64: | :yoshi64:

Up air| :dk64: | :falcon64: | :fox64: | :kirby64: | :link64: | :luigi64: | :mario64: | :ness64: | :pikachu64: | :jigglypuff64: | :samus64: | :yoshi64:
Down air| :dk64: | :falcon64: | :fox64: | :kirby64: | :link64: | :luigi64: | :mario64: | :ness64: | :pikachu64: | :jigglypuff64: | :samus64: | :yoshi64:
Forward air| :dk64: | :falcon64: | :fox64: | :kirby64: | :link64: | :luigi64: | :mario64: | :ness64: | :pikachu64: | :jigglypuff64: | :samus64: | :yoshi64:
Back air| :dk64: | :falcon64: | :fox64: | :kirby64: | :link64: | :luigi64: | :mario64: | :ness64: | :pikachu64: | :jigglypuff64: | :samus64: | :yoshi64:
Neutral air| :dk64: | :falcon64: | :fox64: | :kirby64: | :link64: | :luigi64: | :mario64: | :ness64: | :pikachu64: | :jigglypuff64: | :samus64: | :yoshi64:

Neutral special| :dk64: | :falcon64: | :fox64: | :kirby64: | :link64: | :luigi64: | :mario64: | :ness64: | :pikachu64: | :jigglypuff64: | :samus64: | :yoshi64:
Neutral special air|| :falcon64: | :fox64: |||||||||
Special throw||||| :link64: |||||||
Neutral special full| :dk64: |||||||||| :samus64: |
Neutral special full cancel| :dk64: |||||||||||
Neutral special charge| :dk64: |||||||||| :samus64: |
Neutral special charge cancel| :dk64: |||||||||| :samus64: |

Up special| :dk64: | :falcon64: | :fox64: | :kirby64: | :link64: | :luigi64: | :mario64: | :ness64: | :pikachu64: | :jigglypuff64: | :samus64: | :yoshi64:
Up special hit|||||||| :ness64: ||||
Up special landing|||||||| :ness64: ||||
Down special| :dk64: | :falcon64: | :fox64: | :kirby64: | :link64: | :luigi64: | :mario64: | :ness64: | :pikachu64: | :jigglypuff64: | :samus64: | :yoshi64:
Down special release|||| :kirby64: ||||||||
Down special explosion||||||||||| :samus64: |
Up special air| :dk64: | :falcon64: ||| :link64: |||||| :samus64: |
Down special air|| :falcon64: || :kirby64: || :luigi64: ||||||

4.5 Hitlag

When a character attacks another (or a shield), the attack will be frozen on the first frame of the hit for a few frames. This is commonly called hitlag. Reciprocally, the attacked character is also frozen at the same time as the attacker. Actually, these two frozen states are the same, then other factors are added to know if the freezing frames are due to an attack (hitlag) or to being attacked. The distinction can be made thanks to two things: the attacked character will "shake" a little bit while in freezing frames. This shaking animation systematically lasts a little longer than the freezing frames and I haven't found any other use than graphical rendering (ie, it's useless). Another factor has to come to determine if the character can DI or not. Indeed, the attacker can't DI in his hitlag frames, but the attacked character can DI during his freezing frames. I haven't found what kind of thing that could be. I would tend to think of it as a binary variable (ie can DI or can't DI) and not a whole new countdown of how many frames of DI are left.

That's why it can be interesting to look at hitlag: the value will be equal to the attacked character's freezing frames, therefore determining the DI window. There's only one exception: projectiles. They do not cause hitlag for the attacker, but they obviously do cause freezing frames. Another exception is Pikachu's thunder aura. This move is weird, because it first deals 16%, then it goes up to 28% the next frame and strangely, there's one more hitlag frame than freezing frame. In this table I included them in parentheses.

Also, these values are the total length of the frozen position, which means it should not be added to the number of frames a move does hitting nothing. It should be read as "takes x frames instead of 1".

Thanks to Madao, here are the formulas to compute hitlag (or you can refer to the table bellow for each move):
Hitlag formula = floor(Damage of hit / 3 + 5)
Hitlag formula when electric attack = floor( floor(Damage of hit / 3 + 5) * 1.5 )
Hitlag formula when crouch canceled (for person getting hit) = floor( floor(Damage of hit / 3 + 5) * 0.6666667 )
Hitlag formula when crouch cancelled & electric (for person getting hit) = floor( floor( floor(Damage of hit / 3 + 5) * 1.5 ) * 0.6666667 )

Attacks | Luigi | Mario | Donkey Kong | Link | Samus | Captain Falcon | Ness | Yoshi | Kirby | Fox | Pikachu | Jigglypuff
jab| 5, 5, 6| 5, 5, 6| 6, 6| 6, 6, 5...| 6, 7| 6, 6, 6, 5...| 5, 5, 6| 6, 6| 6, 6, 5...| 6, 6, 5...| 5| 6
dash attack| 5 each| 8| 9| 9| 9| 9| 9| 9| 8| 8| 9| 8

UpB| 13, 5| 6, 5, 5...,6| 9| 10, 6| 5 each| 0| 0 (10), 22| 0 (9)| 7, 5, 0 (7)| 10| 0| 0
Neutral B| 0 (7)| 0 (7)| 9, 17| 0 (8), | 0 (9), 0 (19)| 13| 0 (6 each)| 0| 0| 0 (7)| 0 (10)| 9
Down B| 10, 11| 5 each| 8| 0 (6), 0 (7)| 0 (8)| 10| 0| 11, 0 (6)| 11| 9| 15 (14), 0 (13)| 11

D-Tilt| 7| 9| 7| 9| 9| 8| 6| 8| 8| 9| 9| 8
U-Tilt| 8| 8| 9| 8| 7, 9| 8, 9| 7| 9| 9| 8| 8| 8
F-Tilt| 8| 9| 9, 9, 8| 10| 8| 9| 8| 9| 8| 8, 8, 7| 8| 7

D-Smash| 10| 10| 11| 10| 10, 9| 10, 9| 11| 9| 11| 9| 10, 9| 10
U-Smash| 11| 11| 12| 7, 6, 9| 8 each| 10| 10| 11| 10| 10| 11, 8| 11
F-Smash| 10| 10| 11| 11| 11, 11, 10| 11, 11, 10| 11| 11| 10| 10| 16| 10

Nair| 9| 9| 10| 8| 10| 10| 9| 9| 10| 9| 9| 9
Dair| 6 each| 6 each| 9| 10| 9| 9| 10| 6 each| 6 each| 5 each| 13| 6 each
Uair| 9| 9| 9| 10| 5 each| 10| 10| 10| 8| 5, 9| 8| 10
Fair| 10| 10| 10| 11| 6 each| 8, 9| 9| 11| 5 each, 6| 9| 9 each| 9
Bair| 10| 10| 10| 8, 8| 9| 10| 10| 10| 10| 9| 10| 9

Taunt| 5| /| /| /| /| /| /| /| /| /| /| /|
[/table]


4.6 Special frames

4.6.1 Auto-cancelling frames

From Madao's testing:





5. Character specific physics

From the original thread:

Jab: https://spreadsheets1.google.com/sp...QkI0cGJUM28zTWc&single=true&gid=0&output=html
U-Tilt: https://spreadsheets.google.com/spr...dmNFYXVsbjV2aEE&single=true&gid=0&output=html
F-Tilt: https://spreadsheets0.google.com/sp...a0tQdmt1b1dXdEE&single=true&gid=0&output=html
D-Tilt: https://spreadsheets2.google.com/sp...a29MZlUxbDQwcXc&single=true&gid=0&output=html

From Madao's testing:



From the original nintendo website for the Japanese version:

| Mario| Donkey Kong| Link| Samus| Yoshi| Kirby| Fox| Pikachu| Luigi| Captain Falcon| Ness| Jigglypuff
Walking speed| 0.3| 0.32| 0.4| 0.34| 0.38| 0.35| 0.45| 0.42| 0.3| 0.32| 0.28| 0.28
Braking force| 1.5| 1.7| 2| 2| 1.6| 1.4| 2| 2| 0.7| 1.8| 2| 1.1
Initial dash speed| 54| 60| 68| 56| 40| 61| 81| 60| 50| 80| 68| 50
Dashing deceleration| 2.8| 3.5| 5.4| 3| 1.5| 5| 10| 4.5| 2.8| 6| 5.4| 3
Running speed| 44| 48| 42| 54| 50| 48| 60| 55| 40| 70| 40| 42
Jumping animation (# of frames)| 3| 6| 7| 3| 5| 3| 3| 3| 3| 4| 3| 6
X-air acceleration| 0.025| 0.025| 0.04| 0.03| 0.04| 0.04| 0.03| 0.055| 0.025| 0.04| 0.04| 0.07
X-maximum air speed| 30| 30| 31| 28| 40| 28| 36| 37| 26| 31| 28| 35
X-air resistance| 0.2| 0.3| 0| 0.3| 0.4| 0.5| 0.3| 0.45| 0.15| 0.2| 0.4| 1
Y-fall acceleration| 2.4| 3| 3.2| 1.9| 2.7| 2.4| 4| 3| 2.1| 3.4| 2.7| 2
Y-maximum speed fall| 44| 56| 64| 42| 55| 48| 60| 52| 42| 60| 55| 38
Y-maximal fastfall speed| 70| 89| 102| 67| 88| 79| 96| 83| 67.5| 100| 88.25| 60
Highest number of jumps| 2| 2| 2| 2| 2| 6| 2| 2| 2| 2| 2| 6
Weight| 1| 0.84| 0.96| 0.92| 0.93| 1.19| 1| 1.16| 1| 0.96| 1.1| 1.3
Initial dash duration (# of frames)| 13|17|15||13|15|13|11|12|13|15|13|15
Small combo connection (# of frames)?|24|28|24|30|24|24|30|24|24|22|24|24
Type of skin (lol)|meat|meat|meat|iron|meat|meat|meat|meat|meat|meat|meat|meat

Here are some explanations about each entries.

Walking Speed: the speed of the character when walking. Multiply the value by the range you're walking at (remember that maximum is 80) and this is your speed value.

Braking force: determines the speed at which the character will stop , once you stop walking.

Initial dash speed: the initial dash is when you start dashing from the standing position; speed differs from running.

Dashing deceleration: as the initial dash is always faster than the following dash, this value indicates the rate at which the character decelerate from his initial dash to the following dash.

Running speed: speaks for itself.

Jumping animation: number of frames before the character leaves the ground after having input a jump button.

X-air acceleration: determines how well you can control the horizontal momentum of your character.

X-maximum air speed: determines the maximal horizontal speed your character can have.

X-air resistance:

Y-fall acceleration: speaks for itself.

Y-maximum speed fall: determines the maximal vertical speed your character can have.

Y-maximal fastfall speed: by fastfalling, your character will fall faster (obviously); this tells you by how much.

Highest number of jumps: speaks for itself.

Weight: lower means heavier. Determines the knockback a character receives. The most straight ingame element showing the weight is the Mushroom Kingdom balance.

Initial dash duration: The maximum number of frames you can dash before the initial dash turns to a normal dash. So for example with Luigi, after 13 frames, you can still pivot or stop quickly. Becomes impossible after 14 frames.

Small combo connection: when you press A several times, the jabs hits will be different. This is the maximal time needed to get the second/third jabs.

Type of skin: determines the screen effect when hit.



6. Character specific tricks and attack variation

6.1 Luigi and Mario's extended UpB

After doing your UpB on frame 0, you have 5 frames to input away. You can input it anytime you want in this window and for any long you want in this window. Then on frame 6 you must input toward the stage if you don't want him to face the wrong direction. So:
0: UpB
1: Away or not
2: Away or not
3: Away or not
4: Away or not
5: Away or not
6: inside

Provided at least one of the "away or not" was actually away, you'll do the extended UpB.

Concretely, what could be a good way is to input your UpB with up-away, then immediately go into. This way, you only have two directions (and not 3, with UpB, away, into).

6.2 Pikachu's double vertical UpB

From the original thread:

Pikachu can quick attack upwards twice.

I believe this was first found out accidentally by a Japanese smash player. I managed to find the original Japanese video. I uploaded it to here:

http://video.google.co.uk/videoplay?docid=22183492621123914

Method:

1. Press Up+B
2. After Pika begins to move, back/down/forward tilt at exactly "60".

In other words, tilt as weak as possible that still allows Pika to continue the quick attack. If you do it correctly Pika will move up for the second part of the move.

Video:
http://video.google.co.uk/videoplay?docid=5592492531740205404


6.3 Recovering from Jigglypuff's sing

This works in a similar way as recovering from shieldbreak. You basically have 375 frames of dazing. Firstly, from this initial value you need to subtract the value of your current %. Assuming you have 75%, it will take 300 frames to recover. If you have 100, 275 frames, and so on. The maximum is 300 though, which means if you have 300% or 999%, the time needed to recover will be 75 frames in both cases.
Secondly, each time you input a button 4 frames are reduced from the initial 375 frames (assuming you're at 0 %). The buttons that can be used for that purpose are: A, B, R, Z or tilting the joystick. Concerning the latter fully tilting it will have the same result as pushing another button. If you tilt half way, half the frames are reduced (2 instead of 4). Another particularity of the joystick is that inputting several times one direction only counts as one input. There is a minimal angle at which the joystick tilts will be considered as different inputs. Other buttons don't work (L or C). Finally, note that pushing multiple buttons at the same time won't help in the recovery process. Two inputs at the same time have the same impact as one.

7. Knockback and hitstun

7.1 Knockback



-p is the percentage of the target, counted after the attack's damage is added.
-d is the damage the attack dealt.
-w is the weight of the target.
-s is the attack's knockback scaling.
-b is the attack's base knockback.
-r is a ratio based on a number of factors, such as handicap or difficulty.

7.2 Hitstun

From Madao's testing:

Hitstun formula = floor(initial knockback / 1.875)





Thanks to all the contributors, including the owner of all the respective threads

-Madao: the new king, best new comer and best poster all around!
-mixa: helped a bunch in the Framedisplay project
-MCG: new hitbox GIFs, moves frame data
-ant-d (a lot of stuff)
-hijiki422 (Japanese version hitboxes)
-Fireblaster (Hitbox thread)
-Sempiternity (threshold definition + stick jumps)
-Toomai (knockback formula + stale moves)
-Those I forgot


NB: stupid new smashboards version messed up all the tables. I might clear them up if I feel like it one day.
 
Last edited:

Han Solo

Banned via Warnings
Joined
Nov 9, 2011
Messages
1,277
Location
Midwest Corellia
This is awesome. Some of the .gifs for the hitboxes don't work though.

Also, could you go over how moves "tie" and "trade" and how certain moves straight up beat other moves? Are certain hitboxes more powerful or something? Specifically, I'm interested in Fox's UpB. I've noticed that it can go through Samus's fully charged shot and Yoshi's projectile egg. Too bad the .gif of the hitbox is one of the ones that doesn't work.
 

The Star King

Smash Hero
Joined
Nov 6, 2007
Messages
9,681
Is this related to the compilation idea I posted about? My vacation made me forget about that :V
 

#HBC | ѕoup

The world is not beautiful, therefore it is.
Joined
Sep 15, 2010
Messages
6,865
This is amazing. Thank you very much for time your and dedication for this.
 

Sangoku

Smash Master
Joined
Apr 25, 2010
Messages
3,931
Location
Geneva, Switzerland
Thanks all.

This is awesome. Some of the .gifs for the hitboxes don't work though.
I know, and it's really incomplete. But it seems that Fireblaster doesn't post anymore. If anyone could take over the hitbox thread, that would be really nice. I don't know how Fireblaster did, but it might be interesting to have an efficient way to do that.

Is this related to the compilation idea I posted about? My vacation made me forget about that :V
Not really, in fact it's more seeing me answer questions in a lot of threads (especially in the "Simple facts that you may not know") and since it was spread out everywhere, I thought it would be too troublesome if someone tried to find an information. And the same kind of things happened with ant-d (e.g. the auto-cancelling frames were lost before I asked to add it to the index).

So most importantly we would need someone who continue the hitbox gifs. Then if some people feel adventurous and want to guess the hitstun formula, it might be cool too.
 

ballin4life

Smash Hero
Joined
Nov 12, 2008
Messages
5,534
Location
disproving determinism
Great thread, get this in the smash index please.


FYI I cannot see the knockback formula - it has a "broken image" icon

This is awesome. Some of the .gifs for the hitboxes don't work though.

Also, could you go over how moves "tie" and "trade" and how certain moves straight up beat other moves? Are certain hitboxes more powerful or something? Specifically, I'm interested in Fox's UpB. I've noticed that it can go through Samus's fully charged shot and Yoshi's projectile egg. Too bad the .gif of the hitbox is one of the ones that doesn't work.
I think we figured out previously that if the moves are within 7? percent of each other that they can clank, otherwise the one that does more percent will win.

Not sure if that applies to the Fox upB example though, since IIRC we figured it out for grounded moves and clanking.
 

ciaza

Smash Prodigy
Premium
Joined
Aug 12, 2009
Messages
2,759
Location
Australia
knockback formula works fine for me, here's the direct link anyway:



amazing thread, sangoku =D
 

Sangoku

Smash Master
Joined
Apr 25, 2010
Messages
3,931
Location
Geneva, Switzerland
Great thread, get this in the smash index please.


FYI I cannot see the knockback formula - it has a "broken image" icon



I think we figured out previously that if the moves are within 7? percent of each other that they can clank, otherwise the one that does more percent will win.

Not sure if that applies to the Fox upB example though, since IIRC we figured it out for grounded moves and clanking.
I can't see the knockback image either, but that's because imageshack doesn't work here. Do you have any good site where I can upload images?

I thought if one move was an aerial attack, the damage would trade? At least with aerial A attacks. Maybe with B's it's different? Or does Fox get any invincible frames during his upb?

Damn, lots of posts from 2007 already had answers to more recent questions... But there were some pretty dumb posts too:
It's official. If you think Kirby is "cheap" and "overpowered" then you are a complete noob and have no idea what you are talking about. Kirby isn't even slightly cheap, whereas if you look at Ness and Luigi who are blatantly overpowered (I mean it. It's so obvious if you can't see it then your ********) it's easy to see who the real "noob" and "cheap" chars are.
 

The Star King

Smash Hero
Joined
Nov 6, 2007
Messages
9,681
Pretty sure it's this: if a projectile is within 10% of an aerial attack, the aerial eats the projectile. Fox's up-b is 16% and Samus Charge Shot is 26%. If Samus Charge Shot was 27% it would beat Fox's up-b.
 

Sangoku

Smash Master
Joined
Apr 25, 2010
Messages
3,931
Location
Geneva, Switzerland
Updated a little bit. Especially section 5. If anyone could help me with the italicized parts (anyone who understands japanese/is good at understanding google translations).

Oh and thanks Star King, I didn't know. Might double check that one of these days and add it somewhere.
 

Sangoku

Smash Master
Joined
Apr 25, 2010
Messages
3,931
Location
Geneva, Switzerland
So the hitbox formula is probably knockback*c, where c is some constant.

The problem is that we don't know any "s" and "b" from the knockback formula. We cannot compute any knockback to compare it to the hitstun (and thus determining the constant). What I did was finding hitstun of a fixed knockback move (DK's down B) on different characters (ie different weights). By doing that, I figured some value for s and b (they weren't exact, but if we somewhat round off it came out correct). That means I applied the knockback formula for hitstun and it kinda worked. Therefore, I'm thinking these s and b I found are in fact some s' and b', where s'=s*c and b'=b*c. We can then factor out c and we get knockback*c.

If anybody has a better idea/another way to find something...

By the way, nobody wants to help with something? Things to work on: the japanese translation of the Nintendo website, completing hitboxes (or telling me a good way to do it), experimenting with hitstun.
 

Toomai

Smash Ace
Joined
Aug 17, 2006
Messages
769
Location
Someplace in Canada
The problem is that we don't know any "s" and "b" from the knockback formula. We cannot compute any knockback to compare it to the hitstun (and thus determining the constant). What I did was finding hitstun of a fixed knockback move (DK's down B) on different characters (ie different weights). By doing that, I figured some value for s and b (they weren't exact, but if we somewhat round off it came out correct). That means I applied the knockback formula for hitstun and it kinda worked. Therefore, I'm thinking these s and b I found are in fact some s' and b', where s'=s*c and b'=b*c. We can then factor out c and we get knockback*c.
DK's Hand Slap has a base knockback of 0, a knockback scaling of 100, and a fixed knockback value of 150. As a result, by using the formula:
  • Knockback on DK: 107.376
  • Knockback on Samus: 115.888
  • Knockback on Yoshi: 116.952
  • Knockback on Link/Falcon: 120.144
  • Knockback on Mario/Luigi/Fox: 124.4
  • Knockback on Ness: 135.04
  • Knockback on Pikachu: 141.424
  • Knockback on Kirby: 144.616
  • Knockback on Jigglypuff: 156.32
I have some other hitbox data recorded (mostly Mario, but select moves from other characters too).
 

Sangoku

Smash Master
Joined
Apr 25, 2010
Messages
3,931
Location
Geneva, Switzerland
Nice, thank you very much for the input. Do you know how to find vase knockback and knockback scaling?

Also, you can add everything else you want, that's the purpose of the thread. And if you know more stuff, I'll be glad to hear it =).

:phone:
 

Olikus

Smash Champion
Joined
Nov 12, 2009
Messages
2,451
Location
Norway
some day im gonna read the OP. cus its looks very interesting. Maybe I read one bit each day. Well see.
 

Toomai

Smash Ace
Joined
Aug 17, 2006
Messages
769
Location
Someplace in Canada
Do you know how to find base knockback and knockback scaling?
I run 1964 and use CheatEngine to read the values of the hitboxes currently in active memory. There is probably a better way to do it (read the moveset data directly) but I haven't figured that out yet.
 

Surri-Sama

Smash Hero
Joined
Apr 6, 2005
Messages
5,454
Location
Newfoundland, Canada!
I run 1964 and use CheatEngine to read the values of the hitboxes currently in active memory. There is probably a better way to do it (read the moveset data directly) but I haven't figured that out yet.
Can you accurately find out specific value like that with Cheat Engine?

Seems like a trail and error process that could take a lifetime lol.
 

Madao

Moderator
Moderator
Joined
Jun 27, 2013
Messages
873
Character Physics Chart
Handicap Level Chart
Aerial Auto Cancel Chart

Jumping formula for 1st Jump
Jumping Value for Y
Still Short Hop = 45
Moving Short Hop = 36
Still C Stick First Jump = 77
Moving First Jump = 63
Tap Jump = 80

Initial 1st Jump Y-Velocity = Y x Jumping Height Multiplier + Base Jump Height

Jumping formula for 2nd Jump (excluding Jigglypuff, Kirby, Ness, & Yoshi)
Initial 2nd Jump Y-Velocity = (80 x Jumping Height Multiplier + Base Jump Height) x Multiplier for 2nd Jump

Hitstun formula = floor(initial knockback / 1.875)
Hitlag formula = floor(Damage of hit / 3 + 5)
Hitlag formula when electric attack = floor( floor(Damage of hit / 3 + 5) * 1.5 )
Hitlag formula when crouch canceled (for person getting hit) = floor( floor(Damage of hit / 3 + 5) * 0.6666667 )
Hitlag formula when crouch cancelled & electric (for person getting hit) = floor( floor( floor(Damage of hit / 3 + 5) * 1.5 ) * 0.6666667 )

Z cancel has a frame window of 11. Due to input lag you have to press it 1 frame early
so the real window is 12th last frame to 2nd last frame. Teching has a frame window of 20.

Lol I'm new to google docs, so I'll take any suggestions regarding that.
Unfortunately I forgot to write down some of the stuff I learned ;/.
 

clubbadubba

Smash Master
Joined
Apr 27, 2011
Messages
4,086
So you get more DI frames the more damage you have? I had no idea... that's useful
 

Madao

Moderator
Moderator
Joined
Jun 27, 2013
Messages
873
Well, I decided to upload my calculator. It's not 100% done, but it's still very useful and the accuracy is very close.

I didn't feel like putting a button, so if you want to calculate whatever you wrote in, just press enter or click on one of the characters. Also if the angle of the move you are calculating is 361, just type in 42.5 if the enemy is on the ground and the knockback is >= 32, 0 if knockback < 32 and enemy is on ground, or 43 if the enemy is thrown or in the air, don't actually type in 361. Any variable you don't need, you can just leave it blank (like handicap, combo delay, or fixed knockback).

If you actually want to do calculations using the handicap settings, the only valid numbers are 1-40, since the game uses a lookup table and not a formula.

Combo delay, is just a feature I added so that you can calculate attacks that do multiple hits. You will have to write down the results of each hit though. So for example if you want to calculate fox's uair, for the first hit, you type in 6 into combo delay since the 2nd hit happens 6 frames after the first hit (you can see this in Toomai's table as well, so you don't have to manually check). For the end of loop setting, when hitstun is checked, the calculation continues until hitstun reaches 0, and if velocity is checked, the calculation continues until velocity = 0.

One last thing is I messed around with a lot of different things, so there may be a few minor bugs, but I will update the calculator when I add more / make improvements.

Here is the calculator . [Last Updated 05/02/2014].

I added text files to the zip file for the moveset data (Damage, angle, shield damage bonus, effect, & knockback) of each character. Now you guys can have a greater understanding of the game mechanics.
 
Last edited:

clubbadubba

Smash Master
Joined
Apr 27, 2011
Messages
4,086
So uh, when are you gonna add the DI calculation onto this :troll:?

Can't view it right now but I'll assume it works as advertised. Awesome job man
 

Madao

Moderator
Moderator
Joined
Jun 27, 2013
Messages
873
So uh, when are you gonna add the DI calculation onto this :troll:?

Can't view it right now but I'll assume it works as advertised. Awesome job man
Thanks,
Why can't you view it? Lol I assumed everyone here has a windows computer ;/. Maybe I'll try and learn how to make cross platform programs. Also what you mean by DI calculation? You mean the DI window? Or how far you can DI? Hitlag frames = DI window, and for how far you can move, I believe it's 168 per frame. So if you move left 1 frame, your X coordinate will change by -168.
 

clubbadubba

Smash Master
Joined
Apr 27, 2011
Messages
4,086
i'm at work, that's why lol. Sorry for the confusion

I mean take into account DI in your calculator itself, but I was mostly joking (mostly).
 

Madao

Moderator
Moderator
Joined
Jun 27, 2013
Messages
873
Oh ok lol. Maybe later if I come up with more stuff like wall bouncing, I'll add DI.

With emulator, you could practice DI by giving yourself a very high/ inifinite hitlag then when the cpu hits you, switch cpu to standing and you are in a state where all you can do is DI lol. It's quite interesting actually.
 

clubbadubba

Smash Master
Joined
Apr 27, 2011
Messages
4,086
Oh ok lol. Maybe later if I come up with more stuff like wall bouncing, I'll add DI.

With emulator, you could practice DI by giving yourself a very high/ inifinite hitlag then when the cpu hits you, switch cpu to standing and you are in a state where all you can do is DI lol. It's quite interesting actually.
Could you do this multiplayer? And then have DI races around sector Z?
 

Madao

Moderator
Moderator
Joined
Jun 27, 2013
Messages
873
Could you do this multiplayer? And then have DI races around sector Z?
Lol ya it's possible. The last person would have to be Link so they could hit themself with a bomb after everyone else is frozen. Idk how gameshark codes work online though (like whether they would cause a desync). Maybe I'll see if I can find a way to do this without having to be hit. I just hate how codes are match specific, but it wouldn't take too long to compile all the codes for every stage.

From what I've seen, every character I've tested moved at the same speed in DI. I should try all characters though just incase.
 

Sangoku

Smash Master
Joined
Apr 25, 2010
Messages
3,931
Location
Geneva, Switzerland
Oh you can only freeze a person in DI? Me too, but I thought you'd find the DI factor. Increasing the hitlag value and the little shaking effect value isn't enough to be able to move a character, so I've been thinking there should be another address (maybe a binary value) that says whether you can move or not.

Gameshark codes should work fine online, we use them all the time (for no item / all char).
 

Madao

Moderator
Moderator
Joined
Jun 27, 2013
Messages
873
I'm going to keep testing stuff and messing around in memory editor. I can't seem to figure out what tells the game that you've been hit. It's interesting how I keep finding things while I'm searching for something else.

There seems to be multiple variables that deal with animation.
 

Sangoku

Smash Master
Joined
Apr 25, 2010
Messages
3,931
Location
Geneva, Switzerland
Updated a bit with Madao's info.

What is this Handicap chart by the way? The handicap option in the game? If so, how come there are so many values (and not only 9)?

Tell me if I missed some other info you already provided and I'll add it too.
 

Madao

Moderator
Moderator
Joined
Jun 27, 2013
Messages
873
Updated a bit with Madao's info.

What is this Handicap chart by the way? The handicap option in the game? If so, how come there are so many values (and not only 9)?

Tell me if I missed some other info you already provided and I'll add it too.
I don't think all 40 are used, but in 1 Player mode, certain matches have random handicap levels like 39. Basically you multiply initial knockback with the handicap multipliers to get the real knockback (even if you both have 9 handicap, there are times where the outcome is a fraction of a point different). If the initial knockback was 100.4, and the person getting hit has a handicap of 8, and the attacker has a handicap of 9, you multiply the attackers handicap multiplier for offense which is 1.09 for 9 handicap, then multiply the defenders handicap multiplier for defense which is 1.0 for 8 handicap. This is especially useful for TASing 1P mode to decide what moves to use. Although writing down the handicap levels for each match will take a bit of work.
 

mixa

Banned via Warnings
Joined
Jun 6, 2012
Messages
2,005
Location
Isle of ゆぅ
I have a question about how to read the Aerial Auto Cancel Chart.

I get what all means, but looking at Falcon's Nair and Uair, respectively:



Nair (4 < > 27) : Hitbox comes out in frame 4, and ends in frame 27. Is that correct?
Uair (>= 19): ? I don't know what >= 19 is trying to tell me. Could someone clarify?


Madao, do you already have this chart for tilts, smash attacks, etc? I could count the frames using the Hitbox mode and make a table myself, or send you the numbers and you make the table if it's more interesting to have all the data in the same format and table style.



Also, I've never said thanks to Sangoku for this thread, it's very useful and has, along with other stuff, inspired me to take a more analytical look at the game. So thanks to Sangoku. (:
 

Madao

Moderator
Moderator
Joined
Jun 27, 2013
Messages
873
I have a question about how to read the Aerial Auto Cancel Chart.

I get what all means, but looking at Falcon's Nair and Uair, respectively:



Nair (4 < > 27) : Hitbox comes out in frame 4, and ends in frame 27. Is that correct?
Uair (>= 19): ? I don't know what >= 19 is trying to tell me. Could someone clarify?

Madao, do you already have this chart for tilts, smash attacks, etc? I could count the frames using the Hitbox mode and make a table myself, or send you the numbers and you make the table if it's more interesting to have all the data in the same format and table style.

Also, I've never said thanks to Sangoku for this thread, it's very useful and has, along with other stuff, inspired me to take a more analytical look at the game. So thanks to Sangoku. (:
I don't have this chart for tilts or anything. I apologize for the confusion, sometimes I do things inefficiently. 4 < > 27 means that frames 1-3 and frames 28 and up have auto cancel. >= 19 means that on frame 19 and beyond, it has autocancel. Most attacks have autocancel based on the hitbox timing so usually it's autocancelled while the hitboxes aren't on, but it's not always the case. If you just wanted to know the timing of hitboxes, Toomai's chart alone would be good enough for most if not all cases. Should I edit the numbers and use <= and >= instead of < and > ? To your question, yes, the Nair hitbox turns on at frame 4 and ends at 27.

Either way is fine, whether you want to make the chart or just give me the numbers. What is your current method of frame counting? To me it just sounds like too much work, to frame count every single move. It would be cool if more people contributed. That's why I started with an autocancel chart since that would be quick to do. The only frame data I've recorded was a few moves for landing lag of aerial attacks, and the total duration of each attack for Fox and Falcon. I'm still willing to do some of the work, but idk how long I will last until I get bored xD. I'm curious how quick I can generate frame data, considering I have picked up a few tricks :) . Basically for the format, would you guys would prefer a chart for each move or a chart for a whole character's moveset?

Edit: With my current method of frame counting, it takes ~20 seconds per move (after factoring in writing the numbers down and setting up the attacks) to get the hitbox duration as well as attack duration.
 

Sangoku

Smash Master
Joined
Apr 25, 2010
Messages
3,931
Location
Geneva, Switzerland
-I'll add the explanation for autocancel chart in the OP.
-I'll add the handicap chart with its explanation as well.

Concerning frame data, I'm not too sure. By move allows you to compare the same move between the characters, but by character seems more natural as we're playing a character as a whole. I guess it doesn't really matter.

And you're welcome mixa :)
 

mixa

Banned via Warnings
Joined
Jun 6, 2012
Messages
2,005
Location
Isle of ゆぅ
4 < > 27 means that frames 1-3 and frames 28 and up have auto cancel. >= 19 means that on frame 19 and beyond, it has autocancel.
Ah, ok, then I'm confused about what autocancel means. I thought it meant the aerial lag would be canceled upon landing, so after frame 18, you could land without Z-cancel and there wouldn't be lag.


If you just wanted to know the timing of hitboxes, Toomai's chart alone would be good enough for most if not all cases.
So it seems, but it's weird with some things.
When calculating how long Yoshi's moves last, couldn't you have used Toomai's chart?

Should I edit the numbers and use <= and >= instead of < and > ?
Nah, < > looks better.

Either way is fine, whether you want to make the chart or just give me the numbers. What is your current method of frame counting? To me it just sounds like too much work, to frame count every single move. It would be cool if more people contributed. That's why I started with an autocancel chart since that would be quick to do. The only frame data I've recorded was a few moves for landing lag of aerial attacks, and the total duration of each attack for Fox and Falcon. I'm still willing to do some of the work, but idk how long I will last until I get bored xD. I'm curious how quick I can generate frame data, considering I have picked up a few tricks :) . Basically for the format, would you guys would prefer a chart for each move or a chart for a whole character's moveset?
I don't think it matters that much either. By character or by move is fine.

My ~method for counting frames is very rudimentary lol: I input the move, advance one frame, click start monitoring on the keystroke counter, and buffer shield. When the shield's up, I stop pressing ]. (I can't measure aerials this way)
Pretty much this: http://gyazo.com/32c1432e91b446a1648ec6c1e4faca3b -- I copied your Yoshi stuff and did some Kirby measuring. But I have one extra frame for each move because I didn't subtract one at the end.

But yeah, your ~20s per move is way faster than me.


And a bit offtopic, I still don't know how to unlock all the characters, put no items, etc with the cheat engine.
 
Top Bottom