News:

MFG's Character of the Month: October 2026 Nominations

Main Menu

Multiple Air Attack Problems

Started by MUGENforever, February 10, 2008, 07:27:31 AM

Previous topic - Next topic

MUGENforever

Problems
1) For some reason he won't follow through with the attack, as soon as I press the button he stops going forward or back and drops straight down.
2) Whenever I execute a punch in the Air, for some reason he stops comming down and jsut stays in the air.
3) My kick attacks loop and repeat, but my punches don't.  (I don't want the kicks to loop).

CNS for air attacks, CMD is folled after.

CNS______________________________
;-------------------------------------
;Air Light Punch
[StateDef 600]
type = A
movetype= A
physics = A
juggle  = 1
velset = 0,0
ctrl = 0
anim = 200
poweradd = 20
sprpriority = 2

[State 600, 1]
type = HitDef
trigger1 = AnimElem = 2
attr = S, NA
damage = 20
animtype = Light
guardflag = MA
hitflag = MAF
priority = 3, Hit
pausetime = 6, 7
sparkno = 0
sparkxy = -10, -76
hitsound = 5, 0
guardsound = 6, 0
ground.type = High
ground.slidetime = 5
ground.hittime  = 12
ground.velocity = -4
airguard.velocity = -1.9,-.8
air.type = High
air.velocity = -1.4,-3
air.hittime = 12

[State 600, end]
type = ChangeState
trigger1 = AnimTime = 0
value = 0
ctrl = 1

;-------------------------------------
;Air Medium Punch
[StateDef 601]
type = A
movetype= A
physics = A
juggle  = 1
velset = 0,0
ctrl = 0
anim = 201
poweradd = 40
sprpriority = 2

[State 601, 1]
type = HitDef
trigger1 = AnimElem = 2
attr = S, NA
damage = 40
animtype = Light
guardflag = MA
hitflag = MAF
priority = 3, Hit
pausetime = 10, 10
sparkno = 0
sparkxy = -10, -76
hitsound = 5, 0
guardsound = 6, 0
ground.type = High
ground.slidetime = 5
ground.hittime  = 12
ground.velocity = -4
airguard.velocity = -1.9,-.8
air.type = High
air.velocity = -1.4,-3
air.hittime = 12

[State 601, end]
type = ChangeState
trigger1 = AnimTime = 0
value = 0
ctrl = 1

;-------------------------------------
;Air Hard Punch
[StateDef 602]
type = A
movetype= A
physics = A
juggle  = 1
velset = 0,0
ctrl = 0
anim = 202
poweradd = 65
sprpriority = 2

[State 602, 1]
type = HitDef
trigger1 = AnimElem = 2
attr = S, NA
damage = 30
animtype = Light
guardflag = MA
hitflag = MAF
priority = 3, Hit
pausetime = 10, 10
sparkno = 0
sparkxy = -10, -76
hitsound = 5, 0
guardsound = 6, 0
ground.type = High
ground.slidetime = 5
ground.hittime  = 12
ground.velocity = -4
airguard.velocity = -1.9,-.8
air.type = High
air.velocity = -1.4,-3
air.hittime = 12

[State 602, 1]
type = HitDef
trigger1 = AnimElem = 4
attr = S, NA
damage = 30
animtype = Light
guardflag = MA
hitflag = MAF
priority = 3, Hit
pausetime = 10, 10
sparkno = 0
sparkxy = -10, -76
hitsound = 5, 0
guardsound = 6, 0
ground.type = High
ground.slidetime = 5
ground.hittime  = 12
ground.velocity = -4
airguard.velocity = -1.9,-.8
air.type = High
air.velocity = -1.4,-3
air.hittime = 12

[State 602, end]
type = ChangeState
trigger1 = AnimTime = 0
value = 0
ctrl = 1

;------------------------------
;Air Light Kick
[StateDef 604]
type = A
movetype= A
physics = A
juggle  = 1
velset = 0,0
ctrl = 0
anim = 204
poweradd = 20
sprpriority = 2

[State 604, 1]
type = HitDef
trigger1 = AnimElem = 2
attr = S, NA
damage = 25
animtype = Light
guardflag = MA
hitflag = MAF
priority = 3, Hit
pausetime = 6, 7
sparkno = 0
sparkxy = -10, -76
hitsound = 5, 0
guardsound = 6, 0
ground.type = High
ground.slidetime = 5
ground.hittime  = 12
ground.velocity = -4
airguard.velocity = -1.9,-.8
air.type = High
air.velocity = -1.4,-3
air.hittime = 12

;------------------------------
;Air Medium Kick
[StateDef 605]
type = A
movetype= A
physics = A
juggle  = 1
velset = 0,0
ctrl = 0
anim = 205
poweradd = 20
sprpriority = 2

[State 605, 1]
type = HitDef
trigger1 = AnimElem = 2
attr = S, NA
damage = 40
animtype = Light
guardflag = MA
hitflag = MAF
priority = 3, Hit
pausetime = 7, 8
sparkno = 0
sparkxy = -10, -76
hitsound = 5, 0
guardsound = 6, 0
ground.type = High
ground.slidetime = 5
ground.hittime  = 12
ground.velocity = -4
airguard.velocity = -1.9,-.8
air.type = High
air.velocity = -1.4,-3
air.hittime = 12

;------------------------------
;Air Hard Kick
[StateDef 606]
type = A
movetype= A
physics = A
juggle  = 1
velset = 0,0
ctrl = 0
anim = 206
poweradd = 20
sprpriority = 2

[State 606, 1]
type = HitDef
trigger1 = AnimElem = 2
attr = S, NA
damage = 65
animtype = Light
guardflag = MA
hitflag = MAF
priority = 3, Hit
pausetime = 10, 10
sparkno = 0
sparkxy = -10, -76
hitsound = 5, 0
guardsound = 6, 0
ground.type = High
ground.slidetime = 5
ground.hittime  = 12
ground.velocity = -4
airguard.velocity = -1.9,-.8
air.type = High
air.velocity = -1.4,-3
air.hittime = 12



CMD______________________

[command]
name = "Air Hard Kick"
command = c
time = 15

[command]
name = "Air Medium Kick"
command = b
time = 15

[command]
name = "Air Light Kick"
command = a
time = 15

[command]
name = "Air Hard Punch"
command = z
time = 15

[command]
name = "Air Medium Punch"
command = y
time = 15

[command]
name = "Air Light Punch"
command = x
time = 15


[Statedef -1]

;Air Hard Kick
[State -1, Air Hard Kick]
type = ChangeState
value = 606
triggerall = command = "c"
trigger1 = (statetype = a) && ctrl

;Air Medium Kick
[State -1, Air Medium Kick]
type = ChangeState
value = 605
triggerall = command = "b"
trigger1 = (statetype = a) && ctrl

;Air Light Kick
[State -1, Air Light Kick]
type = ChangeState
value = 604
triggerall = command = "a"
trigger1 = (statetype = a) && ctrl

;Air Hard Punch
[State -1, Air Hard Punch]
type = ChangeState
value = 602
triggerall = command = "z"
trigger1 = (statetype = a) && ctrl

;Air Medium Punch
[State -1, Air Medium Punch]
type = ChangeState
value = 601
triggerall = command = "y"
trigger1 = (statetype = a) && ctrl

;Air Light Punch
[State -1, Air Light Punch]
type = ChangeState
value = 600
triggerall = command = "x"
trigger1 = (statetype = a) && ctrl

TempesT

#1
Remove the velset = 0,0 line

As for your multi air attacks, add this


[State 640, 2]
type = CtrlSet
trigger1 = Time = 40
value = 1


instead of

[State 602, end]
type = ChangeState
trigger1 = AnimTime = 0
value = 0
ctrl = 1

You should also check out your AIR file and add -1 to the last frame in the ticks area of the CLSN data.

Oh and you forgot to add the end states at the end of your kick anims too.
you can't mixup a blind man, and you can't out think a brick ~skisonic
Street fighting is all about analysis, prediction, and reaction. That's it.


MUGENforever

#2
That fixed problem 1, thank you very much, now I still got problem 2 and 3.

2) Whenever I execute a punch in the Air, for some reason he stops comming down and jsut stays in the air.
3) My kick attacks loop and repeat, but my punches don't. (I don't want my kicks to loop either).

You know I'm using Fighter Factory to make the character and I wouldn't expect for there to be extra codes that aren't need when it inputs the coding for you.

TempesT

Well, all that

[State 640, 2]
type = CtrlSet
trigger1 = Time = 40
value = 1

does is define when you gain control back, the Time trigger uses game ticks, so you'll gain control back 40 ticks after the animation ends.

Check my edit too. I'm using KOF values, btw, so you'll probably want to change some things to suit whatever character it is you're making.
you can't mixup a blind man, and you can't out think a brick ~skisonic
Street fighting is all about analysis, prediction, and reaction. That's it.


MUGENforever

Is that -1 required for th last frame of the air file or is there a way around that?  I was using the sam animation for my standing punches as I was for my air punches, thats why I ask.  I guess I'll go and replicate them, but it will help to know for future characters.

MUGENforever

#5
Ok, After I do an attack now, he just holds the pose till he hits the floor, I wouldn't mind that, except that he can't hurt the enemy except at the first point when he does the attack.

Also if I jump straight up and do an attack, he will land in the pos of that attack and stay like that until I press left or right, CNS looks like this.

CNS____________________

;------------------------------
;Air Hard Kick
[StateDef 606]
type = A
movetype= A
physics = A
juggle  = 1
ctrl = 0
anim = 606
poweradd = 65
sprpriority = 2

[State 606, 1]
type = HitDef
trigger1 = AnimElem = 2
attr = S, NA
damage = 65
animtype = Light
guardflag = MA
hitflag = MAF
priority = 3, Hit
pausetime = 10, 10
sparkno = 0
sparkxy = -10, -76
hitsound = 5, 0
guardsound = 6, 0
ground.type = High
ground.slidetime = 5
ground.hittime  = 12
ground.velocity = -4
airguard.velocity = -1.9,-.8
air.type = High
air.velocity = -1.4,-3
air.hittime = 12

[State 606, end]
type = ChangeState
trigger1 = AnimTime = 1
value = 1
ctrl = 1

TempesT

He gets stuck in the air? Meaning he doesn't fall? That's probably because you didnt set a Statetype in the CMD.

Add a
triggerall = statetype = A

In the CMD blocks of each air move. Probably want to do a

triggerall = statetype = S

For standing attacks as well.
you can't mixup a blind man, and you can't out think a brick ~skisonic
Street fighting is all about analysis, prediction, and reaction. That's it.


MUGENforever

he didn't fall because the velset coding got back in there somehow after I deleted it so I took that out, I edited my last post because I didn't want to post three times in a row, but here is a repost of the edit.



Ok, After I do an attack now, he just holds the pose till he hits the floor, I wouldn't mind that, except that he can't hurt the enemy except at the first point when he does the attack.

Also if I jump straight up and do an attack, he will land in the pos of that attack and stay like that until I press left or right, CNS looks like this.

CNS____________________

;------------------------------
;Air Hard Kick
[StateDef 606]
type = A
movetype= A
physics = A
juggle  = 1
ctrl = 0
anim = 606
poweradd = 65
sprpriority = 2

[State 606, 1]
type = HitDef
trigger1 = AnimElem = 2
attr = S, NA
damage = 65
animtype = Light
guardflag = MA
hitflag = MAF
priority = 3, Hit
pausetime = 10, 10
sparkno = 0
sparkxy = -10, -76
hitsound = 5, 0
guardsound = 6, 0
ground.type = High
ground.slidetime = 5
ground.hittime  = 12
ground.velocity = -4
airguard.velocity = -1.9,-.8
air.type = High
air.velocity = -1.4,-3
air.hittime = 12

[State 606, end]
type = ChangeState
trigger1 = AnimTime = 1
value = 1
ctrl = 1

TempesT

[State 606, end]
type = ChangeState
trigger1 = AnimTime = 1
value = 1
ctrl = 1

Get rid of the "value =" line
you can't mixup a blind man, and you can't out think a brick ~skisonic
Street fighting is all about analysis, prediction, and reaction. That's it.


MUGENforever

I'm afraid I can't do that, I get a very long worded error, but if you would like to knwo what the error is, jsut ask and I'll post it.

TempesT

Change it to Value = 0 then. FighterFactory is weird.
you can't mixup a blind man, and you can't out think a brick ~skisonic
Street fighting is all about analysis, prediction, and reaction. That's it.


MUGENforever

If I change the value to 0, then he gets stuck in the air after the attack :(

TempesT

Check to make sure you have fall and land animations in the AIR then. I've done everything I can think of, sorry.
you can't mixup a blind man, and you can't out think a brick ~skisonic
Street fighting is all about analysis, prediction, and reaction. That's it.


TempesT

Oh wait, it might be your CMD.

Try change those triggers to something like this:

[State -1, Jumping Weak Kick]
type = ChangeState
value = 630
triggerall = command = "y"
triggerall = statetype = A
trigger1 = ctrl
you can't mixup a blind man, and you can't out think a brick ~skisonic
Street fighting is all about analysis, prediction, and reaction. That's it.


MUGENforever

Quote from: ~*TempesT*~ on February 10, 2008, 08:55:10 AM
Check to make sure you have fall and land animations in the AIR then. I've done everything I can think of, sorry.

:(, Yeah the CMD thing didn't work either, thanks for all your help though.

VinnyJ

Just remove the last ChangeState blocks altogether from your air attacks in your CNS

You're telling mugen to stand as soon as you finish the state, regardless if you're on the ground or air

Negative Edge

Another alternative.....

in your air punch states add,

[state xxxxx, Changestate]
type = changestate
trigger1 = animtime = 0
value = xxxxx ; <---- jump down from air attack stateno
ctrl = 0

Make a statedef where your character uses a jump down animation

[statedef xxxxx]; <---- jump down from air attack stateno
type = a
movetype = i
physics = a
anim = "jump down anim no here"
crtl = 0

[state xxxxx, Changestate]
type = changestate
trigger1 = pos y > 0
value = 52 ;<--- jump land stateno
ctrl = 0

TempesT

you can't mixup a blind man, and you can't out think a brick ~skisonic
Street fighting is all about analysis, prediction, and reaction. That's it.


MUGENforever

#18
I did what vinny said, I'm just left with one last problem now, once he hits the floor he gets stuck in the air pose till i press another button.

Negative Edge

try the changestate I mentioned in your current air attack state,

[state 0, Changestate]
type = changestate
trigger1 = pos y > 0
value = 52
ctrl = 0