GPC Library

DESTINY 2

RAPID-FIRE ANTI-RECOIL ON AND OFF AND ADJUSTABLE AUTO SPRINT ALWAYS ON
Version 1
Author darryldcook
Publish Date 2017-09-15 22:49:29
Update Date 2017-09-15 22:49:48
Downloads 1124
RATE


4

0

Release Notes: THIS IS MY FIRST SCRIPT I LOOKED AT A BUNCH OF SCRIPT'S TO FIGURE THIS OUT LET ME KNOW OF ANY BUGS
Code:Select all
//Posted by DARRYL COOK, a member of the community in the CronusMAX Forums - http://cronusmax.com/forums
 
//Posted : Thursday 14th of September, 2017 18:34 UTC  
 
 
 
//-------------------------------------------------------------------------------------------
//  ANTIRECOIL and RAPIDFIRE and AUTO SPRINT (both adjustable on the fly, with ON/OFF and SAVE function)
//-------------------------------------------------------------------------------------------
//  Version: 1.0
//  Platform: Multi
//  Controller: Multi
//  Game: All FPS games
//  Author: LEX LOST
//------------------------------------------------------------------------------------------
 
//  LED indications:
 
//  Green:   rapidfire ON - antirecoil ON
//  Fuchsia: antirecoil ON - rapidfire OFF
//  Blue:    rapidfire ON - antirecoil OFF
//  Red:     rapidfire OFF - antirecoil OFF;
//-------------------------------------------------------------------------------------------
//           PLAYSTATION INSTRUCTIONS:
 
// RAPIDFIRE (ON by default - Start value: 13 - GREEN led = ON; RED led = OFF)
// Hold RIGHT to for more than 400ms to Disable Rapidfire (with rumble notify)
// Tap RIGHT to restore rapidfire
// 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 CROSS)
 
// ANTIRECOIL (ON by default - Start value: vertical = 30; Horizontal = 0)
// Hold L2 and Press CROSS 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 CronusMax eeprom: Hold L2 and press OPTIONS (or START, for PS3 users)
 
//-------------------------------------------------------------------------------------------
 
//DECLARARATIONS - define
 
define RF_switch  = 20;   // XB1_Y - PS4_TRIANGLE 
define AR_switch  = 19;   // XB1_A - PS4_CROSS
//-------------------------------------------------------------------------------------------
define save       =  2;   // XB1_MENU - PS4_OPTIONS
//-------------------------------------------------------------------------------------------
define AR_Release = 70;      // change this value to determine when antirecoil stops working (min: antirecoil value + 10)
define Scope_only = TRUE; // if TRUE Antirecoil IS ON only when scoping - if FALSE, is always ON
//-------------------------------------------------------------------------------------------
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  = TRUE; // if TRUE Antirecoil is ON by default - if FALSE, OFF by default
int rapid_onoff   = TRUE; // 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;
 
//-------------------------------------------------------------------------------------------
 
//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_1,  0, 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 {

// AUTO SPRINT
   if(get_val(XB1_LY) < -90) {
    combo_run(sprint_C);
   }
   
// RAPIDFIRE SWITCH
   // ON/OFF mode
   if(get_val(RIGHT) && get_ptime(RIGHT)>=400){
      combo_run(vibrate); rapid_onoff = FALSE;
    }
 
// ANTIRECOIL SWITCH    
    if(get_val(7) && event_press(AR_switch))  {
        combo_run (vibrate); 
        recoil_onoff=!recoil_onoff;
        } 
// RAPIDFIRE
   //  Mode ON 
    if(event_press(RIGHT))rapid_onoff = TRUE; 
 
    if((rapid_onoff) && recoil_onoff) colourled(Green); 
    if((rapid_onoff) && !recoil_onoff) colourled(Blue); 
    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);
 
    }
    if(!Scope_only || 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 sprint_C {
    set_val(XB1_LS, 100);
    }
    
combo vibrate {
    set_rumble(RUMBLE_A, 100);
    wait(300);
    reset_rumble();
    }
 
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 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
  • Rating

    10 / 10 here !

    If you own a ps3 and prefer an xbox controller, or even use a keyboard and mouse, this is a must to remap your keyboard to a controller. Go buy it now you won't be disappointed !

  • Rating

    Amazing device

    If you're like me and love your PS4 controller but want to use an Xbox One GET THIS you won't be sorry.

  • Rating

    Worth every penny

    The controller feels and performs as it does on the xbox right there on my ps3, awesome job guys, and worth every penny !!!

  • Rating

    Amazing Macro combos

    tested Super Street Fighter IV Arcade Edition. I was able to perform normal & FADC combos with some characters like Ryu and Ken with a single click. Amazing.

  • Rating

    As good as a XIM

    If you are a pc gamer, that needs a pc solution for console, get yourself a ControllerMAX you will not regret it.

  • Rating

    KB & Mouse RULES!

    All I can say playing 10 minutes with ControllerMAX properly configured it felt better then PC....YES I said it even better then PC, it's that smooth.

  • Rating

    Six-Axis 360!

    WOW! I can finally get that six-axis awesomeness on my Xbox 360. The best money I ever spent.

  • Rating

    Beats all rapidfire mods

    I've tried the Intensafire, Godfather even the new Wolf controller. The ControllerMAX beats them hands down and no wires or soldering too. 5 Stars!

  • Rating

    Just perfect!

    I can't believe how much this can do for the price tag - it blew me away. Best controller upgrade ever.

  • Rating

    Hugh Thanks!

    Without your help I couldn't be playing Xbox, thanks guys.

  • Rating

    Wow!

    I have to say after reading the forums for Destiny Mouse and Keyboard setup I was flying into getting it set up in 20 minutes. It works outstanding! I'm more then satisfied and its worth every penny!

  • Rating

    Achievement Unlocked!

    Idle boosting Complete 150 Multiplayer games, James Cameron's Avatar. My friend said it would be hard, I laughed then linked him.

  • Rating

    A++!

    Now this is a company you can count on and trust...keep up the great work guys!

  • Rating

    What Disability?

    I would like to thank you for making the CronusMax. I have this problem hitting L3 and R3, and today that problem was fixed. I love the remap feature on the Cronus max. You made my life easier.

  • Rating

    Awesome stuff guys!

    Playing Forza 5 with my original MS 360 wireless wheel makes the XB1 complete for me, thanks to the CronusMax. Thumbs up!