PDA

View Full Version : FB Cancels need someone that scripts mk x



Disarch
11th January 19, 18:11
i playing mk x and scripting combos i kind of got a hang of it. but what im struggling with is cancels i and i know how to hold the fireball but i cant get it to run cancels to continue the combo any help is appreciated.

KS212
11th January 19, 22:03
The timing for a runcancel (non FB) and FB (for chars like Scorpion and Liu Kang) is ridiculously bullshit tight in terms of engine timing. Here's a sample of how you have to script the timings:

For purposes of teaching I have added in the button releases too, normally these can be omitted from the script but if you use Script Manipulator to convert to data, it will take all this out anyway.



//Fireball cancel
set_val(XB1_LEFT, 100);
wait(40);
set_val(XB1_LEFT, 0);
set_val(XB1_RIGHT, 100);
set_val(XB1_X, 100);
wait(50);
set_val(XB1_X, 100);
set_val(XB1_RIGHT, 0); //Perform left, right, 1, hold 1, release right
wait(500);
set_val(XB1_X, 100); //We are still HOLDING 1!
set_val(XB1_RIGHT, 100); //Double tap right begins here
wait(60);
set_val(XB1_X, 100);
set_val(XB1_RIGHT, 0); //Still holding 1! Release right
wait(50);
set_val(XB1_X, 100);
set_val(XB1_RIGHT, 100); //STILL holding 1!, tap Right again
wait(50);
set_val(XB1_X, 0);
set_val(XB1_RIGHT, 0); //Finally release 1 AND right at the same time, LK begins his dash movement, INSTANTLY pressing RT (block) to cancel the dash before it even begins
set_val(XB1_RT, 100); //Fireball cancel input block ends here
wait(50); <------ //Allowing a frigging TINY delay that is barely within human limitations so the engine doesn't choke on the next input
set_val(XB1_RT, 0); //Release RT (block), INSTANTLY pressing attack button so you don't even see the dash/run step... all you will see is LK going into fireball startup for a split sec
set_val(XB1_X, 100); //Follow up chain begins
wait(50);
set_val(XB1_X, 0);
wait(100);
set_val(XB1_X, 100);
wait(50);
set_val(XB1_X, 0);
wait(100);
set_val(XB1_A, 100);
wait(50);
set_val(XB1_A, 0);






As you can see the timing is complete bullshit. The only reason humans can actually execute this crap is because NRS' game engines allow you to BUFFER IT ALL well in advance, so ppl are effectively piano'ing the input from the start. If not for how NRS game engines works such input timings would simply be dropped if it was a game like SF or Tekken.

Disarch
11th January 19, 22:20
The timing for a runcancel (non FB) and FB (for chars like Scorpion and Liu Kang) is ridiculously bullshit tight in terms of engine timing. Here's a sample of how you have to script the timings:

For purposes of teaching I have added in the button releases too, normally these can be omitted from the script but if you use Script Manipulator to convert to data, it will take all this out anyway.



//Fireball cancel
set_val(XB1_LEFT, 100);
wait(40);
set_val(XB1_LEFT, 0);
set_val(XB1_RIGHT, 100);
set_val(XB1_X, 100);
wait(50);
set_val(XB1_X, 100);
set_val(XB1_RIGHT, 0); //Perform left, right, 1, hold 1, release right
wait(500);
set_val(XB1_X, 100); //We are still HOLDING 1!
set_val(XB1_RIGHT, 100); //Double tap right begins here
wait(60);
set_val(XB1_X, 100);
set_val(XB1_RIGHT, 0); //Still holding 1! Release right
wait(50);
set_val(XB1_X, 100);
set_val(XB1_RIGHT, 100); //STILL holding 1!, tap Right again
wait(50);
set_val(XB1_X, 0);
set_val(XB1_RIGHT, 0); //Finally release 1 AND right at the same time, LK begins his dash movement, INSTANTLY pressing RT (block) to cancel the dash before it even begins
set_val(XB1_RT, 100); //Fireball cancel input block ends here
wait(50); <------ //Allowing a frigging TINY delay that is barely within human limitations so the engine doesn't choke on the next input
set_val(XB1_RT, 0); //Release RT (block), INSTANTLY pressing attack button so you don't even see the dash/run step... all you will see is LK going into fireball startup for a split sec
set_val(XB1_X, 100); //Follow up chain begins
wait(50);
set_val(XB1_X, 0);
wait(100);
set_val(XB1_X, 100);
wait(50);
set_val(XB1_X, 0);
wait(100);
set_val(XB1_A, 100);
wait(50);
set_val(XB1_A, 0);






As you can see the timing is complete bullshit. The only reason humans can actually execute this crap is because NRS' game engines allow you to BUFFER IT ALL well in advance, so ppl are effectively piano'ing the input from the start. If not for how NRS game engines works such input timings would simply be dropped if it was a game like SF or Tekken. okay i sort of get it but i was looking at other scripts and i want to see if you can explain it a little better i just posted my first script" waiting for it to be accepted by moderators i got to cancels to work but i still want to understand it better here is a bit of the cancel i dont understand why there is extra squares they dont pop up when doing the combos but idk its just a bit confusing 1,BACK,100,7,
0,2,
1,FORWARD,100,
4,
0,17,
1,SQUARE,100,
13,
2,FORWARD,100,
SQUARE,100,
4,
1,SQUARE,100,
4,
3,SQUARE,100,
FORWARD,100,
R2,100,
3,
0,2,

KS212
11th January 19, 22:54
Look at my code, the 'extra squares' are because you are still holding square in the same way I am. Totally normal. If those weren't there, you are not holding the button like you have to.

When scripting you still must think of how you can write down an input as if you were pressing the button. With how the cronus device handles button press vs hold, you must repeatedly put in the set_val(PS4_SQUARE ,100); every time the input changes for it to be 'held' otherwise after two new inputs it will consider the button 'released'.

Disarch
11th January 19, 23:05
Look at my code, the 'extra squares' are because you are still holding square in the same way I am. Totally normal. If those weren't there, you are not holding the button like you have to.

When scripting you still must think of how you can write down an input as if you were pressing the button. With how the cronus device handles button press vs hold, you must repeatedly put in the set_val(PS4_SQUARE ,100); every time the input changes for it to be 'held' otherwise after two new inputs it will consider the button 'released'.
okay i sorta get it i figured you didn't need the square considering for timings we had it hold a certain button exm; 40,0,110

KS212
12th January 19, 00:51
I'm not sure how you do your scripting... I write everything purely by hand. All my scripts are pure GPC code first, then I use script manipulator to convert to data once its ready for 'production'.

But regardless of how you script, button holds still require you to put in the button repeatedly to tell the device that you are in fact holding it.

Disarch
12th January 19, 01:14
I'm not sure how you do your scripting... I write everything purely by hand. All my scripts are pure GPC code first, then I use script manipulator to convert to data once its ready for 'production'.

But regardless of how you script, button holds still require you to put in the button repeatedly to tell the device that you are in fact holding it.i dont use script manipulator. i just manually write everything but i figured it out. thank you for the help.