GamerTV Posted November 21, 2016 Report Share Posted November 21, 2016 Should I also change in private also_intentory? (server_monitor.sqf) 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"]; Link to comment Share on other sites More sharing options...
juandayz Posted November 21, 2016 Report Share Posted November 21, 2016 14 minutes ago, GamerTV said: Should I also change in private also_intentory? (server_monitor.sqf) 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"]; into private and everywhere. just open your note++ choose "Search------->Replace". "Find What: _intentory" "Replace with: _inventory" thers almost 14 words to change GamerTV 1 Link to comment Share on other sites More sharing options...
GamerTV Posted November 21, 2016 Report Share Posted November 21, 2016 3 hours ago, juandayz said: 4 hours ago, GamerTV said: Should I also change in private also_intentory? (server_monitor.sqf) 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"]; into private and everywhere. just open your note++ choose "Search------->Replace". "Find What: _intentory" "Replace with: _inventory" thers almost 14 words to change THX !!! you are the best juandayz 1 Link to comment Share on other sites More sharing options...
looter809 Posted November 21, 2016 Report Share Posted November 21, 2016 Hey guys. I'm not very good at coding. Is there a way to automatically add the owner to the plot pole? To somehow have "call PlotAddFriend;" after placing the plot pole or something? I can't find where the code is that says "you have placed a 30m plot pole" but i figured i could copy that file to my mpmissioncache and add "add PlotAddFriend;" to it or something. Maybe this is a weird way to do it. Any suggestions to auto add the owner? My other Idea was to use the PlayerBuild.sqf that is already in Snap_Pro folder and maybe do // check if friendly to owner if(dayz_characterID == _ownerID) then { //Keep ownership // owner can build anything within his plot except other plots if(!_isPole) then { _canBuildOnPlot = true; call PlotAddFriend; }; Would that work maybe? Link to comment Share on other sites More sharing options...
Brody Posted November 26, 2016 Report Share Posted November 26, 2016 where the hell are the files listed in step 7 !?! Link to comment Share on other sites More sharing options...
Brody Posted November 26, 2016 Report Share Posted November 26, 2016 31 minutes ago, Brody said: where the hell are the files listed in step 7 !?! and 6 to Link to comment Share on other sites More sharing options...
juandayz Posted November 26, 2016 Report Share Posted November 26, 2016 7 hours ago, Brody said: and 6 to step 6 do not need chhanges... for step 7 you need go back to step 5. see: Zupa´s say : "Remember to change the paths to any files you've moved to your mission folder!" thats means you need copy from @Dayz_Epoch\addons\dayz_code\actions\ this files: Spoiler player_upgrade.sqf player_buildingDowngrade.sqf player_build.sqf"// if ure using snap pro. u already have it. modify this file from snap_pro folder. onces you make this copy and paste into for example : MPMISSIONS\YOUR INSTANCE\plotManagement\ go to your Custom fn_selfActions.sqf and find : Spoiler player_buildingDowngrade.sqf & player_build.sqf to change paths like lines in blue: Spoiler s_player_upgrade_build = player addAction [format[localize "STR_EPOCH_ACTIONS_UPGRADE",_text], "plotManagement\player_upgrade.sqf",_cursorTarget, -1, false, true, "",""]; s_player_downgrade_build = player addAction [format[localize "STR_EPOCH_ACTIONS_REMLOCK",_text], "plotManagement\player_buildingDowngrade.sqf",_cursorTarget, -2, false, true, "",""]; for player_build.sqf if u have snap pro, you have this call in your CUSTOM compiles.sqf player_build = compile preprocessFileLineNumbers "custom\snap_pro\player_build.sqf"; ***if u dont have snap pro, then copy and paste a player_build from @Dayz_Epoch\addons\dayz_code\actions\ in "plotManagement" folder and into your custom compiles.sqf paste this lines in blue. Spoiler player_sleep = compile preprocessFileLineNumbers "\z\addons\dayz_code\actions\player_sleep.sqf"; player_antiWall = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\player_antiWall.sqf"; player_deathBoard = compile preprocessFileLineNumbers "\z\addons\dayz_code\actions\list_playerDeathsAlt.sqf"; player_build = compile preprocessFileLineNumbers "plotManagement\player_build.sqf"; now u can do it the step 7 Spoiler STEP 7 (Modifying player_build.sqf, player_upgrade.sqf, and player_buildingDowngrade.sqf) ALL THREE OF THESE FILES NEED THE SAME EDIT, MAKE SURE YOU DO ALL FILES!!!! Find _friendlies = player getVariable ["friendlyTo",[]]; // check if friendly to owner if(_ownerID in _friendlies) then { _canBuildOnPlot = true; }; Replace that with _friendlies = _nearestPole getVariable ["plotfriends",[]]; _fuid = []; { _friendUID = _x select 0; _fuid = _fuid + [_friendUID]; } forEach _friendlies; _builder = getPlayerUID player; // check if friendly to owner if(_builder in _fuid) then { _canBuildOnPlot = true; }; **for step 7: this chnges goes into the recent copied and pasted files. for this example the files are located into plotManagement folder- Brody 1 Link to comment Share on other sites More sharing options...
looter809 Posted November 26, 2016 Report Share Posted November 26, 2016 anyone know a way to automatically add the owner to the plot? Link to comment Share on other sites More sharing options...
Brody Posted November 27, 2016 Report Share Posted November 27, 2016 thank you juandayzjuan Link to comment Share on other sites More sharing options...
Brody Posted November 27, 2016 Report Share Posted November 27, 2016 11 hours ago, juandayz said: step 6 do not need chhanges... for step 7 you need go back to step 5. see: Zupa´s say : "Remember to change the paths to any files you've moved to your mission folder!" thats means you need copy from @Dayz_Epoch\addons\dayz_code\actions\ this files: Hide contents player_upgrade.sqf player_buildingDowngrade.sqf player_build.sqf"// if ure using snap pro. u already have it. modify this file from snap_pro folder. onces you make this copy and paste into for example : MPMISSIONS\YOUR INSTANCE\plotManagement\ go to your Custom fn_selfActions.sqf and find : Hide contents player_buildingDowngrade.sqf & player_build.sqf to change paths like lines in blue: Hide contents s_player_upgrade_build = player addAction [format[localize "STR_EPOCH_ACTIONS_UPGRADE",_text], "plotManagement\player_upgrade.sqf",_cursorTarget, -1, false, true, "",""]; s_player_downgrade_build = player addAction [format[localize "STR_EPOCH_ACTIONS_REMLOCK",_text], "plotManagement\player_buildingDowngrade.sqf",_cursorTarget, -2, false, true, "",""]; for player_build.sqf if u have snap pro, you have this call in your CUSTOM compiles.sqf player_build = compile preprocessFileLineNumbers "custom\snap_pro\player_build.sqf"; ***if u dont have snap pro, then copy and paste a player_build from @Dayz_Epoch\addons\dayz_code\actions\ in "plotManagement" folder and into your custom compiles.sqf paste this lines in blue. Hide contents player_sleep = compile preprocessFileLineNumbers "\z\addons\dayz_code\actions\player_sleep.sqf"; player_antiWall = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\player_antiWall.sqf"; player_deathBoard = compile preprocessFileLineNumbers "\z\addons\dayz_code\actions\list_playerDeathsAlt.sqf"; player_build = compile preprocessFileLineNumbers "plotManagement\player_build.sqf"; now u can do it the step 7 Hide contents STEP 7 (Modifying player_build.sqf, player_upgrade.sqf, and player_buildingDowngrade.sqf) ALL THREE OF THESE FILES NEED THE SAME EDIT, MAKE SURE YOU DO ALL FILES!!!! Find _friendlies = player getVariable ["friendlyTo",[]]; // check if friendly to owner if(_ownerID in _friendlies) then { _canBuildOnPlot = true; }; Replace that with _friendlies = _nearestPole getVariable ["plotfriends",[]]; _fuid = []; { _friendUID = _x select 0; _fuid = _fuid + [_friendUID]; } forEach _friendlies; _builder = getPlayerUID player; // check if friendly to owner if(_builder in _fuid) then { _canBuildOnPlot = true; }; **for step 7: this chnges goes into the recent copied and pasted files. for this example the files are located into plotManagement folder- thank you very much man juandayz 1 Link to comment Share on other sites More sharing options...
Brody Posted November 27, 2016 Report Share Posted November 27, 2016 i have done everything that i needed to do but i dont get the blue "manage plot" option i dont know why Link to comment Share on other sites More sharing options...
juandayz Posted November 27, 2016 Report Share Posted November 27, 2016 1 hour ago, Brody said: i have done everything that i needed to do but i dont get the blue "manage plot" option i dont know why check step 8 in this guide. also take a look on steps 2,3 &4 Spoiler for blue sroll option you need a custom fn selfactions.sqf and this part allow the option: if (s_player_plotManagement < 0) then { _adminList = ["0152"]; // Add admins here if you admins to able to manage all plotpoles _owner = _cursorTarget getVariable ["CharacterID","0"]; _friends = _cursorTarget getVariable ["plotfriends", []]; _fuid = []; { _friendUID = _x select 0; _fuid = _fuid + [_friendUID]; } forEach _friends; _allowed = [_owner]; _allowed = [_owner] + _adminList + _fuid; if(_owner == dayz_characterID || (getPlayerUID player) in _allowed)then{ s_player_plotManagement = player addAction ["<t color='#0059FF'>PLOT-MANAGE</t>", "plotManagement\initPlotManagement.sqf", [], 5, false]; }; }; } else { player removeAction s_player_plotManagement; s_player_plotManagement = -1; }; Link to comment Share on other sites More sharing options...
DrTauren Posted November 28, 2016 Report Share Posted November 28, 2016 Hey, guys. I`ve install this mod, but have same problems... I can spawn, always kick to the lobby. RPT: _dir = _worldspace select 0; if (count (_worldspace select 1) == 3) then > 5:46:18 Error position: <count (_worldspace select 1) == 3) then > 5:46:18 Error count: Type String, expected Array,Config entry 5:46:18 File z\addons\dayz_server\system\server_monitor.sqf, line 105 5:46:30 "infiSTAR.de - Player-Log: DrTauren(76561198024876010) - 0h 00min | ******ADMIN******" 5:46:49 "infiSTAR.de PlayerConnected: ["76561198024876010","DrTauren"]" 5:46:49 "infiSTAR.de PlayerConnected: ["","__SERVER__"]" 5:49:02 "infiSTAR.de PlayerDisconnected: _uid: 76561198024876010 _name: DrTauren" 5:49:02 "get: STRING (76561198024876010), sent: STRING (76561198024876010)" 5:49:02 "DISCONNECT: DrTauren (76561198024876010) Object: B 1-1-A:1 (DrTauren) REMOTE, _characterID: 0 at loc [-7244.94,19534.5,0]" 5:49:02 "ERROR: Cannot Sync Character DrTauren as no characterID" 5:49:02 Client: Remote object 2:9 not found 5:49:02 Client: Remote object 2:10 not found 5:49:02 Client: Remote object 2:11 not found 5:49:02 Warning: Cleanup player - person 2:0 not found Help me pls Link to comment Share on other sites More sharing options...
juandayz Posted November 28, 2016 Report Share Posted November 28, 2016 11 hours ago, DrTauren said: Hey, guys. I`ve install this mod, but have same problems... I can spawn, always kick to the lobby. RPT: _dir = _worldspace select 0; if (count (_worldspace select 1) == 3) then > 5:46:18 Error position: <count (_worldspace select 1) == 3) then > 5:46:18 Error count: Type String, expected Array,Config entry 5:46:18 File z\addons\dayz_server\system\server_monitor.sqf, line 105 5:46:30 "infiSTAR.de - Player-Log: DrTauren(76561198024876010) - 0h 00min | ******ADMIN******" 5:46:49 "infiSTAR.de PlayerConnected: ["76561198024876010","DrTauren"]" 5:46:49 "infiSTAR.de PlayerConnected: ["","__SERVER__"]" 5:49:02 "infiSTAR.de PlayerDisconnected: _uid: 76561198024876010 _name: DrTauren" 5:49:02 "get: STRING (76561198024876010), sent: STRING (76561198024876010)" 5:49:02 "DISCONNECT: DrTauren (76561198024876010) Object: B 1-1-A:1 (DrTauren) REMOTE, _characterID: 0 at loc [-7244.94,19534.5,0]" 5:49:02 "ERROR: Cannot Sync Character DrTauren as no characterID" 5:49:02 Client: Remote object 2:9 not found 5:49:02 Client: Remote object 2:10 not found 5:49:02 Client: Remote object 2:11 not found 5:49:02 Warning: Cleanup player - person 2:0 not found Help me pls you have something wrong in 5:46:18 File z\addons\dayz_server\system\server_monitor.sqf, line 105 maybe this line? 5:46:18 Error position: <count (_worldspace select 1) == 3) then > Link to comment Share on other sites More sharing options...
DrTauren Posted November 28, 2016 Report Share Posted November 28, 2016 5 hours ago, juandayz said: you have something wrong in 5:46:18 File z\addons\dayz_server\system\server_monitor.sqf, line 105 maybe this line? 5:46:18 Error position: <count (_worldspace select 1) == 3) then > 5 hours ago, juandayz said: you have something wrong in 5:46:18 File z\addons\dayz_server\system\server_monitor.sqf, line 105 maybe this line? 5:46:18 Error position: <count (_worldspace select 1) == 3) then > Yeah, u right. But what wrong with this code? It`s clear EPOCH with Infi. When i setup Plot Management - this bug begins. I dont know what to do with it. Sry for my bad english juandayz 1 Link to comment Share on other sites More sharing options...
juandayz Posted November 28, 2016 Report Share Posted November 28, 2016 3 minutes ago, DrTauren said: Yeah, u right. But what wrong with this code? It`s clear EPOCH with Infi. When i setup Plot Management - this bug begins. I dont know what to do with it. Sry for my bad english the only change in server_monitor used for plotmanagement is: STEP 8 This one is in your dayz_server.pbo (Modifying server_monitor.sqf)8 A Find _object setVariable ["ObjectID", _idKey, true]; After that, add if (typeOf (_object) == "Plastic_Pole_EP1_DZ") then { _object setVariable ["plotfriends", _intentory, true]; }; 8 B Find if (count _intentory > 0) then { Replace that with if ((count _intentory > 0) && !(typeOf( _object) == "Plastic_Pole_EP1_DZ")) then { check all of this.. and remember all _intentory variables must be _inventory DrTauren 1 Link to comment Share on other sites More sharing options...
DrTauren Posted November 28, 2016 Report Share Posted November 28, 2016 18 minutes ago, juandayz said: the only change in server_monitor used for plotmanagement is: STEP 8 This one is in your dayz_server.pbo (Modifying server_monitor.sqf)8 A Find _object setVariable ["ObjectID", _idKey, true]; After that, add if (typeOf (_object) == "Plastic_Pole_EP1_DZ") then { _object setVariable ["plotfriends", _intentory, true]; }; 8 B Find if (count _intentory > 0) then { Replace that with if ((count _intentory > 0) && !(typeOf( _object) == "Plastic_Pole_EP1_DZ")) then { check all of this.. and remember all _intentory variables must be _inventory All codes like in guide, man. It`s all right. I dont understand what wrong with tgat juandayz 1 Link to comment Share on other sites More sharing options...
juandayz Posted November 28, 2016 Report Share Posted November 28, 2016 Just now, DrTauren said: All codes like in guide, man. It`s all right. I dont understand what wrong with tgat can you paste your whole server_moitor.sqf please :) Link to comment Share on other sites More sharing options...
juandayz Posted November 28, 2016 Report Share Posted November 28, 2016 @DrTauren replace your server_monitor.sqf with this and try: Spoiler private ["_nul","_result","_pos","_wsDone","_dir","_isOK","_countr","_objWpnTypes","_objWpnQty","_dam","_selection","_totalvehicles","_object","_idKey","_type","_ownerID","_worldspace","_inventory","_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}; //means all the functions are now defined diag_log "HIVE: Starting"; waituntil{isNil "sm_done"}; // prevent server_monitor be called twice (bug during login of the first player) // Custom Configs if(isnil "MaxVehicleLimit") then { MaxVehicleLimit = 50; }; if(isnil "MaxDynamicDebris") then { MaxDynamicDebris = 100; }; if(isnil "MaxAmmoBoxes") then { MaxAmmoBoxes = 3; }; if(isnil "MaxMineVeins") then { MaxMineVeins = 50; }; // Custon Configs End 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; // break }; }; _BuildingQueue = []; _objectQueue = []; if ((_hiveResponse select 0) == "ObjectStreamStart") then { // save superkey 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; //diag_log (format["HIVE dbg %1 %2", typeName _hiveResponse, _hiveResponse]); 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"); }; // # NOW SPAWN OBJECTS # _totalvehicles = 0; { _idKey = _x select 1; _type = _x select 2; _ownerID = _x select 3; _worldspace = _x select 4; _inventory = _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)); }; if (_damage < 1) then { //diag_log format["OBJ: %1 - %2", _idKey,_type]; //Create it _object = createVehicle [_type, _pos, [], 0, "CAN_COLLIDE"]; _object setVariable ["lastUpdate",time]; _object setVariable ["ObjectID", _idKey, true]; if (typeOf (_object) == "Plastic_Pole_EP1_DZ") then { _object setVariable ["plotfriends", _inventory, true]; }; _lockable = 0; if(isNumber (configFile >> "CfgVehicles" >> _type >> "lockable")) then { _lockable = getNumber(configFile >> "CfgVehicles" >> _type >> "lockable"); }; // fix for leading zero issues on safe codes after restart 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 setVehicleAmmo DZE_vehicleAmmo; _object setdir _dir; _object setposATL _pos; _object setDamage _damage; if ((typeOf _object) in dayz_allowedObjects) then { if (DZE_GodModeBase) then { _object addEventHandler ["HandleDamage", {false}]; } else { _object addMPEventHandler ["MPKilled",{_this call object_handleServerKilled;}]; }; // Test disabling simulation server side on buildables only. _object enableSimulation false; // used for inplace upgrades && lock/unlock of safe _object setVariable ["OEMPos", _pos, true]; }; if ((count _inventory > 0) && !(typeOf( _object) == "Plastic_Pole_EP1_DZ")) then { if (_type in DZE_LockedStorage) then { // Fill variables with loot _object setVariable ["WeaponCargo", (_inventory select 0),true]; _object setVariable ["MagazineCargo", (_inventory select 1),true]; _object setVariable ["BackpackCargo", (_inventory select 2),true]; } else { //Add weapons _objWpnTypes = (_inventory select 0) select 0; _objWpnQty = (_inventory 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; //Add Magazines _objWpnTypes = (_inventory select 1) select 0; _objWpnQty = (_inventory select 1) select 1; _countr = 0; { if (_x == "BoltSteel") then { _x = "WoodenArrow" }; // Convert BoltSteel to 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; //Add Backpacks _objWpnTypes = (_inventory select 2) select 0; _objWpnQty = (_inventory 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 { { _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; _object setFuel _fuel; if (!((typeOf _object) in dayz_allowedObjects)) then { //_object setvelocity [0,0,1]; _object call fnc_veh_ResetEH; if(_ownerID != "0" && !(_object isKindOf "Bicycle")) then { _object setvehiclelock "locked"; }; _totalvehicles = _totalvehicles + 1; // total each vehicle serverVehicleCounter set [count serverVehicleCounter,_type]; }; }; //Monitor the object PVDZE_serverObjectMonitor set [count PVDZE_serverObjectMonitor,_object]; }; } count (_BuildingQueue + _objectQueue); // # END SPAWN OBJECTS # // preload server traders menu data into cache if !(DZE_ConfigTrader) then { { // get tids _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; //diag_log "HIVE: Request sent"; //Process result _result = call compile format ["%1",_data]; _status = _result select 0; if (_status == "ObjectStreamStart") then { _val = _result select 1; //Stream Objects //diag_log ("HIVE: Commence Menu Streaming..."); 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]; }; //diag_log ("HIVE: Streamed " + str(_val) + " objects"); }; } forEach (_traderData select 0); }; } forEach serverTraders; }; if (_hiveLoaded) then { // spawn_vehicles _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!"; }; }; // spawn_roadblocks diag_log ("HIVE: Spawning # of Debris: " + str(MaxDynamicDebris)); for "_x" from 1 to MaxDynamicDebris do { [] spawn spawn_roadblocks; }; // spawn_ammosupply at server start 1% of roadblocks diag_log ("HIVE: Spawning # of Ammo Boxes: " + str(MaxAmmoBoxes)); for "_x" from 1 to MaxAmmoBoxes do { [] spawn spawn_ammosupply; }; // call spawning mining veins 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; }; // [_guaranteedLoot, _randomizedLoot, _frequency, _variance, _spawnChance, _spawnMarker, _spawnRadius, _spawnFire, _fadeFire] if(OldHeliCrash) then { _nul = [3, 4, (50 * 60), (15 * 60), 0.75, 'center', HeliCrashArea, true, false] spawn server_spawnCrashSite; }; if (isDedicated) then { // Epoch Events _id = [] spawn server_spawnEvents; // server cleanup [] spawn { private ["_id"]; sleep 200; //Sleep Lootcleanup, don't need directly cleanup on startup + fix some performance issues on serverstart waitUntil {!isNil "server_spawnCleanAnimals"}; _id = [] execFSM "\z\addons\dayz_server\system\server_cleanup.fsm"; }; // spawn debug box _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]; // max number of spawn markers if(isnil "spawnMarkerCount") then { spawnMarkerCount = 10; }; actualSpawnMarkerCount = 0; // count valid spawn marker positions 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 { // exit since we did not find any further markers _i = spawnMarkerCount + 99; }; }; diag_log format["Total Number of spawn locations %1", actualSpawnMarkerCount]; endLoadingScreen; }; allowConnection = true; sm_done = true; publicVariable "sm_done"; }; DrTauren 1 Link to comment Share on other sites More sharing options...
BigEgg Posted November 29, 2016 Report Share Posted November 29, 2016 On 11/21/2016 at 2:28 PM, looter809 said: Hey guys. I'm not very good at coding. Is there a way to automatically add the owner to the plot pole? To somehow have "call PlotAddFriend;" after placing the plot pole or something? I can't find where the code is that says "you have placed a 30m plot pole" but i figured i could copy that file to my mpmissioncache and add "add PlotAddFriend;" to it or something. Maybe this is a weird way to do it. Any suggestions to auto add the owner? My other Idea was to use the PlayerBuild.sqf that is already in Snap_Pro folder and maybe do // check if friendly to owner if(dayz_characterID == _ownerID) then { //Keep ownership // owner can build anything within his plot except other plots if(!_isPole) then { _canBuildOnPlot = true; call PlotAddFriend; }; Would that work maybe? I haven't tested this, just threw it together. Basically, just PlotAddFriend modified to add the builder to the plot. Add this to the private array at the top of player_build.sqf (I used the default player_build.sqf from snap pro files) ,"_nearPlots", "_selectedPlot", "_onPlot", "_uidPlayer", "_playerName" Then, find this line (the position of this may need to change - please test): cutText [format[(localize "str_epoch_player_139"),_text, _counter,_limit], "PLAIN DOWN"]; And add this under it: if (_classname == "Plastic_Pole_EP1_DZ") then { _nearPlots = nearestObjects [player, ["Plastic_Pole_EP1_DZ"],15]; _selectedPlot = _nearPlots select 0; _onPlot = _selectedPlot getVariable ["plotfriends",[]]; _uidPlayer = getPlayerUID player; _playerName = name player; _onPlot = _onPlot + [[_uidPlayer,_playerName]]; _selectedPlot setVariable ["plotfriends", _onPlot, true]; PVDZE_veh_Update = [_selectedPlot,"gear"]; publicVariableServer "PVDZE_veh_Update"; if (isServer) then { PVDZE_veh_Update call server_updateObject; }; }; Let me know if it works. Like I said though, I use plot 4 life so haven't tested this. If it does add you to the plot after you build it, restart and see if you stay on it. :) juandayz 1 Link to comment Share on other sites More sharing options...
looter809 Posted November 30, 2016 Report Share Posted November 30, 2016 @BigEgg Hey, thanks for getting back to me and helping a brother out. Tested it. Was very excited to see it automatically put my name on the friends list, but as you suspected after a restart the name was no longer there. Link to comment Share on other sites More sharing options...
BigEgg Posted November 30, 2016 Report Share Posted November 30, 2016 Just now, looter809 said: @BigEgg Hey, thanks for getting back to me and helping a brother out. Tested it. Was very excited to see it automatically put my name on the friends list, but as you suspected after a restart the name was no longer there. Okay - let me adjust the position of it. Will repost the new location shortly. Link to comment Share on other sites More sharing options...
looter809 Posted November 30, 2016 Report Share Posted November 30, 2016 Fastest response time ever! Alrighty, sounds good. Link to comment Share on other sites More sharing options...
BigEgg Posted November 30, 2016 Report Share Posted November 30, 2016 1 minute ago, looter809 said: Fastest response time ever! Alrighty, sounds good. Try finding this code (around line 667): _tmpbuilt setVariable ["CharacterID",dayz_characterID,true]; // fire? if(_tmpbuilt isKindOf "Land_Fire_DZ") then { _tmpbuilt spawn player_fireMonitor; } else { PVDZE_obj_Publish = [dayz_characterID,_tmpbuilt,[_dir,_location,_vector],_classname]; publicVariableServer "PVDZE_obj_Publish"; }; and replace all of that with: _tmpbuilt setVariable ["CharacterID",dayz_characterID,true]; if (_tmpbuilt isKindof "Plastic_Pole_EP1_DZ") then { PVDZE_obj_Publish = [dayz_characterID,_tmpbuilt,[_dir,_location,_vector],_classname]; publicVariableServer "PVDZE_obj_Publish"; _nearPlots = nearestObjects [player, ["Plastic_Pole_EP1_DZ"],15]; _selectedPlot = _nearPlots select 0; _onPlot = _selectedPlot getVariable ["plotfriends",[]]; _uidPlayer = getPlayerUID player; _playerName = name player; _onPlot = _onPlot + [[_uidPlayer,_playerName]]; _selectedPlot setVariable ["plotfriends", _onPlot, true]; PVDZE_veh_Update = [_selectedPlot,"gear"]; publicVariableServer "PVDZE_veh_Update"; if (isServer) then { PVDZE_veh_Update call server_updateObject; }; } else { if(_tmpbuilt isKindOf "Land_Fire_DZ") then { _tmpbuilt spawn player_fireMonitor; } else { PVDZE_obj_Publish = [dayz_characterID,_tmpbuilt,[_dir,_location,_vector],_classname]; publicVariableServer "PVDZE_obj_Publish"; }; }; Link to comment Share on other sites More sharing options...
looter809 Posted November 30, 2016 Report Share Posted November 30, 2016 @BigEgg I am guessing I should remove the other spot where I did the classname == plotpole or no? Link to comment Share on other sites More sharing options...
Recommended Posts
Please sign in to comment
You will be able to leave a comment after signing in
Sign In Now