Hey guys, I wonder if there is a way to change the default price for the base maintain.
This is my server_maintainArea.sqf in my server pbo
/* Maintain Area - written by Skaronator */ private ["_player","_name","_ObjArray","_uniqueID","_objects","_key"]; _player = _this select 0; _option = _this select 1; /* 1: PVDZE_maintainArea = [player,1,_target]; 2: PVDZE_maintainArea = [player,2,_object]; */ _targetObj = _this select 2; if (_option == 1) then { _objects = nearestObjects [_targetObj, DZE_maintainClasses, DZE_maintainRange]; { if (damage _x >= DZE_DamageBeforeMaint) then { _objectID = _x getVariable ["ObjectID","0"]; if (_objectID == "0") then { _objectUID = _x getVariable ["ObjectUID","0"]; if (_objectUID != "0") then { _x setDamage 0; _key = format["CHILD:397:%1:", _objectUID]; // use UID if not "0" && ID is "0" _data = "HiveExt" callExtension _key; }; } else { _x setDamage 0; _key = format["CHILD:396:%1:", _objectID]; //Use ID instead of UID because ID is shorter _data = "HiveExt" callExtension _key; }; }; } count _objects; _name = if (alive _player) then { name _player; } else { "Dead Player"; }; diag_log format ["MAINTAIN AREA BY %1 - %2 Objects at %3", _name, count _objects, (getPosATL _player)]; }; if (_option == 2) then { if (damage _targetObj >= DZE_DamageBeforeMaint) then { _objectID = _targetObj getVariable ["ObjectID","0"]; if (_objectID == "0") then { _objectUID = _targetObj getVariable ["ObjectUID","0"]; if (_objectUID != "0") then { _targetObj setDamage 0; _key = format["CHILD:397:%1:", _objectUID]; // use UID if not "0" && ID is "0" _data = "HiveExt" callExtension _key; }; } else { _targetObj setDamage 0; _key = format["CHILD:396:%1:", _objectID]; //Use ID instead of UID because ID is shorter _data = "HiveExt" callExtension _key; }; }; };
and i find this in dayz_code
maintain_area.sqf
//Code developed by Axe Cop - Massiv improvments && performance tunes by Skaronator private ["_missing","_missingQty","_proceed","_itemIn","_countIn","_qty","_num_removed","_uniqueID","_removed","_removed_total","_tobe_removed_total","_obj","_objectID","_objectUID","_classname","_location","_dir","_objectCharacterID","_object","_temp_removed_array","_textMissing","_target","_objectClasses","_range","_objects","_requirements","_count","_cost","_itemText","_option"]; if (DZE_ActionInProgress) exitWith { cutText [(localize "STR_EPOCH_ACTIONS_2") , "PLAIN DOWN"]; }; DZE_ActionInProgress = true; player removeAction s_player_maintain_area; s_player_maintain_area = 1; player removeAction s_player_maintain_area_preview; s_player_maintain_area_preview = 1; _target = cursorTarget; // Plastic_Pole_EP1_DZ _objectClasses = DZE_maintainClasses; _range = DZE_maintainRange; // set the max range for the maintain area _objects = nearestObjects [_target, _objectClasses, _range]; //filter to only those that have 10% damage _objects_filtered = []; { if (damage _x >= DZE_DamageBeforeMaint) then { _objects_filtered set [count _objects_filtered, _x]; }; } count _objects; _objects = _objects_filtered; // TODO dynamic requirements based on used building parts? _count = count _objects; if (_count == 0) exitWith { cutText [format[(localize "STR_EPOCH_ACTIONS_22"), _count], "PLAIN DOWN"]; DZE_ActionInProgress = false; s_player_maintain_area = -1; s_player_maintain_area_preview = -1; }; _requirements = []; switch true do { case (_count <= 10): {_requirements = [["ItemGoldBar10oz",0]]}; case (_count <= 20): {_requirements = [["ItemGoldBar10oz",0]]}; case (_count <= 35): {_requirements = [["ItemGoldBar10oz",0]]}; case (_count <= 50): {_requirements = [["ItemGoldBar10oz",0]]}; case (_count <= 75): {_requirements = [["ItemGoldBar10oz",0]]}; case (_count <= 100): {_requirements = [["ItemBriefcase100oz",0]]}; case (_count <= 175): {_requirements = [["ItemBriefcase100oz",0]]}; case (_count <= 250): {_requirements = [["ItemGoldBar10oz",1]]}; case (_count <= 325): {_requirements = [["ItemGoldBar10oz",1]]}; case (_count <= 400): {_requirements = [["ItemGoldBar10oz",1]]}; case (_count <= 475): {_requirements = [["ItemGoldBar10oz",3]]}; case (_count <= 550): {_requirements = [["ItemGoldBar10oz",5]]}; case (_count <= 625): {_requirements = [["ItemGoldBar10oz",6]]}; case (_count > 625): {_requirements = [["ItemBriefcase100oz",1]]}; }; _option = _this select 3; switch _option do { case "maintain": { _missing = ""; _missingQty = 0; _proceed = true; { _itemIn = _x select 0; _countIn = _x select 1; _qty = { (_x == _itemIn) || (configName(inheritsFrom(configFile >> "cfgMagazines" >> _x)) == _itemIn) } count magazines player; if (_qty < _countIn) exitWith { _missing = _itemIn; _missingQty = (_countIn - _qty); _proceed = false; }; } count _requirements; if (_proceed) then { player playActionNow "Medic"; [player,_range,true,(getPosATL player)] spawn player_alertZombies; _temp_removed_array = []; _removed_total = 0; _tobe_removed_total = 0; { _removed = 0; _itemIn = _x select 0; _countIn = _x select 1; _tobe_removed_total = _tobe_removed_total + _countIn; { if ((_removed < _countIn) && ((_x == _itemIn) || configName(inheritsFrom(configFile >> "cfgMagazines" >> _x)) == _itemIn)) then { _num_removed = ([player,_x] call BIS_fnc_invRemove); _removed = _removed + _num_removed; _removed_total = _removed_total + _num_removed; if (_num_removed >= 1) then { _temp_removed_array set [count _temp_removed_array,_x]; }; }; } forEach magazines player; } forEach _requirements; // all required items removed from player gear if (_tobe_removed_total == _removed_total) then { cutText [format[(localize "STR_EPOCH_ACTIONS_4"), _count], "PLAIN DOWN", 5]; PVDZE_maintainArea = [player,1,_target]; publicVariableServer "PVDZE_maintainArea"; } else { {player addMagazine _x;} count _temp_removed_array; cutText [format[(localize "STR_EPOCH_ACTIONS_5"),_removed_total,_tobe_removed_total], "PLAIN DOWN"]; }; } else { _textMissing = getText(configFile >> "CfgMagazines" >> _missing >> "displayName"); cutText [format[(localize "STR_EPOCH_ACTIONS_6"), _missingQty, _textMissing], "PLAIN DOWN"]; }; }; case "preview": { _cost = ""; { _itemIn = _x select 0; _countIn = _x select 1; _itemText = getText(configFile >> "CfgMagazines" >> _itemIn >> "displayName"); if (_cost != "") then { _cost = _cost + " and "; }; _cost = _cost + (str(_countIn) + " of " + _itemText); } count _requirements; cutText [format[(localize "STR_EPOCH_ACTIONS_7"), _count, _cost], "PLAIN DOWN"]; }; }; DZE_ActionInProgress = false; s_player_maintain_area = -1; s_player_maintain_area_preview = -1;
i changed the price, but in game price still didnt change
And not quite sure how base decay works. does it just cause damage to building or like just delete when it reachs the date