YesNoOk
avatar

enhancing beam effects  (Read 1386 times)

Started by Tyrannosaurus rex, December 31, 2009, 09:35:47 am
Share this topic:
enhancing beam effects
#1  December 31, 2009, 09:35:47 am
  • **
  • I'm a llama!
I have this character who has this beam attack. The beam attack is quite unique and I'am trying to play with the code for enhancing the beam's destructive force. The beam attack works like this:

player punches a combination of keys:
character executes beam attack. the attack button used for execution is held for keeping the beam going.
player presses up or down the manuever the beam upwards or downwards.
The beam is drawn as three seperately animated sprite segments: the tail, the middle and the front tip, all combining to illustrate a single beam fired in one direction. Needless to say, there are three such animated segments for aiming upwards and downwards.

Here are the constants (taken from Fighter factory) used:


Code:
;------------------------------------------
[Statedef 1000]
type    = S
movetype= A
physics = S
juggle  = 4
velset = 0,0
anim = 1000
ctrl = 0
sprpriority = 2

[State 1000, 3]
type = VarSet
trigger1 = Time = 0
v = 0
value = 0

[State 1000, 3]
type = VarAdd
triggerall = Var(0) > -2
triggerall = Time%4 = 0
triggerall = Time > 12
triggerall = Time < 63
trigger1 = command = "holda"
trigger1 = command = "holdup"
trigger2 = Var(10) > 0
trigger2 = P2BodyDist X <= 75
trigger2 = P2BodyDist X >= 0
trigger2 = P2BodyDist Y <= -50
trigger2 = P2BodyDist Y >= -100
v = 0
value = -1

[State 1000, 3]
type = VarAdd
triggerall = Var(0) < 2
triggerall = Time%4 = 0
triggerall = Time > 12
triggerall = Time < 63
trigger1 = command = "holddown"
trigger1 = command = "holda"
trigger2 = Var(10) > 0
trigger2 = P2BodyDist X <= 25
trigger2 = P2BodyDist X >= 0
trigger2 = P2BodyDist Y >= 0
v = 0
value = 1

[State 1000, 7]
type = ChangeAnim
triggerall = Time > 12
triggerall = Time < 63
trigger1 = anim != 1005
trigger1 = command = "holda"
trigger1 = Var(0) = 0
trigger2 = anim != 1005
trigger2 = Var(10) > 0
trigger2 = Var(0) = 0
value = 1003

[State 1000, 7]
type = ChangeAnim
triggerall = Time > 12
triggerall = Time < 63
trigger1 = anim != 1005
trigger1 = command = "holda"
trigger1 = Var(0) < 0
trigger2 = anim != 1005
trigger2 = Var(10) > 0
trigger2 = Var(0) < 0
value = 1001

[State 1000, 7]
type = ChangeAnim
triggerall = Time > 12
triggerall = Time < 63
trigger1 = anim != 1005
trigger1 = command = "holda"
trigger1 = Var(0) > 0
trigger2 = anim != 1005
trigger2 = Var(10) > 0
trigger2 = Var(0) > 0
value = 1002

[State 1000, 1]
type = PlaySnd
triggerall = anim != 1005
triggerall = Time > 12
triggerall = Time < 63
triggerall = Time%8 = 0
trigger1 = command = "holda"
trigger2 = Var(10) > 0
value = 1000, 0

[State 1000, 10]
type = Projectile
triggerall = Var(0) = -2
trigger1 = anim != 1005
trigger1 = command = "holda"
trigger1 = Time > 12
trigger1 = Time < 63
trigger2 = anim != 1005
trigger2 = Var(10) > 0
trigger2 = Time > 12
trigger2 = Time < 63
projanim = 1011
;projhitanim = 1015
projremovetime = 15+Var(2)
offset = 18+random%2, -66
velocity = 5,-5
getpower  = 0
givepower = 0
attr = S, SP
damage = 1
animtype = Light
pausetime = 0,0
sparkno = S1015
guard.sparkno = S4010
sparkxy = 0, 0
hitsound = S1100,1
guardsound = S100,1
hitflag = MAF
guardflag = MA
ground.type = High
ground.slidetime = 0
ground.hittime = 0
ground.velocity = -2
air.velocity = -2,-2
palfx.time = 2
palfx.mul = 80, 80, 200

[State 1000, 10]
type = Projectile
triggerall = Var(0) = -1
trigger1 = anim != 1005
trigger1 = command = "holda"
trigger1 = Time > 12
trigger1 = Time < 63
trigger2 = anim != 1005
trigger2 = Var(10) > 0
trigger2 = Time > 12
trigger2 = Time < 63
projanim = 1013
projremovetime = 15+Var(2)
offset = 20+random%2, -66
velocity = 5,-2.5
getpower  = 0
givepower = 0
attr = S, SP
damage = 1
animtype = Light
pausetime = 0,0
sparkno = S1015
guard.sparkno = S4010
sparkxy = 0, 0
hitsound = S1100,1
guardsound = S100,1
hitflag = MAF
guardflag = MA
ground.type = High
ground.slidetime = 0
ground.hittime = 0
ground.velocity = -2
air.velocity = -2,-1
palfx.time = 2
palfx.mul = 80, 80, 200
/// (low beam straight)
[State 1000, 10]
type = Projectile
triggerall = Var(0) = 0
trigger1 = anim != 1005
trigger1 = command = "holda"
trigger1 = Time > 12
trigger1 = Time < 63
trigger2 = anim != 1005
trigger2 = Var(10) > 0
trigger2 = Time > 12
trigger2 = Time < 63
projanim = 1010
projremovetime = 15+Var(2)
offset = 28+random%2, -58
velocity = 5,0
getpower  = 0
givepower = 0
attr = S, SP
damage = 1
animtype = light
pausetime = 0,0
sparkno = S1015
guard.sparkno = S4010
sparkxy = 0, 0
hitsound = S1100,1
guardsound = S100,1
hitflag = MAF
guardflag = MA
ground.type = High
ground.slidetime = 0
ground.hittime = 0
ground.velocity = -2
air.velocity = -2
palfx.time = 2
palfx.mul = 80, 80, 200

[State 1000, 10]
type = Projectile
triggerall = Var(0) = 1
trigger1 = anim != 1005
trigger1 = command = "holda"
trigger1 = Time > 12
trigger1 = Time < 63
trigger2 = anim != 1005
trigger2 = Var(10) > 0
trigger2 = Time > 12
trigger2 = Time < 63
projanim = 1014
projremovetime = 15+Var(2)
offset = 20+random%2, -50
velocity = 5,2.5
getpower  = 0
givepower = 0
attr = S, SP
damage = 1
animtype = Light
pausetime = 0,0
sparkno = S1015
guard.sparkno = S4010
sparkxy = 0, 0
hitsound = S1100,1
guardsound = S100,1
hitflag = MAF
guardflag = MA
ground.type = Low
ground.slidetime = 0
ground.hittime = 0
ground.velocity = -2
air.velocity = -2,1
palfx.time = 2
palfx.mul = 80, 80, 200

[State 1000, 10]
type = Projectile
triggerall = Var(0) = 2
trigger1 = anim != 1005
trigger1 = command = "holda"
trigger1 = Time > 12
trigger1 = Time < 63
trigger2 = anim != 1005
trigger2 = Var(10) > 0
trigger2 = Time > 12
trigger2 = Time < 63
projanim = 1012
projremovetime = 15+Var(2)
offset = 22+random%2, -48
velocity = 5,5
getpower  = 0
givepower = 0
attr = S, SP
damage = 1
animtype = Light
pausetime = 0,0
sparkno = S1015
guard.sparkno = S4010
sparkxy = 0, 0
hitsound = S1100,1
guardsound = S100,1
hitflag = MAF
guardflag = MA
ground.type = Low
ground.slidetime = 0
ground.hittime = 0
ground.velocity = -2
air.velocity = -2,2
palfx.time = 2
palfx.mul = 80, 80, 200

[State 1000, 7]
type = ChangeAnim
trigger1 = Time = 63
trigger2 = command != "holda"
trigger2 = Time > 12
trigger2 = anim != 1005
trigger2 = Var(10) = 0
value = 1005

[State 1000, 7]
type = ChangeState
trigger1 = AnimTime = 0
value = 0
ctrl = 1
;------------------------------------------



Code:
;------------------------------------------
[Statedef 1050]
type    = S
movetype= A
physics = S
juggle  = 4
velset = 0,0
anim = 1050
ctrl = 0
sprpriority = 2

[State 1000, 3]
type = VarSet
trigger1 = Time = 0
v = 0
value = 0

[State 1000, 3]
type = VarAdd
triggerall = Var(0) > -2
triggerall = Time > 20
triggerall = Time < 121
triggerall = Time%4 = 0
trigger1 = command = "holdx"
trigger1 = command = "holdup"
trigger2 = Var(10) > 0
trigger2 = P2BodyDist X <= 50
trigger2 = P2BodyDist X >= 0
trigger2 = P2BodyDist Y <= -50
trigger2 = P2BodyDist Y >= -100
v = 0
value = -1

[State 1000, 3]
type = VarAdd
triggerall = Var(0) < 2
triggerall = Time > 20
triggerall = Time < 121
triggerall = Time%4 = 0
trigger1 = command = "holdx"
trigger1 = command = "holddown"
trigger2 = Var(10) > 0
trigger2 = P2BodyDist X <= 25
trigger2 = P2BodyDist X >= 0
trigger2 = P2BodyDist Y <= 0
v = 0
value = 1

[State 1000, 7]
type = ChangeAnim
triggerall = Time > 20
triggerall = Time < 121
trigger1 = command = "holdx"
trigger1 = Var(0) = 0
trigger1 = anim != 1006
trigger2 = Var(10) > 0
trigger2 = Var(0) = 0
trigger2 = anim != 1006
value = 1003

[State 1000, 7]
type = ChangeAnim
triggerall = Time > 20
triggerall = Time < 121
trigger1 = command = "holdx"
trigger1 = Var(0) < 0
trigger1 = anim != 1006
trigger2 = Var(10) > 0
trigger2 = Var(0) < 0
trigger2 = anim != 1006
value = 1001

[State 1000, 7]
type = ChangeAnim
triggerall = Time > 20
triggerall = Time < 121
trigger1 = command = "holdx"
trigger1 = Var(0) > 0
trigger1 = anim != 1006
trigger2 = Var(10) > 0
trigger2 = Var(0) > 0
trigger2 = anim != 1006
value = 1002

[State 1000, 1]
type = PlaySnd
triggerall = anim != 1006
triggerall = Time > 20
triggerall = Time < 121
triggerall = Time%8 = 0
trigger1 = command = "holdx"
trigger2 = Var(10) > 0
value = 1000, 0

[State 1000, 10]
type = Projectile
triggerall = Var(0) = -2
trigger1 = anim != 1006
trigger1 = command = "holdx"
trigger1 = Time > 20
trigger1 = Time < 121
trigger2 = anim != 1006
trigger2 = Var(10) > 0
trigger2 = Time > 20
trigger2 = Time < 121
projanim = 1011
;projhitanim = 1015
projremovetime = 15+Var(2)
offset = 18+random%2, -66
velocity = 5,-5
getpower  = 0
givepower = 0
attr = S, SP
damage = 1
animtype = Light
pausetime = 0,0
sparkno = S1015
guard.sparkno = S4010
sparkxy = 0, 0
hitsound = S1100,1
guardsound = S100,1
hitflag = MAF
guardflag = MA
ground.type = High
ground.slidetime = 0
ground.hittime = 0
ground.velocity = -2
air.velocity = -2,-2
palfx.time = 2
palfx.mul = 80, 80, 200
[State 1000, 10]
type = Projectile
triggerall = Var(0) = -1
trigger1 = anim != 1006
trigger1 = command = "holdx"
trigger1 = Time > 20
trigger1 = Time < 121
trigger2 = anim != 1006
trigger2 = Var(10) > 0
trigger2 = Time > 20
trigger2 = Time < 121
projanim = 1013
projremovetime = 15+Var(2)
offset = 20+random%2, -66
velocity = 5,-2.5
getpower  = 0
givepower = 0
attr = S, SP
damage = 1
animtype = Light
pausetime = 0,0
sparkno = S1015
guard.sparkno = S4010
sparkxy = 0, 0
hitsound = S1100,1
guardsound = S100,1
hitflag = MAF
guardflag = MA
ground.type = High
ground.slidetime = 0
ground.hittime = 0
ground.velocity = -2
air.velocity = -2,-1
palfx.time = 2
palfx.mul = 80, 80, 200
[State 1000, 10]
type = Projectile
triggerall = Var(0) = 0
trigger1 = anim != 1006
trigger1 = command = "holdx"
trigger1 = Time > 20
trigger1 = Time < 121
trigger2 = anim != 1006
trigger2 = Var(10) > 0
trigger2 = Time > 20
trigger2 = Time < 121
projanim = 1010
projremovetime = 15+Var(2)
offset = 28+random%2, -58
velocity = 5,0
getpower  = 0
givepower = 0
attr = S, SP
damage = 1
animtype = Light
pausetime = 0,0
sparkno = S1015
guard.sparkno = S4010
sparkxy = 0, 0
hitsound = S1100,1
guardsound = S100,1
hitflag = MAF
guardflag = MA
ground.type = High
ground.slidetime = 0
ground.hittime = 0
ground.velocity = -2
air.velocity = -2
palfx.time = 2
palfx.mul = 80, 80, 200
[State 1000, 10]
type = Projectile
triggerall = Var(0) = 1
trigger1 = anim != 1006
trigger1 = command = "holdx"
trigger1 = Time > 20
trigger1 = Time < 121
trigger2 = anim != 1006
trigger2 = Var(10) > 0
trigger2 = Time > 20
trigger2 = Time < 121
projanim = 1014
projremovetime = 15+Var(2)
offset = 20+random%2, -50
velocity = 5,2.5
getpower  = 0
givepower = 0
attr = S, SP
damage = 1
animtype = Light
pausetime = 0,0
sparkno = S1015
guard.sparkno = S4010
sparkxy = 0, 0
hitsound = S1100,1
guardsound = S100,1
hitflag = MAF
guardflag = MA
ground.type = Low
ground.slidetime = 0
ground.hittime = 0
ground.velocity = -2
air.velocity = -2,1
palfx.time = 2
palfx.mul = 80, 80, 200
[State 1000, 10]
type = Projectile
triggerall = Var(0) = 2
trigger1 = anim != 1006
trigger1 = command = "holdx"
trigger1 = Time > 20
trigger1 = Time < 121
trigger2 = anim != 1006
trigger2 = Var(10) > 0
trigger2 = Time > 20
trigger2 = Time < 121
projanim = 1012
projremovetime = 15+Var(2)
offset = 22+random%2, -48
velocity = 5,5
getpower  = 0
givepower = 0
attr = S, SP
damage = 1
animtype = Light
pausetime = 0,0
sparkno = S1015
guard.sparkno = S4010
sparkxy = 0, 0
hitsound = S1100,1
guardsound = S100,1
hitflag = MAF
guardflag = MA
ground.type = Low
ground.slidetime = 0
ground.hittime = 0
ground.velocity = -2
air.velocity = -2,2
palfx.time = 2
palfx.mul = 80, 80, 200
[State 1000, 7]
type = ChangeAnim
trigger1 = Time = 121
trigger2 = command != "holdx"
trigger2 = Time > 20
trigger2 = anim != 1006
trigger2 = Var(10) = 0
value = 1006

[State 1000, 7]
type = ChangeState
trigger1 = AnimTime = 0
value = 0
ctrl = 1
;------------------------------------------

The actions used in the animations relevant to this code are as follows:

1010: aiming beam straightwards
1011: aiming beam diagnolly upwards
1012: aiming beam diagnolly downwards
1013: transition from straight to downwards
1014: transition from straight to upwards
1015: Spark effect caused by the beam hitting an opponent
1006 and 1005:player is finished firing the beam.

I'am still studying the definitions of each variable used here. I'am a novice, but I figured somethings out by testing the code with different values used.

The first thing that I noticed is, that when the beam is fired at an enemy it strikes him rapidly and pushes him back. The attack collision box is repeatedly generated to mimic the effect of a scorching beam at a very quick hit per microsecond rate. I was wondering if there is a way to make it so that when the beam touches the enemy there is atleast a one second delay before the next hit is registered.  

The second thing I'am trying to figure out is that how I can make it so that when the beam is aimed downwards and the collision box touches the ground, it creates all the effects exactly like the same way the beam reacts when hitting an opponent.

Lastly how do I make the screen flash white entirely when a collision box registers a hit to either player or the ground.


P.S:I'am manipulating the values of the variable Var but they seem to have no effect to the overall attack. What is the function of Var in this piece of code.

 
Last Edit: December 31, 2009, 09:39:50 am by Tyrannosaurus rex
Re: enhancing beam effects
#2  May 18, 2010, 05:10:13 am
  • ****
  • THE Atomic Runner
    • Guyana
    • Skype - ryon_persaud
    • www.mugenfreeforall.com
i find this VERY EXTREMELY useful.

this is something i should implement to my Kid Goku, since he has controlled it once as a kid.
|
Re: enhancing beam effects
#3  May 18, 2010, 09:51:29 am
  • ******
  • Legendary XIII
  • I am the eye of the storm to come!
    • New Zealand
    • network.mugenguild.com/cyanide/
So, you're posting someone else's code that you don't understand just yet? Moving topic to help, it's not code library material unless you can explain it.

All var(0) is doing is controlling the direction of the beam. Var(10) appears to have no real purpose because i don't know what it's set to, or when it's set.

Due to the nature of that beam you could not stop the projectiles hitting again except in a rather over the top manner (hitflag = MA-) meaning only hit people who aren't in a hitstate which just wouldn't work.

As i'm pretty sure this is pextin's code, and i know that beam is pretty static really, clever scaling of a helper would give a better effect and be more controllable. Only issue would be that you have to change the anim via a change in anim rather than just angledraw.


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.
Last Edit: May 18, 2010, 09:57:38 am by Cyanide
Re: enhancing beam effects
#4  May 18, 2010, 12:03:48 pm
  • ****
  • THE Atomic Runner
    • Guyana
    • Skype - ryon_persaud
    • www.mugenfreeforall.com
i've seen Pixteen's chars use this. and it sounds awesome. dont mind me.
|
Re: enhancing beam effects
#5  May 18, 2010, 10:39:43 pm
  • ******
  • Legendary XIII
  • I am the eye of the storm to come!
    • New Zealand
    • network.mugenguild.com/cyanide/
Oh there's nothing wrong with it as far as it goes, it's just, it could be better and it didn't belong in code library because the OP didn't and couldn't explain how to replicate it.


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: enhancing beam effects
#6  February 12, 2011, 07:25:05 pm
  • **
  • I'm a llama!
its been a while now, and I retried coding this with Cynide's suggestion. Since Cynide suggested to do this outside PMing, I decided to revive this thread in hopes of getting this solved once and for all.

[mcode];------------------------------------------
[Statedef 1000]
type    = S
movetype= A
physics = S
juggle  = 4
velset = 0,0
anim = 1000
ctrl = 0
sprpriority = 2

[State 1000, 3]
type = VarSet
trigger1 = Time = 0
v = 0
value = 0

[State 1000, 3]
type = VarAdd
triggerall = Var(0) > -2
triggerall = Time%4 = 0
triggerall = Time > 12
triggerall = Time < 63
trigger1 = command = "holda"
trigger1 = command = "holdup"
trigger2 = Var(10) > 0
trigger2 = P2BodyDist X <= 75
trigger2 = P2BodyDist X >= 0
trigger2 = P2BodyDist Y <= -50
trigger2 = P2BodyDist Y >= -100
v = 0
value = -1

[State 1000, 3]
type = VarAdd
triggerall = Var(0) < 2
triggerall = Time%4 = 0
triggerall = Time > 12
triggerall = Time < 63
trigger1 = command = "holddown"
trigger1 = command = "holda"
trigger2 = Var(10) > 0
trigger2 = P2BodyDist X <= 25
trigger2 = P2BodyDist X >= 0
trigger2 = P2BodyDist Y >= 0
v = 0
value = 1

[State 1000, 7]
type = ChangeAnim
triggerall = Time > 12
triggerall = Time < 63
trigger1 = anim != 1005
trigger1 = command = "holda"
trigger1 = Var(0) = 0
trigger2 = anim != 1005
trigger2 = Var(10) > 0
trigger2 = Var(0) = 0
value = 1003

[State 1000, 7]
type = ChangeAnim
triggerall = Time > 12
triggerall = Time < 63
trigger1 = anim != 1005
trigger1 = command = "holda"
trigger1 = Var(0) < 0
trigger2 = anim != 1005
trigger2 = Var(10) > 0
trigger2 = Var(0) < 0
value = 1001

[State 1000, 7]
type = ChangeAnim
triggerall = Time > 12
triggerall = Time < 63
trigger1 = anim != 1005
trigger1 = command = "holda"
trigger1 = Var(0) > 0
trigger2 = anim != 1005
trigger2 = Var(10) > 0
trigger2 = Var(0) > 0
value = 1002

[State 1000, 1]
type = PlaySnd
triggerall = anim != 1005
triggerall = Time > 12
triggerall = Time < 63
triggerall = Time%8 = 0
trigger1 = command = "holda"
trigger2 = Var(10) > 0
value = 1000, 0

[State 1000, 10]
type = Projectile
triggerall = Var(0) = -2
trigger1 = anim != 1005
trigger1 = command = "holda"
trigger1 = Time > 12
trigger1 = Time < 63
trigger2 = anim != 1005
trigger2 = Var(10) > 0
trigger2 = Time > 12
trigger2 = Time < 63
projanim = 1011
;projhitanim = 1015
projremovetime = 15+Var(2)
offset = 18+random%2, -66
velocity = 5,-5
getpower  = 0
givepower = 0
attr = S, SP
damage = 1
animtype = Light
pausetime = 0,0
sparkno = S1015
guard.sparkno = S4010
sparkxy = 0, 0
hitsound = S1100,1
guardsound = S100,1
hitflag = MAF
guardflag = MA
ground.type = High
ground.slidetime = 0
ground.hittime = 0
ground.velocity = -2
air.velocity = -2,-2
palfx.time = 2
palfx.mul = 80, 80, 200

[State 1000, 10]
type = Projectile
triggerall = Var(0) = -1
trigger1 = anim != 1005
trigger1 = command = "holda"
trigger1 = Time > 12
trigger1 = Time < 63
trigger2 = anim != 1005
trigger2 = Var(10) > 0
trigger2 = Time > 12
trigger2 = Time < 63
projanim = 1013
projremovetime = 15+Var(2)
offset = 20+random%2, -66
velocity = 5,-2.5
getpower  = 0
givepower = 0
attr = S, SP
damage = 1
animtype = Light
pausetime = 0,0
sparkno = S1015
guard.sparkno = S4010
sparkxy = 0, 0
hitsound = S1100,1
guardsound = S100,1
hitflag = MAF
guardflag = MA
ground.type = High
ground.slidetime = 0
ground.hittime = 0
ground.velocity = -2
air.velocity = -2,-1
palfx.time = 2
palfx.mul = 80, 80, 200
/// (low beam straight)
[State 1000, 10]
type = Projectile
triggerall = Var(0) = 0
trigger1 = anim != 1005
trigger1 = command = "holda"
trigger1 = Time > 12
trigger1 = Time < 63
trigger2 = anim != 1005
trigger2 = Var(10) > 0
trigger2 = Time > 12
trigger2 = Time < 63
projanim = 1010
projremovetime = 15+Var(2)
offset = 28+random%2, -58
velocity = 5,0
getpower  = 0
givepower = 0
attr = S, SP
damage = 1
animtype = light
pausetime = 0,0
sparkno = S1015
guard.sparkno = S4010
sparkxy = 0, 0
hitsound = S1100,1
guardsound = S100,1
hitflag = MAF
guardflag = MA
ground.type = High
ground.slidetime = 0
ground.hittime = 0
ground.velocity = -2
air.velocity = -2
palfx.time = 2
palfx.mul = 80, 80, 200

[State 1000, 10]
type = Projectile
triggerall = Var(0) = 1
trigger1 = anim != 1005
trigger1 = command = "holda"
trigger1 = Time > 12
trigger1 = Time < 63
trigger2 = anim != 1005
trigger2 = Var(10) > 0
trigger2 = Time > 12
trigger2 = Time < 63
projanim = 1014
projremovetime = 15+Var(2)
offset = 20+random%2, -50
velocity = 5,2.5
getpower  = 0
givepower = 0
attr = S, SP
damage = 1
animtype = Light
pausetime = 0,0
sparkno = S1015
guard.sparkno = S4010
sparkxy = 0, 0
hitsound = S1100,1
guardsound = S100,1
hitflag = MAF
guardflag = MA
ground.type = Low
ground.slidetime = 0
ground.hittime = 0
ground.velocity = -2
air.velocity = -2,1
palfx.time = 2
palfx.mul = 80, 80, 200

[State 1000, 10]
type = Projectile
triggerall = Var(0) = 2
trigger1 = anim != 1005
trigger1 = command = "holda"
trigger1 = Time > 12
trigger1 = Time < 63
trigger2 = anim != 1005
trigger2 = Var(10) > 0
trigger2 = Time > 12
trigger2 = Time < 63
projanim = 1012
projremovetime = 15+Var(2)
offset = 22+random%2, -48
velocity = 5,5
getpower  = 0
givepower = 0
attr = S, SP
damage = 1
animtype = Light
pausetime = 0,0
sparkno = S1015
guard.sparkno = S4010
sparkxy = 0, 0
hitsound = S1100,1
guardsound = S100,1
hitflag = MAF
guardflag = MA
ground.type = Low
ground.slidetime = 0
ground.hittime = 0
ground.velocity = -2
air.velocity = -2,2
palfx.time = 2
palfx.mul = 80, 80, 200

[State 1000, 7]
type = ChangeAnim
trigger1 = Time = 63
trigger2 = command != "holda"
trigger2 = Time > 12
trigger2 = anim != 1005
trigger2 = Var(10) = 0
value = 1005

[State 1000, 7]
type = ChangeState
trigger1 = AnimTime = 0
value = 0
ctrl = 1
;------------------------------------------
[Statedef 1050]
type    = S
movetype= A
physics = S
juggle  = 4
velset = 0,0
anim = 1050
ctrl = 0
sprpriority = 2

[State 1050, VelAdd]
type = VelAdd
trigger1 = 1
y = .3

[State 1000, 3]
type = VarSet
trigger1 = Time = 0
v = 0
value = 0

[State 1000, 3]
type = VarAdd
triggerall = Var(0) > -2
triggerall = Time > 20
triggerall = Time < 121
triggerall = Time%4 = 0
trigger1 = command = "holdx"
trigger1 = command = "holdup"
trigger2 = Var(10) > 0
trigger2 = P2BodyDist X <= 50
trigger2 = P2BodyDist X >= 0
trigger2 = P2BodyDist Y <= -50
trigger2 = P2BodyDist Y >= -100
v = 0
value = -1

[State 1000, 3]
type = VarAdd
triggerall = Var(0) < 2
triggerall = Time > 20
triggerall = Time < 121
triggerall = Time%4 = 0
trigger1 = command = "holdx"
trigger1 = command = "holddown"
trigger2 = Var(10) > 0
trigger2 = P2BodyDist X <= 25
trigger2 = P2BodyDist X >= 0
trigger2 = P2BodyDist Y <= 0
v = 0
value = 1

[State 1000, 7]
type = ChangeAnim
triggerall = Time > 20
triggerall = Time < 121
trigger1 = command = "holdx"
trigger1 = Var(0) = 0
trigger1 = anim != 1006
trigger2 = Var(10) > 0
trigger2 = Var(0) = 0
trigger2 = anim != 1006
value = 1003

[State 1000, 7]
type = ChangeAnim
triggerall = Time > 20
triggerall = Time < 121
trigger1 = command = "holdx"
trigger1 = Var(0) < 0
trigger1 = anim != 1006
trigger2 = Var(10) > 0
trigger2 = Var(0) < 0
trigger2 = anim != 1006
value = 1001

[State 1000, 7]
type = ChangeAnim
triggerall = Time > 20
triggerall = Time < 121
trigger1 = command = "holdx"
trigger1 = Var(0) > 0
trigger1 = anim != 1006
trigger2 = Var(10) > 0
trigger2 = Var(0) > 0
trigger2 = anim != 1006
value = 1002

[State 1000, 1]
type = PlaySnd
triggerall = anim != 1006
triggerall = Time > 20
triggerall = Time < 121
triggerall = Time%8 = 0
trigger1 = command = "holdx"
trigger2 = Var(10) > 0
value = 1000, 0

[State 1000, 10]
type = Projectile
triggerall = Var(0) = -2
trigger1 = anim != 1006
trigger1 = command = "holdx"
trigger1 = Time > 20
trigger1 = Time < 121
trigger2 = anim != 1006
trigger2 = Var(10) > 0
trigger2 = Time > 20
trigger2 = Time < 121
projanim = 1011
;projhitanim = 1015
projremovetime = 15+Var(2)
offset = 18+random%2, -66
velocity = 5,-5
getpower  = 0
givepower = 0
attr = S, SP
damage = 1
animtype = Light
pausetime = 0,0
sparkno = S1015
guard.sparkno = S4010
sparkxy = 0, 0
hitsound = S1100,1
guardsound = S100,1
hitflag = MAF
guardflag = MA
ground.type = High
ground.slidetime = 0
ground.hittime = 0
ground.velocity = -2
air.velocity = -2,-2
palfx.time = 2
palfx.mul = 80, 80, 200
[State 1000, 10]
type = Projectile
triggerall = Var(0) = -1
trigger1 = anim != 1006
trigger1 = command = "holdx"
trigger1 = Time > 20
trigger1 = Time < 121
trigger2 = anim != 1006
trigger2 = Var(10) > 0
trigger2 = Time > 20
trigger2 = Time < 121
projanim = 1013
projremovetime = 15+Var(2)
offset = 20+random%2, -66
velocity = 5,-2.5
getpower  = 0
givepower = 0
attr = S, SP
damage = 1
animtype = Light
pausetime = 0,0
sparkno = S1015
guard.sparkno = S4010
sparkxy = 0, 0
hitsound = S1100,1
guardsound = S100,1
hitflag = MAF
guardflag = MA
ground.type = High
ground.slidetime = 0
ground.hittime = 0
ground.velocity = -2
air.velocity = -2,-1
palfx.time = 2
palfx.mul = 80, 80, 200
[State 1000, 10]
type = Projectile
triggerall = Var(0) = 0
trigger1 = anim != 1006
trigger1 = command = "holdx"
trigger1 = Time > 20
trigger1 = Time < 121
trigger2 = anim != 1006
trigger2 = Var(10) > 0
trigger2 = Time > 20
trigger2 = Time < 121
projanim = 1010
projremovetime = 15+Var(2)
offset = 28+random%2, -58
velocity = 5,0
getpower  = 0
givepower = 0
attr = S, SP
damage = 1
animtype = Light
pausetime = 0,0
sparkno = S1015
guard.sparkno = S4010
sparkxy = 0, 0
hitsound = S1100,1
guardsound = S100,1
hitflag = MAF
guardflag = MA
ground.type = High
ground.slidetime = 0
ground.hittime = 0
ground.velocity = -2
air.velocity = -2
palfx.time = 2
palfx.mul = 80, 80, 200

[State 1000, 10]
type = Projectile
triggerall = Var(0) = 1
trigger1 = anim != 1006
trigger1 = command = "holdx"
trigger1 = Time > 20
trigger1 = Time < 121
trigger2 = anim != 1006
trigger2 = Var(10) > 0
trigger2 = Time > 20
trigger2 = Time < 121
projanim = 1014
projremovetime = 15+Var(2)
offset = 20+random%2, -50
velocity = 5,2.5
getpower  = 0
givepower = 0
attr = S, SP
damage = 1
animtype = Light
pausetime = 0,0
sparkno = S1015
guard.sparkno = S4010
sparkxy = 0, 0
hitsound = S1100,1
guardsound = S100,1
hitflag = MAF
guardflag = MA
ground.type = Low
ground.slidetime = 0
ground.hittime = 0
ground.velocity = -2
air.velocity = -2,1
palfx.time = 2
palfx.mul = 80, 80, 200
[State 1000, 10]
type = Projectile
triggerall = Var(0) = 2
trigger1 = anim != 1006
trigger1 = command = "holdx"
trigger1 = Time > 20
trigger1 = Time < 121
trigger2 = anim != 1006
trigger2 = Var(10) > 0
trigger2 = Time > 20
trigger2 = Time < 121
projanim = 1012
projremovetime = 15+Var(2)
offset = 22+random%2, -48
velocity = 5,5
getpower  = 0
givepower = 0
attr = S, SP
damage = 1
animtype = Light
pausetime = 0,0
sparkno = S1015
guard.sparkno = S4010
sparkxy = 0, 0
hitsound = S1100,1
guardsound = S100,1
hitflag = MAF
guardflag = MA
ground.type = Low
ground.slidetime = 0
ground.hittime = 0
ground.velocity = -2
air.velocity = -2,2
palfx.time = 2
palfx.mul = 80, 80, 200

[State 1050, ChangeState]
type = ChangeState
trigger1 = Pos Y >= 0 && Vel Y > 0
trigger2 = MoveContact
value = 1051

[State 1000, 7]
type = ChangeAnim
trigger1 = Time = 121
trigger2 = command != "holdx"
trigger2 = Time > 20
trigger2 = anim != 1006
trigger2 = Var(10) = 0
value = 1006

[State 1000, 7]            ////animation end
type = ChangeState
trigger1 = AnimTime = 0
value = 0
ctrl = 1

;------------------------------------------
;---------------------------------------------------------------------------
[/mcode]

This is in testing phase to see what works. There is an error however.

http://img203.imageshack.us/i/errormessageke.png/


Would appreciate help knowing what went wrong.

2OS

Re: enhancing beam effects
#7  February 12, 2011, 07:32:44 pm
  • ****
  • Ich schicke dich zur HOELLE ! ¡ ! ¡
    • Egypt
    • deuceovspadez.webs.com/
Post Statedef 1051 then


[ 052012 ] Inazumachi 181/256  /  deviantART   /  2OS Grafphicsxz  Dead Anims ( Orochi/Mizuchi )  /  608's FX Volume 3
Re: enhancing beam effects
#8  February 12, 2011, 07:33:50 pm
  • **
  • Enigma
I see no explod, in the code.
the error is in the 1051 state. can you put 1051?

Como Hacia Hitler Mijo
Re: enhancing beam effects
#9  February 12, 2011, 07:42:04 pm
  • ***
  • 真祖-真の祖先。
    • Arrabella.webs.com
Probably your state 1051 problem. Post it in here.

もう何も無いのねAlexandria Shady Rensia。少しこの名前に疲れているのかしら。自分を嫌いになりそう。

2OS

Re: enhancing beam effects
#10  February 12, 2011, 07:51:07 pm
  • ****
  • Ich schicke dich zur HOELLE ! ¡ ! ¡
    • Egypt
    • deuceovspadez.webs.com/
Ok seriously ?

Two echos aren't needed thanks


[ 052012 ] Inazumachi 181/256  /  deviantART   /  2OS Grafphicsxz  Dead Anims ( Orochi/Mizuchi )  /  608's FX Volume 3
Re: enhancing beam effects
#11  February 12, 2011, 07:53:40 pm
  • ***
  • 真祖-真の祖先。
    • Arrabella.webs.com

もう何も無いのねAlexandria Shady Rensia。少しこの名前に疲れているのかしら。自分を嫌いになりそう。

Re: enhancing beam effects
#12  February 12, 2011, 08:19:05 pm
  • **
  • I'm a llama!
sorry for missing that bit, so here it is:

[mcode]ƒhhelper_2

[Statedef 1051]
type = A
movetype = A
physics = N
anim = 1052
ctrl = 0
velset = 0,0

[State 1051, PlaySnd]
type = PlaySnd
trigger1 = Time = 0
value = 1100,0

[State 1051, Explod]
type = Explod
trigger1 = Time = 0
anim = 1053
pos = -20,Ceil(Pos Y / 4)
sprpriority = 5

[State 1051, PosSet]
type = PosSet
trigger1 = Time = 0
y = 0

[State 1051, Explod]
type = Explod
trigger1 = Time = 5
anim = 1053
pos = 20,0
sprpriority = 5

[State 1051, HitDef]
type = HitDef
trigger1 = Time = 0
attr = S, SP
damage = 120,5
animtype = Hard
guardflag = M
hitflag = MAFD
getpower = 20,40
pausetime = 10,12
sparkno = -1
guard.sparkno = S8050
sparkxy = -5, -85
hitsound = S5,2
guardsound = S6,0
ground.type = High
ground.slidetime = 10
ground.hittime  = 18
ground.velocity = -5,-5
air.velocity = -5,-5
yaccel = .4
ground.cornerpush.veloff = 0
fall = 1
fall.recover = 0

[State 1051, DestroySelf]
type = DestroySelf
trigger1 = AnimTime = 0
;---------------------------------------------------------------------------[/mcode]

All spark effects and other animation and audio related things are in place.

2OS

Re: enhancing beam effects
#13  February 12, 2011, 08:21:54 pm
  • ****
  • Ich schicke dich zur HOELLE ! ¡ ! ¡
    • Egypt
    • deuceovspadez.webs.com/
[State 1051, Explod]
type = Explod
trigger1 = Time = 0
anim = 1053
pos = -20,Ceil(Pos Y)/4
sprpriority = 5

Try that


[ 052012 ] Inazumachi 181/256  /  deviantART   /  2OS Grafphicsxz  Dead Anims ( Orochi/Mizuchi )  /  608's FX Volume 3
Re: enhancing beam effects
#14  February 12, 2011, 11:43:49 pm
  • **
  • I'm a llama!
Tried it. Its still giving the same error :???:.
Re: enhancing beam effects
#15  February 12, 2011, 11:57:53 pm
  • ******
  • Legendary XIII
  • I am the eye of the storm to come!
    • New Zealand
    • network.mugenguild.com/cyanide/
For the sake of troubleshooting. Please change the pos line to pos = 20,0

I know it's not what you're after, but if it still errors after that we can take a malformed equation out, or consider that there is an explod parameter required that you haven't added. Although i'm pretty sure you've got the only important ones already.

Also, please label your 2 explods slightly further with numbers

explod 1

explod 2

in the [] bit. Would be interesting to know if 1 or both are causing issues as they are both the same code.


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: enhancing beam effects
#16  February 13, 2011, 12:06:59 am
  • **
  • I'm a llama!
I tried your modifications Cyanide, but it didn't solve the problem. Its giving the same error, only now it has the numericals labelling the explods.

Re: enhancing beam effects
#17  February 13, 2011, 01:15:40 am
  • ******
  • Legendary XIII
  • I am the eye of the storm to come!
    • New Zealand
    • network.mugenguild.com/cyanide/
Good. We can go a step further then

[State 1051, Explod 1]
type = Explod
trigger1 = Time = 0
anim = 1053
pos = -20,0
sprpriority = 5
;postype = p1
;bindtime = -1
;removetime = -2
;removeongethit = 1

Those 4 are parameters i always add by default. Uncomment 1, save it, test, repeat. Do this for explod 1 only. Would like to know if it removes it from the debug. If it does NOT remove it. Then we have exhausted options for fixing the explod. Delete the sctrl. Save the files, quit altogether, reopen, rewrite the code.


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: enhancing beam effects
#18  February 13, 2011, 02:35:57 am
  • **
  • Enigma
i test two sctrl of explods, and no give me error  :-\ (winmugen and mugen 1.0)

Como Hacia Hitler Mijo
Re: enhancing beam effects
#19  February 13, 2011, 04:02:26 am
  • avatar
  • ****
The first two parameters, you include them because mugen will go buggy with out them?
Re: enhancing beam effects
#20  February 13, 2011, 04:21:41 am
  • **
  • I'm a llama!
Well, I have tried your second step, and there are no more errors, Cyanide.

However, when I execute the attack, the player disappears and there are explosions on his feet that blink very fast.
Re: enhancing beam effects
#21  February 13, 2011, 04:52:05 am
  • ******
  • Legendary XIII
  • I am the eye of the storm to come!
    • New Zealand
    • network.mugenguild.com/cyanide/
Sigh, corrupt state. It happens.

That one is easy. Check your animations. If you have a frame with a time of 0 it does not show up.


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: enhancing beam effects
#22  February 13, 2011, 05:25:36 am
  • **
  • I'm a llama!
Cyanide, there are two things that I need to address:

1, All 4 parameters you posted, have the same effect. Should I use all of them in my code or just one?
2, All my animations are timed to non-zero. The ones perticularly involved in this script are consisting of 2 and 3's with the only exception being the ones in which the player aims the beams in different directions. Those are all -1. 
Re: enhancing beam effects
#23  February 13, 2011, 06:38:24 am
  • ******
  • Legendary XIII
  • I am the eye of the storm to come!
    • New Zealand
    • network.mugenguild.com/cyanide/
Alternatively, you are not using the animation you think you are, or you have badly paletted (not paletted) sprites that you are using.

I was really just making sure there wasn't something stupid going on like mugen wanting a required parameter. I'd keep them, and you should really go and read about what they all do.


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: enhancing beam effects
#24  February 13, 2011, 06:56:24 am
  • **
  • I'm a llama!
Thanks Cyanide. I really appreciate your help. I remember you addressing the palette issue back when I first got into Fighter factory (around 2 years back). I don't know if things have changed from now and than, but I would really like to know what you would recommend for palette, sprites and animation handling in mUgen. Afterall, alot of people manage to get through this step but end up having trouble with the coding.

Incidently, I'am quite happy that you think that the code is functional in the sense that it does what I believe it should. I hope I can finally solve this now. Its been too long.
Re: enhancing beam effects
#25  February 13, 2011, 07:37:47 am
  • avatar
  • ****
....I don't know bout could it be something simple like positioning or similar.
Re: enhancing beam effects
#26  February 13, 2011, 10:35:22 am
  • **
  • I'm a llama!
No, after a close examination, I'am quite certain that the sprites and animations are fine. I suspect it be due to the presence of two alternate state changes for state number 1050.

My updated code with renamed animations:

[mcode];------------------------------------------
[Statedef 1050]
type    = S
movetype= A
physics = S
juggle  = 4
velset = 0,0
anim = 1050
ctrl = 0
sprpriority = 2

[State 1050, VelAdd]
type = VelAdd
trigger1 = 1
y = .3

[State 1000, 3]
type = VarSet
trigger1 = Time = 0
v = 0
value = 0

[State 1000, 3]
type = VarAdd
triggerall = Var(0) > -2
triggerall = Time > 20
triggerall = Time < 121
triggerall = Time%4 = 0
trigger1 = command = "holdx"
trigger1 = command = "holdup"
trigger2 = Var(10) > 0
trigger2 = P2BodyDist X <= 50
trigger2 = P2BodyDist X >= 0
trigger2 = P2BodyDist Y <= -50
trigger2 = P2BodyDist Y >= -100
v = 0
value = -1

[State 1000, 3]
type = VarAdd
triggerall = Var(0) < 2
triggerall = Time > 20
triggerall = Time < 121
triggerall = Time%4 = 0
trigger1 = command = "holdx"
trigger1 = command = "holddown"
trigger2 = Var(10) > 0
trigger2 = P2BodyDist X <= 25
trigger2 = P2BodyDist X >= 0
trigger2 = P2BodyDist Y <= 0
v = 0
value = 1

[State 1000, 7]
type = ChangeAnim
triggerall = Time > 20
triggerall = Time < 121
trigger1 = command = "holdx"
trigger1 = Var(0) = 0
trigger1 = anim != 1006
trigger2 = Var(10) > 0
trigger2 = Var(0) = 0
trigger2 = anim != 1006
value = 1003

[State 1000, 7]
type = ChangeAnim
triggerall = Time > 20
triggerall = Time < 121
trigger1 = command = "holdx"
trigger1 = Var(0) < 0
trigger1 = anim != 1006
trigger2 = Var(10) > 0
trigger2 = Var(0) < 0
trigger2 = anim != 1006
value = 1001

[State 1000, 7]
type = ChangeAnim
triggerall = Time > 20
triggerall = Time < 121
trigger1 = command = "holdx"
trigger1 = Var(0) > 0
trigger1 = anim != 1006
trigger2 = Var(10) > 0
trigger2 = Var(0) > 0
trigger2 = anim != 1006
value = 1002

[State 1000, 1]
type = PlaySnd
triggerall = anim != 1006
triggerall = Time > 20
triggerall = Time < 121
triggerall = Time%8 = 0
trigger1 = command = "holdx"
trigger2 = Var(10) > 0
value = 1000, 0

[State 1000, 10]
type = Projectile
triggerall = Var(0) = -2
trigger1 = anim != 1006
trigger1 = command = "holdx"
trigger1 = Time > 20
trigger1 = Time < 121
trigger2 = anim != 1006
trigger2 = Var(10) > 0
trigger2 = Time > 20
trigger2 = Time < 121
projanim = 1011
;projhitanim = 1015
projremovetime = 15+Var(2)
offset = 18+random%2, -66
velocity = 5,-5
getpower  = 0
givepower = 0
attr = S, SP
damage = 1
animtype = Light
pausetime = 0,0
sparkno = S1015
guard.sparkno = S4010
sparkxy = 0, 0
hitsound = S1100,1
guardsound = S100,1
hitflag = MAF
guardflag = MA
ground.type = High
ground.slidetime = 0
ground.hittime = 0
ground.velocity = -2
air.velocity = -2,-2
palfx.time = 2
palfx.mul = 80, 80, 200
[State 1000, 10]
type = Projectile
triggerall = Var(0) = -1
trigger1 = anim != 1006
trigger1 = command = "holdx"
trigger1 = Time > 20
trigger1 = Time < 121
trigger2 = anim != 1006
trigger2 = Var(10) > 0
trigger2 = Time > 20
trigger2 = Time < 121
projanim = 1013
projremovetime = 15+Var(2)
offset = 20+random%2, -66
velocity = 5,-2.5
getpower  = 0
givepower = 0
attr = S, SP
damage = 1
animtype = Light
pausetime = 0,0
sparkno = S1015
guard.sparkno = S4010
sparkxy = 0, 0
hitsound = S1100,1
guardsound = S100,1
hitflag = MAF
guardflag = MA
ground.type = High
ground.slidetime = 0
ground.hittime = 0
ground.velocity = -2
air.velocity = -2,-1
palfx.time = 2
palfx.mul = 80, 80, 200
[State 1000, 10]
type = Projectile
triggerall = Var(0) = 0
trigger1 = anim != 1006
trigger1 = command = "holdx"
trigger1 = Time > 20
trigger1 = Time < 121
trigger2 = anim != 1006
trigger2 = Var(10) > 0
trigger2 = Time > 20
trigger2 = Time < 121
projanim = 1010
projremovetime = 15+Var(2)
offset = 28+random%2, -58
velocity = 5,0
getpower  = 0
givepower = 0
attr = S, SP
damage = 1
animtype = Light
pausetime = 0,0
sparkno = S1015
guard.sparkno = S4010
sparkxy = 0, 0
hitsound = S1100,1
guardsound = S100,1
hitflag = MAF
guardflag = MA
ground.type = High
ground.slidetime = 0
ground.hittime = 0
ground.velocity = -2
air.velocity = -2
palfx.time = 2
palfx.mul = 80, 80, 200

[State 1000, 10]
type = Projectile
triggerall = Var(0) = 1
trigger1 = anim != 1006
trigger1 = command = "holdx"
trigger1 = Time > 20
trigger1 = Time < 121
trigger2 = anim != 1006
trigger2 = Var(10) > 0
trigger2 = Time > 20
trigger2 = Time < 121
projanim = 1014
projremovetime = 15+Var(2)
offset = 20+random%2, -50
velocity = 5,2.5
getpower  = 0
givepower = 0
attr = S, SP
damage = 1
animtype = Light
pausetime = 0,0
sparkno = S1015
guard.sparkno = S4010
sparkxy = 0, 0
hitsound = S1100,1
guardsound = S100,1
hitflag = MAF
guardflag = MA
ground.type = Low
ground.slidetime = 0
ground.hittime = 0
ground.velocity = -2
air.velocity = -2,1
palfx.time = 2
palfx.mul = 80, 80, 200
[State 1000, 10]
type = Projectile
triggerall = Var(0) = 2
trigger1 = anim != 1006
trigger1 = command = "holdx"
trigger1 = Time > 20
trigger1 = Time < 121
trigger2 = anim != 1006
trigger2 = Var(10) > 0
trigger2 = Time > 20
trigger2 = Time < 121
projanim = 1012
projremovetime = 15+Var(2)
offset = 22+random%2, -48
velocity = 5,5
getpower  = 0
givepower = 0
attr = S, SP
damage = 1
animtype = Light
pausetime = 0,0
sparkno = S1015
guard.sparkno = S4010
sparkxy = 0, 0
hitsound = S1100,1
guardsound = S100,1
hitflag = MAF
guardflag = MA
ground.type = Low
ground.slidetime = 0
ground.hittime = 0
ground.velocity = -2
air.velocity = -2,2
palfx.time = 2
palfx.mul = 80, 80, 200

[State 1050, ChangeState]
type = ChangeState
trigger1 = Pos Y >= 0 && Vel Y > 0
trigger2 = MoveContact
value = 1051

[State 1000, 7]
type = ChangeAnim
trigger1 = Time = 121
trigger2 = command != "holdx"
trigger2 = Time > 20
trigger2 = anim != 1006
trigger2 = Var(10) = 0
value = 1006

[State 1000, 7]           ;nimation end
type = ChangeState
trigger1 = AnimTime = 0
value = 0
ctrl = 1

;------------------------------------------
;---------------------------------------------------------------------------

; ƒnƒ“ƒhƒOƒŒƒl[ƒhhelper_2
[Statedef 1051]
type = A
movetype = A
physics = N
anim = 1015
ctrl = 0
velset = 0,0

[State 1051, PlaySnd]
type = PlaySnd
trigger1 = Time = 0
value = 1100,0

State 1051, Explod 1]
type = Explod
trigger1 = Time = 0
anim = 1015
pos =  -20,Ceil(Pos Y)/4
sprpriority = 5
postype = p1
bindtime = -1
removetime = -2
removeongethit = 1


[State 1051, PosSet]
type = PosSet
trigger1 = Time = 0
y = 0

[State 1051, Explod]
type = Explod
trigger1 = Time = 5
anim = 1015
pos = 20,0
sprpriority = 5

[State 1051, HitDef]
type = HitDef
trigger1 = Time = 0
attr = S, SP
damage = 120,5
animtype = Hard
guardflag = M
hitflag = MAFD
getpower = 20,40
pausetime = 10,12
sparkno = -1
guard.sparkno = S1015
sparkxy = -5, -85
hitsound = S5,2
guardsound = S6,0
ground.type = High
ground.slidetime = 10
ground.hittime  = 18
ground.velocity = -5,-5
air.velocity = -5,-5
yaccel = .4
ground.cornerpush.veloff = 0
fall = 1
fall.recover = 0

[State 1051, DestroySelf]
type = DestroySelf
trigger1 = AnimTime = 0
;---------------------------------------------------------------------------[/mcode]


I see it occuring because of the first 2 block of codes that later lead to either the character becoming the beam special effect (What is probably the case here) or no beam at all (not the case).

Now, if someone can only tell me how I can reorganize that to make the explosions occur by the beam and not be a change state for the player.