Jump to content

nikas455

Member
  • Content Count

    270
  • Joined

  • Last visited

About nikas455

  • Rank
    Hardened

Recent Profile Visitors

956 profile views
  1. How to add "Script.sqf" to file .hpp? Script.sqf: if (typeName (_settings select 15) == "SCALAR") then { _sMenuAddAction = player addaction["<t color='#D13B3B'>{FTG}</t> abc-small", { _this select 3 call SC_fnc_sMenuOpen }, _settings,-1,false,true,"", ""]; }; .hpp: class menuinfo : w_RscButton { idc = -1; text = "abs-small"; onButtonClick = "HERE"; x = 0.158; y = 0.57; w = 0.235; h = 0.033 * safezoneH; }; onButtonClick = ""; add here Script.sqf
  2. Infistar blocks 2D map players
  3. How to add two event at the same time? EVENT - http://epochmod.com/forum/index.php?/topic/15258-fixed-animated-crash-spawner-1051/&page=1 EVENT (working only one) EpochEvents = [["any","any","any","any",60,"animated_crash_spawner"],["any","any","any","any",30,"animated_crash_spawner2"]];
  4. How to add two event at the same time? EVENT (job only one) EpochEvents = [["any","any","any","any",60,"animated_crash_spawner"],["any","any","any","any",30,"animated_crash_spawner2"]];
  5. need remove.sqf to "Plot Manager", so that owners/builder can disassemble
  6. CleanupPlacedAfterDays = 21 how to add exclusion objects ?
  7. wai: bots lag .How to fix? http://www.youtube.com/watch?v=2KgDO5-RKDc&feature=youtu.be
  8. extDB error Unable to find extdb-conf.ini RPT extDB: [2015-Jul-27 17:41:21.704279]: ThreadID 0x00001d44: extDB: Version: 21 [2015-Jul-27 17:41:21.704279]: ThreadID 0x00001d44: extDB: Unable to find extdb-conf.ini extdb-conf.ini [Main] ;Threads = 0 ; Default Value is number of CPU Cores Detected Randomize Config File = false ;This is a legacy option to randomize config file for Arma2 Servers. Error Database Kill Server = true ;Kill ArmaServer if Database Connection Fails. [Logging] ; If u are going to disable Logging for performance reasons, grab the No-Logging Version of extdb Filter = 1 ; 2 = Default Setting, this doesn't take effect till after Config File has been loaded. ; 0 = more cpu intensive, 5 = barely anything except exception handling ; ; 0 trace ; 1 debug ; 2 info ; 3 warning ; 4 error ; 5 fatal [Example1] Type = SQLite Name = sqlite.db minSessions = 1 ; minSession Default Value = 1 ;maxSessions = 4 ; maxSession Default Value = number of Main->Threads ; u really should leave this value alone idleTime = 60 ; idleTime no Default Value yet, needs to be defined. ; idleTime is the time before a database session is stopped if not used. ; If Database Sessions are greater than minSessions [Example2] Type = SQLite Name = sqlite.db minSessions = 1 ; minSession Default Value = 1 ;maxSessions = 4 ; maxSession Default Value = number of Main->Threads ; u really should leave this value alone idleTime = 60 ; idleTime no Default Value yet, needs to be defined. ; idleTime is the time before a database session is stopped if not used. ; If Database Sessions are greater than minSessions [Database2] Type = MySQL Name = dayz_napf Username = dayz_epoch Password = dayz_epoch IP = localhost Port = 3306 minSessions = 1 idleTime = 60 compress = false
  9. where can download "Virtual Garage"(working)?thank
  10. [] 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; }; }; 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"; // гараж server_queryGarageVehicle = compile preprocessFileLineNumbers "\z\addons\dayz_server\compile\garage\server_queryGarageVehicle.sqf"; server_spawnVehicle = compile preprocessFileLineNumbers "\z\addons\dayz_server\compile\garage\server_spawnVehicle.sqf"; server_storeVehicle = compile preprocessFileLineNumbers "\z\addons\dayz_server\compile\garage\server_storeVehicle.sqf"; // гараж /* PVS/PVC - Skaronator */ server_sendToClient = compile preprocessFileLineNumbers "\z\addons\dayz_server\compile\server_sendToClient.sqf"; #include "\z\addons\dayz_server\bankzones\bankinit.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; } count 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; if ((count (units _myGroupUnit) == 0) && (_myGroupUnit != grpNull)) then { 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 && 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]; }; }; } count (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 && 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 && 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 && 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 set[count _itemTypes, _x select 0] } count getArray(missionConfigFile >> "cfgLoot" >> _iClass); } else { { _itemTypes set[count _itemTypes, _x select 0] } count getArray(configFile >> "cfgLoot" >> _iClass); }; _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","_element","_vector","_set","_vecCnt","_usedVec"]; _dir = _this select 0; _key = ""; _position = _this select 1; if((count _this) == 2) then{ { _x = _x * 10; if ( _x < 0 ) then { _x = _x * -10 }; _key = _key + str(round(_x)); } count _position; _key = _key + str(round(_dir)); }else{ _vector = []; _usedVec = false; { _element = _x; if(typeName _element == "ARRAY") then{ _vector = _element; if((count _vector) == 2)then{ if(((count (_vector select 0)) == 3) && ((count (_vector select 1)) == 3))then{ { _x = _x * 10; if ( _x < 0 ) then { _x = _x * -10 }; _key = _key + str(round(_x)); } count _position; _vecCnt = 0; { _set = _x; { _vecCnt = _vecCnt + (round (_x * 100)); } foreach _set; } foreach _vector; if(_vecCnt < 0)then{ _vecCnt = ((_vecCnt * -1) * 3); }; _key = _key + str(_vecCnt); _usedVec = true; }; }; }; } count _this; if!(_usedVec) then{ { _x = _x * 10; if ( _x < 0 ) then { _x = _x * -10 }; _key = _key + str(round(_x)); } count _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)); } count _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; }; currentInvites = []; publicVariable "currentInvites"; dayz_perform_purge = { if(!isNull(_this)) then { _group = group _this; _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; if ((count (units _group) == 0) && (_group != grpNull)) then { deleteGroup _group; }; }; }; 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; } count _objWpnTypes; // add backpack magazine items _objWpnTypes = _backpackMag select 0; _objWpnQty = _backpackMag select 1; _countr = 0; { _holder addMagazineCargoGlobal [_x,(_objWpnQty select _countr)]; _countr = _countr + 1; } count _objWpnTypes; }; }; // add weapons { _holder addWeaponCargoGlobal [_x, 1]; } count _weapons; // add mags { _holder addMagazineCargoGlobal [_x, 1]; } count _magazines; _group = group _this; _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; if ((count (units _group) == 0) && (_group != grpNull)) then { deleteGroup _group; }; // _this = nil; }; dayz_removePlayerOnDisconnect = { if(!isNull(_this)) then { _group = group _this; _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; } count _allDead; if (_delQtyZ > 0 || _delQtyP > 0) then { _qty = count _allDead; diag_log (format["CLEANUP: Deleted %1 players && %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) && (_x != grpNull)) then { deleteGroup _x; }; sleep 0.001; } count 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 (!((isNil "_x") || {(isNull _x)})) then { if(vehicle _x != _x && !(vehicle _x in PVDZE_serverObjectMonitor) && (isPlayer _x) && !((typeOf vehicle _x) in DZE_safeVehicle)) then { 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; } count 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; } count _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); { if (!isNull _x) then { _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) && (alive _x) } count(_x nearEntities[["CAManBase", "AllVehicles"], 130]); if (_nearby == 0) then{ deleteVehicle _x; sleep 0.025; _delQty = _delQty + 1; }; }; }; }; }; sleep 0.001; } count _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) && (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; } count _missonAnimals; if (_delQtyAnimal > 0) then { _qty = count _missonAnimals; diag_log (format["CLEANUP: Deleted %1 Animals out of %2",_delQtyAnimal,_qty]); }; }; server_logUnlockLockEvent = { private["_player", "_obj", "_objectID", "_objectUID", "_statusText", "_status"]; _player = _this select 0; _obj = _this select 1; _status = _this select 2; if (!isNull(_obj)) then { _objectID = _obj getVariable["ObjectID", "0"]; _objectUID = _obj getVariable["ObjectUID", "0"]; _statusText = "UNLOCKED"; if (_status) then { [_obj, "gear"] call server_updateObject; _statusText = "LOCKED"; }; diag_log format["SAFE %5: ID:%1 UID:%2 BY %3(%4)", _objectID, _objectUID, (name _player), (getPlayerUID _player), _statusText]; }; }; //DB "extDB" callExtension "9:DATABASE:Database2"; "extDB" callExtension format["9:ADD:DB_RAW_V2:%1",1]; "extDB" callExtension "9:LOCK";
  11. Vehicle Garage error save database vehicle RPT: 13:00:34 Error in expression <pipe1 = call compile _pipe; _return = ((_pipe1 select 1) select 1); PVDZE_quer> 13:00:34 Error position: <_pipe1 select 1) select 1); PVDZE_quer> 13:00:34 Error Undefined variable in expression: _pipe1 13:00:34 File z\addons\dayz_server\compile\garage\server_queryGarageVehicle.sqf, line 12 server_queryGarageVehicle.sqf: private ["_player","_query","_key","_pipe","_queryResult","_return","_clientID","_objectID","_objectUID","_playerUID"]; _player = _this select 0; _clientID = owner _player; _playerUID = getPlayerUID _player; _query = format["SELECT id, classname FROM garage WHERE PlayerUID='%1'",_playerUID]; _pipe = "extDB" callExtension format["0:1:%1",_query]; _pipe1 = call compile _pipe; _return = ((_pipe1 select 1) select 1); PVDZE_queryGarageVehicleResult = _return; if(!isNull _player) then { _clientID publicVariableClient "PVDZE_queryGarageVehicleResult"; }; http://www.youtube.com/watch?v=hjurrqcmlLg&feature=youtu.be
  12. Vehicle DB is not saved. table : CREATE TABLE `garage` ( `id` int(11) NOT NULL AUTO_INCREMENT, `PlayerUID` varchar(20) NOT NULL DEFAULT '0', `Classname` varchar(50) DEFAULT NULL, `Datestamp` timestamp NULL DEFAULT CURRENT_TIMESTAMP, `CharacterID` int(11) unsigned NOT NULL DEFAULT '0', `Inventory` mediumtext, `Hitpoints` mediumtext, `Fuel` double(13,5) NOT NULL DEFAULT '1.00000', `Damage` double(13,5) NOT NULL DEFAULT '0.00000', `Colour` varchar(50) NOT NULL, `Colour2` varchar(50) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=315 DEFAULT CHARSET=latin1; RPT: 13:27:56 File z\addons\dayz_server\compile\garage\server_queryGarageVehicle.sqf, line 12 server_queryGarageVehicle: private ["_player","_query","_key","_pipe","_queryResult","_return","_clientID","_objectID","_objectUID","_playerUID"]; _player = _this select 0; _clientID = owner _player; _playerUID = getPlayerUID _player; _query = format["SELECT id, classname FROM garage WHERE PlayerUID='%1'",_playerUID]; _pipe = "extDB" callExtension format["0:1:%1",_query]; _pipe1 = call compile _pipe; _return = ((_pipe1 select 1) select 1); PVDZE_queryGarageVehicleResult = _return; if(!isNull _player) then { _clientID publicVariableClient "PVDZE_queryGarageVehicleResult"; };
  13. class Life_RscListBox { style = 16; idc = -1; type = 5; w = 0.275; h = 0.04; font = "Zeppelin32"; colorSelect[] = {1, 1, 1, 1}; colorText[] = {1, 1, 1, 1}; colorBackground[] = {0.28,0.28,0.28,0.28}; colorSelect2[] = {1, 1, 1, 1}; colorSelectBackground[] = {0.95, 0.95, 0.95, 0.5}; colorSelectBackground2[] = {1, 1, 1, 0.5}; colorScrollbar[] = {0.2, 0.2, 0.2, 1}; arrowFull = "Scripts\Gold_Coin_system\Gui\arrowFull_ca.paa"; arrowEmpty = "Scripts\Gold_Coin_system\Gui\arrowEmpty_ca.paa"; wholeHeight = 0.45; rowHeight = 0.04; color[] = {0.7, 0.7, 0.7, 1}; colorActive[] = {0,0,0,1}; colorDisabled[] = {0,0,0,0.3}; sizeEx = 0.023; maxHistoryDelay = 1; autoScrollSpeed = -1; autoScrollDelay = 5; autoScrollRewind = 0; tooltipColorText[] = {1,1,1,1}; tooltipColorBox[] = {1,1,1,1}; tooltipColorShade[] = {0,0,0,0.65}; class ListScrollBar: Life_RscScrollBar { color[] = {1,1,1,1}; autoScrollEnabled = 1; }; soundPush[] = { "", 0, 1 }; soundEnter[] = { "", 0, 1 }; soundClick[] ={ "", 0, 1 }; soundEscape[] ={ "", 0, 1 }; sound[] ={ "", 0, 1 }; };
×
×
  • Create New...