• 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!

Completed Spacie Landing Lag

UnclePunch

Smash Ace
Joined
Nov 9, 2014
Messages
673
Code:
$Cannot Act out of Spacie Up B LandingLag [UnclePunch]
040e7eb8 38C00000

$Cannot Act out of Spacie Side B LandingLag [UnclePunch]
040ea984 38C00000
Did some landing lag investigating today. Here's what I found:

Landing Notes

All landing action states go to the same function essentially. You can say there exists 2 action states hidden in "Landing". There's normal landing (land from a jump) in which the IASA function states you can interrupt after 4 frames,

and then theres a psuedo "SpecialLand". "SpecialLand" uses the same IASA function but after 4 frames, it looks for a flag set by the method of entering SpecialFall. If this flag is set to 0, you can NOT act out after 4 frames and must wait for the animation to end. Landing mid-airdodge,

landing post-airdodge,

and in most cases, landing post-UpB,

all put the character into this "helpless" landing state.

The flag is the same as the "hitstun counter" as labelled on the data sheet (0x2340). This is the value compared upon landing but it comes from 0x2358. This is where the flag is changed, and is copied into the hitstun value down the line. I've labelled this offset "Act out of Landing Flag" although it may do more.

Two of the functions that set these flags are 80099bd0,

http://i.imgur.com/EJJlMQF.png

and 800e7e78,

http://i.imgur.com/jFHjXz0.png

and are branched to from the Animation Interrupt blrl at 8006ab74. It should be noted that most characters have their own version of these functions that set the "Act Out of Flag" as well as landing speed modifier. Here's falcons for example,

http://i.imgur.com/FeW4pyS.png

Landing Speed modifier is read globally from player offset 0x2354 and is written on a per character basis. This offset is used to calculate landing lag. Dividend is usually 30, so 30 divided by this value gives you the number the animation speed will be DIVIDED by. Quotient smaller numbers = longer animation.

Summary:

http://i.imgur.com/vISyqq6.png
 
Last edited:
Top Bottom