someone can add good anti recoil to this script thx

GPC1 script programming for Titan One. Code examples, questions, requests.

someone can add good anti recoil to this script thx

Postby faheem786 » Thu Sep 03, 2020 7:47 am

Code: Select all
// GPC Online Library
// thelastofus.gpc
 
//                                        Made by JewFire aka JewishLuck
//                     Thanks to Baby Cham for helping me put this together and fixing a few things.
//                                   Tested With TLOU-Remastered and PS4 Controller
 
// colorled(0,0,0,0); // Off / No LED light
// colorled(1,0,0,0); // Dim Blue
// colorled(0,1,0,0); // Dim Red
// colorled(0,0,1,0); // Dim Lime/Green
// colorled(0,0,0,1); // Dim Fuchsia/Pink
// colorled(1,0,1,0); // Dim SkyBlue
// colorled(0,1,1,0); // Dim Yellow
// colorled(1,1,1,1); // Dim White
// colorled(2,0,0,0); // Blue 
// colorled(0,2,0,0); // Red
// colorled(0,0,2,0); // Lime/Green
// colorled(0,0,0,2); // Fuchsia/Pink
// colorled(2,0,2,0); // SkyBlue
// colorled(0,2,2,0); // Yellow
// colorled(2,2,2,2); // White
// colorled(3,0,0,0); // Bright Blue
// colorled(0,3,0,0); // Bright Red
// colorled(0,0,3,0); // Bright Lime/Green
// colorled(0,0,0,3); // Bright Fuchsia/Pink
// colorled(3,0,3,0); // Bright SkyBlue
// colorled(0,3,3,0); // Bright Yellow
// colorled(3,3,3,3); // Bright white
// ColorLed (1) Dim light
// ColorLed (2) Normal/Medium
// ColorLed (3) Bright light
 
//DECLARARATIONS
//--------------------------------------------------------------
define SHOOT_BUTTON      = PS4_R2;
define RAPIDFIRE_BUTTON = PS4_L2;
define RATE_OF_FIRE       = 25; // Range: 1 to 25 RPS (Round/s)
define AUTOSPOT_BUTTON  = PS4_L2;
define SPOT_BUTTON      =PS4_R3;
//VARIABLES
//--------------------------------------------------------------
//             *DO NOT EDIT/DELETE THIS SECTION*
int hold_time;
int rest_time;
int Attack                   = FALSE;
 
int Timeout_Melee            = 0;
int DbleClick_Square         = 0;
 
int shake = 38;
int AimAssist_onoff = TRUE;
 
//INITIALIZATION - init
//--------------------------------------------------------------
init {
     hold_time = 500 / RATE_OF_FIRE;
     rest_time = hold_time - 20;
     if(rest_time < 0) rest_time = 0;
}
 
//MAIN BLOCK RUTINES
//--------------------------------------------------------------
main { 
    // COLOR INDICATION FOR the RAPID FIRE ON / OFF
    if(get_val(RAPIDFIRE_BUTTON) && get_val(SHOOT_BUTTON)) {
        colorled(0,0,1,0)// OFF (Dim Lime/Green) *you can edit here*
        colorled(3,3,3,3); // (White) *you can edit here*
        combo_run(RapidFire);
    } else if(combo_running(RapidFire)) {
        combo_stop(RapidFire);
        reset_leds(); }
 
    // COLOR INDICATION FOR the RAPID SPOT ON / OFF
    if(get_val(RAPIDFIRE_BUTTON)) {
        combo_run(RapidSpot);
    } else if(combo_running(RapidSpot)) {
        combo_stop(RapidSpot);
        reset_leds(); }
 
  // Double click Square to turn off/on Melee.
    if(DbleClick_Square > 0) DbleClick_Square = DbleClick_Square - get_rtime();
    if(event_press(PS4_SQUARE) && DbleClick_Square <= 0) {
        DbleClick_Square = 300; }
        else if(event_press(PS4_SQUARE) && DbleClick_Square > 0) {
        Attack = !Attack;
        Timeout_Melee = 0;
    }
    if(Attack) {
        set_val(TRACE_1, Timeout_Melee);
        Timeout_Melee = Timeout_Melee + get_rtime();
        if(Timeout_Melee <= 350) combo_run(Brawl);
        else combo_run(StrongAttack);
    } else if(combo_running(Brawl)) {
        combo_stop(Brawl);
        reset_leds(); }
 
   // Rapid fire on Square button.
    if(get_val(PS4_SQUARE)) { combo_run(Action); }
    else if(combo_running(Action)) { combo_stop(Action); }
 
    if (get_val(PS4_SHARE)) {
        if (event_press(PS4_PS)) {
            AimAssist_onoff =! AimAssist_onoff;
        }
        set_val(PS4_PS, 0);
    }
    if (AimAssist_onoff) {
        if (get_val(PS4_L2)) combo_run(c_Auto_Aimm);
        else  combo_stop(c_Auto_Aimm);
        if (get_val(PS4_L2)) {
            if (abs(get_val(9)) > 21 || abs(get_val(10)) > 21) {
                combo_stop(c_Auto_Aimm);
            }
        }
    }
}
 
//COMBO BLOCKS
//--------------------------------------------------------------
combo RapidFire {
    set_val(SHOOT_BUTTON, 100);
    wait(hold_time);
    set_val(SHOOT_BUTTON, 0);
    wait(rest_time);
    set_val(SHOOT_BUTTON, 0);
}
 
combo RapidSpot {
    set_val(SPOT_BUTTON, 100);
    wait(hold_time);
    set_val(SPOT_BUTTON, 0);
    wait(rest_time);
    set_val(SPOT_BUTTON, 0);
}
 
combo Brawl {
    set_val(PS4_SQUARE, 100);
    set_led(LED_4, 2);
    wait(80);
    set_val(PS4_SQUARE, 0);
    set_led(LED_2, 0);
    wait(60);
    set_val(PS4_SQUARE, 0);
    set_led(LED_4, 0);
}   
 
combo StrongAttack {
    set_val(PS4_TRIANGLE, 100);
    wait(100);
    set_val(PS4_TRIANGLE, 0);
    Timeout_Melee = 0;
}
 
combo Action {
    set_val(PS4_SQUARE, 100);
    wait(40);
    set_val(PS4_SQUARE, 0);
    wait(20);
    set_val(PS4_SQUARE, 0);
}
 
combo c_Auto_Aimm {
    set_val(10, shake *- 1);
    wait(20);
    set_val(9, shake);
    wait(20);
    set_val(10, shake);
    wait(20);
    set_val(9, shake *- 1);
    wait(20);
}
 
// COLOR LED INDICATION for PS4 *NO NEED TO EDIT BELOW*
//--------------------------------------------------------------
function colorled(a,b,c,d) {
set_led(LED_1,a);
set_led(LED_2,b);
set_led(LED_3,c);
set_led(LED_4,d);
}
User avatar
faheem786
Staff Sergeant
Staff Sergeant
 
Posts: 11
Joined: Tue Aug 27, 2019 9:22 pm

Re: someone can add good anti recoil to this script thx

Postby Mad » Thu Sep 03, 2020 7:59 am

Hi, I have added anti recoil in for you.
You can adjust the anti recoil value and enable/disable here:
Code: Select all
define ANTI_RECOIL_VALUE = 25;
define ANTI_RECOIL_ENABLED = TRUE;

Code: Select all
// GPC Online Library
// thelastofus.gpc
 
//                                        Made by JewFire aka JewishLuck
//                     Thanks to Baby Cham for helping me put this together and fixing a few things.
//                                   Tested With TLOU-Remastered and PS4 Controller
 
define ANTI_RECOIL_VALUE = 25;
define ANTI_RECOIL_ENABLED = TRUE;
//DECLARARATIONS
//--------------------------------------------------------------
define SHOOT_BUTTON      = PS4_R2;
define RAPIDFIRE_BUTTON = PS4_L2;
define RATE_OF_FIRE       = 25; // Range: 1 to 25 RPS (Round/s)
define AUTOSPOT_BUTTON  = PS4_L2;
define SPOT_BUTTON      =PS4_R3;
define RY = PS4_RY;
define RX = PS4_RX;
//VARIABLES
//--------------------------------------------------------------
//             *DO NOT EDIT/DELETE THIS SECTION*
int hold_time;
int rest_time;
int Attack                   = FALSE;
 
int Timeout_Melee            = 0;
int DbleClick_Square         = 0;
 
int shake = 38;
int AimAssist_onoff = TRUE;
 
//INITIALIZATION - init
//--------------------------------------------------------------
init {
     hold_time = 500 / RATE_OF_FIRE;
     rest_time = hold_time - 20;
     if(rest_time < 0) rest_time = 0;
}
 
//MAIN BLOCK RUTINES
//--------------------------------------------------------------
main { 
    if(get_val(PS4_L2) && get_val(PS4_R2)) {
        if(ANTI_RECOIL_ENABLED) {
            AntiRecoil(PS4_RY, ANTI_RECOIL_VALUE);
        }
    }
    // COLOR INDICATION FOR the RAPID FIRE ON / OFF
    if(get_val(RAPIDFIRE_BUTTON) && get_val(SHOOT_BUTTON)) {
        colorled(0,0,1,0)// OFF (Dim Lime/Green) *you can edit here*
        colorled(3,3,3,3); // (White) *you can edit here*
        combo_run(RapidFire);
    } else if(combo_running(RapidFire)) {
        combo_stop(RapidFire);
        reset_leds(); }
 
    // COLOR INDICATION FOR the RAPID SPOT ON / OFF
    if(get_val(RAPIDFIRE_BUTTON)) {
        combo_run(RapidSpot);
    } else if(combo_running(RapidSpot)) {
        combo_stop(RapidSpot);
        reset_leds(); }
 
  // Double click Square to turn off/on Melee.
    if(DbleClick_Square > 0) DbleClick_Square = DbleClick_Square - get_rtime();
    if(event_press(PS4_SQUARE) && DbleClick_Square <= 0) {
        DbleClick_Square = 300; }
        else if(event_press(PS4_SQUARE) && DbleClick_Square > 0) {
        Attack = !Attack;
        Timeout_Melee = 0;
    }
    if(Attack) {
        set_val(TRACE_1, Timeout_Melee);
        Timeout_Melee = Timeout_Melee + get_rtime();
        if(Timeout_Melee <= 350) combo_run(Brawl);
        else combo_run(StrongAttack);
    } else if(combo_running(Brawl)) {
        combo_stop(Brawl);
        reset_leds(); }
 
   // Rapid fire on Square button.
    if(get_val(PS4_SQUARE)) { combo_run(Action); }
    else if(combo_running(Action)) { combo_stop(Action); }
 
    if (get_val(PS4_SHARE)) {
        if (event_press(PS4_PS)) {
            AimAssist_onoff =! AimAssist_onoff;
        }
        set_val(PS4_PS, 0);
    }
    if (AimAssist_onoff) {
        if (get_val(PS4_L2)) combo_run(c_Auto_Aimm);
        else  combo_stop(c_Auto_Aimm);
        if (get_val(PS4_L2)) {
            if (abs(get_val(9)) > 21 || abs(get_val(10)) > 21) {
                combo_stop(c_Auto_Aimm);
            }
        }
    }
}
 
//COMBO BLOCKS
//--------------------------------------------------------------
combo RapidFire {
    set_val(SHOOT_BUTTON, 100);
    wait(hold_time);
    set_val(SHOOT_BUTTON, 0);
    wait(rest_time);
    set_val(SHOOT_BUTTON, 0);
}
 
combo RapidSpot {
    set_val(SPOT_BUTTON, 100);
    wait(hold_time);
    set_val(SPOT_BUTTON, 0);
    wait(rest_time);
    set_val(SPOT_BUTTON, 0);
}
 
combo Brawl {
    set_val(PS4_SQUARE, 100);
    set_led(LED_4, 2);
    wait(80);
    set_val(PS4_SQUARE, 0);
    set_led(LED_2, 0);
    wait(60);
    set_val(PS4_SQUARE, 0);
    set_led(LED_4, 0);
}   
 
combo StrongAttack {
    set_val(PS4_TRIANGLE, 100);
    wait(100);
    set_val(PS4_TRIANGLE, 0);
    Timeout_Melee = 0;
}
 
combo Action {
    set_val(PS4_SQUARE, 100);
    wait(40);
    set_val(PS4_SQUARE, 0);
    wait(20);
    set_val(PS4_SQUARE, 0);
}
 
combo c_Auto_Aimm {
    set_val(10, shake *- 1);
    wait(20);
    set_val(9, shake);
    wait(20);
    set_val(10, shake);
    wait(20);
    set_val(9, shake *- 1);
    wait(20);
}
 
// COLOR LED INDICATION for PS4 *NO NEED TO EDIT BELOW*
//--------------------------------------------------------------
function colorled(a,b,c,d) {
set_led(LED_1,a);
set_led(LED_2,b);
set_led(LED_3,c);
set_led(LED_4,d);
}
 
function AntiRecoil(axis, recoil){
    if (get_val(PS4_R2) && (isqrt(RX*RX + RY*RY)) <= abs(recoil)) {
        if(abs(RY) <= abs(recoil)) {
            set_val(axis,(recoil * (100 - abs(get_val(axis)))) / 100 + get_val(axis));
        }
    }
}
ConsoleTuner Support Team || ConsoleTuner Discord || InputSense Discord (2K / FPS)
Mad
Major General
Major General
 
Posts: 4533
Joined: Wed May 22, 2019 5:39 am

Re: someone can add good anti recoil to this script thx

Postby faheem786 » Thu Sep 03, 2020 8:11 am

thanks alot really appreciate you respect
User avatar
faheem786
Staff Sergeant
Staff Sergeant
 
Posts: 11
Joined: Tue Aug 27, 2019 9:22 pm


Return to GPC1 Script Programming

Who is online

Users browsing this forum: No registered users and 61 guests