diff --git a/Missionframework/scripts/server/game/zeus_synchro.sqf b/Missionframework/scripts/server/game/zeus_synchro.sqf index 75bb6446..01b116e2 100644 --- a/Missionframework/scripts/server/game/zeus_synchro.sqf +++ b/Missionframework/scripts/server/game/zeus_synchro.sqf @@ -40,13 +40,7 @@ while { true } do { _zgm addCuratorEditableObjects [_zeusunits,true]; _zgm removeCuratorEditableObjects [_units_to_remove,true]; - _zgm setCuratorCoef ["edit", -1e8]; - _zgm setCuratorCoef ["place", -1e8]; - _zgm setCuratorCoef ["synchronize", 0]; - _zgm setCuratorCoef ["delete", 0]; - _zgm setCuratorCoef ["destroy", -1e8]; - } foreach allCurators; sleep 10; -}; \ No newline at end of file +}; diff --git a/Missionframework/scripts/server/init_server.sqf b/Missionframework/scripts/server/init_server.sqf index 2e6ad647..ce2e2d58 100644 --- a/Missionframework/scripts/server/init_server.sqf +++ b/Missionframework/scripts/server/init_server.sqf @@ -126,3 +126,26 @@ execVM "scripts\server\offloading\group_diag.sqf"; if (KP_liberation_restart > 0) then { execVM "scripts\server\game\server_restart.sqf"; }; + +if (KP_liberation_limited_zeus) then { + zm1 setVariable ["Addons", 0, true]; + removeAllCuratorAddons zm1; + + zm1 setCuratorCoef ["edit", -1e8]; + zm1 setCuratorCoef ["place", -1e8]; + zm1 setCuratorCoef ["synchronize", 0]; + zm1 setCuratorCoef ["delete", 0]; + zm1 setCuratorCoef ["destroy", -1e8]; +} else { + zm1 setVariable ["Addons", 3, true]; + removeAllCuratorAddons zm1; + + private _allAddons = ("true" configClasses (configFile >> "CfgPatches")) apply {configName _x}; + zm1 addCuratorAddons _allAddons; + + zm1 setCuratorCoef ["edit", 0]; + zm1 setCuratorCoef ["place", 0]; + zm1 setCuratorCoef ["synchronize", 0]; + zm1 setCuratorCoef ["delete", 0]; + zm1 setCuratorCoef ["destroy", 0]; +}; diff --git a/Missionframework/scripts/shared/fetch_params.sqf b/Missionframework/scripts/shared/fetch_params.sqf index 1e6b3737..b02adba2 100644 --- a/Missionframework/scripts/shared/fetch_params.sqf +++ b/Missionframework/scripts/shared/fetch_params.sqf @@ -55,6 +55,7 @@ if(isServer) then { GET_PARAM_BOOL(KP_liberation_cr_param_buildings, "CR_Building", 0); GET_PARAM_BOOL(KP_liberation_ailogistics, "AiLogistics", 1); GET_PARAM_BOOL(KP_liberation_clear_cargo, "ClearCargo", 1); + GET_PARAM_BOOL(KP_liberation_limited_zeus, "LimitedZeus", 1); GET_PARAM_BOOL(KP_liberation_arsenalUsePreset, "ArsenalUsePreset", 1); GET_PARAM_BOOL(KP_liberation_mapmarkers, "MapMarkers", 1); GET_PARAM_BOOL(KP_liberation_mobilerespawn, "MobileRespawn", 1); @@ -379,6 +380,10 @@ if (!isDedicated && hasInterface) then { _value = if (KP_liberation_clear_cargo) then {localize "STR_PARAMS_ENABLED";} else {localize "STR_PARAMS_DISABLED";}; _text = _text + format ["%1
%2

", _param, _value]; + _param = localize "STR_PARAM_LIMITEDZEUS"; + _value = if (KP_liberation_limited_zeus) then {localize "STR_PARAMS_ENABLED";} else {localize "STR_PARAMS_DISABLED";}; + _text = _text + format ["%1
%2

", _param, _value]; + _param = localize "STR_PERMISSIONS_PARAM"; _value = if (GRLIB_permissions_param) then {localize "STR_PARAMS_ENABLED";} else {localize "STR_PARAMS_DISABLED";}; _text = _text + format ["%1
%2

", _param, _value]; diff --git a/Missionframework/stringtable.xml b/Missionframework/stringtable.xml index e0bbdcca..02968fca 100644 --- a/Missionframework/stringtable.xml +++ b/Missionframework/stringtable.xml @@ -2426,6 +2426,10 @@ Maximum sector deactivation delay (starts increasing after 5th activation minute) Maximale Verzögerung zur Sektor Deaktivierung (Beginnt nach 5 Minuten seit Aktivierung) + + Limited Zeus interface + Eingeschränkte Zeus Funktionen + Deployment in progress... Déploiement en cours... diff --git a/Missionframework/ui/mission_params.hpp b/Missionframework/ui/mission_params.hpp index 697bab84..39771e09 100644 --- a/Missionframework/ui/mission_params.hpp +++ b/Missionframework/ui/mission_params.hpp @@ -4,7 +4,7 @@ class Params title = $STR_PARAMS_LOADSAVEPARAMS; values[] = { 0, 1, 2 }; texts[] = { $STR_PARAMS_LOADSAVEPARAMS_SAVE, $STR_PARAMS_LOADSAVEPARAMS_LOAD, $STR_PARAMS_LOADSAVEPARAMS_SELECTED }; - default = 1; + default = 1; // If you want to set mission parameters via server.cfg or this file, then set this value to 2 }; class Spacer0 { title = ""; @@ -270,6 +270,12 @@ class Params texts[] = {$STR_PARAMS_DISABLED, "5", "10", "15", "20", "25", "30"}; default = 5; }; + class LimitedZeus { + title = $STR_PARAM_LIMITEDZEUS; + values[] = {1,0}; + texts[] = { $STR_PARAMS_ENABLED, $STR_PARAMS_DISABLED }; + default = 1; + }; class Spacer3 { title = ""; values[] = { "" }; diff --git a/README.md b/README.md index 9bc11cce..524ef8b3 100644 --- a/README.md +++ b/README.md @@ -190,6 +190,7 @@ class Missions ### 0.96.6 (tbd) * Added: [Swedish Forces Pack](https://steamcommunity.com/sharedfiles/filedetails/?id=826911897) transport configs. Thanks to [Dahlgren](https://github.com/Dahlgren) * Added: Parameter to enable/disable the vanilla A3 dynamic fog behavior. Default enabled, so `fucking_set_fog.sqf` isn't running by default. +* Added: Parameter to enable/disable limitations on Zeus functionalities. Default enabled to keep old behaviour. * Added: Parameter to decide to start the campaign with a FOB container (default, like before) or a FOB truck. * Added: Sector despawn scaling. The longer sector is activated the longer it de-activates. Configurable as parameter, 5min additional delay max by default. * Updated: Russian localization. Thanks to [DjHaski](https://github.com/DjHaski)