# Safe Fall/Recovery (Mechanics) (Read 1212 times)

Started by Niitris, November 25, 2016, 03:43:50 pm

#### Niitris

##### Safe Fall/Recovery (Mechanics)
New #1  November 25, 2016, 03:43:50 pm
Safe fall is to recover from a falling state and land on your feet. This is done to keep your momentum, as well as avoiding your opponent's wake-up pressure. However, your ability to recover is dependent on P2's HitDef. If P2 has FallRecovery=0, or if FallRecoveryTime is higher than the time it takes for you to hit the ground, you will be unable to recover.

Using KFM's command file, the input for recovery is x+y. There are two ways to do this.

Air Recovery
This allows you to recover in mid-air.
Code:
`;Found in common1.cns; Air get-hit (fall recovery in air)[Statedef 5210]type    = Amovetype= Iphysics = Nanim = 5210ctrl = 0[State 5210, 1]type = PosFreezetrigger1 = Time < 4[State 5210, 2] ;Turn if not facing opponenttype = Turntrigger1 = Time = 0trigger1 = p2dist X < Const720p(-80)[State 5210, 1.0 behavior 1]type = VelMultrigger1 = Time = 4x = Const(velocity.air.gethit.airrecover.mul.x)y = Const(velocity.air.gethit.airrecover.mul.y)[State 5210, 1.0 behavior 2]type = VelAddtrigger1 = Time = 4x = Const(velocity.air.gethit.airrecover.add.x)y = Const(velocity.air.gethit.airrecover.add.y)[State 5210, 2] ;Go uptype = VelAddtrigger1 = Time = 4trigger1 = Command = "holdup"y = Const(velocity.air.gethit.airrecover.up)[State 5210, 2] ;Go downtype = VelAddtrigger1 = Time = 4trigger1 = Command = "holddown"y = Const(velocity.air.gethit.airrecover.down)[State 5210, 2] ;Go fwdtype = VelAddtrigger1 = Time = 4trigger1 = Command = "holdfwd"x = Const(velocity.air.gethit.airrecover.fwd)[State 5210, 2] ;Go backtype = VelAddtrigger1 = Time = 4trigger1 = Command = "holdback"x = Const(velocity.air.gethit.airrecover.back)[State 5210, 3] ;invincibletype = NotHitBytrigger1 = Time = 0value = SCAtime = 15[State 5210, 4] ;can attacktype = CtrlSettrigger1 = Time = 20value = 1[State 5210, 5]type = VelAddtrigger1 = Time >= 4y = Const(movement.air.gethit.airrecover.yaccel)[State 5210, 5] ;Land on groundtype = ChangeStatetrigger1 = Vel Y > 0trigger1 = Pos Y >= 0value = 52 ;Jump landctrl = 1`

Safe Fall
This is when you recover just before hitting the ground, safely landing on your feet instead.
Code:
`; Found in common1.cns; Air get-hit (fall recovery on ground)[Statedef 5201]type    = Amovetype= Hphysics = Aanim = 5200[State 5201, 1] ;Turn if not facing opponenttype = Turntrigger1 = Time = 0trigger1 = p2dist X < Const720p(-20)[State 5201, 2]type = VelSettrigger1 = Time = 0x = Const(velocity.air.gethit.groundrecover.x)y = Const(velocity.air.gethit.groundrecover.y)[State 5201, 3]type = PosSettrigger1 = Time = 0y = 0[State 5201, 4] ;invincibletype = NotHitBytrigger1 = 1value = SCAtime = 1`
Last Edit: November 25, 2016, 07:20:36 pm by Niitris

#### mr_bourrepalestick

##### Re: Safe Fall/Recovery
#2  November 25, 2016, 04:24:33 pm
I just wanted to add clarification to the "safe" attribute.

Statedef 5210 - "Air get-hit (fall recovery in air)" in KFM's common1.cns −> 2 state controllers to focus on :
Spoiler: NotHitBy & CtrlSet controllers (click to see content)

Statedef 5201 - "Air get-hit (fall recovery on ground)" in KFM's common1.cns −> a similar state controller to pay attention to :
Spoiler: NotHitBy controller (click to see content)

Out of the ticks when invincibility is granted, your character can still be vulnerable if opponent attacks.
- samurais, swords & stuff ? → Another Blade
Last Edit: November 25, 2016, 04:30:00 pm by mr_bourrepalestick