From 730dcb88a2fea6030bc453bcf10f4d7f80ed2750 Mon Sep 17 00:00:00 2001 From: BigEgg Date: Sat, 7 Oct 2017 23:14:30 -0500 Subject: [PATCH 1/8] Add DZE_HeightLimit to configVariables.sqf --- SQF/dayz_code/configVariables.sqf | 1 + 1 file changed, 1 insertion(+) diff --git a/SQF/dayz_code/configVariables.sqf b/SQF/dayz_code/configVariables.sqf index 69738e4ab..4f8e765f2 100644 --- a/SQF/dayz_code/configVariables.sqf +++ b/SQF/dayz_code/configVariables.sqf @@ -30,6 +30,7 @@ DZE_SafeZoneNoBuildItems = []; // Array of object class names not allowed to be DZE_SafeZoneNoBuildDistance = 150; // Distance from safe zones listed above to disallow building near. DZE_NoBuildNear = []; //Array of object class names that are blacklisted to build near. i.e ["Land_Mil_ControlTower","Land_SS_hangar"] etc. DZE_NoBuildNearDistance = 150; // Distance from blacklisted objects to disallow building near. +DZE_HeightLimit = 0; // 0 = No building height limit | >0 = Height limit in meters | Changing this to 30 would limit the maximum built height to 30 meters. DZE_GodModeBaseExclude = []; //Array of object class names excluded from the god mode bases feature DZE_salvageLocked = true; //Enable or disable salvaging of locked vehicles, useful for stopping griefing on locked vehicles. DZE_DisabledChannels = [(localize "str_channel_side"),(localize "str_channel_global"),(localize "str_channel_command")]; //List of disabled voice channels. Other channels are: "str_channel_group","str_channel_direct","str_channel_vehicle" From 820d8bdf2b84d9eace06a830c0e656614781e51a Mon Sep 17 00:00:00 2001 From: BigEgg Date: Sat, 7 Oct 2017 23:42:00 -0500 Subject: [PATCH 2/8] Update stringtable.xml --- SQF/dayz_code/stringtable.xml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/SQF/dayz_code/stringtable.xml b/SQF/dayz_code/stringtable.xml index f39e8bf4c..52482eb9d 100644 --- a/SQF/dayz_code/stringtable.xml +++ b/SQF/dayz_code/stringtable.xml @@ -11948,6 +11948,9 @@ Du kannst hier kein(e) %1 bauen. Du befindest dich innerhalb von %2 Metern zu einem Objekt (%3). Нельзя построить %1 в пределах %2м от %3. + + Building is restricted above %1 meter(s). + Dog consumed %1, and is now tamed. From ac72c0068726bd2369f36c06b5e66104829f3e0d Mon Sep 17 00:00:00 2001 From: BigEgg Date: Sat, 7 Oct 2017 23:45:27 -0500 Subject: [PATCH 3/8] Added build height check to dze_buildChecks.sqf --- SQF/dayz_code/compile/dze_buildChecks.sqf | 2 ++ 1 file changed, 2 insertions(+) diff --git a/SQF/dayz_code/compile/dze_buildChecks.sqf b/SQF/dayz_code/compile/dze_buildChecks.sqf index 2660b8916..145e73b6e 100644 --- a/SQF/dayz_code/compile/dze_buildChecks.sqf +++ b/SQF/dayz_code/compile/dze_buildChecks.sqf @@ -97,6 +97,8 @@ if (!_canBuild) exitWith { [_canBuild, _isPole]; }; +if (DZE_BuildHeightLimit > 0 && ((getPosATL (vehicle player)) select 2) >= DZE_BuildHeightLimit) exitWith {dayz_actionInProgress = false; format [localize "STR_EPOCH_PLAYER_168", DZE_BuildHeightLimit] call dayz_rollingMessages; [false, _isPole];}; + // Also count safes, lockboxes, vanilla buildables, tents and stashes against DZE_BuildingLimit _buildables = DZE_maintainClasses + DZE_LockableStorage + ["DZ_buildables","DZ_storage_base"]; _center = if (isNull _nearestPole) then {_pos} else {_nearestPole}; From c00b0ad1afce16e8c42a0dfb4fb13f060781b7c6 Mon Sep 17 00:00:00 2001 From: BigEgg Date: Sat, 7 Oct 2017 23:53:20 -0500 Subject: [PATCH 4/8] Added build height check to modular_build.sqf --- SQF/dayz_code/actions/modular_build.sqf | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/SQF/dayz_code/actions/modular_build.sqf b/SQF/dayz_code/actions/modular_build.sqf index df6630c69..809bdb000 100644 --- a/SQF/dayz_code/actions/modular_build.sqf +++ b/SQF/dayz_code/actions/modular_build.sqf @@ -357,6 +357,20 @@ if (_canBuild select 0) then { detach _objectHelper; deleteVehicle _objectHelper; }; + + if (DZE_BuildHeightLimit > 0 && abs(_objHDiff) > DZE_BuildHeightLimit) exitWith { + _isOk = false; + _cancel = true; + _reason = format[localize "STR_EPOCH_PLAYER_168",DZE_BuildHeightLimit]; + detach _object; + deleteVehicle _object; + if (_VectorWorkAround) then { + detach _object2; + deleteVehicle _object2; + }; + detach _objectHelper; + deleteVehicle _objectHelper; + }; if (player getVariable["combattimeout",0] >= diag_tickTime) exitWith { _isOk = false; From 20d2d1f078b4650c3af1cb5ecfe43cebee9c4977 Mon Sep 17 00:00:00 2001 From: BigEgg Date: Sat, 7 Oct 2017 23:55:01 -0500 Subject: [PATCH 5/8] Altered variable in configVariables.sqf Salival recommended that I change the variable name to DZE_BuildHeightLimit. --- SQF/dayz_code/configVariables.sqf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/SQF/dayz_code/configVariables.sqf b/SQF/dayz_code/configVariables.sqf index 4f8e765f2..1793818f6 100644 --- a/SQF/dayz_code/configVariables.sqf +++ b/SQF/dayz_code/configVariables.sqf @@ -30,7 +30,7 @@ DZE_SafeZoneNoBuildItems = []; // Array of object class names not allowed to be DZE_SafeZoneNoBuildDistance = 150; // Distance from safe zones listed above to disallow building near. DZE_NoBuildNear = []; //Array of object class names that are blacklisted to build near. i.e ["Land_Mil_ControlTower","Land_SS_hangar"] etc. DZE_NoBuildNearDistance = 150; // Distance from blacklisted objects to disallow building near. -DZE_HeightLimit = 0; // 0 = No building height limit | >0 = Height limit in meters | Changing this to 30 would limit the maximum built height to 30 meters. +DZE_BuildHeightLimit = 0; // 0 = No building height limit | >0 = Height limit in meters | Changing this to 30 would limit the maximum built height to 30 meters. DZE_GodModeBaseExclude = []; //Array of object class names excluded from the god mode bases feature DZE_salvageLocked = true; //Enable or disable salvaging of locked vehicles, useful for stopping griefing on locked vehicles. DZE_DisabledChannels = [(localize "str_channel_side"),(localize "str_channel_global"),(localize "str_channel_command")]; //List of disabled voice channels. Other channels are: "str_channel_group","str_channel_direct","str_channel_vehicle" From 3521447972cef3ffeafb61d8eba6062bbc080026 Mon Sep 17 00:00:00 2001 From: BigEgg Date: Sun, 8 Oct 2017 00:02:49 -0500 Subject: [PATCH 6/8] Update Change Log --- CHANGE LOG 1.0.6.2.txt | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/CHANGE LOG 1.0.6.2.txt b/CHANGE LOG 1.0.6.2.txt index 6f123cb12..c08e211b9 100644 --- a/CHANGE LOG 1.0.6.2.txt +++ b/CHANGE LOG 1.0.6.2.txt @@ -4,9 +4,10 @@ [NEW] The journal and dayz_survived variable now contain actual play time [array] instead of days since the character was created [number]. [NEW] Added secondary iron sight to CZ550 and bolt animations to CZ550 and LeeEnfield by @Streatman [NEW] Added some basic compatibility for falconsan's Ruegen map (beta version released February 2016) -[NEW] Admins can now define what parts are returned from modular building parts, see configVariables.sqf/DZE_modularConfig @oiad @BigEgg +[NEW] Admins can now define what parts are returned from modular building parts, see configVariables.sqf/DZE_modularConfig @oiad @BigEgg17 [NEW] Basic server-side authentication for server_deleteObj, server owners and script makers should review the changes if using PVDZ_obj_Destroy/server_deleteObj and verify custom/redefined code is compliant with these changes https://github.com/EpochModTeam/DayZ-Epoch/commit/8035df0ba0cd928b84085e288c5cb88260870a3e [NEW] BAF_L85A2_RIS_TWS_DZ to emulate the old behavior of the now NV only BAF_L85A2_RIS_CWS. Server owners must add the weapon on their own #1983 +[NEW] Admins can now define a maximum build height. @BigEgg17 [UPDATED] Zombie pathing. Zeds should now run more direct to players. [UPDATED] The RIS attachment can be removed from the SA58_RIS_DZ now. @LunaCB From dc3939fce598bf5eb657fb140ae23fb62e8353b9 Mon Sep 17 00:00:00 2001 From: BigEgg Date: Sun, 8 Oct 2017 00:06:18 -0500 Subject: [PATCH 7/8] Update Change Log --- CHANGE LOG 1.0.6.2.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGE LOG 1.0.6.2.txt b/CHANGE LOG 1.0.6.2.txt index c08e211b9..7488ce4ae 100644 --- a/CHANGE LOG 1.0.6.2.txt +++ b/CHANGE LOG 1.0.6.2.txt @@ -7,7 +7,7 @@ [NEW] Admins can now define what parts are returned from modular building parts, see configVariables.sqf/DZE_modularConfig @oiad @BigEgg17 [NEW] Basic server-side authentication for server_deleteObj, server owners and script makers should review the changes if using PVDZ_obj_Destroy/server_deleteObj and verify custom/redefined code is compliant with these changes https://github.com/EpochModTeam/DayZ-Epoch/commit/8035df0ba0cd928b84085e288c5cb88260870a3e [NEW] BAF_L85A2_RIS_TWS_DZ to emulate the old behavior of the now NV only BAF_L85A2_RIS_CWS. Server owners must add the weapon on their own #1983 -[NEW] Admins can now define a maximum build height. @BigEgg17 +[NEW] Admins can now define a maximum build height, see configVariables.sqf/DZE_BuildHeightLimit. @BigEgg17 [UPDATED] Zombie pathing. Zeds should now run more direct to players. [UPDATED] The RIS attachment can be removed from the SA58_RIS_DZ now. @LunaCB From e9ff8ff45be81ced8e4fb4338b12ed4993de3fe6 Mon Sep 17 00:00:00 2001 From: BigEgg Date: Sun, 8 Oct 2017 00:12:19 -0500 Subject: [PATCH 8/8] Removed "=" from dze_buildChecks.sqf Salival recommended a >=, however upon further thought, this would be irrelevant as this variable is meant to prevent building over a certain height, not at that specific height. Having >= would restrict building at exactly 30 meters for example rather than simply above it. The = sign was also not used in modular_build.sqf --- SQF/dayz_code/compile/dze_buildChecks.sqf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/SQF/dayz_code/compile/dze_buildChecks.sqf b/SQF/dayz_code/compile/dze_buildChecks.sqf index 145e73b6e..667dd3522 100644 --- a/SQF/dayz_code/compile/dze_buildChecks.sqf +++ b/SQF/dayz_code/compile/dze_buildChecks.sqf @@ -97,7 +97,7 @@ if (!_canBuild) exitWith { [_canBuild, _isPole]; }; -if (DZE_BuildHeightLimit > 0 && ((getPosATL (vehicle player)) select 2) >= DZE_BuildHeightLimit) exitWith {dayz_actionInProgress = false; format [localize "STR_EPOCH_PLAYER_168", DZE_BuildHeightLimit] call dayz_rollingMessages; [false, _isPole];}; +if (DZE_BuildHeightLimit > 0 && ((getPosATL (vehicle player)) select 2) > DZE_BuildHeightLimit) exitWith {dayz_actionInProgress = false; format [localize "STR_EPOCH_PLAYER_168", DZE_BuildHeightLimit] call dayz_rollingMessages; [false, _isPole];}; // Also count safes, lockboxes, vanilla buildables, tents and stashes against DZE_BuildingLimit _buildables = DZE_maintainClasses + DZE_LockableStorage + ["DZ_buildables","DZ_storage_base"];