NoxSicarius Posted March 22, 2014 Author Report Share Posted March 22, 2014 what does this Admin Mode? i dont understand what your wrote, does it mean i can disable and enable admin tool ingame? No it essentially lumps some of the options together. Now instead of enabling 5 options every time you want to perform admin actions such as turning off grass, turning on god mode, vehicle god mode, and some other options you can now do it all at once. By default it turns on vehicle god mode, god mode, grass off, player esp, and infinite ammo. Link to comment Share on other sites More sharing options...
tkdmaster Posted March 22, 2014 Report Share Posted March 22, 2014 Great update! Took me a minute to figure out the admin mode, but it all works beautifully! Thanks for all your hard work on this :) Link to comment Share on other sites More sharing options...
Snakeyes Posted March 22, 2014 Report Share Posted March 22, 2014 The major update works like a charm! Thank you for your hard work and diligence. :) Link to comment Share on other sites More sharing options...
NoxSicarius Posted March 22, 2014 Author Report Share Posted March 22, 2014 Great update! Took me a minute to figure out the admin mode, but it all works beautifully! Thanks for all your hard work on this :) The major update works like a charm! Thank you for your hard work and diligence. :) Glad you guys like it. I noticed I forgot to commit the information on how to customize admin mode. I will have that up in a day or so. You simply go into AdminMode.sqf or modMode.sqf and whatever you want default on you set = true and whatever you want default off you set = false in the list of variables at the top of the file. Ex.: Default on: if (isNil "godMode") then {godMode = true;}; Default off: if (isNil "godMode") then {godMode = false;}; Link to comment Share on other sites More sharing options...
tkdmaster Posted March 23, 2014 Report Share Posted March 23, 2014 hm, is there a way to add other crash types to the enhanced ESP tool? I use the animated crashes script addon and it adds in mv-22's, a10's, and all manner of plane crashes, is there a way to add these to the ESP so they would show up like the UH1H crashes? Link to comment Share on other sites More sharing options...
Hux Posted March 23, 2014 Report Share Posted March 23, 2014 server_functions.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; }; }; 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"; //Creates the object in DB server_deleteObj = compile preprocessFileLineNumbers "\z\addons\dayz_server\compile\server_deleteObj.sqf"; //Removes the object from the DB server_swapObject = compile preprocessFileLineNumbers "\z\addons\dayz_server\compile\server_swapObject.sqf"; server_publishVeh = compile preprocessFileLineNumbers "\z\addons\dayz_server\compile\server_publishVehicle.sqf"; // Custom to add vehicles server_publishVeh2 = compile preprocessFileLineNumbers "\z\addons\dayz_server\compile\server_publishVehicle2.sqf"; // Custom to add vehicles server_publishVeh3 = compile preprocessFileLineNumbers "\z\addons\dayz_server\compile\server_publishVehicle3.sqf"; // Custom to add vehicles 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"; zombie_findOwner = compile preprocessFileLineNumbers "\z\addons\dayz_server\compile\zombie_findOwner.sqf"; server_updateNearbyObjects = compile preprocessFileLineNumbers "\z\addons\dayz_server\compile\server_updateNearbyObjects.sqf"; server_spawnCrashSite = compile preprocessFileLineNumbers "\z\addons\dayz_server\compile\server_spawnCrashSite.sqf"; server_handleZedSpawn = compile preprocessFileLineNumbers "\z\addons\dayz_server\compile\server_handleZedSpawn.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"; 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 }; vehicle_handleServerKilled = { private["_unit","_killer"]; _unit = _this select 0; _killer = _this select 1; [_unit, "killed"] call server_updateObject; _unit removeAllMPEventHandlers "MPKilled"; _unit removeAllEventHandlers "Killed"; _unit removeAllEventHandlers "HandleDamage"; _unit removeAllEventHandlers "GetIn"; _unit removeAllEventHandlers "GetOut"; }; 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; //diag_log format ["DEBUG: Checking if Object: %1 is allowed published by %2", _object, _playername]; 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"]; //diag_log ("ATTEMPT WRITE: " + _this); _data = "HiveExt" callExtension _this; //diag_log ("WRITE: " +str(_data)); }; server_hiveReadWrite = { private["_key","_resultArray","_data"]; _key = _this; //diag_log ("ATTEMPT READ/WRITE: " + _key); _data = "HiveExt" callExtension _key; // diag_log ("READ/WRITE: " +str(_data)); _resultArray = call compile format ["%1",_data]; _resultArray }; server_hiveReadWriteLarge = { private["_key","_resultArray","_data"]; _key = _this; //diag_log ("ATTEMPT READ/WRITE: " + _key); _data = "HiveExt" callExtension _key; // diag_log ("READ/WRITE: " +str(_data)); _resultArray = call compile _data; _resultArray }; 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]; //diag_log ("HIVE: WRITE: "+ str(_key) + " / " + _characterID); _key call server_hiveWrite; }; //onPlayerConnected "[_uid,_name] spawn server_onPlayerConnect;"; onPlayerDisconnected "[_uid,_name] call server_onPlayerDisconnect;"; // Setup globals allow overwrite from init.sqf 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 (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) then { 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 = [] + ((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); }; // fill array with classes and positions [class,pos,dir] // DZE_LocalRoadBlocks set [count DZE_LocalRoadBlocks,[_spawnveh,_position,round(random 360)]]; //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]; }; }; }; 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; }; 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 ["_year","_month","_day","_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 { //date setup //_year = _date select 0; //_month = _date select 1; //_day = _date select 2; _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"]; if(!isNil "DZE_DYN_cleandead") exitWith { }; DZE_DYN_cleandead = true; _allDead = allDead; _delQtyZ = 0; _delQtyP = 0; { if (local _x) then { if (_x isKindOf "zZombie_Base") then { _x call dayz_perform_purge; sleep 0.025; _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.001; } 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]); }; DZE_DYN_cleandead = nil; }; server_spawnCleanNull = { private ["_delQtyNull"]; _delQtyNull = 0; { if (isNull _x) then { //diag_log (format["CLEANUP: Purge performed on null OBJ: %1",_x]); _x call dayz_perform_purge; sleep 1; _delQtyNull = _delQtyNull + 1; }; sleep 0.001; } forEach (allMissionObjects ""); if (_delQtyNull > 0) then { diag_log (format["CLEANUP: Deleted %1 null objects",_delQtyNull]); }; }; 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(!isNil "DZE_DYN_cleanLoot") exitWith { }; 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"]; if(!isNil "DZE_DYN_cleanAnimals") exitWith { }; DZE_DYN_cleanAnimals = true; _missonAnimals = entities "CAAnimalBase"; _delQtyAnimal = 0; { if (local _x) then { _x call dayz_perform_purge; sleep 0.025; _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.025; _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]); }; DZE_DYN_cleanAnimals = nil; }; Link to comment Share on other sites More sharing options...
Snakeyes Posted March 23, 2014 Report Share Posted March 23, 2014 I played with the new menu system for quite a while tonight. I changed the AdminMode.sqf so all the defaults are set to false. That way nothing like god mode, esp, etc. is already on when I get into the game. I noticed that the "All Weapons and Items" Crate is missing quite a few of the weapons it had prior to the update. Among my favorites are the Mk17 EGLM RCO and the M110 TWS. I tried the Weapon Kits option and it deleted everything on my character more than once. I think it may be caused by the next sub menu for Weapon Kits. The option at the top of the menu is Delete all Gear or something like that. Mouse lag? I dunno. Link to comment Share on other sites More sharing options...
tkdmaster Posted March 23, 2014 Report Share Posted March 23, 2014 Hm, is there any way to add static weapons to the list of spawnables? i'm specifically looking to spawn in the AA guns, but not a clue how to do it myself.. :( Link to comment Share on other sites More sharing options...
Smellfinger Posted March 23, 2014 Report Share Posted March 23, 2014 Need some help, when i try to join my server it says just: Wait for Host, and i cant connect to my server? nay help? Link to comment Share on other sites More sharing options...
chucky_xxl Posted March 23, 2014 Report Share Posted March 23, 2014 i have updated. but when i join the server i become a trigger with" hello (english") and a black screen i changed in init.sqf after //anti Hack this: [] execVM "admintools\AdminList.sqf"; if ( !((getPlayerUID player) in AdminList) && !((getPlayerUID player) in ModList) && !((getPlayerUID player) in tempList)) then { then i delete this: // Epoch Admin Tools AdminList = [ "999999999", // <Admin In-Game Name> "999999999" // <Admin In-Game Name> ]; ModList = [ "999999999", // <Admin In-Game Name> "999999999" // <Admin In-Game Name> ]; from the ini.sqf then i replace the complete admintools folder with the new files. and than i have this problem with blackscreen end the "hello (English)" message Link to comment Share on other sites More sharing options...
1R0NS1DE Posted March 23, 2014 Report Share Posted March 23, 2014 spawning the all weapons/items crate and it has no weapons in it at all it also gives an error it also appears that if we spawn anything in it will lag out the server so much that no one will be able to join, or even do anything in the server until the admins log out of the server Link to comment Share on other sites More sharing options...
Pro_Speedy Posted March 23, 2014 Report Share Posted March 23, 2014 Would love the Enhanced ESP to be rewritten, BluePheonix has the Alt click teleport and no lag and other things but doesn't have AI show and safes ect. Could you make changes to it? Like the new update BTW Link to comment Share on other sites More sharing options...
NoxSicarius Posted March 23, 2014 Author Report Share Posted March 23, 2014 I played with the new menu system for quite a while tonight. I changed the AdminMode.sqf so all the defaults are set to false. That way nothing like god mode, esp, etc. is already on when I get into the game. I noticed that the "All Weapons and Items" Crate is missing quite a few of the weapons it had prior to the update. Among my favorites are the Mk17 EGLM RCO and the M110 TWS. I tried the Weapon Kits option and it deleted everything on my character more than once. I think it may be caused by the next sub menu for Weapon Kits. The option at the top of the menu is Delete all Gear or something like that. Mouse lag? I dunno. The weapon kits always did that. I am working on fixing that by using a command that checks for space in inventory first. As for the missing gear in the boxes the only change to that box is the removal of the baseball bat. I will have to look into why some of the weapons don't spawn in it. It has always been missing some of the epoch weapons though. Hm, is there any way to add static weapons to the list of spawnables? i'm specifically looking to spawn in the AA guns, but not a clue how to do it myself.. :( Which list? Need some help, when i try to join my server it says just: Wait for Host, and i cant connect to my server? nay help? Look over your edits (try reinstalling the tools) something you did is not correct. Maybe you put a comma in the wrong spot or are missing a ; Link to comment Share on other sites More sharing options...
NoxSicarius Posted March 23, 2014 Author Report Share Posted March 23, 2014 i have updated. but when i join the server i become a trigger with" hello (english") and a black screen i changed in init.sqf after //anti Hack this: [] execVM "admintools\AdminList.sqf"; if ( !((getPlayerUID player) in AdminList) && !((getPlayerUID player) in ModList) && !((getPlayerUID player) in tempList)) then { then i delete this: // Epoch Admin Tools AdminList = [ "999999999", // <Admin In-Game Name> "999999999" // <Admin In-Game Name> ]; ModList = [ "999999999", // <Admin In-Game Name> "999999999" // <Admin In-Game Name> ]; from the ini.sqf then i replace the complete admintools folder with the new files. and than i have this problem with blackscreen end the "hello (English)" message Do not do this. Follow the ENTIRE readme again. Skipping steps and doing only what you think needs to be changed can cause these problems. You may have missed something somewhere. Link to comment Share on other sites More sharing options...
NoxSicarius Posted March 23, 2014 Author Report Share Posted March 23, 2014 spawning the all weapons/items crate and it has no weapons in it at all it also gives an error it also appears that if we spawn anything in it will lag out the server so much that no one will be able to join, or even do anything in the server until the admins log out of the server Apparently this is caused from an attempted fix with the bat. Its causing an incorrect read of the assets. Fixing it soon. If I can't get a fix for it the baseball bat will have to be readded to the box. Thanks for the picture with the error that is a big help. Link to comment Share on other sites More sharing options...
NoxSicarius Posted March 23, 2014 Author Report Share Posted March 23, 2014 Would love the Enhanced ESP to be rewritten, BluePheonix has the Alt click teleport and no lag and other things but doesn't have AI show and safes ect. Could you make changes to it? Like the new update BTW This is on my to-do list. It will take a while to get it fixed correctly. Will most likely copy and modify bluephoenix to work correctly. The click teleport will be returning too (I miss it as well). I will be setting teleports to the F keys so all you do is press F1 to teleport somewhere on the map :D hm, is there a way to add other crash types to the enhanced ESP tool? I use the animated crashes script addon and it adds in mv-22's, a10's, and all manner of plane crashes, is there a way to add these to the ESP so they would show up like the UH1H crashes? There is a way. You would have to find out exactly what the crash site variables are to do it though. If I knew those I could help. Link to comment Share on other sites More sharing options...
Pro_Speedy Posted March 23, 2014 Report Share Posted March 23, 2014 Ok thanks Nox! Link to comment Share on other sites More sharing options...
NoxSicarius Posted March 23, 2014 Author Report Share Posted March 23, 2014 server_functions.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; }; }; 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"; //Creates the object in DB server_deleteObj = compile preprocessFileLineNumbers "\z\addons\dayz_server\compile\server_deleteObj.sqf"; //Removes the object from the DB server_swapObject = compile preprocessFileLineNumbers "\z\addons\dayz_server\compile\server_swapObject.sqf"; server_publishVeh = compile preprocessFileLineNumbers "\z\addons\dayz_server\compile\server_publishVehicle.sqf"; // Custom to add vehicles server_publishVeh2 = compile preprocessFileLineNumbers "\z\addons\dayz_server\compile\server_publishVehicle2.sqf"; // Custom to add vehicles server_publishVeh3 = compile preprocessFileLineNumbers "\z\addons\dayz_server\compile\server_publishVehicle3.sqf"; // Custom to add vehicles 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"; zombie_findOwner = compile preprocessFileLineNumbers "\z\addons\dayz_server\compile\zombie_findOwner.sqf"; server_updateNearbyObjects = compile preprocessFileLineNumbers "\z\addons\dayz_server\compile\server_updateNearbyObjects.sqf"; server_spawnCrashSite = compile preprocessFileLineNumbers "\z\addons\dayz_server\compile\server_spawnCrashSite.sqf"; server_handleZedSpawn = compile preprocessFileLineNumbers "\z\addons\dayz_server\compile\server_handleZedSpawn.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"; 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 }; vehicle_handleServerKilled = { private["_unit","_killer"]; _unit = _this select 0; _killer = _this select 1; [_unit, "killed"] call server_updateObject; _unit removeAllMPEventHandlers "MPKilled"; _unit removeAllEventHandlers "Killed"; _unit removeAllEventHandlers "HandleDamage"; _unit removeAllEventHandlers "GetIn"; _unit removeAllEventHandlers "GetOut"; }; 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; //diag_log format ["DEBUG: Checking if Object: %1 is allowed published by %2", _object, _playername]; 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"]; //diag_log ("ATTEMPT WRITE: " + _this); _data = "HiveExt" callExtension _this; //diag_log ("WRITE: " +str(_data)); }; server_hiveReadWrite = { private["_key","_resultArray","_data"]; _key = _this; //diag_log ("ATTEMPT READ/WRITE: " + _key); _data = "HiveExt" callExtension _key; // diag_log ("READ/WRITE: " +str(_data)); _resultArray = call compile format ["%1",_data]; _resultArray }; server_hiveReadWriteLarge = { private["_key","_resultArray","_data"]; _key = _this; //diag_log ("ATTEMPT READ/WRITE: " + _key); _data = "HiveExt" callExtension _key; // diag_log ("READ/WRITE: " +str(_data)); _resultArray = call compile _data; _resultArray }; 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]; //diag_log ("HIVE: WRITE: "+ str(_key) + " / " + _characterID); _key call server_hiveWrite; }; //onPlayerConnected "[_uid,_name] spawn server_onPlayerConnect;"; onPlayerDisconnected "[_uid,_name] call server_onPlayerDisconnect;"; // Setup globals allow overwrite from init.sqf 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 (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) then { 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 = [] + ((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); }; // fill array with classes and positions [class,pos,dir] // DZE_LocalRoadBlocks set [count DZE_LocalRoadBlocks,[_spawnveh,_position,round(random 360)]]; //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]; }; }; }; 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; }; 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 ["_year","_month","_day","_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 { //date setup //_year = _date select 0; //_month = _date select 1; //_day = _date select 2; _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"]; if(!isNil "DZE_DYN_cleandead") exitWith { }; DZE_DYN_cleandead = true; _allDead = allDead; _delQtyZ = 0; _delQtyP = 0; { if (local _x) then { if (_x isKindOf "zZombie_Base") then { _x call dayz_perform_purge; sleep 0.025; _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.001; } 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]); }; DZE_DYN_cleandead = nil; }; server_spawnCleanNull = { private ["_delQtyNull"]; _delQtyNull = 0; { if (isNull _x) then { //diag_log (format["CLEANUP: Purge performed on null OBJ: %1",_x]); _x call dayz_perform_purge; sleep 1; _delQtyNull = _delQtyNull + 1; }; sleep 0.001; } forEach (allMissionObjects ""); if (_delQtyNull > 0) then { diag_log (format["CLEANUP: Deleted %1 null objects",_delQtyNull]); }; }; 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(!isNil "DZE_DYN_cleanLoot") exitWith { }; 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"]; if(!isNil "DZE_DYN_cleanAnimals") exitWith { }; DZE_DYN_cleanAnimals = true; _missonAnimals = entities "CAAnimalBase"; _delQtyAnimal = 0; { if (local _x) then { _x call dayz_perform_purge; sleep 0.025; _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.025; _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]); }; DZE_DYN_cleanAnimals = nil; }; First please modify your post to use spoiler tags: [spo iler] (Your .sqf here) [/spoi ler] Remove the space from both spoilers so it will work. This will make it so the post doesn't take up the entire web page. You need to download a new server.pbo. Yours is missing all kinds of information. Your cleanup is missing, your check hackers function is missing, where did you get this file? Did it come with your server rental? What rental? I would download a clean server.pbo from epoch website and THEN redo all the changes required. It will work after that. Just so you know if you don't make the edit in the server_functions.sqf that you have, the tool swill work fine, so long as the server runs correctly, but you should know that you are missing important items int hat sqf. I would personally replace the entire pbo. Link to comment Share on other sites More sharing options...
NoxSicarius Posted March 23, 2014 Author Report Share Posted March 23, 2014 Ok thanks Nox! NP, by the way latest fix I have the skins not deleting backpacks :D, just one small bug to iron out that REALLY does not want to friken fix. It works perfectly, but if you have no backpack it pops up an error dialog that I don't want to pop up. It still works, but I don't want that error to show. Link to comment Share on other sites More sharing options...
Hux Posted March 23, 2014 Report Share Posted March 23, 2014 Ok, I downloaded this server file: https://github.com/vbawol/DayZ-Epoch/blob/master/Server%20Files/%40DayZ_Epoch_Server/addons/dayz_server.pbo & it's different from my server file. Mine doesn't have the line: if(vehicle _x != _x && !(vehicle _x in PVDZE_serverObjectMonitor) && (isPlayer _x) && !((typeOf vehicle _x) in DZE_safeVehicle)) then { I had both init/server_functions.sqf opened found the line in the downloaded one & used search function for mine but there is no line like this in my init/server_functions.sqf. I am running version 1.0.3.1 Could it be a version problem? Thank you. Link to comment Share on other sites More sharing options...
NoxSicarius Posted March 23, 2014 Author Report Share Posted March 23, 2014 Ok, I downloaded this server file: https://github.com/vbawol/DayZ-Epoch/blob/master/Server%20Files/%40DayZ_Epoch_Server/addons/dayz_server.pbo & it's different from my server file. Mine doesn't have the line: if(vehicle _x != _x && !(vehicle _x in PVDZE_serverObjectMonitor) && (isPlayer _x) && !((typeOf vehicle _x) in DZE_safeVehicle)) then { I had both init/server_functions.sqf opened found the line in the downloaded one & used search function for mine but there is no line like this in my init/server_functions.sqf. I am running version 1.0.3.1 Could it be a version problem? Thank you. That would be the cause. Any specific reason as to why you want to run an old epoch? I know some people do it but I don't know why. Do the vehicles work fine without adding the exception in? If not I will see what I can do to fix it. Link to comment Share on other sites More sharing options...
Hux Posted March 23, 2014 Report Share Posted March 23, 2014 That would be the cause. Any specific reason as to why you want to run an old epoch? I know some people do it but I don't know why. Do the vehicles work fine without adding the exception in? If not I will see what I can do to fix it. I've been unable to update to 1.0.4.2 do to issues with Dayz.st & Epoch. It seems to have something to do with the instaaction.sqf which causes the server to restart every few minutes by it self. I've tried a few suggested solutions such as using the instaaction.sqf from version 1.0.3.1 for the 1.0.4.2 update. (This means losing my admin map/tool). No solutions have worked for me. Thanks for the reply. Link to comment Share on other sites More sharing options...
bonkerz Posted March 23, 2014 Report Share Posted March 23, 2014 spawning the all weapons/items crate and it has no weapons in it at all it also gives an error it also appears that if we spawn anything in it will lag out the server so much that no one will be able to join, or even do anything in the server until the admins log out of the server I also get this error and I've also notice that vehicle god mode does not disable. Awesome work as usual, errors I found before work fine now. Thanks Link to comment Share on other sites More sharing options...
Hux Posted March 23, 2014 Report Share Posted March 23, 2014 First please modify your post to use spoiler tags: [spo iler] (Your .sqf here) [/spoi ler] Remove the space from both spoilers so it will work. This will make it so the post doesn't take up the entire web page. You need to download a new server.pbo. Yours is missing all kinds of information. Your cleanup is missing, your check hackers function is missing, where did you get this file? Did it come with your server rental? What rental? I would download a clean server.pbo from epoch website and THEN redo all the changes required. It will work after that. Just so you know if you don't make the edit in the server_functions.sqf that you have, the tool swill work fine, so long as the server runs correctly, but you should know that you are missing important items int hat sqf. I would personally replace the entire pbo. My server file is from Dayz.st hosting. It's the default server pbo. I didn't know I could put different server pbo in there...I will try your suggestion. Thank you for the info. BTW, sorry for not using the spoiler line for my pbo code...I think I got it edited right now... Link to comment Share on other sites More sharing options...
NoxSicarius Posted March 23, 2014 Author Report Share Posted March 23, 2014 I also get this error and I've also notice that vehicle god mode does not disable. Awesome work as usual, errors I found before work fine now. Thanks Really? So you get that error when using the all weapons crate? Maybe I committed something incorrectly. I am going to go take a full look at the code. My server code and commit code are a little different so maybe I missed something. I will update this post after I check. EDIT: Well my baseball bat fix is the screwup. It worked for me a few times, but just causes errors now. I will have to find a different fix to it. My server file is from Dayz.st hosting. It's the default server pbo. I didn't know I could put different server pbo in there...I will try your suggestion. Thank you for the info. BTW, sorry for not using the spoiler line for my pbo code...I think I got it edited right now... Save a backup of the old one to be safe. If all fails you can always just reinstall all your edits on a new server build with the latest update (If you really want the newest update). Let me know how it goes. Link to comment Share on other sites More sharing options...
Recommended Posts
Please sign in to comment
You will be able to leave a comment after signing in
Sign In Now