Fuchs Posted February 11, 2014 Author Report Share Posted February 11, 2014 Link to comment Share on other sites More sharing options...
bronwaterg Posted February 12, 2014 Report Share Posted February 12, 2014 hellow i tried to put this on my server i used ems 0.2.6 i get stuck on the last loading screen i can hear the sound from ingame but stuck ont he loader this is my init that is located in /mine ip/MPMissions/DayZ_Epoch_11.Chernarus /* For DayZ Epoch Addons Credits: Jetski Yanahui by Kol9yN, Zakat, Gerasimow9, YuraPetrov, zGuba, A.Karagod, IceBreakr, Sahbazz */ startLoadingScreen ["","RscDisplayLoadCustom"]; cutText ["","BLACK OUT"]; enableSaving [false, false]; //REALLY IMPORTANT VALUES dayZ_instance = 11; //The instance dayzHiveRequest = []; initialized = false; dayz_previousID = 0; //disable greeting menu player setVariable ["BIS_noCoreConversations", true]; //disable radio messages to be heard and shown in the left lower corner of the screen enableRadio false; // May prevent "how are you civillian?" messages from NPC enableSentences false; // DayZ Epoch config spawnShoremode = 1; // Default = 1 (on shore) spawnArea= 1500; // Default = 1500 MaxVehicleLimit = 300; // Default = 50 MaxDynamicDebris = 500; // Default = 100 dayz_MapArea = 14000; // Default = 10000 dayz_maxLocalZombies = 30; // Default = 30 dayz_paraSpawn = false; dayz_minpos = -1; dayz_maxpos = 16000; dayz_sellDistance_vehicle = 10; dayz_sellDistance_boat = 30; dayz_sellDistance_air = 40; dayz_maxAnimals = 5; // Default: 8 dayz_tameDogs = true; DynamicVehicleDamageLow = 0; // Default: 0 DynamicVehicleDamageHigh = 100; // Default: 100 DZE_BuildOnRoads = false; // Default: False EpochEvents = [["any","any","any","any",30,"crash_spawner"],["any","any","any","any",0,"crash_spawner"],["any","any","any","any",15,"supply_drop"]]; dayz_fullMoonNights = true; //Load in compiled functions call compile preprocessFileLineNumbers "\z\addons\dayz_code\init\variables.sqf"; //Initilize the Variables (IMPORTANT: Must happen very early) progressLoadingScreen 0.1; call compile preprocessFileLineNumbers "\z\addons\dayz_code\init\publicEH.sqf"; //Initilize the publicVariable event handlers progressLoadingScreen 0.2; call compile preprocessFileLineNumbers "\z\addons\dayz_code\medical\setup_functions_med.sqf"; //Functions used by CLIENT for medical progressLoadingScreen 0.4; call compile preprocessFileLineNumbers "\z\addons\dayz_code\init\compiles.sqf"; //Compile regular functions progressLoadingScreen 0.5; call compile preprocessFileLineNumbers "server_traders.sqf"; //Compile trader configs progressLoadingScreen 1.0; "filmic" setToneMappingParams [0.153, 0.357, 0.231, 0.1573, 0.011, 3.750, 6, 4]; setToneMapping "Filmic"; if (isServer) then { call compile preprocessFileLineNumbers "\z\addons\dayz_server\missions\DayZ_Epoch_11.Chernarus\dynamic_vehicle.sqf"; //Compile vehicle configs // Add trader citys _nil = [] execVM "\z\addons\dayz_server\missions\DayZ_Epoch_11.Chernarus\mission.sqf"; _serverMonitor = [] execVM "\z\addons\dayz_code\system\server_monitor.sqf"; }; if (!isDedicated) then { //Conduct map operations 0 fadeSound 0; waitUntil {!isNil "dayz_loadScreenMsg"}; dayz_loadScreenMsg = (localize "STR_AUTHENTICATING"); //Run the player monitor _id = player addEventHandler ["Respawn", {_id = [] spawn player_death;}]; _playerMonitor = [] execVM "\z\addons\dayz_code\system\player_monitor.sqf"; //anti Hack //Lights //[21,04,false,true,false,50,200,300,[0.698, 0.556, 0.419],"Generator_DZ",0.1] execVM "\z\addons\dayz_code\compile\local_lights_init.sqf"; // Mission System Markers If (!isnil ("Ccoords")) then { [] execVM "debug\addmarkers.sqf"; }; If (!isnil ("MCoords")) then { [] execVM "debug\addmarkers75.sqf"; }; //Start Dynamic Weather execVM "\z\addons\dayz_code\external\DynamicWeatherEffects.sqf"; #include "\z\addons\dayz_code\system\BIS_Effects\init.sqf" dayz_antihack = 0; // DayZ Antihack / 1 = enabled // 0 = disabled dayz_REsec = 0; // DayZ RE Security / 1 = enabled // 0 = disabled this is my server_cleanup.fsm /*%FSM<COMPILE "D:\Programme\Bohemia Interactive\Tools\FSM Editor Personal Edition\scriptedFSM.cfg, DayZ Server Cleanup">*/ /*%FSM<HEAD>*/ /* item0[] = {"init",0,250,-25.000000,-350.000000,75.000000,-300.000000,0.000000,"init"}; item1[] = {"prepare",2,250,375.000000,-350.000000,475.000000,-300.000000,0.000000,"prepare"}; item2[] = {"initialized",4,218,175.000000,-350.000000,275.000000,-300.000000,0.000000,"initialized"}; item3[] = {"true",8,218,375.000000,-275.000000,475.000000,-225.000000,0.000000,"true"}; item4[] = {"waiting",2,250,375.000000,-200.000000,475.000000,-150.000000,0.000000,"waiting"}; item5[] = {"true",8,218,375.000000,75.000000,475.000000,125.000000,0.000000,"true"}; item6[] = {"general_cleanup",2,250,375.000000,150.000000,475.000000,200.000000,0.000000,"general" \n "cleanup" \n "loop"}; item7[] = {"",7,210,21.000000,170.999985,29.000000,179.000000,0.000000,""}; item8[] = {"",7,210,21.000004,-254.000000,28.999998,-246.000000,0.000000,""}; item9[] = {"",7,210,821.000000,-179.000000,829.000000,-171.000000,0.000000,""}; item10[] = {"",7,210,821.000000,96.000000,829.000000,104.000000,0.000000,""}; item11[] = {"___second_loop",4,218,50.000000,-75.000000,150.000000,-25.000000,1.000000,"3 second" \n "loop"}; item12[] = {"__s_update__obje",4,218,175.000000,-100.000000,275.000000,-50.000000,2.000000,"5s" \n "update " \n "objects"}; item13[] = {"___min__loop",4,218,300.000000,-125.000000,400.000000,-75.000000,3.000000,"1 min" \n " loop"}; item14[] = {"___min_loop",4,218,450.000000,-125.000000,550.000000,-75.000000,4.000000,"5 min" \n "loop"}; item15[] = {"__0_min__loop",4,218,575.000000,-100.000000,675.000000,-50.000000,5.000000,"10 min" \n " loop"}; item16[] = {"__5_min__loop",4,218,700.000000,-75.000000,800.000000,-25.000000,6.000000,"15 min" \n " loop"}; item17[] = {"cleanup_animals",2,250,700.000000,25.000000,800.000000,75.000000,0.000000,"cleanup" \n "animals and fire"}; item18[] = {"cleanup_dead",2,250,575.000000,0.000000,675.000000,50.000000,0.000000,"cleanup" \n "dead"}; item19[] = {"sync_time",2,250,450.000000,-25.000000,550.000000,25.000000,0.000000,"sync time"}; item20[] = {"cleanup_loot",2,250,300.000000,-25.000000,400.000000,25.000000,0.000000,"cleanup" \n "loot"}; item21[] = {"group_cleanup",2,4346,50.000000,25.000000,150.000000,75.000000,0.000000,"group" \n "cleanup"}; item22[] = {"update_objects",2,250,175.000000,0.000000,275.000000,50.000000,0.000000,"update objects"}; link0[] = {0,2}; link1[] = {1,3}; link2[] = {2,1}; link3[] = {3,4}; link4[] = {4,9}; link5[] = {4,11}; link6[] = {4,12}; link7[] = {4,13}; link8[] = {4,14}; link9[] = {4,15}; link10[] = {4,16}; link11[] = {5,6}; link12[] = {6,7}; link13[] = {7,8}; link14[] = {8,3}; link15[] = {9,10}; link16[] = {10,5}; link17[] = {11,21}; link18[] = {12,22}; link19[] = {13,20}; link20[] = {14,19}; link21[] = {15,18}; link22[] = {16,17}; link23[] = {17,5}; link24[] = {18,5}; link25[] = {19,5}; link26[] = {20,5}; link27[] = {21,5}; link28[] = {22,5}; globals[] = {25.000000,1,0,0,0,640,480,1,136,6316128,1,-53.328339,954.791992,443.544983,-436.145996,1044,911,1}; window[] = {2,-1,-1,-1,-1,1089,222,1514,277,3,1062}; *//*%FSM</HEAD>*/ class FSM { fsmName = "DayZ Server Cleanup"; class States { /*%FSM<STATE "init">*/ class init { name = "init"; init = /*%FSM<STATEINIT""">*/"//Major Performance Speedup by Skaronator ;)"/*%FSM</STATEINIT""">*/; precondition = /*%FSM<STATEPRECONDITION""">*/""/*%FSM</STATEPRECONDITION""">*/; class Links { /*%FSM<LINK "initialized">*/ class initialized { priority = 0.000000; to="prepare"; precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/; condition=/*%FSM<CONDITION""">*/"!isnil ""bis_fnc_init"""/*%FSM</CONDITION""">*/; action=/*%FSM<ACTION""">*/""/*%FSM</ACTION""">*/; }; /*%FSM</LINK>*/ }; }; /*%FSM</STATE>*/ /*%FSM<STATE "prepare">*/ class prepare { name = "prepare"; init = /*%FSM<STATEINIT""">*/"diag_log (""CLEANUP: INITIALIZING CLEANUP SCRIPT"");" \n "" \n "_lastUpdate = diag_tickTime;" \n "_lastNeedUpdate = diag_tickTime;" \n "_lastCleanupVehicles = diag_tickTime;" \n "_lastCleanupGroups = diag_tickTime;" \n "_lastCleanupNull = diag_tickTime;" \n "" \n "_lastCleanup900 = diag_tickTime;" \n "" \n ""/*%FSM</STATEINIT""">*/; precondition = /*%FSM<STATEPRECONDITION""">*/""/*%FSM</STATEPRECONDITION""">*/; class Links { /*%FSM<LINK "true">*/ class true { priority = 0.000000; to="waiting"; precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/; condition=/*%FSM<CONDITION""">*/"true"/*%FSM</CONDITION""">*/; action=/*%FSM<ACTION""">*/""/*%FSM</ACTION""">*/; }; /*%FSM</LINK>*/ }; }; /*%FSM</STATE>*/ /*%FSM<STATE "waiting">*/ class waiting { name = "waiting"; init = /*%FSM<STATEINIT""">*/"//diag_log ""CLEANUP: Waiting for next task"";" \n ""/*%FSM</STATEINIT""">*/; precondition = /*%FSM<STATEPRECONDITION""">*/""/*%FSM</STATEPRECONDITION""">*/; class Links { /*%FSM<LINK "__5_min__loop">*/ class __5_min__loop { priority = 6.000000; to="cleanup_animals"; precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/; condition=/*%FSM<CONDITION""">*/"((diag_tickTime - _lastCleanup900) > 900)"/*%FSM</CONDITION""">*/; action=/*%FSM<ACTION""">*/"_lastCleanup900 = diag_tickTime;"/*%FSM</ACTION""">*/; }; /*%FSM</LINK>*/ /*%FSM<LINK "__0_min__loop">*/ class __0_min__loop { priority = 5.000000; to="cleanup_dead"; precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/; condition=/*%FSM<CONDITION""">*/"((diag_tickTime - _lastCleanupNull) > 600)"/*%FSM</CONDITION""">*/; action=/*%FSM<ACTION""">*/"_lastCleanupNull = diag_tickTime;"/*%FSM</ACTION""">*/; }; /*%FSM</LINK>*/ /*%FSM<LINK "___min_loop">*/ class ___min_loop { priority = 4.000000; to="sync_time"; precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/; condition=/*%FSM<CONDITION""">*/"((diag_tickTime - _lastUpdate) > 300)"/*%FSM</CONDITION""">*/; action=/*%FSM<ACTION""">*/"_lastUpdate = diag_tickTime;"/*%FSM</ACTION""">*/; }; /*%FSM</LINK>*/ /*%FSM<LINK "___min__loop">*/ class ___min__loop { priority = 3.000000; to="cleanup_loot"; precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/; condition=/*%FSM<CONDITION""">*/"((diag_tickTime - _lastCleanupVehicles) > 60)"/*%FSM</CONDITION""">*/; action=/*%FSM<ACTION""">*/"_lastCleanupVehicles = diag_tickTime;"/*%FSM</ACTION""">*/; }; /*%FSM</LINK>*/ /*%FSM<LINK "__s_update__obje">*/ class __s_update__obje { priority = 2.000000; to="update_objects"; precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/; condition=/*%FSM<CONDITION""">*/"(( (count needUpdate_objects) > 0) && (diag_tickTime -_lastNeedUpdate> 5))"/*%FSM</CONDITION""">*/; action=/*%FSM<ACTION""">*/"_lastNeedUpdate = diag_tickTime;"/*%FSM</ACTION""">*/; }; /*%FSM</LINK>*/ /*%FSM<LINK "___second_loop">*/ class ___second_loop { priority = 1.000000; to="group_cleanup"; precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/; condition=/*%FSM<CONDITION""">*/"((diag_tickTime - _lastCleanupGroups) > 3)"/*%FSM</CONDITION""">*/; action=/*%FSM<ACTION""">*/"_lastCleanupGroups = diag_tickTime;"/*%FSM</ACTION""">*/; }; /*%FSM</LINK>*/ /*%FSM<LINK "true">*/ class true { priority = 0.000000; to="general_cleanup"; precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/; condition=/*%FSM<CONDITION""">*/"true"/*%FSM</CONDITION""">*/; action=/*%FSM<ACTION""">*/""/*%FSM</ACTION""">*/; }; /*%FSM</LINK>*/ }; }; /*%FSM</STATE>*/ /*%FSM<STATE "general_cleanup">*/ class general_cleanup { name = "general_cleanup"; init = /*%FSM<STATEINIT""">*/"//diag_log ""CLEANUP: Starting loop for next task"";" \n ""/*%FSM</STATEINIT""">*/; precondition = /*%FSM<STATEPRECONDITION""">*/""/*%FSM</STATEPRECONDITION""">*/; class Links { /*%FSM<LINK "true">*/ class true { priority = 0.000000; to="waiting"; precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/; condition=/*%FSM<CONDITION""">*/"true"/*%FSM</CONDITION""">*/; action=/*%FSM<ACTION""">*/""/*%FSM</ACTION""">*/; }; /*%FSM</LINK>*/ }; }; /*%FSM</STATE>*/ /*%FSM<STATE "cleanup_animals">*/ class cleanup_animals { name = "cleanup_animals"; init = /*%FSM<STATEINIT""">*/"[] spawn server_spawnCleanFire;" \n "[] spawn server_spawnCleanAnimals;"/*%FSM</STATEINIT""">*/; precondition = /*%FSM<STATEPRECONDITION""">*/""/*%FSM</STATEPRECONDITION""">*/; class Links { /*%FSM<LINK "true">*/ class true { priority = 0.000000; to="general_cleanup"; precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/; condition=/*%FSM<CONDITION""">*/"true"/*%FSM</CONDITION""">*/; action=/*%FSM<ACTION""">*/""/*%FSM</ACTION""">*/; }; /*%FSM</LINK>*/ }; }; /*%FSM</STATE>*/ /*%FSM<STATE "cleanup_dead">*/ class cleanup_dead { name = "cleanup_dead"; init = /*%FSM<STATEINIT""">*/"[] spawn server_spawncleanDead;"/*%FSM</STATEINIT""">*/; precondition = /*%FSM<STATEPRECONDITION""">*/""/*%FSM</STATEPRECONDITION""">*/; class Links { /*%FSM<LINK "true">*/ class true { priority = 0.000000; to="general_cleanup"; precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/; condition=/*%FSM<CONDITION""">*/"true"/*%FSM</CONDITION""">*/; action=/*%FSM<ACTION""">*/""/*%FSM</ACTION""">*/; }; /*%FSM</LINK>*/ }; }; /*%FSM</STATE>*/ /*%FSM<STATE "sync_time">*/ class sync_time { name = "sync_time"; init = /*%FSM<STATEINIT""">*/"if (DZE_DiagFpsSlow) then {" \n " call dze_diag_fps;" \n "};" \n "call server_timeSync;"/*%FSM</STATEINIT""">*/; precondition = /*%FSM<STATEPRECONDITION""">*/""/*%FSM</STATEPRECONDITION""">*/; class Links { /*%FSM<LINK "true">*/ class true { priority = 0.000000; to="general_cleanup"; precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/; condition=/*%FSM<CONDITION""">*/"true"/*%FSM</CONDITION""">*/; action=/*%FSM<ACTION""">*/""/*%FSM</ACTION""">*/; }; /*%FSM</LINK>*/ }; }; /*%FSM</STATE>*/ /*%FSM<STATE "cleanup_loot">*/ class cleanup_loot { name = "cleanup_loot"; init = /*%FSM<STATEINIT""">*/"if (DZE_DiagFpsFast) then {" \n " call dze_diag_fps;" \n "};" \n "" \n "[] spawn server_spawnCleanLoot;" \n "" \n "// set player save time based on server performance" \n "PVDZE_plr_SetSaveTime = round(60 - diag_fps);" \n "publicVariable ""PVDZE_plr_SetSaveTime"";"/*%FSM</STATEINIT""">*/; precondition = /*%FSM<STATEPRECONDITION""">*/""/*%FSM</STATEPRECONDITION""">*/; class Links { /*%FSM<LINK "true">*/ class true { priority = 0.000000; to="general_cleanup"; precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/; condition=/*%FSM<CONDITION""">*/"true"/*%FSM</CONDITION""">*/; action=/*%FSM<ACTION""">*/""/*%FSM</ACTION""">*/; }; /*%FSM</LINK>*/ }; }; /*%FSM</STATE>*/ /*%FSM<STATE "group_cleanup">*/ class group_cleanup { name = "group_cleanup"; init = /*%FSM<STATEINIT""">*/"[] spawn server_checkHackers;" \n "[] spawn server_cleanupGroups;"/*%FSM</STATEINIT""">*/; precondition = /*%FSM<STATEPRECONDITION""">*/""/*%FSM</STATEPRECONDITION""">*/; class Links { /*%FSM<LINK "true">*/ class true { priority = 0.000000; to="general_cleanup"; precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/; condition=/*%FSM<CONDITION""">*/"true"/*%FSM</CONDITION""">*/; action=/*%FSM<ACTION""">*/""/*%FSM</ACTION""">*/; }; /*%FSM</LINK>*/ }; }; /*%FSM</STATE>*/ /*%FSM<STATE "update_objects">*/ class update_objects { name = "update_objects"; init = /*%FSM<STATEINIT""">*/"{" \n " needUpdate_objects = needUpdate_objects - [_x];" \n " [_x,""damage"",true] call server_updateObject;" \n "} forEach needUpdate_objects;"/*%FSM</STATEINIT""">*/; precondition = /*%FSM<STATEPRECONDITION""">*/""/*%FSM</STATEPRECONDITION""">*/; class Links { /*%FSM<LINK "true">*/ class true { priority = 0.000000; to="general_cleanup"; precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/; condition=/*%FSM<CONDITION""">*/"true"/*%FSM</CONDITION""">*/; action=/*%FSM<ACTION""">*/""/*%FSM</ACTION""">*/; }; /*%FSM</LINK>*/ }; }; /*%FSM</STATE>*/ }; initState="init"; finalStates[] = { }; }; /*%FSM</COMPILE>*/ and this is my server_functions [] spawn {[] execVM "\z\addons\dayz_server\init\AH.sqf";}; waituntil {!isnil "bis_fnc_init"}; BIS_MPF_remoteExecutionServer = { if ((_this select 1) select 2 == "JIPrequest") then { [nil,(_this select 1) select 0,"loc",rJIPEXEC,[any,any,"per","execVM","ca\Modules\Functions\init.sqf"]] call RE; }; }; /* Skaronator - secured better remoteExecServer BIS_MPF_remoteExecutionServer = { if ((_this select 1) select 2 == "JIPrequest") then { _playerObj = (_this select 1) select 0; remExField = [nil, nil, format ["";if !(isServer) then {[] execVM "ca\Modules\Functions\init.sqf";};""]]; (owner _playerObj) publicVariableClient "remExField"; }; };*/ BIS_Effects_Burn = {}; server_playerLogin = compile preprocessFileLineNumbers "\z\addons\dayz_server\compile\server_playerLogin.sqf"; server_playerSetup = compile preprocessFileLineNumbers "\z\addons\dayz_server\compile\server_playerSetup.sqf"; server_onPlayerDisconnect = compile preprocessFileLineNumbers "\z\addons\dayz_server\compile\server_onPlayerDisconnect.sqf"; server_updateObject = compile preprocessFileLineNumbers "\z\addons\dayz_server\compile\server_updateObject.sqf"; server_playerDied = compile preprocessFileLineNumbers "\z\addons\dayz_server\compile\server_playerDied.sqf"; server_publishObj = compile preprocessFileLineNumbers "\z\addons\dayz_server\compile\server_publishObject.sqf"; server_deleteObj = compile preprocessFileLineNumbers "\z\addons\dayz_server\compile\server_deleteObj.sqf"; server_swapObject = compile preprocessFileLineNumbers "\z\addons\dayz_server\compile\server_swapObject.sqf"; server_publishVeh = compile preprocessFileLineNumbers "\z\addons\dayz_server\compile\server_publishVehicle.sqf"; server_publishVeh2 = compile preprocessFileLineNumbers "\z\addons\dayz_server\compile\server_publishVehicle2.sqf"; server_publishVeh3 = compile preprocessFileLineNumbers "\z\addons\dayz_server\compile\server_publishVehicle3.sqf"; server_tradeObj = compile preprocessFileLineNumbers "\z\addons\dayz_server\compile\server_tradeObject.sqf"; server_traders = compile preprocessFileLineNumbers "\z\addons\dayz_server\compile\server_traders.sqf"; server_playerSync = compile preprocessFileLineNumbers "\z\addons\dayz_server\compile\server_playerSync.sqf"; server_spawnCrashSite = compile preprocessFileLineNumbers "\z\addons\dayz_server\compile\server_spawnCrashSite.sqf"; server_spawnEvents = compile preprocessFileLineNumbers "\z\addons\dayz_server\compile\server_spawnEvent.sqf"; //server_weather = compile preprocessFileLineNumbers "\z\addons\dayz_server\compile\server_weather.sqf"; fnc_plyrHit = compile preprocessFileLineNumbers "\z\addons\dayz_server\compile\fnc_plyrHit.sqf"; server_deaths = compile preprocessFileLineNumbers "\z\addons\dayz_server\compile\server_playerDeaths.sqf"; server_maintainArea = compile preprocessFileLineNumbers "\z\addons\dayz_server\compile\server_maintainArea.sqf"; fnc_hTime = compile preprocessFile "\z\addons\dayz_server\EMS\misc\fnc_hTime.sqf"; //Random integer selector for mission wait time /* PVS/PVC - Skaronator */ server_sendToClient = compile preprocessFileLineNumbers "\z\addons\dayz_server\compile\server_sendToClient.sqf"; //onPlayerConnected {[_uid,_name] call server_onPlayerConnect;}; onPlayerDisconnected {[_uid,_name] call server_onPlayerDisconnect;}; server_updateNearbyObjects = { private["_pos"]; _pos = _this select 0; { [_x, "gear"] call server_updateObject; } forEach nearestObjects [_pos, dayz_updateObjects, 10]; }; server_handleZedSpawn = { private["_zed"]; _zed = _this select 0; _zed enableSimulation false; }; zombie_findOwner = { private["_unit"]; _unit = _this select 0; #ifdef DZE_SERVER_DEBUG diag_log ("CLEANUP: DELETE UNCONTROLLED ZOMBIE: " + (typeOf _unit) + " OF: " + str(_unit) ); #endif deleteVehicle _unit; }; vehicle_handleInteract = { private["_object"]; _object = _this select 0; needUpdate_objects = needUpdate_objects - [_object]; [_object, "all"] call server_updateObject; }; array_reduceSizeReverse = { private["_array","_count","_num","_newarray","_startnum","_index"]; _array = _this select 0; _newarray = []; _count = _this select 1; _num = count _array; if (_num > _count) then { _startnum = _num - 1; _index = _count - 1; for "_i" from 0 to _index do { _newarray set [(_index-_i),_array select (_startnum - _i)]; }; _array = _newarray; }; _array }; array_reduceSize = { private ["_array1","_array","_count","_num"]; _array1 = _this select 0; _array = _array1 - ["Hatchet_Swing","Machete_Swing","Fishing_Swing","sledge_swing","crowbar_swing","CSGAS"]; _count = _this select 1; _num = count _array; if (_num > _count) then { _array resize _count; }; _array }; object_handleServerKilled = { private["_unit","_objectID","_objectUID","_killer"]; _unit = _this select 0; _killer = _this select 1; _objectID = _unit getVariable ["ObjectID","0"]; _objectUID = _unit getVariable ["ObjectUID","0"]; [_objectID,_objectUID,_killer] call server_deleteObj; _unit removeAllMPEventHandlers "MPKilled"; _unit removeAllEventHandlers "Killed"; _unit removeAllEventHandlers "HandleDamage"; _unit removeAllEventHandlers "GetIn"; _unit removeAllEventHandlers "GetOut"; }; check_publishobject = { private["_allowed","_object","_playername"]; _object = _this select 0; _playername = _this select 1; _allowed = false; if ((typeOf _object) in dayz_allowedObjects) then { //diag_log format ["DEBUG: Object: %1 published by %2 is Safe",_object, _playername]; _allowed = true; }; _allowed }; //event Handlers eh_localCleanup = { private ["_object"]; _object = _this select 0; _object addEventHandler ["local", { if(_this select 1) then { private["_type","_unit"]; _unit = _this select 0; _type = typeOf _unit; _myGroupUnit = group _unit; _unit removeAllMPEventHandlers "mpkilled"; _unit removeAllMPEventHandlers "mphit"; _unit removeAllMPEventHandlers "mprespawn"; _unit removeAllEventHandlers "FiredNear"; _unit removeAllEventHandlers "HandleDamage"; _unit removeAllEventHandlers "Killed"; _unit removeAllEventHandlers "Fired"; _unit removeAllEventHandlers "GetOut"; _unit removeAllEventHandlers "GetIn"; _unit removeAllEventHandlers "Local"; clearVehicleInit _unit; deleteVehicle _unit; deleteGroup _myGroupUnit; //_unit = nil; diag_log ("CLEANUP: DELETED A " + str(_type) ); }; }]; }; server_hiveWrite = { private["_data"]; _data = "HiveExt" callExtension _this; }; server_hiveReadWrite = { private["_key","_resultArray","_data"]; _key = _this; _data = "HiveExt" callExtension _key; _resultArray = call compile format ["%1",_data]; _resultArray }; server_hiveReadWriteLarge = { private["_key","_resultArray","_data"]; _key = _this; _data = "HiveExt" callExtension _key; _resultArray = call compile _data; _resultArray }; server_checkIfTowed = { private ["_vehicle","_player","_attached"]; if (DZE_HeliLift) then { _vehicle = _this select 0; _player = _this select 2; _attached = _vehicle getVariable["attached",false]; if ((typeName _attached == "OBJECT")) then { _player action ["eject", _vehicle]; detach _vehicle; _vehicle setVariable["attached",false,true]; _attached setVariable["hasAttached",false,true]; }; }; }; server_characterSync = { private ["_characterID","_playerPos","_playerGear","_playerBackp","_medical","_currentState","_currentModel","_key"]; _characterID = _this select 0; _playerPos = _this select 1; _playerGear = _this select 2; _playerBackp = _this select 3; _medical = _this select 4; _currentState = _this select 5; _currentModel = _this select 6; _key = format["CHILD:201:%1:%2:%3:%4:%5:%6:%7:%8:%9:%10:%11:%12:%13:%14:%15:%16:",_characterID,_playerPos,_playerGear,_playerBackp,_medical,false,false,0,0,0,0,_currentState,0,0,_currentModel,0]; _key call server_hiveWrite; }; if(isnil "dayz_MapArea") then { dayz_MapArea = 10000; }; if(isnil "DynamicVehicleArea") then { DynamicVehicleArea = dayz_MapArea / 2; }; // Get all buildings and roads only once TODO: set variables to nil after done if nessicary MarkerPosition = getMarkerPos "center"; RoadList = MarkerPosition nearRoads DynamicVehicleArea; // Very taxing !!! but only on first startup BuildingList = []; { if (DZE_MissionLootTable) then { if (isClass (missionConfigFile >> "CfgBuildingLoot" >> (typeOf _x))) then { BuildingList set [count BuildingList,_x]; }; } else { if (isClass (configFile >> "CfgBuildingLoot" >> (typeOf _x))) then { BuildingList set [count BuildingList,_x]; }; }; } forEach (MarkerPosition nearObjects ["building",DynamicVehicleArea]); spawn_vehicles = { private ["_random","_lastIndex","_weights","_index","_vehicle","_velimit","_qty","_isAir","_isShip","_position","_dir","_istoomany","_veh","_objPosition","_marker","_iClass","_itemTypes","_cntWeights","_itemType","_num","_allCfgLoots"]; if (!isDedicated) exitWith { }; //Be sure the run this while {count AllowedVehiclesList > 0} do { // BIS_fnc_selectRandom replaced because the index may be needed to remove the element _index = floor random count AllowedVehiclesList; _random = AllowedVehiclesList select _index; _vehicle = _random select 0; _velimit = _random select 1; _qty = {_x == _vehicle} count serverVehicleCounter; // If under limit allow to proceed if (_qty <= _velimit) exitWith {}; // vehicle limit reached, remove vehicle from list // since elements cannot be removed from an array, overwrite it with the last element and cut the last element of (as long as order is not important) _lastIndex = (count AllowedVehiclesList) - 1; if (_lastIndex != _index) then { AllowedVehiclesList set [_index, AllowedVehiclesList select _lastIndex]; }; AllowedVehiclesList resize _lastIndex; }; if (count AllowedVehiclesList == 0) then { diag_log("DEBUG: unable to find suitable vehicle to spawn"); } else { // add vehicle to counter for next pass serverVehicleCounter set [count serverVehicleCounter,_vehicle]; // Find Vehicle Type to better control spawns _isAir = _vehicle isKindOf "Air"; _isShip = _vehicle isKindOf "Ship"; if(_isShip || _isAir) then { if(_isShip) then { // Spawn anywhere on coast on water waitUntil{!isNil "BIS_fnc_findSafePos"}; _position = [MarkerPosition,0,DynamicVehicleArea,10,1,2000,1] call BIS_fnc_findSafePos; //diag_log("DEBUG: spawning boat near coast " + str(_position)); } else { // Spawn air anywhere that is flat waitUntil{!isNil "BIS_fnc_findSafePos"}; _position = [MarkerPosition,0,DynamicVehicleArea,10,0,2000,0] call BIS_fnc_findSafePos; //diag_log("DEBUG: spawning air anywhere flat " + str(_position)); }; } else { // Spawn around buildings and 50% near roads if((random 1) > 0.5) then { waitUntil{!isNil "BIS_fnc_selectRandom"}; _position = RoadList call BIS_fnc_selectRandom; _position = _position modelToWorld [0,0,0]; waitUntil{!isNil "BIS_fnc_findSafePos"}; _position = [_position,0,10,10,0,2000,0] call BIS_fnc_findSafePos; //diag_log("DEBUG: spawning near road " + str(_position)); } else { waitUntil{!isNil "BIS_fnc_selectRandom"}; _position = BuildingList call BIS_fnc_selectRandom; _position = _position modelToWorld [0,0,0]; waitUntil{!isNil "BIS_fnc_findSafePos"}; _position = [_position,0,40,5,0,2000,0] call BIS_fnc_findSafePos; //diag_log("DEBUG: spawning around buildings " + str(_position)); }; }; // only proceed if two params otherwise BIS_fnc_findSafePos failed and may spawn in air if ((count _position) == 2) then { _dir = round(random 180); _istoomany = _position nearObjects ["AllVehicles",50]; if((count _istoomany) > 0) exitWith { diag_log("DEBUG: Too many vehicles at " + str(_position)); }; //place vehicle _veh = createVehicle [_vehicle, _position, [], 0, "CAN_COLLIDE"]; _veh setdir _dir; _veh setpos _position; if(DZEdebug) then { _marker = createMarker [str(_position) , _position]; _marker setMarkerShape "ICON"; _marker setMarkerType "DOT"; _marker setMarkerText _vehicle; }; // Get position with ground _objPosition = getPosATL _veh; clearWeaponCargoGlobal _veh; clearMagazineCargoGlobal _veh; // _veh setVehicleAmmo DZE_vehicleAmmo; // Add 0-3 loots to vehicle using random cfgloots _num = floor(random 4); _allCfgLoots = ["trash","civilian","food","generic","medical","military","policeman","hunter","worker","clothes","militaryclothes","specialclothes","trash"]; for "_x" from 1 to _num do { _iClass = _allCfgLoots call BIS_fnc_selectRandom; _itemTypes = []; if (DZE_MissionLootTable) then { _itemTypes = ((getArray (missionConfigFile >> "cfgLoot" >> _iClass)) select 0); } else { _itemTypes = ((getArray (configFile >> "cfgLoot" >> _iClass)) select 0); }; _index = dayz_CLBase find _iClass; _weights = dayz_CLChances select _index; _cntWeights = count _weights; _index = floor(random _cntWeights); _index = _weights select _index; _itemType = _itemTypes select _index; _veh addMagazineCargoGlobal [_itemType,1]; //diag_log("DEBUG: spawed loot inside vehicle " + str(_itemType)); }; [_veh,[_dir,_objPosition],_vehicle,true,"0"] call server_publishVeh; }; }; }; spawn_ammosupply = { private ["_position","_veh","_istoomany","_marker","_spawnveh","_WreckList"]; if (isDedicated) then { _WreckList = ["Supply_Crate_DZE"]; waitUntil{!isNil "BIS_fnc_selectRandom"}; _position = RoadList call BIS_fnc_selectRandom; _position = _position modelToWorld [0,0,0]; waitUntil{!isNil "BIS_fnc_findSafePos"}; _position = [_position,5,20,5,0,2000,0] call BIS_fnc_findSafePos; if ((count _position) == 2) then { _istoomany = _position nearObjects ["All",5]; if((count _istoomany) > 0) exitWith { diag_log("DEBUG VEIN: Too many at " + str(_position)); }; _spawnveh = _WreckList call BIS_fnc_selectRandom; if(DZEdebug) then { _marker = createMarker [str(_position) , _position]; _marker setMarkerShape "ICON"; _marker setMarkerType "DOT"; _marker setMarkerText str(_spawnveh); }; _veh = createVehicle [_spawnveh,_position, [], 0, "CAN_COLLIDE"]; _veh enableSimulation false; _veh setDir round(random 360); _veh setpos _position; _veh setVariable ["ObjectID","1",true]; }; }; }; DZE_LocalRoadBlocks = []; spawn_roadblocks = { private ["_position","_veh","_istoomany","_marker","_spawnveh","_WreckList"]; _WreckList = ["SKODAWreck","HMMWVWreck","UralWreck","datsun01Wreck","hiluxWreck","datsun02Wreck","UAZWreck","Land_Misc_Garb_Heap_EP1","Fort_Barricade_EP1","Rubbish2"]; waitUntil{!isNil "BIS_fnc_selectRandom"}; if (isDedicated) then { _position = RoadList call BIS_fnc_selectRandom; _position = _position modelToWorld [0,0,0]; waitUntil{!isNil "BIS_fnc_findSafePos"}; _position = [_position,0,10,5,0,2000,0] call BIS_fnc_findSafePos; if ((count _position) == 2) then { // Get position with ground _istoomany = _position nearObjects ["All",5]; if((count _istoomany) > 0) exitWith { diag_log("DEBUG: Too many at " + str(_position)); }; waitUntil{!isNil "BIS_fnc_selectRandom"}; _spawnveh = _WreckList call BIS_fnc_selectRandom; if(DZEdebug) then { _marker = createMarker [str(_position) , _position]; _marker setMarkerShape "ICON"; _marker setMarkerType "DOT"; _marker setMarkerText str(_spawnveh); }; _veh = createVehicle [_spawnveh,_position, [], 0, "CAN_COLLIDE"]; _veh enableSimulation false; _veh setDir round(random 360); // Randomize placement a bit _veh setpos _position; _veh setVariable ["ObjectID","1",true]; }; }; }; spawn_mineveins = { private ["_position","_veh","_istoomany","_marker","_spawnveh","_positions"]; if (isDedicated) then { _position = [getMarkerPos "center",0,(HeliCrashArea*0.75),10,0,2000,0] call BIS_fnc_findSafePos; if ((count _position) == 2) then { _positions = selectBestPlaces [_position, 500, "(1 + forest) * (1 + hills) * (1 - houses) * (1 - sea)", 10, 5]; _position = (_positions call BIS_fnc_selectRandom) select 0; // Get position with ground _istoomany = _position nearObjects ["All",10]; if((count _istoomany) > 0) exitWith { diag_log("DEBUG VEIN: Too many objects at " + str(_position)); }; if(isOnRoad _position) exitWith { diag_log("DEBUG VEIN: on road " + str(_position)); }; _spawnveh = ["Iron_Vein_DZE","Iron_Vein_DZE","Iron_Vein_DZE","Iron_Vein_DZE","Iron_Vein_DZE","Silver_Vein_DZE","Silver_Vein_DZE","Silver_Vein_DZE","Gold_Vein_DZE","Gold_Vein_DZE"] call BIS_fnc_selectRandom; if(DZEdebug) then { _marker = createMarker [str(_position) , _position]; _marker setMarkerShape "ICON"; _marker setMarkerType "DOT"; _marker setMarkerText str(_spawnveh); }; //diag_log("DEBUG: Spawning a crashed " + _spawnveh + " with " + _spawnloot + " at " + str(_position)); _veh = createVehicle [_spawnveh,_position, [], 0, "CAN_COLLIDE"]; _veh enableSimulation false; // Randomize placement a bit _veh setDir round(random 360); _veh setpos _position; _veh setVariable ["ObjectID","1",true]; }; }; }; if(isnil "DynamicVehicleDamageLow") then { DynamicVehicleDamageLow = 0; }; if(isnil "DynamicVehicleDamageHigh") then { DynamicVehicleDamageHigh = 100; }; if(isnil "DynamicVehicleFuelLow") then { DynamicVehicleFuelLow = 0; }; if(isnil "DynamicVehicleFuelHigh") then { DynamicVehicleFuelHigh = 100; }; if(isnil "DZE_DiagFpsSlow") then { DZE_DiagFpsSlow = false; }; if(isnil "DZE_DiagFpsFast") then { DZE_DiagFpsFast = false; }; if(isnil "DZE_DiagVerbose") then { DZE_DiagVerbose = false; }; dze_diag_fps = { if(DZE_DiagVerbose) then { diag_log format["DEBUG FPS : %1 OBJECTS: %2 : PLAYERS: %3", diag_fps,(count (allMissionObjects "")),(playersNumber west)]; } else { diag_log format["DEBUG FPS : %1", diag_fps]; }; }; // Damage generator function generate_new_damage = { private ["_damage"]; _damage = ((random(DynamicVehicleDamageHigh-DynamicVehicleDamageLow))+DynamicVehicleDamageLow) / 100; _damage; }; // Damage generator fuction generate_exp_damage = { private ["_damage"]; _damage = ((random(DynamicVehicleDamageHigh-DynamicVehicleDamageLow))+DynamicVehicleDamageLow) / 100; // limit this to 85% since vehicle would blow up otherwise. //if(_damage >= 0.85) then { // _damage = 0.85; //}; _damage; }; server_getDiff = { private["_variable","_object","_vNew","_vOld","_result"]; _variable = _this select 0; _object = _this select 1; _vNew = _object getVariable[_variable,0]; _vOld = _object getVariable[(_variable + "_CHK"),_vNew]; _result = 0; if (_vNew < _vOld) then { //JIP issues _vNew = _vNew + _vOld; _object getVariable[(_variable + "_CHK"),_vNew]; } else { _result = _vNew - _vOld; _object setVariable[(_variable + "_CHK"),_vNew]; }; _result }; server_getDiff2 = { private["_variable","_object","_vNew","_vOld","_result"]; _variable = _this select 0; _object = _this select 1; _vNew = _object getVariable[_variable,0]; _vOld = _object getVariable[(_variable + "_CHK"),_vNew]; _result = _vNew - _vOld; _object setVariable[(_variable + "_CHK"),_vNew]; _result }; dayz_objectUID = { private["_position","_dir","_key","_object"]; _object = _this; _position = getPosATL _object; _dir = direction _object; _key = [_dir,_position] call dayz_objectUID2; _key }; dayz_objectUID2 = { private["_position","_dir","_key"]; _dir = _this select 0; _key = ""; _position = _this select 1; { _x = _x * 10; if ( _x < 0 ) then { _x = _x * -10 }; _key = _key + str(round(_x)); } forEach _position; _key = _key + str(round(_dir)); _key }; dayz_objectUID3 = { private["_position","_dir","_key"]; _dir = _this select 0; _key = ""; _position = _this select 1; { _x = _x * 10; if ( _x < 0 ) then { _x = _x * -10 }; _key = _key + str(round(_x)); } forEach _position; _key = _key + str(round(_dir + time)); _key }; dayz_recordLogin = { private["_key"]; _key = format["CHILD:103:%1:%2:%3:",_this select 0,_this select 1,_this select 2]; _key call server_hiveWrite; }; //----------InitMissions--------// MissionGo = 0; MissionGoMinor = 0; if (isServer) then { SMarray = ["SM1","SM2","SM3","SM4","SM5","SM6","SM7","SM8","SM9","SM10","SM11","SM12","SM13"]; [] execVM "\z\addons\dayz_server\EMS\major\SMfinder.sqf"; //Starts major mission system SMarray2 = ["SM1","SM2","SM3","SM4","SM5","SM6","SM7","SM8","SM9","SM10","SM11","SM12","SM13"]; [] execVM "\z\addons\dayz_server\EMS\minor\SMfinder.sqf"; //Starts minor mission system }; //---------EndInitMissions------// dayz_perform_purge = { if(!isNull(_this)) then { _this removeAllMPEventHandlers "mpkilled"; _this removeAllMPEventHandlers "mphit"; _this removeAllMPEventHandlers "mprespawn"; _this removeAllEventHandlers "FiredNear"; _this removeAllEventHandlers "HandleDamage"; _this removeAllEventHandlers "Killed"; _this removeAllEventHandlers "Fired"; _this removeAllEventHandlers "GetOut"; _this removeAllEventHandlers "GetIn"; _this removeAllEventHandlers "Local"; clearVehicleInit _this; deleteVehicle _this; deleteGroup (group _this); }; }; dayz_perform_purge_player = { private ["_countr","_backpack","_backpackType","_backpackWpn","_backpackMag","_objWpnTypes","_objWpnQty","_location","_dir","_holder","_weapons","_magazines"]; diag_log ("Purging player: " + str(_this)); if(!isNull(_this)) then { _location = getPosATL _this; _dir = getDir _this; _holder = createVehicle ["GraveDZE", _location, [], 0, "CAN_COLLIDE"]; _holder setDir _dir; _holder setPosATL _location; _holder enableSimulation false; _weapons = weapons _this; _magazines = magazines _this; // find backpack if(!(isNull unitBackpack _this)) then { _backpack = unitBackpack _this; _backpackType = typeOf _backpack; _backpackWpn = getWeaponCargo _backpack; _backpackMag = getMagazineCargo _backpack; _holder addBackpackCargoGlobal [_backpackType,1]; // add items from backpack _objWpnTypes = _backpackWpn select 0; _objWpnQty = _backpackWpn select 1; _countr = 0; { _holder addWeaponCargoGlobal [_x,(_objWpnQty select _countr)]; _countr = _countr + 1; } forEach _objWpnTypes; // add backpack magazine items _objWpnTypes = _backpackMag select 0; _objWpnQty = _backpackMag select 1; _countr = 0; { _holder addMagazineCargoGlobal [_x,(_objWpnQty select _countr)]; _countr = _countr + 1; } forEach _objWpnTypes; }; }; // add weapons { _holder addWeaponCargoGlobal [_x, 1]; } forEach _weapons; // add mags { _holder addMagazineCargoGlobal [_x, 1]; } forEach _magazines; _this removeAllMPEventHandlers "mpkilled"; _this removeAllMPEventHandlers "mphit"; _this removeAllMPEventHandlers "mprespawn"; _this removeAllEventHandlers "FiredNear"; _this removeAllEventHandlers "HandleDamage"; _this removeAllEventHandlers "Killed"; _this removeAllEventHandlers "Fired"; _this removeAllEventHandlers "GetOut"; _this removeAllEventHandlers "GetIn"; _this removeAllEventHandlers "Local"; clearVehicleInit _this; deleteVehicle _this; deleteGroup (group _this); // _this = nil; }; dayz_removePlayerOnDisconnect = { if(!isNull(_this)) then { _this removeAllMPEventHandlers "mphit"; deleteVehicle _this; deleteGroup (group _this); }; }; server_timeSync = { //Send request private ["_hour","_minute","_date","_key","_result","_outcome"]; _key = "CHILD:307:"; _result = _key call server_hiveReadWrite; _outcome = _result select 0; if(_outcome == "PASS") then { _date = _result select 1; if(dayz_fullMoonNights) then { _hour = _date select 3; _minute = _date select 4; //Force full moon nights _date = [2013,8,3,_hour,_minute]; }; setDate _date; PVDZE_plr_SetDate = _date; publicVariable "PVDZE_plr_SetDate"; diag_log ("TIME SYNC: Local Time set to " + str(_date)); }; }; // must spawn these server_spawncleanDead = { private ["_deathTime","_delQtyZ","_delQtyP","_qty","_allDead"]; _allDead = allDead; _delQtyZ = 0; _delQtyP = 0; { if (local _x) then { if (_x isKindOf "zZombie_Base") then { _x call dayz_perform_purge; sleep 0.05; _delQtyZ = _delQtyZ + 1; } else { if (_x isKindOf "CAManBase") then { _deathTime = _x getVariable ["processedDeath", diag_tickTime]; if (diag_tickTime - _deathTime > 1800) then { _x call dayz_perform_purge_player; sleep 0.025; _delQtyP = _delQtyP + 1; }; }; }; }; sleep 0.025; } forEach _allDead; if (_delQtyZ > 0 or _delQtyP > 0) then { _qty = count _allDead; diag_log (format["CLEANUP: Deleted %1 players and %2 zombies out of %3 dead",_delQtyP,_delQtyZ,_qty]); }; }; server_cleanupGroups = { if (DZE_DYN_AntiStuck3rd > 3) then { DZE_DYN_GroupCleanup = nil; DZE_DYN_AntiStuck3rd = 0; }; if(!isNil "DZE_DYN_GroupCleanup") exitWith { DZE_DYN_AntiStuck3rd = DZE_DYN_AntiStuck3rd + 1;}; DZE_DYN_GroupCleanup = true; { if (count units _x == 0) then { deleteGroup _x; }; sleep 0.001; } forEach allGroups; DZE_DYN_GroupCleanup = nil; }; server_checkHackers = { if (DZE_DYN_AntiStuck2nd > 3) then { DZE_DYN_HackerCheck = nil; DZE_DYN_AntiStuck2nd = 0; }; if(!isNil "DZE_DYN_HackerCheck") exitWith { DZE_DYN_AntiStuck2nd = DZE_DYN_AntiStuck2nd + 1;}; DZE_DYN_HackerCheck = true; { if(vehicle _x != _x && !(vehicle _x in PVDZE_serverObjectMonitor) && (isPlayer _x) && (vehicle _x getVariable ["Sarge",0] != 1) && !((typeOf vehicle _x) in DZE_safeVehicle)) then {" \n diag_log ("CLEANUP: KILLING A HACKER " + (name _x) + " " + str(_x) + " IN " + (typeOf vehicle _x)); (vehicle _x) setDamage 1; _x setDamage 1; sleep 0.25; }; sleep 0.001; } forEach allUnits; DZE_DYN_HackerCheck = nil; }; server_spawnCleanFire = { private ["_delQtyFP","_qty","_delQtyNull","_missionFires"]; _missionFires = allMissionObjects "Land_Fire_DZ"; _delQtyFP = 0; { if (local _x) then { deleteVehicle _x; sleep 0.025; _delQtyFP = _delQtyFP + 1; }; sleep 0.001; } forEach _missionFires; if (_delQtyFP > 0) then { _qty = count _missionFires; diag_log (format["CLEANUP: Deleted %1 fireplaces out of %2",_delQtyNull,_qty]); }; }; server_spawnCleanLoot = { private ["_created","_delQty","_nearby","_age","_keep","_qty","_missionObjs","_dateNow"]; if (DZE_DYN_AntiStuck > 3) then { DZE_DYN_cleanLoot = nil; DZE_DYN_AntiStuck = 0; }; if(!isNil "DZE_DYN_cleanLoot") exitWith { DZE_DYN_AntiStuck = DZE_DYN_AntiStuck + 1;}; DZE_DYN_cleanLoot = true; _missionObjs = allMissionObjects "ReammoBox"; _delQty = 0; _dateNow = (DateToNumber date); { _keep = _x getVariable ["permaLoot",false]; if (!_keep) then { _created = _x getVariable ["created",-0.1]; if (_created == -0.1) then { _x setVariable ["created",_dateNow,false]; _created = _dateNow; } else { _age = (_dateNow - _created) * 525948; if (_age > 20) then { _nearby = {(isPlayer _x) and (alive _x)} count (_x nearEntities [["CAManBase","AllVehicles"], 130]); if (_nearby==0) then { deleteVehicle _x; sleep 0.025; _delQty = _delQty + 1; }; }; }; }; sleep 0.001; } forEach _missionObjs; if (_delQty > 0) then { _qty = count _missionObjs; diag_log (format["CLEANUP: Deleted %1 Loot Piles out of %2",_delQty,_qty]); }; DZE_DYN_cleanLoot = nil; }; server_spawnCleanAnimals = { private ["_pos","_delQtyAnimal","_qty","_missonAnimals","_nearby"]; _missonAnimals = entities "CAAnimalBase"; _delQtyAnimal = 0; { if (local _x) then { _x call dayz_perform_purge; sleep 0.05; _delQtyAnimal = _delQtyAnimal + 1; } else { if (!alive _x) then { _pos = getPosATL _x; if (count _pos > 0) then { _nearby = {(isPlayer _x) and (alive _x)} count (_pos nearEntities [["CAManBase","AllVehicles"], 130]); if (_nearby==0) then { _x call dayz_perform_purge; sleep 0.05; _delQtyAnimal = _delQtyAnimal + 1; }; }; }; }; sleep 0.001; } forEach _missonAnimals; if (_delQtyAnimal > 0) then { _qty = count _missonAnimals; diag_log (format["CLEANUP: Deleted %1 Animals out of %2",_delQtyAnimal,_qty]); }; }; server_getLocalObjVars = { private ["_player","_obj","_objectID","_objectUID","_weapons","_magazines","_backpacks"]; _player = _this select 0; _obj = _this select 1; _objectID = _obj getVariable["ObjectID","0"]; _objectUID = _obj getVariable["ObjectUID","0"]; _weapons = _obj getVariable ["WeaponCargo", false]; _magazines = _obj getVariable ["MagazineCargo", false]; _backpacks = _obj getVariable ["BackpackCargo", false]; PVDZE_localVarsResult = [_weapons,_magazines,_backpacks]; (owner _player) publicVariableClient "PVDZE_localVarsResult"; diag_log format["SAFE UNLOCKED: ID:%1 UID:%2 BY %3(%4)", _objectID, _objectUID, (name _player), (getPlayerUID _player)]; }; server_setLocalObjVars = { private ["_obj","_holder","_weapons","_magazines","_backpacks","_player","_objectID","_objectUID"]; _obj = _this select 0; _holder = _this select 1; _player = _this select 2; _objectID = _obj getVariable["ObjectID","0"]; _objectUID = _obj getVariable["ObjectUID","0"]; _weapons = getWeaponCargo _obj; _magazines = getMagazineCargo _obj; _backpacks = getBackpackCargo _obj; deleteVehicle _obj; _holder setVariable ["WeaponCargo", _weapons]; _holder setVariable ["MagazineCargo", _magazines]; _holder setVariable ["BackpackCargo", _backpacks]; diag_log format["SAFE LOCKED: ID:%1 UID:%2 BY %3(%4)", _objectID, _objectUID, (name _player), (getPlayerUID _player)]; }; im sorry for posting it like this but i dont know how else :D Link to comment Share on other sites More sharing options...
bronwaterg Posted February 12, 2014 Report Share Posted February 12, 2014 Oh yes im using epoch mod 1.0.4.1 Link to comment Share on other sites More sharing options...
umfufu Posted February 13, 2014 Report Share Posted February 13, 2014 Oh yes im using epoch mod 1.0.4.1 Try this update to 0.26 https://github.com/Thisnameisnottaken Link to comment Share on other sites More sharing options...
scottnkc Posted February 14, 2014 Report Share Posted February 14, 2014 I tried everthing in .26 still not working I am using dzai do I have to edit out sar ?? I am using 1.0.4.2 scott Link to comment Share on other sites More sharing options...
F507DMT Posted February 15, 2014 Report Share Posted February 15, 2014 hello! i need help whitch code i have idea, spawn zombie after Mission completed! its cool i think, zombie apocalypse, walking dead... and players run to the boxes not kill all in a mission, zombies to keep them i cant transplantation this code in antihax: (code default) adminCallZeds = { fnc_addZeds = { _position = _this; for "_i" from 1 to 10 do { _unitTypes = []+ getArray (configFile >> "CfgBuildingLoot" >> "Default" >> "zombieClass"); _agent = objNull; _type = _unitTypes call BIS_fnc_selectRandom; _radius = 40; _method = "NONE"; _agent = createAgent [_type, _position, [], _radius, _method]; _id = [_position,_agent] execFSM "\z\AddOns\dayz_code\system\zombie_agent.fsm"; }; }; openMap [true, false]; onMapSingleClick ' [_pos select 0,_pos select 1,_pos select 2] spawn fnc_addZeds; openMap [false, false]; onMapSingleClick ""; '; }; Anyone can help whitch this idea? Link to comment Share on other sites More sharing options...
bFe Posted February 15, 2014 Report Share Posted February 15, 2014 hellow i tried to put this on my server i used ems 0.2.6 i get stuck on the last loading screen i can hear the sound from ingame but stuck ont he loader this is my init that is located in /mine ip/MPMissions/DayZ_Epoch_11.Chernarus im sorry for posting it like this but i dont know how else :D For the love of God, please put it in a spoiler next time. Link to comment Share on other sites More sharing options...
adrianna Posted February 19, 2014 Report Share Posted February 19, 2014 hellow i tried to put this on my server i used ems 0.2.6 i get stuck on the last loading screen i can hear the sound from ingame but stuck ont he loader Sure, i will call Police, Ambulance, NSA,CIA, FBI for your problem!!! Maybe learn to pack your shit into a spolier first. Noone will help you, and thats good! Learn that basics of a forum first. Link to comment Share on other sites More sharing options...
umfufu Posted February 19, 2014 Report Share Posted February 19, 2014 Sure, i will call Police, Ambulance, NSA,CIA, FBI for your problem!!! Maybe learn to pack your shit into a spolier first. Noone will help you, and thats good! Learn that basics of a forum first. Me thinks itsa firetruck Link to comment Share on other sites More sharing options...
FUBAR22 Posted February 20, 2014 Report Share Posted February 20, 2014 Can someone delete post #630.....please?? Link to comment Share on other sites More sharing options...
adrianna Posted February 21, 2014 Report Share Posted February 21, 2014 Me thinks itsa firetruck 9/11 is everywhere. So sad that he forgot to post his 60 days old logfile. so we can better analyse his problems. Im now reading his code for the next 6hours to help him, because its so structured. Link to comment Share on other sites More sharing options...
umfufu Posted February 21, 2014 Report Share Posted February 21, 2014 9/11 is everywhere. So sad that he forgot to post his 60 days old logfile. so we can better analyse his problems. Im now reading his code for the next 6hours to help him, because its so structured. Its simple he misses a closing brace if (!isDedicated) then { // and then no end }; should be 1 before this is my server_cleanup.fsm Link to comment Share on other sites More sharing options...
insertcoins Posted February 24, 2014 Report Share Posted February 24, 2014 for some reason on my namalsk server i'm getting the Cleaned up a hacker check, and no heli's spawn Link to comment Share on other sites More sharing options...
hybridfury Posted February 24, 2014 Report Share Posted February 24, 2014 For some reason any of the vehicles spawned by EMS blow up if you try to get in them. Like at the stash house mission there are 3 or 4 vehicles, one being a camo SUV. Upon getting into it it exploded. It does this on all vehicles spawned by EMS. Is this normal, anyone have any ideas? Link to comment Share on other sites More sharing options...
MuhKuh Posted February 25, 2014 Report Share Posted February 25, 2014 For all who are interested in some fixed coordinates for napf: DZMSFunctions.sqf: DZMSFindPos = { _coord1 = [18630.9, 17689.5, 0]; _coord2 = [16754.1, 18123.1, 0]; _coord3 = [13543.8, 19631.4, 0]; _coord4 = [10268.8, 18443.3, 0]; _coord5 = [949.3, 10969.1, 0]; _coord6 = [707.2, 6570.9, 0]; _coord7 = [1258.2, 3183.9, 0]; _coord8 = [6882.7, 3523.4, 0]; _coord9 = [9909.3, 4132.2, 0]; _coord10 = [14427.7, 3643.6, 0]; _coord11 = [18143.4, 2442.1, 0]; _coord12 = [19145.5, 6659.6, 0]; _coord13 = [16879.9, 8732.3, 0]; _coord14 = [18574.1, 11316, 0]; _coord15 = [14505.1, 11664.4, 0]; _coord16 = [11760.5, 12486.9, 0]; _coord17 = [8377.5, 13175.1, 0]; _coord18 = [8549.9, 10524.6, 0]; _coord19 = [4318.3, 9766.3, 0]; _coord20 = [5525.3, 6980.9, 0]; _coord21 = [8345.3, 5938.1, 0]; _coord22 = [8965.8, 8137.3, 0]; _coord23 = [11050.2, 10125.1, 0]; _coord24 = [12211.9, 6532.1, 0]; _coord25 = [14295.1, 7978.3, 0]; _coord26 = [14228, 9716.9, 0]; _coord27 = [8163.8, 1860.5, 0]; _coord28 = [5426, 2953.7, 0]; _coord29 = [6501.9, 14635.3, 0]; _coord30 = [10997.7, 14732.7, 0]; _coord31 = [13156.2, 15218.8, 0]; _coord32 = [16747.6, 14517.1, 0]; _coord33 = [18994.7, 13115.2, 0]; _coord34 = [14353.1, 4289.4, 0]; _coord35 = [18321.1, 4403.4, 0]; _coord36 = [13211.1, 16013, 0]; _fin = [_coord1, _coord2, _coord3, _coord4, _coord5, _coord6, _coord7, _coord8, _coord9, _coord10, _coord11, _coord12,_coord13, _coord14, _coord15, _coord16, _coord17, _coord18, _coord19, _coord20, _coord21, _coord22, _coord23, _coord24,_coord25, _coord26, _coord27, _coord28, _coord29, _coord30, _coord31, _coord32, _coord33, _coord34, _coord35, _coord36] call BIS_fnc_selectRandom; _fin }; Link to comment Share on other sites More sharing options...
hybridfury Posted February 26, 2014 Report Share Posted February 26, 2014 For some reason any of the vehicles spawned by EMS blow up if you try to get in them. Like at the stash house mission there are 3 or 4 vehicles, one being a camo SUV. Upon getting into it it exploded. It does this on all vehicles spawned by EMS. Is this normal, anyone have any ideas? This is the error I get in my server report upon geting into an EMS spawned vehicles and it blows up: 18:42:33 "EMS: AI Bandit1_DZ was killed by HybridFury (+200 humanity, new total 13782)" 18:43:57 "CLEANUP: KILLING A HACKER HybridFury B 1-1-B:1 (HybridFury) REMOTE IN HMMWV_DZ" 18:43:57 Client: Object 4:108 (type Type_69) not found. 18:43:57 Client: Object 4:108 (type Type_70) not found. 18:43:57 Client: Object 4:108 (type Type_70) not found. 18:43:57 WARNING: Function 'name' - HybridFury is dead 18:43:57 "PDEATH: Player Died 121794246" 18:44:23 "ERROR: server_playerSync: Cannot Sync Player HybridFury [41]. Position in debug! [-7239.67,19539.3,0.245514]" 18:44:25 "get: STRING (121794246), sent: STRING (121794246)" 18:44:25 "DISCONNECT: HybridFury (121794246) Object: B 1-1-A:1 ( Any help please? Link to comment Share on other sites More sharing options...
rboos Posted February 27, 2014 Report Share Posted February 27, 2014 Wondering... Do the SARGE, DZAi and the mission bandits attack each other if they happen to run into each other? Yes, sometimes we are doing a mission and see a group of soldiers flanking and helping us.. sometimes the survivor Ai does the killing for us... sometimes a heli goes by and we hear the m240 roaring and attacking the bandits... I am already used to build in my base with the sound of firefights around. Just awesome! Link to comment Share on other sites More sharing options...
CrazyMofo Posted March 1, 2014 Report Share Posted March 1, 2014 This is the error I get in my server report upon geting into an EMS spawned vehicles and it blows up: Any help please? I am also getting this problem and haven't found a way of fixing it yet. Anyone?? Link to comment Share on other sites More sharing options...
Guest Posted March 12, 2014 Report Share Posted March 12, 2014 THX to MimiC,Torndeco,waTTe,Mochnant,deadeye2,iFear,umfufu,skynetdev for their help/fixes !! well im not really sure what ive done or how i helped but u are welcome xD ! Link to comment Share on other sites More sharing options...
Rainah Posted March 18, 2014 Report Share Posted March 18, 2014 Hello ! So i've installed this awesome script to my Epoch server, however i have a problem. Everything works but the normal (NOT the mission vehicles) vehicles despawn to their original spawn point after a server restart, how can this be? Again it is NOT the mission vehicle i'm talking about. I've reinstalled the script a million times, and i've yet to find the error. Anyone else experiencing this? Thank you ! :) Link to comment Share on other sites More sharing options...
Rainah Posted March 24, 2014 Report Share Posted March 24, 2014 You kidding me, no help for this?? Link to comment Share on other sites More sharing options...
umfufu Posted March 24, 2014 Report Share Posted March 24, 2014 You kidding me, no help for this?? Try with a clean Epoch first plz , coz the error aint from EMS (maybe u inserted a line at the wrong place) Link to comment Share on other sites More sharing options...
SilverWind252 Posted April 11, 2014 Report Share Posted April 11, 2014 Hello, Could you help me please. The lines of code you ask me to find in the install guide. I can't find at all :/ Any idea why and how can I fix it? Link to comment Share on other sites More sharing options...
umfufu Posted April 12, 2014 Report Share Posted April 12, 2014 Those line for the server part are inside @DayZ_Epoch_Server\dayz_server.pbo U need to extract them in order to change them and after that u need to repack Those for the mission are in side the folder MPmissions\DayZ_Epoch_11.Chernarus Link to comment Share on other sites More sharing options...
SilverWind252 Posted April 12, 2014 Report Share Posted April 12, 2014 Okay, I solved my code issu. It's all installed but I cannot get past the Authentication part, I tries to complete it but repeats then sends me back to the lobby? Link to comment Share on other sites More sharing options...