Please help Not working in game

GPC2 script programming for Titan Two. Code examples, questions, requests.

Please help Not working in game

Postby Warsai » Mon Jun 24, 2019 4:05 pm

Hi There,

I try to convert this , in console tuner ther is no error but in game is not working, can you please help me found out the problem

Code: Select all
#pragma METAINFO("PROVA PAD ALTRO.gpc", 1, 0, "Buffy's GPC Converter v0.25r2")
#include <titanone.gph>
 
#define XB1_PR1 XB1_P1
#define XB1_PR2 XB1_P2
#define XB1_PL1 XB1_P3
#define XB1_PL2 XB1_P4
 
 
int run_combo = 0;
int yachse;
int xachse;
int nachRechts;
int firstpress;
int XB1_LB_oben;
int XB1_LB_unten;
int XB1_LB_links;
int XB1_LB_rechts;
int tap;
int OnOffStick;
int shootpower = 220;
int tempshotpower = 220;
int finesseshootpower = 210;
int lowdrivenshootpower = 200;
int TimedFinesseWait = 185;
int TimedFinesseShotpower = 210;
int TimedLowDrivenFinesseShotpower = 290;
int TimedLowDrivenWait = 440;
int TimeForDoubleTap = 300;
 
main {
    if (get_val(XB1_RB) && get_val(XB1_LB)) {
        firstpress = FALSE;
    }
    if (event_press(XB1_LB) && !firstpress) {
        combo_run(c_getsetDoppelklick);
        firstpress = TRUE;
    }
    else if (event_press(XB1_LB) && firstpress) {
        if (tap) {
            OnOffStick =! OnOffStick;
        }
        else {
            firstpress = FALSE;
        }
    }
    if (OnOffStick) {
        if (get_val(XB1_RY) <- 72 && !XB1_LB_oben) {
            XB1_LB_oben = 1;
            nachRechts = 0;
            f_RStickBlocks();
            f_direction();
            combo_run(c_Tornado);
        }
        if (get_val(XB1_RX) > 72 && !XB1_LB_rechts) {
            XB1_LB_rechts = 1;
            nachRechts = 1;
            f_RStickBlocks();
            f_direction();
            combo_run(c_Spin);
        }
        if (get_val(XB1_RX) <- 72 && !XB1_LB_links) {
            XB1_LB_links = 1;
            f_RStickBlocks();
            combo_run(c_FakeShot);
        }
        if (get_val(XB1_RY) > 72 && !XB1_LB_unten) {
            XB1_LB_unten = 1;
            f_RStickBlocks();
            f_GetLXY();
            combo_run(c_DragBack);
        }
        if (abs(get_val(XB1_RY)) < 20 && abs(get_val(XB1_RX)) < 20) {
            XB1_LB_oben = 0;
            XB1_LB_unten = 0;
            XB1_LB_links = 0;
            XB1_LB_rechts = 0;
        }
        if (event_press(XB1_PL1)) {
            nachRechts = 0;
            f_direction();
            combo_run(c_LaCroqueta);
        }
        if (event_press(XB1_PL2)) {
            nachRechts = 0;
            f_direction();
            combo_run(c_ThreeTouchRoulette);
        }
        if (event_press(XB1_PR1)) {
            nachRechts = 1;
            f_direction();
            combo_run(c_LaCroqueta);
        }
        if (event_press(XB1_PR2)) {
            f_GetLXY();
            combo_run(c_heel2heel);
        }
    }
}
 
 
combo c_Tornado {
    combo_run(c_OptionRB);
    set_val(XB1_RY, get_val(XB1_LY));
    set_val(XB1_RX, get_val(XB1_LX));
    wait(60);
    wait(30);
    set_val(XB1_RY, xachse);
    set_val(XB1_RX, yachse);
    wait(60);
    yachse = 0;
    xachse = 0;
}
 
combo c_Spin {
    set_val(XB1_RX, inv(get_val(XB1_LX)));
    set_val(XB1_RY, inv(get_val(XB1_LY)));
    wait(40);
    wait(60);
    set_val(XB1_RX, yachse);
    set_val(XB1_RY, xachse);
    wait(40);
    wait(60);
    yachse = 0;
    xachse = 0;
}
 
combo c_FakeShot {
    wait(200);
    combo_run(c_OptionLB);
    set_val(XB1_B, 100);
    wait(40);
    set_val(XB1_A, 100);
    wait(40);
}
 
combo c_DragBack {
    set_val(XB1_RB, 100);
    set_val(XB1_LX, inv(xachse));
    set_val(XB1_LY, inv(yachse));
    wait(800);
}
 
combo c_OptionLB {
    set_val(XB1_LB, 100);
    wait(350);
}
 
combo c_OptionRB {
    set_val(XB1_RB, 100);
    wait(350);
}
 
combo c_OptionLT {
    set_val(XB1_LT, 100);
    wait(350);
}
 
/* combo c_block_Btn {
    set_val(XB1_RB, 0);
    set_val(XB1_LB, 0);
    wait(300);
}
*/

 
 
 
/* combo c_block_Btn2 {
    set_val(XB1_RB, 0);
    wait(300);
}
*/

 
 combo c_getsetDoppelklick {
    firstpress = TRUE;
    wait(TimeForDoubleTap);
    firstpress = FALSE;
}
 
/* combo c_getsetDoppelklick (XB1_LB) {
    tap = TRUE;
    wait(TimeForDoubleTap);
    tap = FALSE;
    firstpress = FALSE;
}
*/

 
 combo c_LaCroqueta {
    set_val(XB1_LB, 100);
    set_val(XB1_RY, xachse);
    set_val(XB1_RX, yachse);
    wait(500);
    yachse = 0;
    xachse = 0;
}
 
combo c_ThreeTouchRoulette {
    combo_run(c_OptionLT);
    set_val(XB1_RX, inv(get_val(XB1_LX)));
    set_val(XB1_RY, inv(get_val(XB1_LY)));
    wait(40);
    wait(60);
    set_val(XB1_RX, yachse);
    set_val(XB1_RY, xachse);
    wait(40);
    wait(60);
    yachse = 0;
    xachse = 0;
}
 
combo c_heel2heel {
    set_val(XB1_RX, xachse);
    set_val(XB1_RY, yachse);
    wait(40);
    wait(60);
    set_val(XB1_RX, inv(xachse));
    set_val(XB1_RY, inv(yachse));
    wait(40);
    yachse = 0;
    xachse = 0;
}
 
 
function f_RStickBlocks() {
    block(XB1_RX, 100);
    block(XB1_RY, 100);
    set_val(XB1_RX, 0);
    set_val(XB1_RY, 0);
    block(XB1_RT, 800);
    set_val(XB1_RT, 0);
}
 
function f_GetLXY() {
    xachse = get_val(XB1_LX);
    yachse = get_val(XB1_LY);
}
 
function f_direction() {
    xachse = get_val(XB1_LX);
    yachse = get_val(XB1_LY);
    if ((get_val(XB1_LX) >= 0) && (get_val(XB1_LY) >= 0)) {
        if (nachRechts > 0) {
            yachse = inv(yachse);
        }
        else {
            xachse = inv(xachse);
        }
    }
    if ((get_val(XB1_LX) <= 0) && (get_val(XB1_LY) >= 0)) {
        if (nachRechts > 0) {
            yachse = inv(yachse);
        }
        else {
            xachse = inv(xachse);
        }
    }
    if ((get_val(XB1_LX) <= 0) && (get_val(XB1_LY) <= 0)) {
        if (nachRechts > 0) {
            yachse = inv(yachse);
        }
        else {
            xachse = inv(xachse);
        }
    }
    if ((get_val(XB1_LX) >= 0) && (get_val(XB1_LY) <= 0)) {
        if (nachRechts > 0) {
            yachse = inv(yachse);
        }
        else {
            xachse = inv(xachse);
        }
    }
}
 
 
 
User avatar
Warsai
Staff Sergeant
Staff Sergeant
 
Posts: 12
Joined: Thu Jun 20, 2019 2:24 am
Location: LONDON

Re: Please help Not working in game

Postby Scachi » Mon Jun 24, 2019 4:56 pm

It looks like this code isn't changing the value of "tap" and "OnOffStick" anywhere and this will keep the whole move combo section from running.

You can try if it works when you change line 19:
Code: Select all
int tap;

to
Code: Select all
int tap=1;
User avatar
Scachi
Brigadier General
Brigadier General
 
Posts: 3044
Joined: Wed May 11, 2016 6:25 am
Location: Germany

Re: Please help Not working in game

Postby Warsai » Mon Jun 24, 2019 5:43 pm

Thank you that seems to work gone test it properly now, for the moment i notice that there is a little delay on taking the command and sometimes even if i press is doing nothing..

The OnOff stick do i have to put something on that?
User avatar
Warsai
Staff Sergeant
Staff Sergeant
 
Posts: 12
Joined: Thu Jun 20, 2019 2:24 am
Location: LONDON

Re: Please help Not working in game

Postby Scachi » Mon Jun 24, 2019 6:09 pm

Warsai wrote:Thank you that seems to work gone test it properly now, for the moment i notice that there is a little delay on taking the command and sometimes even if i press is doing nothing..

The OnOff stick do i have to put something on that?

No idea. I don't play the game so I don't know what happens in game and how to change the code to work for the game mechanics correctly.
The combos will not be able to run when you press LB and RB at the same time in this code or when the time between the lb press and the movemnt of the stick is too long.



You can give this one a try. I have the Tap removed and the OnOffStick gets reset now.
If it isn't working you have to wait for someone else to join in who knows how the game works and how to fix the script correctly.

Code: Select all
#pragma METAINFO("PROVA PAD ALTRO.gpc", 1, 0, "Buffy's GPC Converter v0.25r2")
#include <titanone.gph>
 
#define XB1_PR1 XB1_P1
#define XB1_PR2 XB1_P2
#define XB1_PL1 XB1_P3
#define XB1_PL2 XB1_P4
 
 
int run_combo = 0;
int yachse;
int xachse;
int nachRechts;
int firstpress;
int XB1_LB_oben;
int XB1_LB_unten;
int XB1_LB_links;
int XB1_LB_rechts;
//int tap=1;
int OnOffStick;
int shootpower = 220;
int tempshotpower = 220;
int finesseshootpower = 210;
int lowdrivenshootpower = 200;
int TimedFinesseWait = 185;
int TimedFinesseShotpower = 210;
int TimedLowDrivenFinesseShotpower = 290;
int TimedLowDrivenWait = 440;
int TimeForDoubleTap = 300;
 
main {
    if (get_val(XB1_RB) && get_val(XB1_LB)) {
        firstpress = FALSE;
    }
    if (event_press(XB1_LB) && !firstpress) {
        combo_run(c_getsetDoppelklick);
        firstpress = TRUE;
                OnOffStick = FALSE;
    }
    else if (event_press(XB1_LB) && firstpress) {
        OnOffStick = TRUE;
    }
    if (OnOffStick) {
        if (get_val(XB1_RY) <- 72 && !XB1_LB_oben) {
            XB1_LB_oben = 1;
            nachRechts = 0;
            f_RStickBlocks();
            f_direction();
            combo_run(c_Tornado);
        }
        if (get_val(XB1_RX) > 72 && !XB1_LB_rechts) {
            XB1_LB_rechts = 1;
            nachRechts = 1;
            f_RStickBlocks();
            f_direction();
            combo_run(c_Spin);
        }
        if (get_val(XB1_RX) <- 72 && !XB1_LB_links) {
            XB1_LB_links = 1;
            f_RStickBlocks();
            combo_run(c_FakeShot);
        }
        if (get_val(XB1_RY) > 72 && !XB1_LB_unten) {
            XB1_LB_unten = 1;
            f_RStickBlocks();
            f_GetLXY();
            combo_run(c_DragBack);
        }
        if (abs(get_val(XB1_RY)) < 20 && abs(get_val(XB1_RX)) < 20) {
            XB1_LB_oben = 0;
            XB1_LB_unten = 0;
            XB1_LB_links = 0;
            XB1_LB_rechts = 0;
        }
        if (event_press(XB1_PL1)) {
            nachRechts = 0;
            f_direction();
            combo_run(c_LaCroqueta);
        }
        if (event_press(XB1_PL2)) {
            nachRechts = 0;
            f_direction();
            combo_run(c_ThreeTouchRoulette);
        }
        if (event_press(XB1_PR1)) {
            nachRechts = 1;
            f_direction();
            combo_run(c_LaCroqueta);
        }
        if (event_press(XB1_PR2)) {
            f_GetLXY();
            combo_run(c_heel2heel);
        }
    }
}
 
 
combo c_Tornado {
    combo_run(c_OptionRB);
    set_val(XB1_RY, get_val(XB1_LY));
    set_val(XB1_RX, get_val(XB1_LX));
    wait(60);
    wait(30);
    set_val(XB1_RY, xachse);
    set_val(XB1_RX, yachse);
    wait(60);
    yachse = 0;
    xachse = 0;
}
 
combo c_Spin {
    set_val(XB1_RX, inv(get_val(XB1_LX)));
    set_val(XB1_RY, inv(get_val(XB1_LY)));
    wait(40);
    wait(60);
    set_val(XB1_RX, yachse);
    set_val(XB1_RY, xachse);
    wait(40);
    wait(60);
    yachse = 0;
    xachse = 0;
}
 
combo c_FakeShot {
    wait(200);
    combo_run(c_OptionLB);
    set_val(XB1_B, 100);
    wait(40);
    set_val(XB1_A, 100);
    wait(40);
}
 
combo c_DragBack {
    set_val(XB1_RB, 100);
    set_val(XB1_LX, inv(xachse));
    set_val(XB1_LY, inv(yachse));
    wait(800);
}
 
combo c_OptionLB {
    set_val(XB1_LB, 100);
    wait(350);
}
 
combo c_OptionRB {
    set_val(XB1_RB, 100);
    wait(350);
}
 
combo c_OptionLT {
    set_val(XB1_LT, 100);
    wait(350);
}
 
/* combo c_block_Btn {
    set_val(XB1_RB, 0);
    set_val(XB1_LB, 0);
    wait(300);
}
*/

 
 
 
/* combo c_block_Btn2 {
    set_val(XB1_RB, 0);
    wait(300);
}
*/

 
 combo c_getsetDoppelklick {
    firstpress = TRUE;
    wait(TimeForDoubleTap);
    firstpress = FALSE;
}
 
/* combo c_getsetDoppelklick (XB1_LB) {
    tap = TRUE;
    wait(TimeForDoubleTap);
    tap = FALSE;
    firstpress = FALSE;
}
*/

 
 combo c_LaCroqueta {
    set_val(XB1_LB, 100);
    set_val(XB1_RY, xachse);
    set_val(XB1_RX, yachse);
    wait(500);
    yachse = 0;
    xachse = 0;
}
 
combo c_ThreeTouchRoulette {
    combo_run(c_OptionLT);
    set_val(XB1_RX, inv(get_val(XB1_LX)));
    set_val(XB1_RY, inv(get_val(XB1_LY)));
    wait(40);
    wait(60);
    set_val(XB1_RX, yachse);
    set_val(XB1_RY, xachse);
    wait(40);
    wait(60);
    yachse = 0;
    xachse = 0;
}
 
combo c_heel2heel {
    set_val(XB1_RX, xachse);
    set_val(XB1_RY, yachse);
    wait(40);
    wait(60);
    set_val(XB1_RX, inv(xachse));
    set_val(XB1_RY, inv(yachse));
    wait(40);
    yachse = 0;
    xachse = 0;
}
 
 
function f_RStickBlocks() {
    block(XB1_RX, 100);
    block(XB1_RY, 100);
    set_val(XB1_RX, 0);
    set_val(XB1_RY, 0);
    block(XB1_RT, 800);
    set_val(XB1_RT, 0);
}
 
function f_GetLXY() {
    xachse = get_val(XB1_LX);
    yachse = get_val(XB1_LY);
}
 
function f_direction() {
    xachse = get_val(XB1_LX);
    yachse = get_val(XB1_LY);
    if ((get_val(XB1_LX) >= 0) && (get_val(XB1_LY) >= 0)) {
        if (nachRechts > 0) {
            yachse = inv(yachse);
        }
        else {
            xachse = inv(xachse);
        }
    }
    if ((get_val(XB1_LX) <= 0) && (get_val(XB1_LY) >= 0)) {
        if (nachRechts > 0) {
            yachse = inv(yachse);
        }
        else {
            xachse = inv(xachse);
        }
    }
    if ((get_val(XB1_LX) <= 0) && (get_val(XB1_LY) <= 0)) {
        if (nachRechts > 0) {
            yachse = inv(yachse);
        }
        else {
            xachse = inv(xachse);
        }
    }
    if ((get_val(XB1_LX) >= 0) && (get_val(XB1_LY) <= 0)) {
        if (nachRechts > 0) {
            yachse = inv(yachse);
        }
        else {
            xachse = inv(xachse);
        }
    }
}
 
 
 
User avatar
Scachi
Brigadier General
Brigadier General
 
Posts: 3044
Joined: Wed May 11, 2016 6:25 am
Location: Germany

Re: Please help Not working in game

Postby Warsai » Mon Jun 24, 2019 10:32 pm

Hi ,
it seems that solved the problem, but now lol i have a small one, when i press the paddle pl1 and pl2 i do the skill but in the same time ps4 take a screenshot, what can i do to stop that?
User avatar
Warsai
Staff Sergeant
Staff Sergeant
 
Posts: 12
Joined: Thu Jun 20, 2019 2:24 am
Location: LONDON

Re: Please help Not working in game

Postby Scachi » Tue Jun 25, 2019 12:03 am

Only one of the paddles should trigger the screenshot on ps4.
Give this a try..I have added lines to always set the value of the paddles buttons to zero.
Code: Select all
#pragma METAINFO("PROVA PAD ALTRO.gpc", 1, 0, "Buffy's GPC Converter v0.25r2")
#include <titanone.gph>
 
#define XB1_PR1 XB1_P1
#define XB1_PR2 XB1_P2
#define XB1_PL1 XB1_P3
#define XB1_PL2 XB1_P4
 
 
int run_combo = 0;
int yachse;
int xachse;
int nachRechts;
int firstpress;
int XB1_LB_oben;
int XB1_LB_unten;
int XB1_LB_links;
int XB1_LB_rechts;
//int tap=1;
int OnOffStick;
int shootpower = 220;
int tempshotpower = 220;
int finesseshootpower = 210;
int lowdrivenshootpower = 200;
int TimedFinesseWait = 185;
int TimedFinesseShotpower = 210;
int TimedLowDrivenFinesseShotpower = 290;
int TimedLowDrivenWait = 440;
int TimeForDoubleTap = 300;
 
main {
    if (get_val(XB1_RB) && get_val(XB1_LB)) {
        firstpress = FALSE;
    }
    if (event_press(XB1_LB) && !firstpress) {
        combo_run(c_getsetDoppelklick);
        firstpress = TRUE;
                OnOffStick = FALSE;
    }
    else if (event_press(XB1_LB) && firstpress) {
        OnOffStick = TRUE;
    }
    if (OnOffStick) {
        if (get_val(XB1_RY) <- 72 && !XB1_LB_oben) {
            XB1_LB_oben = 1;
            nachRechts = 0;
            f_RStickBlocks();
            f_direction();
            combo_run(c_Tornado);
        }
        if (get_val(XB1_RX) > 72 && !XB1_LB_rechts) {
            XB1_LB_rechts = 1;
            nachRechts = 1;
            f_RStickBlocks();
            f_direction();
            combo_run(c_Spin);
        }
        if (get_val(XB1_RX) <- 72 && !XB1_LB_links) {
            XB1_LB_links = 1;
            f_RStickBlocks();
            combo_run(c_FakeShot);
        }
        if (get_val(XB1_RY) > 72 && !XB1_LB_unten) {
            XB1_LB_unten = 1;
            f_RStickBlocks();
            f_GetLXY();
            combo_run(c_DragBack);
        }
        if (abs(get_val(XB1_RY)) < 20 && abs(get_val(XB1_RX)) < 20) {
            XB1_LB_oben = 0;
            XB1_LB_unten = 0;
            XB1_LB_links = 0;
            XB1_LB_rechts = 0;
        }
        if (event_press(XB1_PL1)) {
            nachRechts = 0;
            f_direction();
            combo_run(c_LaCroqueta);
        }
        if (event_press(XB1_PL2)) {
            nachRechts = 0;
            f_direction();
            combo_run(c_ThreeTouchRoulette);
        }
        if (event_press(XB1_PR1)) {
            nachRechts = 1;
            f_direction();
            combo_run(c_LaCroqueta);
        }
        if (event_press(XB1_PR2)) {
            f_GetLXY();
            combo_run(c_heel2heel);
        }
    }
        set_val(XB1_PL1,0);set_val(XB1_PL2,0);
        set_val(XB1_PR1,0);set_val(XB1_PR2,0);
}
 
 
combo c_Tornado {
    combo_run(c_OptionRB);
    set_val(XB1_RY, get_val(XB1_LY));
    set_val(XB1_RX, get_val(XB1_LX));
    wait(60);
    wait(30);
    set_val(XB1_RY, xachse);
    set_val(XB1_RX, yachse);
    wait(60);
    yachse = 0;
    xachse = 0;
}
 
combo c_Spin {
    set_val(XB1_RX, inv(get_val(XB1_LX)));
    set_val(XB1_RY, inv(get_val(XB1_LY)));
    wait(40);
    wait(60);
    set_val(XB1_RX, yachse);
    set_val(XB1_RY, xachse);
    wait(40);
    wait(60);
    yachse = 0;
    xachse = 0;
}
 
combo c_FakeShot {
    wait(200);
    combo_run(c_OptionLB);
    set_val(XB1_B, 100);
    wait(40);
    set_val(XB1_A, 100);
    wait(40);
}
 
combo c_DragBack {
    set_val(XB1_RB, 100);
    set_val(XB1_LX, inv(xachse));
    set_val(XB1_LY, inv(yachse));
    wait(800);
}
 
combo c_OptionLB {
    set_val(XB1_LB, 100);
    wait(350);
}
 
combo c_OptionRB {
    set_val(XB1_RB, 100);
    wait(350);
}
 
combo c_OptionLT {
    set_val(XB1_LT, 100);
    wait(350);
}
 
/* combo c_block_Btn {
    set_val(XB1_RB, 0);
    set_val(XB1_LB, 0);
    wait(300);
}
*/

 
 
 
/* combo c_block_Btn2 {
    set_val(XB1_RB, 0);
    wait(300);
}
*/

 
 combo c_getsetDoppelklick {
    firstpress = TRUE;
    wait(TimeForDoubleTap);
    firstpress = FALSE;
}
 
/* combo c_getsetDoppelklick (XB1_LB) {
    tap = TRUE;
    wait(TimeForDoubleTap);
    tap = FALSE;
    firstpress = FALSE;
}
*/

 
 combo c_LaCroqueta {
    set_val(XB1_LB, 100);
    set_val(XB1_RY, xachse);
    set_val(XB1_RX, yachse);
    wait(500);
    yachse = 0;
    xachse = 0;
}
 
combo c_ThreeTouchRoulette {
    combo_run(c_OptionLT);
    set_val(XB1_RX, inv(get_val(XB1_LX)));
    set_val(XB1_RY, inv(get_val(XB1_LY)));
    wait(40);
    wait(60);
    set_val(XB1_RX, yachse);
    set_val(XB1_RY, xachse);
    wait(40);
    wait(60);
    yachse = 0;
    xachse = 0;
}
 
combo c_heel2heel {
    set_val(XB1_RX, xachse);
    set_val(XB1_RY, yachse);
    wait(40);
    wait(60);
    set_val(XB1_RX, inv(xachse));
    set_val(XB1_RY, inv(yachse));
    wait(40);
    yachse = 0;
    xachse = 0;
}
 
 
function f_RStickBlocks() {
    block(XB1_RX, 100);
    block(XB1_RY, 100);
    set_val(XB1_RX, 0);
    set_val(XB1_RY, 0);
    block(XB1_RT, 800);
    set_val(XB1_RT, 0);
}
 
function f_GetLXY() {
    xachse = get_val(XB1_LX);
    yachse = get_val(XB1_LY);
}
 
function f_direction() {
    xachse = get_val(XB1_LX);
    yachse = get_val(XB1_LY);
    if ((get_val(XB1_LX) >= 0) && (get_val(XB1_LY) >= 0)) {
        if (nachRechts > 0) {
            yachse = inv(yachse);
        }
        else {
            xachse = inv(xachse);
        }
    }
    if ((get_val(XB1_LX) <= 0) && (get_val(XB1_LY) >= 0)) {
        if (nachRechts > 0) {
            yachse = inv(yachse);
        }
        else {
            xachse = inv(xachse);
        }
    }
    if ((get_val(XB1_LX) <= 0) && (get_val(XB1_LY) <= 0)) {
        if (nachRechts > 0) {
            yachse = inv(yachse);
        }
        else {
            xachse = inv(xachse);
        }
    }
    if ((get_val(XB1_LX) >= 0) && (get_val(XB1_LY) <= 0)) {
        if (nachRechts > 0) {
            yachse = inv(yachse);
        }
        else {
            xachse = inv(xachse);
        }
    }
}
 
 
 
User avatar
Scachi
Brigadier General
Brigadier General
 
Posts: 3044
Joined: Wed May 11, 2016 6:25 am
Location: Germany

Re: Please help Not working in game

Postby Warsai » Tue Jun 25, 2019 12:13 am

Hi

Thank you again work perfectly :) , now i have to solve only a little lag problem and after i have my perfect script :)

Do you know if there is a setting or script to minimize the lag ?
i forgot to mention that at the moment im using ps4 remote
User avatar
Warsai
Staff Sergeant
Staff Sergeant
 
Posts: 12
Joined: Thu Jun 20, 2019 2:24 am
Location: LONDON

Re: Please help Not working in game

Postby Scachi » Tue Jun 25, 2019 6:57 am

The T2 runs at 1ms (and faster)..I never notized any lag using the T2.
I only use a ps4 controller plus sometimes a small device that can act like buttons or keyboard keys.

Maybe it is the scripts logic that does cause some delay while running the combos, maybe it messes up the input.
Have you tried setting the Titan to Slot 0 to run it without any script to see if you still feel a lag ?

Try if this works.. it is converted to T2, no need to include the titanone.gph anymore for this one:
Code: Select all
#pragma METAINFO("PROVA PAD ALTRO.gpc", 1, 0, "Buffy's GPC Converter v0.25r2")
 
#include <xb1.gph>
#define XB1_PR1 XB1_P1
#define XB1_PR2 XB1_P2
#define XB1_PL1 XB1_P3
#define XB1_PL2 XB1_P4
 
 
//int run_combo = 0;
fix32 yachse;
fix32 xachse;
int nachRechts;
int firstpress;
int XB1_LB_oben;
int XB1_LB_unten;
int XB1_LB_links;
int XB1_LB_rechts;
//int tap=1;
int OnOffStick;
//int shootpower = 220;
//int tempshotpower = 220;
//int finesseshootpower = 210;
//int lowdrivenshootpower = 200;
//int TimedFinesseWait = 185;
//int TimedFinesseShotpower = 210;
//int TimedLowDrivenFinesseShotpower = 290;
//int TimedLowDrivenWait = 440;
int TimeForDoubleTap = 300;
 
 
main {
    if (get_val(XB1_RB) && get_val(XB1_LB)) {
        firstpress = FALSE;
    }
    if (event_active(XB1_LB) && !firstpress) {
        combo_run(c_getsetDoppelklick);
        firstpress = TRUE;
                OnOffStick = FALSE;
    }
    else if (event_active(XB1_LB) && firstpress) {
        OnOffStick = TRUE;
    }
    if (OnOffStick) {
        if (get_val(XB1_RY) <- 72f && !XB1_LB_oben) {
            XB1_LB_oben = 1;
            nachRechts = 0;
            f_RStickBlocks();
            f_direction();
            combo_run(c_Tornado);
        }
        if (get_val(XB1_RX) > 72f && !XB1_LB_rechts) {
            XB1_LB_rechts = 1;
            nachRechts = 1;
            f_RStickBlocks();
            f_direction();
            combo_run(c_Spin);
        }
        if (get_val(XB1_RX) <- 72f && !XB1_LB_links) {
            XB1_LB_links = 1;
            f_RStickBlocks();
            combo_run(c_FakeShot);
        }
        if (get_val(XB1_RY) > 72f && !XB1_LB_unten) {
            XB1_LB_unten = 1;
            f_RStickBlocks();
            f_GetLXY();
            combo_run(c_DragBack);
        }
        if (abs(get_val(XB1_RY)) < 20f && abs(get_val(XB1_RX)) < 20f) {
            XB1_LB_oben = 0;
            XB1_LB_unten = 0;
            XB1_LB_links = 0;
            XB1_LB_rechts = 0;
        }
        if (event_active(XB1_PL1)) {
            nachRechts = 0;
            f_direction();
            combo_run(c_LaCroqueta);
        }
        if (event_active(XB1_PL2)) {
            nachRechts = 0;
            f_direction();
            combo_run(c_ThreeTouchRoulette);
        }
        if (event_active(XB1_PR1)) {
            nachRechts = 1;
            f_direction();
            combo_run(c_LaCroqueta);
        }
        if (event_active(XB1_PR2)) {
            f_GetLXY();
            combo_run(c_heel2heel);
        }
    }
        set_val(XB1_PL1,0);set_val(XB1_PL2,0);
        set_val(XB1_PR1,0);set_val(XB1_PR2,0);
}
 
 
combo c_Tornado {
    combo_run(c_OptionRB);
    set_val(XB1_RY, get_val(XB1_LY));
    set_val(XB1_RX, get_val(XB1_LX));
    wait(60);
    wait(30);
    set_val(XB1_RY, xachse);
    set_val(XB1_RX, yachse);
    wait(60);
    yachse = 0.0;
    xachse = 0.0;
}
 
combo c_Spin {
    set_val(XB1_RX, inv(get_val(XB1_LX)));
    set_val(XB1_RY, inv(get_val(XB1_LY)));
    wait(40);
    wait(60);
    set_val(XB1_RX, yachse);
    set_val(XB1_RY, xachse);
    wait(40);
    wait(60);
    yachse = 0.0;
    xachse = 0.0;
}
 
combo c_FakeShot {
    wait(200);
    combo_run(c_OptionLB);
    set_val(XB1_B, 100);
    wait(40);
    set_val(XB1_A, 100);
    wait(40);
}
 
combo c_DragBack {
    set_val(XB1_RB, 100);
    set_val(XB1_LX, inv(xachse));
    set_val(XB1_LY, inv(yachse));
    wait(800);
}
 
combo c_OptionLB {
    set_val(XB1_LB, 100);
    wait(350);
}
 
combo c_OptionRB {
    set_val(XB1_RB, 100);
    wait(350);
}
 
combo c_OptionLT {
    set_val(XB1_LT, 100);
    wait(350);
}
 
/* combo c_block_Btn {
    set_val(XB1_RB, 0);
    set_val(XB1_LB, 0);
    wait(300);
}
*/

 
 
 
/* combo c_block_Btn2 {
    set_val(XB1_RB, 0);
    wait(300);
}
*/

 
 combo c_getsetDoppelklick {
    firstpress = TRUE;
    wait(TimeForDoubleTap);
    firstpress = FALSE;
}
 
/* combo c_getsetDoppelklick (XB1_LB) {
    tap = TRUE;
    wait(TimeForDoubleTap);
    tap = FALSE;
    firstpress = FALSE;
}
*/

 
 combo c_LaCroqueta {
    set_val(XB1_LB, 100);
    set_val(XB1_RY, xachse);
    set_val(XB1_RX, yachse);
    wait(500);
    yachse = 0.0;
    xachse = 0.0;
}
 
combo c_ThreeTouchRoulette {
    combo_run(c_OptionLT);
    set_val(XB1_RX, inv(get_val(XB1_LX)));
    set_val(XB1_RY, inv(get_val(XB1_LY)));
    wait(40);
    wait(60);
    set_val(XB1_RX, yachse);
    set_val(XB1_RY, xachse);
    wait(40);
    wait(60);
    yachse = 0.0;
    xachse = 0.0;
}
 
combo c_heel2heel {
    set_val(XB1_RX, xachse);
    set_val(XB1_RY, yachse);
    wait(40);
    wait(60);
    set_val(XB1_RX, inv(xachse));
    set_val(XB1_RY, inv(yachse));
    wait(40);
    yachse = 0.0;
    xachse = 0.0;
}
 
 
void f_RStickBlocks() {
    inhibit(XB1_RX, 100);
    inhibit(XB1_RY, 100);
    set_val(XB1_RX, 0);
    set_val(XB1_RY, 0);
    inhibit(XB1_RT, 800);
    set_val(XB1_RT, 0);
}
 
void f_GetLXY() {
    xachse = get_val(XB1_LX);
    yachse = get_val(XB1_LY);
}
 
void f_direction() {
    xachse = get_val(XB1_LX);
    yachse = get_val(XB1_LY);
    if ((get_val(XB1_LX) >= 0.0) && (get_val(XB1_LY) >= 0.0)) {
        if (nachRechts > 0) {
            yachse = inv(yachse);
        }
        else {
            xachse = inv(xachse);
        }
    }
    if ((get_val(XB1_LX) <= 0.0) && (get_val(XB1_LY) >= 0.0)) {
        if (nachRechts > 0) {
            yachse = inv(yachse);
        }
        else {
            xachse = inv(xachse);
        }
    }
    if ((get_val(XB1_LX) <= 0.0) && (get_val(XB1_LY) <= 0.0)) {
        if (nachRechts > 0) {
            yachse = inv(yachse);
        }
        else {
            xachse = inv(xachse);
        }
    }
    if ((get_val(XB1_LX) >= 0.0) && (get_val(XB1_LY) <= 0.0)) {
        if (nachRechts > 0) {
            yachse = inv(yachse);
        }
        else {
            xachse = inv(xachse);
        }
    }
}
 
 
 
User avatar
Scachi
Brigadier General
Brigadier General
 
Posts: 3044
Joined: Wed May 11, 2016 6:25 am
Location: Germany

Re: Please help Not working in game

Postby Warsai » Wed Jun 26, 2019 4:14 pm

Hi there,

I think the lag is coming from the ps4 remote because I try it directly connect to the ps4 and i cant notice this big lag...

I have to found a good setting for ps4 remote...

The last question did you change something in the script about the double LB ? because now every time i have the ball i have to double press to do the skill, it was better to double press ad the start and keep it like this till you press the view button for example, do you think that is possible to do that?

Thank you :) :wink: :wink:
User avatar
Warsai
Staff Sergeant
Staff Sergeant
 
Posts: 12
Joined: Thu Jun 20, 2019 2:24 am
Location: LONDON

Re: Please help Not working in game

Postby Scachi » Wed Jun 26, 2019 5:01 pm

Warsai wrote:Hi there,

I think the lag is coming from the ps4 remote because I try it directly connect to the ps4 and i cant notice this big lag...

I have to found a good setting for ps4 remote...

The last question did you change something in the script about the double LB ? because now every time i have the ball i have to double press to do the skill, it was better to double press ad the start and keep it like this till you press the view button for example, do you think that is possible to do that?

Thank you :) :wink: :wink:

Here, this should be back to previous double LB behaviour:
Code: Select all
#pragma METAINFO("PROVA PAD ALTRO.gpc", 1, 0, "Buffy's GPC Converter v0.25r2")
 
#include <xb1.gph>
#define XB1_PR1 XB1_P1
#define XB1_PR2 XB1_P2
#define XB1_PL1 XB1_P3
#define XB1_PL2 XB1_P4
 
 
//int run_combo = 0;
fix32 yachse;
fix32 xachse;
int nachRechts;
int firstpress;
int XB1_LB_oben;
int XB1_LB_unten;
int XB1_LB_links;
int XB1_LB_rechts;
//int tap=1;
int OnOffStick;
//int shootpower = 220;
//int tempshotpower = 220;
//int finesseshootpower = 210;
//int lowdrivenshootpower = 200;
//int TimedFinesseWait = 185;
//int TimedFinesseShotpower = 210;
//int TimedLowDrivenFinesseShotpower = 290;
//int TimedLowDrivenWait = 440;
int TimeForDoubleTap = 300;
 
 
main {
    if (get_val(XB1_RB) && get_val(XB1_LB)) {
        firstpress = FALSE;
    }
    if (event_active(XB1_LB) && !firstpress) {
        combo_run(c_getsetDoppelklick);
        firstpress = TRUE;
                //OnOffStick = FALSE;
    }
        /*
    else if (event_active(XB1_LB) && firstpress) {
        OnOffStick = TRUE;
    }
        */

        else if (event_active(XB1_LB) && firstpress) {
        OnOffStick = !OnOffStick;
    }
    if (OnOffStick) {
        if (get_val(XB1_RY) <- 72f && !XB1_LB_oben) {
            XB1_LB_oben = 1;
            nachRechts = 0;
            f_RStickBlocks();
            f_direction();
            combo_run(c_Tornado);
        }
        if (get_val(XB1_RX) > 72f && !XB1_LB_rechts) {
            XB1_LB_rechts = 1;
            nachRechts = 1;
            f_RStickBlocks();
            f_direction();
            combo_run(c_Spin);
        }
        if (get_val(XB1_RX) <- 72f && !XB1_LB_links) {
            XB1_LB_links = 1;
            f_RStickBlocks();
            combo_run(c_FakeShot);
        }
        if (get_val(XB1_RY) > 72f && !XB1_LB_unten) {
            XB1_LB_unten = 1;
            f_RStickBlocks();
            f_GetLXY();
            combo_run(c_DragBack);
        }
        if (abs(get_val(XB1_RY)) < 20f && abs(get_val(XB1_RX)) < 20f) {
            XB1_LB_oben = 0;
            XB1_LB_unten = 0;
            XB1_LB_links = 0;
            XB1_LB_rechts = 0;
        }
        if (event_active(XB1_PL1)) {
            nachRechts = 0;
            f_direction();
            combo_run(c_LaCroqueta);
        }
        if (event_active(XB1_PL2)) {
            nachRechts = 0;
            f_direction();
            combo_run(c_ThreeTouchRoulette);
        }
        if (event_active(XB1_PR1)) {
            nachRechts = 1;
            f_direction();
            combo_run(c_LaCroqueta);
        }
        if (event_active(XB1_PR2)) {
            f_GetLXY();
            combo_run(c_heel2heel);
        }
    }
        set_val(XB1_PL1,0);set_val(XB1_PL2,0);
        set_val(XB1_PR1,0);set_val(XB1_PR2,0);
}
 
 
combo c_Tornado {
    combo_run(c_OptionRB);
    set_val(XB1_RY, get_val(XB1_LY));
    set_val(XB1_RX, get_val(XB1_LX));
    wait(60);
    wait(30);
    set_val(XB1_RY, xachse);
    set_val(XB1_RX, yachse);
    wait(60);
    yachse = 0.0;
    xachse = 0.0;
}
 
combo c_Spin {
    set_val(XB1_RX, inv(get_val(XB1_LX)));
    set_val(XB1_RY, inv(get_val(XB1_LY)));
    wait(40);
    wait(60);
    set_val(XB1_RX, yachse);
    set_val(XB1_RY, xachse);
    wait(40);
    wait(60);
    yachse = 0.0;
    xachse = 0.0;
}
 
combo c_FakeShot {
    wait(200);
    combo_run(c_OptionLB);
    set_val(XB1_B, 100);
    wait(40);
    set_val(XB1_A, 100);
    wait(40);
}
 
combo c_DragBack {
    set_val(XB1_RB, 100);
    set_val(XB1_LX, inv(xachse));
    set_val(XB1_LY, inv(yachse));
    wait(800);
}
 
combo c_OptionLB {
    set_val(XB1_LB, 100);
    wait(350);
}
 
combo c_OptionRB {
    set_val(XB1_RB, 100);
    wait(350);
}
 
combo c_OptionLT {
    set_val(XB1_LT, 100);
    wait(350);
}
 
/* combo c_block_Btn {
    set_val(XB1_RB, 0);
    set_val(XB1_LB, 0);
    wait(300);
}
*/

 
 
 
/* combo c_block_Btn2 {
    set_val(XB1_RB, 0);
    wait(300);
}
*/

 
 combo c_getsetDoppelklick {
    firstpress = TRUE;
    wait(TimeForDoubleTap);
    firstpress = FALSE;
}
 
/* combo c_getsetDoppelklick (XB1_LB) {
    tap = TRUE;
    wait(TimeForDoubleTap);
    tap = FALSE;
    firstpress = FALSE;
}
*/

 
 combo c_LaCroqueta {
    set_val(XB1_LB, 100);
    set_val(XB1_RY, xachse);
    set_val(XB1_RX, yachse);
    wait(500);
    yachse = 0.0;
    xachse = 0.0;
}
 
combo c_ThreeTouchRoulette {
    combo_run(c_OptionLT);
    set_val(XB1_RX, inv(get_val(XB1_LX)));
    set_val(XB1_RY, inv(get_val(XB1_LY)));
    wait(40);
    wait(60);
    set_val(XB1_RX, yachse);
    set_val(XB1_RY, xachse);
    wait(40);
    wait(60);
    yachse = 0.0;
    xachse = 0.0;
}
 
combo c_heel2heel {
    set_val(XB1_RX, xachse);
    set_val(XB1_RY, yachse);
    wait(40);
    wait(60);
    set_val(XB1_RX, inv(xachse));
    set_val(XB1_RY, inv(yachse));
    wait(40);
    yachse = 0.0;
    xachse = 0.0;
}
 
 
void f_RStickBlocks() {
    inhibit(XB1_RX, 100);
    inhibit(XB1_RY, 100);
    set_val(XB1_RX, 0);
    set_val(XB1_RY, 0);
    inhibit(XB1_RT, 800);
    set_val(XB1_RT, 0);
}
 
void f_GetLXY() {
    xachse = get_val(XB1_LX);
    yachse = get_val(XB1_LY);
}
 
void f_direction() {
    xachse = get_val(XB1_LX);
    yachse = get_val(XB1_LY);
    if ((get_val(XB1_LX) >= 0.0) && (get_val(XB1_LY) >= 0.0)) {
        if (nachRechts > 0) {
            yachse = inv(yachse);
        }
        else {
            xachse = inv(xachse);
        }
    }
    if ((get_val(XB1_LX) <= 0.0) && (get_val(XB1_LY) >= 0.0)) {
        if (nachRechts > 0) {
            yachse = inv(yachse);
        }
        else {
            xachse = inv(xachse);
        }
    }
    if ((get_val(XB1_LX) <= 0.0) && (get_val(XB1_LY) <= 0.0)) {
        if (nachRechts > 0) {
            yachse = inv(yachse);
        }
        else {
            xachse = inv(xachse);
        }
    }
    if ((get_val(XB1_LX) >= 0.0) && (get_val(XB1_LY) <= 0.0)) {
        if (nachRechts > 0) {
            yachse = inv(yachse);
        }
        else {
            xachse = inv(xachse);
        }
    }
}
 
 
 
User avatar
Scachi
Brigadier General
Brigadier General
 
Posts: 3044
Joined: Wed May 11, 2016 6:25 am
Location: Germany


Return to GPC2 Script Programming

Who is online

Users browsing this forum: No registered users and 106 guests