YesNoOk
avatar

Need help about Triple Jump (Read 1277 times)

Started by Jecht Marchrius, February 19, 2019, 07:51:49 am
Share this topic:
Need help about Triple Jump
#1  February 19, 2019, 07:51:49 am
  • avatar
  • *
    • Philippines
Hey guys! I'm in need of help in making a proper "triple" jump move. I already made one from the tip "MikeDaBike" gave on the "Double Jump!!!" (http://mugenguild.com/forum/topics/double-jump-92990.0.html) thread. The problem is the 3rd jump almost immediately comes out right after the 2nd jump, making it look like you're just doing a double jump instead of a triple. So I need assistance to make the 3rd jump not come out almost immediately. Thanks.
Re: Need help about Triple Jump
#2  February 19, 2019, 08:04:55 am
  • ****
  • CPU Purple Heart
    • USA
    • https://www.pixiv.net/en/users/8108265
 You could probably take a look at otz-kai's Sayaka Miki's coding since she possesses a triple jump.

 I would say look into my Hotaru Futaba's coding, too, but her triple jump is pretty circumstantial and can't be used on demand.
Re: Need help about Triple Jump
#3  February 20, 2019, 04:23:19 am
  • avatar
  • *
    • Philippines
Hey, thanks! I already downloaded all the Hotaru Futaba files that I could find for reference. But I don't know which fighting game Sayaka Miki is from.
Re: Need help about Triple Jump
#4  February 20, 2019, 04:37:13 am
  • ****
  • CPU Purple Heart
    • USA
    • https://www.pixiv.net/en/users/8108265
 Her sprites are original, but as aforementioned, the author of that particular Sayaka Miki is by otz-kai.
Re: Need help about Triple Jump
#5  February 20, 2019, 05:08:55 am
  • avatar
  • *
    • Philippines
Found her and already DL'd her thanks!
Re: Need help about Triple Jump
#6  February 21, 2019, 05:40:39 pm
  • avatar
  • *
    • Philippines
Thanks for the tips Nep Heart! Already solved it!
Re: Need help about Triple Jump
#7  February 21, 2019, 05:57:36 pm
  • avatar
  • *
    • Philippines
Scratch that, found a little hitch
Re: Need help about Triple Jump
#8  February 23, 2019, 02:34:47 pm
  • ****
    • USA
    • twitter.com/inktrebuchet
There’s not enough info here to help. Are you able to post your code?

This is just a guess since I haven't seen how yours is set up.
Code:
[state -1]
type = changestate
trigger1 = ctrl
trigger1 = stateno = 2nd jump stateno
trigger1 = time > 15
trigger1 = command = "holdup"
value = 3rd jump stateno
Last Edit: February 23, 2019, 10:40:23 pm by ink
Re: Need help about Triple Jump
#9  March 02, 2019, 03:47:25 am
  • avatar
  • *
    • Philippines
Here's my code. Bit of a mess and still new at this. My problem here is during the 2nd air jump or "air jump 2". Air jump 2 automatically comes out when I keep holding the "up" button after the 1st air jump. I want it to come out only when I press the "up" button again. Pls help!

Code:
;-------------------------------------------------------------------------------------------------------------------------------------------------------------------
;AirJump Start
[Statedef 45]
type    = A
physics = N
ctrl = 0
velset = 0, 0

[State 45, air jump 1 - finish]
type = VarSet
trigger1 = !Time
var(4) = 3

[State 45, 1]
type = ChangeAnim
trigger1 = SelfAnimExist(44)
value = 44

[State 45, 2]
type = ChangeAnim
trigger1 = !SelfAnimExist(44)
value = 41

[State 45, 3]
type = VarSet
trigger1 = Time = 0
sysvar(1) = 0

[State 45, 4]
type = VarSet
trigger1 = command = "holdfwd"
sysvar(1) = 1

[State 45, 5]
type = VarSet
trigger1 = command = "holdback"
sysvar(1) = -1

[State 45, 6]
type = VelSet
trigger1 = Time = 2
x = ifelse(sysvar(1) = 0, const(velocity.airjump.neu.x), ifelse(sysvar(1) = 1, const(velocity.airjump.fwd.x), const(velocity.airjump.back.x)))
y = const(velocity.airjump.y)

[State 45, 7]
type = ChangeState
trigger1 = Time = 2
value = 50
ctrl = 1
;-------------------------------------------------------------------------------------------------------------------------------------------------------------------
;AirJump 2 Start
[Statedef 46]
type    = A
physics = N
ctrl = 0
velset = 0, 0

[State 46, air jump 2 - finish]
type = VarSet
trigger1 = !Time
var(5) = 3

[State 46, 1]
type = ChangeAnim
trigger1 = SelfAnimExist(44)
value = 44

[State 46, 2]
type = ChangeAnim
trigger1 = !SelfAnimExist(44)
value = 41

[State 46, 3]
type = VarSet
trigger1 = Time = 0
sysvar(1) = 0

[State 46, 4]
type = VarSet
trigger1 = command = "holdfwd"
sysvar(1) = 1

[State 46, 5]
type = VarSet
trigger1 = command = "holdback"
sysvar(1) = -1

[State 46, 6]
type = VelSet
trigger1 = Time = 2
x = ifelse(sysvar(1) = 0, const(velocity.airjump.neu.x), ifelse(sysvar(1) = 1, const(velocity.airjump.fwd.x), const(velocity.airjump.back.x)))
y = const(velocity.airjump.y)

[State 46, 7]
type = ChangeState
trigger1 = Time = 2
trigger1 = stateno != 45
value = 50
ctrl = 1
;-------------------------------------------------------------------------------------------------------------------------------------------------------------------
[Statedef -2]


[State -2, air jump 1 - reset]
type = VarSet
triggerall = var(4) >= 1
trigger1 = statetype != A
var(4) = 0

[State -2, air jump 1 - set]
type = VarAdd
triggerall = (stateno=[50,51])
trigger1 = var(4) = 0 && command != "holdup"
trigger2 = var(4) = 1 && command = "holdup"
var(4) = 1

[State -2, air jump 2 - reset]
type = VarSet
triggerall = var(5) >= 1
trigger1 = statetype != A
var(5) = 0

[State -2, air jump 2 - set]
type = VarAdd
triggerall = (stateno = [50, 51])
trigger1 = var(5) = 0 && command != "holdup"
trigger2 = var(5) = 1 && command = "holdup"
var(5) = 1
;-------------------------------------------------------------------------------------------------------------------------------------------------------------------
[Statedef -1]

;===========================================================================
;air jump 1
[state -1, air jump 1]
type = ChangeState
value = 45
triggerall = statetype = A
triggerall = command = "holdup" || (command != "holdup" && time < 15)
triggerall = time > 15
triggerall = var(4) = 2
trigger1 = ctrl

;===========================================================================
;air jump 2
[state -1, air jump 2]
type = ChangeState
value = 46
triggerall = statetype = A
triggerall = command = "holdup" || (command != "holdup" && time < 15)
triggerall = time > 15
triggerall = var(5) = 2
trigger1 = ctrl
Re: Need help about Triple Jump
#10  March 02, 2019, 04:48:35 am
  • ****
  • CPU Purple Heart
    • USA
    • https://www.pixiv.net/en/users/8108265
 You might want to set a jump buffering system so that jump and mid-air jump inputs don't register multiple times on the same press.

 Here's a look at the jump buffering system that I use in all my characters (it also helps prevent other mis-inputs of other direction presses too).

Quote
[State -1, Midair Jump Cancel]
type = ChangeState
value = 45
triggerall = !ishelper
triggerall = !NumEXplod(222222)
triggerall = command = "holdup"
triggerall = var(6) < 1
triggerall = statetype = A
trigger1 = stateno = [400,420]
trigger1 = movecontact

[State -1, Attack Jump Cancel]
type = changestate
value = 40
triggerall = !ishelper
triggerall = command = "holdup"
trigger1 = stateno = [200,210]
trigger1 = movecontact
trigger2 = stateno = 215 && movehit
trigger3 = stateno = [300,310]
trigger3 = movecontact
trigger4 = stateno = 320 && movehit

[state -1, Jump]
type = changestate
value = 40
triggerall = !ishelper
triggerall = command = "holdup"
triggerall = statetype != A
triggerall = movetype != H
triggerall = statetype != L
triggerall = roundstate = 2 && time > 300
trigger1 = movetype != A
trigger1 = stateno != [800,814]
trigger1 = stateno != [1000,2010]
trigger1 = stateno != [3000,3999]
ignorehitpause = 1

[state -1, Mid-Air Jump]
type = changestate
value = 45
triggerall = !ishelper
triggerall = !NumEXplod(222222)
triggerall = command = "holdup"
triggerall = var(6) < 1
triggerall = statetype = A
triggerall = movetype != H
triggerall = stateno != [54,55]
triggerall = stateno != 105
triggerall = stateno != [110,116]
triggerall = prevstateno != 54
triggerall = stateno != [3000,3999]
triggerall = stateno != 1013
triggerall = movetype != A
trigger1 = ctrl
trigger2 = stateno = [400,420]
trigger2 = movecontact
ignorehitpause = 1
ctrl = 0

[State -1, Jump Limit]
type = Explod
triggerall = !ishelper
triggerall = !numexplod(222222)
trigger1 = command = "holdup"
anim = 1
ID = 222222
postype = left
removetime = 9999999999
pos = 999999,999999

[State -1, Jump Limit]
type = RemoveExplod
triggerall = !ishelper
triggerall = numexplod(222222)
trigger1 = command != "holdup"
id = 222222

 Note that I am using an invisible explod as a flag that prevents the input from occurring beyond the first button press and only goes away if I let go of the jump direction? When I press it again, the explod will come back until I let go. It's basically a condition that tells the character not to jump again until I let go and input jump again.
Re: Need help about Triple Jump
#11  March 02, 2019, 06:26:47 am
  • avatar
  • *
    • Philippines
Thanks Nep! So where do I put this? Since I'm seeing State -1, do I put this on the commands section?

-edit-
Thanks Nep! It works fine now!
Last Edit: March 02, 2019, 06:32:46 am by Jecht Marchrius
Re: Need help about Triple Jump
#12  March 02, 2019, 06:30:57 am
  • ****
  • CPU Purple Heart
    • USA
    • https://www.pixiv.net/en/users/8108265
 Yeah, it has to be since it needs to respond to your inputs. The explod needs to be a blank animation with no collisions of any sort, it merely functions as a condition flag that tells whether you are holding up or not.
Re: Need help about Triple Jump
#13  March 02, 2019, 08:07:23 am
  • avatar
  • *
    • Philippines
Never thought about using explods. Guess I still need more training. Thanks for the help Nep!