left analoge

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

left analoge

Postby peter373635 » Mon Nov 23, 2020 9:24 am

Hi there, not good with scripts and might sound basic but just looking for a xbox one script to slow the left analogue stick to its slowest if possible on the titan two or maybe adjust it to the speed i need. thanks guys :joia: :joia:
User avatar
peter373635
Sergeant
Sergeant
 
Posts: 7
Joined: Mon Nov 23, 2020 9:18 am

Re: left analoge

Postby Mad » Mon Nov 23, 2020 9:55 am

Welcome Peter. :smile0201:

Adjust SENS. 1.0 is normal speed.

Code: Select all
#define SENS 0.5
 
main {
    set_val(STICK_2_X, clamp(get_actual(STICK_2_X) * SENS, -100f, 100f));
    set_val(STICK_2_Y, clamp(get_actual(STICK_2_Y) * SENS, -100f, 100f));
}
ConsoleTuner Support Team || ConsoleTuner Discord || InputSense Discord
Mad
Major General
Major General
 
Posts: 4536
Joined: Wed May 22, 2019 5:39 am

Re: left analoge

Postby BEAST07 » Mon Nov 23, 2020 10:10 am

HI Peter,
here is my script that changes all leftstick sens (20 to 150 is the adjustment lower the number less your turn)
Code: Select all
GEN_SENS=100  NOTE:  LEFTSTICK looking around all the time
ADS_SENS=100 NOTE: LEFTSTICK movement when LEFT trigger
HIP_SENS=100 NOTE: LEFTSTICK movement when RIGHT trigger
ADS_FIRE_SENS NOTE: LEFTSTICK movement when LEFT trigger & RIGHT trigger
 
copy & paste below see how you go have fun peter
#pragma METAINFO("", 1, 0, "<------>")
 
 
int AIM__CORRECT = TRUE;
int ADS_SENS=80, GEN_SENS=100, HIP_SENS=100, ADS_FIRE_SENS=100, Use_sens, midpoint=50;
 
#include <xb1.gph>
 
#define HOME        XB1_XBOX
#define VIEW_reset  XB1_VIEW
#define MENU_save   XB1_MENU
#define SPOT        XB1_RB
#define FIRE        XB1_RT
#define MELEE       XB1_RS
#define TACTICAL    XB1_LB
#define ADS         XB1_LT
#define SPRINT      XB1_LS
#define RX          XB1_RX
#define RY          XB1_RY
#define LX          XB1_LX
#define LY          XB1_LY
#define UP          XB1_UP
#define DOWN        XB1_DOWN
#define LEFT        XB1_LEFT
#define RIGHT       XB1_RIGHT
#define SW_WEAPON   XB1_Y
#define PRONE       XB1_B
#define JUMP        XB1_A
#define RELOAD      XB1_X
#define GYROX_PR1   XB1_P1
#define GYROY_PR2   XB1_P2
#define GYROZ_PL1   XB1_P1
#define TOUCH_PL2   XB1_P2
 
 
main {
 
 
    if(AIM__CORRECT){
        if(get_val(FIRE) && get_val(ADS)) {
            Use_sens = ADS_FIRE_SENS;
            sensitivity(LX, midpoint ,Use_sens);
          sensitivity(LY, midpoint ,Use_sens);   
        }
        if(get_val(FIRE) && !get_val(ADS)) {
            Use_sens = HIP_SENS;
          sensitivity(LX, midpoint ,Use_sens);
          sensitivity(LY, midpoint ,Use_sens);   
        }
        if(!get_val(FIRE) && !get_val(ADS)) {
            Use_sens = GEN_SENS;
          sensitivity(LX, midpoint ,Use_sens);
          sensitivity(LY, midpoint ,Use_sens);               
        }
        if(!get_val(FIRE) && get_val(ADS)) {
            Use_sens = ADS_SENS;
          sensitivity(LX, midpoint ,Use_sens);
          sensitivity(LY, midpoint ,Use_sens);               
        }
    }     
}
 
 
 
 
void sensitivity(int id, int mid, int sen) {
    int val = (int) get_val(id);
 
    if(mid != -1) {
        int val_s = (val >= 0) ? 1 : -1;
        val *= val_s;
        if(val <= mid) val = (val * 50) / mid;
        else val = ((50 * (val - mid)) / (100 - mid)) + 50;
        val *= val_s;
    }
 
    if(sen != -1) {
        val = (val * sen) / 100;
    }
 
    set_val(id, clamp(val, -100, 100));
    return;
}
User avatar
BEAST07
Sergeant Major
Sergeant Major
 
Posts: 74
Joined: Tue Jan 07, 2020 9:19 am

Re: left analoge

Postby peter373635 » Mon Nov 23, 2020 10:20 am

thanks for replying, im trying to create a slow putting stroke for my golf game. the slower the analogue stick moves the easier it is to get the line in the slide bar. this script doesnt allow a forward motion to hit the ball although it does what i want to get the line where i want it. it doesnt matter how fast it goes forward or how much forward. many thanks for your help
User avatar
peter373635
Sergeant
Sergeant
 
Posts: 7
Joined: Mon Nov 23, 2020 9:18 am

Re: left analoge

Postby BEAST07 » Mon Nov 23, 2020 10:27 am

Hey Peter,
do you use leftstick for other thing in game. because you my need to set up a trigger button to turn on putting stoke movement.
User avatar
BEAST07
Sergeant Major
Sergeant Major
 
Posts: 74
Joined: Tue Jan 07, 2020 9:19 am

Re: left analoge

Postby peter373635 » Mon Nov 23, 2020 10:33 am

BEAST07 wrote:Hey Peter,
do you use leftstick for other thing in game. because you my need to set up a trigger button to turn on putting stoke movement.


left analogue is used only for swing,nothing else, thanks
User avatar
peter373635
Sergeant
Sergeant
 
Posts: 7
Joined: Mon Nov 23, 2020 9:18 am

Re: left analoge

Postby BEAST07 » Mon Nov 23, 2020 11:36 am

Hey Peter,
I made you a script with a putting toggle, all you need to do is press left thumbstick down led will turn "RED" on the titan that means it is putting mode.
NOTE: WHEN IN PUTTING MODE PUTTING TO REDUCE LEFT STICK MOVEMENT
left stick movement is set at 50% you can adjust it to correct movement speed. (PUTT_SENS=50) you adjust it here. LOWER THE NUMBER THE SLOWER THE MOVEMENT.

When you are finished putting press left thumb stick again it will turn led blue that means it NOT IN PUTTING MODE you can get full swing back again
enjoy the golf game
copy and paste below
Code: Select all
 
#pragma METAINFO("", 1, 0, "<------>")
 
 
 
int PUTT_SENS=50,Use_sens, midpoint=50;
 
#include <xb1.gph>
 
#define HOME        XB1_XBOX
#define VIEW_reset  XB1_VIEW
#define MENU_save   XB1_MENU
#define SPOT        XB1_RB
#define FIRE        XB1_RT
#define MELEE       XB1_RS
#define TACTICAL    XB1_LB
#define ADS         XB1_LT
#define SPRINT      XB1_LS
#define RX          XB1_RX
#define RY          XB1_RY
#define LX          XB1_LX
#define LY          XB1_LY
#define UP          XB1_UP
#define DOWN        XB1_DOWN
#define LEFT        XB1_LEFT
#define RIGHT       XB1_RIGHT
#define SW_WEAPON   XB1_Y
#define PRONE       XB1_B
#define JUMP        XB1_A
#define RELOAD      XB1_X
#define GYROX_PR1   XB1_P1
#define GYROY_PR2   XB1_P2
#define GYROZ_PL1   XB1_P1
#define TOUCH_PL2   XB1_P2
 
#define Off     0
#define Green   1
#define Blue    2
#define Pink    3
#define Red     4
#define SkyBlue 5
#define Yellow  6
#define White   7
 
const uint8 data[] = {
    0,0,0,0,//Off
    0,0,2,0,//Green
    2,0,0,0,//Blue
    0,0,0,2,//Pink
    0,2,0,0,//Red
    2,0,2,0,//SkyBlue
    0,2,2,0,//Yellow
    2,2,2,2//White
};
bool GamePlay   =TRUE;   // EVENT(MAIN SWITCH FOR GAME MODE)                  */
bool Putting  =TRUE;     // SWITCH BETWEEN GAME MODE AND PUTTING MODE         */
 
main {
if (GamePlay){
     if(event_active(SPRINT)){
        Putting  = !Putting ;
         if (!Putting );
         if (Putting );
}
}   
if(Putting  ){
set_ds4_led(2);
}
 if(!Putting  ){  set_ds4_led(4)
 
          Use_sens = PUTT_SENS;
             sensitivity(LX, midpoint ,Use_sens);
           sensitivity(LY, midpoint ,Use_sens);   
 
}
 if(get_val(SPRINT)&&time_active(SPRINT)>300){
            RESET_Defaults();
}
}
void RESET_Defaults () {
   Putting    =TRUE;
}   
void sensitivity(int id, int mid, int sen) {
    int val = (int) get_val(id);
 
    if(mid != -1) {
        int val_s = (val >= 0) ? 1 : -1;
        val *= val_s;
        if(val <= mid) val = (val * 50) / mid;
        else val = ((50 * (val - mid)) / (100 - mid)) + 50;
        val *= val_s;
    }
 
    if(sen != -1) {
        val = (val * sen) / 100;
    }
 
    set_val(id, clamp(val, -100, 100));
    return;
}
void set_ds4_led(int colour) {
    set_led(LED_1, data[colour * 4]);
    set_led(LED_2, data[colour * 4 + 1]);
    set_led(LED_3, data[colour * 4 + 2]);
    set_led(LED_4, data[colour * 4 + 3]);
}
void set_led(int id, int state) {
     static uint32 timestamp;
     uint32 elapsed = system_time() - timestamp;
 
     if(!elapsed || elapsed >= 10) {
        fix32 intensity = -1.0;
        uint32 dutylength;
        switch(state) {
            case 0: intensity = 0.0; break;
            case 2: dutylength = 186; break;
            case 3: dutylength = 2418; break;
    }
 
        switch(id) {
            case LED_1: led_set(LED_1, intensity, dutylength); break;
            case LED_2: led_set(LED_2, intensity, dutylength); break;
            case LED_3: led_set(LED_3, intensity, dutylength); break;
            case LED_4: led_set(LED_4, intensity, dutylength); break;
    }
        timestamp = system_time();
    }
    return;
}
User avatar
BEAST07
Sergeant Major
Sergeant Major
 
Posts: 74
Joined: Tue Jan 07, 2020 9:19 am


Return to GPC2 Script Programming

Who is online

Users browsing this forum: alanmcgregor and 65 guests