The Mugen Fighters Guild

M.U.G.E.N Central => Inactive Projects => FullGame development => xnaMugen => Topic started by: FrantzX on January 30, 2009, 08:53:59 am

Title: xnaMugen Build 22343 (1/29)
Post by: FrantzX on January 30, 2009, 08:53:59 am
Get it here! (http://www.codeplex.com/xnamugen)

More random bug fixes, mostly around Jesuszilla's Felicia.

Note: For the time being xnaMugen will read & use correctly the incorrect trigger syntax of "AnimElem >= number". In later releases, this will be controlled by a setting in the xnaMugen.ini file.
Title: Re: xnaMugen Build 22343 (1/29)
Post by: Drex on January 30, 2009, 09:35:10 am
I can't say much about what's going wrong with the coding, but have you tried Felicia using the A groove? She quickly causes the engine to lag more and more with every new animation activated untill the screen is stagnant.

Just in case it matter Player 2 was using P groove.
Title: Re: xnaMugen Build 22343 (1/29)
Post by: FrantzX on January 30, 2009, 10:24:53 am
OK, I have been able to reproduce the issue. It is caused by something in Felicia's code that is creating Explods, nonstop. I'll look into it some more. I don't know yet weather it is a xnaMugen bug or a Felicia bug yet.

Edit:
Getting closer to the problem. It only happens when P2 is Felicia in P groove. That would explain why I never saw it before. I do most of my testing with P1 & with P2 as Kung Fu Man.
Title: Re: xnaMugen Build 22343 (1/29)
Post by: FrantzX on January 30, 2009, 11:33:25 am
I found the bug. It is caused by Jesuszilla's Felicia.
Here is the cause. The first statecontroller is good but the second one is what causes the problem. Notice the difference in the triggers:

[State 6120, Explod];BAR1P
type = Explod
trigger1 = !NumExplod(6120)
trigger1 = teamside = 1
anim = 6207
ID = 6120
postype = Left
pos = 140,230
ownpal = 1
bindtime = -1
ignorehitpause = 1
ontop = 1
facing = 1
pausemovetime = -1
supermovetime = -1
scale = .5,.5

[State 6120, Explod];BAR2P
type = Explod
trigger1 = !NumExplod(6120)
trigger4 = teamside = 2
anim = 6208
ID = 6120
postype = Right
pos = -140,230
ownpal = 1
bindtime = -1
ignorehitpause = 1
ontop = 1
facing = 1
pausemovetime = -1
supermovetime = -1
scale = .5,.5

The reason that this bug does not show up in WinMugen is because WinMugen has a limit of the number of explods that can exist at one point in time. xnaMugen has no such limit, so every tick creates a new explod.
Title: Re: xnaMugen Build 22343 (1/29)
Post by: FrantzX on January 30, 2009, 11:34:57 am
I think my next goal for xnaMugen is a better clipboard/diagnostic window to make it easier to see when things like this happen.
Title: Re: xnaMugen Build 22343 (1/29)
Post by: Cyanide on January 30, 2009, 11:41:06 am
Quote
[State 6120, Explod];BAR2P
type = Explod
trigger1 = !NumExplod(6120)
trigger4 = teamside = 2
anim = 6208
ID = 6120
postype = Right
pos = -140,230
ownpal = 1
bindtime = -1
ignorehitpause = 1
ontop = 1
facing = 1
pausemovetime = -1
supermovetime = -1
scale = .5,.5
trigger1 then straight to trigger4? In my experience that breaks. Is the problem solved if it's changed to trigger1 instead?

Edit: Cool, my afterimages look mostly right now.
Title: Re: xnaMugen Build 22343 (1/29)
Post by: FrantzX on January 30, 2009, 11:51:40 am
Yes, it fixes the problem.

xnaMugen allows for "triggern" where n is any integer number. (Note to self: Add check to make sure n is positive.)
xnaMugen will check the triggers in numerical order. If a number is missing, it simply goes to the next. Is this incorrect behavior?
Title: Re: xnaMugen Build 22343 (1/29)
Post by: Haseo80 on January 30, 2009, 12:00:36 pm
in mugen it simply stops if the next trigger isnt the next number
for example

this works

trigger1 = whatever
trigger2 = whatever2
trigger3 = whatever3

and this doesnt

trigger1 = whatever
trigger3 = whatever3

mugen completely skips trigger3
Title: Re: xnaMugen Build 22343 (1/29)
Post by: Bastard Mami on January 30, 2009, 06:08:59 pm
It is incorrect behaviour, but I think it's more desirable that way; so we can organize our triggers better.
Title: Re: xnaMugen Build 22343 (1/29)
Post by: Cyanide on January 30, 2009, 09:35:31 pm
How is being able to enter any positive number better? should be 1-2-3 etc. 1-8-22 makes no sense.
Title: Re: xnaMugen Build 22343 (1/29)
Post by: Bastard Mami on January 30, 2009, 10:30:27 pm
I was expecting that.

let's say you have

type=changestate
value = special
trigger1= ctrl
trigger2= combo from weak punch
trigger3 = combo from weak kick

if you disallow it to combo from weak punch you have to

type=changestate
value = special
trigger1= ctrl
;trigger2= combo from weak punch
trigger2 = combo from weak kick


while

type=changestate
value = special
trigger1= ctrl
;trigger2= combo from weak punch
trigger3 = combo from weak kick

is easier to read and edit.

Title: Re: xnaMugen Build 22343 (1/29)
Post by: Cyanide on January 30, 2009, 11:33:22 pm
I disagree with that. Allows too much sloppy coding. It might work. But if people stop bothering to label their triggers correctly it becomes more difficult to read in the end. A suffix to the trigger line that says ignore this but still confirm trigger2 exists would be better than any positive number that's the next highest.
Title: Re: xnaMugen Build 22343 (1/29)
Post by: Bastard Mami on January 30, 2009, 11:36:47 pm
I don't really see what's sloppy on that, since the whole concept of numbering triggers is pretty "blah" ideally they should be named.
Title: Re: xnaMugen Build 22343 (1/29)
Post by: Jesuszilla on January 30, 2009, 11:38:04 pm
Oh shit. :omg:


Fixed. At this point, I definitely need to make another update soon. :P
Title: Re: xnaMugen Build 22343 (1/29)
Post by: Cybaster on January 30, 2009, 11:44:40 pm
Let's rename this "xnaMugen" section into "Let's debug JZ's Felicia with a good parser". ;P
Title: Re: xnaMugen Build 22343 (1/29)
Post by: Bastard Mami on January 30, 2009, 11:53:14 pm
Felicia should be included with xnamugen instead of kungfuman.
Title: Re: xnaMugen Build 22343 (1/29)
Post by: Jesuszilla on January 31, 2009, 01:11:43 am
OK, tested (with a fixed version of Felicia, which I ought to get to you).

General


Felicia


Also, tested my Andy on it. The last hit of his Shoryu-Dan won't knock the opponent down, and something weird happened whenever I used Bakushin on Vans's Ralf... Whenever he used LP, the super spark sound would play. With HP (I think), it looked like he was trying to throw the enemy. Then it crashed after Ralf tried that a few more times.
Spoiler, click to toggle visibilty

I wouldn't really focus on Andy too much ATM though. I didn't really intend to report any problems he had, but then this happened. :-X
Title: DOUBLE POST
Post by: Jesuszilla on February 01, 2009, 04:30:38 am
Almost forgot, if one uses LP and the other HP, then HP should win. Right now, both Felicias get hit. I suppose you haven't implemented priority? Because my Felicia has a higher priority for heavy than she does light.
Title: Re: xnaMugen Build 22343 (1/29)
Post by: FrantzX on February 03, 2009, 08:14:37 am
While you are fixing Felicia, please look into this as well.

Spoiler, click to toggle visibilty

I would recommend running you other characters thru xnaMugen so the parser can check them as well.
Title: Re: xnaMugen Build 22343 (1/29)
Post by: Jesuszilla on February 04, 2009, 12:11:28 am
Done. Will check Andy to see if he has that problem as well. All done and the updates are up!
Title: Re: xnaMugen Build 22343 (1/29)
Post by: FrantzX on February 07, 2009, 09:29:02 am
These are the state controllers for the Rolling Buckler follow-ups:
[State 1000, ChangeState]
type = ChangeState
triggerall = Time > 4
trigger1 = Command = "x"
trigger2 = Var(50) = 1 || Var(50) = 2;NumTarget(5)
trigger2 = Command = "x"
value = 1025
ignorehitpause = 1
ctrl = 0

[State 1000, ChangeState]
type = ChangeState
triggerall = Time > 4
trigger1 = Command = "y"
trigger2 = Var(50) = 1 || Var(50) = 2;NumTarget(5)
trigger2 = Command = "y"
value = 1015
ignorehitpause = 1
ctrl = 0

[State 1000, ChangeState]
type = ChangeState
triggerall = Time > 4
trigger1 = Command = "z"
trigger2 = Var(50) = 1 || Var(50) = 2;NumTarget(5)
trigger2 = Command = "z"
value = 1005
ignorehitpause = 1
ctrl = 0

[State 1000, ChangeState]
type = ChangeState
triggerall = Time > 4
trigger1 = Command = "a"
trigger2 = Command = "b"
trigger3 = Command = "c"
trigger4 = Var(50) = 1 || Var(50) = 2;NumTarget(5)
trigger4 = Command = "a"  || Command = "b" || Command = "c"
value = 1035
ignorehitpause = 1
ctrl = 0

It looks to me that you should be able to transition to a follow up by pressing the correct button 5 ticks into the Rolling Buckler's state. Of course, the trigger "Var(50) = 1 || Var(50) = 2" makes it look as it you may have another coding issue.

---

This is in the command file. You are missing trigger3.
[State -1, Chain]
type = CtrlSet
triggerall = !Ctrl
trigger1 =  (StateNo = 52 || StateNo = 101 || StateNo = 106 || StateNo = 5120 || StateNo = 1305) && AnimTime = 0 ;Land States
trigger2 =  (StateNo = [200,499]) && AnimTime = 0 ;Standing and Crouching Basics
trigger4 = ((StateNo = 5201) || (StateNo = [900,999])) && AnimTime = 0 ;System States
trigger5 =   StateNo = 2800 && AnimTime = 0       ;Counter Attacks
trigger6 =  (StateNo = 5001 || StateNo = 5011 || StateNo = 151 || StateNo = 153) && HitOver
value= 1
Title: Re: xnaMugen Build 22343 (1/29)
Post by: Jesuszilla on February 07, 2009, 09:36:52 am
Now that I look at the follow-up code, it does seem redundant... Removed.


Also thanks. Can't believe I missed that last one.





Later today I will do a quick update to the main archive and tell those who already downloaded it how to fix it. Updates uploaded. Gonna sleep for now.