// GPC Online Library
//#include
// ITSC0D3OFLAW,N_YO_X_B0X,BRING ANOTHER TRU-AIM_LAWZ SCRIPT
// * MODERN WARFARE FULL VERSION device / device/Titan One & Two*
// - HairTrigger: sets your Triggers to 100% if you press less then 100%
// - New Best Polar AntiRecoil: reduces recoil of each weapon
// - Incremental Polar Aim Assist - Always Active
// - EasyRun
// - Rapid Fire
// - Best Polar Aim Correction+Polar Aim Assist Booster
// - New Polar Aim Abuse - Default/Staring Values
// - New Polar Aim Assist - Default/Starting
// - RightStickDeadZone -
// - SENSI Settings
// - New Easy_slide
// - Hold Breath
// - Akimbo Mode
// - Custom Sensitivity
// - Super Sprint
// - New ReloadCancel
// - New Fast reload
// - Easy Crouch
// - Easy Jump
// - Easy Melee
//////////////////////////////////////////////////////////////////////////////////////////
/*
FIRE MODES:
HOLD AIM (XB1_LT/PS4_L2) + TAP D-PAD DOWN/ABAJO = ALL FIRE MODS OFF & ANTI RECOIL OFF
HOLD AIM (XB1_LT/PS4_L2) + TAP D-PAD RIGHT/DERECHA = RAPID FIRE (RF) ON
HOLD AIM (XB1_LT/PS4_L2) + TAP D-PAD LEFT/IZQUIERDA = RF SECONDARY WEAPON = ON / ANTI RECOIL = OFF)
HOLD AIM (XB1_LT/PS4_L2) + HOLD D-PAD LEFT/IZQUIERDA = ANTI RECOIL PRIMARY WEAPON = ON / RF SECONDARY WEAPON = ON
HOLD AIM (XB1_LT/PS4_L2) + TAP D-PAD UP/ARRIBA = ALL FIRE MODS OFF & ANTI RECOIL ON
HOLD AIM (XB1_LT/PS4_L2) + TAP START = AKIMBO / AUTO AIM ON / OFF (start button = PS4_OPTIONS / XB1_MENU)
//-- STICKS */
define WALK=PS4_LY;
define STRAFE=WII_LX;
define AIM_H=XB360_RX;//AIM HORIZONTAL
define AIM_V=PS3_RY;//AIM VERTICAL
//--BUTTONS
define FIRE=XB1_RT;
define ADS=XB1_LT;
define SPRINT=XB1_LS;
define TACTICAL=PS4_L1;
define LETHAL=PS4_R1;
define PRONE=XB1_RS;
define MELEE=XB1_B;
define JUMP=XB1_A;
/*
PS4_CIRCLE XB1_B STICKS:
PS4_R1 XB1_RB
PS4_R2 XB1_RT PS4_LY XB1_LY
PS4_R3 XB1_RS PS4_LX XB1_LX
PS4_L1 XB1_LB PS4_RX XB1_RX
PS4_L2 XB1_LT PS4_RY XB1_RY
PS4_L3 XB1_LS
*/
/*
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! CONFIGURE TO YOUR TASTE !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
*/
define MW_X = 4;// Fill out the first slot (OR 0, if only one slot is used)
define MW_B = 5;// Fill out the second slot(OR 0, if only one slot is used)
define MW_A = 6;// Fill out the third slot(OR 0, if only one slot is used)
define invert= 1; //If you play with inverted set to -1*/
int in_game_menu_sens= 7; //fill out your in game sensitivity
int AIM__CORRECT= 1; //[0 = OFF / 1 = ON]
define AIM_ASSIST= 1; //[0 = OFF / 1 = ON] strongest aim assist for COD BO 4 multiplayer
int _v= 22; //If your screen shakes whilst using aim assist - lower this value (on the fly instructions below)
define CNL_RELOAD= 1; //[0 = OFF / 1 = ON] cancel reload with fire or ads
define Easy_Thumbs= 4; //see below
int walk_tresh= -75; //Easy sprint stick treshhold (-75 = pressed more than 75%)
int EASY__SPRINT= 2; // 0 = off 1 = supersprint with double tap stick forward + hold. 2 = always super sprint
define drop_slide_opt= 3; //[0 = EASY DROP OFF / 1 = DROP ONLY When firing, 2 = DROP ALSO when aiming, 3 = SLIDE ALSO when sprinting]
int s= 1; //[0 = OFF / 1 = ON] HOLD ADS + TAP MENU/OPTIONS: AUTO DEAD SILENCE ON / OFF
/*
Easy_Thumbs:
0 = not activated - do not activate without activating easy sprint
1 = Auto Sprint activated = on your Left Thumb (just push stick more than 75% forward to run)
2 = Auto Sprint activated + Easy Jump under Left Stick Click
3 = Auto Sprint activated + Easy Crouch/Slide under Left Stick Click
4 = Auto Sprint activated + Easy Melee under Left Stick Click
_______________________________AIM ASSIST ANTI RECOIL: ON THE FLY INSTRUTCTIONS _______
If you experience screen shake, lower the aim assist value. To tweak the aim assit value on the fly:
- hold CIRCLE / B + hold TRIANGLE / Y and:
- tap D-pad left (-1)
- tap D-pad right (+1)
The new value is auto saved.
TO SET ANTI RECOIL VALUES:
- ACTIVATE ANTI RECOIL (LED TURNS GREEN)
- ACTIVATE EDIT MENU (HOLD B/CIRCLE AND HOLD TRIANGLE + TAP UP) (LED FLASHES ALL COLORS (RAINBOW FLASH/Or Black Color)
- AIM STRAIGHT AHEAD (SO HOLD ADS) AND FIRE YOUR WEAPON
- WHILST FIRING, CORRECT THE VERTICAL RECOIL MANUALLY USING THE AIM STICK
- WHEN THE RECOIL IS REDUCED TO A MINIMUM EXIT EDIT MENU (HOLD B / CIRCLE AND HOLD TRIANGLE / Y + TAP UP)
- VALUEAS ARE AUTO SAVED ON EXIT
|L|E|D|S|
*/
int _;
//---other variables used by the script*/
int d_click;
int record, rumble;
int GUN_BELT=FALSE, WPN_1;
int RELOAD__TIME, b_reload=FALSE;
int RF=FALSE;
int first_time;
int default_v;
int T_Button;
int time_UP;
int tap_UP;
int timelimit = 150;
int walker;
int RY, RX;
//---anti recoil, aim assist variables
int a_r__c;
int c___y, c___x;
int x_y__max = 10;
int inY[25];
int token, ry__par;
int Y_val;
int edit = FALSE;
int A__R;
int aa_max;
//---(Zoom) sens variables
int ADS_SENS, ADS_FIRE_SENS, Sens;
int ZOOM_SENS;
int Zoom=FALSE;
int ROF;
int hold_time;
define buffer=500;
init {
a_r__c = get_pvar(SPVAR_10,-100,100, 15);
_v = get_pvar(SPVAR_8, 10, 40, 24);
RELOAD__TIME= get_pvar(SPVAR_3, 0, 4000, 800);
in_game_menu_sens = get_pvar(SPVAR_15, 3, 20, 12);
default_v = get_pvar(SPVAR_14, 3, 20, 12);
first_time = get_pvar(SPVAR_16, 0, 1, 1);
aa_max = _v + 1 ;
}/*
|M|A|I|N| |B|L|O|C|K| |S|T|A|R|T|S| |H|E|R|E|
*/
main {
//--TRACE 1 , 2 , 3 , 4 , 5 , 6
set_val (30, a_r__c); set_val (31, c___x);set_val (32, s);set_val (TRACE_5, default_v);
set_val (TRACE_6, in_game_menu_sens);
//set_val (36, ZOOM_SENS);
//--EPROM STACK MEMORY FIX
if (first_time == 1){default_v=in_game_menu_sens; RESET_Defaults();}
c___y = d___z(AIM_V,0);
c___x = d___z(AIM_H,0);
//---double click timer
if(d_click) {d_click = d_click-get_rtime();}/*
|M|E|N|U| |A|D|S|
*/
if(get_val(ADS))
{
//--FIRE MODS OFF
if(event_press(WII_DOWN))
{//D-pad DOWN
WPN_1=TRUE;
RF=FALSE;
rumble_f (RF);
GUN_BELT=FALSE;
A__R=FALSE;
}
//--FIRE MODS OFF / anti recoil on
if(event_press(WII_UP))
{//D-pad UP
WPN_1=TRUE;
RF=FALSE;
rumble_f (RF);
GUN_BELT=FALSE;
A__R=TRUE;
}
//--RAPID FIRE ON
if(event_press(WII_RIGHT))
{//D-pad RIGHT
WPN_1=TRUE;
RF=TRUE;
rumble_f (RF);
GUN_BELT=FALSE;
A__R=FALSE;
}
//--RF SECONDANRY
if(event_press(WII_LEFT))
{//D-pad LEFT
WPN_1 = TRUE;
RF=TRUE;
GUN_BELT=TRUE;
rumble_f (GUN_BELT);
A__R=FALSE;
}
if (get_val (WII_LEFT) &&get_ptime(WII_LEFT)>900) {A__R=TRUE;rumble_f (A__R);}
if(event_press (WII_PLUS))
{
s = !s; rumble_f (s);
}
if(get_val(WII_MINUS) && get_ptime (WII_MINUS) > 800)
{
RESET_Defaults();
}
btn (PS4_SHARE);btn (PS4_LEFT);btn (PS4_RIGHT);btn (PS4_UP);btn (PS4_DOWN);btn (WII_HOME); btn (WII_PLUS);
}//--END
if(get_val(WII_DOWN))
{
if (event_press (WII_ONE))
{
AIM__CORRECT++;
if (AIM__CORRECT > 2) AIM__CORRECT = 1;
if(AIM__CORRECT==1) rumble_f (1);
else rumble_f (0);
}
btn (WII_ONE);
}
if(drop_slide_opt==1)
{
if(get_val(FIRE))
{
if(event_press (PRONE))
{
combo_run(DROP);
}
}
}
if (get_val (ADS)||get_val(FIRE))
{
if (drop_slide_opt ==2)
{
if(event_press (PRONE))
{
combo_run(DROP);
}
}
}
if (get_val (ADS)||get_val(FIRE)||combo_running (EASY_SPRINT))
{
if (drop_slide_opt ==3 )
{
if(event_press (PRONE))
{
combo_run(DROP);
}
}
}
/*
|R|E|C|O|R|D| |T|I|M|E|
*/
if(!edit && get_val(XB1_DOWN) && get_val (XB1_X) && get_ptime (XB1_X)>500 && !record)
{
record = TRUE; rumble_f (record);
}
if (record)
{
RELOAD__TIME = get_ptime(XB1_X);
if (event_release (XB1_X))
{
record = FALSE; save_pvars (); rumble_f (record);
}
}//--END
/*
|R|E|S|E|T|S|
*/
if(event_release(XB1_X))
{
b_reload=TRUE;
}
if(b_reload)
{
b_reload = b_reload + get_rtime();
}
if(b_reload >= RELOAD__TIME)
{
b_reload = 0;
b_reload = FALSE;
}
/*
|C|A|N|C|E|L| |R|E|L|O|A|D|
*/
if (CNL_RELOAD==1)
{
if (b_reload && (event_press(FIRE)||event_press(ADS)))
{
combo_run(CANCEL_RLD);
}
}
/*
|W|E|A|P|O|N| |F|I|R|E| |M|O|D|S|
*/
if(event_release(XB1_Y) && get_ptime(XB1_Y) < 300 && GUN_BELT)
{
WPN_1 = !WPN_1; rumble_f (WPN_1);
}
if (record==FALSE &&GUN_BELT && get_val (XB1_X)&& WPN_1==FALSE && get_ptime(XB1_X) > 180)
{//--RESET
WPN_1 = TRUE; rumble_f (WPN_1);
}
//-- Rapid fire
if (RF)
{
ROF =(get_val(FIRE))/4;
if (ROF >= 20) ROF=20;
if (ROF <= 2) ROF=2;
hold_time = buffer / ROF;
if(hold_time >=125) hold_time=125;
if(hold_time <35) hold_time=35;
{
if (!WPN_1 && GUN_BELT || WPN_1 &&!GUN_BELT)
{
if (get_val (FIRE) && RF )
{
combo_run (RAPID_FIRE);
}
}else if(combo_running(RAPID_FIRE)){
combo_stop(RAPID_FIRE);}
}
}
/*
|A|I|M| | |C|O|R|R|E|C|T|I|O|N|S|
_ _
*/
if(AIM__CORRECT==1)
{
ADS_SENS=111-(in_game_menu_sens*2); ADS_FIRE_SENS=106-(in_game_menu_sens*2); ZOOM_SENS=95-(in_game_menu_sens*2);
if (get_val (ADS))
if (get_val (LETHAL)) block(LETHAL,150);
if (event_release(LETHAL))
{
if(get_ptime(LETHAL) < 150&&get_val(ADS))
{
Zoom = TRUE; rumble_f(Zoom);
}
else Zoom = FALSE;
}
if (!Zoom)
{
if(get_val(FIRE) && get_val(ADS))
{
Sens = ADS_FIRE_SENS;
}
if(!get_val(FIRE) && !get_val(ADS) || get_val (FIRE) &&!get_val(ADS))
{
Sens = 100;
}
if(!get_val(FIRE) && get_val(ADS) || get_val (LETHAL) && !get_val (ADS))
{
Sens = ADS_SENS; //-- sets both ADS & grenade sens
}
}
if(Zoom)
{
if(get_val(ADS))
{ //--Zoom
Sens = ZOOM_SENS;
}
else
{
Sens = 100;
Zoom = FALSE;
rumble_f(Zoom);
}
}
if(Sens > 100) Sens = 100;
sensitivity(AIM_H, NOT_USE, Sens);
sensitivity(AIM_V, NOT_USE, Sens);
}//----------------------------end AIM_CORRECTIONS
if (get_val(XB1_B) &&get_val(XB1_Y))
{
if (event_press(XB1_UP))
{
if (A__R && WPN_1)
{
edit = !edit; rumble_f(edit);
}
}
if (event_press(XB1_LEFT))
{
_v = _v - 1;save_pvars ();
}
if (event_press(XB1_RIGHT))
{
_v = _v + 1;save_pvars ();
}
if (event_press(XB1_VIEW))
{
in_game_menu_sens --; save_pvars ();
}
if (event_press(XB1_MENU))
{
in_game_menu_sens ++; save_pvars ();
}
btn (XB1_B); btn(XB1_Y); btn (XB1_UP);
btn (XB1_LEFT); btn (XB1_RIGHT);
btn (XB1_MENU); btn (XB1_VIEW);
btn (TACTICAL); btn (LETHAL);
}
/*
|E|A|S|Y| |R|U|N|
*/
if (Easy_Thumbs == 2) T_Button = JUMP;
if (Easy_Thumbs == 3) T_Button = PRONE;
if (Easy_Thumbs == 4) T_Button = MELEE;
if (Easy_Thumbs > 1 && Easy_Thumbs <5 && get_val(XB1_LS)){set_val(T_Button, 100);}
if (EASY__SPRINT==1)
{
if(get_val(WALK)==-100 && time_UP==0) tap_UP=1;
else if(get_val(WALK)>-20 && tap_UP==1) tap_UP = 2;
if(tap_UP ==2)
{
time_UP=time_UP+get_rtime();
if(time_UP>=timelimit){time_UP=0;tap_UP=0;}
if(get_val(WALK)==-100 ){
tap_UP = 0;
time_UP=0;
walker=1;
}
}
if (get_val (WALK) < walk_tresh && walker==1 && !b_reload && !get_val(ADS)) {combo_run (EASY_RUN);
if (s) {combo_run (silent);}
}
if (get_val (WALK) < walk_tresh && walker==0 && !b_reload && !get_val(ADS)){ combo_run (EASY_SPRINT);
if (s) {combo_run (silent);}
}
else if (get_val (WALK) > walk_tresh && walker==1) {walker=0;}
}
if (EASY__SPRINT==2){if (get_val (WALK) < walk_tresh && !b_reload && !get_val(ADS)){ combo_run (EASY_RUN);}}
if(get_val(XB1_DOWN) && !get_val(ADS))
{
if(event_release(XB1_X) && get_ptime (XB1_X)<500)
{load_slot(MW_X);}
if(event_press(XB1_A))
{load_slot(MW_A);}
if(event_press(XB1_B))
{load_slot(MW_B);}
btn(XB1_B);btn (XB1_A);btn (XB1_Y); btn (XB1_LB); btn (XB1_RB); btn (XB1_RS);
}
/*
|A|I|M| |A|S|S|I|S|T|
*/
if (AIM_ASSIST==1)
{
if(get_val(ADS)) combo_run(AA_XY);
else combo_stop(AA_XY);
}/*
|A|N|T|I| |R|E|C|O|I|L|
*/
if (A__R && WPN_1)
{
if (get_val (FIRE)&& get_val (ADS))
{
Y_val = a_r__c;
AntiRecoil(AIM_V,Y_val);
if (edit){
a__r ();
}
}
}/*
|T|U|R|B|O|H|A|I|R| |T|R|I|G|G|E|R|S|
*/
deadzone(FIRE,ADS,99,100);
/*
L|E|D|S| |R|U|M|B|L|E
*/
if (!get_ledx()){
if (ADS_SENS >100 || ADS_FIRE_SENS >100 )__(2);
else if (GUN_BELT && !WPN_1||!GUN_BELT && RF && WPN_1) __(7);
else if (!edit && A__R)__(4);
else if (edit || record) __(0);
else __(1);} if(rumble) combo_run(RUMBLE);
}/*
|C|O|M|B|O| |S|E|C|T|I|O|N|
*/
combo AA_XY {
set_val(AIM_V,xy_val(AIM_V, _v));
wait(20);
set_val(AIM_H,xy_val(AIM_H, _v));
set_val(STRAFE,xy_val(STRAFE, _v));
wait(20);
set_val(AIM_V,xy_val(AIM_V, _v * -1));
wait(20);
set_val(AIM_H,xy_val(AIM_H, _v * -1));
set_val(STRAFE,xy_val(STRAFE, _v * -1));
wait(20);
}
combo RAPID_FIRE {
set_val(FIRE,100);
wait(hold_time);
set_val(FIRE, 0);
wait(hold_time);
}
combo CANCEL_RLD {
rumble_f (1);
set_val(XB1_Y, 100);
wait(30);
wait(20);
set_val(XB1_Y, 100);
wait(30);
wait(20);
b_reload=FALSE;
}
combo RUMBLE{
wait(150);
if(get_controller () == PIO_XB1){
set_rumble(2,5);
set_rumble(3,5);
}else
set_rumble(1,100);
wait(150);
reset_rumble();
rumble--;
}
combo EASY_SPRINT{
set_val(SPRINT,100);
}
combo EASY_RUN{
set_val(SPRINT,100);
wait (30);
wait (100);
}
combo silent{
set_val (TACTICAL, 100); set_val(LETHAL,100);
wait (30);
wait (30000);
}
combo DROP {
set_val(PRONE,100);
wait(1200);
wait(800);
}
function d___z(f_axis,f_val) {
f_val = get_val(f_axis);
if(abs(f_val) < 10) {
set_val(f_axis,0);
return 0;
}
return f_val;
}
function rumble_f(pos) {
if(pos)
rumble = 1;
else
rumble = 2;
}
function xy_val(f_axis,f_val) {
if(abs(get_val(f_axis)) < aa_max)
return f_val;
return get_val(f_axis);
}
function a__r (){
if(abs(c___y) >= x_y__max){
inY[token] = c___y;
token++;
if(token == 25)
{
token = 0;
while(token <= 24)
{
ry__par = ry__par+inY[token];
token++;
}
ry__par = ry__par/25;
a_r__c = a_r__c + ry__par / 10;
ry__par = 0;
token = 0;
}
}
}
function RESET_Defaults () {
a_r__c =15;
Y_val = 15;
in_game_menu_sens=default_v;
first_time=0;
_v=24;
RELOAD__TIME=800;
save_pvars ();
}
function save_pvars (){
set_pvar(SPVAR_10, a_r__c);
set_pvar(SPVAR_15, in_game_menu_sens);
set_pvar(SPVAR_16, first_time);
set_pvar(SPVAR_8, _v);
set_pvar(SPVAR_3, RELOAD__TIME);
set_pvar(SPVAR_14, default_v);
rumble_f (1);
}
function btn(f__btn) {
if (!get_val(f__btn)) return;
set_val(f__btn, 0);
}
function AntiRecoil (axis, recoil){
RY = get_val(XB1_RY);
RX = get_val(XB1_RX);
if (get_val(XB1_RT) && (isqrt(RX*RX + RY*RY)) <= abs(recoil))
{
if(abs(RY) <= abs(recoil))
{
set_val(axis,(recoil * (100 - abs(get_val(axis)))) / 100 + get_val(axis));
}
}
}
function __(c) {
_=0;
while(_<3) {
set_led(_,test_bit(c,_));
_++;
}
}