Miete dir jetzt deinen eigenen prepaid ArmA Server auf nitrado.net
Nach einem Update von ArmA 3 ist die Aktualisierung von SpyGlass notwendig. SpyGlass ist ein Anti-Cheat-Modul fĂŒr die Modifikation âAltis Lifeâ.
Folgende Schritte sind fĂŒr die Aktualisierung notwendig:
#define GVAR_UINS uiNamespace getVariable #define CONST(var1,var2) var1 = compileFinal (if(typeName var2 == âSTRINGâ) then {var2} else {str(var2)}) #define steamid getPlayerUID player #define SPY âspy_logâ /bin /boot /dev /etc /home /lib /lib64 /lost+found /media /mnt /opt /proc /root /run /sbin /srv /sys /tmp /usr /var File: fn_initSpy.sqf Description: Does some things that I made over-complicated / un-needed but blah. Will eventually include server-side checks but itâs blah at this point. Will also become a standalone system which is why itâs setup like this. en-dev/ output/ private[â_binConfigPatchesâ,â_cfgPatchesâ,â_endMâ]; if(isServer && !hasInterface) exitWith {}; //Server doesnât need to know. CONST(W_O_O_K_I_E_ANTI_ANTI_HAX,âfalseâ); CONST(W_O_O_K_I_E_FUD_ANTI_ANTI_HAX,âfalseâ); CONST(E_X_T_A_S_Y_ANTI_ANTI_HAX,âfalseâ); CONST(E_X_T_A_S_Y_Pro_RE,âfalseâ); CONST(E_X_T_A_S_Y_Car_RE,âfalseâ); CONST(DO_NUKE,âfalseâ); CONST(JxMxE_spunkveh,âfalseâ); CONST(JxMxE_spunkveh2,âfalseâ); CONST(JxMxE_spunkair,âfalseâ); CONST(JJJJ_MMMM___EEEEEEE_LLYYSSTTIICCC_SHIT_RE,âfalseâ); CONST(JJJJ_MMMM___EEEEEEE_LLYYSSTTIICCC_SHIT_RE_OLD,âfalseâ); CONST(JJJJ_MMMM___EEEEEEE_SPAWN_VEH,âfalseâ); CONST(JJJJ_MMMM___EEEEEEE_SPAWN_WEAPON,âfalseâ); /bin /boot /dev /etc /home /lib /lib64 /lost+found /media /mnt /opt /proc /root /run /sbin /srv /sys /tmp /usr /var Compile our list of allowed addon patches, by default this DOES NOT ALLOW ANY ADDONS. If you want to white-list addons such as JSRS or Blastcore you need to start a test instance (Host locally and not the mission) and first fill the SPY_cfg_patchList array, once you executed it (Filled it) Run the following code and it will copy the list of addons / patches not in the list to your clipboard (Ctrl + V) and then add it to the array. _cfgPatches = []; _binConfigPatches = configFile >> âCfgPatchesâ; for â_iâ from 0 to count (_binConfigPatches)-1 do { _patchEntry = _binConfigPatches select _i; if(isClass _patchEntry) then { if(!((configName _patchEntry) in SPY_cfg_patchList)) then { _cfgPatches set[count _cfgPatches,(configName _patchEntry)]; }; }; }; copyToClipboard str(_cfgPatches); i.e [â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âł] en-dev/ output/ _patchList = [âlife_serverâ,âCADataâ,â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â,âA3Dataâ, âA3_Data_F_Hookâ,âA3_Air_F_RTDâ,âA3_Functions_F_Heliâ,âA3_Language_F_Heliâ,âA3_Modules_F_Heliâ,âA3_Modules_F_Heli_SpawnAiâ, âA3_Music_F_Heliâ,âA3_Structures_F_Heli_Civ_Accessoriesâ,âA3_Structures_F_Heli_Civ_Constructionsâ,âA3_Structures_F_Heli_Civ_Garbageâ, âA3_Structures_F_Heli_Civ_Marketâ,âA3_Structures_F_Heli_Furnitureâ,âA3_Structures_F_Heli_Ind_AirPortâ,âA3_Structures_F_Heli_Ind_Cargoâ, âA3_Structures_F_Heli_Ind_Machinesâ,âA3_Structures_F_Heli_Items_Airportâ,âA3_Structures_F_Heli_Items_Luggageâ,âA3_Structures_F_Heli_Items_Sportâ, âA3_Structures_F_Heli_Items_Toolsâ,âA3_Structures_F_Heli_VR_Helpersâ,âA3_Structures_F_Heli_Items_Electronicsâ,âA3_Structures_F_Heli_Items_Foodâ, âA3_Anims_F_Heliâ,âA3_Supplies_F_Heliâ,âA3_Supplies_F_Heli_Bladdersâ,âA3_Supplies_F_Heli_CargoNetsâ,âA3_Supplies_F_Heli_Fuelâ,âA3_Supplies_F_Heli_Slingloadâ, âA3_Air_F_RTDâ,âA3_Boat_F_Heli_Boat_Armed_01âł,âA3_Boat_F_Heli_SDV_01âł,âA3_Data_F_Heliâ,âA3_Missions_F_Heliâ,âA3_Soft_F_Heli_Carâ, âA3_Soft_F_Heli_MRAP_01âł,âA3_Air_F_Heli_Heli_Transport_04âł,âA3_Soft_F_Heli_MRAP_02âł,âA3_Soft_F_Heli_MRAP_03âł,âA3_Soft_F_Heli_Quadbikeâ,âA3_Soft_F_Heli_SUVâ, âA3_Soft_F_Heli_Truckâ,âA3_UI_F_Heliâ,âA3_Air_F_Heliâ,âA3_Air_F_Heli_Heli_Attack_01âł,âA3_Air_F_Heli_Heli_Attack_02âł,âA3_Air_F_Heli_Heli_Light_01âł,âA3_Air_F_Heli_Heli_Light_02âł,âA3_Air_F_Heli_Heli_Light_03âł, âA3_Air_F_Heli_Heli_Transport_01âł,âA3_Air_F_Heli_Heli_Transport_02âł,âA3_Air_F_Heli_Heli_Transport_03âł,âA3_Air_F_Heli_Heli_Transport_04â, âA3_CargoPoses_F_Heliâ,âA3_Soft_F_Heli_Crusher_UGVâ,âA3_LanguageMissions_F_MP_Markâ,âA3_Language_F_MP_Markâ,âA3_LanguageMissions_F_MP_Markâ,âA3_Data_F_Markâ, âA3_Functions_F_Markâ,âA3_Functions_F_MP_Markâ,âA3_Language_F_Markâ,âA3_Modules_F_Markâ,âA3_Modules_F_Mark_FiringDrillsâ, âA3_Modules_F_MP_Markâ,âA3_Modules_F_Mark_Objectivesâ,âA3_Music_F_Markâ,âA3_Structures_F_Mark_Items_Militaryâ, âA3_Structures_F_Mark_Items_Sportâ,âA3_Structures_F_Mark_Mil_Flagsâ,âA3_Structures_F_Mark_Trainingâ, âA3_Structures_F_Mark_VR_Helpersâ,âA3_Structures_F_Mark_VR_Shapesâ,âA3_Structures_F_Mark_VR_Targetsâ, âA3_Anims_F_Mark_Deploymentâ,âA3_UI_F_Markâ,âA3_UI_F_MP_Markâ,âA3_Weapons_F_Mark_LongRangeRifles_DMR_01âł, âA3_Weapons_F_Mark_EBRâ,âA3_Weapons_F_Mark_LongRangeRifles_GM6âł,âA3_Weapons_F_Mark_LongRangeRifles_GM6_camoâ, âA3_Weapons_F_Mark_LongRangeRifles_M320âł,âA3_Weapons_F_Mark_LongRangeRifles_M320_camoâ,âA3_Weapons_F_Mark_Machineguns_M200âł, âA3_Weapons_F_Mark_Machineguns_Zafirâ,âA3_Weapons_F_Mark_Rifles_Khaybarâ,âA3_Weapons_F_Mark_Rifles_Mk20âł,âA3_Weapons_F_Mark_Rifles_MXâ, âA3_Weapons_F_Mark_Rifles_SDARâ,âA3_Weapons_F_Mark_Rifles_TRG20âł,âA3_Characters_F_Markâ,âA3_Static_F_Mark_Designator_01âł, âA3_Static_F_Mark_Designator_02âł,âA3_Supplies_F_Markâ,âA3_Weapons_F_Mark_Accâ,âA3_Missions_F_Markâ,âA3_Missions_F_MP_Markâ, âA3_Weapons_F_Markâ,âA3_Weapons_F_Mark_LongRangeRifles_DMR_02âł,âA3_Weapons_F_Mark_LongRangeRifles_DMR_03âł,âA3_Weapons_F_Mark_LongRangeRifles_DMR_04âł, âA3_Weapons_F_Mark_LongRangeRifles_DMR_05âł,âA3_Weapons_F_Mark_LongRangeRifles_DMR_06âł,âA3_Weapons_F_Mark_Machineguns_MMG_01â, âA3_Weapons_F_Mark_Machineguns_MMG_02âł,âA3_Weapons_F_Mark_LongRangeRifles_DMR_05âł,âA3_Weapons_F_Mark_LongRangeRifles_DMR_06âł,âA3_Weapons_F_Mark_Machineguns_MMG_01âł,âA3_Weapons_F_Mark_Machineguns_MMG_02âł,â3Denâ ]; uiNamespace setVariable[âRscDisplayRemoteMissionsâ,displayNull]; //For Spy-Glass.. uiNamespace setVariable[âRscDisplayMultiplayerâ,displayNull]; _binConfigPatches = configFile >> âCfgPatchesâ; for â_iâ from 0 to count (_binConfigPatches)-1 do { _patchEntry = _binConfigPatches select _i; if(isClass _patchEntry) then { if(!((configName _patchEntry) in _patchList)) exitWith { [[profileName,steamid,(configName _patchEntry)],âSPY_fnc_cookieJarâ,false,false] spawn life_fnc_MP; [[profileName,format[âUnknown Addon Patch: %1âł,(configName _patchEntry)]],âSPY_fnc_notifyAdminsâ,true,false] spawn life_fnc_MP; [[SPY,[(format[âUnknown Addon Patch: %1âł,(configName _patchEntry)])],profileName,steamid],âTON_fnc_logItâ,false,false] call life_fnc_MP; sleep 0.5; failMission âSpyGlassâ; }; }; }; //Check for copy-pasters of Dev-Con styled execution. //Because I am nice, add these to the following below to allow CBA; âCBA_CREDITS_CONT_Câ,âCBA_CREDITS_M_P private[â_childrenâ,â_allowedChildrenâ]; _children = [configFile >> âRscDisplayMPInterruptâ >> âcontrolsâ,0] call BIS_fnc_returnChildren; _allowedChildren = [ âTitleâ,âMissionTitleâ,âPlayersNameâ,âButtonCancelâ,âButtonSAVEâ,âButtonSkipâ,âButtonRespawnâ,âButtonOptionsâ, âButtonVideoâ,âButtonAudioâ,âButtonControlsâ,âButtonGameâ,âButtonTutorialHintsâ,âButtonAbortâ,âDebugConsoleâ, âVersionâ,âTraffLightâ,âFeedbackâ,âMessageBoxâ ]; { if(!((configName _x) in _allowedChildren)) exitWith { [[profileName,steamid,âModified_MPInterruptâ],âSPY_fnc_cookieJarâ,false,false] spawn life_fnc_MP; [[profileName,âDevcon like executor detectedâ],âSPY_fnc_notifyAdminsâ,true,false] spawn life_fnc_MP; [[SPY,[âDevcon like executor detectedâ],profileName,steamid],âTON_fnc_logItâ,false,false] call life_fnc_MP; sleep 0.5; failMission âSpyGlassâ; }; } foreach _children; /bin /boot /dev /etc /home /lib /lib64 /lost+found /media /mnt /opt /proc /root /run /sbin /srv /sys /tmp /usr /var Display Validator Loops through and makes sure none of the displays were modified.. TODO: Run check every x minutes and validate all displays. en-dev/ output/ { _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 { [[profileName,steamid,format[âModified_Method_%1âł,_x select 0]],âSPY_fnc_cookieJarâ,false,false] call life_fnc_MP; [[profileName,format[âModified Display Method %1 (Memory Edit)â,_x select 0]],âSPY_fnc_notifyAdminsâ,true,false] call life_fnc_MP; [[SPY,[(format[âModified Display Method %1 (Memory Edit)â,_x select 0])],profileName,steamid],âTON_fnc_logItâ,false,false] call life_fnc_MP; sleep 0.5; vehicle player setVelocity[1e10,1e14,1e18]; //Itâs a surprise. sleep 3; preProcessFile âSpyGlassendoftheline.sqfâ; sleep 2.5; failMission âSpyGlassâ; }; } foreach [ [âRscDisplayMainMapâ,â[ââonLoadââ,_this,ââRscDiaryââ,âMpMarkDisplaysâ] call (uinamespace getvariable âBIS_fnc_initDisplayâ)â,â[ââonUnloadââ,_this,ââRscDiaryââ,âMpMarkDisplaysâ] call (uinamespace getvariable âBIS_fnc_initDisplayâ)â], [âRscDisplayGetReadyâ,â[ââonLoadââ,_this,ââRscDiaryââ,âMpMarkDisplaysâ] call (uinamespace getvariable âBIS_fnc_initDisplayâ)â,â[ââonUnloadââ,_this,ââRscDiaryââ,âMpMarkDisplaysâ] call (uinamespace getvariable âBIS_fnc_initDisplayâ)â], [âRscDisplayInventoryâ,â[ââonLoadââ,_this,ââRscDisplayInventoryââ,âIGUIâ] call (uinamespace getvariable âBIS_fnc_initDisplayâ)â,â[ââonUnloadââ,_this,ââRscDisplayInventoryââ,âIGUIâ] call (uinamespace getvariable âBIS_fnc_initDisplayâ)â], [âRscDisplayLoadMissionâ,â[ââonLoadââ,_this,ââRscDisplayLoadingââ,âLoadingâ] call (uinamespace getvariable âBIS_fnc_initDisplayâ)â,â[ââonUnloadââ,_this,ââRscDisplayLoadingââ,âLoadingâ] call (uinamespace getvariable âBIS_fnc_initDisplayâ)â], [âRscDisplayInterruptâ,â[ââonLoadââ,_this,ââRscDisplayInterruptââ,âGUIâ] call (uinamespace getvariable âBIS_fnc_initDisplayâ)â,â[ââonUnloadââ,_this,ââRscDisplayInterruptââ,âGUIâ] call (uinamespace getvariable âBIS_fnc_initDisplayâ)â], [âRscDisplayOptionsVideoâ,â[ââonLoadââ,_this,ââRscDisplayOptionsVideoââ,âGUIâ] call (uinamespace getvariable âBIS_fnc_initDisplayâ)â,â[ââonUnloadââ,_this,ââRscDisplayOptionsVideoââ,âGUIâ] call (uinamespace getvariable âBIS_fnc_initDisplayâ)â], [âRscDisplayOptionsâ,â[ââonLoadââ,_this,ââRscDisplayOptionsââ,âGUIâ] call (uinamespace getvariable âBIS_fnc_initDisplayâ)â,â[ââonUnloadââ,_this,ââRscDisplayOptionsââ,âGUIâ] call (uinamespace getvariable âBIS_fnc_initDisplayâ)â], [âRscDisplayAVTerminalâ,â[ââonLoadââ,_this,ââRscDisplayAVTerminalââ,âIGUIâ] call (uinamespace getvariable âBIS_fnc_initDisplayâ)â,â[ââonUnloadââ,_this,ââRscDisplayAVTerminalââ,âIGUIâ] call (uinamespace getvariable âBIS_fnc_initDisplayâ)â], [âRscDisplayConfigureActionâ,â[ââonLoadââ,_this,ââRscDisplayConfigureActionââ,âGUIâ] call (uinamespace getvariable âBIS_fnc_initDisplayâ)â,â[ââonUnloadââ,_this,ââRscDisplayConfigureActionââ,âGUIâ] call (uinamespace getvariable âBIS_fnc_initDisplayâ)â], [âRscDisplayConfigureControllersâ,â[ââonLoadââ,_this,ââRscDisplayConfigureControllersââ,âGUIâ] call (uinamespace getvariable âBIS_fnc_initDisplayâ)â,â[ââonUnloadââ,_this,ââRscDisplayConfigureControllersââ,âGUIâ] call (uinamespace getvariable âBIS_fnc_initDisplayâ)â], [âRscDisplayControlSchemesâ,â[ââonLoadââ,_this,ââRscDisplayControlSchemesââ,âGUIâ] call (uinamespace getvariable âBIS_fnc_initDisplayâ)â,â[ââonUnloadââ,_this,ââRscDisplayControlSchemesââ,âGUIâ] call (uinamespace getvariable âBIS_fnc_initDisplayâ)â], [âRscDisplayCustomizeControllerâ,â[ââonLoadââ,_this,ââRscDisplayCustomizeControllerââ,âGUIâ] call (uinamespace getvariable âBIS_fnc_initDisplayâ)â,â[ââonUnloadââ,_this,ââRscDisplayCustomizeControllerââ,âGUIâ] call (uinamespace getvariable âBIS_fnc_initDisplayâ)â], [âRscDisplayDebriefingâ,â[ââonLoadââ,_this,ââRscDisplayDebriefingââ,âGUIâ] call (uinamespace getvariable âBIS_fnc_initDisplayâ)â,â[ââonUnloadââ,_this,ââRscDisplayDebriefingââ,âGUIâ] call (uinamespace getvariable âBIS_fnc_initDisplayâ)â], [âRscDisplayDiaryâ,â[ââonLoadââ,_this,ââRscDiaryââ,âMpMarkDisplaysâ] call (uinamespace getvariable âBIS_fnc_initDisplayâ)â,â[ââonUnloadââ,_this,ââRscDiaryââ,âMpMarkDisplaysâ] call (uinamespace getvariable âBIS_fnc_initDisplayâ)â], [âRscDisplayGameOptionsâ,â[ââonLoadââ,_this,ââRscDisplayGameOptionsââ,âGUIâ] call (uinamespace getvariable âBIS_fnc_initDisplayâ)â,â[ââonUnloadââ,_this,ââRscDisplayGameOptionsââ,âGUIâ] call (uinamespace getvariable âBIS_fnc_initDisplayâ)â], [âRscDisplayJoystickSchemesâ,â[ââonLoadââ,_this,ââRscDisplayJoystickSchemesââ,âGUIâ] call (uinamespace getvariable âBIS_fnc_initDisplayâ)â,â[ââonUnloadââ,_this,ââRscDisplayJoystickSchemesââ,âGUIâ] call (uinamespace getvariable âBIS_fnc_initDisplayâ)â], [âRscDisplayLoadingâ,â[ââonLoadââ,_this,ââRscDisplayLoadingââ,âLoadingâ] call (uinamespace getvariable âBIS_fnc_initDisplayâ)â,â[ââonUnloadââ,_this,ââRscDisplayLoadingââ,âLoadingâ] call (uinamespace getvariable âBIS_fnc_initDisplayâ)â], [âRscDisplayMicSensitivityOptionsâ,â[ââonLoadââ,_this,ââRscDisplayMicSensitivityOptionsââ,âGUIâ] call (uinamespace getvariable âBIS_fnc_initDisplayâ)â,â[ââonUnloadââ,_this,ââRscDisplayMicSensitivityOptionsââ,âGUIâ] call (uinamespace getvariable âBIS_fnc_initDisplayâ)â], [âRscDisplayOptionsAudioâ,â[ââonLoadââ,_this,ââRscDisplayOptionsAudioââ,âGUIâ] call (uinamespace getvariable âBIS_fnc_initDisplayâ)â,â[ââonUnloadââ,_this,ââRscDisplayOptionsAudioââ,âGUIâ] call (uinamespace getvariable âBIS_fnc_initDisplayâ)â], [âRscDisplayOptionsLayoutâ,â[ââonLoadââ,_this,ââRscDisplayOptionsLayoutââ,âGUIâ] call (uinamespace getvariable âBIS_fnc_initDisplayâ)â,â[ââonUnloadââ,_this,ââRscDisplayOptionsLayoutââ,âGUIâ] call (uinamespace getvariable âBIS_fnc_initDisplayâ)â], [âRscDisplayStartâ,â[2] call compile preprocessfilelinenumbers gettext (configfile >> âCfgFunctionsâ >> âinitâ); [âonLoadâ,_this,âRscDisplayLoadingâ,âLoadingâ] call (uinamespace getvariable âBIS_fnc_initDisplayâ)â,â[ââonUnloadââ,_this,ââRscDisplayLoadingââ,âLoadingâ] call (uinamespace getvariable âBIS_fnc_initDisplayâ)â], [âRscDisplayInsertMarkerâ,â[ââonLoadââ,_this,ââRscDisplayInsertMarkerââ,âGUIâ] call (uinamespace getvariable âBIS_fnc_initDisplayâ)â,â[ââonUnloadââ,_this,ââRscDisplayInsertMarkerââ,âGUIâ] call (uinamespace getvariable âBIS_fnc_initDisplayâ)â] ]; /bin /boot /dev /etc /home /lib /lib64 /lost+found /media /mnt /opt /proc /root /run /sbin /srv /sys /tmp /usr /var Forgot to include this but this is also also a popular method for âunreleasedâ stuff en-dev/ output/ if(getText(configFile >> âCfgFunctionsâ >> âinitâ) != âA3functions_finitFunctions.sqfâ) then { [[profileName,steamid,âModified_Functions_Initâ],âSPY_fnc_cookieJarâ,false,false] call life_fnc_MP; [[profileName,âModified_Functions_Initâ],âSPY_fnc_notifyAdminsâ,true,false] call life_fnc_MP; [[SPY,[âModified_Functions_Initâ],profileName,steamid],âTON_fnc_logItâ,false,false] call life_fnc_MP; sleep 0.5; vehicle player setVelocity[1e10,1e14,1e18]; //Itâs a surprise. sleep 3; preProcessFile âSpyGlassendoftheline.sqfâ; sleep 2.5; failMission âSpyGlassâ; }; [] execVM âSpyGlassfn_cmdMenuCheck.sqfâ; [] execVM âSpyGlassfn_variableCheck.sqfâ; [] execVM âSpyGlassfn_menuCheck.sqfâ;</spoiler>
Quelle: https://github.com/TheTotenkopf/SealDrop-AltisLife-Script-Pack/commit/f7293225598e3ef9af1e0dfb54af2a5bfe737c0a (nicht mehr verfĂŒgbar)