Search the Community
Showing results for tags 'safe'.
Found 27 results
-
Outdated, already built into Epoch 1.0.7 Hi guys, Quite a few admins asked me to release my Change Code script so here it is, It comes with BattlEye filters, too. This will allow players to set the code on placement/upgrade of doors, lockboxes and safes as well as changing them after they are placed. https://github.com/oiad/changeCode
- 1 reply
-
- change code
- change
- (and 4 more)
-
Hi, Here's a simple safe zone relocation script for vehicles. Simple relocate only safe zone script. Extremely quick and low overhead since we're only scanning the safe zone array instead of every vehicle. Uses the Epoch DZE_SafeZonePosArray for convenience. Install instructions and download link: https://github.com/oiad/safeZoneRelocate
-
Hello everyone. I would like to ask for help regarding a problem I have been having on my server. Items stored in the vault are not being stored in the SQL database. I have tested with the safe and the lockbox and both are not working but with the tent it works and saves the items in the database after the server restart. ArmA2OA.RPT: https://pastebin.com/X2cT7BBU arma2oaserve.RPT: https://pastebin.com/rqFNGbDy server_log.txt: https://pastebin.com/ZVWAzgNP Please help me. My players do not want to stay on the server because of this and if I remove the safe and leave only the tent (which is what saves the items) they will cry hahaha
-
Hi, since the 0.3.6 update, accessing safes and lockboxes seems to be random. Running version 0.3.6.024 Sometimes you can, sometimes you can't. When you can't, you only get the examine option which does nothing. Can't seem to work out the difference between when it works or not. have tried unlocking everything around etc. Doesn't seem to make a difference.
-
wheel safe i cannot see anything i cannot unlock :( plaease help me.... this is my fn_selfActions scriptName "Functions\misc\fn_selfActions.sqf"; /*********************************************************** ADD ACTIONS FOR SELF - Function - [] call fnc_usec_selfActions; ************************************************************/ private ["_isWreckBuilding","_temp_keys","_magazinesPlayer","_isPZombie","_vehicle","_inVehicle","_hasFuelE","_hasRawMeat","_hasKnife","_hasToolbox","_onLadder","_nearLight","_canPickLight","_canDo","_text","_isHarvested","_isVehicle","_isVehicletype","_isMan","_traderType","_ownerID","_isAnimal","_isDog","_isZombie","_isDestructable","_isTent","_isFuel","_isAlive","_Unlock","_lock","_buy","_dogHandle","_lieDown","_warn","_hastinitem","_allowedDistance","_menu","_menu1","_humanity_logic","_low_high","_cancel","_metals_trader","_traderMenu","_isWreck","_isRemovable","_isDisallowRepair","_rawmeat","_humanity","_speed","_dog","_hasbottleitem","_isAir","_isShip","_playersNear","_findNearestGens","_findNearestGen","_IsNearRunningGen","_cursorTarget","_isnewstorage","_itemsPlayer","_ownerKeyId","_typeOfCursorTarget","_hasKey","_oldOwner","_combi","_key_colors","_player_deleteBuild","_player_flipveh","_player_lockUnlock_crtl","_player_butcher","_player_studybody","_player_cook","_player_boil","_hasFuelBarrelE","_hasHotwireKit","_player_SurrenderedGear","_isSurrendered","_isModular","_isModularDoor","_ownerKeyName","_temp_keys_names","_hasAttached","_allowTow","_liftHeli","_found","_posL","_posC","_height","_liftHelis","_attached","_playerUID","_characterID","_plotDistance","_PlotsNear", "_classname","_isowner"]; if (DZE_ActionInProgress) exitWith {}; // Do not allow if any script is running. _vehicle = vehicle player; _isPZombie = player isKindOf "PZombie_VB"; _inVehicle = (_vehicle != player); _onLadder = (getNumber (configFile >> "CfgMovesMaleSdr" >> "States" >> (animationState player) >> "onLadder")) == 1; _canDo = (!r_drag_sqf && !r_player_unconscious && !_onLadder); // Krixes Self Bloodbag _mags = magazines player; if ("ItemBloodbag" in _mags) then { hasBagItem = true; } else { hasBagItem = false;}; if((speed player <= 1) && hasBagItem && _canDo) then { if (s_player_selfBloodbag < 0) then { s_player_selfBloodbag = player addaction[("<t color=""#c70000"">" + ("Self Bloodbag") +"</t>"),"custom\player_selfbloodbag.sqf","",5,false,true,"", ""]; }; } else { player removeAction s_player_selfBloodbag; s_player_selfBloodbag = -1; }; _nearLight = nearestObject [player,"LitObject"]; _canPickLight = false; if (!isNull _nearLight) then { if (_nearLight distance player < 4) then { _canPickLight = isNull (_nearLight getVariable ["owner",objNull]); }; }; //Grab Flare if (_canPickLight && !dayz_hasLight && !_isPZombie) then { if (s_player_grabflare < 0) then { _text = getText (configFile >> "CfgAmmo" >> (typeOf _nearLight) >> "displayName"); s_player_grabflare = player addAction [format[localize "str_actions_medical_15",_text], "\z\addons\dayz_code\actions\flare_pickup.sqf",_nearLight, 1, false, true, "", ""]; s_player_removeflare = player addAction [format[localize "str_actions_medical_17",_text], "\z\addons\dayz_code\actions\flare_remove.sqf",_nearLight, 1, false, true, "", ""]; }; } else { player removeAction s_player_grabflare; player removeAction s_player_removeflare; s_player_grabflare = -1; s_player_removeflare = -1; }; if (DZE_HeliLift) then { _hasAttached = _vehicle getVariable["hasAttached",false]; if(_inVehicle && (_vehicle isKindOf "Air") && ((([_vehicle] call FNC_getPos) select 2) < 30) && (speed _vehicle < 5) && (typeName _hasAttached == "OBJECT")) then { if (s_player_heli_detach < 0) then { dayz_myLiftVehicle = _vehicle; s_player_heli_detach = dayz_myLiftVehicle addAction ["Detach Vehicle","\z\addons\dayz_code\actions\player_heliDetach.sqf",[dayz_myLiftVehicle,_hasAttached],2,false,true,"",""]; }; } else { dayz_myLiftVehicle removeAction s_player_heli_detach; s_player_heli_detach = -1; }; }; if(DZE_HaloJump) then { if(_inVehicle && (_vehicle isKindOf "Air") && ((([_vehicle] call FNC_getPos) select 2) > 400)) then { if (s_halo_action < 0) then { DZE_myHaloVehicle = _vehicle; s_halo_action = DZE_myHaloVehicle addAction [localize "STR_EPOCH_ACTIONS_HALO","\z\addons\dayz_code\actions\halo_jump.sqf",[],2,false,true,"",""]; }; } else { DZE_myHaloVehicle removeAction s_halo_action; s_halo_action = -1; }; }; if (!DZE_ForceNameTagsOff) then { if (s_player_showname < 0 && !_isPZombie) then { if (DZE_ForceNameTags) then { s_player_showname = 1; player setVariable["DZE_display_name",true,true]; } else { s_player_showname = player addAction [localize "STR_EPOCH_ACTIONS_NAMEYES", "\z\addons\dayz_code\actions\display_name.sqf",true, 0, true, false, "",""]; s_player_showname1 = player addAction [localize "STR_EPOCH_ACTIONS_NAMENO", "\z\addons\dayz_code\actions\display_name.sqf",false, 0, true, false, "",""]; }; }; }; // ---------------------------------------SUICIDE START------------------------------------ private ["_handGun"]; _handGun = currentWeapon player; if ((_handGun in ["glock17_EP1","M9","M9SD","Makarov","MakarovSD","revolver_EP1","UZI_EP1","Sa61_EP1","Colt1911"]) && (player ammo _handGun > 0)) then { hasSecondary = true; } else { hasSecondary = false; }; if((speed player <= 1) && hasSecondary && _canDo) then { if (s_player_suicide < 0) then { s_player_suicide = player addaction[("<t color=""#ff0000"">" + ("Commit Suicide") +"</t>"),"suicide.sqf",_handGun,0,false,true,"", ""]; }; } else { player removeAction s_player_suicide; s_player_suicide = -1; }; // ---------------------------------------SUICIDE END------------------------------------ if(_isPZombie) then { if (s_player_callzombies < 0) then { s_player_callzombies = player addAction [localize "STR_EPOCH_ACTIONS_RAISEHORDE", "\z\addons\dayz_code\actions\call_zombies.sqf",player, 5, true, false, "",""]; }; if (DZE_PZATTACK) then { call pz_attack; DZE_PZATTACK = false; }; if (s_player_pzombiesvision < 0) then { s_player_pzombiesvision = player addAction [localize "STR_EPOCH_ACTIONS_NIGHTVIS", "\z\addons\dayz_code\actions\pzombie\pz_vision.sqf", [], 4, false, true, "nightVision", "_this == _target"]; }; if (!isNull cursorTarget && (player distance cursorTarget < 3)) then { //Has some kind of target _isAnimal = cursorTarget isKindOf "Animal"; _isZombie = cursorTarget isKindOf "zZombie_base"; _isHarvested = cursorTarget getVariable["meatHarvested",false]; _isMan = cursorTarget isKindOf "Man"; // Pzombie Gut human corpse || animal if (!alive cursorTarget && (_isAnimal || _isMan) && !_isZombie && !_isHarvested) then { if (s_player_pzombiesfeed < 0) then { s_player_pzombiesfeed = player addAction [localize "STR_EPOCH_ACTIONS_FEED", "\z\addons\dayz_code\actions\pzombie\pz_feed.sqf",cursorTarget, 3, true, false, "",""]; }; } else { player removeAction s_player_pzombiesfeed; s_player_pzombiesfeed = -1; }; } else { player removeAction s_player_pzombiesfeed; s_player_pzombiesfeed = -1; }; }; // Increase distance only if AIR || SHIP _allowedDistance = 4; _isAir = cursorTarget isKindOf "Air"; _isShip = cursorTarget isKindOf "Ship"; if(_isAir || _isShip) then { _allowedDistance = 8; }; if (!isNull cursorTarget && !_inVehicle && !_isPZombie && (player distance cursorTarget < _allowedDistance) && _canDo) then { //Has some kind of target // set cursortarget to variable _cursorTarget = cursorTarget; // get typeof cursortarget once _typeOfCursorTarget = typeOf _cursorTarget; // hintsilent _typeOfCursorTarget; _isVehicle = _cursorTarget isKindOf "AllVehicles"; _isVehicletype = _typeOfCursorTarget in ["ATV_US_EP1","ATV_CZ_EP1"]; _isnewstorage = _typeOfCursorTarget in DZE_isNewStorage; // get items && magazines only once _magazinesPlayer = magazines player; //boiled Water _hasbottleitem = "ItemWaterbottle" in _magazinesPlayer; _hastinitem = false; { if (_x in _magazinesPlayer) then { _hastinitem = true; }; } count boil_tin_cans; _hasFuelE = "ItemJerrycanEmpty" in _magazinesPlayer; _hasFuelBarrelE = "ItemFuelBarrelEmpty" in _magazinesPlayer; _hasHotwireKit = "ItemHotwireKit" in _magazinesPlayer; _itemsPlayer = items player; _temp_keys = []; _temp_keys_names = []; // find available keys _key_colors = ["ItemKeyYellow","ItemKeyBlue","ItemKeyRed","ItemKeyGreen","ItemKeyBlack"]; { if (configName(inheritsFrom(configFile >> "CfgWeapons" >> _x)) in _key_colors) then { _ownerKeyId = getNumber(configFile >> "CfgWeapons" >> _x >> "keyid"); _ownerKeyName = getText(configFile >> "CfgWeapons" >> _x >> "displayName"); _temp_keys_names set [_ownerKeyId,_ownerKeyName]; _temp_keys set [count _temp_keys,str(_ownerKeyId)]; }; } count _itemsPlayer; _hasKnife = "ItemKnife" in _itemsPlayer; _hasToolbox = "ItemToolbox" in _itemsPlayer; if (DZE_APlotforLife) then { _playerUID = [player] call FNC_GetPlayerUID; }else{ _playerUID = dayz_characterID; }; _isMan = _cursorTarget isKindOf "Man"; _traderType = _typeOfCursorTarget; _ownerID = _cursorTarget getVariable ["ownerPUID","0"]; _characterID = _cursorTarget getVariable ["CharacterID","0"]; _isAnimal = _cursorTarget isKindOf "Animal"; _isDog = (_cursorTarget isKindOf "DZ_Pastor" || _cursorTarget isKindOf "DZ_Fin"); _isZombie = _cursorTarget isKindOf "zZombie_base"; _isDestructable = _cursorTarget isKindOf "BuiltItems"; _isWreck = _typeOfCursorTarget in DZE_isWreck; _isWreckBuilding = _typeOfCursorTarget in DZE_isWreckBuilding; _isModular = _cursorTarget isKindOf "ModularItems"; _isModularDoor = _typeOfCursorTarget in ["Land_DZE_WoodDoor","Land_DZE_LargeWoodDoor","Land_DZE_GarageWoodDoor","CinderWallDoor_DZ","CinderWallDoorSmall_DZ"]; _isRemovable = _typeOfCursorTarget in DZE_isRemovable; _isDisallowRepair = _typeOfCursorTarget in ["M240Nest_DZ"]; _isTent = _cursorTarget isKindOf "TentStorage"; _isAlive = alive _cursorTarget; _text = getText (configFile >> "CfgVehicles" >> _typeOfCursorTarget >> "displayName"); _rawmeat = meatraw; _hasRawMeat = false; { if (_x in _magazinesPlayer) then { _hasRawMeat = true; }; } count _rawmeat; _isFuel = false; if (_hasFuelE || _hasFuelBarrelE) then { { if(_cursorTarget isKindOf _x) exitWith {_isFuel = true;}; } count dayz_fuelsources; }; // diag_log ("OWNERID = " + _ownerID + " CHARID = " + dayz_characterID + " " + str(_ownerID == dayz_characterID)); // logic vars _player_flipveh = false; _player_deleteBuild = false; _player_lockUnlock_crtl = false; if (s_player_plotManagement < 0) then { _adminList = ["0152"]; // Add admins here if you admins to able to manage all plotpoles _owner = _cursorTarget getVariable ["ownerPUID","0"]; _friends = _cursorTarget getVariable ["plotfriends", []]; _fuid = []; { _friendUID = _x select 0; _fuid = _fuid + [_friendUID]; } forEach _friends; _allowed = [_owner]; _allowed = [_owner] + _adminList + _fuid; if((getPlayerUID player) in _allowed)then{ s_player_plotManagement = player addAction ["<t color='#0059FF'>Manage Plot</t>", "plotManagement\initPlotManagement.sqf", [], 5, false]; }; }; if (_canDo && (speed player <= 1) && (_cursorTarget isKindOf "Plastic_Pole_EP1_DZ")) then { if (s_player_maintain_area < 0) then { s_player_maintain_area = player addAction [format["<t color='#ff0000'>%1</t>",localize "STR_EPOCH_ACTIONS_MAINTAREA"], "\z\addons\dayz_code\actions\maintain_area.sqf", "maintain", 5, false]; s_player_maintain_area_preview = player addAction [format["<t color='#ff0000'>%1</t>",localize "STR_EPOCH_ACTIONS_MAINTPREV"], "\z\addons\dayz_code\actions\maintain_area.sqf", "preview", 5, false]; }; _plotDistance = (DZE_PlotPole select 0); _PlotsmarkersNear = count (_cursorTarget nearEntities ["Land_coneLight", _PlotDistance]); if (s_player_plot_boundary_on < 0) then { If (_PlotsmarkersNear == 0 ) then{ s_player_plot_boundary_on = player addAction ["Show plot boundary", "Custom\A_Plot_for_Life\Action\object_showPlotRadius.sqf", "", 1, false]; }; }; if (s_player_plot_boundary_off < 0) then { If (_PlotsmarkersNear > 0 ) then{ s_player_plot_boundary_off = player addAction ["Remove plot boundary", "Custom\A_Plot_for_Life\Action\object_removePlotRadius.sqf", "", 1, false]; }; }; if (s_player_plot_take_ownership < 0) then { if (DZE_PlotOwnership) then { _isowner = [player, _cursorTarget] call FNC_check_owner; If (( _isowner select 0 )) then{ s_player_plot_take_ownership = player addAction ["Take plot items ownership", "Custom\A_Plot_for_Life\Action\plot_take_ownership.sqf", "", 1, false]; }; }; }; } else { player removeAction s_player_plotManagement; s_player_plotManagement = -1; player removeAction s_player_maintain_area; s_player_maintain_area = -1; player removeAction s_player_maintain_area_preview; s_player_maintain_area_preview = -1; player removeAction s_player_plot_boundary_on; s_player_plot_boundary_on = -1; player removeAction s_player_plot_boundary_off; s_player_plot_boundary_off = -1; player removeAction s_player_plot_take_ownership; s_player_plot_take_ownership = -1; }; // CURSOR TARGET ALIVE if(_isAlive) then { //Allow player to delete objects if(_isDestructable || _isWreck || _isRemovable || _isWreckBuilding) then { if(_hasToolbox && "ItemCrowbar" in _itemsPlayer) then { _player_deleteBuild = true; }; }; ///Allow owners to delete modulars if(_isModular) then { if(_hasToolbox && "ItemCrowbar" in _itemsPlayer) then { _findNearestPoles = nearestObjects[player, ["Plastic_Pole_EP1_DZ"], DZE_PlotPole select 0]; _IsNearPlot = count (_findNearestPoles); _fuid = []; _allowed = []; if(_IsNearPlot > 0)then{ _thePlot = _findNearestPoles select 0; _owner = _thePlot getVariable ["ownerPUID","010"]; _friends = _thePlot getVariable ["plotfriends", []]; { _friendUID = _x select 0; _fuid = _fuid + [_friendUID]; } forEach _friends; _allowed = [_owner]; _allowed = [_owner] + _fuid; if ( _playerUID in _allowed && _ownerID in _allowed ) then { _player_deleteBuild = true; }; }else{ if(_ownerID == _playerUID)then{ _player_deleteBuild = true; }; }; }; }; //Allow owners to delete modular doors without locks if(_isModularDoor) then { if(_hasToolbox && "ItemCrowbar" in _itemsPlayer) then { _findNearestPoles = nearestObjects[player, ["Plastic_Pole_EP1_DZ"], DZE_PlotPole select 0]; _IsNearPlot = count (_findNearestPoles); _fuid = []; _allowed = []; if(_IsNearPlot > 0)then{ _thePlot = _findNearestPoles select 0; _owner = _thePlot getVariable ["ownerPUID","010"]; _friends = _thePlot getVariable ["plotfriends", []]; { _friendUID = _x select 0; _fuid = _fuid + [_friendUID]; } forEach _friends; _allowed = [_owner]; _allowed = [_owner] + _fuid; if ( _playerUID in _allowed && _ownerID in _allowed) then { _player_deleteBuild = true; }; }else{ if(_ownerID == _playerUID)then{ _player_deleteBuild = true; }; }; }; }; // CURSOR TARGET VEHICLE if(_isVehicle) then { //flip vehicle small vehicles by your self && all other vehicles with help nearby if (!(canmove _cursorTarget) && (player distance _cursorTarget >= 2) && (count (crew _cursorTarget))== 0 && ((vectorUp _cursorTarget) select 2) < 0.5) then { _playersNear = {isPlayer _x} count (player nearEntities ["CAManBase", 6]); if(_isVehicletype || (_playersNear >= 2)) then { _player_flipveh = true; }; }; if(!_isMan && _characterID != "0" && !(_cursorTarget isKindOf "Bicycle")) then { _player_lockUnlock_crtl = true; }; }; }; if(_player_deleteBuild) then { if (s_player_deleteBuild < 0) then { s_player_deleteBuild = player addAction [format[localize "str_actions_delete",_text], "Custom\A_Plot_for_Life\Action\remove.sqf",_cursorTarget, 1, true, true, "", ""]; }; } else { player removeAction s_player_deleteBuild; s_player_deleteBuild = -1; }; if (DZE_HeliLift) then { _liftHeli = objNull; _found = false; _allowTow = false; if ((count (crew _cursorTarget)) == 0) then { { if(!_allowTow) then { _allowTow = _cursorTarget isKindOf _x; }; } count DZE_HeliAllowToTow; }; //diag_log format["CREW: %1 ALLOW: %2",(count (crew _cursorTarget)),_allowTow]; if (_allowTow) then { _liftHelis = (position player) nearEntities [DZE_HeliAllowTowFrom, 15]; { if(!_found) then { _posL = [_x] call FNC_getPos; _posC = [_cursorTarget] call FNC_getPos; _height = (_posL select 2) - (_posC select 2); _hasAttached = _x getVariable["hasAttached",false]; if(_height < 15 && _height > 5 && (typeName _hasAttached != "OBJECT")) then { if(((abs((_posL select 0) - (_posC select 0))) < 10) && ((abs((_posL select 1) - (_posC select 1))) < 10)) then { _liftHeli = _x; _found = true; }; }; }; } count _liftHelis; }; //diag_log format["HELI: %1 TARGET: %2",_found,_cursorTarget]; _attached = _cursorTarget getVariable["attached",false]; if(_found && _allowTow && _canDo && !locked _cursorTarget && !_isPZombie && (typeName _attached != "OBJECT")) then { if (s_player_heli_lift < 0) then { s_player_heli_lift = player addAction ["Attach to Heli", "\z\addons\dayz_code\actions\player_heliLift.sqf",[_liftHeli,_cursorTarget], -10, false, true, "",""]; }; } else { player removeAction s_player_heli_lift; s_player_heli_lift = -1; }; }; // Allow Owner to lock && unlock vehicle if(_player_lockUnlock_crtl) then { if (s_player_lockUnlock_crtl < 0) then { _hasKey = _characterID in _temp_keys; _oldOwner = (_characterID == dayz_playerUID); if(locked _cursorTarget) then { if(_hasKey || _oldOwner) then { _Unlock = player addAction [format[localize "STR_EPOCH_ACTIONS_UNLOCK",_text], "\z\addons\dayz_code\actions\unlock_veh.sqf",[_cursorTarget,(_temp_keys_names select (parseNumber _characterID))], 2, true, true, "", ""]; s_player_lockunlock set [count s_player_lockunlock,_Unlock]; s_player_lockUnlock_crtl = 1; } else { if(_hasHotwireKit) then { _Unlock = player addAction [format[localize "STR_EPOCH_ACTIONS_HOTWIRE",_text], "\z\addons\dayz_code\actions\hotwire_veh.sqf",_cursorTarget, 2, true, true, "", ""]; } else { _Unlock = player addAction [format["<t color='#ff0000'>%1</t>",localize "STR_EPOCH_ACTIONS_VEHLOCKED"], "",_cursorTarget, 2, true, true, "", ""]; }; s_player_lockunlock set [count s_player_lockunlock,_Unlock]; s_player_lockUnlock_crtl = 1; }; } else { if(_hasKey || _oldOwner) then { _lock = player addAction [format[localize "STR_EPOCH_ACTIONS_LOCK",_text], "\z\addons\dayz_code\actions\lock_veh.sqf",_cursorTarget, 1, true, true, "", ""]; s_player_lockunlock set [count s_player_lockunlock,_lock]; s_player_lockUnlock_crtl = 1; }; }; }; } else { {player removeAction _x} count s_player_lockunlock;s_player_lockunlock = []; s_player_lockUnlock_crtl = -1; }; if(DZE_AllowForceSave) then { //Allow player to force save if((_isVehicle || _isTent) && !_isMan) then { if (s_player_forceSave < 0) then { s_player_forceSave = player addAction [format[localize "str_actions_save",_text], "\z\addons\dayz_code\actions\forcesave.sqf",_cursorTarget, 1, true, true, "", ""]; }; } else { player removeAction s_player_forceSave; s_player_forceSave = -1; }; }; If(DZE_AllowCargoCheck) then { if((_isVehicle || _isTent || _isnewstorage) && _isAlive && !_isMan && !locked _cursorTarget) then { if (s_player_checkGear < 0) then { s_player_checkGear = player addAction [localize "STR_EPOCH_PLAYER_CARGO", "\z\addons\dayz_code\actions\cargocheck.sqf",_cursorTarget, 1, true, true, "", ""]; }; } else { player removeAction s_player_checkGear; s_player_checkGear = -1; }; }; //flip vehicle small vehicles by your self && all other vehicles with help nearby if(_player_flipveh) then { if (s_player_flipveh < 0) then { s_player_flipveh = player addAction [format[localize "str_actions_flipveh",_text], "\z\addons\dayz_code\actions\player_flipvehicle.sqf",_cursorTarget, 1, true, true, "", ""]; }; } else { player removeAction s_player_flipveh; s_player_flipveh = -1; }; //Allow player to fill jerrycan if((_hasFuelE || _hasFuelBarrelE) && _isFuel) then { if (s_player_fillfuel < 0) then { s_player_fillfuel = player addAction [localize "str_actions_self_10", "\z\addons\dayz_code\actions\jerry_fill.sqf",[], 1, false, true, "", ""]; }; } else { player removeAction s_player_fillfuel; s_player_fillfuel = -1; }; // logic vars for addactions _player_butcher = false; _player_studybody = false; _player_SurrenderedGear = false; // CURSOR TARGET NOT ALIVE if (!_isAlive) then { // Gut animal/zed if((_isAnimal || _isZombie) && _hasKnife) then { _isHarvested = _cursorTarget getVariable["meatHarvested",false]; if (!_isHarvested) then { _player_butcher = true; }; }; // Study body if (_isMan && !_isZombie && !_isAnimal) then { _player_studybody = true; } } else { // unit alive // gear access on surrendered player if(_isMan && !_isZombie && !_isAnimal) then { _isSurrendered = _cursorTarget getVariable ["DZE_Surrendered",false]; if (_isSurrendered) then { _player_SurrenderedGear = true; }; }; }; // Human Gut animal || zombie if (_player_butcher) then { if (s_player_butcher < 0) then { if(_isZombie) then { s_player_butcher = player addAction [localize "STR_EPOCH_ACTIONS_GUTZOM", "\z\addons\dayz_code\actions\gather_zparts.sqf",_cursorTarget, 0, true, true, "", ""]; } else { s_player_butcher = player addAction [localize "str_actions_self_04", "\z\addons\dayz_code\actions\gather_meat.sqf",_cursorTarget, 3, true, true, "", ""]; }; }; } else { player removeAction s_player_butcher; s_player_butcher = -1; }; // Study Body if (_player_studybody) then { if (s_player_studybody < 0) then { s_player_studybody = player addAction [("<t color=""#FF0000"">"+("Check Wallet") + "</t>"), "Scripts\Gold_Coin_system\Check_Wallet\check_wallet.sqf",_cursorTarget, 0, false, true, "",""]; }; } else { player removeAction s_player_studybody; s_player_studybody = -1; }; // logic vars _player_cook = false; _player_boil = false; // CURSOR TARGET IS FIRE if (inflamed _cursorTarget) then { //Fireplace Actions check if (_hasRawMeat) then { _player_cook = true; }; // Boil water if (_hasbottleitem && _hastinitem) then { _player_boil = true; }; }; if (_player_SurrenderedGear) then { if (s_player_SurrenderedGear < 0) then { s_player_SurrenderedGear = player addAction [localize "STR_EPOCH_ACTIONS_GEAR", "\z\addons\dayz_code\actions\surrender_gear.sqf",_cursorTarget, 1, true, true, "", ""]; }; } else { player removeAction s_player_SurrenderedGear; s_player_SurrenderedGear = -1; }; //Fireplace Actions check if (_player_cook) then { if (s_player_cook < 0) then { s_player_cook = player addAction [localize "str_actions_self_05", "\z\addons\dayz_code\actions\cook.sqf",_cursorTarget, 3, true, true, "", ""]; }; } else { player removeAction s_player_cook; s_player_cook = -1; }; // Boil water if (_player_boil) then { if (s_player_boil < 0) then { s_player_boil = player addAction [localize "str_actions_boilwater", "\z\addons\dayz_code\actions\boil.sqf",_cursorTarget, 3, true, true, "", ""]; }; } else { player removeAction s_player_boil; s_player_boil = -1; }; if(_cursorTarget == dayz_hasFire) then { if ((s_player_fireout < 0) && !(inflamed _cursorTarget) && (player distance _cursorTarget < 3)) then { s_player_fireout = player addAction [localize "str_actions_self_06", "\z\addons\dayz_code\actions\fire_pack.sqf",_cursorTarget, 0, false, true, "",""]; }; } else { player removeAction s_player_fireout; s_player_fireout = -1; }; //Packing my tent if(_isTent && (player distance _cursorTarget < 3)) then { if (_ownerID == _playerUID) then { if (s_player_packtent < 0) then { s_player_packtent = player addAction [localize "str_actions_self_07", "\z\addons\dayz_code\actions\tent_pack.sqf",_cursorTarget, 0, false, true, "",""]; }; } else { if(("ItemJerrycan" in _magazinesPlayer) && ("ItemMatchbox_DZE" in weapons player)) then { if (s_player_packtent < 0) then { s_player_packtent = player addAction [localize "STR_EPOCH_ACTIONS_DESTROYTENT", "Custom\A_Plot_for_Life\Action\remove.sqf",_cursorTarget, 1, true, true, "", ""]; }; }; }; } else { player removeAction s_player_packtent; s_player_packtent = -1; }; //Allow manage door if((_typeOfCursorTarget in DZE_DoorsLocked)) then { if (s_player_manageDoor < 0) then { s_player_manageDoor = player addAction ["<t color='#0059FF'>Manage Door</t>", "doorManagement\initDoorManagement.sqf", _cursorTarget, 5, false]; }; } else { player removeAction s_player_manageDoor; s_player_manageDoor = -1; }; //Allow owner to unlock vault if((_typeOfCursorTarget in DZE_LockableStorage) && _characterID != "0" && (player distance _cursorTarget < 3)) then { if (s_player_unlockvault < 0) then { if(_typeOfCursorTarget in DZE_LockedStorage) then { if(_characterID == dayz_combination || _ownerID == _playerUID) then { _combi = player addAction [format[localize "STR_EPOCH_ACTIONS_OPEN",_text], "\z\addons\dayz_code\actions\vault_unlock.sqf",_cursorTarget, 0, false, true, "",""]; s_player_combi set [count s_player_combi,_combi]; } else { _combi = player addAction [format[localize "STR_EPOCH_ACTIONS_UNLOCK",_text], "\z\addons\dayz_code\actions\vault_combination_1.sqf",_cursorTarget, 0, false, true, "",""]; s_player_combi set [count s_player_combi,_combi]; }; s_player_unlockvault = 1; } else { if(_characterID != dayz_combination && _ownerID != _playerUID) then { _combi = player addAction [localize "STR_EPOCH_ACTIONS_RECOMBO", "\z\addons\dayz_code\actions\vault_combination_1.sqf",_cursorTarget, 0, false, true, "",""]; s_player_combi set [count s_player_combi,_combi]; s_player_unlockvault = 1; }; }; }; } else { {player removeAction _x} count s_player_combi;s_player_combi = []; s_player_unlockvault = -1; }; if(_typeOfCursorTarget in DZE_UnLockedStorage and (player distance _cursorTarget < 3)) then { if (s_bank_dialog < 0) then { s_bank_dialog = player addAction ["Online Banking", "Scripts\Gold_Coin_system\Bank_Dialog\bank_dialog.sqf",_cursorTarget, 3, true, true, "", ""]; }; } else { player removeAction s_bank_dialog; s_bank_dialog = -1; }; if(_typeOfCursorTarget in Bank_Object and (player distance _cursorTarget < 3)) then { if (s_bank_dialog2 < 0) then { s_bank_dialog2 = player addAction ["Bank ATM", "Scripts\Gold_Coin_system\Bank_Dialog\bank_dialog.sqf",_cursorTarget, 3, true, true, "", ""]; }; } else { player removeAction s_bank_dialog2; s_bank_dialog2 = -1; }; if(_typeOfCursorTarget in DZE_UnLockedStorage && _characterID != "0" && (player distance _cursorTarget < 3)) then { if (s_player_lockvault < 0) then { if(_characterID == dayz_combination || _ownerID == dayz_playerUID) then { s_player_lockvault = player addAction [format[localize "STR_EPOCH_ACTIONS_LOCK",_text], "\z\addons\dayz_code\actions\vault_lock.sqf",_cursorTarget, 0, false, true, "",""]; }; }; if (s_player_packvault < 0 && (_characterID == dayz_combination || _ownerID == dayz_playerUID)) then { s_player_packvault = player addAction [format["<t color='#ff0000'>%1</t>",(format[localize "STR_EPOCH_ACTIONS_PACK",_text])], "\z\addons\dayz_code\actions\vault_pack.sqf",_cursorTarget, 0, false, true, "",""]; }; } else { player removeAction s_player_packvault; s_player_packvault = -1; player removeAction s_player_lockvault; s_player_lockvault = -1; }; //Player Deaths if(_typeOfCursorTarget == "Info_Board_EP1") then { if (s_player_information < 0) then { s_player_information = player addAction [localize "STR_EPOCH_ACTIONS_MURDERS", "\z\addons\dayz_code\actions\list_playerDeaths.sqf",[], 7, false, true, "",""]; }; } else { player removeAction s_player_information; s_player_information = -1; }; if (_isMan and _isAlive and !_isZombie and !_isAnimal and !(_traderType in serverTraders)) then { if (s_givemoney_dialog < 0) then { s_givemoney_dialog = player addAction [format["Give Money to %1", (name _cursorTarget)], "Scripts\Gold_Coin_system\Give_Money\give_player_dialog.sqf",_cursorTarget, 3, true, true, "", ""]; }; } else { player removeAction s_givemoney_dialog; s_givemoney_dialog = -1; }; if(_typeOfCursorTarget in dayz_fuelpumparray) then { if (s_player_fuelauto < 0) then { // check if Generator_DZ is running within 30 meters _findNearestGens = (position player) nearEntities ["Generator_DZ", 30]; _findNearestGen = []; { if (alive _x && (_x getVariable ["GeneratorRunning", false])) then { _findNearestGen set [(count _findNearestGen),_x]; }; } count _findNearestGens; _IsNearRunningGen = count (_findNearestGen); // show that pump needs power if no generator nearby. if(_IsNearRunningGen > 0) then { s_player_fuelauto = player addAction [localize "STR_EPOCH_ACTIONS_FILLVEH", "\z\addons\dayz_code\actions\fill_nearestVehicle.sqf",objNull, 0, false, true, "",""]; } else { s_player_fuelauto = player addAction [format["<t color='#ff0000'>%1</t>",localize "STR_EPOCH_ACTIONS_NEEDPOWER"], "",[], 0, false, true, "",""]; }; }; } else { player removeAction s_player_fuelauto; s_player_fuelauto = -1; }; //Fuel Pump on truck if(_typeOfCursorTarget in DZE_fueltruckarray && alive _cursorTarget) then { if (s_player_fuelauto2 < 0) then { // show that fuel truck pump needs power. if(isEngineOn _cursorTarget) then { s_player_fuelauto2 = player addAction [localize "STR_EPOCH_ACTIONS_FILLVEH", "\z\addons\dayz_code\actions\fill_nearestVehicle.sqf",_cursorTarget, 0, false, true, "",""]; } else { s_player_fuelauto2 = player addAction [format["<t color='#ff0000'>%1</t>",localize "STR_EPOCH_ACTIONS_NEEDPOWER"], "",[], 0, false, true, "",""]; }; }; } else { player removeAction s_player_fuelauto2; s_player_fuelauto2 = -1; }; // inplace upgrade tool if ((_cursorTarget isKindOf "ModularItems") || (_cursorTarget isKindOf "Land_DZE_WoodDoor_Base") || (_cursorTarget isKindOf "CinderWallDoor_DZ_Base")) then { if ((s_player_lastTarget select 0) != _cursorTarget) then { if (s_player_upgrade_build > 0) then { player removeAction s_player_upgrade_build; s_player_upgrade_build = -1; }; }; if (s_player_upgrade_build < 0) then { // s_player_lastTarget = _cursorTarget; s_player_lastTarget set [0,_cursorTarget]; s_player_upgrade_build = player addAction [format[localize "STR_EPOCH_ACTIONS_UPGRADE",_text], "Custom\A_Plot_for_Life\Action\player_upgrade.sqf",_cursorTarget, -1, false, true, "",""]; }; } else { player removeAction s_player_upgrade_build; s_player_upgrade_build = -1; }; // downgrade system if((_isDestructable || _cursorTarget isKindOf "Land_DZE_WoodDoorLocked_Base" || _cursorTarget isKindOf "CinderWallDoorLocked_DZ_Base") && (DZE_Lock_Door == _characterID)) then { if ((s_player_lastTarget select 1) != _cursorTarget) then { if (s_player_downgrade_build > 0) then { player removeAction s_player_downgrade_build; s_player_downgrade_build = -1; }; }; if (s_player_downgrade_build < 0) then { s_player_lastTarget set [1,_cursorTarget]; s_player_downgrade_build = player addAction [format[localize "STR_EPOCH_ACTIONS_REMLOCK",_text], "Custom\A_Plot_for_Life\Action\player_buildingDowngrade.sqf",_cursorTarget, -2, false, true, "",""]; }; } else { player removeAction s_player_downgrade_build; s_player_downgrade_build = -1; }; // inplace maintenance tool if((_cursorTarget isKindOf "ModularItems" || _cursorTarget isKindOf "DZE_Housebase" || _typeOfCursorTarget == "LightPole_DZ") && (damage _cursorTarget >= DZE_DamageBeforeMaint)) then { if ((s_player_lastTarget select 2) != _cursorTarget) then { if (s_player_maint_build > 0) then { player removeAction s_player_maint_build; s_player_maint_build = -1; }; }; if (s_player_maint_build < 0) then { s_player_lastTarget set [2,_cursorTarget]; s_player_maint_build = player addAction [format[localize "STR_EPOCH_ACTIONS_MAINTAIN",_text], "\z\addons\dayz_code\actions\player_buildingMaint.sqf",_cursorTarget, -2, false, true, "",""]; }; } else { player removeAction s_player_maint_build; s_player_maint_build = -1; }; //Start Generator if(_cursorTarget isKindOf "Generator_DZ") then { if (s_player_fillgen < 0) then { // check if not running if((_cursorTarget getVariable ["GeneratorRunning", false])) then { s_player_fillgen = player addAction [localize "STR_EPOCH_ACTIONS_GENERATOR1", "\z\addons\dayz_code\actions\stopGenerator.sqf",_cursorTarget, 0, false, true, "",""]; } else { // check if not filled && player has jerry. if((_cursorTarget getVariable ["GeneratorFilled", false])) then { s_player_fillgen = player addAction [localize "STR_EPOCH_ACTIONS_GENERATOR2", "\z\addons\dayz_code\actions\fill_startGenerator.sqf",_cursorTarget, 0, false, true, "",""]; } else { if("ItemJerrycan" in _magazinesPlayer) then { s_player_fillgen = player addAction [localize "STR_EPOCH_ACTIONS_GENERATOR3", "\z\addons\dayz_code\actions\fill_startGenerator.sqf",_cursorTarget, 0, false, true, "",""]; }; }; }; }; } else { player removeAction s_player_fillgen; s_player_fillgen = -1; }; //Towing with tow truck /* if(_typeOfCursorTarget == "TOW_DZE") then { if (s_player_towing < 0) then { if(!(_cursorTarget getVariable ["DZEinTow", false])) then { s_player_towing = player addAction [localize "STR_EPOCH_ACTIONS_ATTACH" "\z\addons\dayz_code\actions\tow_AttachStraps.sqf",_cursorTarget, 0, false, true, "",""]; } else { s_player_towing = player addAction [localize "STR_EPOCH_ACTIONS_DETACH", "\z\addons\dayz_code\actions\tow_DetachStraps.sqf",_cursorTarget, 0, false, true, "",""]; }; }; } else { player removeAction s_player_towing; s_player_towing = -1; }; */ //Sleep if(_isTent && _ownerID == _playerUID) then { if ((s_player_sleep < 0) && (player distance _cursorTarget < 3)) then { s_player_sleep = player addAction [localize "str_actions_self_sleep", "\z\addons\dayz_code\actions\player_sleep.sqf",_cursorTarget, 0, false, true, "",""]; }; } else { player removeAction s_player_sleep; s_player_sleep = -1; }; _clothesTaken = _cursorTarget getVariable["clothesTaken",false]; // Take clothes by Zabn if (_isMan and !_isAlive and !_isZombie and !_clothesTaken) then { if (s_player_clothes < 0) then { s_player_clothes = player addAction [("<t color='#0096ff'>")+("Take Clothes")+("</t>"), "scripts\player_takeClothes.sqf",[_cursorTarget], -10, false, true, "",""]; }; } else { player removeAction s_player_clothes; s_player_clothes = -1; }; //Repairing Vehicles if ((dayz_myCursorTarget != _cursorTarget) && _isVehicle && !_isMan && _hasToolbox && (damage _cursorTarget < 1) && !_isDisallowRepair) then { if (s_player_repair_crtl < 0) then { dayz_myCursorTarget = _cursorTarget; _menu = dayz_myCursorTarget addAction [localize "STR_EPOCH_PLAYER_REPAIRV", "\z\addons\dayz_code\actions\repair_vehicle.sqf",_cursorTarget, 0, true, false, "",""]; _menu1 = dayz_myCursorTarget addAction [localize "STR_EPOCH_PLAYER_SALVAGEV", "\z\addons\dayz_code\actions\salvage_vehicle.sqf",_cursorTarget, 0, true, false, "",""]; s_player_repairActions set [count s_player_repairActions,_menu]; s_player_repairActions set [count s_player_repairActions,_menu1]; s_player_repair_crtl = 1; } else { {dayz_myCursorTarget removeAction _x} count s_player_repairActions;s_player_repairActions = []; s_player_repair_crtl = -1; }; }; //Pack Vehicles if (_typeOfCursorTarget in EVDVehicleArray and _hasToolbox and !(locked _cursorTarget) and (damage _cursorTarget < 1)) then { if (s_player_packvehicle < 0) then { s_player_packvehicle = player addAction ["Pack Vehicle", "EVD\EVD_pack.sqf",_cursorTarget, 0, false, true, "",""]; }; } else { player removeAction s_player_packvehicle; s_player_packvehicle = -1; }; // All Traders if (_isMan && !_isPZombie && _traderType in serverTraders) then { if (s_player_parts_crtl < 0) then { // get humanity _humanity = player getVariable ["humanity",0]; _traderMenu = call compile format["menu_%1;",_traderType]; // diag_log ("TRADER = " + str(_traderMenu)); _low_high = "low"; _humanity_logic = false; if((_traderMenu select 2) == "friendly") then { _humanity_logic = (_humanity < -5000); }; if((_traderMenu select 2) == "hostile") then { _low_high = "high"; _humanity_logic = (_humanity > -5000); }; if((_traderMenu select 2) == "hero") then { _humanity_logic = (_humanity < 5000); }; if(_humanity_logic) then { _cancel = player addAction [format[localize "STR_EPOCH_ACTIONS_HUMANITY",_low_high], "\z\addons\dayz_code\actions\trade_cancel.sqf",["na"], 0, true, false, "",""]; s_player_parts set [count s_player_parts,_cancel]; } else { // Static Menu { //diag_log format["DEBUG TRADER: %1", _x]; _buy = player addAction [format["Trade %1 %2 for %3 %4",(_x select 3),(_x select 5),(_x select 2),(_x select 6)], "\z\addons\dayz_code\actions\trade_items_wo_db.sqf",[(_x select 0),(_x select 1),(_x select 2),(_x select 3),(_x select 4),(_x select 5),(_x select 6)], (_x select 7), true, true, "",""]; s_player_parts set [count s_player_parts,_buy]; } count (_traderMenu select 1); // Database menu _buy = player addAction [localize "STR_EPOCH_PLAYER_289", "\z\addons\dayz_code\actions\show_dialog.sqf",(_traderMenu select 0), 999, true, false, "",""]; s_player_parts set [count s_player_parts,_buy]; }; s_player_parts_crtl = 1; }; } else { {player removeAction _x} count s_player_parts;s_player_parts = []; s_player_parts_crtl = -1; }; if(dayz_tameDogs) then { //Dog if (_isDog && _isAlive && (_hasRawMeat) && _characterID == "0" && player getVariable ["dogID", 0] == 0) then { if (s_player_tamedog < 0) then { s_player_tamedog = player addAction [localize "str_actions_tamedog", "\z\addons\dayz_code\actions\tame_dog.sqf", _cursorTarget, 1, false, true, "", ""]; }; } else { player removeAction s_player_tamedog; s_player_tamedog = -1; }; if (_isDog && _characterID == dayz_characterID && _isAlive) then { _dogHandle = player getVariable ["dogID", 0]; if (s_player_feeddog < 0 && _hasRawMeat) then { s_player_feeddog = player addAction [localize "str_actions_feeddog","\z\addons\dayz_code\actions\dog\feed.sqf",[_dogHandle,0], 0, false, true,"",""]; }; if (s_player_waterdog < 0 && "ItemWaterbottle" in _magazinesPlayer) then { s_player_waterdog = player addAction [localize "str_actions_waterdog","\z\addons\dayz_code\actions\dog\feed.sqf",[_dogHandle,1], 0, false, true,"",""]; }; if (s_player_staydog < 0) then { _lieDown = _dogHandle getFSMVariable "_actionLieDown"; if (_lieDown) then { _text = "str_actions_liedog"; } else { _text = "str_actions_sitdog"; }; s_player_staydog = player addAction [localize _text,"\z\addons\dayz_code\actions\dog\stay.sqf", _dogHandle, 5, false, true,"",""]; }; if (s_player_trackdog < 0) then { s_player_trackdog = player addAction [localize "str_actions_trackdog","\z\addons\dayz_code\actions\dog\track.sqf", _dogHandle, 4, false, true,"",""]; }; if (s_player_barkdog < 0) then { s_player_barkdog = player addAction [localize "str_actions_barkdog","\z\addons\dayz_code\actions\dog\speak.sqf", _cursorTarget, 3, false, true,"",""]; }; if (s_player_warndog < 0) then { _warn = _dogHandle getFSMVariable "_watchDog"; if (_warn) then { _text = (localize "str_epoch_player_247"); _warn = false; } else { _text = (localize "str_epoch_player_248"); _warn = true; }; s_player_warndog = player addAction [format[localize "str_actions_warndog",_text],"\z\addons\dayz_code\actions\dog\warn.sqf",[_dogHandle, _warn], 2, false, true,"",""]; }; if (s_player_followdog < 0) then { s_player_followdog = player addAction [localize "str_actions_followdog","\z\addons\dayz_code\actions\dog\follow.sqf",[_dogHandle,true], 6, false, true,"",""]; }; } else { player removeAction s_player_feeddog; s_player_feeddog = -1; player removeAction s_player_waterdog; s_player_waterdog = -1; player removeAction s_player_staydog; s_player_staydog = -1; player removeAction s_player_trackdog; s_player_trackdog = -1; player removeAction s_player_barkdog; s_player_barkdog = -1; player removeAction s_player_warndog; s_player_warndog = -1; player removeAction s_player_followdog; s_player_followdog = -1; }; }; } else { //Engineering {dayz_myCursorTarget removeAction _x} count s_player_repairActions;s_player_repairActions = []; s_player_repair_crtl = -1; {player removeAction _x} count s_player_combi;s_player_combi = []; dayz_myCursorTarget = objNull; s_player_lastTarget = [objNull,objNull,objNull,objNull,objNull]; {player removeAction _x} count s_player_parts;s_player_parts = []; s_player_parts_crtl = -1; {player removeAction _x} count s_player_lockunlock;s_player_lockunlock = []; s_player_lockUnlock_crtl = -1; player removeAction s_player_checkGear; s_player_checkGear = -1; player removeAction s_player_SurrenderedGear; s_player_SurrenderedGear = -1; player removeAction s_player_plotManagement; s_player_plotManagement = -1; //Others player removeAction s_player_maintain_area; s_player_maintain_area = -1; player removeAction s_player_maintain_area_preview; s_player_maintain_area_preview = -1; player removeAction s_player_plot_boundary_on; s_player_plot_boundary_on = -1; player removeAction s_player_plot_boundary_off; s_player_plot_boundary_off = -1; player removeAction s_player_plot_take_ownership; s_player_plot_take_ownership = -1; player removeAction s_player_forceSave; s_player_forceSave = -1; player removeAction s_player_flipveh; s_player_flipveh = -1; player removeAction s_player_sleep; s_player_sleep = -1; player removeAction s_player_deleteBuild; s_player_deleteBuild = -1; player removeAction s_player_butcher; s_player_butcher = -1; player removeAction s_player_cook; s_player_cook = -1; player removeAction s_player_boil; s_player_boil = -1; player removeAction s_player_fireout; s_player_fireout = -1; player removeAction s_player_packtent; s_player_packtent = -1; player removeAction s_player_fillfuel; s_player_fillfuel = -1; player removeAction s_player_studybody; s_player_studybody = -1; player removeAction s_player_clothes; s_player_clothes = -1; //Dog player removeAction s_player_tamedog; s_player_tamedog = -1; player removeAction s_player_feeddog; s_player_feeddog = -1; player removeAction s_player_waterdog; s_player_waterdog = -1; player removeAction s_player_staydog; s_player_staydog = -1; player removeAction s_player_trackdog; s_player_trackdog = -1; player removeAction s_player_barkdog; s_player_barkdog = -1; player removeAction s_player_warndog; s_player_warndog = -1; player removeAction s_player_followdog; s_player_followdog = -1; player removeAction s_player_manageDoor; s_player_manageDoor = -1; // vault player removeAction s_player_unlockvault; s_player_unlockvault = -1; player removeAction s_player_packvault; s_player_packvault = -1; player removeAction s_player_lockvault; s_player_lockvault = -1; player removeAction s_player_information; s_player_information = -1; player removeAction s_player_fillgen; s_player_fillgen = -1; player removeAction s_player_upgrade_build; s_player_upgrade_build = -1; player removeAction s_player_maint_build; s_player_maint_build = -1; player removeAction s_player_downgrade_build; s_player_downgrade_build = -1; player removeAction s_player_towing; s_player_towing = -1; player removeAction s_player_fuelauto; s_player_fuelauto = -1; player removeAction s_player_fuelauto2; s_player_fuelauto2 = -1; player removeAction s_givemoney_dialog; s_givemoney_dialog = -1; player removeAction s_bank_dialog; s_bank_dialog = -1; player removeAction s_bank_dialog2; s_bank_dialog2 = -1; player removeAction s_player_packOBJ; s_player_packOBJ = -1; }; //Dog actions on player self _dogHandle = player getVariable ["dogID", 0]; if (_dogHandle > 0) then { _dog = _dogHandle getFSMVariable "_dog"; _characterID = "0"; if (!isNull cursorTarget) then { _characterID = cursorTarget getVariable ["CharacterID","0"]; }; if (_canDo && !_inVehicle && alive _dog && _characterID != dayz_characterID) then { if (s_player_movedog < 0) then { s_player_movedog = player addAction [localize "str_actions_movedog", "\z\addons\dayz_code\actions\dog\move.sqf", player getVariable ["dogID", 0], 1, false, true, "", ""]; }; if (s_player_speeddog < 0) then { _text = (localize "str_epoch_player_249"); _speed = 0; if (_dog getVariable ["currentSpeed",1] == 0) then { _speed = 1; _text = (localize "str_epoch_player_250"); }; s_player_speeddog = player addAction [format[localize "str_actions_speeddog", _text], "\z\addons\dayz_code\actions\dog\speed.sqf",[player getVariable ["dogID", 0],_speed], 0, false, true, "", ""]; }; if (s_player_calldog < 0) then { s_player_calldog = player addAction [localize "str_actions_calldog", "\z\addons\dayz_code\actions\dog\follow.sqf", [player getVariable ["dogID", 0], true], 2, false, true, "", ""]; }; }; } else { player removeAction s_player_movedog; s_player_movedog = -1; player removeAction s_player_speeddog; s_player_speeddog = -1; player removeAction s_player_calldog; s_player_calldog = -1; };
- 1 reply
-
- fn_selfactions
- safe
-
(and 3 more)
Tagged with:
-
Hello i need some help, i cant seem to find a way to make a safe when placed down to have a code set to 0000 or somthing along those lines.. i want to make a mission out of it. If you can help i well be happy if you can :)
-
My friend's PC crashed entirely just by simply opening a safe. There is no error messages besides when starting up ArmA 2 through DayZLauncher... "No entry 'C:\Users\(username)\ArmA 2\ArmA2OA.fgh:3D_Performance" Possibly an nvidia issue? Any help would be appreciated.
-
If you like my work, please consider a donation: $USD $EURO *** UPDATED WITH A MAJOR BUG FIX IN THE DATE 2014-10-06 1:10 PM *** This update will fix the Repair Vehicle working always in all cases *** without the need of vehicle parts, wheell, glass, motor or tools *** for vehicles that entered the safezone. *** The only file that change is the file safezone.sqf. Rai! Gebriel We, from Clodovil BR Server, are proud to present you, the Gebriel Safe Zones. (safe as heaven). SAFEZONES? Safezones are excluding areas where peace must be maintained or, sadly, forced. WHAT MOST SAFE PREVENTS Cant kill other players Cant destroy vehicles Cant access any gear for any player/vehicle WHAT GEBRIEL PREVENTS Cant kill other players Cant destroy vehicles Can't mess with any player gear Can't mess with vehicles you does not have ownerity Can't mess with gear of vehicles you does not have ownerity VEHICLE OWNERITY? Is when you have acess to a vehicle inside a safe zone, you have access to the vehicle and to the vehicle gear. HOW TO HAVE VEHICLE OWNERITY IN THE SAFE ZONE? You must enter the safe zone inside the vehicle. If a group of 10 people is on a truck and this truck enters the safe zone, those 10 players will have access to the truck and to the truck gear. No more players will have access to it. HOW TO REMOVE VEHICLE OWNERITY? You must try to invade the vehicle you does not have ownerity. After the first invasion try, a 8 minutes counter will start, and when the counter reachs zero the vehicle will loose it ownerity and will be avaliable to all players, until someone enters again in the safe with it. HOW TO STOP THE 8 MINUTOS COUNTER? One or more of the vehicle owners need to re-enters in the safe with the vehicle. WHAT ABOUT VEHICLES THAT ON SERVER START ARE IN THE SAFE ZONES? They don't have ownerity and don't have god mode. But if a player re-enters with it in the safe zone, he will gain ownerity over it. NOTE Vehicle ownerity is something that only exists inside safe zones. {[THE CODE]} {[THE CODE]} {[THE CODE]} 1) INIT.SQF At the end of your init.sqf file, add this code: if (!isServer) then { //Gebriel Safe [] execVM "custom\safezone.sqf"; }; 2) [MISSION FOLDER]\CUSTOM\SAFEZONE.SQFThis bellow is the main script, it's called from the init.sqf file. Create a new text file, put this code bellow in it, rename the text file to safezone.sqf and put it in your [mission folder]\custom\ folder (create this folder if necessary). Thanks for Maca134 for the Custom Remote Messages Script: //Gebriel Safezones //By Donnovan from Brazil don_incar = 0; don_firedEH_1 = nil; don_godon_1 = 0; inSafeZone = false; [] spawn { private ["_runOneTime","_canbuild","_don_passengers","_don_veh_crew","_don_player_veh","_don_veh_driver"]; waitUntil {!(isNil "canbuild")}; _runOneTime = false; _canbuild = canbuild; while {true} do { waitUntil {!((_canbuild && canbuild) || (!_canbuild && !canbuild)) || !_runOneTime}; _canbuild = canbuild; if (!canbuild) then { player_zombieCheck = {}; fnc_usec_damageHandler = {}; fnc_usec_unconscious = {}; player allowDamage false; player removeAllEventHandlers "handleDamage"; don_godon_1 = 1; inSafeZone = true; sleep 0.025; [] spawn { private ["_myHdEh"]; while {!canbuild} do { _myHdEh = player addEventHandler ["handleDamage", {0}]; sleep 0.02; player removeEventHandler ["handleDamage",_myHdEh]; }; }; if (isNil "don_firedEH_1") then { don_firedEH_1 = 0; sleep 0.025; don_firedEH_1 = player addEventHandler ["Fired",{ cutText ["Can't fire with godon.","PLAIN DOWN", 2]; deleteVehicle (_this select 6); }]; }; }; if (canbuild && _runOneTime) then { [] spawn { for "_x" from 1 to 30 do { if (_x >= 6) then {cutText [format ["%1 seconds to godoff and shoton.", 31-_x], "PLAIN DOWN"];}; sleep 1; if (!canbuild) exitWith {}; if (_x == 30) then { cutText ["Godoff and Shoton!", "PLAIN DOWN"]; player_zombieCheck = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\player_zombieCheck.sqf"; fnc_usec_damageHandler = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\fn_damageHandler.sqf"; fnc_usec_unconscious = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\fn_unconscious.sqf"; player allowDamage true; player removeAllEventHandlers "handleDamage"; player addEventHandler ["handleDamage", {_this call fnc_usec_damageHandler;}]; player removeEventHandler ["Fired", don_firedEH_1]; don_firedEH_1 = nil; don_godon_1 = 0; inSafeZone = false; }; }; }; }; if (!canbuild && don_incar == 1) then { _don_player_veh = don_player_veh; don_veh_crew = crew _don_player_veh; _don_veh_driver = driver _don_player_veh; _don_player_veh allowDamage false; _don_player_veh removeAllEventHandlers "handleDamage"; _don_player_veh addEventHandler ["handleDamage", {0}]; _don_player_veh removeAllEventHandlers "Fired"; _don_player_veh addEventHandler ["Fired",{deleteVehicle (_this select 6);}]; //PASSENGERS NAMES _don_passengers = ""; {if (Alive _x) then {_don_passengers = _don_passengers + format [" %1",name _x];};} forEach don_veh_crew; _don_veh_crew = []; {if (Alive _x) then {_don_veh_crew = _don_veh_crew + [getPlayerUID _x];};} forEach don_veh_crew; //ASSING OWNERS if (player == _don_veh_driver) then { _don_player_veh setVariable ["don_ownerity_code", format ["%1_%2", getPlayerUID player, round diag_tickTime], true]; _don_player_veh setVariable ["don_crew", _don_veh_crew, true]; //CHANGE _don_player_veh setVariable ["don_passengers", _don_passengers, true]; }; }; if (canbuild && don_incar == 1) then { _don_player_veh = don_player_veh; _don_veh_driver = driver _don_player_veh; [_don_player_veh] spawn { for "_x" from 1 to 15 do { sleep 1; if (!canbuild) exitWith {}; if (_x == 15) then { (_this select 0) allowDamage true; (_this select 0) removeAllEventHandlers "handleDamage"; (_this select 0) addEventHandler ["handleDamage", {_this call vehicle_handleDamage;}]; (_this select 0) removeAllEventHandlers "Fired"; }; }; }; //DISASSING OWNERS if (player == _don_veh_driver) then { _don_player_veh setVariable ["don_ownerity_code", nil, true]; _don_player_veh setVariable ["don_crew", nil, true]; _don_player_veh setVariable ["don_passengers", nil, true]; }; }; _runOneTime = true; }; }; [] spawn { private ["_don_veh_crew","_wait_time","_last_mark","_max_time"]; while {true} do { _max_time = 480; waitUntil {sleep 0.0625; vehicle player != player}; don_player_veh = vehicle player; don_incar = 1; if (!canbuild) then { //VEHICLE OWNERITY CHECK _don_veh_crew = don_player_veh getVariable ["don_crew", nil]; if (isNil "_don_veh_crew") then {_don_veh_crew = [getPlayerUID player];}; if !(getPlayerUID player in _don_veh_crew) then { call compile format ['if (isNil "don_%1") then {don_%1 = diag_tickTime;}; _last_mark = don_%1;', don_player_veh getVariable ["don_ownerity_code", 0]]; _wait_time = diag_tickTime - _last_mark; if (_wait_time < _max_time) then { player action ["getOut", don_player_veh]; [objNull, player, rSAY, "error1"] call RE; cuttext [format ["Owners:%1. %2 seconds to liberate.", don_player_veh getVariable ["don_passengers","Owners not found"], round (_max_time - _wait_time)], "PLAIN DOWN"]; cad_pvar_smessage = [format ["%1 is messing with your vehicle! %2 seconds to liberate!", name player, round (_max_time - _wait_time)], _don_veh_crew]; publicVariable "cad_pvar_smessage"; } else { call compile format ['don_%1 = nil;', don_player_veh getVariable ["don_ownerity_code", 0]]; //DISASSING OWNERS don_player_veh setVariable ["don_ownerity_code", nil, true]; don_player_veh setVariable ["don_crew", nil, true]; don_player_veh setVariable ["don_passengers", nil, true]; cuttext [format ["Vehicle is now free for all!"], "PLAIN DOWN"]; cad_pvar_smessage = [format ["One of your safe vehicle is now free and player %1 is in it!", name player], _don_veh_crew]; publicVariable "cad_pvar_smessage"; }; }; don_player_veh allowDamage false; don_player_veh removeAllEventHandlers "handleDamage"; don_player_veh addEventHandler ["handleDamage", {0}]; don_player_veh removeAllEventHandlers "Fired"; don_player_veh addEventHandler ["Fired",{deleteVehicle (_this select 6);}]; }; if (canbuild) then { don_player_veh allowDamage true; don_player_veh removeAllEventHandlers "handleDamage"; don_player_veh addEventHandler ["handleDamage", {_this call vehicle_handleDamage;}]; don_player_veh removeAllEventHandlers "Fired"; //DISASSING OWNERS if (player == driver don_player_veh) then { don_player_veh setVariable ["don_ownerity_code", nil, true]; don_player_veh setVariable ["don_crew", nil, true]; don_player_veh setVariable ["don_passengers", nil, true]; }; }; waitUntil {sleep 0.0625; vehicle player == player}; don_incar = 0; don_player_veh = nil; }; }; //Thanks Maca for the Remote Message idea "cad_pvar_smessage" addPublicVariableEventHandler { private ["_message", "_receivers"]; _message = (_this select 1) select 0; _receivers = (_this select 1) select 1; if (getPlayerUID player in _receivers) then {cutText [_message, "PLAIN DOWN"];}; };3) [MISSION FOLDER]\DAYZ_CODE\COMPILE\FN_GEARMENUCHECKS.SQFThis code bellow goes at the end of your custom dayz_code\compile\fn_gearMenuChecks.sqf. Thanks for Maca134 for the no-player-gear-acess-in-safe script. To have a custom dayz_code\compile\fn_gearMenuChecks.sqf file you will need a custom dayz_code\init\compiles.sqf, since the first is called in game by the second, so you need a custom compiles.sqf that calls your custom fn_gearMenuChecks.sqf file, and since compiles.sqf is now custom, you need to change the call in init.sqf to it, since compiles.sqf is called in-game by init.sqf. More on that later! Sorry for now! If you have any doubt, please ask! //Prevents players opening others backpacks MACA123 if (isNil "inSafeZone") then {inSafeZone = false;}; if ((!canbuild || inSafeZone) and _cTarget isKindOf "Man" and alive _cTarget and (((vehicle player) distance _cTarget) < 12)) then { cutText ["Cannot access other players gear in the safezone." , "PLAIN DOWN"]; _display closeDisplay 1; }; //Gebriel Safezones //by Donnovan from Brazil if (!canbuild) then { private ["_don_iscar","_don_ismycar","_don_crew"]; _don_iscar = false; _don_ismycar = false; if (_cTarget isKindOf "LandVehicle" || _cTarget isKindOf "Air" || _cTarget isKindOf "Ship" ) then { _don_crew = _cTarget getVariable ["don_crew", nil]; if (isNil "_don_crew") then {_don_crew = [getPlayerUID player];}; _don_iscar = true; if ((getPlayerUID player) in _don_crew) then {_don_ismycar = true;}; }; if (_don_iscar && !_don_ismycar) then { [objNull, player, rSAY, "error1"] call RE; cutText ["You can't access this vehicle gear!" , "PLAIN DOWN"]; _display closeDisplay 1; }; };4) ERROR1.OGGThe scipt have a sound file, download it on this link and put the file at the root of your mission folder: http://s000.tinyupload.com/index.php?file_id=69305942403778252911 Add the sound declaration in description.ext. Here is my description.ext: //DONN sounds class CfgSounds { sounds[] = {error1}; class error1 { name="error1"; sound[]={error1.ogg,1,1}; titles[] = {}; }; };You could have more custom sounds on class CfgSounds, if so you need to acomodate then together. This bellow is a example where the Gebriel Safezones error1.ogg sound coexists with another 2 custom sounds (diescream.ogg and caloideploy.ogg): //DONN sounds class CfgSounds { sounds[] = {dieScream,caloideploy,error1}; class dieScream { name="dieScream"; sound[]={diescream.ogg,1,1}; titles[] = {}; }; class caloideploy { name="caloideploy"; sound[]={deploys\bike\caloi_deploy.ogg,1,1}; titles[] = {}; }; class error1 { name="error1"; sound[]={error1.ogg,1,1}; titles[] = {}; }; };5) BATTLEYE FILTERSOn the BE filter publicvariable.txt, search for the line that starts with 5 "". At the end of this line add a space and after the space add !"cad_pvar_s".
-
I have been playing dayz epoch for a while and as a player i knew a fix to safes Items inside being deleted. i have only had one safe ever delete on me with content inside. And i found out the reason. and beileive its a epoch Bug that needs to be looked into. A safe can only hold 25 gun slots , 200 item slots and 10 backpack slots. Now the trick is if u max out one of those slots eventually u have a possibility of your safe content being deleted. i don't know why it deletes but it does. so the fix is to leave at Least 1 slot open with each content. so that means leave at least 1 gun slot open at least 1 item slot open and a weapon slot open so your safe should look like this if u have a full safe (1-25 , 1-200 , 1-10). and doing so i havent had a safe wipe on me yet. Now being a Head admin of three servers i have players coming to me with this problem and they all have said they had at least one of the there slots maxed out. So if anyone can look into this and figure why it wipes your safe while it is maxed out. that would be great. just trying to give some helpful advice and hope this issue is fixed in the future .
-
Hellou I was playing yesterday on MGT epoch server on Arma 3 offcourse. I putted down a lockbox and putted som stuf in it. Todey only hatchet and multigun was gone from it. I think its a bug becouse my friend and i tried an I was only one who was able to use it after I putted it down. And the lockbox and the stuff was the and only those two items was gone. Even the energypacks was there. Hoping u devs can fix this. Peace on the Epoch Streets! Cya!
-
For some reason every time my server restarts safes gear wipes. They don't wipe right on restart they wipe as soon as the player try's to unlock the safe then it wipes. Im using the infistar AntiHack version AH0332E still waiting to get AH332Z. Really need help with this losing players.
-
So as the title suggests, when a player locks his/her safe after placing items in it, they reopen the safe to find the items have been deleted. Does anyone know what is causing this bug and how I can fix it? Errors: I have no edited that file in anyway, not sure why it's giving off errors. 12:33:35 Error in expression <er getVariable["lastPos",_charPos]; if (count _lastPos > 2 and count _charPos > > 12:33:35 Error position: <count _lastPos > 2 and count _charPos > > 12:33:35 Error count: Type Number, expected Array,Config entry 12:33:35 File z\addons\dayz_server\compile\server_playerSync.sqf, line 70 I purposely made no AI spawn because of the type of server my friend is running which is why the 0 AI is Spawning and 0 units are in the mission. 10:37:30 [DZMS]: Running Major Mission SM6. 10:37:33 [DZMS]: (DZMSUnitsMajor) 0 AI Spawned, 0 units in mission. 10:37:38 [DZMS]: (DZMSUnitsMajor) 0 AI Spawned, 0 units in mission. 4 seconds after this came through about the AI missing the errors started, could something in Major Mission SM6 cause this?
- 4 replies
-
- item
- destroying
-
(and 3 more)
Tagged with:
-
Hey guys I am currently having a issue with safes, where when unlocking or locking a safe. It turns to the right then moves it up 3ft. There is no logs in either client/server relating to this and makes purely no sense. The issue at this moment is random and not found the trigger to the reason. I have found that locking the safe or unlocking it to the opposite state moves it back. Also server restart moves the item back to where it should be. The only weird thing i have seen is when locking a safe it briefly disappears before completing as a locked safe. cheers guys
-
Hey guys Not the first time i have posted this but I'm currently having a issue on my server. When locking a safe it will briefly disappear then re-appear. The main issue is that upon locking the safe there is a small chance the safe will actually move and turn in a random direction. There are no logs and in the DB the safe has never moved. Once the server restarts the safe moves back or the safe is unlocked again, it then moves back. This is rare so i hard to reproduce. Any ideas ? Cheers
-
How can I change the number of slots in a vault for example from 200 to 600, or something?
-
Is there any way that I can add safe zones to the panthera traders? All the scripts that I have found are just for Chernarus. I found this script: Click Me
-
Safes Crates Placed Facing East Not Accessible - No Gear Menu
epochu posted a question in Server Install
I just placed a safe facing south and it worked fine. Then I placed another safe facing east and it was not accessible, no gear menu or anything could be pulled up in any view mode or at any distance. I placed a second safe facing East and got the same failure. A safe I had previously placed facing south works fine, along with the new one I placed facing south. I also noticed this happened with some crates I placed. They can be accessed from the south side, but not the east side. In the image below the safes and crates on the right are facing south and are accessible, except for the east side of crates.- 2 replies
-
- 1.0.4.2
- not accessible
-
(and 3 more)
Tagged with:
-
Hi guys, first post here but a really urgent one: We patched our server today from 1.0.4 to 1.0.4.1 and suddenly no one is able to access the contents of his/her safe what makes it for most people hardly playable if not unplayable at all. What happens is: One person goes to a safe and is able to enter the code. The unlocking animation starts and after its finished there is no way of accessing the safe's contents. If another person tries to gear the safe he is able to re-enter the code as usual but when he tries to gear it, it says something like: Cannot access safe, someone is already using it. We never had this problem before and only did a few minor updates to our server today that are not likely to cause anything regarding safes since some edited missions and translations should not do anything to the way safes are accessible, right? We are really in need for some quick help/suggestions here, since downtime is not going to help our sever very much in its starting phase just after promoting it ... :S So thank you very much in advance for your help and let the answers come - I sure will post the solution/fix if some of you are experiencing the same problem as well! Cheers, Saltus
-
Just a quick question.. I'm currently running this: http://opendayz.net/threads/epoch-safe-zone-commander-god-anti-backpack-stealing-no-shooting-no-vehicle-weapons.14877/ and I want to remove protection from the Bandit trader because well, it just doesn't fit in in my eyes. Having god mode and not being able to be pick pocketed where the bad guys hang out is silly. If anyone has any idea please let me know. Thanks.
-
First post on here, even though I've been playing on a few PVE Epoch servers since around release! On to the questions, considering the safe is so expensive (unless you play more than 6 hours a day)... Wouldn't you prefer the lockbox, especially since the spawn frequency has been increased on the business suit zombies... Another thing I'm considering before buying/looting is which will be better for Lingor, even though it doesn't matter as much. Anyone have any ideas on the vodnik vs armored suv decision, or has anyone played on Lingor with them? I have enough for both, but, considering Lingor is tropical will many lakes and rivers to cross, the slow, but nevertheless, watertight vodnik will cross these rivers with ease. Armoured SUV however won't, right? But it is, I think, a little more armored and clearly has the better gun (M134 Minigun) which can mow down AI... Looking forward to your thoughts :P Thanks in advance, Seb ^_^
-
Hi guys, Yesterday I worked my a** off to get armored SUV (2 Briefcases). When I finally had it I bought this great vehicle. Back in my base before logging off, I wanted to place the key into the Safe but forgot that I got no spaces left for weapons (which is also for toolbelt items). The key disappeared from my inventory and I tried to look for it around the safe and my base but no luck... My question is: When I put an item into a safe that is full, does the item disappear automatically or is it thrown somewhere around the safe?
-
I've been playing Epoch for a while now on the same server with some friends and randomly I now can't open my safe.I know the combination and other people can open it for me, but when I try the digital display flashes up for a nano second and vanishes.I placed another and get the same thing.I delete the Epoch file and downloaded it again hoping it would fix it but when I logged in it still does the same.Can someone please help ..... please!!!
-
Hi there, we seem to have to accept that toolbelt items count as weapons when placed into a container. Specifically when talking about safes this is a major disadvantage: every key (I like to store duplicates made with the keymaker set there, too), every GPS/Rangefinder, even a box of matches occupies one of the few weapon slots. I assume the problem will become more prominent with the next update: a 10% chance per construction step to break tools equals to a less than 60% chance that your tools will be intact after the 5 construction steps needed for bulding a shed etc. That means that you'll have to hoard toolboxes in your base (where else would you build) and those take up weapon slots, too. So I'd suggest that in order to overcome the unrealistic ToolbeltItem=Weapon link the Weapon capacity of safes should be increased drastically, even if this is unrealistic, too. I don't see much of a downside here, as there is no advantage to putting dozens of weapons into the safe.
-
Hi There, So I've been playing Epoch for a while now, and I've spent a lot of time talking with the solo players on the server I frequent, and all I seem to hear is misery stories of having camps raided and gold lost before they are able to save enough to purchase themselves a safe. Originally I put this down to them not hiding their camp well enough etc, or skillful banditry, but I've been thinking about it recently and thought this might be a interesting observation/solution for the Epoch team to even the playing field a little for solo players. I propose introducing a 3 tier safe system, similar to how the bags are currently different sizes. Tier 1: "Lockbox" Cost: 2 10oz Gold. Item slots: 15 Use: 2 10oz gold is definitely achievable for a solo player in one session, allowing them the choice to have a box to store either 1 gun and 2 mags, or use to save for a larger safe much more safely, and it doesn't stop bandit players from being able to raid the rest of whatever camp this player has set up. Tier 2: "Safe" Cost: 12 10oz Gold Item Slots: 200, 20 Guns, 10 Backpacks. Use: This is the current safe in Epoch, and it would stay essentially the same. Tier 3: "Vault" Cost: 5 50oz Gold Item Slots: 500, 50 Guns, 20 Backpacks. Use: Clan level storage, Larger model so it's more obvious to other players they are in a clan held area. The only issue with this idea is the need to introduce another tier of gold storage. However this tier isn't strictly necessary, just an extra interesting thought. Anyway, I'd love to hear other players experiences with safes, the dev's thoughts on this idea, and potential ideas on how to make Epoch more fun for lone wolves.
- 3 replies
-
- Safe
- Lone Wolves
-
(and 1 more)
Tagged with: