Mouse and Keyboard Pubg

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

Mouse and Keyboard Pubg

Postby Timmyk22 » Wed Jan 03, 2018 3:17 pm

If someone can make a mouse sensitivity setup that is as smooth as PUBG on the PC please share it. My mouse is at 12000 dpi and the setting I have are just not cutting it.
User avatar
Timmyk22
First Sergeant
First Sergeant
 
Posts: 48
Joined: Wed Sep 20, 2017 1:31 pm

Re: Mouse and Keyboard Pubg

Postby J2Kbr » Thu Jan 11, 2018 6:19 pm

I will download PUBG, hopefully, this weekend and try make a mouse settings for it.
ConsoleTuner Support Team
User avatar
J2Kbr
General of the Army
General of the Army
 
Posts: 20323
Joined: Tue Mar 18, 2014 1:39 pm

Re: Mouse and Keyboard Pubg

Postby 3rne5t0 » Sat Jan 13, 2018 7:38 am

If you do this try out my script on it :innocent_smile_1: Maybee you can it bring together 2 a good GPC File.

Code: Select all
#pragma METAINFO("PUBG", 1, 0, "")
#define FIRE_BUTTON     BUTTON_5
#define SPRINT_BUTTON   BUTTON_9
bool   stop_anti_recoil;
bool autofire;
bool Lean_stop;
uint8 b_Run = 0;
bool FIGHT_SWITCH;
bool INVENTAR;
fix32  anti_precoil2_V;
fix32  anti_precoil2_H;
fix32  anti_precoil_V;
fix32  anti_precoil_H;
 
init
{
    anti_precoil2_V = 30.0;         // default when on: change with runtime.
    anti_precoil2_H = 0.0;
    anti_precoil_V = 25.0;         // default when on: change with runtime.
    anti_precoil_H = 0.0;
}
main {
    if(autofire && !FIGHT_SWITCH)       ColorLED('G');
    else if(FIGHT_SWITCH && !autofire)  ColorLED('R');
    else if(!FIGHT_SWITCH && !autofire) ColorLED('W');
    //INVENTORY
    if(event_active(BUTTON_3)) {
    if(INVENTAR == 0 ) {
        autofire = 0;
        FIGHT_SWITCH = 0;
        INVENTAR = 1;
    }else if(INVENTAR == 1) {
        FIGHT_SWITCH = 1;
        INVENTAR = 0;
    }
}
    if(INVENTAR >= 1) {
        set_val(STICK_1_X, 0.0);
        set_val(STICK_1_Y, 0.0);
        set_val(BUTTON_15, 0.0);
        combo_run(Strafing);
    if(get_val(STICK_2_Y) <= -95.0) {
        set_val(STICK_2_Y, 0.0);
        combo_run(Up);
    }
    if(get_val(STICK_2_Y) >= 95.0) {
        set_val(STICK_2_Y, 0.0);
        combo_run(Down);
    }
    if(get_val(STICK_2_X) >= 95.0) {
        set_val(STICK_2_X, 0.0);
        combo_run(Right);
    }
    if(get_val(STICK_2_X) <= -95.0) {
        set_val(STICK_2_X, 0.0);
        combo_run(Left);
    }
    if(get_actual(BUTTON_17)) {
        set_val(BUTTON_17, 0.0);
        combo_run(Loot);
    }
}
    //Fight switch
    set_val(BUTTON_10, 0.0);
    if(event_active(BUTTON_10)) {
        autofire = 0;
        FIGHT_SWITCH = 0;
    }
    if(event_active(BUTTON_10)) {
        set_val(BUTTON_16, 0.0);
        combo_run(Loot);
        combo_run(Driver);
    }
    //AutoFire
    if(event_active(BUTTON_6)) {
    if(FIGHT_SWITCH == 1) {
        FIGHT_SWITCH = 0;
        autofire = 1;
    }else if(autofire == 1) {
        FIGHT_SWITCH = 1;
        autofire = 0;
    }
    }
    //Switcher
    if(INVENTAR == 0) {
    if(get_val(BUTTON_15)) {
        FIGHT_SWITCH = 1;
    }
    if(get_val(BUTTON_14)) {
        FIGHT_SWITCH = 1;
    }
    if(get_val(BUTTON_16)) {
        FIGHT_SWITCH = 1;
    }
    if(get_val(BUTTON_17)) {
        FIGHT_SWITCH = 1;
    }
    if(get_val(BUTTON_12)) {
        FIGHT_SWITCH = 1;
    }
    }
    //Autofire
    if(autofire >= 1) {
    if(get_val(BUTTON_9)) {
        set_val(BUTTON_9, 0.0);
        combo_run(Left);
    }
    // EASY SPRINT
    if(get_val(STICK_2_Y) <= -75.0) {
        combo_run(EasySprint);
    } else {
        combo_stop(EasySprint);
    }
    //Rapidfire
    if(!get_actual(BUTTON_8) && event_active(BUTTON_5) && get_val(STICK_2_X) < -75.0) {
        combo_run(LeanleftRapid);
    }
    if(!get_actual(BUTTON_8) && event_active(BUTTON_5) && get_val(STICK_2_X) > 75.0) {
        combo_run(LeanrightRapid);
    }
    if(!get_actual(BUTTON_8) && get_actual(BUTTON_5)) {
        combo_run(Shoot);
        combo_run(Movement);
        combo_run(ADS1);
    }else if(!get_actual(BUTTON_8) && is_release(BUTTON_5) &&
     time_active(BUTTON_5) <= 120) {
        combo_run(ADShold);
    }
    if(!get_actual(BUTTON_8) && event_active(BUTTON_5) && get_val(STICK_2_X) < 75.0 && get_val(STICK_2_X) > -75.0) {
        combo_run(Rightalways);
    }
    //Antirecoil
    if(abs(get_actual(STICK_1_X)) > 20.0) {
        stop_anti_recoil = 0;
    }else{
        stop_anti_recoil = 1;
    }
    if(!get_actual(BUTTON_8) && get_actual(BUTTON_5)) {
        if(stop_anti_recoil == 1)
        {
        AntiRecoil(STICK_1_Y, anti_precoil_V);
        AntiRecoil(STICK_1_X, anti_precoil_H);
        }
        }
    //Reload
    if(get_val(BUTTON_12)) {
        set_val(BUTTON_12, 0.0);
        combo_run(Reload);
    }   
    //Loot
    if(get_actual(BUTTON_17)) {
        set_val(BUTTON_17, 0.0);
        combo_run(Loot);
    }
    //ADS Shoot
    if(get_val(BUTTON_8)) {
        set_val(STICK_2_Y, 0.0);
    }
    if(get_val(BUTTON_8) && get_val(STICK_2_X) < -75.0 && time_active(STICK_2_X) >= 600) {
        if(Lean_stop == 0) {
        combo_run(Leanleft);
        }
        }
    if(get_val(BUTTON_8) && get_val(STICK_2_X) > 75.0 && time_active(STICK_2_X) >= 600) {
        if(Lean_stop == 0) {
        combo_run(Leanright);
        }
        }
    if(get_actual(BUTTON_5) && get_actual(BUTTON_8)) {
        combo_run(ShootADS);
    }
    if(event_release(BUTTON_5) && time_active(BUTTON_5) >= 1000) {
        combo_run(Reload);
    }
    if(event_active(BUTTON_8)) {
        combo_run(HoldBreath);
        combo_run(ADS2);
    }
    if(get_val(BUTTON_8) && time_active(BUTTON_8) >= 800) {
        combo_run(HoldBreath);
    }
    if(event_release(BUTTON_8)) {
        Lean_stop = 0;
        combo_run(ADS2);
        combo_stop(HoldBreath);
    }
    if(get_val(BUTTON_8)) {
        combo_stop(ADS1);
    }
    if(ADS2) {
        combo_stop(Leanleft);
        combo_stop(Leanright);
    }
    //Granate Trow
    if(event_active(BUTTON_13)) {
        combo_run(WaittimerGranate);
        }
    //AUTORUN
    if(get_val(STICK_2_Y) <= -75.0 && get_val(BUTTON_7)) {
        b_Run = 1;
        }
     //let go of the stick first before checking for activity to stop the running
     if(b_Run == 1 && get_val(STICK_2_Y) >= -10.0) b_Run = 2;
     if (b_Run >= 1) {
         combo_run(Easyrun);
         if ( b_Run >= 2 && get_val(FIRE_BUTTON)) b_Run = 0;
     }
     if(event_active(BUTTON_8) || get_val(STICK_2_Y) > 15f) {
        b_Run = 0;
          }
    }
    //Fight Switch One
    if(FIGHT_SWITCH >= 1) {
    if(get_val(BUTTON_9)) {
        set_val(BUTTON_9, 0.0);
        combo_run(Left);
    }
    // EASY SPRINT
    if(get_val(STICK_2_Y) <= -75.0) {
        combo_run(EasySprint);
    } else {
        combo_stop(EasySprint);
    }
    //Rapidfire
    if(!get_actual(BUTTON_8) && event_active(BUTTON_5) && get_val(STICK_2_X) < -75.0) {
        combo_run(LeanleftRapid);
    }
    if(!get_actual(BUTTON_8) && event_active(BUTTON_5) && get_val(STICK_2_X) > 75.0) {
        combo_run(LeanrightRapid);
    }
    if(!get_actual(BUTTON_8) && get_actual(BUTTON_5)) {
        combo_run(Movement);
        combo_run(ADS1);
    }else if(!get_actual(BUTTON_8) && is_release(BUTTON_5) &&
     time_active(BUTTON_5) <= 120) {
        combo_run(ADShold);
    }
    if(!get_actual(BUTTON_8) && event_active(BUTTON_5) && get_val(STICK_2_X) < 75.0 && get_val(STICK_2_X) > -75.0) {
        combo_run(Rightalways);
    }
    //Antirecoil
    if(abs(get_actual(STICK_1_X)) > 20.0) {
        stop_anti_recoil = 0;
    }else{
        stop_anti_recoil = 1;
    }
    if(!get_actual(BUTTON_8) && get_actual(BUTTON_5))
    {
        if(stop_anti_recoil == 1)
        {
        AntiRecoil(STICK_1_Y, anti_precoil_V);
        AntiRecoil(STICK_1_X, anti_precoil_H);
        }
        }
    if(get_actual(BUTTON_8) && get_actual(BUTTON_5))
    {
        if(stop_anti_recoil == 1)
        {
        AntiRecoil(STICK_1_Y, anti_precoil2_V);
        AntiRecoil(STICK_1_X, anti_precoil2_H);
        }
        }
    //Reload
    if(get_val(BUTTON_12)) {
        set_val(BUTTON_12, 0.0);
        combo_run(Reload);
    }   
    //Loot
    if(get_actual(BUTTON_17)) {
        set_val(BUTTON_17, 0.0);
        combo_run(Loot);
    }
    //ADS Shoot
    if(get_val(BUTTON_8)) {
        set_val(STICK_2_Y, 0.0);
    }
    if(get_val(BUTTON_8) && get_val(STICK_2_X) < -75.0 && time_active(STICK_2_X) >= 600) {
        if(Lean_stop == 0) {
        combo_run(Leanleft);
        }
        }
    if(get_val(BUTTON_8) && get_val(STICK_2_X) > 75.0 && time_active(STICK_2_X) >= 600) {
        if(Lean_stop == 0) {
        combo_run(Leanright);
        }
        }
    if(get_actual(BUTTON_5) && get_actual(BUTTON_8)) {
        combo_run(Movement);
    }
    if(event_release(BUTTON_5) && time_active(BUTTON_5) >= 1000) {
        combo_run(Reload);
        }
    if(event_active(BUTTON_8)) {
        combo_run(HoldBreath);
        combo_run(ADS2);
        }
    if(get_val(BUTTON_8) && time_active(BUTTON_8) >= 800) {
        combo_run(HoldBreath);
        }
    if(event_release(BUTTON_8)) {
        Lean_stop = 0;
        combo_run(ADS2);
        combo_stop(HoldBreath);
        }
    if(get_val(BUTTON_8)) {
        combo_stop(ADS1);
        }
    if(ADS2) {
        combo_stop(Leanleft);
        combo_stop(Leanright);
        }
    //Granate Trow
    if(event_active(BUTTON_13)) {
        combo_run(WaittimerGranate);
        }
    //AUTORUN
    if(get_val(STICK_2_Y) <= -75.0 && get_val(BUTTON_7)) {
        b_Run = 1;
        }
     //let go of the stick first before checking for activity to stop the running
     if(b_Run == 1 && get_val(STICK_2_Y) >= -10.0) b_Run = 2;
     if (b_Run >= 1) {
         combo_run(Easyrun);
         if ( b_Run >= 2 && get_val(FIRE_BUTTON)) b_Run = 0;
     }
     if(event_active(BUTTON_8) || get_val(STICK_2_Y) > 15f) {
        b_Run = 0;
          }
    }
}
combo Shoot {
    set_val(BUTTON_5, 100.0);
    wait(40);
    set_val(BUTTON_5, 0.0);
    wait(40);
}
combo ShootADS {
    set_val(BUTTON_5, 100.0);
    wait(40);
    set_val(BUTTON_5, 0.0);
    wait(260);
}
combo ADS1 {
    set_val(BUTTON_8, 100.0);
}
combo ADShold {
    set_val(BUTTON_8, 100.0);
    wait(400);
    set_val(BUTTON_8, 0.0);
}
combo ADS2 {
    set_val(BUTTON_8, 100.0);
    wait(80);
    set_val(BUTTON_8, 0.0);
    wait(200);
}
combo Reload {
    set_val(BUTTON_17, 100.0);
    wait(600);
    set_val(BUTTON_17, 0.0);
}
combo Loot {
    set_val(BUTTON_17, 100.0);
    wait(120);
    set_val(BUTTON_17, 0.0);
    wait(380);
}
combo Granate {
    set_val(BUTTON_5, 100.0);
    wait(1000);
    set_val(BUTTON_5, 100.0);
    set_val(BUTTON_7, 100.0);
    wait(2500);
    set_val(BUTTON_5, 0.0);
    set_val(BUTTON_7, 0.0);
}
combo Movement {
    set_val(STICK_2_Y, 0.0);
}
combo Granateswitch {
    set_val(BUTTON_5, 0.0);
    wait(40);
    set_val(BUTTON_14, 100.0);
    wait(40);
    set_val(BUTTON_14, 0.0);
}
combo WaittimerGranate {
    set_val(BUTTON_13, 100.0);
    wait(200);
    set_val(BUTTON_13, 0.0);
    wait(800);
    call(Granate);
    call(Granateswitch);
}
combo HoldBreath {
    set_val(STICK_2_Y, 0.0);
    set_val(STICK_2_X, 0.0);
    wait(200);
    set_val(STICK_2_Y, 0.0);
    set_val(STICK_2_X, 0.0);
    set_val(BUTTON_7, 100.0);
    wait(200);
    set_val(BUTTON_7, 100.0);
    wait(4000);
    set_val(BUTTON_7, 0.0);
}
combo Strafing {
    set_val(STICK_2_X, 100.0);
    wait(360);
    set_val(STICK_2_X, 0.0);
    wait(140);
    set_val(STICK_2_X, -100.0);
    wait(360);
    set_val(STICK_2_X, 0.0);
    wait(140);
}
combo Driver {
    wait(600);
    set_val(BUTTON_16, 100.0);
    wait(600);
    set_val(BUTTON_16, 0.0);
}
combo Leanleft {
    set_val(BUTTON_9, 100.0);
    wait(200);
    Lean_stop = 1;
}
combo Leanright {
    set_val(BUTTON_6, 100.0);
    wait(200);
    Lean_stop = 1;
}
combo LeanleftRapid {
    wait(40);
    set_val(BUTTON_9, 100.0);
    wait(100);
    set_val(BUTTON_9, 0.0);
}
combo LeanrightRapid {
    wait(40);
    set_val(BUTTON_6, 100.0);
    wait(100);
    set_val(BUTTON_6, 0.0);
}
combo Rightalways {
    wait(40);
    set_val(BUTTON_6, 100.0);
    wait(100);
    set_val(BUTTON_6, 0.0);
}
combo Easyrun {
    set_val(STICK_2_Y, -100.0);
}
combo Up {
    set_val(BUTTON_10, 100.0);
}
combo Down {
    set_val(BUTTON_11, 100.0);
}
combo Left {
    set_val(BUTTON_12, 100.0);
}
combo Right {
    set_val(BUTTON_13, 100.0);
}
combo EasySprint {
    set_val(SPRINT_BUTTON, 100.0);
}
void ColorLED(char Color)
{
  static char a;
  if (Color != a)
  {
    fix32 Color1, Color2, Color3, Color4;
    if(Color == 'B') Color1 = 100f, Color2 = 0.00, Color3 = 0.00, Color4 = 0.00;
    if(Color == 'R') Color1 = 0.00, Color2 = 100f, Color3 = 0.00, Color4 = 0.00;
    if(Color == 'G') Color1 = 0.00, Color2 = 0.00, Color3 = 100f, Color4 = 0.00;
    if(Color == 'P') Color1 = 0.00, Color2 = 0.00, Color3 = 0.00, Color4 = 100f;
    if(Color == 'C') Color1 = 100f, Color2 = 0.00, Color3 = 100f, Color4 = 0.00;
    if(Color == 'A') Color1 = 0.00, Color2 = 100f, Color3 = 100f, Color4 = 0.00;
    if(Color == 'W') Color1 = 100f, Color2 = 100f, Color3 = 100f, Color4 = 100f;
    led_set(LED_1, Color1, 0), led_set(LED_2, Color2, 0);
    led_set(LED_3, Color3, 0), led_set(LED_4, Color4, 0);
    printf("%c", Color); //This line can be removed.
    a = Color;
  }
  return;
}
void AntiRecoil(uint8 axis, fix32 recoil)
{
    set_val(axis, (recoil * (100.0 - abs(get_val(axis)))) / 100.0 + get_actual(axis));
}
User avatar
3rne5t0
Sergeant Major of the Army
Sergeant Major of the Army
 
Posts: 210
Joined: Mon Jan 30, 2017 10:31 am

Re: Mouse and Keyboard Pubg

Postby J2Kbr » Sat Jan 13, 2018 1:01 pm

Cool, yes - got PUBG and played my first match few hours ago, without any script just to have a better understanding of the game. Your script seems to do a lots stuff, I will definitively try it. :smile0517:
ConsoleTuner Support Team
User avatar
J2Kbr
General of the Army
General of the Army
 
Posts: 20323
Joined: Tue Mar 18, 2014 1:39 pm

Re: Mouse and Keyboard Pubg

Postby Timmyk22 » Mon Jan 29, 2018 6:13 pm

Any Updates on the mouse settings? and game settings?
User avatar
Timmyk22
First Sergeant
First Sergeant
 
Posts: 48
Joined: Wed Sep 20, 2017 1:31 pm

Re: Mouse and Keyboard Pubg

Postby J2Kbr » Mon Jan 29, 2018 7:08 pm

I am still working, the game is very dynamic, not allowing time to proper make a mouse config. I've being playing for a while now, but not yet happy with the results. I heard soon PUBG will have a shooting range map, which will be of great help for this.
ConsoleTuner Support Team
User avatar
J2Kbr
General of the Army
General of the Army
 
Posts: 20323
Joined: Tue Mar 18, 2014 1:39 pm

Re: Mouse and Keyboard Pubg

Postby Timmyk22 » Fri Feb 23, 2018 7:11 pm

I saw that the XIM4 came out with mouse settings for pubg, I dont have one, but i was wondering if it was somehow possible to use that as a guide for the titan two maybe.
User avatar
Timmyk22
First Sergeant
First Sergeant
 
Posts: 48
Joined: Wed Sep 20, 2017 1:31 pm

Re: Mouse and Keyboard Pubg

Postby J2Kbr » Sat Feb 24, 2018 8:09 pm

We released a PUBG Input Translator couple weeks ago. :smile0517:
ConsoleTuner Support Team
User avatar
J2Kbr
General of the Army
General of the Army
 
Posts: 20323
Joined: Tue Mar 18, 2014 1:39 pm

Re: Mouse and Keyboard Pubg

Postby Kuhlsnu » Mon Feb 26, 2018 5:53 am

Great translator btw. I had to turn the aim acceleration to 2 to improve the turning speed. The other thing I wonder about, how do you make a different sensitivity for ADS? Most people play the controller setup with general sensitivity at 5 and targeting at three or four and scope at three. With the recommended setup the ads and hip ads are way to slow.
User avatar
Kuhlsnu
Master Sergeant
Master Sergeant
 
Posts: 41
Joined: Tue Sep 19, 2017 12:53 am

Re: Mouse and Keyboard Pubg

Postby J2Kbr » Mon Feb 26, 2018 12:37 pm

Thank you.
In the PUBG Input Translator, select the Alternate settings, there you can change the sensitivity while ADSing. :smile0517:
ConsoleTuner Support Team
User avatar
J2Kbr
General of the Army
General of the Army
 
Posts: 20323
Joined: Tue Mar 18, 2014 1:39 pm

Next

Return to GPC2 Script Programming

Who is online

Users browsing this forum: No registered users and 75 guests