[Request] The Division 2 - XBox One - Titan One

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

[Request] The Division 2 - XBox One - Titan One

Postby luyama » Fri Nov 29, 2019 6:33 pm

Hello to you, I come to solicit your help ....
I play The Division 2 on XBox One X
I was wondering if any of you would have a script for Titan One to share with me?
I have found this one: https://www.consoletuner.com/greslib/?w645
But unfortunately it is not compatible with my key ....
Thanks in advance :)

----

bonjour à vous, je viens solliciter votre aide....
je joue à The Division 2 sur XBox One X
Je me demandais si l'un de vous aurait un script pour Titan One à me partager ?
J'ai bien trouver celui-ci : https://www.consoletuner.com/greslib/?w645 .
Mais malheuresement il n'est pas compatible avec ma clée....
D'avance merci :)
User avatar
luyama
Sergeant
Sergeant
 
Posts: 8
Joined: Wed May 30, 2018 10:25 am

Re: [Request] The Division 2 - XBox One - Titan One

Postby Mad » Fri Nov 29, 2019 8:54 pm

Code: Select all
// GPC Online Library
// the_division_-_anti_recoil,_rapid_fire,_fast_medkit,_auto_spot.gpc
 
// GPC Online Library
// the_division - rapid fire - showstopper rapid fire - antirecoil - automark - Fast Medkit - re-change.gpc
/* *
//-------------------------------------------------------------------------------------------
  THE DIVISION (Xbox one & PS4)
  Modifications:
  ***Whats New**
- Showstopper Rapid fire = VIEW/SHARE+B/O (AKA Double Shoot Showstopper) (!!NEW!!)
- Fast Medkits - VIEW/SHARE+X/? (No toggles need) (!!NEW!!)
 
- Rapid Fire = LT/L2+B/O
- Anti-Recoil = LT/L2+A/X
- AUTOMARK (Hold Left trigger)
- RE-CHANGE - reload and change weapon (double tap on SQUARE / X)
 
TO TUEN ON/OFF ALL SCRIPTS - VIEW/SHARE+MENU/OPTIONS (USE FOR LIKE A PANIC MODE)
 
            LED COLORS
 
- Red = Scripts are off
- Pink = Anti Recoil is On
- Light Orange = Rapid Fire is On
- LIGHTER PINK = Rapid Fire and Anti Recoil is On
- Yellow = Showstopper Rapid Fire is On
- White = Showstopper Rapid Fire and Anti Recoil is On
- Blue = Showstopper Rapid Fire and Rapid Fire is On
- Green = Showstopper Rapid Fire, Rapid Fire and Anti Recoil is On
* */

//-------------------------------------------------------------------------------------------
//  Version: 6.3 - Classic
//  Author: LEX LOST (Give credits to him)
//  Code Adder: Hacks200
//-------------------------------------------------------------------------------------------
//          INSTRUCTIONS for XBOX:
 
// RAPIDFIRE (ON by default - Start value: 13)
// Hold LT and Press B to Enable or Disable Rapidfire (with rumble notify)
// Hold A and tap UP to increase Rate of Fire (+1 each tap on UP, while holding A)
// Hold A and tap DOWN to decrease Rate of Fire (-1 each tap on DOWN, while holding A)
 
// ANTIRECOIL (ON by default - Start value: vertical = 30; Horizontal = 0)
// Hold LT and Press A to Enable or Disable Antirecoil (with rumble notify)
// Hold LT and tap UP to increase Antirecoil (+1 each tap on UP, while holding LT)
// Hold LT and tap DOWN to decrease Antirecoil (-1 each tap on DOWN, while holding LT)
// Hold LT and tap RIGHT to compensate to the right (+1 each tap on RIGHT , while holding LT)
// Hold LT and tap LEFT to compensate to the left (+1 each tap on LEFT, while holding LT)
 
// SAVE new values into the device eeprom: Hold LT and press MENU (or START, for XBOX360 users)
 
//-------------------------------------------------------------------------------------------
//           INSTRUCTIONS for PLAYSTATION:
 
// RAPIDFIRE (ON by default - Start value: 13)
// Hold L2 and Press O to Enable or Disable Rapidfire (with rumble notify)
// Hold CROSS and tap UP to increase Rate of Fire (+1 each tap on UP, while holding CROSS)
// Hold CROSS and tap DOWN to decrease Rate of Fire (-1 each tap on DOWN, while holding CIRCLE)
 
// ANTIRECOIL (ON by default - Start value: vertical = 30; Horizontal = 0)
// Hold L2 and Press X to Enable or Disable Antirecoil (with rumble notify)
// Hold L2 and tap UP to increase Antirecoil (+1 each tap on UP, while holding L2)
// Hold L2 and tap DOWN to decrease Antirecoil (-1 each tap on DOWN, while holding L2)
// Hold L2 and tap RIGHT to compensate to the right(+1 each tap on RIGHT , while holding L2)
// Hold L2 and tap LEFT to compensate to the left (+1 each tap on LEFT, while holding L2)
 
// Save new values into the device eeprom: Hold L2 and press OPTIONS (or START, for PS3 users)
//-------------------------------------------------------------------------------------------
 
//DECLARARATIONS - define
 
 
define switch     = 20; // XB1_X - PS4_SQUARE;
define AR_switch  = 19; // XB1_A - PS4_CROSS;
define RF_switch  = 18; // XB1_B - PS4_CIRCLE;
define RF_tss     = 18; // XB1_B - PS4_CIRCLE;
define Medkit     = 16; // XB1_RIGHT - PS4_RIGHT
//-------------------------------------------------------------------------------------------
define save       =  2; // XB1_MENU - PS4_OPTIONS
//-------------------------------------------------------------------------------------------
define AR_Release = 70; // change this value to set when antirecoil stops working (min: antirecoil value + 10)
define ONLY_WITH_SCOPE = TRUE; // if TRUE Antirecoil IS ON only when scoping - if FALSE, is always ON
//-------------------------------------------------------------------------------------------
define RELOAD     = 20;
define SPRINT     =  8;
define UP         = 13;     
define DOWN       = 14;   
define LEFT       = 15;
define RIGHT      = 16;
//-------------------------------------------------------------------------------------------
define Blue       =  1;
define Red        =  2;
define Green      =  3;
define Pink       =  4;
define SkyBlue    =  5;
define Yellow     =  6;
define White      =  7;
//-------------------------------------------------------------------------------------------
data(1,
  2,0,0,0, //1. Blue
  0,2,0,0, //2. Red
  0,0,2,0, //3. Lime/Green
  0,0,0,2, //4. Fuchsia/Pink
  2,0,2,0, //5. SkyBlue
  0,2,2,0, //6. Yellow
  2,2,2,2  //7. White
);
//-------------------------------------------------------------------------------------------
 
//VARIABLES - int
 
int recoil_onoff  = FALSE; // if TRUE Antirecoil is ON by default - if FALSE, OFF by default
int rapid_onoff   = FALSE; // if TRUE Rapidfire is ON by default - if FALSE, OFF by default
int ssrapid_onoff = FALSE; // if TRUE Rapidfire is ON by default - if FALSE, OFF by default
int RATE_OF_FIRE  = 13;   // Range: 1 to 25 RPS (Round/s)
int ANTI_RECOIL   = 30;
int ANTI_RECOIL_H =  0
int anti_recoil;
int anti_recoil_H;
int Col_ind;
int fire_button;
int scope_button;
int hold_time;
int rest_time;
int timelimit = 300; // increase if is to fast
int DbleClick = 0;
 
//-------------------------------------------------------------------------------------------
 
//INITIALIZATION - init
 
init{
 
    if(get_console() == PIO_PS3) {
        fire_button  = 3;
        scope_button = 6;
    }else {
        fire_button  = 4;
        scope_button = 7;
    }
 
    RATE_OF_FIRE  = get_pvar(SPVAR_10, 25, 13);
    ANTI_RECOIL   = get_pvar(SPVAR_2, -100,+100, 30);
    ANTI_RECOIL_H = get_pvar(SPVAR_3, -100,+100, 0);
}
 
//-------------------------------------------------------------------------------------------
 
//MAIN BLOCK ROUTINES
 
main {
//------------------| ALL SCRIPTS ON/OFF |-----------------------------   
    if (get_val(XB1_VIEW) && event_press(XB1_MENU))  {
        rapid_onoff=!rapid_onoff;
        ssrapid_onoff=!ssrapid_onoff;
        recoil_onoff=!recoil_onoff;
        combo_run(vibrate);
        combo_run(ON_OFF);
    }
//---------------------------------------------------------------------
    if(DbleClick > 0) DbleClick = DbleClick - get_rtime();
    if(event_press(switch) && DbleClick <= 0) {DbleClick = timelimit; }
    else if(event_press(switch) && DbleClick > 0) {combo_run(Re_Change);}
 
    if (get_val(PS4_L2)) {
        combo_run(MarkTargets);
    }
    if (get_val(XB1_VIEW) && event_press(XB1_X))  {
        combo_run (FastMedkit);
    }
    if(get_val(7) && event_press(AR_switch))  {
        combo_run (vibrate);
        recoil_onoff=!recoil_onoff;
    }
////////RAPID FIRE////////
    if(get_val(7) && event_press(RF_switch))  {
        combo_run (vibrate);
        rapid_onoff=!rapid_onoff;
    }
 
    if((rapid_onoff) && recoil_onoff) colourled(Green);
    if((rapid_onoff) && !recoil_onoff) colourled(Yellow);
    if((recoil_onoff) && !rapid_onoff) colourled(Pink);         
    if((!recoil_onoff) && !rapid_onoff) colourled(Red);
 
    if(rapid_onoff) { if(get_val(4)) {
        combo_run (RAPID_FIRE);
        }
    }     
        hold_time = 500 / RATE_OF_FIRE;
        rest_time = hold_time - 20;
        if(rest_time < 0) rest_time = 0;
 
    if(get_val(19)) { 
        if(event_press(UP)) {
            RATE_OF_FIRE = RATE_OF_FIRE+ 1;
        }
        if(event_press(DOWN)) {
            RATE_OF_FIRE = RATE_OF_FIRE- 1;
        }
        set_val(UP,0); set_val(DOWN,0);
    }
    if(get_val(scope_button) && event_press(save)){
        combo_run(vibrate);
        set_pvar(SPVAR_1, RATE_OF_FIRE);
        set_pvar(SPVAR_2, ANTI_RECOIL);
        set_pvar(SPVAR_3, ANTI_RECOIL_H);
        set_val(save, 0);
    }
    if(get_val(7)){
        if(event_press(UP)){
            ANTI_RECOIL = ANTI_RECOIL+ 1;
        }
        if(event_press(DOWN)) {
            ANTI_RECOIL = ANTI_RECOIL- 1;
        }
        set_val(UP,0); set_val(DOWN,0);
 
        if(event_press(LEFT)){
            ANTI_RECOIL_H = ANTI_RECOIL_H+ 1;
        }
        if(event_press(RIGHT)) {
            ANTI_RECOIL_H = ANTI_RECOIL_H- 1;
        }
        set_val(LEFT,0); set_val(RIGHT,0);
 
    }
////////RAPID FIRE SHOWSTOPPER////////
    if(get_val(XB1_VIEW) && event_press(RF_tss))  {
        combo_run (vibrate);
        ssrapid_onoff=!ssrapid_onoff;
    }
 
    if((ssrapid_onoff) && recoil_onoff) colourled(White);
    if((ssrapid_onoff) && !recoil_onoff) colourled(Yellow);
    if((recoil_onoff) && !ssrapid_onoff) colourled(Pink);         
    if((!recoil_onoff) && !ssrapid_onoff) colourled(Red);
    if((ssrapid_onoff) && rapid_onoff) colourled(Blue);
    if((ssrapid_onoff) && rapid_onoff && recoil_onoff) colourled(Green);
 
    if(ssrapid_onoff) { if(get_val(4)) {
        combo_run (Showstopper_Rapid_Fire);
        }
    }
    if(!ONLY_WITH_SCOPE || get_val(scope_button) && get_val(fire_button )) {
        combo_run(AntiRecoil);
    }
 
    if( abs(get_val(10)) > AR_Release || abs(get_val(9)) > AR_Release) { 
        combo_stop (AntiRecoil);
    }
}
//-------------------------------------------------------------------------------------------
 
//COMBO BLOCKS
 
combo ON_OFF{
    wait(60);
    set_val(XB1_RY, 0);
}
 
combo vibrate {
    set_rumble(RUMBLE_A, 100);
    wait(300);
    reset_rumble();
    }
 
combo Re_Change {
    wait(500);
    set_val(PS4_TRIANGLE, 100);
    wait(100);
    wait(100);
    }
 
combo MarkTargets {
    set_val(PS4_UP, 100);
    wait(50);
    set_val(PS4_UP, 0);
    wait(1000);
    }
 
combo FastMedkit {
    set_val(XB1_LT, 100);
    wait(50);
    set_val(XB1_RIGHT, 100);
    wait(50);
    set_val(XB1_RIGHT, 0);
    wait(70);
    set_val(XB1_RT, 100);
    wait(100);
    }
 
combo RAPID_FIRE {
    set_val(fire_button, 100);
    wait(hold_time);
    set_val(fire_button, 0);
    wait(rest_time);
    set_val(fire_button, 0);
    }
 
combo Showstopper_Rapid_Fire {
    wait(16);
    set_val(XB1_RT, 100);       
    wait(304);
    set_val(XB1_RT, 0);
    set_val(XB1_RY, 8);
    wait(16);
    }
 
combo AntiRecoil { // This combo must be the last one
    if(recoil_onoff) {
    anti_recoil = get_val(10) + ANTI_RECOIL;
    if(anti_recoil > 100) anti_recoil = 100;
    set_val(10, anti_recoil);
    anti_recoil_H = get_val(9) + ANTI_RECOIL_H;
    if(anti_recoil_H > 100) anti_recoil_H = 100;
    set_val(9, anti_recoil_H);
    }
}
// COLOR LED function
//--------------------------------------------------------------
function colourled(Colour) {
    Col_ind=(Colour*4)- 3;
    set_led(LED_1,dbyte(Col_ind  ));
    set_led(LED_2,dbyte(Col_ind+ 1));
    set_led(LED_3,dbyte(Col_ind+ 2));
    set_led(LED_4,dbyte(Col_ind+ 3));
}// End
ConsoleTuner Support Team || ConsoleTuner Discord || InputSense Discord
Mad
Major General
Major General
 
Posts: 4536
Joined: Wed May 22, 2019 5:39 am

Re: [Request] The Division 2 - XBox One - Titan One

Postby luyama » Sat Nov 30, 2019 5:47 am

thank you so much / Merci beaucoup :)
User avatar
luyama
Sergeant
Sergeant
 
Posts: 8
Joined: Wed May 30, 2018 10:25 am

Re: [Request] The Division 2 - XBox One - Titan One

Postby Mad » Sat Nov 30, 2019 6:54 am

You're welcome, here is another:
Code: Select all
// GPC Online Library
// the_division_2_-_easy_script.gpc
 
/*
¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤
¤¤                                                                                                                                                                         ¤¤
¤¤                                                                                                                                                                         ¤¤
¤¤                             88NOOZBAR88 888                    8888888b.  d8b          d8b          d8b                         .d8888b.                                ¤¤
¤¤                o                888     888                    888  "Y88b Y8P          Y8P          Y8P                        d88P  Y88b            o                  ¤¤
¤¤               d8b               888     888                    888    888                                                             888           d8b                 ¤¤
¤¤              d888b              888     88888b.   .d88b.       888    888 888 888  888 888 .d8888b  888  .d88b.  88888b.            .d88P          d888b                ¤¤ 
¤¤          "Y8NOOZBAR8Y"          888     888 "88b d8P  Y8b      888    888 888 888  888 888 88K      888 d88""88b 888 "88b       .od888P"       "Y8NOOZBAR8Y"            ¤¤ 
¤¤            "Y88888P"            888     888  888 88888888      888    888 888 Y88  88P 888 "Y8888b. 888 888  888 888  888      d88P"             "Y88888P"              ¤¤ 
¤¤            d88P"Y88b            888     888  888 Y8b.          888  .d88P 888  Y8bd8P  888      X88 888 Y88..88P 888  888      888"              d88P"Y88b              ¤¤ 
¤¤           dP"     "Yb           888     888  888  "Y8888       8888888P"  888   Y88P   888  88888P' 888  "Y88P"  888  888      8NOOZBAR8        dP"     "Yb             ¤¤ 
¤¤                                                                                                                                                                         ¤¤
¤¤                                                                                                                                                                         ¤¤
¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤
 
 
 
    o               o         8NOOZBAR88        d8888  .d8888b. Y88b   d88P       .d8888b.   .d8888b.  8888888b.  8888888 8888888b. 88NOOZBAR88         o               o   
   d8b             d8b        888              d88888 d88P  Y88b Y88b d88P       d88P  Y88b d88P  Y88b 888   Y88b   888   888   Y88b    888            d8b             d8b   
  d888b           d888b       888             d88P888 Y88b.       Y88o88P        Y88b.      888    888 888    888   888   888    888    888           d888b           d888b 
 d8P"Y8b         d8P"Y8b      8888888        d88P 888  "Y888b.     Y888P          "Y888b.   888        888   d88P   888   888   d88P    888          d8P"Y8b         d8P"Y8b
                              888           d88P  888     "Y88b.    888              "Y88b. 888        NOOZBARP"    888   8888888P"     888                                 
                              888          d88P   888       "888    888                "888 888    888 888 T88b     888   888           888                                 
                              888         d8NOOZBAR88 Y88b  d88P    888          Y88b  d88P Y88b  d88P 888  T88b    888   888           888                                 
        8NOOZBAR8             8NOOZBAR88 d88P     888  "Y8888P"     888           "Y8888P"   "Y8888P"  888   T88b 8888888 888           888                 8NOOZBAR8 
 
 
Version: 1.3
Device: device +
Author: noozbar
 
Tanks to device community, Batts, LEX LOST, Excalibur and all the forum Staff
 
//----------------------------------------------------------------------------------------------------------------------//
     ____      _              ___    _            _   _  __ _           _   _             
    / ___|___ | | ___  _ __  |_ _|__| | ___ _ __ | |_(_)/ _(_) ___ __ _| |_(_) ___  _ __ 
   | |   / _ \| |/ _ \| '__|  | |/ _` |/ _ \ '_ \| __| | |_| |/ __/ _` | __| |/ _ \| '_ \
   | |__| (_) | | (_) | |     | | (_| |  __/ | | | |_| |  _| | (_| (_| | |_| | (_) | | | |
    \____\___/|_|\___/|_|    |___\__,_|\___|_| |_|\__|_|_| |_|\___\__,_|\__|_|\___/|_| |_|
 
 
 LED OFF = Script disable
 
 BLUE    = Primary weapon
 
 RED     = Secondary weapon
 
 SKYBLUE = Handgun
 
 WHITE   = Special weapon (Anti-Recoil and RapidFire disable)
 
//----------------------------------------------------------------------------------------------------------------------//
    ___           _                   _   _                                    _    _____          _                       
   |_ _|_ __  ___| |_ _ __ _   _  ___| |_(_) ___  _ __  ___     __ _ _ __   __| |  |  ___|__  __ _| |_ _   _ _ __ ___  ___
    | || '_ \/ __| __| '__| | | |/ __| __| |/ _ \| '_ \/ __|   / _` | '_ \ / _` |  | |_ / _ \/ _` | __| | | | '__/ _ \/ __|
    | || | | \__ \ |_| |  | |_| | (__| |_| | (_) | | | \__ \  | (_| | | | | (_| |  |  _|  __/ (_| | |_| |_| | | |  __/\__ \
   |___|_| |_|___/\__|_|   \__,_|\___|\__|_|\___/|_| |_|___/   \__,_|_| |_|\__,_|  |_|  \___|\__,_|\__|\__,_|_|  \___||___/
 
 
** Rumble and color indications:
        2 small fast vibrations + flash 2 times red = mod is OFF
        1 big vibration + flash 1 time green = mod is ON
        3 small fast vibrations every 10 seconds + flash 2 times red  = your controller have less than 10% battery left
        3 big vibrations + flash one time green = you have save all values
 
 
** Individual Antirecoil (Horizontal and Vertical) values for each weapon (primary, secondary and handgun) adjustable on the fly
        Hold L2/LT + CROSS/A and:
            Tap UP to increase Vertical Antirecoil (+1 each tap on UP) (min val = 0, max val = 100, controller rumble at min/max values)
            Tap DOWN to decrease Vertical Antirecoil (-1 each tap on DOWN) (min val = 0, max val = 100, controller rumble at min/max values)
            Tap RIGHT to compensate Horizontal recoil to the right (+1 each tap on RIGHT) (min val = -100, max val = 100, controller rumble at min/max values)
            Tap LEFT to compensate Horizontal recoil to the left (+1 each tap on LEFT) (min val = -100, max val = 100, controller rumble at min/max values)
 
        Save new values:
            Hold L2/LT and press OPTION/MENU to save your new values
            3 big vibrations and LED flash one time
 
 
** RapidFire with toggle on/off and adjustable on the fly for semi auto weapons like Pistols, Shotguns, Snipers or Rifles (Range between 0 and 25 round per second)
    RapidFire can be activated for one of 3 weapons, 2 of 3, 3 weapons or none
    This feature work well with AIM Abuse with Shotgun or Rifle
    When RapidFire is enable, LEDs are flashing
 
        Toggle on/off:
            Hold CROSS/A + CIRCLE/B and:
            Tap R2/RT to enable or disable this feature in game
            1 big vibration = mod is ON, 2 small fast vibrations = mod is OFF
 
        Rate of fire adjust: (only if RapidFire is enable)
            Hold CROSS/A + CIRCLE/B and:
            Tap D Pad UP to increase RapidFire value by 1
            Tap D Pad DOWN to decrease RapidFire value by 1
               Controller vibrate when you are at maximum or minimum value
 
        Save new values:
            Hold L2/LT and press OPTION/MENU to save your new values
            3 big vibrations and LED flash one time
 
 
** Burst Fire
        Hold L2/LT and tap D pad RIGHT to enable Burst Fire
        Release L2/LT to disable
 
 
** Panic Button (Allow you to Switch device color witout switching weapon, if your weapon and the assigned color don't go together)
        Hold L3/LS and press TRIANGLE/Y
 
 
** Script Enable/Disable mod (Script enable by defaut)
        Press PS/XBOX or OPTION/MENU or hold L3/LS + click R3/RS to disable ALL FEATURES, press again to enable (Led OFF when disable)
    or
        Quick press Map Button to enable all features
           Long press Map Button to display Map or hold for going Rogue
        1 big vibration = mod is ON, 2 small fast vibrations = mod is OFF
 
 
** Special Weapon mod (Anti-Recoil and RapidFire disable)
        Hold TRIANGLE/Y (Led color turn WHITE)
 
 
** AutoRun press sensitive (Work better when in game option "Press to Sprint" is turned OFF)
        Push your stick to more than 60% to run automatically
 
 
** Strafe Shot
    Strafe to the Right and to the Left while shooting
    Enable or disable in game:
        Hold CROSS/A + CIRCLE/B and tap D Pad DOWN to enable or disable this feature on the fly
        1 big vibration = mod is ON, 2 small fast vibrations = mod is OFF
 
 
** Hair Trigger
    Your triggers are VERY reactive
 
 
** Swap Triggers/Bumpers
    Enable or disable with TRUE / FALSE value
 
 
** Inverted Axis (in game option "Invert Y axis" MUST BE OFF!)
    Enable or disable with TRUE / FALSE value
 
 
** Dead Zone Correction (Right Stick)
    Fix the DeadZone defect which is never really neutral
 
 
** Quick Grenade
        Hold ADS button and tap D Pad LEFT or only long press D Pad LEFT to throw a grenade
 
 
** Easy MedKit
        Double tap D pad Right to change your armor piece, move Left analog to cancel
 
 
** Battery Warning
    3 small fast vibrations every 10 seconds if your controller have less than 10% battery left
 
 
** Easy Skill Destroy
        Double tap on the button of the skill you want to destroy (L1/LB or R1/RB)
 
//______________________________________________________________________________________________________________________//
//___________________________________________________FEATURES START_____________________________________________________//
//______________________________________________________________________________________________________________________//
    _   _                      ____       _   _   _                 
   | | | |___  ___ _ __ ___   / ___|  ___| |_| |_(_)_ __   __ _ ___
   | | | / __|/ _ \ '__/ __|  \___ \ / _ \ __| __| | '_ \ / _` / __|
   | |_| \__ \  __/ |  \__ \   ___) |  __/ |_| |_| | | | | (_| \__ \
    \___/|___/\___|_|  |___/  |____/ \___|\__|\__|_|_| |_|\__, |___/
                                                          |___/       
*/

//----------------------------------------------------------------------------------------------------------------------//
                                    // PRIMARY WEAPON ANTIRECOIL:
 
int AR_Primary = 20;     // Antirecoil Vertical
int ARH_Primary = 0;     // AntiRecoil Horizontal
 
//----------------------------------------------------------------------------------------------------------------------//
                                    // SECONDARY WEAPON ANTIRECOIL:
 
int AR_Secondary = 25;     // Antirecoil Vertical
int ARH_Secondary = 0;     // AntiRecoil Horizontal
 
//----------------------------------------------------------------------------------------------------------------------//
                                    // HANDGUN ANTIRECOIL:
 
int AR_Handgun = 30;     // Antirecoil Vertical
int ARH_Handgun = 0;     // AntiRecoil Horizontal
 
//----------------------------------------------------------------------------------------------------------------------//
//                                    RapidFire setting:
 
/* RapidFire with toggle on/off and adjustable on the fly for semi auto weapons like Pistols, Shotguns, Snipers or Rifles (Range between 0 and 25 round per second)
    RapidFire can be activated for one of 3 weapons, 2 of 3, 3 weapons or none
    This feature work well with AIM Abuse with Shotgun or Rifle
    When RapidFire is enable, LEDs are flashing
 
    *Toggle on/off:
       Hold L2/LT + CIRCLE/B and:
        Tap R2/RT to enable or disable this feature in game (1 big vibration = mod is ON, 2 small fast vibrations = mod is OFF)
 
    *Rate of fire adjust: (only if RapidFire is enable)
       Hold L2/LT + CIRCLE/B and:
        Tap D Pad UP to increase RapidFire value by 1
        Tap D Pad DOWN to decrease RapidFire value by 1
      Controller vibrate when you are at maximum or minimum value
*/

 
int RF_Handgun_ON = TRUE;     // Set TRUE to enable RapidFire by default on Handgun
int RoF_Handgun = 6;             // Range: 1 to 25 RPS (Round/s)
 
int RF_Primary_ON = FALSE;     // Set TRUE to enable RapidFire by default on Primary
int RoF_Primary = 8;             // Range: 1 to 25 RPS (Round/s)
 
int RF_Secondary_ON = FALSE;    // Set TRUE to enable RapidFire by default on Secondary
int RoF_Secondary = 10;         // Range: 1 to 25 RPS (Round/s)
 
//----------------------------------------------------------------------------------------------------------------------//
//                                    Burst Fire setting:
 
/* Burst Fire
     Hold L2/LT and tap D pad RIGHT to enable Burst Fire
     Release L2/LT to disable
     This feature work well with AIM Abuse with Assault Rifle, SMG or LMG
*/

 
int Burst_Hold = 400;         // How many time you hold Fire button
int Burst_Release = 150;     // How many time you release Fire button
 
//----------------------------------------------------------------------------------------------------------------------//
//                                    Strafe Shot setting:
 
/* Strafe Shot
     Strafe to the Right and to the Left while shooting
     Enable or disable with TRUE / FALSE value
     Enable or disable in game:
     Hold CROSS/A + CIRCLE/B and tap D Pad DOWN to enable or disable this feature on the fly
     Controller vibrate
*/

 
int Strafe_Shot_ON = FALSE;     // TRUE = enable this feature, FALSE = disable this feature
int Strafe_Shot_Time  = 750;      // Amount of time you go to the sides
 
//----------------------------------------------------------------------------------------------------------------------//
//                                    Swap Triggers/Bumper setting:
 
int R1L1_ONoff = FALSE; // FALSE = shoot and aim with R2/L2 or RT/LT // TRUE = shoot and aim with R1/L1 or RB/LB
 
//----------------------------------------------------------------------------------------------------------------------//
//                                    Inverted Axis setting:
 
//        If you play with inverted axis, set TRUE, in game option "Invert Y axis" MUST BE OFF!
 
int Axis_inverted = FALSE; // Set TRUE for Right Y axis inverted, esle set FALSE
 
//______________________________________________________________________________________________________________________//
//___________________________________________________FEATURES END_______________________________________________________//
//______________________________________________________________________________________________________________________//
//    ____                       _                          _ _  __       
//   |  _ \  ___     _ __   ___ | |_    _ __ ___   ___   __| (_)/ _|_   _
//   | | | |/ _ \   | '_ \ / _ \| __|  | '_ ` _ \ / _ \ / _` | | |_| | | |
//   | |_| | (_) |  | | | | (_) | |_   | | | | | | (_) | (_| | |  _| |_| |
//   |____/ \___/   |_| |_|\___/ \__|  |_| |_| |_|\___/ \__,_|_|_|  \__, |
//                                                                  |___/ 
//###################################################################
////////////////////////////////////////////////////////////////////#
                                                                  //#
int Script_ON = 1;                                                //#
int double_tap;                                                   //#
int Switch;                                                       //#
int Pistol_ON;                                                    //#
int RATE_OF_FIRE;                                                 //#
int hold_time;                                                    //#
int rest_time;                                                    //#
int Special_ON;                                                   //#
int Map;                                                          //#
int Map_BTN;                                                      //#
int ms;                                                           //#
int ARV;                                                          //#
int ARH;                                                          //#
int arv;                                                          //#
int arh;                                                          //#
int idx;                                                          //#
int Button;                                                       //#
int Burst_ON;                                                     //#
int run_rumble;                                                   //#
int rumble_side;                                                  //#
int rumble_time;                                                  //#
int bit;                                                          //#
                                                                  //#
define Off       = 0;                                             //#
define Blue      = 1;                                             //#
define Red       = 2;                                             //#
define Green     = 3;                                             //#
define Pink      = 4;                                             //#
define SkyBlue   = 5;                                             //#
define Yellow    = 6;                                             //#
define White     = 7;                                             //#
                                                                  //#
////////////////////////////////////////////////////////////////////#
//###################################################################
 
//______________________________________________________________________________________________________________________//
 
init {
    AR_Primary = get_pvar(SPVAR_1, -100, 100, 0);   ARH_Primary = get_pvar(SPVAR_4, -100, 100, 0);   RoF_Primary = get_pvar(SPVAR_7, 1, 25, 1);
    AR_Secondary = get_pvar(SPVAR_2, -100, 100, 0); ARH_Secondary = get_pvar(SPVAR_5, -100, 100, 0); RoF_Secondary = get_pvar(SPVAR_8, 1, 25, 1);
    AR_Handgun = get_pvar(SPVAR_3, -100, 100, 0);   ARH_Handgun = get_pvar(SPVAR_6, -100, 100, 0);   RoF_Handgun = get_pvar(SPVAR_9, 1, 25, 1);
}
 
//_______________________________________________________________________________________________________________________//
//                    _          ____  _             _   
//    _ __ ___   __ _(_)_ __    / ___|| |_ __ _ _ __| |_
//   | '_ ` _ \ / _` | | '_ \   \___ \| __/ _` | '__| __|
//   | | | | | | (_| | | | | |   ___) | || (_| | |  | |_
//   |_| |_| |_|\__,_|_|_| |_|  |____/ \__\__,_|_|   \__|
 
main { // main start
 
  //Crossover
 
    if(get_controller() != PIO_PS4)
    {
        if(get_console() == PIO_PS4)
        {
            swap(PS4_SHARE,PS4_TOUCH);
            Map_BTN = PS4_TOUCH;
 
                if(get_val(PS4_TOUCH) && get_val(PS4_R3))
                {
                    set_val(PS4_SHARE,100);
                    set_val(PS4_TOUCH,0);
                    set_val(PS4_R3,0);
                }
        }
 
        if(get_console() != PIO_PS4)
            Map_BTN = PS4_SHARE;
    }
    else
        Map_BTN = PS4_TOUCH;
 
//---------------------------------------
 
  //Check your values in Device Monitor
 
    set_val(TRACE_1,ARV);           // Antirecoil Vertical
    set_val(TRACE_2,ARH);           // Antirecoil Horizontal
    set_val(TRACE_3,RATE_OF_FIRE)// Rate of fire 
    set_val(TRACE_4,Switch);        // Primary = 0, Secondary = 1
    set_val(TRACE_5,Special_ON); // Special weapon = 1
    set_val(TRACE_6,Pistol_ON)// Handgun = 1
 
//---------------------------------------
 
  //Rumble start and restart
    if(run_rumble && !combo_running(Vibrate))
    {
        run_rumble = run_rumble -1;
        combo_restart(Vibrate);
    }
 
//---------------------------------------
 
  //Battery warning
    if(get_battery() <= 1)
    {
        ms = ms + get_rtime();
 
            if(ms == 10000)
            {
                Rumble (FALSE, 3);
                ms = 0;
            }
    }
 
//---------------------------------------
 
  //Swap Triggers
    if(R1L1_ONoff)
    {
        swap(3, 4);
        swap(6, 7);
    }
 
//---------------------------------------
 
  //Inverted Axis
    if(Axis_inverted)
    {
        set_val(PS4_RY, inv(get_val(PS4_RY)));
    }
 
//---------------------------------------
 
/* Script Enable/Disable mod (Script enable by defaut)
     Press PS/XBOX or OPTION/MENU or hold L3/LS + click R3/RS to disable ALL FEATURES, press again to enable (Led OFF when disable)
     or
     Quick press Map Button to enable all features
     Long press Map Button to display Map or hold for going Rogue
*/

 
    if(event_press(PS4_PS) || (!get_val(PS4_L2) && event_press(PS4_OPTIONS)) || (get_val(PS4_L3) && event_press(PS4_R3)))
    {
        Script_ON=!Script_ON;
        Rumble(Script_ON, 0);
    }
 
    if(!Map)
            set_val(Map_BTN, 0);
 
    if(event_release(Map_BTN))
    {
        if(get_ptime(Map_BTN) <= 100)
        { 
            Script_ON = TRUE;
            rumble_side= RUMBLE_A;
            rumble_time = 300;
            combo_run(Vibrate);
        } 
 
            else
            {
                set_val(Map_BTN, 100);
 
                if(get_ptime(Map_BTN) <= 500)
                {
                    Script_ON = FALSE;
                    Map = TRUE;
                     Rumble(Script_ON, 0);
                }
                    else
                    {
                        Map = FALSE;
                        Script_ON = TRUE;
                         Rumble(Script_ON, 0);
                    }
 
            }
     }
     if(Map && (event_press(PS4_CIRCLE) || event_press(Map_BTN)))
     {
         Map = FALSE;
         Script_ON = TRUE;
         Rumble(Script_ON, 0);
     }
 
//_______________________________________________________________________________________________________________________//
 
if(Script_ON)
{ // Script Enable start
//_______________________________________________________________________________________________________________________//
 
//    _____          _                       
//   |  ___|__  __ _| |_ _   _ _ __ ___  ___
//   | |_ / _ \/ _` | __| | | | '__/ _ \/ __|
//   |  _|  __/ (_| | |_| |_| | | |  __/\__ \
//   |_|  \___|\__,_|\__|\__,_|_|  \___||___/

 
 
/* Switch weapons
     Press or double tap TRIANGLE/Y
   Panic Button (Allow you to Switch device color witout switching weapon, if your weapon and the assigned color don't go together)
     Hold L3/LS and press TRIANGLE/Y
*/

 
    if(event_press(PS4_TRIANGLE) && (!get_val(PS4_DOWN) && !Special_ON || get_lval(PS4_L3)))
    {
        Switch=!Switch;
        Pistol_ON = FALSE;
 
        if(double_tap)
          {
              Pistol_ON = TRUE ;
              Switch = !Switch;
          }
              else
                  double_tap = 200;// Double tap speed (discrease value to have to double tap faster to switch to side arm)
    }
 
//---------------------------------------
 
/* Special Weapon mod (Anti-Recoil and RapidFire disable)
     Hold TRIANGLE/Y (Led color turn WHITE)
*/

 
    if(get_val(PS4_TRIANGLE) && get_ptime(PS4_TRIANGLE) > 500)
    {
        Special_ON = TRUE;
    }
 
    if(Special_ON && event_press(PS4_TRIANGLE))
    {
         Special_ON = FALSE;
         Switch = !Switch;
    }
 
//---------------------------------------
 
/* Double Tap function
     For all double tap features
*/

 
    if(double_tap)
        double_tap = double_tap - get_rtime();
 
//---------------------------------------
 
/* Strafe Shot
     Strafe to the Right and to the Left while shooting
     Enable or disable with TRUE / FALSE value
     Enable or disable in game:
     Hold CROSS/A + CIRCLE/B and tap D Pad DOWN to enable or disable this feature on the fly
     Controller vibrate
*/

 
    if((get_val(PS4_CROSS) && get_val(PS4_CIRCLE)) && event_press(PS4_DOWN))
    {
        Strafe_Shot_ON = !Strafe_Shot_ON;
        Rumble(Strafe_Shot_ON, 0);
    }
 
if(Strafe_Shot_ON)
{
    if(get_val(PS4_L2) && get_val(PS4_R2))
        combo_run(Strafe_Shot);
    else
        combo_stop(Strafe_Shot);
}
//---------------------------------------
 
/* Hair Trigger
     Your triggers are VERY reactive
*/

 
    deadzone(PS4_L2,PS4_R2,99,99);
 
//---------------------------------------
 
    if(!get_val(PS4_L2))
    {
    /* AutoRun press sensitive (Work better when in game option "Press to Sprint" is turned OFF)
     Push your stick to more than 60% to run automatically
    */

        if(get_val(PS4_LY) < -60)
        {
            set_val(PS4_LY, -100);
            set_val(PS4_L3, 100);
        }
 
    //---------------------------------------
 
    /* Dead Zone Correction (Right Stick)
     Fix the DeadZone defect which is never really neutral
    */

        if(abs(get_val(PS4_RY)) <= 5 && abs(get_val(PS4_RX)) <= 5 )
        {
            set_val(PS4_RY,0);                                                 
            set_val(PS4_RX,0);
        }
 
    //---------------------------------------
 
    /* Easy MedKit
     Double tap D pad Right to change your armor piece, move Left analog to cancel
    */

        if(event_press(PS4_RIGHT))
        {
            if(double_tap)
            {
                   Button = PS4_RIGHT;
                combo_run(Hold);
            }
 
            else
                double_tap = 200;
        }
    //---------------------------------------
    }
 
    if(Button == PS4_RIGHT && (abs(get_val(PS4_LX)) > 90 || abs(get_val(PS4_LY)) > 90))
        combo_stop(Hold);
 
//---------------------------------------
 
    if(!get_val(PS4_CIRCLE) && !get_val(PS4_CROSS) && !get_val(PS4_SQUARE))
    {
        //---------------------------------------
 
        /* Quick Grenade
             Hold ADS button and press D Pad LEFT or only hold D Pad LEFT to throw a grenade
        */

 
        if((get_val(PS4_L2) && event_press(PS4_LEFT) || get_val(PS4_LEFT) && get_ptime(PS4_LEFT) > 200))
            combo_run(Grenade);
 
        //---------------------------------------
 
        /* Burst Fire
             Hold L2/LT and tap D pad RIGHT to enable Burst Fire
             Release L2/LT to disable
        */

 
        if(get_val(PS4_L2) && event_press(PS4_RIGHT))
            Burst_ON = !Burst_ON;
 
                else if(event_release(PS4_L2))
                    Burst_ON = FALSE;
 
        if(get_val(PS4_R2) && Burst_ON)
        {
            hold_time = Burst_Hold;
            rest_time = Burst_Release;
            combo_run(RAPID_FIRE);
        }
        //---------------------------------------
    }
 
//---------------------------------------
 
/* Easy Skill Destroy
     Double tap on the button of the skill you want to destroy (L1/LB or R1/RB)
*/

 
    SkillDestroy (PS4_R1);
    SkillDestroy (PS4_L1);
 
//---------------------------------------
 
/* Save antirecoil and rapidfire values
     Hold L2/LT and tap OPTIONS/MENU
*/

 
    if(get_val(PS4_L2))
    {
        if(event_press(PS4_OPTIONS))
        {
            set_pvar(SPVAR_1, AR_Primary);   set_pvar(SPVAR_4, ARH_Primary);   set_pvar(SPVAR_7, RoF_Primary);
            set_pvar(SPVAR_2, AR_Secondary); set_pvar(SPVAR_5, ARH_Secondary); set_pvar(SPVAR_8, RoF_Secondary);
            set_pvar(SPVAR_3, AR_Handgun);   set_pvar(SPVAR_6, ARH_Handgun);   set_pvar(SPVAR_9, RoF_Handgun);
            Rumble(TRUE, 3);                 combo_run(Flash)
        }
    set_val(PS4_OPTIONS, 0)
    }
 
if(!Special_ON)
{ // NOT Special start
 
/* Antirecoil
*/

    if(get_val(PS4_R2))
        combo_run(AntiRecoil);
            else
                combo_stop(AntiRecoil);
 
//_______________________________________________________________________________________________________________________//
//    _   _                 _                   
//   | | | | __ _ _ __   __| | __ _ _   _ _ __ 
//   | |_| |/ _` | '_ \ / _` |/ _` | | | | '_ \
//   |  _  | (_| | | | | (_| | (_| | |_| | | | |
//   |_| |_|\__,_|_| |_|\__,_|\__, |\__,_|_| |_|
//                            |___/               
 
if(Pistol_ON)
{  // Pistol start
 
// Antirecoil Horizontal and Vertical adjustable on the fly
        AR_Handgun = edit_val (0, PS4_L2, PS4_CROSS, AR_Handgun, PS4_UP, PS4_DOWN, 0, 100);
        ARH_Handgun = edit_val (1, PS4_L2, PS4_CROSS, ARH_Handgun, PS4_RIGHT, PS4_LEFT, -100, 100);
 
 
// RapidFire
    if(get_val(PS4_CROSS) && get_val(PS4_CIRCLE) && event_press(PS4_R2))
    {
        RF_Handgun_ON = !RF_Handgun_ON;
        Rumble(RF_Handgun_ON, 0);
    }
 
    if(RF_Handgun_ON)
    {
        RoF_Handgun = edit_val (2, PS4_CROSS, PS4_CIRCLE, RoF_Handgun, PS4_UP, PS4_DOWN, 1, 25);
        RF ();
    }
 
}  // Pistol end
 
//_______________________________________________________________________________________________________________________//
if(!Pistol_ON)
{  // NOT Pistol start
//_______________________________________________________________________________________________________________________//
 
//    ____       _                                 __ __        __                           _
//   |  _ \ _ __(_)_ __ ___   __ _ _ __ _   _     / / \ \      / /__  __ _ _ __   ___  _ __ / |
//   | |_) | '__| | '_ ` _ \ / _` | '__| | | |   / /   \ \ /\ / / _ \/ _` | '_ \ / _ \| '_ \| |
//   |  __/| |  | | | | | | | (_| | |  | |_| |  / /     \ V  V /  __/ (_| | |_) | (_) | | | | |
//   |_|   |_|  |_|_| |_| |_|\__,_|_|   \__, | /_/       \_/\_/ \___|\__,_| .__/ \___/|_| |_|_|
//                                      |___/                             |_|                 
 
if(!Switch)
{
 
// Antirecoil Horizontal and Vertical adjustable on the fly
    AR_Primary = edit_val (0, PS4_L2, PS4_CROSS, AR_Primary, PS4_UP, PS4_DOWN, 0, 100);
    ARH_Primary = edit_val (1, PS4_L2, PS4_CROSS, ARH_Primary, PS4_RIGHT, PS4_LEFT, -100, 100);
 
// RapidFire
    if(get_val(PS4_CROSS) && get_val(PS4_CIRCLE) && event_press(PS4_R2))
    {
        RF_Primary_ON = !RF_Primary_ON;
        Rumble(RF_Primary_ON, 0);
    }
 
    if(RF_Primary_ON)
    {
        RoF_Primary = edit_val (2, PS4_CROSS, PS4_CIRCLE, RoF_Primary, PS4_UP, PS4_DOWN, 1, 25);
        RF ();
    }
 
//---------------------------------------
}    //PRIMARY end
 
//_______________________________________________________________________________________________________________________//
 
//    ____                           _                       __ __        __                           ____ 
//   / ___|  ___  ___ ___  _ __   __| | __ _ _ __ _   _     / / \ \      / /__  __ _ _ __   ___  _ __ |___ \
//   \___ \ / _ \/ __/ _ \| '_ \ / _` |/ _` | '__| | | |   / /   \ \ /\ / / _ \/ _` | '_ \ / _ \| '_ \  __) |
//    ___) |  __/ (_| (_) | | | | (_| | (_| | |  | |_| |  / /     \ V  V /  __/ (_| | |_) | (_) | | | |/ __/
//   |____/ \___|\___\___/|_| |_|\__,_|\__,_|_|   \__, | /_/       \_/\_/ \___|\__,_| .__/ \___/|_| |_|_____|
//                                                |___/                             |_|                     
 
if(Switch)
{
 
// Antirecoil Horizontal and Vertical adjustable on the fly
    AR_Secondary = edit_val (0, PS4_L2, PS4_CROSS, AR_Secondary, PS4_UP, PS4_DOWN, 0, 100);
    ARH_Secondary = edit_val (1, PS4_L2, PS4_CROSS, ARH_Secondary, PS4_RIGHT, PS4_LEFT, -100, 100);
 
 
// RapidFire
    if(get_val(PS4_CROSS) && get_val(PS4_CIRCLE) && event_press(PS4_R2))
    {
        RF_Secondary_ON = !RF_Secondary_ON;
        Rumble(RF_Secondary_ON, 0);
    }
 
    if(RF_Secondary_ON)
    {
        RoF_Secondary =  edit_val (2, PS4_CROSS, PS4_CIRCLE, RoF_Secondary, PS4_UP, PS4_DOWN, 1, 25);
        RF ();
    }
 
//---------------------------------------
}    // SECONDARY end
//_______________________________________________________________________________________________________________________//
 
}   // NOT Pistol end
//_______________________________________________________________________________________________________________________//
 
}   // NOT Special end
//_______________________________________________________________________________________________________________________//
 
}   // Script Enable end
//_______________________________________________________________________________________________________________________//
 
  // COLOR INDICATION
 
    if(Script_ON)
    {
        if(!Special_ON)
        {   
            if(!Pistol_ON)
            {
                if(!Switch) LED(Blue); // BLUE Primary
                if(Switch) LED(Red);    // RED Secondary
            }       
            if(Pistol_ON) LED(SkyBlue);   // SKYBLUE Handgun
        }   
        if(Special_ON) LED(White); // WHITE Special
    }
    if(!Script_ON) LED(Off); // OFF
//_______________________________________________________________________________________________________________________//
 
}    //main end
//---------------------------------------
//                    _          _____           _
//    _ __ ___   __ _(_)_ __    | ____|_ __   __| |
//   | '_ ` _ \ / _` | | '_ \   |  _| | '_ \ / _` |
//   | | | | | | (_| | | | | |  | |___| | | | (_| |
//   |_| |_| |_|\__,_|_|_| |_|  |_____|_| |_|\__,_|
//_______________________________________________________________________________________________________________________//
//_______________________________________________________________________________________________________________________//
//     ____                _           
//    / ___|___  _ __ ___ | |__   ___ 
//   | |   / _ \| '_ ` _ \| '_ \ / _ \
//   | |__| (_) | | | | | | |_) | (_) |
//    \____\___/|_| |_| |_|_.__/ \___/
 
//----------------------------------------------------- Weapons combos -------------------------------------------------//
 
combo RAPID_FIRE {
    wait(hold_time);
    set_val(PS4_R2, 0);
    wait(rest_time);
    }
 
//----------------------------------------------------- Features combos -------------------------------------------------//
 
combo Strafe_Shot {
    set_val(PS4_LX, 100);
    wait(Strafe_Shot_Time);
    wait(50);
    set_val(PS4_LX, -100);
    wait(Strafe_Shot_Time);
    wait(50);
    }
 
//---------------------------------------
 
combo Grenade {
    set_val(PS4_LEFT, 100);
    wait(20);
    wait(800);
    set_val(PS4_R2, 100);
    wait(100);
    set_val(PS4_L2, 0);
    wait(10);
    }
 
//---------------------------------------
 
combo Hold {
    set_val(Button, 100);
    wait(2500);
    }
 
//---------------------------------------
 
combo Vibrate {
    set_rumble(rumble_side, 100);
    wait(rumble_time);
    reset_rumble();
    wait(100);
    }
 
//---------------------------------------
 
combo Flash {
    wait(300);
    LED(Off);
    wait(500);
    }
 
//---------------------------------------
 
combo AntiRecoil {
    arv = get_val(10) + ARV;
    if(arv > 100) arv = 100;
    set_val(10, arv);
    arh = get_val(9) + ARH;
    if(arh > 100) arh = 100;
    set_val(9, arh);
}
 
//_______________________________________________________________________________________________________________________//
//    _____                 _   _             
//   |  ___|   _ _ __   ___| |_(_) ___  _ __ 
//   | |_ | | | | '_ \ / __| __| |/ _ \| '_ \
//   |  _|| |_| | | | | (__| |_| | (_) | | | |
//   |_|   \__,_|_| |_|\___|\__|_|\___/|_| |_|
 
 
function edit_val (f_idx, f_btn1, f_btn2, f_var, f_inc, f_dec, f_min, f_max) {
    idx = f_idx;
 
    if(idx == 0)
        ARV = f_var;
    if(idx == 1)
        ARH =  f_var;
    if(idx == 2)
        RATE_OF_FIRE = f_var;
 
    if(get_val(f_btn1) && get_lval(f_btn2))
    {
        if(event_press(f_inc))
            f_var = f_var +1;
        if(event_press(f_dec))
            f_var = f_var -1;
 
        set_val(f_inc, 0); set_val(f_dec, 0);
 
        if(f_var < f_min)
        {
            f_var = f_min;
            Rumble(TRUE, 0);
        }
        if(f_var > f_max)
        {
            f_var = f_max;
            Rumble(TRUE, 0);
        }
        set_val(f_btn2, 0);
    }
    return f_var;
}
 
//---------------------------------------
 
function RF () {
  //RoF Calculation
    hold_time = 500 / RATE_OF_FIRE;
    rest_time = hold_time - 20;
    if(rest_time < 0) rest_time = 0;
 
    combo_run(Flash);
 
     if(get_val(PS4_R2))
        combo_run(RAPID_FIRE);
        else
            combo_stop(RAPID_FIRE);
}
 
//---------------------------------------
 
function SkillDestroy (f_btn){
    if(event_press(f_btn))
    {
        if(double_tap)
        {
            Button = f_btn;
            combo_run(Hold);
        }
            else
                double_tap = 200;
    }
}
 
//---------------------------------------
 
function Rumble (f_var, f_num) {
    if(f_var)                       
     {
         if(!f_num)
            run_rumble = 1;
            else
                run_rumble = f_num;
 
        rumble_side = RUMBLE_A;
        rumble_time = 300;
        set_ledx(2, 1);
    }
        else
        {
             if(!f_num)
                run_rumble = 2;
                else
                    run_rumble = f_num;
 
            rumble_side= RUMBLE_B;
            rumble_time = 150;
            set_ledx(1, 2);
        }
}
//---------------------------------------
 
function LED(color) {
    bit = 0;
    while(bit < 3) {
        bit ++;
        set_led(bit, test_bit(color, bit));
    }
}
//    _____           _
//   | ____|_ __   __| |
//   |  _| | '_ \ / _` |
//   | |___| | | | (_| |
//   |_____|_| |_|\__,_|
ConsoleTuner Support Team || ConsoleTuner Discord || InputSense Discord
Mad
Major General
Major General
 
Posts: 4536
Joined: Wed May 22, 2019 5:39 am

Re: [Request] The Division 2 - XBox One - Titan One

Postby luyama » Sat Nov 30, 2019 2:33 pm

all too well, thank you :smile0517:
I would like to make automatic or very fast fire weapons (shotgun, rifles, sniper) :oops:
I think I can do it thanks to your sharing :)

---

trop bien, merci :smile0517:
je voudrais rendre automatique ou en tire très rapide les armes coup par coup (fusil à pompe, fusils, sniper) :oops:
je pense pouvoir y arriver grace à ton partage :)
User avatar
luyama
Sergeant
Sergeant
 
Posts: 8
Joined: Wed May 30, 2018 10:25 am

Re: [Request] The Division 2 - XBox One - Titan One

Postby mackemsrule » Tue May 19, 2020 5:44 pm

How do I install these? when i try to program them they both come up with a message saying there is an error in script 2
User avatar
mackemsrule
Private First Class
Private First Class
 
Posts: 2
Joined: Tue May 19, 2020 5:42 pm

Re: [Request] The Division 2 - XBox One - Titan One

Postby Mad » Tue May 19, 2020 9:23 pm

mackemsrule wrote:How do I install these? when i try to program them they both come up with a message saying there is an error in script 2

Try this:
Code: Select all
int AR_Primary = 20;     // Antirecoil Vertical
int ARH_Primary = 0;     // AntiRecoil Horizontal
 
//----------------------------------------------------------------------------------------------------------------------//
                                    // SECONDARY WEAPON ANTIRECOIL:
 
int AR_Secondary = 25;     // Antirecoil Vertical
int ARH_Secondary = 0;     // AntiRecoil Horizontal
 
//----------------------------------------------------------------------------------------------------------------------//
                                    // HANDGUN ANTIRECOIL:
 
int AR_Handgun = 30;     // Antirecoil Vertical
int ARH_Handgun = 0;     // AntiRecoil Horizontal
 
 
int RF_Handgun_ON = TRUE;     // Set TRUE to enable RapidFire by default on Handgun
int RoF_Handgun = 6;             // Range: 1 to 25 RPS (Round/s)
 
int RF_Primary_ON = FALSE;     // Set TRUE to enable RapidFire by default on Primary
int RoF_Primary = 8;             // Range: 1 to 25 RPS (Round/s)
 
int RF_Secondary_ON = FALSE;    // Set TRUE to enable RapidFire by default on Secondary
int RoF_Secondary = 10;         // Range: 1 to 25 RPS (Round/s)
 
int Burst_Hold = 400;         // How many time you hold Fire button
int Burst_Release = 150;     // How many time you release Fire button
 
int Strafe_Shot_ON = FALSE;     // TRUE = enable this feature, FALSE = disable this feature
int Strafe_Shot_Time  = 750;      // Amount of time you go to the sides
 
int R1L1_ONoff = FALSE; // FALSE = shoot and aim with R2/L2 or RT/LT // TRUE = shoot and aim with R1/L1 or RB/LB
 
int Axis_inverted = FALSE; // Set TRUE for Right Y axis inverted, esle set FALSE
 
                                                                //#
int Script_ON = 1;                                                //#
int double_tap;                                                   //#
int Switch;                                                       //#
int Pistol_ON;                                                    //#
int RATE_OF_FIRE;                                                 //#
int hold_time;                                                    //#
int rest_time;                                                    //#
int Special_ON;                                                   //#
int Map;                                                          //#
int Map_BTN;                                                      //#
int ms;                                                           //#
int ARV;                                                          //#
int ARH;                                                          //#
int arv;                                                          //#
int arh;                                                          //#
int idx;                                                          //#
int Button;                                                       //#
int Burst_ON;                                                     //#
int run_rumble;                                                   //#
int rumble_side;                                                  //#
int rumble_time;                                                  //#
int bit;                                                          //#
                                                                  //#
define Off       = 0;                                             //#
define Blue      = 1;                                             //#
define Red       = 2;                                             //#
define Green     = 3;                                             //#
define Pink      = 4;                                             //#
define SkyBlue   = 5;                                             //#
define Yellow    = 6;                                             //#
define White     = 7;                                             //#
 
init {
    AR_Primary = get_pvar(SPVAR_1, -100, 100, 0);   ARH_Primary = get_pvar(SPVAR_4, -100, 100, 0);   RoF_Primary = get_pvar(SPVAR_7, 1, 25, 1);
    AR_Secondary = get_pvar(SPVAR_2, -100, 100, 0); ARH_Secondary = get_pvar(SPVAR_5, -100, 100, 0); RoF_Secondary = get_pvar(SPVAR_8, 1, 25, 1);
    AR_Handgun = get_pvar(SPVAR_3, -100, 100, 0);   ARH_Handgun = get_pvar(SPVAR_6, -100, 100, 0);   RoF_Handgun = get_pvar(SPVAR_9, 1, 25, 1);
}
 
main { // main start
 
  //Crossover
 
    if(get_controller() != PIO_PS4)
    {
        if(get_console() == PIO_PS4)
        {
            swap(PS4_SHARE,PS4_TOUCH);
            Map_BTN = PS4_TOUCH;
 
                if(get_val(PS4_TOUCH) && get_val(PS4_R3))
                {
                    set_val(PS4_SHARE,100);
                    set_val(PS4_TOUCH,0);
                    set_val(PS4_R3,0);
                }
        }
 
        if(get_console() != PIO_PS4)
            Map_BTN = PS4_SHARE;
    }
    else
        Map_BTN = PS4_TOUCH;
 
//---------------------------------------
 
  //Check your values in Device Monitor
 
    set_val(TRACE_1,ARV);           // Antirecoil Vertical
    set_val(TRACE_2,ARH);           // Antirecoil Horizontal
    set_val(TRACE_3,RATE_OF_FIRE)// Rate of fire 
    set_val(TRACE_4,Switch);        // Primary = 0, Secondary = 1
    set_val(TRACE_5,Special_ON); // Special weapon = 1
    set_val(TRACE_6,Pistol_ON)// Handgun = 1
 
//---------------------------------------
 
  //Rumble start and restart
    if(run_rumble && !combo_running(Vibrate))
    {
        run_rumble = run_rumble -1;
        combo_restart(Vibrate);
    }
 
//---------------------------------------
 
  //Battery warning
    if(get_battery() <= 1)
    {
        ms = ms + get_rtime();
 
            if(ms == 10000)
            {
                Rumble (FALSE, 3);
                ms = 0;
            }
    }
 
//---------------------------------------
 
  //Swap Triggers
    if(R1L1_ONoff)
    {
        swap(3, 4);
        swap(6, 7);
    }
 
//---------------------------------------
 
  //Inverted Axis
    if(Axis_inverted)
    {
        set_val(PS4_RY, inv(get_val(PS4_RY)));
    }
 
    if(event_press(PS4_PS) || (!get_val(PS4_L2) && event_press(PS4_OPTIONS)) || (get_val(PS4_L3) && event_press(PS4_R3)))
    {
        Script_ON=!Script_ON;
        Rumble(Script_ON, 0);
    }
 
    if(!Map)
            set_val(Map_BTN, 0);
 
    if(event_release(Map_BTN))
    {
        if(get_ptime(Map_BTN) <= 100)
        { 
            Script_ON = TRUE;
            rumble_side= RUMBLE_A;
            rumble_time = 300;
            combo_run(Vibrate);
        } 
 
            else
            {
                set_val(Map_BTN, 100);
 
                if(get_ptime(Map_BTN) <= 500)
                {
                    Script_ON = FALSE;
                    Map = TRUE;
                     Rumble(Script_ON, 0);
                }
                    else
                    {
                        Map = FALSE;
                        Script_ON = TRUE;
                         Rumble(Script_ON, 0);
                    }
 
            }
     }
     if(Map && (event_press(PS4_CIRCLE) || event_press(Map_BTN)))
     {
         Map = FALSE;
         Script_ON = TRUE;
         Rumble(Script_ON, 0);
     }
 
if(Script_ON)
{ // Script Enable start
 
    if(event_press(PS4_TRIANGLE) && (!get_val(PS4_DOWN) && !Special_ON || get_lval(PS4_L3)))
    {
        Switch=!Switch;
        Pistol_ON = FALSE;
 
        if(double_tap)
          {
              Pistol_ON = TRUE ;
              Switch = !Switch;
          }
              else
                  double_tap = 200;// Double tap speed (discrease value to have to double tap faster to switch to side arm)
    }
 
//---------------------------------------
 
/* Special Weapon mod (Anti-Recoil and RapidFire disable)
     Hold TRIANGLE/Y (Led color turn WHITE)
*/

 
    if(get_val(PS4_TRIANGLE) && get_ptime(PS4_TRIANGLE) > 500)
    {
        Special_ON = TRUE;
    }
 
    if(Special_ON && event_press(PS4_TRIANGLE))
    {
         Special_ON = FALSE;
         Switch = !Switch;
    }
 
//---------------------------------------
 
/* Double Tap function
     For all double tap features
*/

 
    if(double_tap)
        double_tap = double_tap - get_rtime();
 
//---------------------------------------
 
/* Strafe Shot
     Strafe to the Right and to the Left while shooting
     Enable or disable with TRUE / FALSE value
     Enable or disable in game:
     Hold CROSS/A + CIRCLE/B and tap D Pad DOWN to enable or disable this feature on the fly
     Controller vibrate
*/

 
    if((get_val(PS4_CROSS) && get_val(PS4_CIRCLE)) && event_press(PS4_DOWN))
    {
        Strafe_Shot_ON = !Strafe_Shot_ON;
        Rumble(Strafe_Shot_ON, 0);
    }
 
if(Strafe_Shot_ON)
{
    if(get_val(PS4_L2) && get_val(PS4_R2))
        combo_run(Strafe_Shot);
    else
        combo_stop(Strafe_Shot);
}
//---------------------------------------
 
/* Hair Trigger
     Your triggers are VERY reactive
*/

 
    deadzone(PS4_L2,PS4_R2,99,99);
 
//---------------------------------------
 
    if(!get_val(PS4_L2))
    {
    /* AutoRun press sensitive (Work better when in game option "Press to Sprint" is turned OFF)
     Push your stick to more than 60% to run automatically
    */

        if(get_val(PS4_LY) < -60)
        {
            set_val(PS4_LY, -100);
            set_val(PS4_L3, 100);
        }
 
    //---------------------------------------
 
    /* Dead Zone Correction (Right Stick)
     Fix the DeadZone defect which is never really neutral
    */

        if(abs(get_val(PS4_RY)) <= 5 && abs(get_val(PS4_RX)) <= 5 )
        {
            set_val(PS4_RY,0);                                                 
            set_val(PS4_RX,0);
        }
 
    //---------------------------------------
 
    /* Easy MedKit
     Double tap D pad Right to change your armor piece, move Left analog to cancel
    */

        if(event_press(PS4_RIGHT))
        {
            if(double_tap)
            {
                   Button = PS4_RIGHT;
                combo_run(Hold);
            }
 
            else
                double_tap = 200;
        }
    //---------------------------------------
    }
 
    if(Button == PS4_RIGHT && (abs(get_val(PS4_LX)) > 90 || abs(get_val(PS4_LY)) > 90))
        combo_stop(Hold);
 
//---------------------------------------
 
    if(!get_val(PS4_CIRCLE) && !get_val(PS4_CROSS) && !get_val(PS4_SQUARE))
    {
        //---------------------------------------
 
        /* Quick Grenade
             Hold ADS button and press D Pad LEFT or only hold D Pad LEFT to throw a grenade
        */

 
        if((get_val(PS4_L2) && event_press(PS4_LEFT) || get_val(PS4_LEFT) && get_ptime(PS4_LEFT) > 200))
            combo_run(Grenade);
 
        //---------------------------------------
 
        /* Burst Fire
             Hold L2/LT and tap D pad RIGHT to enable Burst Fire
             Release L2/LT to disable
        */

 
        if(get_val(PS4_L2) && event_press(PS4_RIGHT))
            Burst_ON = !Burst_ON;
 
                else if(event_release(PS4_L2))
                    Burst_ON = FALSE;
 
        if(get_val(PS4_R2) && Burst_ON)
        {
            hold_time = Burst_Hold;
            rest_time = Burst_Release;
            combo_run(RAPID_FIRE);
        }
        //---------------------------------------
    }
 
    SkillDestroy (PS4_R1);
    SkillDestroy (PS4_L1);
 
 
    if(get_val(PS4_L2))
    {
        if(event_press(PS4_OPTIONS))
        {
            set_pvar(SPVAR_1, AR_Primary);   set_pvar(SPVAR_4, ARH_Primary);   set_pvar(SPVAR_7, RoF_Primary);
            set_pvar(SPVAR_2, AR_Secondary); set_pvar(SPVAR_5, ARH_Secondary); set_pvar(SPVAR_8, RoF_Secondary);
            set_pvar(SPVAR_3, AR_Handgun);   set_pvar(SPVAR_6, ARH_Handgun);   set_pvar(SPVAR_9, RoF_Handgun);
            Rumble(TRUE, 3);                 combo_run(Flash)
        }
    set_val(PS4_OPTIONS, 0)
    }
 
if(!Special_ON)
{ // NOT Special start
 
/* Antirecoil
*/

    if(get_val(PS4_R2))
        combo_run(AntiRecoil);
            else
                combo_stop(AntiRecoil);
 
 
if(Pistol_ON)
{  // Pistol start
 
// Antirecoil Horizontal and Vertical adjustable on the fly
        AR_Handgun = edit_val (0, PS4_L2, PS4_CROSS, AR_Handgun, PS4_UP, PS4_DOWN, 0, 100);
        ARH_Handgun = edit_val (1, PS4_L2, PS4_CROSS, ARH_Handgun, PS4_RIGHT, PS4_LEFT, -100, 100);
 
 
// RapidFire
    if(get_val(PS4_CROSS) && get_val(PS4_CIRCLE) && event_press(PS4_R2))
    {
        RF_Handgun_ON = !RF_Handgun_ON;
        Rumble(RF_Handgun_ON, 0);
    }
 
    if(RF_Handgun_ON)
    {
        RoF_Handgun = edit_val (2, PS4_CROSS, PS4_CIRCLE, RoF_Handgun, PS4_UP, PS4_DOWN, 1, 25);
        RF ();
    }
 
}  // Pistol end
 
if(!Pistol_ON)
{  // NOT Pistol start
 
if(!Switch)
{
 
// Antirecoil Horizontal and Vertical adjustable on the fly
    AR_Primary = edit_val (0, PS4_L2, PS4_CROSS, AR_Primary, PS4_UP, PS4_DOWN, 0, 100);
    ARH_Primary = edit_val (1, PS4_L2, PS4_CROSS, ARH_Primary, PS4_RIGHT, PS4_LEFT, -100, 100);
 
// RapidFire
    if(get_val(PS4_CROSS) && get_val(PS4_CIRCLE) && event_press(PS4_R2))
    {
        RF_Primary_ON = !RF_Primary_ON;
        Rumble(RF_Primary_ON, 0);
    }
 
    if(RF_Primary_ON)
    {
        RoF_Primary = edit_val (2, PS4_CROSS, PS4_CIRCLE, RoF_Primary, PS4_UP, PS4_DOWN, 1, 25);
        RF ();
    }
 
 
}    //PRIMARY end
 
 
 
if(Switch)
{
 
// Antirecoil Horizontal and Vertical adjustable on the fly
    AR_Secondary = edit_val (0, PS4_L2, PS4_CROSS, AR_Secondary, PS4_UP, PS4_DOWN, 0, 100);
    ARH_Secondary = edit_val (1, PS4_L2, PS4_CROSS, ARH_Secondary, PS4_RIGHT, PS4_LEFT, -100, 100);
 
 
// RapidFire
    if(get_val(PS4_CROSS) && get_val(PS4_CIRCLE) && event_press(PS4_R2))
    {
        RF_Secondary_ON = !RF_Secondary_ON;
        Rumble(RF_Secondary_ON, 0);
    }
 
    if(RF_Secondary_ON)
    {
        RoF_Secondary =  edit_val (2, PS4_CROSS, PS4_CIRCLE, RoF_Secondary, PS4_UP, PS4_DOWN, 1, 25);
        RF ();
    }
}
 
}
}
 
}
 
    if(Script_ON)
    {
        if(!Special_ON)
        {   
            if(!Pistol_ON)
            {
                if(!Switch) LED(Blue); // BLUE Primary
                if(Switch) LED(Red);    // RED Secondary
            }       
            if(Pistol_ON) LED(SkyBlue);   // SKYBLUE Handgun
        }   
        if(Special_ON) LED(White); // WHITE Special
    }
    if(!Script_ON) LED(Off); // OFF
 
}
 
combo RAPID_FIRE {
    wait(hold_time);
    set_val(PS4_R2, 0);
    wait(rest_time);
    }
 
combo Strafe_Shot {
    set_val(PS4_LX, 100);
    wait(Strafe_Shot_Time);
    wait(50);
    set_val(PS4_LX, -100);
    wait(Strafe_Shot_Time);
    wait(50);
    }
 
combo Grenade {
    set_val(PS4_LEFT, 100);
    wait(20);
    wait(800);
    set_val(PS4_R2, 100);
    wait(100);
    set_val(PS4_L2, 0);
    wait(10);
    }
 
combo Hold {
    set_val(Button, 100);
    wait(2500);
    }
 
combo Vibrate {
    set_rumble(rumble_side, 100);
    wait(rumble_time);
    reset_rumble();
    wait(100);
    }
 
combo Flash {
    wait(300);
    LED(Off);
    wait(500);
    }
 
combo AntiRecoil {
    arv = get_val(10) + ARV;
    if(arv > 100) arv = 100;
    set_val(10, arv);
    arh = get_val(9) + ARH;
    if(arh > 100) arh = 100;
    set_val(9, arh);
}
 
function edit_val (f_idx, f_btn1, f_btn2, f_var, f_inc, f_dec, f_min, f_max) {
    idx = f_idx;
 
    if(idx == 0)
        ARV = f_var;
    if(idx == 1)
        ARH =  f_var;
    if(idx == 2)
        RATE_OF_FIRE = f_var;
 
    if(get_val(f_btn1) && get_lval(f_btn2))
    {
        if(event_press(f_inc))
            f_var = f_var +1;
        if(event_press(f_dec))
            f_var = f_var -1;
 
        set_val(f_inc, 0); set_val(f_dec, 0);
 
        if(f_var < f_min)
        {
            f_var = f_min;
            Rumble(TRUE, 0);
        }
        if(f_var > f_max)
        {
            f_var = f_max;
            Rumble(TRUE, 0);
        }
        set_val(f_btn2, 0);
    }
    return f_var;
}
 
function RF () {
  //RoF Calculation
    hold_time = 500 / RATE_OF_FIRE;
    rest_time = hold_time - 20;
    if(rest_time < 0) rest_time = 0;
 
    combo_run(Flash);
 
     if(get_val(PS4_R2))
        combo_run(RAPID_FIRE);
        else
            combo_stop(RAPID_FIRE);
}
 
function SkillDestroy (f_btn){
    if(event_press(f_btn))
    {
        if(double_tap)
        {
            Button = f_btn;
            combo_run(Hold);
        }
            else
                double_tap = 200;
    }
}
 
function Rumble (f_var, f_num) {
    if(f_var)                       
     {
         if(!f_num)
            run_rumble = 1;
            else
                run_rumble = f_num;
 
        rumble_side = RUMBLE_A;
        rumble_time = 300;
        set_ledx(2, 1);
    }
        else
        {
             if(!f_num)
                run_rumble = 2;
                else
                    run_rumble = f_num;
 
            rumble_side= RUMBLE_B;
            rumble_time = 150;
            set_ledx(1, 2);
        }
}
 
function LED(color) {
    bit = 0;
    while(bit < 3) {
        set_led(bit, test_bit(color, bit));
        bit ++;
    }
}
ConsoleTuner Support Team || ConsoleTuner Discord || InputSense Discord
Mad
Major General
Major General
 
Posts: 4536
Joined: Wed May 22, 2019 5:39 am

Re: [Request] The Division 2 - XBox One - Titan One

Postby mackemsrule » Thu May 21, 2020 2:43 pm

Thank you I think that worked only thing is this looks like it's for ps4 I'm on xbox lol
User avatar
mackemsrule
Private First Class
Private First Class
 
Posts: 2
Joined: Tue May 19, 2020 5:42 pm

Re: [Request] The Division 2 - XBox One - Titan One

Postby Mad » Thu May 21, 2020 9:03 pm

mackemsrule wrote:Thank you I think that worked only thing is this looks like it's for ps4 I'm on xbox lol

The buttons are the same for both consoles. :smile0517:
ConsoleTuner Support Team || ConsoleTuner Discord || InputSense Discord
Mad
Major General
Major General
 
Posts: 4536
Joined: Wed May 22, 2019 5:39 am


Return to GPC1 Script Programming

Who is online

Users browsing this forum: No registered users and 95 guests