Jump to content

tallboy2k7

Member
  • Posts

    34
  • Joined

  • Last visited

Posts posted by tallboy2k7

  1. I believe my compiles is fine, any idea which file is called to refresh the players status?

     

    Touche salesman you win, for some reason my compiles was missing a SMALL block of code...

     

    player_guiControlFlash = {
    private["_control"];
    _control = _this;
    if (ctrlShown _control) then {
     
    _control ctrlShow false;
    } else {
     
    _control ctrlShow true;
    };
    };
     
    not sure why , but its fixed now.
     
    Thanks for forcing me to double check it, I never thought it would be that.
  2. Not sure why, but the GUI wont update/refresh upon taking damage or for food/thirst ect. More specifically it WILL update ONCE per log-in. Not sure why this is happening as Im not sure what file deals with that sort of thing. If you're not sure why its happening maybe someone can atleast point me to the file that would control that. 

     

    I've already tried a different GUI  via player_updateUI and that doesnt seem to help ...something is pointing to the wrong place somewhere... I can feel it !

  3. Mind sharing how you fixed this please?

     

     

    *FIXED*

     

    For some reason my compiles.sqf was missing this block of code

     

    player_guiControlFlash = {
    private["_control"];
    _control = _this;
    if (ctrlShown _control) then {
     
    _control ctrlShow false;
    } else {
     
    _control ctrlShow true;
    };
    };
  4. Hmm running into a new issue since update, after a few minutes of database saving the redis-server.exe crashes.

     

    Edit:

    Error in redis console says- Can't save in background:fork: invalid argument

     

    BeginForkOperation: system error caught. error code =0x000005af, message=BeginForkOperation: VirtualProtect failed: unknown error

  5. Yup no problem at all, if you dont have steam on the server box, update it on your gaming PC, sort the files by DATE in the Arma 3 folder and just copy the ones that were updated. Quick and easy - server was back up within 5 minutes.

  6. Thanks for the compilation, however instead of using it as is I merged into my plot4life compilation which was easier than the other way around.  All the stuff is working mostly right and the money is saving to the database...however upon relog characters come back with 0 coins both in bank and on person but the database still shows the amount. There are no errors in my RPT so I was hoping you could shed some light on where in the scripts the bankmoney and cashmoney is called from the database to the player upon log in?

     

    Thanks

  7. Now sure when i happened but at some point I love the option to refuel vehicles with fuel barrels and jerry cans.

     

    Assuming is a selfActions issue, below is my fn_selfActions.sqf

    Also...how the hell do I post the code in a 'spolier' so I dont look like a dick -_-

      
    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);
    
    _nearLight = 	nearestObject [player,"LitObject"];
    _canPickLight = false;
    if (!isNull _nearLight) then {
    	if (_nearLight distance player < 4) then {
    		_canPickLight = isNull (_nearLight getVariable ["owner",objNull]);
    	};
    };
    
    //Sirens
    _isCopcar = typeOf _vehicle in ["HMMWV_Ambulance"];
    
    if (_inVehicle and _isCopcar and (driver _vehicle == player)) then {
            dayz_addsirens = _vehicle;
        if (s_player_sirens_on < 0) then {
            s_player_sirens_on = dayz_addsirens addAction ["Sirens on","custom\sirens\sirens_on.sqf",dayz_addsirens,2,false,true,"",""];
            s_player_sirens_off = dayz_addsirens addAction ["Sirens off","custom\sirens\sirens_off.sqf",dayz_addsirens,2,false,true,"",""];
            };
        } else {
            dayz_addsirens removeAction s_player_sirens_on;
            dayz_addsirens removeAction s_player_sirens_off;
            s_player_sirens_on = -1;
            s_player_sirens_off = -1;
        };
    
    //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, "",""];
    		};
    	};
    };
    
    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;
    	};
    	_playerUID = getPlayerUID player;
    	_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 (_canDo && (speed player <= 1) && (_cursorTarget isKindOf "Plastic_Pole_EP1_DZ")) then {
    		 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 (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 (nearestObjects [_cursorTarget, ["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_APlotforLife) 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;
    	};
    
    	// CURSOR TARGET ALIVE
    	if(_isAlive) then {
    		diag_log format["fn_actons: [PlayerUID: %1] [_ownerID: %2] [_isModularDoor: %3] [typeOfCursorTarget: %4]",_playerUID, _ownerID, _isModularDoor, _typeOfCursorTarget];
    		diag_log format["[_isDestructable:%1 ] [_isWreck: %2 ] [_isRemovable: %3 ] [_isWreckBuilding: %4 ]",_isDestructable, _isWreck, _isRemovable, _isWreckBuilding];
    		//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 && (_playerUID == _ownerID)) then {
                if(_hasToolbox && "ItemCrowbar" in _itemsPlayer) then {
                        _player_deleteBuild = true;
                };
        };
    //Allow owners to delete modular doors without locks
        if(_isModularDoor && (_playerUID == _ownerID)) then {
                if(_hasToolbox && "ItemCrowbar" in _itemsPlayer) 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;
    				};
    			} forEach DZE_HeliAllowToTow;
    		};
     
    		//diag_log format["CREW: %1 ALLOW: %2",(count (crew _cursorTarget)),_allowTow];
     
    		if (_allowTow) then {
    			_liftHelis = nearestObjects [player, DZE_HeliAllowTowFrom, 15];
    			{
    				if(!_found) then {
    					_posL = getPos _x;
    					_posC = getPos _cursorTarget;
    					_height = (_posL select 2) - (_posC select 2);
    					_hasAttached = _x getVariable["hasAttached",false];
    					if(_height < 15 and _height > 5 and (typeName _hasAttached != "OBJECT")) then {
    						if(((abs((_posL select 0) - (_posC select 0))) < 10) and ((abs((_posL select 1) - (_posC select 1))) < 10)) then {
    							_liftHeli = _x;
    							_found = true;
    						};
    					};
    				};
    			} forEach _liftHelis;
    		};
     
    		//diag_log format["HELI: %1 TARGET: %2",_found,_cursorTarget];
     
    		_attached = _cursorTarget getVariable["attached",false];
    		if(_found and _allowTow and _canDo and !locked _cursorTarget and !_isPZombie and (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];
    					if (_typeOfCursorTarget in ColourVehicles) then {
    		private ["_paint"];
    		_paint = player addAction ["Paint", "Paint\player_paint_init.sqf",_cursorTarget, 2, true, true, "", ""];
    		s_player_lockunlock set [count s_player_lockunlock,_paint];
    	};
    					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 {
    		 // --------ZUPA - Check Wallet --------
    				s_player_studybody = player addAction [("<t color=""#FF0000"">"+("Check Wallet") + "</t>"), "Scripts\Gold_Coin_system\Check_Wallet\check_wallet.sqf",_cursorTarget, 0, false, true, "",""];
    			// ---- ZUPA END ---
    		};
    	} 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, 0, false, true, "",""];
    	};
    } 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;
    	};
    
    ///////////////banking FROM HERE
    
    //	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;
    	//};
    
    	// banking atm
    	
    
    	if(_typeOfCursorTarget in DZE_ATM  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;
    	};
    	
    	_banker = _cursorTarget getVariable["BankerBot",0];
    
    if((_banker == 1) and (player distance _cursorTarget < 3)) then {		
    		if (s_bank_dialog9 < 0) then {
    			s_bank_dialog9 = player addAction ["SBDollars Banking Service", "Scripts\Gold_Coin_system\Bank_Dialog\bank_dialog.sqf",_cursorTarget, 3, true, true, "", ""];
    		};	
    		if (s_bank_dialog3 < 0) then {
    			s_bank_dialog3 = player addAction ["Transfer Money", "gold\transfer\transfer_dialog.sqf",_cursorTarget, 3, true, true, "", ""];
    		};		
    	} else {		
    		player removeAction s_bank_dialog9;
    		s_bank_dialog9 = -1;
    		//player removeAction s_bank_dialog3;
    		///s_bank_dialog3 = -1;
    	};
    
    ////////////////// TO HERE
    	
    	
    	//Allow owner to pack vault
    	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)], "gold\give_player_dialog.sqf",_cursorTarget, 3, true, true, "", ""];
        //};
    //} else {
       // player removeAction s_givemoney_dialog;
        //s_givemoney_dialog = -1;
    //};
    
    	
    	//Fuel Pump
    	if(_typeOfCursorTarget in dayz_fuelpumparray) then {	
    		if (s_player_fuelauto < 0) then {
    			
    			// check if Generator_DZ is running within 30 meters
    			_findNearestGens = nearestObjects [player, ["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;
    	};
    	
    	//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;
    		};
    	};
    
    	// 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;
    
    	//Others
    	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;
    	//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_plotManagement;
    	s_player_plotManagement = -1;
    	player removeAction s_player_manageDoor;
    	s_player_manageDoor = -1; // u might also want to add this to variables reset in your variables.sqf
    	
        // 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_bank_dialog3;
    	s_bank_dialog3 = -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;
    };
    
    
    

    [ /spoiler]

  8. Here is the server_monitor.sqf, sorry for not posting it before, had no clue which file would be causing the "rubber banding".

    private ["_nul","_result","_pos","_wsDone","_dir","_isOK","_countr","_objWpnTypes","_objWpnQty","_dam","_selection","_totalvehicles","_object","_idKey","_type","_ownerID","_worldspace","_intentory","_hitPoints","_fuel","_damage","_key","_vehLimit","_hiveResponse","_objectCount","_codeCount","_data","_status","_val","_traderid","_retrader","_traderData","_id","_lockable","_debugMarkerPosition","_vehicle_0","_bQty","_vQty","_BuildingQueue","_objectQueue","_superkey","_shutdown","_res","_hiveLoaded"];
    
    dayz_versionNo = 		getText(configFile >> "CfgMods" >> "DayZ" >> "version");
    dayz_hiveVersionNo = 	getNumber(configFile >> "CfgMods" >> "DayZ" >> "hiveVersion");
    
    _hiveLoaded = false;
    
    waitUntil{initialized};
    
    diag_log "HIVE: Starting";
    
    waituntil{isNil "sm_done"};
    	
    if(isnil "MaxVehicleLimit") then {
    	MaxVehicleLimit = 50;
    };
    
    if(isnil "MaxDynamicDebris") then {
    	MaxDynamicDebris = 100;
    };
    
    if(isnil "MaxAmmoBoxes") then {
    	MaxAmmoBoxes = 3;
    };
    
    if(isnil "MaxMineVeins") then {
    	MaxMineVeins = 50;
    };
    
    if (isServer && isNil "sm_done") then {
    
    	serverVehicleCounter = [];
    	_hiveResponse = [];
    
    	for "_i" from 1 to 5 do {
    
    		diag_log "HIVE: trying to get objects";
    
    		_key = format["CHILD:302:%1:", dayZ_instance];
    		_hiveResponse = _key call server_hiveReadWrite;  
    
    		if ((((isnil "_hiveResponse") || {(typeName _hiveResponse != "ARRAY")}) || {((typeName (_hiveResponse select 1)) != "SCALAR")})) then {
    
    			if ((_hiveResponse select 1) == "Instance already initialized") then {
    				_superkey = profileNamespace getVariable "SUPERKEY";
    				_shutdown = format["CHILD:400:%1:", _superkey];
    				_res = _shutdown call server_hiveReadWrite;
    				diag_log ("HIVE: attempt to kill.. HiveExt response:"+str(_res));
    			} else {
    				diag_log ("HIVE: connection problem... HiveExt response:"+str(_hiveResponse));
    			};
    			_hiveResponse = ["",0];
    		} 
    		else {
    			diag_log ("HIVE: found "+str(_hiveResponse select 1)+" objects" );
    			_i = 99;
    		};
    	};
    
    	_BuildingQueue = [];
    	_objectQueue = [];
    
    	if ((_hiveResponse select 0) == "ObjectStreamStart") then {
    
    		profileNamespace setVariable ["SUPERKEY",(_hiveResponse select 2)];
    
    		_hiveLoaded = true;
    
    		diag_log ("HIVE: Commence Object Streaming...");
    
    		_key = format["CHILD:302:%1:", dayZ_instance];
    		_objectCount = _hiveResponse select 1;
    		_bQty = 0;
    		_vQty = 0;
    
    		for "_i" from 1 to _objectCount do {
    
    			_hiveResponse = _key call server_hiveReadWriteLarge;
    
    			if ((_hiveResponse select 2) isKindOf "ModularItems") then {
    				_BuildingQueue set [_bQty,_hiveResponse];
    				_bQty = _bQty + 1;
    			} else {
    				_objectQueue set [_vQty,_hiveResponse];
    				_vQty = _vQty + 1;
    			};
    		};
    		diag_log ("HIVE: got " + str(_bQty) + " Epoch Objects and " + str(_vQty) + " Vehicles");
    	};
    	
    	_totalvehicles = 0;
    	{
    		_idKey = _x select 1;
    		_type = _x select 2;
    		_ownerID = _x select 3;
    
    		_worldspace = _x select 4;
    		_intentory = _x select 5;
    		_hitPoints = _x select 6;
    		_fuel = _x select 7;
    		_damage = _x select 8;
    		_dir = 0;
    		_pos = [0,0,0];
    		_wsDone = false;
    
    		if (count _worldspace >= 2) then
    		{
    			_dir = _worldspace select 0;
    			if (count (_worldspace select 1) == 3) then {
    				_pos = _worldspace select 1;
    				_wsDone = true;
    			}
    		};			
    
    		if (!_wsDone) then {
    			if (count _worldspace >= 1) then { _dir = _worldspace select 0; };
    			_pos = [getMarkerPos "center",0,4000,10,0,2000,0] call BIS_fnc_findSafePos;
    			if (count _pos < 3) then { _pos = [_pos select 0,_pos select 1,0]; };
    			diag_log ("MOVED OBJ: " + str(_idKey) + " of class " + _type + " to pos: " + str(_pos));
    		};
    
    		// Realign characterID to OwnerPUID - need to force save though.
    		
    		if (count _worldspace < 3) then
    		{
    			_worldspace set [count _worldspace, "0"];
    		};		
    
    		_ownerPUID = _worldspace select 2;
    		
    		// diag_log format["Server_monitor: [ObjectID = %1]  [ClassID = %2] [_ownerPUID = %3]", _idKey, _type, _ownerPUID];
    		
    		
    		if (_damage < 1) then {
    
    			_object = createVehicle [_type, _pos, [], 0, "CAN_COLLIDE"];
    			if ((typeOf _object) in  DZE_DoorsLocked) then {
    			_object setVariable ["doorfriends", _intentory, true];
    			};
    			_object setVariable ["lastUpdate",time];
    			_object setVariable ["ObjectID", _idKey, true];
    			if ((typeOf _object) == "Plastic_Pole_EP1_DZ") then {
    			_object setVariable ["plotfriends", _intentory, true];
    			};
    			_object setVariable ["ownerPUID", _ownerPUID, true];
    			_lockable = 0;
    
    			if(isNumber (configFile >> "CfgVehicles" >> _type >> "lockable")) then {
    				_lockable = getNumber(configFile >> "CfgVehicles" >> _type >> "lockable");
    			};
    
    			if (_lockable == 4) then {
    				_codeCount = (count (toArray _ownerID));
    				if(_codeCount == 3) then {
    					_ownerID = format["0%1", _ownerID];
    				};
    				if(_codeCount == 2) then {
    					_ownerID = format["00%1", _ownerID];
    				};
    				if(_codeCount == 1) then {
    					_ownerID = format["000%1", _ownerID];
    				};
    			};
    
    			if (_lockable == 3) then {
    				_codeCount = (count (toArray _ownerID));
    				if(_codeCount == 2) then {
    					_ownerID = format["0%1", _ownerID];
    				};
    				if(_codeCount == 1) then {
    					_ownerID = format["00%1", _ownerID];
    				};
    			};
    
    			_object setVariable ["CharacterID", _ownerID, true];
    
    			clearWeaponCargoGlobal  _object;
    			clearMagazineCargoGlobal  _object;
    
    			_object setdir _dir;
    			_object setposATL _pos;
    			_object setDamage _damage;
    //#########################INDESTRUCTIBLE ITEMS#########################
    			if ((typeOf _object) in indestructible) then {
    				_object addEventHandler ["HandleDamage", {false}];
    				_object enableSimulation false;
    			} else {
    				_object addMPEventHandler ["MPKilled",{_this call object_handleServerKilled;}];
    			};
    //######################################################################
    
    //#########################REMOVED FOR INDESTRUCTIBLE ITEMS#########################
    //				if (DZE_GodModeBase) then {
    //					_object addEventHandler ["HandleDamage", {false}];
    //				} else {
    //					_object addMPEventHandler ["MPKilled",{_this call object_handleServerKilled;}];
    //				};
    //##################################################################################
    				_object enableSimulation false;
    				_object setVariable ["OEMPos", _pos, true];
    			};
    
    			 if ((count _intentory > 0) && !(typeOf( _object) == "Plastic_Pole_EP1_DZ") && !(typeOf( _object) in  DZE_DoorsLocked)) then {
    				if (_type in DZE_LockedStorage) then {
    					_object setVariable ["WeaponCargo", (_intentory select 0),true];
    					_object setVariable ["MagazineCargo", (_intentory select 1),true];
    					_object setVariable ["BackpackCargo", (_intentory select 2),true];
    				} else {
    					_objWpnTypes = (_intentory select 0) select 0;
    					_objWpnQty = (_intentory select 0) select 1;
    					_countr = 0;					
    					{
    						if(_x in (DZE_REPLACE_WEAPONS select 0)) then {
    							_x = (DZE_REPLACE_WEAPONS select 1) select ((DZE_REPLACE_WEAPONS select 0) find _x);
    						};
    						_isOK = 	isClass(configFile >> "CfgWeapons" >> _x);
    						if (_isOK) then {
    							_object addWeaponCargoGlobal [_x,(_objWpnQty select _countr)];
    						};
    						_countr = _countr + 1;
    					} count _objWpnTypes; 
    
    					_objWpnTypes = (_intentory select 1) select 0;
    					_objWpnQty = (_intentory select 1) select 1;
    					_countr = 0;
    
    					{
    						if (_x == "BoltSteel") then { _x = "WoodenArrow" };
    						if (_x == "ItemTent") then { _x = "ItemTentOld" };
    						_isOK = 	isClass(configFile >> "CfgMagazines" >> _x);
    						if (_isOK) then {
    							_object addMagazineCargoGlobal [_x,(_objWpnQty select _countr)];
    						};
    						_countr = _countr + 1;
    					} count _objWpnTypes;
    
    					_objWpnTypes = (_intentory select 2) select 0;
    					_objWpnQty = (_intentory select 2) select 1;
    					_countr = 0;
    
    					{
    						_isOK = 	isClass(configFile >> "CfgVehicles" >> _x);
    						if (_isOK) then {
    							_object addBackpackCargoGlobal [_x,(_objWpnQty select _countr)];
    						};
    						_countr = _countr + 1;
    					} count _objWpnTypes;
    				};
    			};	
    
    			if (_object isKindOf "AllVehicles") then {
    			private ["_colour","_colour2","_clrinit","_clrinit2"];
    				{
    					_selection = _x select 0;
    					_dam = _x select 1;
    					if (_selection in dayZ_explosiveParts && _dam > 0.8) then {_dam = 0.8};
    					[_object,_selection,_dam] call object_setFixServer;
    				} count _hitpoints;
    				if(count _worldspace >= 4) then{	
            if (((typeName(_worldspace select 2)) == "STRING") and ((typeName(_worldspace select 3)) == "STRING")) then {
    		_colour = _worldspace select 2;
    		_colour2 = _worldspace select 3;
    					
    		if (_colour != "0") then {
    			_object setVariable ["Colour",_colour,true];
    			_clrinit = format ["#(argb,8,8,3)color(%1)",_colour];
    			_object setVehicleInit "this setObjectTexture [0,"+str _clrinit+"];";
    		};
    		if (_colour2 != "0") then {			
    			_object setVariable ["Colour2",_colour2,true];
    			_clrinit2 = format ["#(argb,8,8,3)color(%1)",_colour2];
    			_object setVehicleInit "this setObjectTexture [1,"+str _clrinit2+"];";
    		};
    	};
    };
    
    				_object setFuel _fuel;
    
    				if (!((typeOf _object) in dayz_allowedObjects)) then {
    					
    					_object call fnc_veh_ResetEH;		
    
    					if(_ownerID != "0" and !(_object isKindOf "Bicycle")) then {
    					_object setvehiclelock "locked";
    					_object setVariable ["R3F_LOG_disabled",true,true];
    				};
    
    					_totalvehicles = _totalvehicles + 1;
    
    					serverVehicleCounter set [count serverVehicleCounter,_type];
    				};
    			};
    			PVDZE_serverObjectMonitor set [count PVDZE_serverObjectMonitor,_object];
    		};
    	} count (_BuildingQueue + _objectQueue);
    
    	if !(DZE_ConfigTrader) then {
    		{
    			_traderData = call compile format["menu_%1;",_x];
    
    			if(!isNil "_traderData") then {
    				{
    					_traderid = _x select 1;
    					_retrader = [];
    					_key = format["CHILD:399:%1:",_traderid];
    					_data = "HiveEXT" callExtension _key;
    					_result = call compile format ["%1",_data];
    					_status = _result select 0;
    
    					if (_status == "ObjectStreamStart") then {
    						_val = _result select 1;
    						call compile format["ServerTcache_%1 = [];",_traderid];
    						for "_i" from 1 to _val do {
    							_data = "HiveEXT" callExtension _key;
    							_result = call compile format ["%1",_data];
    							call compile format["ServerTcache_%1 set [count ServerTcache_%1,%2]",_traderid,_result];
    							_retrader set [count _retrader,_result];
    						};
    					};
    
    				} forEach (_traderData select 0);
    			};
    		} forEach serverTraders;
    	};
    
    	if (_hiveLoaded) then {
    		_vehLimit = MaxVehicleLimit - _totalvehicles;
    		if(_vehLimit > 0) then {
    			diag_log ("HIVE: Spawning # of Vehicles: " + str(_vehLimit));
    			for "_x" from 1 to _vehLimit do {
    				[] spawn spawn_vehicles;
    			};
    		} else {
    			diag_log "HIVE: Vehicle Spawn limit reached!";
    		};
    	};
    	
    	diag_log ("HIVE: Spawning # of Debris: " + str(MaxDynamicDebris));
    
    	for "_x" from 1 to MaxDynamicDebris do {
    		[] spawn spawn_roadblocks;
    	};
    
    	diag_log ("HIVE: Spawning # of Ammo Boxes: " + str(MaxAmmoBoxes));
    
    	for "_x" from 1 to MaxAmmoBoxes do {
    		[] spawn spawn_ammosupply;
    	};
    
    	diag_log ("HIVE: Spawning # of Veins: " + str(MaxMineVeins));
    
    	for "_x" from 1 to MaxMineVeins do {
    		[] spawn spawn_mineveins;
    	};
    
    	if(isnil "dayz_MapArea") then {
    		dayz_MapArea = 10000;
    	};
    
    	if(isnil "HeliCrashArea") then {
    		HeliCrashArea = dayz_MapArea / 2;
    	};
    
    	if(isnil "OldHeliCrash") then {
    		OldHeliCrash = false;
    	};
    
    	if(OldHeliCrash) then {
    		_nul = [3, 4, (50 * 60), (15 * 60), 0.75, 'center', HeliCrashArea, true, false] spawn server_spawnCrashSite;
    	};
    
    	if (isDedicated) then {
    		_id = [] spawn server_spawnEvents;
    		[] spawn {
    			private ["_id"];
    			sleep 200;
    			waitUntil {!isNil "server_spawnCleanAnimals"};
    			_id = [] execFSM "\z\addons\dayz_server\system\server_cleanup.fsm";
    		};
    
    		_debugMarkerPosition = getMarkerPos "respawn_west";
    		_debugMarkerPosition = [(_debugMarkerPosition select 0),(_debugMarkerPosition select 1),1];
    		_vehicle_0 = createVehicle ["DebugBox_DZ", _debugMarkerPosition, [], 0, "CAN_COLLIDE"];
    		_vehicle_0 setPos _debugMarkerPosition;
    		_vehicle_0 setVariable ["ObjectID","1",true];
    
    		if(isnil "spawnMarkerCount") then {
    			spawnMarkerCount = 10;
    		};
    		
    		actualSpawnMarkerCount = 0;
    
    		for "_i" from 0 to spawnMarkerCount do {
    			if (!([(getMarkerPos format["spawn%1", _i]), [0,0,0]] call BIS_fnc_areEqual)) then {
    				actualSpawnMarkerCount = actualSpawnMarkerCount + 1;
    			} else {
    				_i = spawnMarkerCount + 99;
    			};
    		};
    		diag_log format["Total Number of spawn locations %1", actualSpawnMarkerCount];
    		endLoadingScreen;
    	};
    	ExecVM "\z\addons\dayz_server\WAI\init.sqf";
    	allowConnection = true;	
    	sm_done = true;
    	publicVariable "sm_done";
    };
  9. Im having the EXACT same issue, I didnt think it could be caused by those errors though , but I DO have the exact same errors in my RPT.

    PLEASE let me know if you figure out this issue hah. 

     

    If your issue is the same as mine, all vehicle positions(and vehicle inventories) are saved to the database upon the FIRST restart after vehicle is purchased or spawned in.

    Every restart/death of player AFTER that initial restart, the vehicle will teleport instantly back to the first saved position...

     

    Can someone let me know what files deal with vehicle position saving??

  10. Hey there, thanks for the script!

    Having an issue though, only able to get my banker to spawn once. He is only spawning at the first instance of the code and not for the other two spots. What am I doing wrong?

    
    // Banker - Selca
    _unit_1301 = objNull;
    if (true) then
    {
      _this = createAgent ["Functionary1_EP1_DZ", [8697.4,3172.6,0.002], [], 0, "CAN_COLLIDE"];
      _unit_1301 = _this;
      _this setDir 180;
      _this setVehicleInit "this allowDammage false; this disableAI 'FSM'; this disableAI 'MOVE'; this disableAI 'AUTOTARGET'; this disableAI 'TARGET'; this setBehaviour 'CARELESS'; this forceSpeed 0; this setVariable [""BankerBot"",1,true];";
      _this setUnitAbility 0.60000002;
    _this allowDammage false; _this disableAI 'FSM'; _this disableAI 'MOVE'; _this disableAI 'AUTOTARGET'; _this disableAI 'TARGET'; _this setBehaviour 'CARELESS'; _this forceSpeed 0; _this enableSimulation false;_this setVariable ["BankerBot",1,true];};
    
    / Banker - Pikia
    _unit_1302 = objNull;
    if (true) then
    {
      _this = createAgent ["Functionary1_EP1_DZ", [4416.1,1621.53,0.001], [], 0, "CAN_COLLIDE"];
      _unit_1302 = _this;
      _this setDir 270;
      _this setVehicleInit "this allowDammage false; this disableAI 'FSM'; this disableAI 'MOVE'; this disableAI 'AUTOTARGET'; this disableAI 'TARGET'; this setBehaviour 'CARELESS'; this forceSpeed 0; this setVariable [""BankerBot"",1,true];";
      _this setUnitAbility 0.60000002;
    _this allowDammage false; _this disableAI 'FSM'; _this disableAI 'MOVE'; _this disableAI 'AUTOTARGET'; _this disableAI 'TARGET'; _this setBehaviour 'CARELESS'; _this forceSpeed 0; _this enableSimulation false;_this setVariable ["BankerBot",1,true];};
    
    / Banker - Planica
    _unit_1303 = objNull;
    if (true) then
    {
      _this = createAgent ["Functionary1_EP1_DZ", [4322.2,6311.09,0.001], [], 0, "CAN_COLLIDE"];
      _unit_1303 = _this;
      _this setDir 270;
      _this setVehicleInit "this allowDammage false; this disableAI 'FSM'; this disableAI 'MOVE'; this disableAI 'AUTOTARGET'; this disableAI 'TARGET'; this setBehaviour 'CARELESS'; this forceSpeed 0; this setVariable [""BankerBot"",1,true];";
      _this setUnitAbility 0.60000002;
    _this allowDammage false; _this disableAI 'FSM'; _this disableAI 'MOVE'; _this disableAI 'AUTOTARGET'; _this disableAI 'TARGET'; _this setBehaviour 'CARELESS'; _this forceSpeed 0; _this enableSimulation false;_this setVariable ["BankerBot",1,true];};
    
    
×
×
  • Create New...