KB + XIM + Titan2 - Fortnite Combos

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

Re: KB + XIM + Titan2 - Fortnite Combos

Postby gamerdad » Fri Mar 23, 2018 3:33 am

Thanks it worked!
User avatar
gamerdad
Corporal
Corporal
 
Posts: 4
Joined: Wed Mar 21, 2018 9:28 pm

Re: KB + XIM + Titan2 - Fortnite Combos

Postby Sizzerb » Fri Mar 23, 2018 5:51 pm

Hi if I copy the things with me in my titan two purely I get an error message, someone has a tip?

GPC: ----- GPC Build: Fortnite test.gpc -----
GPC: Preprocessor started.
GPC error: Fortnite test.gpc(5): Can't open include file 'light_k.gph'
GPC: GPC Build ABORTED with 0 warning(s) and 1 error(s).
User avatar
Sizzerb
Master Sergeant
Master Sergeant
 
Posts: 26
Joined: Mon Mar 19, 2018 2:26 am

Re: KB + XIM + Titan2 - Fortnite Combos

Postby MAL8010 » Fri Mar 23, 2018 5:53 pm

Sizzerb wrote:Hi if I copy the things with me in my titan two purely I get an error message, someone has a tip?

GPC: ----- GPC Build: Fortnite test.gpc -----
GPC: Preprocessor started.
GPC error: Fortnite test.gpc(5): Can't open include file 'light_k.gph'
GPC: GPC Build ABORTED with 0 warning(s) and 1 error(s).



See point 6...

viewtopic.php?f=26&t=7897&start=170#p60548
User avatar
MAL8010
Sergeant Major of the Army
Sergeant Major of the Army
 
Posts: 263
Joined: Sun Feb 05, 2017 3:12 pm

Re: KB + XIM + Titan2 - Fortnite Combos

Postby Razer » Fri Mar 23, 2018 6:30 pm

Hi, I like what you have here. I'm using a xim 4 with my titan 2 and I would like to use this script as the one I got from the program builds slow compare to me doing it the regular way. Now my question is which update to the script is the latest from all the page in this thread and also do I need a input translator thanks!!
User avatar
Razer
Staff Sergeant
Staff Sergeant
 
Posts: 10
Joined: Fri Mar 23, 2018 4:09 am

Re: KB + XIM + Titan2 - Fortnite Combos

Postby MAL8010 » Fri Mar 23, 2018 6:40 pm

Razer wrote:Hi, I like what you have here. I'm using a xim 4 with my titan 2 and I would like to use this script as the one I got from the program builds slow compare to me doing it the regular way. Now my question is which update to the script is the latest from all the page in this thread and also do I need a input translator thanks!!


See this post

viewtopic.php?f=26&t=7897&start=170#p60548
User avatar
MAL8010
Sergeant Major of the Army
Sergeant Major of the Army
 
Posts: 263
Joined: Sun Feb 05, 2017 3:12 pm

Re: KB + XIM + Titan2 - Fortnite Combos

Postby gankbait » Sat Mar 24, 2018 8:56 am

Hey MAL , i got my set up running and the script is working with my keybindings as well.
i was just wondering if you could check something for me , when im in game, sometimes
i get weapons swap without pressing any buttons or if i do something random im i dont know.
can you check and let me know if there is something else except building combos ?

Code: Select all
#pragma METAINFO("<Mark>", 1, 0, "FORTNITE BUILDING ONLY - T2 INTO XIM APEX 2") 
 
#include <keyboard.gph>
#include <display.gph>
#include "light_k.gph"
#include <mouse.gph>
#define Reset BUTTON_13 //manual reset of tracking (right arrow)
#define Wall (KEY_F)
#define Floor (KEY_C)
#define Stair (KEY_X)
#define InitailEnd_Wait 20
#define SameButton_Wait 40
#define GenericBetweenButton_Wait 50
#define BeforeFireButton_Wait1 50
#define BeforeFireButton_Wait2 100
#define RB (MOUSE_WHEEL)
#define Build (KEY_END)
#define Fire (MBUTTON_1)
 
//mode and tracker
int mode;
int bldvalue;
int NavState;
 
//building hotkeys and tracker
int bldslottrack=1;
bool event_active_b;
bool event_active_n;
bool event_active_f;
 
main {
 
    mouse_passthru();
    key_passthru();
 
//------------------------------------------------------------------------------
//MODE TRACKING
 
    if (mode == 0) {
        set_light('G');
        }
 
    if (mode == 1) {
        set_light('R');
        }
 
    if (mode > 1) {
        mode = 0;}
 
    if ((event_release(BUTTON_15)) && (mode == 0)){
            mode = 1; //building mode
            }
 
    else if (event_release(BUTTON_15) && (mode == 1)) {
            mode = 0; //combat mode
            bldslottrack = 1; //building always resets to slot 1, weapons to last occupied slot
            }
 
//------------------------------------------------------------------------------
//BUILDING AND WEAPON SLOT TRACKING
 
    //Building to axe - has to return to slot 1
    if ((event_release(BUTTON_14)) && (mode == 1)) {
        mode = 0;
        bldslottrack = 1;
        }
 
    if ((event_release(BUTTON_4)) && (mode == 1)) {
        bldslottrack = bldslottrack + 1;
            if (bldslottrack > 4) {
                bldslottrack = 1;
            }
        }
 
    if ((event_release(BUTTON_7)) && (mode == 1)) {
        bldslottrack = bldslottrack - 1;
            if (bldslottrack < 1) {
                bldslottrack = 4;
            }
        }
 
//------------------------------------------------------------------------------
//TRACKER RESETS
 
    //manual tracker reset to weapon mode slot1
    if (event_active(Reset)) {
        mode = 0;
        bldslottrack = 1;
    }
 
    //Since B is cancel as well as enter building mode, need to reset tracker if using to cancel out of xbox menu, inventory, game menu, emotes
    if (event_release (BUTTON_1) || event_release (BUTTON_3) || event_release (BUTTON_10) || event_release (BUTTON_11)) {
        NavState = 1;}
 
    // Pressing B to cancel resets
    if (event_release (BUTTON_15) && NavState) {
        mode = mode + 1;
        NavState = 0;}
 
//------------------------------------------------------------------------------
// LOAD-OUTS
 
       if(key_status(Wall)) {
            bldvalue = 1 -  bldslottrack;
            if(!event_active_b) {
                event_active_b = TRUE;
                if (mode == 0){ //weapons or pickaxe to wall
                    combo_run (BuildWall);
                }     else if ((mode == 1) && (bldvalue == 0)) { //already have wall selected
                        combo_run (RT);}
                    else { //moving from building slots 2,3,4 to wall
                        if (bldvalue == -1) {
                            combo_run (QLB1);
                            bldslottrack = 1;}
                        if (bldvalue == -2) {
                            combo_run (QLB2);
                            bldslottrack = 1;}
                        if (bldvalue == -3) {
                            combo_run (QRB1);
                            bldslottrack = 1;}
                    }
                }
        } else event_active_b = FALSE;
 
        if(key_status(Floor))  {
                bldvalue = 2 -  bldslottrack;
                if(!event_active_f) {
                    event_active_f = TRUE;
                    if (mode == 0){
                        combo_run (BuildFloor);
                    }    else if    ((mode == 1) && (bldvalue == 0)) {
                            combo_run (RT);}
                        else {   
                            if (bldvalue == 1) {
                                combo_run (QRB1);
                                bldslottrack = 2;}
                            if (bldvalue == -1) {
                                combo_run (QLB1);
                                bldslottrack = 2;}
                            if (bldvalue == -2) {
                                combo_run (QLB2);
                                bldslottrack = 2;}
                    }
                }
        } else event_active_f = FALSE;   
 
        if(key_status(Stair))    { 
                bldvalue = 3 -  bldslottrack;
                if(!event_active_n) {
                    event_active_n = TRUE;
                    if (mode == 0){
                        combo_run (BuildStair);
                    } else if ((mode == 1) && (bldvalue == 0)) {
                        combo_run (RT);}
                      else {
                          if (bldvalue == 2) {
                              combo_run (QLB2);
                              bldslottrack = 3;}
                          if (bldvalue == 1) {
                              combo_run (QRB1);
                              bldslottrack = 3;}
                          if (bldvalue == -1) {
                              combo_run (QLB1);
                              bldslottrack = 3;}
                    }
                }
        } else event_active_n = FALSE;   
 
//------------------------------------------------------------------------------
//LED                   
        if (mode == 1){           
        switch(bldslottrack) {
                case 0: display_overlay(_0_, 2000); break;
                case 1: display_overlay(_1_, 2000); break;
                case 2: display_overlay(_2_, 2000); break;
                case 3: display_overlay(_3_, 2000); break;
                case 4: display_overlay(_4_, 2000); break;
            }
        }
 
        if (mode == 0) {
            display_overlay(_0_, 2000); }   
 
} // main
 
combo BuildWall {
    wait(InitailEnd_Wait);
    key_set(Build, 1);
    wait(SameButton_Wait);
    key_set(Build, 0);
    wait(InitailEnd_Wait);
    bldslottrack = 1;
    mode = 1;
}
 
combo BuildFloor {
    wait(InitailEnd_Wait);
    key_set(Build, 1);
    wait(SameButton_Wait);
    key_set(Build, 0);
    wait(GenericBetweenButton_Wait);
    mouse_set(RB, -1);
    wait(SameButton_Wait);
    mouse_set(RB, 0);
    wait(InitailEnd_Wait);
    bldslottrack = 2;
    mode = 1;
}
 
combo BuildStair {
    wait(InitailEnd_Wait);
    key_set(Build, 1);
    wait(SameButton_Wait);
    key_set(Build, 0);
    wait(GenericBetweenButton_Wait);
    mouse_set(RB, -1);
    wait(SameButton_Wait);
    mouse_set(RB, 0);
    wait(GenericBetweenButton_Wait);
    mouse_set(RB, -1);
    wait(SameButton_Wait);
    mouse_set(RB, 0);
    wait(InitailEnd_Wait);
    bldslottrack = 3;
    mode = 1;
}
 
combo QLB1 {
    wait(InitailEnd_Wait);
    mouse_set(RB, 1);
    wait(SameButton_Wait);
    mouse_set(RB, 0);
    wait(BeforeFireButton_Wait1);
    wait(BeforeFireButton_Wait2);
    mouse_set(Fire, 1);
    wait(SameButton_Wait);
    mouse_set(Fire, 0);
    wait(InitailEnd_Wait);
}
 
combo QLB2 {
    wait(InitailEnd_Wait);
    mouse_set(RB, 1);
    wait(SameButton_Wait);
    mouse_set(RB, 0);
    wait(GenericBetweenButton_Wait);
    mouse_set(RB, 1);
    wait(SameButton_Wait);
    mouse_set(RB, 0);
    wait(BeforeFireButton_Wait1);
    wait(BeforeFireButton_Wait2);
    mouse_set(Fire, 1);
    wait(SameButton_Wait);
    mouse_set(Fire, 0);
    wait(InitailEnd_Wait);
}
 
combo QRB1 {
    wait(InitailEnd_Wait);
    mouse_set(RB, -1);
    wait(SameButton_Wait);
    mouse_set(RB, 0);
    wait(BeforeFireButton_Wait1);
    wait(BeforeFireButton_Wait2);
    mouse_set(Fire, 1);
    wait(SameButton_Wait);
    mouse_set(Fire, 0);
    wait(InitailEnd_Wait);
}   
 
combo RT {
    wait(InitailEnd_Wait);
    mouse_set(Fire, 1);
    wait(SameButton_Wait);
    mouse_set(Fire, 0);
    wait(InitailEnd_Wait);
}


i just want the 3 building options on keybindings that's all

and one more question: #define RB (MOUSE_WHEEL)
#define Build (KEY_END)

i got my r1 on key 2 , can i change it from mouse_wheel to key 2 ?
User avatar
gankbait
Sergeant First Class
Sergeant First Class
 
Posts: 20
Joined: Mon Mar 19, 2018 5:31 am

Re: KB + XIM + Titan2 - Fortnite Combos

Postby Sizzerb » Sat Mar 24, 2018 10:42 am

MAL8010 wrote:
Sizzerb wrote:Hi if I copy the things with me in my titan two purely I get an error message, someone has a tip?

GPC: ----- GPC Build: Fortnite test.gpc -----
GPC: Preprocessor started.
GPC error: Fortnite test.gpc(5): Can't open include file 'light_k.gph'
GPC: GPC Build ABORTED with 0 warning(s) and 1 error(s).



See point 6...

viewtopic.php?f=26&t=7897&start=170#p60548



Thank you it worked

Can someone tell me how to connect properly? if i connect it as in the topic it does not work for me.
On the assumption a KB is used for most of the menu inputs above and a mouse is used to execute the building macros then this is connection method:

- Mouse and KB into T2
- Controller into Port 1 of XIM APEX
- T2 into Port 2 of XIM APEX
- XIm APEX into Console
- In Gtuner set Output Protocol to USB Multi Interface HID and Check Disable Joystick


hope someone can help me anyway.
Last edited by Sizzerb on Sun Mar 25, 2018 9:17 am, edited 1 time in total.
User avatar
Sizzerb
Master Sergeant
Master Sergeant
 
Posts: 26
Joined: Mon Mar 19, 2018 2:26 am

Re: KB + XIM + Titan2 - Fortnite Combos

Postby dleech1259 » Sat Mar 24, 2018 8:32 pm

is there a way to use keybinding for the stairs, walls and floor on titan 2 without using the xim using keyboard and mouse on xbox one thanks
User avatar
dleech1259
Sergeant First Class
Sergeant First Class
 
Posts: 19
Joined: Tue Dec 29, 2015 6:17 am

Re: KB + XIM + Titan2 - Fortnite Combos

Postby Sizzerb » Sat Mar 24, 2018 11:55 pm

Could it be that my mouse and keyboard not moved because I still need external power for the t2?
User avatar
Sizzerb
Master Sergeant
Master Sergeant
 
Posts: 26
Joined: Mon Mar 19, 2018 2:26 am

Re: KB + XIM + Titan2 - Fortnite Combos

Postby MAL8010 » Sun Mar 25, 2018 9:05 am

gankbait wrote:Hey MAL , i got my set up running and the script is working with my keybindings as well.
i was just wondering if you could check something for me , when im in game, sometimes
i get weapons swap without pressing any buttons or if i do something random im i dont know.
can you check and let me know if there is something else except building combos ?

Code: Select all
#pragma METAINFO("<Mark>", 1, 0, "FORTNITE BUILDING ONLY - T2 INTO XIM APEX 2") 
 
#include <keyboard.gph>
#include <display.gph>
#include "light_k.gph"
#include <mouse.gph>
#define Reset BUTTON_13 //manual reset of tracking (right arrow)
#define Wall (KEY_F)
#define Floor (KEY_C)
#define Stair (KEY_X)
#define InitailEnd_Wait 20
#define SameButton_Wait 40
#define GenericBetweenButton_Wait 50
#define BeforeFireButton_Wait1 50
#define BeforeFireButton_Wait2 100
#define RB (MOUSE_WHEEL)
#define Build (KEY_END)
#define Fire (MBUTTON_1)
 
//mode and tracker
int mode;
int bldvalue;
int NavState;
 
//building hotkeys and tracker
int bldslottrack=1;
bool event_active_b;
bool event_active_n;
bool event_active_f;
 
main {
 
    mouse_passthru();
    key_passthru();
 
//------------------------------------------------------------------------------
//MODE TRACKING
 
    if (mode == 0) {
        set_light('G');
        }
 
    if (mode == 1) {
        set_light('R');
        }
 
    if (mode > 1) {
        mode = 0;}
 
    if ((event_release(BUTTON_15)) && (mode == 0)){
            mode = 1; //building mode
            }
 
    else if (event_release(BUTTON_15) && (mode == 1)) {
            mode = 0; //combat mode
            bldslottrack = 1; //building always resets to slot 1, weapons to last occupied slot
            }
 
//------------------------------------------------------------------------------
//BUILDING AND WEAPON SLOT TRACKING
 
    //Building to axe - has to return to slot 1
    if ((event_release(BUTTON_14)) && (mode == 1)) {
        mode = 0;
        bldslottrack = 1;
        }
 
    if ((event_release(BUTTON_4)) && (mode == 1)) {
        bldslottrack = bldslottrack + 1;
            if (bldslottrack > 4) {
                bldslottrack = 1;
            }
        }
 
    if ((event_release(BUTTON_7)) && (mode == 1)) {
        bldslottrack = bldslottrack - 1;
            if (bldslottrack < 1) {
                bldslottrack = 4;
            }
        }
 
//------------------------------------------------------------------------------
//TRACKER RESETS
 
    //manual tracker reset to weapon mode slot1
    if (event_active(Reset)) {
        mode = 0;
        bldslottrack = 1;
    }
 
    //Since B is cancel as well as enter building mode, need to reset tracker if using to cancel out of xbox menu, inventory, game menu, emotes
    if (event_release (BUTTON_1) || event_release (BUTTON_3) || event_release (BUTTON_10) || event_release (BUTTON_11)) {
        NavState = 1;}
 
    // Pressing B to cancel resets
    if (event_release (BUTTON_15) && NavState) {
        mode = mode + 1;
        NavState = 0;}
 
//------------------------------------------------------------------------------
// LOAD-OUTS
 
       if(key_status(Wall)) {
            bldvalue = 1 -  bldslottrack;
            if(!event_active_b) {
                event_active_b = TRUE;
                if (mode == 0){ //weapons or pickaxe to wall
                    combo_run (BuildWall);
                }     else if ((mode == 1) && (bldvalue == 0)) { //already have wall selected
                        combo_run (RT);}
                    else { //moving from building slots 2,3,4 to wall
                        if (bldvalue == -1) {
                            combo_run (QLB1);
                            bldslottrack = 1;}
                        if (bldvalue == -2) {
                            combo_run (QLB2);
                            bldslottrack = 1;}
                        if (bldvalue == -3) {
                            combo_run (QRB1);
                            bldslottrack = 1;}
                    }
                }
        } else event_active_b = FALSE;
 
        if(key_status(Floor))  {
                bldvalue = 2 -  bldslottrack;
                if(!event_active_f) {
                    event_active_f = TRUE;
                    if (mode == 0){
                        combo_run (BuildFloor);
                    }    else if    ((mode == 1) && (bldvalue == 0)) {
                            combo_run (RT);}
                        else {   
                            if (bldvalue == 1) {
                                combo_run (QRB1);
                                bldslottrack = 2;}
                            if (bldvalue == -1) {
                                combo_run (QLB1);
                                bldslottrack = 2;}
                            if (bldvalue == -2) {
                                combo_run (QLB2);
                                bldslottrack = 2;}
                    }
                }
        } else event_active_f = FALSE;   
 
        if(key_status(Stair))    { 
                bldvalue = 3 -  bldslottrack;
                if(!event_active_n) {
                    event_active_n = TRUE;
                    if (mode == 0){
                        combo_run (BuildStair);
                    } else if ((mode == 1) && (bldvalue == 0)) {
                        combo_run (RT);}
                      else {
                          if (bldvalue == 2) {
                              combo_run (QLB2);
                              bldslottrack = 3;}
                          if (bldvalue == 1) {
                              combo_run (QRB1);
                              bldslottrack = 3;}
                          if (bldvalue == -1) {
                              combo_run (QLB1);
                              bldslottrack = 3;}
                    }
                }
        } else event_active_n = FALSE;   
 
//------------------------------------------------------------------------------
//LED                   
        if (mode == 1){           
        switch(bldslottrack) {
                case 0: display_overlay(_0_, 2000); break;
                case 1: display_overlay(_1_, 2000); break;
                case 2: display_overlay(_2_, 2000); break;
                case 3: display_overlay(_3_, 2000); break;
                case 4: display_overlay(_4_, 2000); break;
            }
        }
 
        if (mode == 0) {
            display_overlay(_0_, 2000); }   
 
} // main
 
combo BuildWall {
    wait(InitailEnd_Wait);
    key_set(Build, 1);
    wait(SameButton_Wait);
    key_set(Build, 0);
    wait(InitailEnd_Wait);
    bldslottrack = 1;
    mode = 1;
}
 
combo BuildFloor {
    wait(InitailEnd_Wait);
    key_set(Build, 1);
    wait(SameButton_Wait);
    key_set(Build, 0);
    wait(GenericBetweenButton_Wait);
    mouse_set(RB, -1);
    wait(SameButton_Wait);
    mouse_set(RB, 0);
    wait(InitailEnd_Wait);
    bldslottrack = 2;
    mode = 1;
}
 
combo BuildStair {
    wait(InitailEnd_Wait);
    key_set(Build, 1);
    wait(SameButton_Wait);
    key_set(Build, 0);
    wait(GenericBetweenButton_Wait);
    mouse_set(RB, -1);
    wait(SameButton_Wait);
    mouse_set(RB, 0);
    wait(GenericBetweenButton_Wait);
    mouse_set(RB, -1);
    wait(SameButton_Wait);
    mouse_set(RB, 0);
    wait(InitailEnd_Wait);
    bldslottrack = 3;
    mode = 1;
}
 
combo QLB1 {
    wait(InitailEnd_Wait);
    mouse_set(RB, 1);
    wait(SameButton_Wait);
    mouse_set(RB, 0);
    wait(BeforeFireButton_Wait1);
    wait(BeforeFireButton_Wait2);
    mouse_set(Fire, 1);
    wait(SameButton_Wait);
    mouse_set(Fire, 0);
    wait(InitailEnd_Wait);
}
 
combo QLB2 {
    wait(InitailEnd_Wait);
    mouse_set(RB, 1);
    wait(SameButton_Wait);
    mouse_set(RB, 0);
    wait(GenericBetweenButton_Wait);
    mouse_set(RB, 1);
    wait(SameButton_Wait);
    mouse_set(RB, 0);
    wait(BeforeFireButton_Wait1);
    wait(BeforeFireButton_Wait2);
    mouse_set(Fire, 1);
    wait(SameButton_Wait);
    mouse_set(Fire, 0);
    wait(InitailEnd_Wait);
}
 
combo QRB1 {
    wait(InitailEnd_Wait);
    mouse_set(RB, -1);
    wait(SameButton_Wait);
    mouse_set(RB, 0);
    wait(BeforeFireButton_Wait1);
    wait(BeforeFireButton_Wait2);
    mouse_set(Fire, 1);
    wait(SameButton_Wait);
    mouse_set(Fire, 0);
    wait(InitailEnd_Wait);
}   
 
combo RT {
    wait(InitailEnd_Wait);
    mouse_set(Fire, 1);
    wait(SameButton_Wait);
    mouse_set(Fire, 0);
    wait(InitailEnd_Wait);
}


i just want the 3 building options on keybindings that's all

and one more question: #define RB (MOUSE_WHEEL)
#define Build (KEY_END)

i got my r1 on key 2 , can i change it from mouse_wheel to key 2 ?


Read this post - within it, it describes the difference between using a mouse_wheel for L1/R1 and a KB key with an example script for each. If you want to use Key_2 then you need to use the alternative one posted.

viewtopic.php?f=26&t=7897&start=170#p60548
User avatar
MAL8010
Sergeant Major of the Army
Sergeant Major of the Army
 
Posts: 263
Joined: Sun Feb 05, 2017 3:12 pm

PreviousNext

Return to GPC2 Script Programming

Who is online

Users browsing this forum: No registered users and 92 guests