YesNoOk
avatar

Explod Limit problem (Read 637 times)

Started by Count Monte, September 07, 2010, 06:21:14 pm
Share this topic:
Explod Limit problem
#1  September 07, 2010, 06:21:14 pm
  • avatar
  • ***
I'm making a spell casting character, who uses explods for most of his attacks.  The problem is that after about 30-50 seconds, NONE of his explods appear.  Once the next round starts, they return, but again disappear too soon.  I've coded them as below.  Is there a way around the explod counter limit?

[State 245]
type = Explod
trigger1 = time = 80
anim = 2255
pos = 0,0
postype = p1
facing = 1
bindtime = -1
sprpriority = 4
ontop = 1
persistent = -2
removetime = -2
shadow = 100,100,100

[State 245]
type = RemoveExplod
trigger1 = animtime = 0
Re: Explod Limit problem
#2  September 07, 2010, 06:35:43 pm
  • ****
  • Busy, busy, busy
    • www.trinitymugen.net/forum/index.php
As in the mugen.cfg explod limit counter?

ExplodMax =

Sorry if I misunderstood

-
http://www.Trinitymugen.net/Hosted/CFJ2/
-
thanks again Vans/Jesuszilla!
Re: Explod Limit problem
#3  September 07, 2010, 07:22:32 pm
  • avatar
  • ***
I suppose I could raise it from 60 to 100 in the mugen cfg explod max counter.  But I'd rather make it so the character works universally on anyone's Mugen.

So I guess I'm wondering if there's a way to have my character use so many explods and not have ALL the explods stop working before the round is over.
Re: Explod Limit problem
#4  September 07, 2010, 07:25:16 pm
  • *****
  • 11 years of MFG and counting :)
    • Brazil
    • www.brazilmugenteam.com
is its anims right?

try to chage the removetime to -1 to see if they appear. If so, your anim is wrong.

And, if you will remove every explod when the AnimTime = 0, why putting removetime = -2  (which means it will be removed when its anim is over) ?
Re: Explod Limit problem
#5  September 07, 2010, 07:49:21 pm
  • avatar
  • ***
Yes, its all anims.

I'll try changing the removetime to -1.   What will that do?

 I put the removeexplods in because I was hoping that if I remove them right after they appear, then it won't run out of explods it can use. 

Re: Explod Limit problem
#6  September 07, 2010, 08:02:39 pm
  • ****
  • HAHAHAHAHAHAHAHA
    • Chile
removetime = -1 means the explod never dissapear unless you use a removeexplod.

removetime = -2 means the explod disspaears when the anim is over.

Try posting the relevant parts of the state and check if in -2 or -3 states for a removeexplod ctrl
Re: Explod Limit problem
#7  September 07, 2010, 08:11:44 pm
  • avatar
  • ***
There are no removeexplod ctrls in -2 or -3. 

What I'm confused about is if I'm removing all the explods right after they appear, why is it still counting toward the max explods?  It's basically letting me have 60 explods, then none will appear after that.  The round is maybe half over, and the char has run out of explods.   Why doesn't removing them solve this issue?
Re: Explod Limit problem
#8  September 07, 2010, 08:21:30 pm
  • ****
  • HAHAHAHAHAHAHAHA
    • Chile
Check for anim number.
Check for anim time (how many ticks long)
Check for helpers`s explod
Check for explod`s triggers. Check you don“t use "time > 0" cause you will summon a explod every tick.

And post the state code.

Also I never had seek persistent = -2, I was sure it onyl admit values 0 and 1.
Re: Explod Limit problem
#9  September 07, 2010, 08:37:42 pm
  • avatar
  • ***
http://rapidshare.com/files/417683340/Deimos.zip

Here's a download link to the character.  If you could take a look maybe you'll be able to see what the problem is.  Right now, this is a crippling problem - the character is unreleasable if it can't be solved :'(
Re: Explod Limit problem
#10  September 07, 2010, 10:26:45 pm
  • ******
  • Legendary XIII
  • I am the eye of the storm to come!
    • New Zealand
    • network.mugenguild.com/cyanide/
You only cannot display further explods if the limit is reached and they are not removed. Logically you have an explod spawned somewhere that is never removed. Can't check anything atm but you have something you haven't killed and it's being recreated.

Possibly you have a 0 time frame on an explod breaking things.


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: Explod Limit problem
#11  September 07, 2010, 10:48:16 pm
  • avatar
  • ***
Cyanide,

That gives me hope -- the question now is how to find the explode.  I've gone straight down the list and added RemoveExplod after each one listed. 

The triggers are
trigger1=1
trigger1 = time =0

Nothing jumps out as suspicious -- any other tips would be really helpful!  I've spent hours trying to fix this, tearing out my hair over this.
Re: Explod Limit problem
#12  September 08, 2010, 01:59:57 am
  • avatar
  • ***
Okay, I think I've narrowed down the culprit.  This attack sets player 2 on fire. After two times, the fire explod wont appear.  All my other attacks that electrocute, or freeze player 2 (and use explod anims) work just fine, over and over.  But not THIS one.
  I checked the animations for the fire and compared it to the others, but there's nothing different.  Each frame appears for 6 ticks.    Also nothing different in the Explod definition.  But obviously there must be something in the code below causing the problem.  Maybe something in the Hit Def ? 


[Statedef 250]
type    = S
movetype= A
physics = S
juggle  = 4
ctrl = 0
velset = 0,0
anim = 699
sprpriority = -1

[State 250, 1]
type = PlaySnd
trigger1 = Time = 0
value = 310, 0




[State 1702 , THE FREEZE PART]
type = Hitdef
trigger1 = time >= 0
trigger2 = MoveGuarded = 1
trigger3 = Movetype = H
attr = S, SA
pausetime = 0,1
numhits = 0
sparkno = -1
sparkxy = -10,-60
hitsound   = -1
p2stateno = 1705
Kill = 0

[State 250, 5]
type = ChangeState
trigger1 = AnimTime = 0
value = 251
ctrl = 1


[Statedef 251]  ; FIRE ELEMENTAL
type    = S
movetype= A
physics = S
juggle  = 4
poweradd = -1000
ctrl = 0
velset = 0,0
anim = 700
sprpriority = -1



[State 2000, Super]
type = SuperPause
trigger1 = Time = 0
pos = 0,-60

[State 3011, 4]
type = BGPalfx
trigger1 = time = 0
time = 20
color = 1
add = -150,-150,-150
ignorehitpause = 1

[State 3011, 4]
type = BGPalfx
trigger1 = time = 20
time = 20
color = 1
add = -60,-140,-140

[State 3011, 4]
type = BGPalfx
trigger1 = time =40
time = 210
color = 1
add = -20,-130,-130


[State 251, Hit]
type = HitDef
trigger1 = Time >= 0
attr = A, NA
damage   = 5
animtype = Back
getpower = 60
givepower = 30
guardflag = MA
hitflag = MAF
priority = 3, Hit
pausetime = 0,0
numhits = 0
sparkno = S9999
sparkxy = -10,0
hitsound   = S0,13
guardsound = S0,10
ground.type = High
ground.slidetime = 20
ground.hittime  = 12
ground.velocity = -2,-0.2
air.velocity = 0,-3
palfx.time = 40
palfx.add = 32,0,0
palfx.mul = 300,192,192
palfx.sinadd = 32,5,5,8



[State 251, Burning]
type = Explod
trigger1 = movehit = 1
anim = 10001
pos = 0,0
facing = 1
postype = p2
sprpriority = 1
bindtime = -1
persistent = -2

Re: Explod Limit problem
#13  September 08, 2010, 03:13:41 am
  • ******
  • Legendary XIII
  • I am the eye of the storm to come!
    • New Zealand
    • network.mugenguild.com/cyanide/
Statedef 251 is never ending. Your explod has persistent = -2 (probably breaks something as persistent should be POSITIVE values)

Movehit = 1 triggers throughout the pause as well. Basically, you need to END this state and tell those explods to removetime = -2

Persistent = -2 = doesn't function right.


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: Explod Limit problem
#14  September 08, 2010, 03:39:58 am
  • avatar
  • ***
Okay I changed Persistent = 0

Basically, the problem is being created by trigger 1 = movehit.  The animation has several red hit boxes that juggle player 2 up into the air.  If I move the explod to another state, it won't trigger until after player 2 lands.

So my question is, without changing the state, is there another trigger I can use besides movehit to trigger the explod, without it looping endlessly?
Re: Explod Limit problem
#15  September 08, 2010, 04:33:05 am
  • *****
  • 11 years of MFG and counting :)
    • Brazil
    • www.brazilmugenteam.com
you shold optmize your explod code a bit:

[State 251, Burning]
type = Explod
triggerall = !NumExplod(10001) ; the same of NumExplod(10001) = 0, but in a faster way
trigger1 = movehit ; Use just movehit
id = 10001 ; give it an ID
anim = 10001
pos = 0,0
facing = 1
postype = p2
sprpriority = 1
bindtime = -1
removetime = -2

If the persistent = 0 , on this case, you can omit it.


Quote
[State 251, Hit]
type = HitDef
trigger1 = Time >= 0

This will be true forever, just not from the first tick, and will keep looping and looping...and you will run out of explods.

Try changing it to trigger1 = !time (same as time = 0)

Quote
The triggers are
trigger1=1
trigger1 = time =0

What? This doesn't makes sense at all.

trigger1 = 1 means "do this forever"

trigger1 = Time = 0 means "just on the start".

Since both are trigger1, both must be true to happen but...

...how something could be "just on the start" and "do this forever" at the same time?

Last Edit: September 08, 2010, 04:37:56 am by .(O).
Re: Explod Limit problem
#16  September 08, 2010, 05:06:25 am
  • avatar
  • ***
(O) your advice worked!  Changing the trigger to trigger 1 = ! time  solved the problem.  THANK YOU!  And thanks to everyone who helped.  Now I can get back to finishing this guy up so I can release him

Curiously, all of his attacks had the same triggers and commands, but the other ones seem to work okay.  Must have something to do with the red collision boxes juggling him that freaks it out.
Re: Explod Limit problem
#17  September 08, 2010, 05:25:08 am
  • *****
  • 11 years of MFG and counting :)
    • Brazil
    • www.brazilmugenteam.com
you're welcome.

You were using a trigger1 = Time >= 0, and this will trigger forever, since the time will be forever bigger than 0, when you want exactly the opposite.

If you need any help, drop me a line.