The Mugen Fighters Guild

M.U.G.E.N Central => M.U.G.E.N Discussion => Development => Topic started by: JustNoPoint on June 23, 2017, 09:09:55 am

Title: New Explod based Buffer System
Post by: JustNoPoint on June 23, 2017, 09:09:55 am
Spoilering the info because it's bad and outdated.
Please see the finished tutorial here
http://mugenguild.com/forum/topics/fix-all-your-command-issues-explodsive-buffering-system-180772.0.html

Spoiler, click to toggle visibilty
Title: Re: New Explod based Buffer System
Post by: JustNoPoint on June 23, 2017, 09:10:12 am
Command standards for easy copy paste feel free to add more


Code:
;---------------------------------------------------
[State -2, QCB: Down 1010]
type = Explod
triggerAll = !NumExplod(90010102)
trigger1 = command = "down" || command = "rlsdown"
anim = 1
ID = 90010102 ;Down
removeTime = 10
pauseMoveTime = 10
superMoveTime = 10
ignoreHitPause = 1
 
[State -2, QCB: Down-Back 1010]
type = Explod
triggerAll = !NumExplod(90010101)
triggerAll = NumExplod(90010102)
trigger1 = command = "dback" && P2Dist x >= 0
trigger2 = command = "dfwd" && P2Dist x < 0
anim = 1
ID = 90010101 ;Down-Back
removeTime = 10
pauseMoveTime = 10
superMoveTime = 10
ignoreHitPause = 1

[State -2, RemoveExplod]
type = RemoveExplod
trigger1 = NumExplod(90010101)
id = 90010102
ignoreHitPause = 1

[State -2, QCB: Back 1010]
type = Explod
triggerAll = !NumExplod(90010104)
triggerAll = NumExplod(90010101)
trigger1 = command = "back" && P2Dist x >= 0
trigger2 = command = "fwd" && P2Dist x < 0
anim = 1
ID = 90010104  ;Back
removeTime = 10
pauseMoveTime = 10
superMoveTime = 10
ignoreHitPause = 1

[State -2, RemoveExplod]
type = RemoveExplod
trigger1 = NumExplod(90010104)
id = 90010101
ignoreHitPause = 1

Code:
;---------------------------------------------------
[State -2, QCB: Down2 3010]
type = Explod
trigger1 = !NumExplod(90030102)
trigger1 = NumExplod(90010104)
trigger1 = command = "down" || command = "rlsdown"
trigger1 = command != "back" && command != "rlsback"
trigger1 = command != "fwd" && command != "rlsfwd"
anim = 1
ID = 90030102 ;Down
removeTime = 10
pauseMoveTime = 10
superMoveTime = 10
ignoreHitPause = 1

[State -2, RemoveExplod]
type = RemoveExplod
trigger1 = NumExplod(90030102)
id = 90010104
ignoreHitPause = 1
 
[State -2, QCB: Down-Back2 3010]
type = Explod
triggerAll = NumExplod(90030102)
trigger1 = command = "dback" && P2Dist x >= 0
trigger2 = command = "dfwd" && P2Dist x < 0
anim = 1
ID = 90030101 ;Down-Back
removeTime = 10
pauseMoveTime = 10
superMoveTime = 10
ignoreHitPause = 1

Code:
;---------------------------------------------------
[State -2, QCF: Down 1000]
type = Explod
triggerAll = !NumExplod(90010002)
trigger1 = command = "down" || command = "rlsdown"
anim = 1
ID = 90010002 ;Down
removeTime = 10
pauseMoveTime = 10
superMoveTime = 10
ignoreHitPause = 1
 
[State -2, QCF: Down-Forward 1000]
type = Explod
triggerAll = !NumExplod(90010003)
triggerAll = NumExplod(90010002)
trigger1 = command = "dfwd" && P2Dist x >= 0
trigger2 = command = "dback" && P2Dist x < 0
anim = 1
ID = 90010003 ;Down-Forward
removeTime = 10
pauseMoveTime = 10
superMoveTime = 10
ignoreHitPause = 1

[State -2, RemoveExplod]
type = RemoveExplod
trigger1 = NumExplod(90010003)
id = 90010002
ignoreHitPause = 1

[State -2, QCF: Forward 1000]
type = Explod
triggerAll = !NumExplod(90010006)
triggerAll = NumExplod(90010003)
trigger1 = command = "fwd" && P2Dist x >= 0
trigger2 = command = "back" && P2Dist x < 0
anim = 1
ID = 90010006 ;Forward
removeTime = 10
pauseMoveTime = 10
superMoveTime = 10
ignoreHitPause = 1

[State -2, RemoveExplod]
type = RemoveExplod
trigger1 = NumExplod(90010006)
id = 90010003
ignoreHitPause = 1

Code:
;---------------------------------------------------
[State -2, QCF: Down2 3000]
type = Explod
trigger1 = !NumExplod(90030002)
trigger1 = NumExplod(90010006)
trigger1 = command = "down" || command = "rlsdown"
trigger1 = command != "fwd" && command != "rlsfwd"
trigger1 = command != "back" && command != "rlsback"
anim = 1
ID = 90030002 ;Down
removeTime = 10
pauseMoveTime = 10
superMoveTime = 10
ignoreHitPause = 1

[State -2, RemoveExplod]
type = RemoveExplod
trigger1 = NumExplod(90030002)
id = 90010006
ignoreHitPause = 1
 
[State -2, QCF: Down-Forward2 3000]
type = Explod
triggerAll = NumExplod(90030002)
trigger1 = command = "dfwd" && P2Dist x >= 0
trigger2 = command = "dback" && P2Dist x < 0
anim = 1
ID = 90030003 ;Down-Forward
removeTime = 10
pauseMoveTime = 10
superMoveTime = 10
ignoreHitPause = 1


The following is an example of games that use Capcom's air rotation system. See the 1st post for details
Code:
;---------------------------------------------------
[State -2, QCB: Down 1050]
type = Explod
triggerAll = !NumExplod(90010502)
trigger1 = command = "down" || command = "rlsdown"
anim = 1
ID = 90010502 ;Down
removeTime = 10
pauseMoveTime = 10
superMoveTime = 10
ignoreHitPause = 1
 
[State -2, QCB: Down-Back 1050]
type = Explod
triggerAll = !NumExplod(90010501)
triggerAll = NumExplod(90010502)
trigger1 = command = "dback"
anim = 1
ID = 90010501 ;Down-Back
removeTime = 10
pauseMoveTime = 10
superMoveTime = 10
ignoreHitPause = 1

[State -2, RemoveExplod]
type = RemoveExplod
trigger1 = NumExplod(90010501)
id = 90010502
ignoreHitPause = 1

[State -2, QCB: Back 1050]
type = Explod
triggerAll = !NumExplod(90010504)
triggerAll = NumExplod(90010501)
trigger1 = command = "back"
anim = 1
ID = 90010504  ;Back
removeTime = 10
pauseMoveTime = 10
superMoveTime = 10
ignoreHitPause = 1

[State -2, RemoveExplod]
type = RemoveExplod
trigger1 = NumExplod(90010504)
id = 90010501
ignoreHitPause = 1

The following is an example of games that use Capcom's air rotation system. See the 1st post for details
Code:
;---------------------------------------------------
[State -2, QCB: Down2 3050]
type = Explod
trigger1 = !NumExplod(90030502)
trigger1 = NumExplod(90010504)
trigger1 = command = "down" || command = "rlsdown"
trigger1 = command != "back" && command != "rlsback"
trigger1 = command != "fwd" && command != "rlsfwd"
anim = 1
ID = 90030502 ;Down
removeTime = 10
pauseMoveTime = 10
superMoveTime = 10
ignoreHitPause = 1

[State -2, RemoveExplod]
type = RemoveExplod
trigger1 = NumExplod(90030502)
id = 90010504
ignoreHitPause = 1
 
[State -2, QCB: Down-Back2 3050]
type = Explod
triggerAll = NumExplod(90030502)
trigger1 = command = "dback"
anim = 1
ID = 90030501 ;Down-Back
removeTime = 10
pauseMoveTime = 10
superMoveTime = 10
ignoreHitPause = 1

The following is an example of games that use Capcom's air rotation system. See the 1st post for details
Code:
;---------------------------------------------------
[State -2, QCF: Down 1040]
type = Explod
triggerAll = !NumExplod(90010402)
trigger1 = command = "down" || command = "rlsdown"
anim = 1
ID = 90010402 ;Down
removeTime = 10
pauseMoveTime = 10
superMoveTime = 10
ignoreHitPause = 1
 
[State -2, QCF: Down-Forward 1040]
type = Explod
triggerAll = !NumExplod(90010403)
triggerAll = NumExplod(90010402)
trigger1 = command = "dfwd"
anim = 1
ID = 90010403 ;Down-Forward
removeTime = 10
pauseMoveTime = 10
superMoveTime = 10
ignoreHitPause = 1

[State -2, RemoveExplod]
type = RemoveExplod
trigger1 = NumExplod(90010403)
id = 90010402
ignoreHitPause = 1

[State -2, QCF: Forward 1040]
type = Explod
triggerAll = !NumExplod(90010406)
triggerAll = NumExplod(90010403)
trigger1 = command = "fwd"
anim = 1
ID = 90010406 ;Forward
removeTime = 10
pauseMoveTime = 10
superMoveTime = 10
ignoreHitPause = 1

[State -2, RemoveExplod]
type = RemoveExplod
trigger1 = NumExplod(90010406)
id = 90010403
ignoreHitPause = 1

The following is an example of games that use Capcom's air rotation system. See the 1st post for details
Code:
;---------------------------------------------------
[State -2, QCF: Down2 3040]
type = Explod
trigger1 = !NumExplod(90030402)
trigger1 = NumExplod(90010406)
trigger1 = command = "down" || command = "rlsdown"
trigger1 = command != "fwd" && command != "rlsfwd"
trigger1 = command != "back" && command != "rlsback"
anim = 1
ID = 90030402 ;Down
removeTime = 10
pauseMoveTime = 10
superMoveTime = 10
ignoreHitPause = 1

[State -2, RemoveExplod]
type = RemoveExplod
trigger1 = NumExplod(90030402)
id = 90010406
ignoreHitPause = 1
 
[State -2, QCF: Down-Forward2 3040]
type = Explod
triggerAll = NumExplod(90030402)
trigger1 = command = "dfwd"
anim = 1
ID = 90030403 ;Down-Forward
removeTime = 10
pauseMoveTime = 10
superMoveTime = 10
ignoreHitPause = 1


Code:
;---------------------------------------------------
[State -2, F,D,DF: Forward 1020]
type = Explod
triggerAll = !NumExplod(90010206)
trigger1 = (command = "fwd" && P2Dist x >= 0) || (command = "rlsfwd" && P2Dist x >= 0)
trigger2 = (command = "back" && P2Dist x < 0) || (command = "rlsback" && P2Dist x < 0)
anim = 1
ID = 90010206 ;Forward
removeTime = 10
pauseMoveTime = 10
superMoveTime = 10
ignoreHitPause = 1

[State -2, F,D,DF: Down 1020]
type = Explod
triggerAll = !NumExplod(90010202)
triggerAll = NumExplod(90010206)
trigger1 = command = "down" || command = "rlsdown"
trigger1 = command != "fwd" && command != "rlsfwd"
trigger1 = command != "back" && command != "rlsback"
anim = 1
ID = 90010202 ;Down
removeTime = 10
pauseMoveTime = 10
superMoveTime = 10
ignoreHitPause = 1

[State -2, RemoveExplod]
type = RemoveExplod
trigger1 = NumExplod(90010202)
id = 90010206
ignoreHitPause = 1
 
[State -2, F,D,DF: Down-Forward 1020]
type = Explod
triggerAll = !NumExplod(90010203)
triggerAll = NumExplod(90010202)
trigger1 = command = "dfwd" && P2Dist x >= 0
trigger2 = command = "dback" && P2Dist x < 0
anim = 1
ID = 90010203; Down-Forward
removeTime = 10
pauseMoveTime = 10
superMoveTime = 10
ignoreHitPause = 1

Code:
;---------------------------------------------------
[State -2, F,F: Forward 0]
type = Explod
triggerAll = !NumExplod(90000006)
trigger1 = (command = "fwd" && P2Dist x >= 0) || (command = "back" && P2Dist x < 0)
trigger1 = command != "down" || command != "rlsdown"
anim = 1
ID = 90000006 ;Forward
removeTime = 5
pauseMoveTime = 5
superMoveTime = 5
ignoreHitPause = 1

[State -2, F,F: Neutral 0]
type = Explod
triggerAll = !NumExplod(90000005)
triggerAll = NumExplod(90000006)
trigger1 = (command = "rlsfwd" && P2Dist x >= 0) || (command = "rlsback" && P2Dist x < 0)
anim = 1
ID = 90000005 ;Neutral
removeTime = 5
pauseMoveTime = 5
superMoveTime = 5
ignoreHitPause = 1

[State -2, F,F: Forward 0]
type = Explod
triggerAll = !NumExplod(90000016)
triggerAll = NumExplod(90000006)
triggerAll = NumExplod(90000005)
trigger1 = (command = "fwd" && P2Dist x >= 0) || (command = "back" && P2Dist x < 0)
trigger1 = command != "down" || command != "rlsdown"
anim = 1
ID = 90000016 ;Forward
removeTime = 5
pauseMoveTime = 5
superMoveTime = 5
ignoreHitPause = 1

[State -2, RemoveExplod]
type = RemoveExplod
trigger1 = NumExplod(90000016)
id = 90000006
ignoreHitPause = 1
[State -2, RemoveExplod]
type = RemoveExplod
trigger1 = NumExplod(90000016)
id = 90000005
ignoreHitPause = 1

Code:
;---------------------------------------------------
[State -2, B,B: Back 10]
type = Explod
triggerAll = !NumExplod(90000104)
trigger1 = (command = "back" && P2Dist x >= 0) || (command = "fwd" && P2Dist x < 0)
trigger1 = command != "down" || command != "rlsdown"
anim = 1
ID = 90000104 ;Back
removeTime = 5
pauseMoveTime = 5
superMoveTime = 5
ignoreHitPause = 1

[State -2, B,B: Neutral 10]
type = Explod
triggerAll = !NumExplod(90000105)
triggerAll = NumExplod(90000104)
trigger1 = (command = "rlsback" && P2Dist x >= 0) || (command = "rlsfwd" && P2Dist x < 0)
anim = 1
ID = 90000105 ;Neutral
removeTime = 5
pauseMoveTime = 5
superMoveTime = 5
ignoreHitPause = 1

[State -2, B,B: Back 10]
type = Explod
triggerAll = !NumExplod(90000114)
triggerAll = NumExplod(90000104)
triggerAll = NumExplod(90000105)
trigger1 = (command = "back" && P2Dist x >= 0) || (command = "fwd" && P2Dist x < 0)
trigger1 = command != "down" || command != "rlsdown"
anim = 1
ID = 90000114 ;Back
removeTime = 5
pauseMoveTime = 5
superMoveTime = 5
ignoreHitPause = 1

[State -2, RemoveExplod]
type = RemoveExplod
trigger1 = NumExplod(90000114)
id = 90000104
ignoreHitPause = 1
[State -2, RemoveExplod]
type = RemoveExplod
trigger1 = NumExplod(90000114)
id = 90000105
ignoreHitPause = 1

[State -2, RemoveExplod]
type = RemoveExplod
trigger1 = NumExplod(90000016)
id = 90000006
ignoreHitPause = 1
[State -2, RemoveExplod]
type = RemoveExplod
trigger1 = NumExplod(90000016)
id = 90000105
ignoreHitPause = 1

Code:
;---------------------------------------------------
;---------------------------------------------------
[State -2, B,B: Back 10]
type = Explod
triggerAll = !NumExplod(90000104)
trigger1 = (command = "back" && P2Dist x >= 0) || (command = "fwd" && P2Dist x < 0)
trigger1 = command != "down" || command != "rlsdown"
anim = 1
ID = 90000104 ;Back
removeTime = 5
pauseMoveTime = 5
superMoveTime = 5
ignoreHitPause = 1

[State -2, B,B: Neutral 10]
type = Explod
triggerAll = !NumExplod(90000105)
triggerAll = NumExplod(90000104)
trigger1 = (command = "rlsback" && P2Dist x >= 0) || (command = "rlsfwd" && P2Dist x < 0)
anim = 1
ID = 90000105 ;Neutral
removeTime = 5
pauseMoveTime = 5
superMoveTime = 5
ignoreHitPause = 1

[State -2, B,B: Back 10]
type = Explod
triggerAll = !NumExplod(90000114)
triggerAll = NumExplod(90000104)
triggerAll = NumExplod(90000105)
trigger1 = (command = "back" && P2Dist x >= 0) || (command = "fwd" && P2Dist x < 0)
trigger1 = command != "down" || command != "rlsdown"
anim = 1
ID = 90000114 ;Back
removeTime = 5
pauseMoveTime = 5
superMoveTime = 5
ignoreHitPause = 1

[State -2, RemoveExplod]
type = RemoveExplod
trigger1 = NumExplod(90000114)
id = 90000104
ignoreHitPause = 1
[State -2, RemoveExplod]
type = RemoveExplod
trigger1 = NumExplod(90000114)
trigger1 = command != "down" || command != "rlsdown"
id = 90000105
ignoreHitPause = 1

Title: Re: New Explod based Buffer System
Post by: Memo on June 23, 2017, 09:51:57 am
Hopefully I can figure this out tonight, I was gonna release 2 updated
Chars but I really want to add a command buffer system. Thanks!
Title: Re: New Explod based Buffer System
Post by: Odb718 on June 23, 2017, 10:04:31 am
JNP, can you go back over the examples and comment what explods are what?
Like
trigger1 = NumExplod(90010104)
Just looking at it, I've no clue. So when reading this I have to scroll up or down to find out what spawns the 90010104 explod.
Please comment on what
trigger1 = !NumExplod(90030102)
actually means. Like it means you're not holding a direction or what?

Because I'm trying to "read" [State -2, QCB: Down2 3010]
and I read it like,
If you're holding back, and press down, spawn the explod, Then if you hold DF, or DB, kill the explod for down and spawn the DB explod.
But I dont get how Back, Down, Downback = QCB??
Isn't that a Dragon Punch?

----
I'm also having trouble figuring out  your Back-Back.
Code:
;---------------------------------------------------
[State -2, B,B: Back 10]
type = Explod
triggerAll = !NumExplod(90000104)
trigger1 = (command = "back" && P2Dist x >= 0) || (command = "fwd" && P2Dist x < 0)
trigger1 = command = "down" || command != "rlsdown"
So Press DownBack. Why not just back?
Title: Re: New Explod based Buffer System
Post by: Memo on June 23, 2017, 10:28:30 am
Got it working perfectly so far with shinkuu hadoken command
had to figure out a couple things like how to set the cancel triggers
But it was easy by looking at the code.

Ill be sure to credit you and JMM thanks again this was easier than
Vans system I never got his to work but yours I did in less than 10min
Title: Re: New Explod based Buffer System
Post by: JustNoPoint on June 23, 2017, 02:03:35 pm
For the dash back I missed an != on the down press
my bad

The reason I didn't add forward at the end of QCFx2 is because many games use this shortcut. You don't have to actually go all the way to forward on the 2nd rotation

I'll edit the posts with more notes and fixes soon. But if you want to know what direction to use the last digit in explod is numpad directions.

236 is qcf

But I'll still add a comment :)

Memo I'm glad you like it! Have fun and report any bugs!
Title: Re: New Explod based Buffer System
Post by: JustNoPoint on June 23, 2017, 03:34:08 pm
Okay updated. Updated dash. Added more info to the first post. I added comments next to each explod ID. And I gave an example of a Capcom based QCF in the air. Which would be different from the current system that uses the SNK method.

Basically in Capcom games the rotations do NOT flip until you land

@memo: be sure to update your dash code and read about capcom air specials
Title: Re: New Explod based Buffer System
Post by: Memo on June 23, 2017, 04:35:17 pm
My Ryu has a ton of command shortcuts, I'm wondering if I can do it with
This system, to add new commands would I need to create new numbered explode?
Title: Re: New Explod based Buffer System
Post by: JustNoPoint on June 23, 2017, 04:40:15 pm
Give an example of a shortcut
Title: Re: New Explod based Buffer System
Post by: Memo on June 23, 2017, 04:42:31 pm
QCF/ regular hadoken into

D,DF, X
DB,D,DF, X
DB,D,DF,F, X
DF,F, X

For shoryuken I have one i like that you
Can do from a crouch

DF,D,DF, X

EXAMPLES
Title: Re: New Explod based Buffer System
Post by: JustNoPoint on June 23, 2017, 06:11:49 pm
The only thing you need to change is remove the removeexplod for the 1st DF command from qcf. You can do all the shortcuts of those commands already with this. In the old method the command would have looked like this ~D,DF

In command you'd make the trigger numexplod(90010002) and not 90010006

You wouldn't have had to put the alt commands.
Title: Re: New Explod based Buffer System
Post by: Odb718 on June 23, 2017, 06:36:13 pm
Memo, are you giving the player extra tics for the ones with 4 inputs vs the ones with 2? The fact that they have D,DF in them would mean all of them should/would fire off with just those inputs because of the top command.
The DF,F would need it's own set I imagine.

I'm going to have to go over this system when I get the time and compare it to my Sagat's system. I'm not sure if it'll help with the wrong-way rolls. I still get them once in ever 50 or so. But I think it has more to do with 1vs2 than anything.
Have you tested this system in 2v2?
Title: Re: New Explod based Buffer System
Post by: JustNoPoint on June 23, 2017, 07:21:16 pm
Yes, it seems to work fine. It triggers against the closest opponent you're facing
Title: Re: New Explod based Buffer System
Post by: Memo on June 23, 2017, 07:49:14 pm
I test more once I'm off work and let you know what's up
Title: Re: New Explod based Buffer System
Post by: sluigi123 on June 24, 2017, 12:08:15 am
You've got my attention. I've got to look into this when I get the chance.
Title: Re: New Explod based Buffer System
Post by: Jango on June 24, 2017, 12:51:56 am
I'm gonna try adapt Pupa over to this system for a test, and if that works out, I'll try put Satan in it. Y'know, for variety sake.
Title: Re: New Explod based Buffer System
Post by: JustNoPoint on June 24, 2017, 01:14:18 am
Let me know if there are certain commands you'd like me to help convert. I was considering applying it to Gohan then presenting it to the team if it turns out well. Would you prefer waiting for me to be a guinea pig? :p
Title: Re: New Explod based Buffer System
Post by: Jango on June 24, 2017, 01:15:49 am
Whichevs. The main reason why I'm doing Pupa first is because she has fewer commands to work with. Mr. Satan is going to be FUN in that regard.

So I guess the answer is probably "if I don't get to Satan in a timely manner, yes."
Title: Re: New Explod based Buffer System
Post by: Memo on June 28, 2017, 02:39:13 am
Yo what up, man I found a bug(I kinda like it tho lol)this buffer
System gives you unlimited negative edge time, you can hold back,
Hold X, forever..., qcf release x boom, hadouken!

I tested it on kfm and my ryu, sagat chars I updated with it.
I like it but it should have restrictions, maybe 10 ticks holding
A direction before the command input turns idle, is it possible?

Title: Re: New Explod based Buffer System
Post by: JustNoPoint on June 28, 2017, 02:53:52 am
There's a pretty big update coming that should address this and some other things. This is still a wip and me and jmm are still discovering ways to improve and make this system more accurate! Thank you for the feedback! Be sure to tell us anything else you find!

How are you enjoying it overall?

Edit: I forgot! Me and JMM talked about this before we released the template. I was certain you couldn't hold punch for super long then rotate and release. He said you could. I just checked and he's right. This isn't a bug @memo:

Check it in SF. I tried sf4&5. MUGEN has made us think incorrectly and learn bad habits! MUGEN is terrible!!!
Title: Re: New Explod based Buffer System
Post by: Memo on June 28, 2017, 05:51:09 am
I like it, it fixes the cmd bug and its super easy to put it place.
I have some stuff to say thou, I change the order of commands
In the cns-2 code you posted to give more priority to shoryu
Inputs because they feel a bit strick to pull of at the moment.
It doesn't make a huge difference but if its possible to make it
Easier that would be nice.

And for some reason if I use this templates run commands they work
Weird, you dash if you push B, F or F, B quick enough instead of just
F, F OR B, B
Title: Re: New Explod based Buffer System
Post by: JustNoPoint on June 28, 2017, 09:27:26 am
How did you change it so that shoryu is easier? It should have more priority than qcf.

I've not seen the B,F = run bug and not sure how that'd happen. But I'll test it when I wake up. I suspect even if it is a thing our next update will fix it when we completely remove all directional inputs for explod based ones.

Also did you see my edit saying infinite negative edge isn't a bug? It's not a bug!
Title: Re: New Explod based Buffer System
Post by: Memo on June 28, 2017, 09:30:47 am
I moved it above the other commands, I saw the last post.
That run bug only happens on my side, kfm is fine on that.
Title: Re: New Explod based Buffer System
Post by: JustNoPoint on June 28, 2017, 09:41:52 am
It's already above the other commands in the .cmd. You moved it in -2 and it made it easier? Did it make qcfx2 harder? Actually if you want to help me and JMM make this better and talk shop feel free to join the Guild discord and we can work together

https://discord.gg/cf8qg75
Title: Re: New Explod based Buffer System
Post by: Memo on June 28, 2017, 10:07:51 am
What I ment by arranging the commands to make
shoryu easier, I arranged the explods order in -2.
I put them I this order

F,D,DF
B,D,DB
QCF
QCF2
QCB
QCB2
FF
BB

The QCF2 commands feel fine
Title: Re: New Explod based Buffer System
Post by: JustNoPoint on June 28, 2017, 02:17:15 pm
Okay, I didn't actually think that'd affect the priority of the moves. My limited testing they seemed fine but I'm not a hardcore KFM player :p I'll rearrange them for the update.
Title: Re: New Explod based Buffer System
Post by: Memo on June 28, 2017, 04:49:51 pm
I think the order makes them a little easier to pull
off, its not a big difference but its good to have
The command on top just incase.  It might all be
In my head lol.

After some playing last night I feel like the end command
For shoryu is the issue, you have to end it exactly with
DF or it wont work. Adding DF, F as a ender for the command
As well as DF would make it feel a little better.
Title: Re: New Explod based Buffer System
Post by: JustNoPoint on June 28, 2017, 05:48:28 pm
You don't have to end exactly on DF. You have to press P within 10 ticks of pressing DF. If you find this too strict increase the amount of time the DF explod lasts. And increase pausetime and supermovetime accordingly as well.
Title: Re: New Explod based Buffer System
Post by: Memo on June 28, 2017, 06:43:40 pm
Ok ill try that out
Title: Re: New Explod based Buffer System
Post by: Jmorphman on July 10, 2017, 05:03:13 pm
Me and JNP have drastically revamped this system, and now have a beta out (http://mugenguild.com/forum/msg.2361848) with the new, retooled system applied to one of my characters.

We're either gonna have to completely rewrite the first post in this thread, or else trash it and start a new one.
Title: Re: New Explod based Buffer System
Post by: JustNoPoint on July 10, 2017, 07:56:32 pm
I'll trash it when I make the new one
Title: Re: New Explod based Buffer System
Post by: inktrebuchet on July 28, 2017, 06:06:48 pm
I know I am late to this thread but is there any benefits/disadvantages to using this buffer system versus Vans buffer system?
Title: Re: New Explod based Buffer System
Post by: Jango on July 28, 2017, 07:07:05 pm
There's probably more for both, but here are the big ones:

The biggest benefit is that you don't have a one-tick delay in inputs since you aren't relying on a helper (which is why the one-tick delay happens)

The biggest disadvantage is that it's possible to exceed MUGEN's default explod limit with explod-heavy characters (which you can edit in mugen.cfg)
Title: Re: New Explod based Buffer System
Post by: inktrebuchet on July 28, 2017, 07:13:10 pm
Thanks for the quick reply!

I assumed the 1 tick delay was only when the helper is first spawned though. Meaning there would be no delay for Vans system since it's only spawned ones, not over and over. Am I wrong?
Title: Re: New Explod based Buffer System
Post by: Jmorphman on July 28, 2017, 07:15:28 pm
I just want to reiterate that everything in this thread is horribly outdated and that our buffering system has been majorly refined since this thread was started, so dramatically changed that we've written up an entirely new tutorial for it that is in its finishing stages. Reading back on this stuff just makes me wince. All these complicated solutions to get around hitpause when we should've just used a helper and read all the input from there! And no accounting for commands reversing mid-input! What fools we were a month ago!

But uh yeah, the explod based buffering system creates a bunch of (invisible) explods (potentially you could have around 40 from an individual character if their player randomly mashes buttons + directions), which is kind of a waste of resources, but MUGEN only gives us a limited amount of variables, so we gotta improvise! But from our (and others') beta testing, there doesn't seem to be any performance hiccups, so the impact is hopefully minimal.

The helper + variable based buffering method uses (the helper's own) variables to store inputs, so things are more compact and a lot less wasteful. Unfortunately however, passing that data back to the player takes one tick, so there is an unavoidable one-tick input delay when using this method.

So I guess it all comes down to which one of those drawbacks is least bothersome.

The biggest benefit is that you don't have a one-tick delay in inputs since you aren't relying on a helper (which is why the one-tick delay happens)
The (new) system does actually rely on a helper (with keyctrl = 1), but only to read inputs from, which makes it easy to know whether a given "forward / backward" input is a "left / right" input, and also makes it so hitpause doesn't screw anything up. And since all we're reading in from the helper is the input that helper is currently detecting, there's no lag!
Title: Re: New Explod based Buffer System
Post by: Jango on July 28, 2017, 07:21:58 pm
Man miss a few days and the whole world goes nuts (mutter, mutter, mutter...)

j/k good job
Title: Re: New Explod based Buffer System
Post by: inktrebuchet on July 28, 2017, 07:49:00 pm
Unfortunately however, passing that data back to the player takes one tick, so there is an unavoidable one-tick input delay when using this method.
I'm sorry but I'm not sure that is true. I really think you just lose 1 tick of time when spawning the helper, not when passing the data back to the play. Is there a way to check?

Nevermind, you are right!


Title: Re: New Explod based Buffer System
Post by: Jmorphman on July 28, 2017, 08:09:43 pm
You can have the player spawn an explod whenever a QCF is performed (or even just have it spawn when a single direction has been input), and have it so that one explod is created to the left of P1 when the buffering system tells the player that QCF has been input, and then have another explod created to the right of P1 that spawns when MUGEN's own command parser tells the player that QCF has been input. The left explod will be created one tick after the right one.
Title: Re: New Explod based Buffer System
Post by: JustNoPoint on August 03, 2017, 10:01:19 pm
http://mugenguild.com/forum/topics/fix-all-your-command-issues-explodsive-buffering-system-180772.0.html

The finished version of this system is complete!!! Please go to the proper thread and ignore the info in this one now. Woot
Title: Re: New Explod based Buffer System
Post by: WizzyWhipitWonderful on August 03, 2017, 10:50:25 pm
Is this like a striker system or something?

Im trying to understand here,
but im like a fat kid who belongs in the kitchen, but im stuck in the science lab...
Title: Re: New Explod based Buffer System
Post by: JustNoPoint on August 03, 2017, 11:29:07 pm
Click the link to go to the proper thread. Basically what this is about is fixing several giant flaws and bugs in MUGEN's command parser system.