YesNoOk
avatar

Detecting Helper Projectiles and Enemy Vars (Read 1841 times)

Started by hjk, January 20, 2008, 09:13:19 am
Share this topic:

hjk

Detecting Helper Projectiles and Enemy Vars
#1  January 20, 2008, 09:13:19 am
  • ****
  • Watch my fro grow as you go, go, go, go, go.
    • Afghanistan
- Suspending the Enemy in the air
Well what I'm trying to do is create a move that successfully lands three seperate air strikes all with an interval of about 20 ticks between them.
In order to do so, I must have p2 held in the air for an extended period of time, between each hit, but I do not want to have to create my own custom state, to do it.
So far I have tried to use TargetBind and TargetVelset and they have not worked for me. If someone could please demonstrate for me/educate me on how to properly implement those triggers, it would be greatly appeciated :).

- Insertion of HitSparks
The char that I'm working with is from the early days of DOS mugen, but I would like to install some fully colored, recent CvS2 sparks into it.
So far what I've tried to do is to convert the char's colors to 256, then add in the sparks, but for some reason they always come out green/miscolored. I have already run DOS to WIn on the char as well, but that didn't help at all concerning the sparks.


Thank You for your help  :sugoi:
LOL, Caddie's the man!! ;)

I'm as real as the runnin, I just happen to rap, Nigaas London, Japan, and i'm scared of dat tap.

I suggest extending my banning, cuz when I come back, it's gonna be hell. You think I was annoying before, oh man, it's on now :)
hjk vs. 99% of MFG. I will win.

RIP Poo Bear Tell my Dead Homie isson, for the year my partner.
Last Edit: January 24, 2008, 03:58:05 am by Tee Hee Hee
Re: Binding the Enemy to the air and Spark insertion
#2  January 20, 2008, 02:04:25 pm
  • ******
Quote
So far I have tried to use TargetBind and TargetVelset and they have not worked for me.
... Why wouldn't they ? Maybe post your code.
Quote
but that didn't help at all concerning the sparks.
Have the sparks share their own palette, then add the first spark at the end of the sff with unshared palette, then add the other sparks afterward with shared palette.
If I struggled to the end of my determination, to the end of my way of life with my followers, if the result is ruin, then this ruin is inevitable. Grieve. Shed tears. But you cannot regret.

hjk

Re: Binding the Enemy to the air and Spark insertion
#3  January 20, 2008, 03:33:50 pm
  • ****
  • Watch my fro grow as you go, go, go, go, go.
    • Afghanistan
Quote
So far I have tried to use TargetBind and TargetVelset and they have not worked for me.
... Why wouldn't they ? Maybe post your code.
Because I don't understand it. *Interesting*; I thought I included in paranthesis that I "didn't understand it." :confused:
The second sentence[in that set] though, is really what I need:
If someone could please demonstrate for me/educate me on how to properly implement those triggers, it would be greatly appeciated.



Quote
but that didn't help at all concerning the sparks.
Have the sparks share their own palette, then add the first spark at the end of the sff with unshared palette, then add the other sparks afterward with shared palette.
OK, I'll try to do this. I didn't quite understand, but i will figure it out.



Thanks a lot Byakko  :sugoi:
LOL, Caddie's the man!! ;)

I'm as real as the runnin, I just happen to rap, Nigaas London, Japan, and i'm scared of dat tap.

I suggest extending my banning, cuz when I come back, it's gonna be hell. You think I was annoying before, oh man, it's on now :)
hjk vs. 99% of MFG. I will win.

RIP Poo Bear Tell my Dead Homie isson, for the year my partner.
Re: Binding the Enemy to the air and Spark insertion
#4  January 20, 2008, 05:01:08 pm
  • ******
Quote
I didn't quite understand
The colors are messed up on the sparks because Mugen forcibly applies the palete of the regular sprites onto them. Since the colors get messed up, it means the palette doesn't match the sprites. You would need to modify the palette, but also all of them if the characters has several palettes.
DOS2Win can't help because it switches everything to "shared palette", which is not what you want : the colors of the sparks clearly aren't in the palette of the character. That's the point of WinMugen, allow you to add sprites that don't share the colors of the main palette. DOS2Win does this conversion because in DOS, that didn't apply, and so, if anything was missing a "shared palette", it could only be a mistake (that and it didn't show because DOSMugen ignored whether you said "shared palette" or "unshared palette" and still applied the palette).

Quote
The second sentence[in that set] though, is really what I need:
Well, all the Target* sctrls work as long as you actually have a target - meaning one of your hits connected and the target is still in his gethit state. Like, if you hit, then someone else (partner) hits them again, you lose your target.

First, all Target* sctrls should have the triggerall "NumTarget" at the top, otherwise you'll always get a debug flood.
Then, TargetBind works with a "time" parameter that specifies for how long the target will be bound at that specific point.
It's pretty straightforward : you bind the target to a specific spot relatively to your own axis. You can bind him 5 pixels in front of you and 15 pixels above. The target remains bound at this distance from your axis as long as the time parameter allows it, then the target is freed (if he's in a statetype = A, he'll fall on his own through gravity).

There's not much more than that, really. You just have to take care of when you "release" the targetbind, don't leave him hanging with no movement and no control in the air.

TargetVelSet is the same as your own velset, except for the target. If you understand velset, if you understand a target, targetvelset is just as straightforward.

Really, try it as if it was your own velset, and if it doesn't work - post your code.
If I struggled to the end of my determination, to the end of my way of life with my followers, if the result is ruin, then this ruin is inevitable. Grieve. Shed tears. But you cannot regret.
Re: Binding the Enemy to the air and Spark insertion
#5  January 20, 2008, 05:35:24 pm
  • ******
    • www.mugenguild.com/pots/
Like, if you hit, then someone else (partner) hits them again, you lose your target.
I think that only resets your target's ID to -1.

Quote
First, all Target* triggers should have the triggerall "NumTarget" at the top, otherwise you'll always get a debug flood.
Fixed. The sctrls don't flood without it (not that it shouldn't be used anyway).
Use anything you want from my works.  If you need to contact me use email, not private messages.
Re: Binding the Enemy to the air and Spark insertion
#6  January 20, 2008, 05:48:57 pm
  • ******
Quote
I think that only resets your target's ID to -1.
Eh ? You can't apply any Target* sctrl to someone who isn't your target anyway, and -1 means nothing, so isn't that the same ?
Quote
Fixed. The sctrls don't flood without it (not that it shouldn't be used anyway).
Woops, yes, typo.
If I struggled to the end of my determination, to the end of my way of life with my followers, if the result is ruin, then this ruin is inevitable. Grieve. Shed tears. But you cannot regret.
Re: Binding the Enemy to the air and Spark insertion
#7  January 20, 2008, 05:58:12 pm
  • ******
    • www.mugenguild.com/pots/
-1 just means you have a target, but you didn't give it any (Hitdef) ID.
Use anything you want from my works.  If you need to contact me use email, not private messages.
Re: Binding the Enemy to the air and Spark insertion
#8  January 20, 2008, 06:24:31 pm
  • ******
And a partner hitting your target sets it to -1 instead of making it "you have no target" ? ???
If I struggled to the end of my determination, to the end of my way of life with my followers, if the result is ruin, then this ruin is inevitable. Grieve. Shed tears. But you cannot regret.
Re: Binding the Enemy to the air and Spark insertion
#9  January 20, 2008, 07:07:10 pm
  • ******
    • www.mugenguild.com/pots/
Right.
Use anything you want from my works.  If you need to contact me use email, not private messages.

hjk

Re: Binding the Enemy to the air and Spark insertion
#10  January 20, 2008, 11:55:41 pm
  • ****
  • Watch my fro grow as you go, go, go, go, go.
    • Afghanistan
Quote
The second sentence[in that set] though, is really what I need:
Well, all the Target* sctrls work as long as you actually have a target - meaning one of your hits connected and the target is still in his gethit state. Like, if you hit, then someone else (partner) hits them again, you lose your target.

First, all Target* sctrls should have the triggerall "NumTarget" at the top, otherwise you'll always get a debug flood.
Then, TargetBind works with a "time" parameter that specifies for how long the target will be bound at that specific point.
It's pretty straightforward : you bind the target to a specific spot relatively to your own axis. You can bind him 5 pixels in front of you and 15 pixels above. The target remains bound at this distance from your axis as long as the time parameter allows it, then the target is freed (if he's in a statetype = A, he'll fall on his own through gravity).

There's not much more than that, really. You just have to take care of when you "release" the targetbind, don't leave him hanging with no movement and no control in the air.

TargetVelSet is the same as your own velset, except for the target. If you understand velset, if you understand a target, targetvelset is just as straightforward.

Really, try it as if it was your own velset, and if it doesn't work - post your code.
Byakko I am officially in love with you :sugoi:

This information helpd me out a lot with one char I was patching and just released, but I'm afraid that for the one I am focused on, I may need to use a whole new trigger. Every time I implement TargetBind, p2 is always staying the same relative distance to my player (which is what TargetBind Does), so I have to rule that out as tha trigger I need.
In Sepher's Shin Akuma, he has a move "State = 3050"/"Stateno = 3350" where both p1 and p2 are in the air, Shin Akuma does his diagonal pointed special kick (Tenma Kujin Kyaku), suspending p2 in a position in teh air, then does a back twirl to finish it off with an EX version of that move. I checked Sepher's coding and couldn't find anything that gave me the slightest clue about what was going on, so I was wondering, do you know of any triggers that would allow me to do something like this??

Thanks for the help Baiken.
LOL, Caddie's the man!! ;)

I'm as real as the runnin, I just happen to rap, Nigaas London, Japan, and i'm scared of dat tap.

I suggest extending my banning, cuz when I come back, it's gonna be hell. You think I was annoying before, oh man, it's on now :)
hjk vs. 99% of MFG. I will win.

RIP Poo Bear Tell my Dead Homie isson, for the year my partner.
Re: Binding the Enemy to the air and Spark insertion
#11  January 20, 2008, 11:58:59 pm
  • ****
  • Am I evil?
Maybe he used a very long "hitpause" parameter on the damaged opponent in the Tenma Kujin Kyaku HitDef?

Haven't checked, just telling what first came to my mind.

Sig made by TempesT :)

hjk

Re: Binding the Enemy to the air and Spark insertion
#12  January 21, 2008, 12:16:22 am
  • ****
  • Watch my fro grow as you go, go, go, go, go.
    • Afghanistan
Maybe he used a very long "hitpause" parameter on the damaged opponent in the Tenma Kujin Kyaku HitDef?
Haven't checked, just telling what first came to my mind.
I thought about that too, but when I tried to implement it regular vels kept getting in the way.

Edit:
Actually, I may not have tried taht. I might just have tried the "hittime" with a "targetvelset". I wisjh i could actually find the piece of coding Sepher used though. So far I'm drawing blanks.
LOL, Caddie's the man!! ;)

I'm as real as the runnin, I just happen to rap, Nigaas London, Japan, and i'm scared of dat tap.

I suggest extending my banning, cuz when I come back, it's gonna be hell. You think I was annoying before, oh man, it's on now :)
hjk vs. 99% of MFG. I will win.

RIP Poo Bear Tell my Dead Homie isson, for the year my partner.
Re: Binding the Enemy to the air and Spark insertion
#13  January 21, 2008, 01:00:20 am
  • ******
??? What's the hitdef in the state Gouki is in when he hits ?
If I struggled to the end of my determination, to the end of my way of life with my followers, if the result is ruin, then this ruin is inevitable. Grieve. Shed tears. But you cannot regret.

hjk

Re: Binding the Enemy to the air and Spark insertion
#14  January 21, 2008, 01:20:56 am
  • ****
  • Watch my fro grow as you go, go, go, go, go.
    • Afghanistan
??? What's the hitdef in the state Gouki is in when he hits ?
The stateno's where the hitdefs appear are "State = 3051" and "State = 3351". The hitdefs themselves have "[State 200, 0]", but I don't think that affects anything.

The Statedefs:
[mcode]
;Patada hacia abajo
[Statedef 3050]
type    = A                      ;State-type: S-stand, C-crouch, A-air, L-liedown
movetype= A                      ;Move-type: A-attack, I-idle, H-gethit
physics = N                      ;Physics: S-stand, C-crouch, A-air
juggle  = 1                      ;Number of air juggle points move takes
ctrl = 0                         ;Set ctrl (Def: no change)
anim = 3050                       ;Change animation (Def: no change)
velset = 0,0,0
poweradd = 20                    ;Power to add (Def: 0)
sprpriority = 2                  ;Set layering priority to 2 (in front)

[State 200, 2]
type = Posadd
trigger1 = time = 0
Y = -12

[State 1200, Flames]
type = Changestate
trigger1 = Animelem = 2
value = 3051

;Patada hacia abajo
[Statedef 3051]
type    = A                      ;State-type: S-stand, C-crouch, A-air, L-liedown
movetype= A                      ;Move-type: A-attack, I-idle, H-gethit
physics = A                      ;Physics: S-stand, C-crouch, A-air
juggle  = 1                      ;Number of air juggle points move takes
ctrl = 0                         ;Set ctrl (Def: no change)
velset = 6,5
poweradd = 20                    ;Power to add (Def: 0)
sprpriority = 2                  ;Set layering priority to 2 (in front)

[State 1200, Flames]
type = playsnd
trigger1 = Time = 0
value = 13,2

[State 200, 0]
type = HitDef
trigger1= Time = 0
attr = A, SA                     ;Attribute: Standing, Normal Attack
damage = 75, 5                   ;Damage that move inflicts, guard damage
animtype = heavy                 ;Animation type: Light, Medium, Heavy, Back (def: Light)
guardflag = HA                   ;Flags on how move is to be guarded against
hitflag = MAFL                    ;Flags of conditions that move can hit
priority = 7, Hit                ;Attack priority: 0 (least) to 7 (most), 4 default
pausetime = 15,10         ;Time attacker pauses, time opponent shakes
sparkno = s8000                      ;Spark anim no (Def: set above)
guard.sparkno = s8040
sparkxy = -20, 0               ;X-offset for the "hit spark" rel. to p2,
hitsound = s2, 4                  ;Sound to play on hit
guardsound = s5, 0                ;Sound to play on guard
ground.type = Low                  ;Type: High, Low, Trip (def: Normal)
ground.slidetime = 25             ;Time that the opponent slides back
ground.hittime  = 25              ;Time opponent is in hit state
ground.velocity = -2             ;Velocity at which opponent is pushed
airguard.velocity = -1.9,-.8     ;Guard velocity in air (def: (air.xvel*1.5, air.yvel/2))
air.type = Low                  ;Type: High, Low, Trip (def: same as ground.type)
air.velocity = -5, 5           ;X-velocity at which opponent is pushed,
air.hittime = 12                 ;Time before opponent regains control in air
getpower = 0,0
[State 1200, Flames]
type = Velset
trigger1 = Movecontact  = 1
X = -5
y = -5

[State 1200, Flames]
type = Changestate
trigger1 = Movecontact  = 1
value = 50
ctrl = 0

;===========================================
;---------------------------------------------------------------------------
; Jump Up
[Statedef 50]
type    = A
physics = A

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

[State 50, 2]
type = ChangeAnim
trigger1 = Time = 0
value = ifelse((vel x)=0, 41, ifelse((vel x)>0, 42, 43))

[State 50, 3]
type = ChangeAnim
trigger1 = Vel y > -2
trigger1 = SelfAnimExist(anim + 3)
persistent = 0
value = Anim + 3




[State -1, jump pursuit]
type = changeanim
value = 42
triggerall = (roundstate != [0,1]) || (roundstate != [3,4])
trigger1 = Var(20) = 1 && p2life > 0
triggerall = statetype != A
triggerall = P2BodyDist X = [0,40]
triggerall = P2BodyDist Y = [-115,-60]
triggerall = p2movetype = H

[State -1, jump neutral]
type = changeanim
value = 43
triggerall = (roundstate != [0,1]) || (roundstate != [3,4])
trigger1 = Var(20) = 1 && p2life > 0
triggerall = statetype != A
triggerall = P2BodyDist X = [0,40]
triggerall = P2BodyDist Y = [-115,-60]
triggerall = p2movetype = H

[State -1, jump backward]
type = changeanim
value = 44
triggerall = (roundstate != [0,1]) || (roundstate != [3,4])
trigger1 = Var(20) = 1 && p2life > 0
triggerall = statetype != A
triggerall = P2BodyDist X = [-40,40]
triggerall = P2BodyDist Y = [-115,-60]
triggerall = p2movetype = H
[/mcode]



[mcode]

;Patada hacia abajo
[Statedef 3350]
type    = A                      ;State-type: S-stand, C-crouch, A-air, L-liedown
movetype= A                      ;Move-type: A-attack, I-idle, H-gethit
physics = N                      ;Physics: S-stand, C-crouch, A-air
juggle  = 1                      ;Number of air juggle points move takes
ctrl = 0                         ;Set ctrl (Def: no change)
anim = 3050                       ;Change animation (Def: no change)
poweradd = -3000                    ;Power to add (Def: 0)
velset = 0,0,0
poweradd = 20                    ;Power to add (Def: 0)
sprpriority = 2                  ;Set layering priority to 2 (in front)

[State 200, 2]
type = Posadd
trigger1 = time = 0
Y = -12

[State 1200, Flames]
type = Superpause
trigger1 = Time = 0
anim = 101
pos = 0,-30
Time = 40
movetime = 0

[State 1200, Flames]
type = playsnd
trigger1 = Time = 0
value = 7,17

[State 170, 1]
type = NotHitBy
trigger1 = 1
value = SCA
time = 1

[State 1200, Flames]
type = Changestate
trigger1 = Animelem = 2
value = 3351




;Patada hacia abajo
[Statedef 3351]
type    = A                      ;State-type: S-stand, C-crouch, A-air, L-liedown
movetype= A                      ;Move-type: A-attack, I-idle, H-gethit
physics = A                      ;Physics: S-stand, C-crouch, A-air
juggle  = 1                      ;Number of air juggle points move takes
ctrl = 0                         ;Set ctrl (Def: no change)
velset = 10,8
poweradd = 20                    ;Power to add (Def: 0)
sprpriority = 2                  ;Set layering priority to 2 (in front)

[State 1200, Flames]
type = playsnd
trigger1 = Time = 0
value = 13,2

[State 200, 0]
type = HitDef
trigger1= Time = 0
attr = A, SA                     ;Attribute: Standing, Normal Attack
damage = 75, 5                   ;Damage that move inflicts, guard damage
animtype = heavy                 ;Animation type: Light, Medium, Heavy, Back (def: Light)
guardflag = H                   ;Flags on how move is to be guarded against
hitflag = MAFD                    ;Flags of conditions that move can hit
priority = 7, Hit                ;Attack priority: 0 (least) to 7 (most), 4 default
pausetime = 5,30              ;Time attacker pauses, time opponent shakes
sparkno = s8000                      ;Spark anim no (Def: set above)
guard.sparkno = s8040
sparkxy = -20, 0               ;X-offset for the "hit spark" rel. to p2,
hitsound = s2, 3                  ;Sound to play on hit
guardsound = s5, 0                ;Sound to play on guard
ground.type = Low                  ;Type: High, Low, Trip (def: Normal)
ground.slidetime = 25             ;Time that the opponent slides back
ground.hittime  = 25              ;Time opponent is in hit state
ground.velocity = -2             ;Velocity at which opponent is pushed
airguard.velocity = -1.9,-.8     ;Guard velocity in air (def: (air.xvel*1.5, air.yvel/2))
air.type = Low                  ;Type: High, Low, Trip (def: same as ground.type)
air.velocity = -5, 5           ;X-velocity at which opponent is pushed,
air.hittime = 12                 ;Time before opponent regains control in air
getpower = 0,0
[State 170, 1]
type = NotHitBy
trigger1 = 1
value = SCA
time = 1

[State 1200, Flames]
type = Changestate
trigger1 = Pos Y > -15
Value = 3354

[State 1200, Flames]
type = Changestate
trigger1 = Movecontact  = 1
value = 3352
ctrl = 0

;Patada hacia abajo
[Statedef 3352]
type    = A                      ;State-type: S-stand, C-crouch, A-air, L-liedown
movetype= A                      ;Move-type: A-attack, I-idle, H-gethit
physics = N                      ;Physics: S-stand, C-crouch, A-air
juggle  = 1                      ;Number of air juggle points move takes
ctrl = 0                         ;Set ctrl (Def: no change)
velset = 0,0,0
anim = 3350                       ;Change animation (Def: no change)
sprpriority = 2                  ;Set layering priority to 2 (in front)

[State 170, 1]
type = NotHitBy
trigger1 = 1
value = SCA
time = 1

[State 1200, Flames]
type = playsnd
trigger1 = TimeMod = 5,2
value = 13,2

[State 170, 1]
type = Veladd
trigger1 = p2dist Y < 50
Y = -0.2

[State 1200, Flames]
type = Changestate
trigger1 = time = 20
value = 3353

;Patada hacia abajo
[Statedef 3353]
type    = A                      ;State-type: S-stand, C-crouch, A-air, L-liedown
movetype= A                      ;Move-type: A-attack, I-idle, H-gethit
physics = N                      ;Physics: S-stand, C-crouch, A-air
juggle  = 1                      ;Number of air juggle points move takes
anim = 3352
ctrl = 0                         ;Set ctrl (Def: no change)
velset = 10,10
poweradd = 20                    ;Power to add (Def: 0)
sprpriority = 2                  ;Set layering priority to 2 (in front)

[State 170, 1]
type = NotHitBy
trigger1 = Time = 0
value = SCA
time = 5

[State 1200, efecto base]
type = Explod
trigger1 = Time > 1
trigger1 = TimeMod = 5,2
anim = 8010
pos = -10,-50
random = 100,0
sprpriority = 99
postype = p1
accel= -.3,-.2
ignorehitpause = 1
ownpal = 1
scale = 3,3


[State 1200, efecto base]
type = Explod
trigger1 = Time > 1
trigger1 = TimeMod = 5,2
anim = 8010
pos = -10,-50
random = 100,0
sprpriority = -9
postype = p1
accel= -.3,-.2
ignorehitpause = 1
ownpal = 1
scale = 4,4

[State 1200, efecto base]
type = Explod
trigger1 = Time > 1
trigger1 = TimeMod = 5,3
anim = 8010
pos = -10,-50
random = 100,0
sprpriority = 99
postype = p1
accel= -.3,-.2
ignorehitpause = 1
scale = 3,3
ownpal = 1

[State 1200, efecto base]
type = Explod
trigger1 = Time > 1
trigger1 = TimeMod = 5,2
anim = 8010
pos = -10,-50
random = 100,0
sprpriority = 99
postype = p1
accel= -0.3,-0.2
ignorehitpause = 1
scale = 3,3
ownpal = 1





[State 1200, Flames]
type = playsnd
trigger1 = Time = 0
value = 12,8

[State 1200, Flames]
type = Explod
trigger1 = Time = 0
ID = 3053
anim = 3051
sprpriority = 99
bindtime = -1

[State 200, 0]
type = HitDef
trigger1= Time = 0
ID = 3550
attr = A, SA                     ;Attribute: Standing, Normal Attack
damage = 450, 5                   ;Damage that move inflicts, guard damage
animtype = heavy                 ;Animation type: Light, Medium, Heavy, Back (def: Light)
guardflag = H                   ;Flags on how move is to be guarded against
hitflag = MAF                    ;Flags of conditions that move can hit
priority = 7, Hit                ;Attack priority: 0 (least) to 7 (most), 4 default
pausetime = 15,15              ;Time attacker pauses, time opponent shakes
sparkno = s2752                      ;Spark anim no (Def: set above)
guard.sparkno = s8040
sparkxy = 50, -100               ;X-offset for the "hit spark" rel. to p2,
hitsound = s12, 5                  ;Sound to play on hit
guardsound = s5, 0                ;Sound to play on guard
ground.type = Low                  ;Type: High, Low, Trip (def: Normal)
ground.slidetime = 25             ;Time that the opponent slides back
ground.hittime  = 25              ;Time opponent is in hit state
ground.velocity = -5,-5             ;Velocity at which opponent is pushed
airguard.velocity = -1.9,-.8     ;Guard velocity in air (def: (air.xvel*1.5, air.yvel/2))
air.type = Low                  ;Type: High, Low, Trip (def: same as ground.type)
air.velocity = -5, 5           ;X-velocity at which opponent is pushed,
air.hittime = 30                 ;Time before opponent regains control in air
fall= 1
fall.recover = 0
Palfx.time = ifelse(P2StateType = A , 40 ,30)
Palfx.add = 210,10,-200
Palfx.mul = 200,200,200
Palfx.sinadd = 60,40,50,20
Palfx.color = 0
palfx.invertall = 1
getpower = 0,0
[State 1200, Flames]
type = Explod
trigger1 = Movehit = 1
trigger1 = numExplod(1500)  != 1
anim = 2730
ID = 1500
postype = p2
pos = -10,-70
persistent = 0
sprpriority = 99
bindTime = -1

[State 1200, Flames]
type = Changestate
trigger1 = Pos Y > 0
Value = 3354



;Patada hacia abajo
[Statedef 3354]
type    = C                      ;State-type: S-stand, C-crouch, A-air, L-liedown
movetype= I                      ;Move-type: A-attack, I-idle, H-gethit
physics = C                     ;Physics: S-stand, C-crouch, A-air
juggle  = 1                      ;Number of air juggle points move takes
anim = 3064
velset = 4,0
sprpriority = 2                  ;Set layering priority to 2 (in front)

[State 1200, Flames]
type = Posset
trigger1 = 1
Y = 0

[State 1200, Flames]
type = Explod
trigger1 = Time = 0
trigger1 = prevstateno = 3353
anim = 8050
pos = 30,2
sprpriority = 10
scale = 0.5,0.5

[State 1200, Flames]
type = Changestate
trigger1 = Animtime = 0
Value = 0
ctrl = 1
[/mcode]


I got the VelAdd fromm 3350, but wouldn't the regular vel overide that??
From 3050, I got absolutely nothing  :S.
LOL, Caddie's the man!! ;)

I'm as real as the runnin, I just happen to rap, Nigaas London, Japan, and i'm scared of dat tap.

I suggest extending my banning, cuz when I come back, it's gonna be hell. You think I was annoying before, oh man, it's on now :)
hjk vs. 99% of MFG. I will win.

RIP Poo Bear Tell my Dead Homie isson, for the year my partner.
Re: Binding the Enemy to the air and Spark insertion
#15  January 21, 2008, 02:18:47 am
  • ******
  • Legendary XIII
  • I am the eye of the storm to come!
    • New Zealand
    • network.mugenguild.com/cyanide/
Most likely, the long suspension (which is a pretty subjective "long") is this line

pausetime = 5,30, that's half a second which in fighting game terms is quite a while.

5 = how long p1's animation freezes
30 = how long p2's animation freezes and shakes.


In M.U.G.E.N there is no magic button

They say a little knowledge is a dangerous thing, but it's not one half so bad as a lot of ignorance.

hjk

Re: Binding the Enemy to the air and Spark insertion
#16  January 21, 2008, 06:55:33 pm
  • ****
  • Watch my fro grow as you go, go, go, go, go.
    • Afghanistan
Most likely, the long suspension (which is a pretty subjective "long") is this line
pausetime = 5,30, that's half a second which in fighting game terms is quite a while.
5 = how long p1's animation freezes
30 = how long p2's animation freezes and shakes.
Thank you so much Cyanide, that worked out perfectly  :sugoi:

It makes me wonder though, "Air.Hittime" would get screwed around with then???
LOL, Caddie's the man!! ;)

I'm as real as the runnin, I just happen to rap, Nigaas London, Japan, and i'm scared of dat tap.

I suggest extending my banning, cuz when I come back, it's gonna be hell. You think I was annoying before, oh man, it's on now :)
hjk vs. 99% of MFG. I will win.

RIP Poo Bear Tell my Dead Homie isson, for the year my partner.
Re: Binding the Enemy to the air and Spark insertion
#17  January 21, 2008, 08:53:44 pm
  • ******
http://mugenguild.com/docs/sctrls.html#HitDef
  pausetime = p1_pausetime, p2_shaketime (int)
    This is the time that each player will pause on the hit.
    p1_pausetime is the time to freeze P1, measured in game-ticks.
    p2_pausetime is the time to make P2 shake before recoiling from
    the hit. Defaults to 0,0 if omitted.

ground.hittime = hit_time (int)
    Time that P2 stays in the hit state after being hit. Increase this
    value to keep P2 in the hit state for a longer time, perhaps to
    make it easier to combo. Applicable only to hits that keep P2 on
    the ground. Defaults to 0 if omitted.

  air.hittime = hit_time (int)
    Time that p2 stays in the hit state after being hit in or into the
    air, before being able to guard again. This parameter has no effect
    if the "fall" parameter is set to 1. Defaults to 20 if omitted.

Pausetime : "freeze" => "stays in the same spot without moving"
hittime : "stays in the hit state" => stay in the hitstate... Nothing about not moving => he moves while he is in the hitstate.
If I struggled to the end of my determination, to the end of my way of life with my followers, if the result is ruin, then this ruin is inevitable. Grieve. Shed tears. But you cannot regret.

hjk

Re: Binding the Enemy to the air and Spark insertion
#18  January 22, 2008, 12:29:10 am
  • ****
  • Watch my fro grow as you go, go, go, go, go.
    • Afghanistan
Pausetime : "freeze" => "stays in the same spot without moving"
hittime : "stays in the hit state" => stay in the hitstate... Nothing about not moving => he moves while he is in the hitstate.
:o Woah.
I thought "Freezing" and "Staying in the hitstate" were the same thing  --;
That is some seriously useful info.

I just figured out the answer to one fo two others questions I had by going to the docs.

For the second question, during the Superpause, how do make the Hyper/Super Spark disappear if it lasts longer than the Superpause??
So far all I have in the Superpause is this:
[mcode]
[State 1200, Hyper Spark]
type = Superpause
trigger1 = anim = 3009
trigger1 = Time = 17
Time = 40
anim = s8320
pos = -9,-49[/mcode]
LOL, Caddie's the man!! ;)

I'm as real as the runnin, I just happen to rap, Nigaas London, Japan, and i'm scared of dat tap.

I suggest extending my banning, cuz when I come back, it's gonna be hell. You think I was annoying before, oh man, it's on now :)
hjk vs. 99% of MFG. I will win.

RIP Poo Bear Tell my Dead Homie isson, for the year my partner.
Re: Binding the Enemy to the air and Spark insertion
#19  January 22, 2008, 01:18:56 am
  • ******
... Shorten the animation so that it lasts 40 ticks ?
If I struggled to the end of my determination, to the end of my way of life with my followers, if the result is ruin, then this ruin is inevitable. Grieve. Shed tears. But you cannot regret.
Re: Binding the Enemy to the air and Spark insertion
#20  January 22, 2008, 01:31:51 am
  • ******
  • Legendary XIII
  • I am the eye of the storm to come!
    • New Zealand
    • network.mugenguild.com/cyanide/
Make the superpause longer than the animation?


In M.U.G.E.N there is no magic button

They say a little knowledge is a dangerous thing, but it's not one half so bad as a lot of ignorance.

hjk

Re: Binding the Enemy to the air and Spark insertion
#21  January 22, 2008, 01:38:28 am
  • ****
  • Watch my fro grow as you go, go, go, go, go.
    • Afghanistan
... Shorten the animation so that it lasts 40 ticks ?
Make the superpause longer than the animation?
Sorry Guys. I left to work out the kinks on another move.

Both of tehse are good suggestions. The thing is that Both teh superPause and teh animation are Perfect. I guess what I'll do is kind of more on point with Baiken; I'll create a new Animation and make that shorter.

BTW, I have one more question  ;D:
How do I get Mugen to detect when a variety of moves have comboed into eachother more than say 5 hitz. Like if a char had an opponent with 5 different completely random, comboed attacks and I wanted a move to trigger only after the "counter/something tin Mugen that operates the same way" reached 5 hits.


Also, what exactly is the Liedown, hit state, please??
5080?
LOL, Caddie's the man!! ;)

I'm as real as the runnin, I just happen to rap, Nigaas London, Japan, and i'm scared of dat tap.

I suggest extending my banning, cuz when I come back, it's gonna be hell. You think I was annoying before, oh man, it's on now :)
hjk vs. 99% of MFG. I will win.

RIP Poo Bear Tell my Dead Homie isson, for the year my partner.
Last Edit: January 22, 2008, 01:58:09 am by Tee Hee Hee
Re: Binding the Enemy to the air and Spark insertion
#22  January 22, 2008, 02:38:29 am
  • ******
  • Legendary XIII
  • I am the eye of the storm to come!
    • New Zealand
    • network.mugenguild.com/cyanide/
Under the physics and statetype and stuff. Hitcountpersist.

This allows you to make use of the hitcount trigger over more than 1 state.


In M.U.G.E.N there is no magic button

They say a little knowledge is a dangerous thing, but it's not one half so bad as a lot of ignorance.

hjk

Re: Binding the Enemy to the air and Spark insertion
#23  January 22, 2008, 03:16:07 am
  • ****
  • Watch my fro grow as you go, go, go, go, go.
    • Afghanistan
Under the physics and statetype and stuff. Hitcountpersist.
This allows you to make use of the hitcount trigger over more than 1 state.
That includes general use as well??

Sweet.  :-*
Thanks Cyanide
LOL, Caddie's the man!! ;)

I'm as real as the runnin, I just happen to rap, Nigaas London, Japan, and i'm scared of dat tap.

I suggest extending my banning, cuz when I come back, it's gonna be hell. You think I was annoying before, oh man, it's on now :)
hjk vs. 99% of MFG. I will win.

RIP Poo Bear Tell my Dead Homie isson, for the year my partner.
Re: Binding the Enemy to the air and Spark insertion
#24  January 22, 2008, 04:13:21 am
  • ******
  • Legendary XIII
  • I am the eye of the storm to come!
    • New Zealand
    • network.mugenguild.com/cyanide/
Well any state after it will be able to pick up on the current hitcount. If you plan to go another attack on, you'll need hitcountpersist = 1 again. For any state you need to read the hitcount from cumulatively, you will need that statedef parameter.

check out cns.txt for more info.


In M.U.G.E.N there is no magic button

They say a little knowledge is a dangerous thing, but it's not one half so bad as a lot of ignorance.
Re: Binding the Enemy to the air and Spark insertion
#25  January 22, 2008, 01:34:38 pm
  • ******
    • www.mugenguild.com/pots/
Can also use "enemynear,gethitvar(hitcount)", much easier to implement, only problem is that it also counts hits dealt by P1's partner in Simul mode.

And yeah 5080.
Use anything you want from my works.  If you need to contact me use email, not private messages.

hjk

Re: Binding the Enemy to the air and Spark insertion
#26  January 23, 2008, 02:03:44 am
  • ****
  • Watch my fro grow as you go, go, go, go, go.
    • Afghanistan
Well any state after it will be able to pick up on the current hitcount. If you plan to go another attack on, you'll need hitcountpersist = 1 again. For any state you need to read the hitcount from cumulatively, you will need that statedef parameter.
check out cns.txt for more info.
Can also use "enemynear,gethitvar(hitcount)", much easier to implement, only problem is that it also counts hits dealt by P1's partner in Simul mode.
And yeah 5080.
Gracias Amigos.  :sugoi:
Gotta do some more DOC reading.
LOL, Caddie's the man!! ;)

I'm as real as the runnin, I just happen to rap, Nigaas London, Japan, and i'm scared of dat tap.

I suggest extending my banning, cuz when I come back, it's gonna be hell. You think I was annoying before, oh man, it's on now :)
hjk vs. 99% of MFG. I will win.

RIP Poo Bear Tell my Dead Homie isson, for the year my partner.

hjk

Detecting Helper Projectiles and Enemy Vars
#27  January 24, 2008, 03:22:56 am
  • ****
  • Watch my fro grow as you go, go, go, go, go.
    • Afghanistan
Well recently I've been noticing many creators coding their helpers as projectiles, and got schooled by Vyn on teh "creation" advantages that presents. I just wanted to know, how could you code an AI to deal with tehse helpers without detecting others that do not involve attacks. [Example: H's chars use helper projectiles, but, he also has the groove guage helpers (at least I think the guages are helpers).]
How could I code an AI to trigger for every single char that uses a helper projectile, but not involve general helpers.

I tried using "IsHelper" and "Numhelper", but neither did the trick (how i was implementing them at least). aking triggers that IDed helpers for an enemy in the Docs was confused me (I don't think i saw anything mentioned on how exactly to do that), and even if I was to ID it, I'm not sure it would be universal.

Also, does anyone know how to identify "enemy Vars" with triggers. I tried "enemy, !var(0)" but that didn't work so I was wondering what is happening that prevents that??
Thanks a bunch for the helper  :sugoi:
LOL, Caddie's the man!! ;)

I'm as real as the runnin, I just happen to rap, Nigaas London, Japan, and i'm scared of dat tap.

I suggest extending my banning, cuz when I come back, it's gonna be hell. You think I was annoying before, oh man, it's on now :)
hjk vs. 99% of MFG. I will win.

RIP Poo Bear Tell my Dead Homie isson, for the year my partner.
Last Edit: January 24, 2008, 03:57:45 am by Tee Hee Hee
Re: Detecting Helper Projectiles and Enemy Vars
#28  January 24, 2008, 04:00:18 am
  • ******
    • www.mugenguild.com/pots/
You can't do the first, and !(enemy,var(0)) or (enemy,var(0)=0).
Use anything you want from my works.  If you need to contact me use email, not private messages.

hjk

Re: Detecting Helper Projectiles and Enemy Vars
#29  January 24, 2008, 04:30:17 am
  • ****
  • Watch my fro grow as you go, go, go, go, go.
    • Afghanistan
You can't do the first, and !(enemy,var(0)) or (enemy,var(0)=0).
Thank you PotS.
I discovered this about 10 mins ago as well (just a reorginazation):
trigger1 = enemy, var(0) = 1 / trigger1 = enemy, var(0) >= 1


What kills me though is how to assure that for other versions of the char without AI, that the player won't be affected by the 'mod'. It's time like these that I wish I knew more about mugen  --;. I've been reading teh docs, but usually I can't find what I'm looking for and have to search back through each of them multiple times until I finally pinpoint the subject.

BTW, you in particular I wanted to ask about helper Projectiles if that is OK, because out of all of the chars I tested, your chars were the only ones able to handle another creator's helper projectile (making it explode on contact instead of going through). I didn't check your projectile definitions yet, but I'm not sure if those triggers/defs will be the ones I'll need for AI .
LOL, Caddie's the man!! ;)

I'm as real as the runnin, I just happen to rap, Nigaas London, Japan, and i'm scared of dat tap.

I suggest extending my banning, cuz when I come back, it's gonna be hell. You think I was annoying before, oh man, it's on now :)
hjk vs. 99% of MFG. I will win.

RIP Poo Bear Tell my Dead Homie isson, for the year my partner.
Last Edit: January 24, 2008, 04:33:30 am by Tee Hee Hee

hjk

Re: Detecting Helper Projectiles and Enemy Vars
#30  January 24, 2008, 08:40:09 pm
  • ****
  • Watch my fro grow as you go, go, go, go, go.
    • Afghanistan
You can't do the first, and !(enemy,var(0)) or (enemy,var(0)=0).
So I am officially slow.

When you said, "can't do the first." I thought you were saying the first method I used in the AI var thing wouldn't work and thart what you were posting was the correction.
 --; Now I realize that you meant I couldn't do the helper thing  :'(
LOL, Caddie's the man!! ;)

I'm as real as the runnin, I just happen to rap, Nigaas London, Japan, and i'm scared of dat tap.

I suggest extending my banning, cuz when I come back, it's gonna be hell. You think I was annoying before, oh man, it's on now :)
hjk vs. 99% of MFG. I will win.

RIP Poo Bear Tell my Dead Homie isson, for the year my partner.