// In Game Keybinds - Match these to in game keybinds
define BTN_FIRE = PS4_R2;
define BTN_AIM = PS4_L2;
define aim_x = PS4_RX;
define aim_y = PS4_RY;
define strafe = PS4_LX;
define walk = PS4_LY;
// Advanced Aim Anti Recoil - Change TRUE to FALSE if you want Anti Recoil OFF by default
int recoil_onoff = TRUE;
int V_Recoil = 24; //Vertical Recoil Of Weapon
int H_Recoil = -1; //Horizontal Recooil Of Weapon
// Sticky Aim Assist Values - Change TRUE to FALSE if you want OFF by default
int stickyaim_onoff = TRUE;
int stickyaim_size = 14; /* Sticky Aim Assist Strength */
int stickyaim_time = 17; /* Sticky Aim Assist Speed */
int hipboost = 5; /* Sticky Hip Boost Strength */
int rotaim_onoff = TRUE;
int rotaim_size = 30; /* Rotational Aim Assist Strength */
int rotaim_time = 60; /* Rotational Aim Assist Time */
int edsleftaim_onoff = TRUE;
int eds_left_stick_size = 60;
int eds_left_stick_time = 100;
//Variable Just Leave Alone
int n,o,n1,o2;
int ASSAIM_MOVEMENT_TRACK;
/*-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| | | | | | | | |M|A|I|N| | |S|E|C|T|I|O|N| | | | | | | | | | | | | | | | | | | | | | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+*/
main {
SOFTAIM(PS4_RY,(-1));
combo_run(STICKY_SMALL);
combo_run(ASS_movement_finder);
if (rotaim_onoff) {
if (get_val(BTN_FIRE) || get_val(BTN_AIM) ) {
combo_run(ROT_AIM);}
}
if (stickyaim_onoff) {
if (get_val(BTN_AIM) || (get_val(BTN_AIM) && get_val(BTN_FIRE))) {
combo_run(STICKY_AIM);
combo_stop(STICKY_AIM3);
combo_stop(STICKY_SMALL);
combo_run(STICKY_LEFTSMALL);
}
if (get_val(BTN_FIRE)) {
combo_run(STICKY_AIM3);}
}
if (edsleftaim_onoff) {
if (get_val(BTN_AIM) && get_val(BTN_FIRE)) {
combo_run(STICKY_LEFTAIM);}
}
if (recoil_onoff) {
if (get_val(BTN_AIM) && get_val(BTN_FIRE)) {
anti__recoil(PS4_RY, V_Recoil);
anti__recoil(PS4_RX, H_Recoil); }
}
if(abs(get_val(PS4_RX))<= 15) set_val(PS4_RX,0); if(abs(get_val(PS4_RY))<= 15) set_val(PS4_RY,0);
}
/*-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| | | | | | | | |C|O|M|B|O| |S|E|C|T|I|O|N| | | | | | | | | | | | | | | | | | | | | | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+*/
combo STICKY_AIM {
set_val(PS4_RY,xy_val(PS4_RY, stickyaim_size));
wait(stickyaim_time);
set_val(PS4_RY,xy_val(PS4_RY, stickyaim_size * -1));
wait(stickyaim_time);
set_val(PS4_RX,xy_val(PS4_RX, stickyaim_size));
wait(stickyaim_time);
set_val(PS4_RX,xy_val(PS4_RX, stickyaim_size * -1));
wait(stickyaim_time);
set_val(PS4_RY,xy_val(PS4_RY, stickyaim_size * -1));
wait(stickyaim_time);
set_val(PS4_RY,xy_val(PS4_RY, stickyaim_size));
wait(stickyaim_time);
set_val(PS4_RX,xy_val(PS4_RX, stickyaim_size * -1));
wait(stickyaim_time);
set_val(PS4_RX,xy_val(PS4_RX, stickyaim_size));
wait(stickyaim_time);
}
combo STICKY_LEFTAIM {
set_val(PS4_LX,xy_val(PS4_LX, eds_left_stick_size));
wait(eds_left_stick_time);
set_val(PS4_LX,xy_val(PS4_LX, eds_left_stick_size * -1));
wait(eds_left_stick_time);
}
combo STICKY_AIM3 {
set_val(PS4_RY,xy_val(PS4_RY, stickyaim_size + hipboost));
wait(stickyaim_time);
set_val(PS4_RY,xy_val(PS4_RY, (stickyaim_size + hipboost) * -1));
wait(stickyaim_time);
set_val(PS4_RX,xy_val(PS4_RX, stickyaim_size + hipboost));
wait(stickyaim_time);
set_val(PS4_RX,xy_val(PS4_RX, (stickyaim_size + hipboost) * -1));
wait(stickyaim_time);
set_val(PS4_RY,xy_val(PS4_RY, (stickyaim_size + hipboost) * -1));
wait(stickyaim_time);
set_val(PS4_RY,xy_val(PS4_RY, stickyaim_size + hipboost));
wait(stickyaim_time);
set_val(PS4_RX,xy_val(PS4_RX, (stickyaim_size + hipboost) * -1));
wait(stickyaim_time);
set_val(PS4_RX,xy_val(PS4_RX, stickyaim_size + hipboost));
wait(stickyaim_time);
}
combo STICKY_SMALL {
set_val(PS4_RY,xy_val(PS4_RY, (stickyaim_size / 2)));
wait(10);
set_val(PS4_RY,xy_val(PS4_RY, (stickyaim_size / 2) * -1));
wait(10);
set_val(PS4_RX,xy_val(PS4_RX, (stickyaim_size / 2)));
wait(10);
set_val(PS4_RX,xy_val(PS4_RX, (stickyaim_size / 2) * -1));
wait(10);
set_val(PS4_RY,xy_val(PS4_RY, (stickyaim_size / 2) * -1));
wait(10);
set_val(PS4_RY,xy_val(PS4_RY, (stickyaim_size / 2)));
wait(10);
set_val(PS4_RX,xy_val(PS4_RX, (stickyaim_size / 2) * -1));
wait(10);
set_val(PS4_RX,xy_val(PS4_RX, (stickyaim_size / 2)));
wait(10);
}
combo STICKY_LEFTSMALL {
set_val(PS4_LX,xy_val(PS4_LX, 10));
wait(10);
set_val(PS4_LY,xy_val(PS4_LY, 10));
wait(10);
set_val(PS4_LX,xy_val(PS4_LX, 10 * -1));
wait(10);
set_val(PS4_LY,xy_val(PS4_LY, 10 * -1));
wait(10);
}
combo ROT_AIM {
set_val(PS4_LX,xy_val(PS4_LX, rotaim_size));
set_val(PS4_LY,xy_val(PS4_LY, rotaim_size));
wait(rotaim_time);
set_val(PS4_LX,xy_val(PS4_LX, rotaim_size * -1));
set_val(PS4_LY,xy_val(PS4_LY, rotaim_size * -1));
wait(rotaim_time);
set_val(PS4_LX,xy_val(PS4_LX, rotaim_size * -1));
set_val(PS4_LY,xy_val(PS4_LY, rotaim_size));
wait(rotaim_time);
set_val(PS4_LX,xy_val(PS4_LX, rotaim_size));
set_val(PS4_LY,xy_val(PS4_LY, rotaim_size * -1));
wait(rotaim_time);
}
combo ASS_movement_finder {
ASSAIM_MOVEMENT_TRACK = 1
if(get_val(PS4_RX) > 15 ||get_val(PS4_RY) < -15)
ASSAIM_MOVEMENT_TRACK = 1
if(get_val(PS4_RX) > 15 ||get_val(PS4_RY) < -15)
ASSAIM_MOVEMENT_TRACK = -1
if(get_val(PS4_RX) > 15 ||get_val(PS4_RY) < -15)
ASSAIM_MOVEMENT_TRACK = -1
if(get_val(PS4_RX) > 15 ||get_val(PS4_RY) < -15)
ASSAIM_MOVEMENT_TRACK = ((ASSAIM_MOVEMENT_TRACK * -1) + ASSAIM_MOVEMENT_TRACK)
}
/*-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| | | | | | | | |F |U | N | C | T | I | O | N | S | | | | | | | | | | | | | | | | | | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+*/
function anti__recoil(axis, Value) {
n = get_val(axis) + Value;
o = (Value) / 100;
n1 = 1 + (o);
o2 = 1 - (o);
if(n == (get_val(axis) > 0)){
n = n * o2 + Value - sq(10) * (o2 * (n1 - 1));
} else {
n = n * n1 - Value * (1 - o2);
}
set_val(axis, clampp(n, -100, 100));
combo_stop( STICKY_AIM) return;
}
function sq(v) {
return v * v;
}
function clampp(v, lo, hi) {
if(v < lo) return lo;
if(v > hi) return hi;
return v;
}
function xy_val(f_axis,f_val) {
if(abs(get_val(f_axis)) < stickyaim_size + 1)
return f_val;
return get_val(f_axis);
}
function SOFTAIM( axis, offset_val) {
set_val(axis, clampp(offset_val * (100 - abs(get_val(axis))) / 100 + get_val(axis), -100, 100));
return;
}
/*-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| | | | | | | | | | | | | | | E | N | D | | | |F|A|D|Y| |S|Z|N| | | | | | | | | | | | | | | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+*/