Enabling Special Moves for Air Usage

Started by Rivox, July 03, 2011, 05:37:07 PM

Previous topic - Next topic

Rivox

Hello all. I just was wondering, is it possible to edit a character lightly by making a special move of theirs able to be triggered in the air, as well as on the ground? The character I'm using is Shang Tsung by OmegaPsycho, and basically what I'm trying to accomplish is enabling Scorpion's/Reptile's/Ermac's "Teleport Punch" move to be able to be used in the air, as well as on the ground.

If anyone would be able to help me, (or even edit the character and PM me back the fixed version) I'd greatly appreciate it!

GT

Find the move in the [Statedef -1] of the CMD and alter its conditions.

It may be "triggerall = statetype !=A" or "trigger1 = statetype = S". Change it to "statetype !=C" or completely remove it.

Rivox

Awesome! Thanks...I shall try that out right now and see if it works!

Rivox


vgma2


Rivox

Tried editing again...no crashing...but the move still doesn't work in the air and I made a slight change in the Scorpion part:

;TELEPORT PUNCH SCORPION
[State -1, TELEPORT PUNCH SCORPION]
type = ChangeState
;triggerall = var(40) = 0
triggerall = RoundState = 2
triggerall = pos y >-30
triggerall = command = "TelePunch"
triggerall = var(35) = 1
trigger1 = ctrl && statetype != C
trigger2 = stateno = 251 && statetype = C
trigger3 = stateno = 52 && statetype = C
ignorehitpause = 1
value = 380


;TELEPORT PUNCH REPTILE
[State -1, TELEPORT PUNCH REPTILE]
type = ChangeState
;triggerall = var(40) = 0
triggerall = RoundState = 2
triggerall = pos y >-30
triggerall = command = "TelePunch"
triggerall = var(38) = 1
trigger1 = ctrl && statetype != A
trigger2 = stateno = 251 && statetype = A
trigger3 = stateno = 52 && statetype = A
ignorehitpause = 1
value = 381

;TELEPORT PUNCH ERMAC
[State -1, TELEPORT PUNCH ERMAC]
type = ChangeState
;triggerall = var(40) = 0
triggerall = RoundState = 2
triggerall = pos y >-30
triggerall = command = "TelePunch"
triggerall = var(39) = 1
trigger1 = ctrl && statetype != A
trigger2 = stateno = 251 && statetype = A
trigger3 = stateno = 52 && statetype = A
ignorehitpause = 1
value = 382

What's wrong? Ugh so complicated...just to make a move air-available lol.

Rivox

This was an error before as well:

Error message: Need at least 1 trigger
Error parsing [State -1, TELEPORT PUNCH SCORPION]
Error in [StateDef -1]
Error in CODE\ShangTsung.cmd
Error loading chars/ARCADE_Size/ARCADE_Size.def
Error loading p1

GT

#7
The reason why you got that error is probably because you removed the entire trigger instead of just the statetype = part. You need to have atleast 1 trigger(no) in a statectrl and the trigger numbering needs to be consecutive (If you remove trigger1 and there was a trigger2 in the statectrl then it won't work).

Also,

Quote from: Rivox on July 03, 2011, 09:18:35 PM
trigger1 = ctrl && statetype != C
trigger2 = stateno = 251 && statetype = C
trigger3 = stateno = 52 && statetype = C

Why did you put stateno = xx && statetype = C?
Statenos 251 and 52 don't have crouch statetypes (Do they?) so you shouldn't have put the && statetype = C next to them.

Lastly, try commenting the statetype out ( trigger1 = ctrl && statetype !=C becomes trigger1 = ctrl ; && statetype !=C)

Remove triggers 2 and 3 and make trigger1 ( trigger1 = ctrl ) add a triggerall of statetype = A ;

Quote
;TELEPORT PUNCH SCORPION
[State -1, TELEPORT PUNCH SCORPION]
type = ChangeState
;triggerall = var(40) = 0
triggerall = RoundState = 2
triggerall = Statetype = A
triggerall = pos y >-30
triggerall = command = "TelePunch"
triggerall = var(35) = 1
trigger1 = ctrl 
ignorehitpause = 1
value = 380

Rivox

So you're saying to just leave everything as is and only change trigger1 = ctrl && statetype !=C to trigger1 = ctrl ; && statetype !=C?

GT

Sorry, I edited the post again, :grrr:

Add a triggerall of statetype = A, remove triggers 2 and 3 and make trigger1 = ctrl ;

Quote;TELEPORT PUNCH SCORPION
[State -1, TELEPORT PUNCH SCORPION]
type = ChangeState
;triggerall = var(40) = 0
triggerall = RoundState = 2
triggerall = Statetype = A
triggerall = pos y >-30
triggerall = command = "TelePunch"
triggerall = var(35) = 1
trigger1 = ctrl
ignorehitpause = 1
value = 380

Rivox

oh nvm lol...so copy and paste that code instead?


Rivox

well...good news and bad news. Good news is that the char no longer crashes mugen. Bad news is...that Teleport Punch won't work AT ALL now...be it ground OR air!

It still works for Ermac and Reptile now, (ground only) but won't work for Scorpion at all. Who knew this was so complicated?

Rivox


GT

Yo! I got you!

Quote;TELEPORT PUNCH SCORPION
[State -1, TELEPORT PUNCH SCORPION]
type = ChangeState
;triggerall = var(40) = 0
triggerall = RoundState = 2
;triggerall = pos y >-30 ; <---- The problem
triggerall = command = "TelePunch"
triggerall = var(35) = 1
trigger1 = ctrl ;&& statetype != A
trigger2 = stateno = 251 && statetype = A
trigger3 = stateno = 52 && statetype = A
ignorehitpause = 1
value = 380

The problem was the pos y >-30. I have no idea why it affected anything tho (Cuz' neutral y pos is 0 but w/e). Just use the code I put and it'll work in air or on the ground.

Rivox

#15
Oh dude that's so awesome! It really does work! I cannot thank you enough...

Would you be able to do the same with the Ermac and Reptile vesions? I tried copying/pasting the same code in their sections but now I'm at the same problem with them...now their teleport punches don't work at all ><...but Scorpion's is indeed working both on the ground and in the air.

Scratch that dude I figured it out! I had to re-label the "variables" and now it works for all three "teleport-punchable" ninjas...fantastic!

However what I would like to know for future reference...is there a universal way of enabling moves in air for all characters? Like if I wanted to do Raiden's torpedo as well?

GT

Well, what worked in this instance would probably work in that one as well. Generally speaking "triggerall = statetype !=A" or "trigger1 = statetype = S" is what ppls use when creating statetype limitations in the CMD.

You should examine every aspect of the state -1 you're trying to edit and make sure you don't miss anything. The smallest triggerall that appears useless may be preventing you from completing your goal (Like this instance where simply commenting "pos y>-30 was preventing the move from being doable in the air).

Rivox

So was adding the additional trigger necessary at all or just adding pos y>-30?

GT

Pos Y >-30 was the problem lol. You only want to add the statetype = A as a triggerall.

Rivox

Okay so I will add both and hope that works for Raiden as well?