BWG AntiHack
BlackWing Gaming AntiCheat Server Side Files
Life_Server\antihack\fn_antiHack.sqf
Code:
"BWG_ANTI_HACK" addPublicVariableEventHandler {
_player = (_this select 1) select 0;
_msg = (_this select 1) select 1;
diag_log format ["%1", _msg];
[[4, format ["%1 IS HACKING, REPORT HIM TO AN ADMIN!!!", name _player]], "life_fnc_broadcastMessage", true, false] spawn BIS_fnc_MP;
};
publicVariable "BWG_fnc_clientAntiHack";
BIS_fnc_endMission = compileFinal "";
publicVariable "BIS_fnc_endMission";
Life_Server\antihack\fn_clientAntiHack.sqf
Code:
if (isServer) exitWith {};
private ["_cfg","_patches","_sel","_name","_patches","_cash","_atm","_msg","_donator","_admin"];
waitUntil {!isNull player && player == player};
BWG_hackDetected = compileFinal "
if (isServer) exitWith {};
disableUserInput true;
BWG_ANTI_HACK = [player, _this select 0];
publicVariableServer ""BWG_ANTI_HACK"";
sleep 0.5;
BWG_KICK_ME = true;
publicVariableServer ""BWG_KICK_ME"";
_endM = compile PreProcessFileLineNumbers ""\a3\functions_f\Misc\fn_endMission.sqf"";
[""BWG_ANTI_HACK"", false, false] call _endM;
";
uiNamespace setVariable ["RscDisplayRemoteMissions", displayNull];
_patchList =
["life_server","ASM","CAData","A3Data","A3_Data_F_Hook","A3_BaseConfig_F","A3_Dubbing_Radio_F","A3_Functions_F","A3_Functions_F_EPA","A3_Functions_F_EPC","A3_Data_F","A3_Data_F_ParticleEffects","A3_Editor_F","A3_Functions_F_Curator",
"A3_Language_F","A3_Language_F_Beta","A3_Language_F_Curator","A3_Language_F_EPA","A3_Language_F_EPB","A3_Language_F_EPC","A3_Language_F_Gamma","A3_LanguageMissions_F","A3_LanguageMissions_F_Beta",
"A3_LanguageMissions_F_Gamma","A3_Misc_F","A3_Misc_F_Helpers","A3_Modules_F","A3_Modules_F_DynO","A3_Modules_F_Effects","A3_Modules_F_Events","A3_Modules_F_GroupModifiers","A3_Modules_F_HC",
"A3_Modules_F_Intel","A3_Modules_F_LiveFeed","A3_Modules_F_Marta","A3_Modules_F_Misc","A3_Modules_F_Multiplayer","A3_Modules_F_ObjectModifiers","A3_Modules_F_Sites","A3_Modules_F_Skirmish",
"A3_Modules_F_StrategicMap","A3_Modules_F_Supports","A3_Modules_F_UAV","A3_Modules_F_Beta","A3_Modules_F_Beta_FiringDrills","A3_Modules_F_EPB","A3_Modules_F_EPB_Misc","A3_Music_F","A3_Music_F_EPA",
"A3_Music_F_EPB","A3_Music_F_EPC","A3_Roads_F","A3_Rocks_F","A3_Sounds_F","A3_Sounds_F_EPB","A3_Sounds_F_EPC","A3_Structures_F","A3_Structures_F_Bridges","A3_Structures_F_Civ","A3_Structures_F_Civ_Accessories",
"A3_Structures_F_Civ_Ancient","A3_Structures_F_Civ_BellTowers","A3_Structures_F_Civ_Calvaries","A3_Structures_F_Civ_Camping","A3_Structures_F_Civ_Chapels","A3_Structures_F_Civ_Constructions","A3_Structures_F_Civ_Dead",
"A3_Structures_F_Civ_Garbage","A3_Structures_F_Civ_InfoBoards","A3_Structures_F_Civ_Lamps","A3_Structures_F_Civ_Market","A3_Structures_F_Civ_Offices","A3_Structures_F_Civ_Pavements","A3_Structures_F_Civ_PlayGround",
"A3_Structures_F_Civ_SportsGrounds","A3_Structures_F_Civ_Statues","A3_Structures_F_Dominants","A3_Structures_F_Dominants_Amphitheater","A3_Structures_F_Dominants_Castle","A3_Structures_F_Dominants_Church",
"A3_Structures_F_Dominants_Hospital","A3_Structures_F_Dominants_Lighthouse","A3_Structures_F_Dominants_WIP","A3_Structures_F_Furniture","A3_Structures_F_Households","A3_Structures_F_Households_Addons",
"A3_Structures_F_Households_House_Big01","A3_Structures_F_Households_House_Big02","A3_Structures_F_Households_House_Shop01","A3_Structures_F_Households_House_Shop02","A3_Structures_F_Households_House_Small01",
"A3_Structures_F_Households_House_Small02","A3_Structures_F_Households_House_Small03","A3_Structures_F_Households_Slum","A3_Structures_F_Households_Stone_Big","A3_Structures_F_Households_Stone_Shed",
"A3_Structures_F_Households_Stone_Small","A3_Structures_F_Households_WIP","A3_Structures_F_Ind","A3_Structures_F_Ind_AirPort","A3_Structures_F_Ind_Cargo","A3_Structures_F_Ind_CarService",
"A3_Structures_F_Ind_ConcreteMixingPlant","A3_Structures_F_Ind_Crane","A3_Structures_F_Ind_DieselPowerPlant","A3_Structures_F_Ind_Factory","A3_Structures_F_Ind_FuelStation","A3_Structures_F_Ind_FuelStation_Small",
"A3_Structures_F_Ind_Pipes","A3_Structures_F_Ind_PowerLines","A3_Structures_F_Ind_ReservoirTank","A3_Structures_F_Ind_Shed","A3_Structures_F_Ind_SolarPowerPlant","A3_Structures_F_Ind_Tank",
"A3_Structures_F_Ind_Transmitter_Tower","A3_Structures_F_Ind_WavePowerPlant","A3_Structures_F_Ind_Windmill","A3_Structures_F_Ind_WindPowerPlant","A3_Structures_F_Items","A3_Structures_F_Items_Documents",
"A3_Structures_F_Items_Electronics","A3_Structures_F_Items_Cans","A3_Structures_F_Items_Gadgets","A3_Structures_F_Items_Luggage","A3_Structures_F_Items_Stationery","A3_Structures_F_Items_Tools",
"A3_Structures_F_Items_Valuables","A3_Structures_F_Items_Vessels","A3_Structures_F_Mil","A3_Structures_F_Mil_BagBunker","A3_Structures_F_Mil_BagFence","A3_Structures_F_Mil_Barracks","A3_Structures_F_Mil_Bunker",
"A3_Structures_F_Mil_Cargo","A3_Structures_F_Mil_Flags","A3_Structures_F_Mil_Fortification","A3_Structures_F_Mil_Helipads","A3_Structures_F_Mil_Offices","A3_Structures_F_Mil_Radar","A3_Structures_F_Mil_Shelters",
"A3_Structures_F_Mil_TentHangar","A3_Structures_F_Naval","A3_Structures_F_Naval_Buoys","A3_Structures_F_Naval_Piers","A3_Structures_F_Naval_RowBoats","A3_Structures_F_Research","A3_Structures_F_System",
"A3_Structures_F_Training","A3_Structures_F_Training_InvisibleTarget","A3_Structures_F_Walls","A3_Structures_F_EPA_Civ_Camping","A3_Structures_F_EPA_Civ_Constructions","A3_Structures_F_EPA_Items_Electronics",
"A3_Structures_F_EPA_Items_Food","A3_Structures_F_EPA_Items_Medical","A3_Structures_F_EPA_Items_Tools","A3_Structures_F_EPA_Items_Vessels","A3_Structures_F_EPA_Walls","A3_Structures_F_EPB_Civ_Accessories",
"A3_Structures_F_EPB_Civ_Camping","A3_Structures_F_EPB_Civ_Dead","A3_Structures_F_EPB_Civ_Garbage","A3_Structures_F_EPB_Civ_Graffiti","A3_Structures_F_EPB_Civ_PlayGround","A3_Structures_F_EPB_Furniture",
"A3_Structures_F_EPB_Items_Documents","A3_Structures_F_EPB_Items_Luggage","A3_Structures_F_EPB_Items_Military","A3_Structures_F_EPB_Items_Vessels","A3_Structures_F_EPB_Naval_Fishing","A3_Structures_F_EPC_Civ_Accessories",
"A3_Structures_F_EPC_Civ_Camping","A3_Structures_F_EPC_Civ_Garbage","A3_Structures_F_EPC_Civ_InfoBoards","A3_Structures_F_EPC_Civ_Kiosks","A3_Structures_F_EPC_Civ_PlayGround",
"A3_Structures_F_EPC_Civ_Tourism","A3_Structures_F_EPC_Dominants_GhostHotel","A3_Structures_F_EPC_Dominants_Stadium","A3_Structures_F_EPC_Furniture","A3_Structures_F_EPC_Items_Documents",
"A3_Structures_F_EPC_Items_Electronics","A3_Structures_F_EPC_Walls","A3_UIFonts_F","A3_Animals_F","A3_Animals_F_AnimConfig","A3_Animals_F_Fishes","A3_Animals_F_Kestrel","A3_Animals_F_Rabbit",
"A3_Animals_F_Seagull","A3_Animals_F_Snakes","A3_Animals_F_Turtle","A3_Animals_F_Chicken","A3_Animals_F_Dog","A3_Animals_F_Goat","A3_Animals_F_Sheep","A3_Anims_F","A3_Anims_F_Config_Sdr",
"A3_Anims_F_EPA","A3_Anims_F_EPC","A3_Map_Data","A3_Map_Stratis","A3_Map_Stratis_Scenes","A3_Plants_F_Bush","A3_Signs_F","A3_Signs_F_AD","A3_UI_F","A3_UI_F_Curator","A3_Weapons_F",
"A3_Weapons_F_NATO","A3_Weapons_F_CSAT","A3_Weapons_F_AAF","A3_weapons_F_FIA","A3_Weapons_F_ItemHolders","A3_Weapons_F_Headgear","A3_Weapons_F_Uniforms","A3_Weapons_F_Vests","A3_Weapons_F_Ammoboxes",
"A3_Weapons_F_DummyWeapons","A3_Weapons_F_Explosives","A3_Weapons_F_Items","A3_Weapons_F_Launchers_NLAW","A3_Weapons_F_Launchers_LAW","A3_Weapons_F_EBR","A3_Weapons_F_LongRangeRifles_GM6",
"A3_Weapons_F_LongRangeRifles_M320","A3_Weapons_F_Machineguns_M200","A3_Weapons_F_Pistols_P07","A3_Weapons_F_Pistols_Rook40","A3_Weapons_F_Rifles_Khaybar","A3_Weapons_F_Rifles_MX","A3_Weapons_F_Rifles_SDAR",
"A3_Weapons_F_Rifles_TRG20","A3_Weapons_F_beta","A3_Weapons_F_Beta_Ammoboxes","A3_Weapons_F_Launchers_Titan","A3_Weapons_F_beta_EBR","A3_Weapons_F_Machineguns_Zafir","A3_Weapons_F_Pistols_ACPC2","A3_Weapons_F_beta_Rifles_Khaybar",
"A3_Weapons_F_Rifles_Mk20","A3_Weapons_F_beta_Rifles_MX","A3_Weapons_F_beta_Rifles_TRG20","A3_Weapons_F_Rifles_Vector","a3_weapons_f_rifles_SMG_02","A3_Weapons_F_EPA_LongRangeRifles_DMR_01","A3_Weapons_F_EPA_EBR",
"A3_Weapons_F_EPA_LongRangeRifles_GM6","A3_Weapons_F_Pistols_Pistol_heavy_01","A3_Weapons_F_Pistols_Pistol_heavy_02","A3_Weapons_F_EPA_Rifles_MX","A3_Weapons_F_EPB_LongRangeRifles_GM3","A3_Weapons_F_EPB_LongRangeRifles_M320",
"A3_Weapons_F_EPB_Rifles_MX_Black","A3_Weapons_F_gamma","A3_Weapons_F_Gamma_Ammoboxes","A3_Weapons_F_Pistols_PDW2000","A3_Characters_F","A3_Characters_F_BLUFOR","A3_Characters_F_Civil","A3_Characters_F_Heads",
"A3_Characters_F_OPFOR","A3_Characters_F_Proxies","A3_Characters_F_Beta","A3_Characters_F_INDEP","A3_Characters_F_EPB_Heads","A3_Characters_F_Gamma","A3_Data_F_Curator","A3_Data_F_Curator_Eagle","A3_Data_F_Curator_Intel",
"A3_Data_F_Curator_Misc","A3_Data_F_Curator_Respawn","A3_UAV_F_Characters_F_Gamma","A3_UAV_F_Weapons_F_Gamma_Ammoboxes","A3_Weapons_F_gamma_Items","A3_Map_Altis","A3_Map_Altis_Scenes","A3_Missions_F","A3_Missions_F_Beta",
"A3_Missions_F_Gamma","A3_Modules_F_Curator","A3_Modules_F_Curator_Animals","A3_Modules_F_Curator_CAS","A3_Modules_F_Curator_Curator","A3_Modules_F_Curator_Effects","A3_Modules_F_Curator_Environment","A3_Modules_F_Curator_Flares",
"A3_Modules_F_Curator_Intel","A3_Modules_F_Curator_Lightning","A3_Modules_F_Curator_Mines","A3_Modules_F_Curator_Misc","A3_Modules_F_Curator_Multiplayer","A3_Modules_F_Curator_Objectives","A3_Modules_F_Curator_Ordnance",
"A3_Modules_F_Curator_Respawn","A3_Modules_F_Curator_Smokeshells","A3_Static_F","A3_Static_F_Mortar_01","A3_Static_F_Beta_Mortar_01","A3_Static_F_Gamma","A3_Static_F_Gamma_AA","A3_Static_F_Gamma_AT","A3_Static_F_Gamma_Mortar_01",
"A3_Weapons_F_Acc","A3_Weapons_F_Beta_Acc","A3_Weapons_F_EPA","A3_Weapons_F_EPA_Acc","A3_Weapons_F_EPA_Ammoboxes","A3_Weapons_F_EPB","A3_Weapons_F_EPB_Acc","A3_Weapons_F_EPB_Ammoboxes","A3_Weapons_F_EPC","A3_Weapons_F_gamma_Acc",
"A3_Air_F","A3_Air_F_Heli_Light_01","A3_Air_F_Heli_Light_02","A3_Air_F_Beta","A3_Air_F_Beta_Heli_Attack_01","A3_Air_F_Beta_Heli_Attack_02","A3_Air_F_Beta_Heli_Transport_01","A3_Air_F_Beta_Heli_Transport_02","A3_Air_F_Beta_Parachute_01",
"A3_Air_F_Beta_Parachute_02","A3_Air_F_EPB_Heli_Light_03","A3_Air_F_EPC_Plane_CAS_01","A3_Air_F_EPC_Plane_CAS_02","A3_Air_F_Gamma_Plane_Fighter_03","A3_Armor_F","A3_armor_f_beta","A3_Armor_F_Panther","A3_armor_f_beta_APC_Tracked_02",
"A3_Armor_F_EPB_APC_tracked_03","A3_Armor_F_EPB_MBT_03","A3_Armor_F_Slammer","A3_Armor_F_T100K","A3_Boat_F","A3_Boat_F_Boat_Armed_01","A3_Boat_F_Boat_Transport_01","A3_Boat_F_Beta_Boat_Armed_01","A3_Boat_F_Beta_Boat_Transport_01",
"A3_Boat_F_SDV_01","A3_Boat_F_EPC_Submarine_01_F","A3_Boat_F_Civilian_Boat","A3_Boat_F_Trawler","A3_Boat_F_Gamma_Boat_Transport_01","A3_Characters_F_Common","A3_Characters_F_EPA","A3_Characters_F_EPB","A3_Characters_F_EPC",
"A3_Data_F_Curator_Characters","A3_Data_F_Curator_Virtual","A3_Air_F_Gamma_UAV_01","A3_Air_F_Gamma_UAV_02","A3_Missions_F_EPA","A3_Missions_F_EPB","A3_Missions_F_EPC","A3_Modules_F_Curator_Chemlights","A3_Soft_F","A3_Soft_F_MRAP_01",
"A3_Soft_F_MRAP_02","A3_Soft_F_Offroad_01","A3_Soft_F_Quadbike","A3_Soft_F_MRAP_03","A3_Soft_F_Beta_Quadbike","A3_Soft_F_HEMTT","A3_Soft_F_TruckHeavy","A3_Soft_F_EPC_Truck_03","A3_Soft_F_Car","A3_Soft_F_Gamma_Offroad",
"A3_Soft_F_Gamma_Quadbike","A3_Soft_F_SUV","A3_Soft_F_Gamma_HEMTT","A3_Soft_F_Gamma_TruckHeavy","A3_Soft_F_Truck","A3_Structures_F_Wrecks","A3_Structures_F_EPA_Mil_Scrapyard","A3_Air_F_EPC_Plane_Fighter_03",
"A3_Armor_F_AMV","A3_Armor_F_Marid","A3_Armor_F_EPC_MBT_01","A3_Armor_F_APC_Wheeled_03","A3_CargoPoses_F","A3_Soft_F_Crusher_UGV","A3_Missions_F_Curator","A3_Data_F_Kart_ParticleEffects","A3_Language_F_Kart",
"A3_LanguageMissions_F_Kart","A3_Structures_F_Kart_Civ_SportsGrounds","A3_Structures_F_Kart_Mil_Flags","A3_Anims_F_Kart","A3_Structures_F_Kart_Signs_Companies","A3_UI_F_Kart",
"A3_Weapons_F_Kart_Pistols_Pistol_Signal_F","A3_Data_F_Kart","A3_Missions_F_Kart","A3_Modules_F_Kart","A3_Modules_F_Kart_TimeTrials","A3_Weapons_F_Kart","A3_Characters_F_Kart","A3_Soft_F_Kart_Kart_01",
"A3_Structures_F_Civ_Graffiti","A3_Structures_F_Civ_Kiosks","A3_Structures_F_Civ_Tourism","A3_Structures_F_Items_Medical","A3_Structures_F_Items_Military","A3_Structures_F_Naval_Fishing","A3_Structures_F_Signs_Companies","A3_Structures_F_Mil_Scrapyard",
"A3_Soft_F_Bootcamp_Truck","A3_Soft_F_Bootcamp_Quadbike","A3_Soft_F_Bootcamp_Offroad_01","A3_Weapons_F_Bootcamp","A3_Modules_F_Bootcamp_Misc","A3_Modules_F_Bootcamp","A3_Characters_F_Bootcamp_Common","A3_Weapons_F_Bootcamp_Ammoboxes","A3_UI_F_Bootcamp",
"A3_Characters_F_Bootcamp","A3_Weapons_F_Bootcamp_LongRangeRifles_M320","A3_Weapons_F_Bootcamp_LongRangeRifles_GM6","A3_Structures_F_Bootcamp_Items_Food","A3_Structures_F_Bootcamp_Items_Electronics","A3_Structures_F_Bootcamp_Civ_SportsGrounds",
"A3_Structures_F_Bootcamp_Civ_Camping","A3_Language_F_Bootcamp","A3_Functions_F_Bootcamp","A3_Structures_F_Bootcamp_VR_Helpers","A3_Structures_F_Bootcamp_VR_CoverObjects","A3_Structures_F_Bootcamp_VR_Blocks","A3_Structures_F_Bootcamp_Training",
"A3_Structures_F_Bootcamp_System","A3_Structures_F_Bootcamp_Items_Sport","A3_Structures_F_Bootcamp_Ind_Cargo","A3_Sounds_F_Bootcamp","A3_Data_F_Bootcamp","A3_Map_VR_Scenes","A3_Missions_F_Bootcamp","A3_Music_F_Bootcamp","Map_VR",
"cba_xeh","Extended_EventHandlers","CBA_Extended_EventHandlers","JSRS_Environment","WarFXPE","cba_common","cba_events","cba_hashes","cba_network","cba_strings","cba_ui","cba_vectors","JSRS2_120mm_Cannon","JSRS2_127","JSRS2_155mm_AMOS",
"JSRS2_230mm_Titan","JSRS2_30mm_Cannon","JSRS2_35mm_Autocannon","JSRS2_4Five45","JSRS2_ACPC","JSRS2_Autocannon","JSRS2_Bullethits","JSRS2_DAGR","JSRS2_DAR","JSRS2_EBR","JSRS2_Explosions","JSRS2_Explosives","JSRS2_Filters","JSRS2_FS2000",
"JSRS2_Gatling","JSRS2_GMG20","JSRS2_GMG40","JSRS2_Khaybar","JSRS2_LMGRCWS","JSRS2_M134","JSRS2_M200","JSRS2_M320R","JSRS2_M6","JSRS2_Minigun","JSRS2_MX","JSRS2_NLAW","JSRS2_P07","JSRS2_PDW","JSRS2_Rahim","JSRS2_Rook40","JSRS2_RPG32",
"JSRS2_Scorpian","JSRS2_SDAR","JSRS2_Skalpel_ATGM","JSRS2_Skyfire","JSRS2_Sonic_Cracks","JSRS2_Titan","JSRS2_TRG20","JSRS2_Vector","JSRS2_Veh_Titan","JSRS2_Zafir","JSRS2_Zubr45","Blastcore_VEP","cba_ai","cba_arrays","cba_diagnostic","cba_help",
"cba_ui_helper","cba_versioning","JSRS2_Movement","JSRS2_Silencers","cba_main","cba_main_a3","JSRS2_2S9_Sorcher","JSRS2_AFV4_Gorgon","JSRS2_AH99_Blackfoot","JSRS2_AH9_Pawnee","JSRS2_AMV7_Marshal","JSRS2_BTRK_Kamysh","JSRS2_CH49_Mohawk","JSRS2_Distance",
"JSRS2_FighterPlane3","JSRS2_FV720_Mora","JSRS2_Hunter","JSRS2_Ifrit","JSRS2_IFV6a_Cheetah","JSRS2_IFV6c_Panther","JSRS2_M2A1_Slammer","JSRS2_M4_Scorcher","JSRS2_M5_Sandstorm","JSRS2_MBT52_Kuma","JSRS2_Mi48_Kajman","JSRS2_MSE3_Marid","JSRS2_Offroad",
"JSRS2_Po30_Orca","JSRS2_Strider","JSRS2_SUV","JSRS2_T100_Varsuk","JSRS2_Truck1","JSRS2_Truck2","JSRS2_UAV_1","JSRS2_UH80_GhostHawk","JSRS2_Van","JSRS2_WY55_Hellcat","JSRS2_ZSU39_Tigris","cba_xeh_a3","JSRS2_Gau8","DragonFyre_Titan","JSRS2_CAS_Plane1",
"JSRS2_CAS_Plane2","cba_keybinding"];
_binConfigPatches = configFile >> "CfgPatches";
_patches = [];
for "_i" from 0 to count (_binConfigPatches)-1 do {
_patchEntry = _binConfigPatches select _i;
if (isClass _patchEntry) then {
if (!((configName _patchEntry) in _patchList)) then {
_patches pushBack (configName _patchEntry);
};
};
};
if (count _patches > 0) exitWith {
[format ["***ANTI-HACK***: %1:%2:%3 %4", "IllegalAddonPatch", profileName, getPlayerUID player, _patches]] call BWG_hackDetected;
};
private["_children","_allowedChildren"];
_children = [configFile >> "RscDisplayMPInterrupt" >> "controls",0] call BIS_fnc_returnChildren;
_allowedChildren = [
"Title","MissionTitle","DifficultyTitle","PlayersName","ButtonCancel","ButtonSAVE","ButtonSkip","ButtonRespawn","ButtonOptions",
"ButtonVideo","ButtonAudio","ButtonControls","ButtonGame","ButtonTutorialHints","ButtonAbort","DebugConsole","Feedback","MessageBox",
"CBA_CREDITS_CONT_C","CBA_CREDITS_M_P"
];
{
if (!((configName _x) in _allowedChildren)) exitWith {
[format ["***ANTI-HACK***: %1:%2:%3 (%4)", "DevconLikeExecutor", profileName, getPlayerUID player, configName _x]] call BWG_hackDetected;
};
} forEach _children;
{
_onLoad = getText(configFile >> (_x select 0) >> "onLoad");
_onUnload = getText(configFile >> (_x select 0) >> "onUnload");
if(_onLoad != (_x select 1) OR _onUnload != (_x select 2)) exitWith {
[format ["***ANTI-HACK***: %1:%2:%3 (%4)", "ModifiedDisplay", profileName, getPlayerUID player, _x select 0]] call BWG_hackDetected;
};
} forEach [
["RscDisplayGetReady","[""onLoad"",_this,""RscDiary"",'GUI'] call compile preprocessfilelinenumbers ""A3\ui_f\scripts\initDisplay.sqf""","[""onUnload"",_this,""RscDiary"",'GUI'] call compile preprocessfilelinenumbers ""A3\ui_f\scripts\initDisplay.sqf"""],
["RscDisplayInventory","[""onLoad"",_this,""RscDisplayInventory"",'IGUI'] call compile preprocessfilelinenumbers ""A3\ui_f\scripts\initDisplay.sqf""","[""onUnload"",_this,""RscDisplayInventory"",'IGUI'] call compile preprocessfilelinenumbers ""A3\ui_f\scripts\initDisplay.sqf"""],
["RscDisplayLoadMission","[""onLoad"",_this,""RscDisplayLoading"",'Loading'] call compile preprocessfilelinenumbers ""A3\ui_f\scripts\initDisplay.sqf""","[""onUnload"",_this,""RscDisplayLoading"",'Loading'] call compile preprocessfilelinenumbers ""A3\ui_f\scripts\initDisplay.sqf"""],
["RscDisplayInterrupt","[""onLoad"",_this,""RscDisplayInterrupt"",'GUI'] call compile preprocessfilelinenumbers ""A3\ui_f\scripts\initDisplay.sqf""","[""onUnload"",_this,""RscDisplayInterrupt"",'GUI'] call compile preprocessfilelinenumbers ""A3\ui_f\scripts\initDisplay.sqf"""],
["RscDisplayOptionsVideo","[""onLoad"",_this,""RscDisplayOptionsVideo"",'GUI'] call compile preprocessfilelinenumbers ""A3\ui_f\scripts\initDisplay.sqf""","[""onUnload"",_this,""RscDisplayOptionsVideo"",'GUI'] call compile preprocessfilelinenumbers ""A3\ui_f\scripts\initDisplay.sqf"""],
["RscDisplayOptions","[""onLoad"",_this,""RscDisplayOptions"",'GUI'] call compile preprocessfilelinenumbers ""A3\ui_f\scripts\initDisplay.sqf""","[""onUnload"",_this,""RscDisplayOptions"",'GUI'] call compile preprocessfilelinenumbers ""A3\ui_f\scripts\initDisplay.sqf"""]
];
[] spawn {
while {true} do {
sleep 2;
if (!isNull (findDisplay 30)) then {
closeDialog 0;
[format ["***ANTI-HACK***: %1:%2:%3", "MenuBasedHack:30", profileName, getPlayerUID player]] call BWG_hackDetected;
};
if (!isNull ((findDisplay 49) displayCtrl 0)) then {
closeDialog 0;
[format ["***ANTI-HACK***: %1:%2:%3", "MenuBasedHack:49", profileName, getPlayerUID player]] call BWG_hackDetected;
};
if (!isNull ((findDisplay 64) displayCtrl 101)) then {
closeDialog 0;
[format ["***ANTI-HACK***: %1:%2:%3", "MenuBasedHack:64", profileName, getPlayerUID player]] call BWG_hackDetected;
};
if (!isNull (findDisplay 125)) then {
closeDialog 0;
[format ["***ANTI-HACK***: %1:%2:%3", "MenuBasedHack:125", profileName, getPlayerUID player]] call BWG_hackDetected;
};
if (!isNull (findDisplay 129)) then {
closeDialog 0;
};
if (!isNull (findDisplay 148)) then {
sleep 0.5;
if ((lbSize 104)-1 > 3) then {
closeDialog 0;
[format ["***ANTI-HACK***: %1:%2:%3", "MenuBasedHack:148", profileName, getPlayerUID player]] call BWG_hackDetected;
};
};
if (!isNull (findDisplay 162)) then {
closeDialog 0;
[format ["***ANTI-HACK***: %1:%2:%3", "MenuBasedHack:162", profileName, getPlayerUID player]] call BWG_hackDetected;
};
if (!isNull (findDisplay 3030)) then {
closeDialog 0;
[format ["***ANTI-HACK***: %1:%2:%3", "MenuBasedHack:3030", profileName, getPlayerUID player]] call BWG_hackDetected;
};
if (!isNull (uiNamespace getVariable "RscDisplayRemoteMissions")) then {
closeDialog 0;
[format ["***ANTI-HACK***: %1:%2:%3", "MenuBasedHack:RscDisplayRemoteMissions", profileName, getPlayerUID player]] call BWG_hackDetected;
};
if (!isNull (uiNamespace getVariable "RscDisplayDebugPublic")) then {
closeDialog 0;
[format ["***ANTI-HACK***: %1:%2:%3", "MenuBasedHack:RscDisplayDebugPublic", profileName, getPlayerUID player]] call BWG_hackDetected;
};
if (!isNull (uiNamespace getVariable "RscDisplayArsenal")) then {
closeDialog 0;
[format ["***ANTI-HACK***: %1:%2:%3", "MenuBasedHack:RscDisplayArsenal", profileName, getPlayerUID player]] call BWG_hackDetected;
};
if (!isNull (uiNamespace getVariable "RscDisplayInsertMarker")) then {
sleep 0.6;
_action1 = buttonAction 1;
_action2 = buttonAction 2;
_title = ctrlText 1001;
if (_action1 != "" || _action2 != "" || _title != localize "$STR_A3_RscDisplayInsertMarker_Title") exitWith {
closeDialog 0;
[format ["***ANTI-HACK***: %1:%2:%3", "MenuBasedHack:RscDisplayInsertMarker", profileName, getPlayerUID player]] call BWG_hackDetected;
};
};
};
};
_commonPaths = ["used for hacking", "wuat\screen.sqf", "scripts\defaultmenu.sqf", "menu\initmenu.sqf", "scr\exec.sqf", "scripts\exec.sqf", "menu\exec.sqf",
"wuat\exec.sqf", "crinkly\keymenu.sqf", "scripts\ajmenu.sqf", "startup.sqf", "wookie_wuat\startup.sqf", "Wookie_Beta\exec.sqf", "Wookie\exec.sqf",
"Wookie\antiantihax.sqf", "Wookie_Beta\antiantihax.sqf", "@DevCon\DevCon.pbo", "addons\@DevCon\DevCon.pbo", "DevCon.pbo", "@DevCon\addons\DevCon.pbo",
"ShadowyFaze\exec.sqf", "monkified.sqf", "\wuat\screen.sqf", "\scripts\defaultmenu.sqf", "\menu\initmenu.sqf", "\scr\exec.sqf", "\scripts\exec.sqf",
"\menu\exec.sqf", "\wuat\exec.sqf", "\crinkly\keymenu.sqf", "\scripts\ajmenu.sqf", "\startup.sqf", "\wookie_wuat\startup.sqf", "\Wookie_Beta\exec.sqf",
"\Wookie\exec.sqf", "\Wookie\antiantihax.sqf", "\Wookie_Beta\antiantihax.sqf", "\@DevCon\DevCon.pbo", "\addons\@DevCon\DevCon.pbo", "\DevCon.pbo",
"\ShadowyFaze\exec.sqf", "\scripts\defaultmenu.sqf", "\menu\initmenu.sqf", "\scr\exec.sqf","crinkly\keymenu.sqf", "\menu\exec.sqf", "\wuat\exec.sqf",
"\crinkly\keymenu.sqf", "\scripts\ajmenu.sqf", "\startup.sqf", "\exec.sqf", "\wookie_wuat\startup.sqf","Wookie_Beta\exec.sqf", "\Wookie\exec.sqf",
"\Wookie\antiantihax.sqf", "\Wookie_Beta\antiantihax.sqf", "\@DevCon\DevCon.pbo", "\addons\@DevCon\DevCon.pbo", "\DevCon.pbo", "\shadowyFaze\exec.sqf",
"\monkified.sqf"
];
{
_contents = format ["", loadFile _x];
if (_contents != "") then {
[format ["***ANTI-HACK***: %1:%2:%3", "HackScript", profileName, getPlayerUID player]] call BWG_hackDetected;
};
} forEach _commonPaths;
[] spawn {
private ["_sleep", "_badVariables"];
_sleep = 60;
_badVariables = ["pic","veh","wuat_fpsMonitor","unitList","list_wrecked","p","fffffffffff","markPos","pos","marker","TentS","VL","MV",
"mk2","i","j","fuckmegrandma","mehatingjews","scode","TTT5OptionNR","igodokxtt","omgwtfbbq","namePlayer","thingtoattachto","HaxSmokeOn","v",
"antiloop","ARGT_JUMP","selecteditem","moptions","delaymenu","gluemenu","spawnweapons1","abcd","skinmenu","playericons","changebackpack","keymenu",
"img","surrmenu","footSpeedIndex","ctrl_onKeyDown","plrshldblcklst","musekeys","dontAddToTheArray","morphtoanimals","playerDistanceScreen","pm",
"debugConsoleIndex","MY_KEYDOWN_FNC","TAG_onKeyDown","changestats","helpmenu","unitsmenu","xZombieBait","shnmenu","slag","xtags","tempslag",
"dayzRespawn2","dayzRespawn3","hangender","addgun","ESP","BIS_fnc_3dCredits_n","ViLayer","maphalf","activeITEMlist","activeITEMlistanzahl","xyzaa",
"iBeFlying","rem","DAYZ_CA1_Lollipops","bowonky","HMDIR","HDIR","Monky_funcs_inited","atext","boost","Ug8YtyGyvguGF","inv","rspwn","nd","qofjqpofq",
"invall","initarr","reinit","byebyezombies","keymenu2","hotkeymenu","letmeknow","Listw","mahcaq","mapm","weapFun","firstrun","take1","dwarden","bowonky",
"bowen","monky","pic","god","toggle_keyEH","drawic","mk2","i","j","ptags","abox1","dayz_godmode","testIndex","g0d","g0dmode","zeus","zeusmode","cargod",
"qopfkqpofqk","monkytp","pbx","playershield","zombieDistanceScreen","theKeyControl","plrshldblckls","zombieshield","pathtoscrdir","footSpeedKeys","wl",
"spawnitems1","lmzsjgnas","vm","Monky_hax_toggled","pu","nb","vspeed","godlol","aesp","godall","initarr3","initarr2","DEV_ConsoleOpen","LOKI_GUI_Key_Color",
"W_O_O_K_I_E_FUD_Pro_RE","W_O_O_K_I_E_FUD_Car_RE","W_O_O_K_I_E_FUD_FuckUp_GunStore","W_O_O_K_I_E_FUD_M_E_N_U_initMenu",
"W_O_O_K_I_E_FuckUp_GunStore_a","W_O_O_K_I_E_M_E_N_U_funcs_inited","Menu_Init_Lol","W_O_O_K_I_E_Pro_RE","W_O_O_K_I_E_Debug_Mon","W_O_O_K_I_E_Debug_1337",
"Veh_S_P_A_W_N_Shitt","sfsefse","tw4etinitMenu","tw4etgetControl","efr4243234","sdfwesrfwesf233","sdgff4535hfgvcxghn","adadawer24_1337","lkjhgfuyhgfd",
"dayz_serverObjectMonitor","fsfgdggdzgfd","fsdddInfectLOL","Wookie_List","Wookie_Pro_RE","Wookie_Car_RE","Wookie_Debug_Mon","faze_funcs_inited",
"advertising_banner_infiSTAR","atext_star_xa","Monky_hax_dbclick","debug_star_colorful","AntiAntiAntiAntiHax","antiantiantiantih4x","hub","scrollinit",
"gfYJV","Lystic_LMAOOOOOOOOOOOOOOOOOOO","Lystic_Re","Lysto_Lyst","Menulocations","Lystic_Init","scroll_m_init_star","exstr1","pathtoscrdir3",
"Monky_initMenu","player_zombieCheck","abcdefGEH","wierdo","go_invisible_infiSTAR","serverObjectMonitor","enamearr","locdb","infAmmoIndex","nukeDONEstar",
"g00d_Metallica","tphigh_choice_infistar","tphigh_menu_Metallica_menu","E_X_T_A_S_Y_Atm","E_X_T_A_S_Y_M_E_N_U_funcs_inited","E_X_T_A_S_Y_Keybinds",
"E_X_T_A_S_Y_Recoil","FUCKTONIC","E_X_T_A_S_Y_FuckUp_GunStore_a","E_X_T_A_S_Y_Cash_1k_t","E_X_T_A_S_Y_Cash_a","E_X_T_A_S_Y_LicenseDrive",
"E_X_T_A_S_Y_Menu_LOOOOOOOOOL","FOXBYPASS","Dayz_GUI_R","dayz_originalPlayer","zeus_star","_infiSTAR","ppe","ppe2","willschabppe33",
"j___m___e____i_masterbate_to_bum_rape___hovering","j___m___e____i_masterbate_to_bum_rape___BelieveIcanFly","JJJJ_MMMM___EEEEEEE_LLYYSSTTIICCC_SHIT_RE_OLD",
"JJJJ_MMMM___EEEEEEE_INIT_MENU","JJJJ_MMMM___EEEEEEE_SPAWN_VEH","JJJJ_MMMM___EEEEEEE_SPAWN_WEAPON","JJJJ_MMMM___EEEEEEE_fly","JJJJ_MMMM___EEEEEEE_NoRecoil",
"JJJJ_MMMM___EEEEEEE_CLIP","JJJJ_MMMM___EEEEEEE_Invisable","JJJJ_MMMM___EEEEEEE_GiantCock","JJJJ_MMMM___EEEEEEE_JetBus","JJJJ_MMMM___EEEEEEE_BoxQuad",
"JJJJ_MMMM___EEEEEEE_SpawnCrate","JJJJ_MMMM___EEEEEEE_JJJJ_MMMM___EEEEEEE_to_Swastika","JJJJ_MMMM___EEEEEEE_Cash_1mill","JJJJ_MMMM___EEEEEEE_Cash_5mill",
"JJJJ_MMMM___EEEEEEE_Cash_1mill_t","JJJJ_MMMM___EEEEEEE_Cash_5mill_t","JJJJ_MMMM___EEEEEEE_LLYYSSTTIICCC_SHIT_RE","JJJJ_MMMM___EEEEEEE_JesusMode_t",
"JJJJ_MMMM___EEEEEEE_M_E_N_U_fill_All","JJJJ_MMMM___EEEEEEE_M_E_N_U_initMenu","JJJJ_MMMM___EEEEEEE_OPTIONS","JJJJ_MMMM___EEEEEEE_PLAYERLOL",
"JxMxE_hide","JME_Keybinds","JME_has_yet_to_fuck_this_shit","JME_deleteC","JME_Tele","JME_ANAL_PLOW","JME_M_E_N_U_initMenu","JME_M_E_N_U_hax_toggled",
"JxMxE_Veh_M","JxMxE_LifeCash500k","JME_KillCursor","JME_OPTIONS","JME_M_E_N_U_fill_TROLLmenu","ASSPLUNGE","POLICE_IN_HELICOPTA","JxMxE_EBRP",
"JxMxEsp","JxMxE_GOD","JxMxE_Heal","JxMxE_TP","JxMxE_Infect","JxMxE_secret","Metallica_vehicleg0dv3_infiSTAR","JJJJ_MMMM___EEEEEEE_GAPER",
"JJJJ_MMMM___EEEEEEE_SMOKExWEEDxEVERYDAY_BUM_RAPE","JJJJ_MMMM___EEEEEEE_M_E_N_U_fill_Target","E3p","Jesus_MODE","MissileStrike","AL_Liscenses","NoIllegal",
"NoWeight","m0nkyaatp_sadksadxa","m0nkyaatp_RANDSTR","myvar23","player_adminlevel","TNK","I_like_turtles","BIGM",
"Does_Tonic_Like_to_take_Turtle_penis_in_the_ass_LODESTARS","Does_Tonic_Like_to_take_Turtle_penis_in_the_ass_LODESTAR1","GMod",
"No_No_No_Tonic_likes_A_Big_Fat_Sheep_Cock_Right_in_the_bum_G0d_Mode","Sload","T3le","life_no_injection","Tonic_has_a_gaping_vagina","my_anus_hurtz","aKFerm",
"aKMMenu","aKTitans","aKLikeaG0d","riasgremory_G0d_Mode","aKCarG0d","riasgremory_Car_Jesus","aKE5p","riasgremory_isseilol","aKPMark","riasgremory_Noobs",
"riasgremory_Bitches","riasgremory_Map_Markers","aKUnMmo","jenesuispasuncheateur_unamo","aKVoit","Loljesaispasquoiecriremdr","isseigremory","gremorysama",
"aKTaCu","aKCardetroy","aKGetKey","aKKillcursor","aKNoEscort","aKEscort","aKtroll","aKTPall","aKUnrestrain","aKNoEscortMe","aKNoTaze","aKJailplayer",
"aKLisense","riasgremory_titans_shit_reold","Tonic_merde","jaimepaslepoisin_HLEAL","TTTT_IIII___TTTTTTT_RAP_FR","TTTT_IIII___TTTTTTT_REPGA",
"TTTT_IIII___TTTTTTT_REPGAs","Root_Main4","Root_Pistol4","Root_Rifle4","Root_Machinegun4","Root_Sniper4","Root_Launcher4","Root_Attachement4"
];
while {true} do {
{
_var = missionNamespace getVariable _x;
if (!isNil "_var") exitWith {
missionNamespace setVariable [_x, nil];
[format ["***ANTI-HACK***: %1:%2:%3 (%4)", "HackVariable", profileName, getPlayerUID player, _x]] call BWG_hackDetected;
};
} forEach _this;
sleep _sleep;
};
};
[] spawn {
waitUntil {sleep 5; unitRecoilCoefficient player < 1} exitWith {
[format ["***ANTI-HACK***: %1:%2:%3", "NoRecoilHack", profileName, getPlayerUID player]] call BWG_hackDetected;
};
};
[] spawn {
private ["_cash,_atm"];
_cash = life_cash;
_atm = life_atmcash;
while {true} do {
waitUntil {life_cash != _cash || life_atmcash != _atm};
sleep 2;
if (life_random_variable) then {
_cash = life_cash;
_atm = life_atmcash;
life_random_variable = false;
[[getPlayerUid player, playerSide, life_cash, life_atmcash], "life_fnc_updateMoney", false, false] spawn BIS_fnc_MP;
} else {
titleText ["You were caught using money injection. Enjoy your ban! Your Blackwing Admins.", "BLACK OUT"];
_msg = format ["***ANTI-HACK***: %1 (%2): Money Injection (Cash: %3|%4; ATM: %5|%6)", profileName, getPlayerUID player, _cash, life_cash, _atm, life_atmcash];
life_cash = _cash;
life_atmcash = _atm;
[_msg] call BWG_hackDetected;
};
};
};
if (isNil {life_adminlevel}) then { life_adminlevel = 0; };
[] spawn {
while {true} do {
_donator = life_donator;
_admin = life_adminlevel;
sleep 5;
if (life_donator != _donator || life_adminlevel != _admin) then {
[format ["***ANTI-HACK***: %1:%2:%3", "AdminDonatorLevelChange", profileName, getPlayerUID player]] call BWG_hackDetected;
};
};
};
if (life_adminlevel < 1) then {
[] spawn {
private ["_new","_old","_kick"];
_old = getPos player;
_kick = false;
while {true} do {
sleep (5*60);
_new = getPos player;
if ((_new select 0 == _old select 0) && (_new select 1 == _old select 1)) then {
if (_kick) then {
BWG_KICK_ME = true;
publicVariableServer "BWG_KICK_ME";
endMission "Loser";
} else {
_kick = true;
hint "You will be kicked in 5 minutes for being AFK.";
};
} else {
_kick = false;
};
_old = _new;
};
};
};


+ there BEFilters