diff --git a/addons/attributes/XEH_preInit.sqf b/addons/attributes/XEH_preInit.sqf
index 0bd28810d..abd6dae3f 100644
--- a/addons/attributes/XEH_preInit.sqf
+++ b/addons/attributes/XEH_preInit.sqf
@@ -23,5 +23,6 @@ GVAR(previousMarkerColors) = [] call CBA_fnc_createNamespace;
 
 // Initialize the core/default attributes
 #include "initAttributes.sqf"
+#include "initSettings.sqf"
 
 ADDON = true;
diff --git a/addons/attributes/initAttributes.sqf b/addons/attributes/initAttributes.sqf
index af31dffb6..d74dfd1f8 100644
--- a/addons/attributes/initAttributes.sqf
+++ b/addons/attributes/initAttributes.sqf
@@ -6,7 +6,7 @@
     "Object",
     "STR_A3_Arsenal",
     {_entity call EFUNC(common,openArsenal)},
-    {alive _entity && {_entity isKindOf "CAManBase"}},
+    {GVAR(enableArsenal) && {alive _entity} && {_entity isKindOf "CAManBase"}},
     true
 ] call FUNC(addButton);
 
@@ -23,7 +23,7 @@
         };
     },
     {name _entity},
-    {alive _entity && {_entity isKindOf "CAManBase"}}
+    {GVAR(enableName) && {alive _entity} && {_entity isKindOf "CAManBase"}}
 ] call FUNC(addAttribute);
 
 [
@@ -37,7 +37,7 @@
         } forEach call EFUNC(common,getSelectedUnits);
     },
     {skill _entity},
-    {alive _entity && {!isNull group _entity && {side _entity != sideLogic}}}
+    {GVAR(enableSkill) && {alive _entity} && {!isNull group _entity && {side _entity != sideLogic}}}
 ] call FUNC(addAttribute);
 
 [
@@ -52,7 +52,7 @@
         } forEach SELECTED_OBJECTS;
     },
     {1 - damage _entity},
-    {alive _entity}
+    {GVAR(enableHealth) && {alive _entity}}
 ] call FUNC(addAttribute);
 
 [
@@ -66,7 +66,7 @@
         } forEach call EFUNC(common,getSelectedVehicles);
     },
     {fuel _entity},
-    {alive _entity && {getNumber (configOf _entity >> "fuelCapacity") > 0}}
+    {GVAR(enableFuel) && {alive _entity} && {getNumber (configOf _entity >> "fuelCapacity") > 0}}
 ] call FUNC(addAttribute);
 
 [
@@ -80,7 +80,7 @@
         } forEach call EFUNC(common,getSelectedVehicles);
     },
     {_entity call EFUNC(common,getVehicleAmmo)},
-    {alive _entity && {_entity call EFUNC(common,getVehicleAmmo) != -1}}
+    {GVAR(enableAmmo) && {alive _entity} && {_entity call EFUNC(common,getVehicleAmmo) != -1}}
 ] call FUNC(addAttribute);
 
 [
@@ -102,7 +102,7 @@
         } forEach call EFUNC(common,getSelectedUnits);
     },
     {rank _entity},
-    {alive _entity && {_entity isKindOf "CAManBase"}}
+    {GVAR(enableRank) && {alive _entity && {_entity isKindOf "CAManBase"}}}
 ] call FUNC(addAttribute);
 
 [
@@ -121,7 +121,7 @@
         } forEach call EFUNC(common,getSelectedUnits);
     },
     {toUpper unitPos _entity},
-    {alive _entity && {_entity isKindOf "CAManBase"}}
+    {GVAR(enableStance) && {alive _entity} && {_entity isKindOf "CAManBase"}}
 ] call FUNC(addAttribute);
 
 [
@@ -140,7 +140,7 @@
         } forEach call EFUNC(common,getSelectedVehicles);
     },
     {locked _entity},
-    {alive _entity && {_entity isKindOf "LandVehicle" || {_entity isKindOf "Air"} || {_entity isKindOf "Ship"}}}
+    {GVAR(enableVehicleLock) && {alive _entity} && {_entity isKindOf "LandVehicle" || {_entity isKindOf "Air"} || {_entity isKindOf "Ship"}}}
 ] call FUNC(addAttribute);
 
 [
@@ -157,7 +157,7 @@
         } forEach call EFUNC(common,getSelectedVehicles);
     },
     {isEngineOn _entity},
-    {alive _entity && {getNumber (configOf _entity >> "fuelCapacity") > 0} && {_entity isKindOf "LandVehicle" || {_entity isKindOf "Air"} || {_entity isKindOf "Ship"}}}
+    {GVAR(enableEngine) && {alive _entity} && {getNumber (configOf _entity >> "fuelCapacity") > 0} && {_entity isKindOf "LandVehicle" || {_entity isKindOf "Air"} || {_entity isKindOf "Ship"}}}
 ] call FUNC(addAttribute);
 
 [
@@ -182,7 +182,7 @@
         } forEach call EFUNC(common,getSelectedVehicles);
     },
     {isLightOn _entity},
-    {alive _entity && {"true" configClasses (configOf _entity >> "Reflectors") isNotEqualTo []} && {_entity isKindOf "LandVehicle" || {_entity isKindOf "Air"} || {_entity isKindOf "Ship"}}}
+    {GVAR(enableLights) && {alive _entity} && {"true" configClasses (configOf _entity >> "Reflectors") isNotEqualTo []} && {_entity isKindOf "LandVehicle" || {_entity isKindOf "Air"} || {_entity isKindOf "Ship"}}}
 ] call FUNC(addAttribute);
 
 [
@@ -195,7 +195,7 @@
         [_buildings, _value] call EFUNC(building_markers,set);
     },
     {_entity getVariable [QEGVAR(building_markers,marker), ""] != ""},
-    {_entity isKindOf "Building"}
+    {GVAR(enableBuildingMarker) && {_entity isKindOf "Building"}}
 ] call FUNC(addAttribute);
 
 [
@@ -207,7 +207,7 @@
         [QEGVAR(common,setPlateNumber), [_entity, _value], _entity] call CBA_fnc_targetEvent;
     },
     {getPlateNumber _entity},
-    {alive _entity && {getText (configOf _entity >> "PlateInfos" >> "name") in selectionNames _entity}}
+    {GVAR(enablePlateNumber) && {alive _entity} && {getText (configOf _entity >> "PlateInfos" >> "name") in selectionNames _entity}}
 ] call FUNC(addAttribute);
 
 [
@@ -249,7 +249,7 @@
     {
         _entity getVariable [QGVAR(respawnPos), []] param [0, sideEmpty]
     },
-    {alive _entity && {canMove _entity} && {_entity isKindOf "AllVehicles"} && {!(_entity isKindOf "Animal")}}
+    {GVAR(enableRespawnPosition) && {alive _entity} && {canMove _entity} && {_entity isKindOf "AllVehicles"} && {!(_entity isKindOf "Animal")}}
 ] call FUNC(addAttribute);
 
 [
@@ -298,7 +298,7 @@
 
         _respawnID
     },
-    {_entity isKindOf "LandVehicle" || {_entity isKindOf "Air"} || {_entity isKindOf "Ship"}}
+    {GVAR(enableRespawnVehicle) && {_entity isKindOf "LandVehicle" || {_entity isKindOf "Air"} || {_entity isKindOf "Ship"}}}
 ] call FUNC(addAttribute);
 
 [
@@ -322,7 +322,8 @@
     },
     {
         [isDamageAllowed _entity, simulationEnabled _entity, !isObjectHidden _entity]
-    }
+    },
+    {GVAR(enableStates)}
 ] call FUNC(addAttribute);
 
 [
@@ -348,7 +349,7 @@
         };
     },
     {""},
-    {IS_ADMIN_LOGGED || {!GETMVAR(ZEN_disableCodeExecution,false)}}
+    {GVAR(enableExecute) && {IS_ADMIN_LOGGED || {!GETMVAR(ZEN_disableCodeExecution,false)}}}
 ] call FUNC(addAttribute);
 
 // - Group --------------------------------------------------------------------
@@ -361,7 +362,8 @@
     QGVAR(edit),
     nil,
     {_entity setGroupIdGlobal [_value]},
-    {groupID _entity}
+    {groupID _entity},
+    {GVAR(enableGroupID)}
 ] call FUNC(addAttribute);
 
 [
@@ -376,7 +378,8 @@
             } forEach units _x;
         } forEach SELECTED_GROUPS;
     },
-    {skill leader _entity}
+    {skill leader _entity},
+    {GVAR(enableGroupSkill)}
 ] call FUNC(addAttribute);
 
 [
@@ -399,7 +402,8 @@
             [QEGVAR(common,setFormation), [_x, _value], _x] call CBA_fnc_targetEvent;
         } forEach SELECTED_GROUPS;
     },
-    {formation _entity}
+    {formation _entity},
+    {GVAR(enableGroupFormation)}
 ] call FUNC(addAttribute);
 
 [
@@ -418,7 +422,8 @@
             [QEGVAR(common,setBehaviour), [_x, _value], _x] call CBA_fnc_targetEvent;
         } forEach SELECTED_GROUPS;
     },
-    {behaviour leader _entity}
+    {behaviour leader _entity},
+    {GVAR(enableGroupBehaviour)}
 ] call FUNC(addAttribute);
 
 [
@@ -437,7 +442,8 @@
             [QEGVAR(common,setCombatMode), [_x, _value], _x] call CBA_fnc_targetEvent;
         } forEach SELECTED_GROUPS;
     },
-    {combatMode _entity}
+    {combatMode _entity},
+    {GVAR(enableGroupCombatMode)}
 ] call FUNC(addAttribute);
 
 [
@@ -454,7 +460,8 @@
             [QEGVAR(common,setSpeedMode), [_x, _value], _x] call CBA_fnc_targetEvent;
         } forEach SELECTED_GROUPS;
     },
-    {speedMode _entity}
+    {speedMode _entity},
+    {GVAR(enableGroupSpeed)}
 ] call FUNC(addAttribute);
 
 [
@@ -474,7 +481,8 @@
             } forEach units _x;
         } forEach SELECTED_GROUPS;
     },
-    {toUpper unitPos leader _entity}
+    {toUpper unitPos leader _entity},
+    {GVAR(enableGroupStance)}
 ] call FUNC(addAttribute);
 
 [
@@ -500,7 +508,7 @@
         };
     },
     {""},
-    {IS_ADMIN_LOGGED || {!GETMVAR(ZEN_disableCodeExecution,false)}}
+    {GVAR(enableGroupExecute) && {IS_ADMIN_LOGGED || {!GETMVAR(ZEN_disableCodeExecution,false)}}}
 ] call FUNC(addAttribute);
 
 // - Waypoint -----------------------------------------------------------------
@@ -518,7 +526,9 @@
             _x setWaypointType _type;
             if (_type == "SCRIPTED") then {_x setWaypointScript _script};
         } forEach SELECTED_WAYPOINTS;
-    }
+    },
+    nil,
+    {GVAR(enableWaypointType)}
 ] call FUNC(addAttribute);
 
 [
@@ -534,7 +544,7 @@
         } forEach SELECTED_WAYPOINTS;
     },
     {waypointLoiterType _entity},
-    {waypointType _entity == "LOITER"}
+    {GVAR(enableWaypointLoiterDirection) && {waypointType _entity == "LOITER"}}
 ] call FUNC(addAttribute);
 
 [
@@ -551,7 +561,7 @@
         } forEach SELECTED_WAYPOINTS;
     },
     {str waypointLoiterRadius _entity},
-    {waypointType _entity == "LOITER"}
+    {GVAR(enableWaypointLoiterRadius) && {waypointType _entity == "LOITER"}}
 ] call FUNC(addAttribute);
 
 [
@@ -568,7 +578,7 @@
         } forEach SELECTED_WAYPOINTS;
     },
     {str waypointLoiterAltitude _entity},
-    {waypointType _entity == "LOITER"}
+    {GVAR(enableWaypointLoiterAltitude) && {waypointType _entity == "LOITER"}}
 ] call FUNC(addAttribute);
 
 [
@@ -577,7 +587,8 @@
     QGVAR(slider),
     [0, 1800, 15, false, 0],
     {_entity setWaypointTimeout [_value, _value, _value]},
-    {random waypointTimeout _entity}
+    {random waypointTimeout _entity},
+    {GVAR(enableWaypointTimeout)}
 ] call FUNC(addAttribute);
 
 [
@@ -607,7 +618,8 @@
             [QEGVAR(common,setWaypointFormation), [_x, _value]] call CBA_fnc_serverEvent;
         } forEach SELECTED_WAYPOINTS;
     },
-    {waypointFormation _entity}
+    {waypointFormation _entity},
+    {GVAR(enableWaypointFormation)}
 ] call FUNC(addAttribute);
 
 [
@@ -633,7 +645,8 @@
             [QEGVAR(common,setWaypointBehaviour), [_x, _value]] call CBA_fnc_serverEvent;
         } forEach SELECTED_WAYPOINTS;
     },
-    {waypointBehaviour _entity}
+    {waypointBehaviour _entity},
+    {GVAR(enableWaypointBehaviour)}
 ] call FUNC(addAttribute);
 
 [
@@ -659,7 +672,8 @@
             [QEGVAR(common,setWaypointCombatMode), [_x, _value]] call CBA_fnc_serverEvent;
         } forEach SELECTED_WAYPOINTS;
     },
-    {waypointCombatMode _entity}
+    {waypointCombatMode _entity},
+    {GVAR(enableWaypointCombatMode)}
 ] call FUNC(addAttribute);
 
 [
@@ -683,7 +697,8 @@
             [QEGVAR(common,setWaypointSpeed), [_x, _value]] call CBA_fnc_serverEvent;
         } forEach SELECTED_WAYPOINTS;
     },
-    {waypointSpeed _entity}
+    {waypointSpeed _entity},
+    {GVAR(enableWaypointSpeed)}
 ] call FUNC(addAttribute);
 
 // - Marker -------------------------------------------------------------------
@@ -696,7 +711,8 @@
     QGVAR(edit),
     nil,
     {_entity setMarkerText _value},
-    {markerText _entity}
+    {markerText _entity},
+    {GVAR(enableMarkerText)}
 ] call FUNC(addAttribute);
 
 [
@@ -714,7 +730,8 @@
         // Set this color to be applied to new markers of this type
         GVAR(previousMarkerColors) setVariable [markerType _entity, _value];
     },
-    {markerColor _entity}
+    {markerColor _entity},
+    {GVAR(enableMarkerColor)}
 ] call FUNC(addAttribute);
 
 [
@@ -723,7 +740,8 @@
     QGVAR(slider),
     [0, 1, 0.1, true],
     {_entity setMarkerAlpha _value},
-    {markerAlpha _entity}
+    {markerAlpha _entity},
+    {GVAR(enableMarkerAlpha)}
 ] call FUNC(addAttribute);
 
 // - Skills -------------------------------------------------------------------
@@ -734,7 +752,7 @@
     "Object",
     LSTRING(Skills),
     {[_entity, "Skills"] call FUNC(open)},
-    {alive _entity && {_entity isKindOf "CAManBase"}}
+    {GVAR(enableSkills) && {alive _entity} && {_entity isKindOf "CAManBase"}}
 ] call FUNC(addButton);
 
 [
@@ -862,7 +880,7 @@
     "Object",
     LSTRING(Abilities),
     {[_entity, "Abilities"] call FUNC(open)},
-    {alive _entity && {_entity isKindOf "CAManBase"}}
+    {GVAR(enableAbilities) && {alive _entity} && {_entity isKindOf "CAManBase"}}
 ] call FUNC(addButton);
 
 [
@@ -904,7 +922,7 @@
     "Object",
     LSTRING(Traits),
     {[_entity, "Traits"] call FUNC(open)},
-    {alive _entity && {_entity isKindOf "CAManBase"}}
+    {GVAR(enableTraits) && {alive _entity} && {_entity isKindOf "CAManBase"}}
 ] call FUNC(addButton);
 
 if (isClass (configFile >> "CfgPatches" >> "ace_medical")) then {
@@ -999,7 +1017,7 @@ if (isClass (configFile >> "CfgPatches" >> "ace_explosives")) then {
     "Object",
     LSTRING(Sensors),
     {[_entity, "Sensors"] call FUNC(open)},
-    {alive _entity && {_entity isKindOf "LandVehicle" || {_entity isKindOf "Air"} || {_entity isKindOf "Ship"}}}
+    {GVAR(enableSensors) && {alive _entity} && {_entity isKindOf "LandVehicle" || {_entity isKindOf "Air"} || {_entity isKindOf "Ship"}}}
 ] call FUNC(addButton);
 
 [
@@ -1065,7 +1083,8 @@ if (isClass (configFile >> "CfgPatches" >> "ace_explosives")) then {
 [
     "Group",
     "STR_Eval_TypeSide",
-    {[_entity, "Side"] call FUNC(open)}
+    {[_entity, "Side"] call FUNC(open)},
+    {GVAR(enableGroupSide)}
 ] call FUNC(addButton);
 
 [
diff --git a/addons/attributes/initSettings.sqf b/addons/attributes/initSettings.sqf
new file mode 100644
index 000000000..960270a9f
--- /dev/null
+++ b/addons/attributes/initSettings.sqf
@@ -0,0 +1,385 @@
+// - Object -------------------------------------------------------------------
+
+[
+    QGVAR(enableName),
+    "CHECKBOX",
+    "STR_3DEN_Object_Attribute_UnitName_displayName",
+    [LSTRING(DisplayName), "STR_3DEN_Object_textPlural"],
+    true,
+    false
+] call CBA_fnc_addSetting;
+
+[
+    QGVAR(enableSkill),
+    "CHECKBOX",
+    "STR_3DEN_Object_Attribute_Skill_displayName",
+    [LSTRING(DisplayName), "STR_3DEN_Object_textPlural"],
+    true,
+    false
+] call CBA_fnc_addSetting;
+
+[
+    QGVAR(enableHealth),
+    "CHECKBOX",
+    "STR_3DEN_Object_Attribute_Health_displayName",
+    [LSTRING(DisplayName), "STR_3DEN_Object_textPlural"],
+    true,
+    false
+] call CBA_fnc_addSetting;
+
+[
+    QGVAR(enableFuel),
+    "CHECKBOX",
+    "STR_3DEN_Object_Attribute_Fuel_displayName",
+    [LSTRING(DisplayName), "STR_3DEN_Object_textPlural"],
+    true,
+    false
+] call CBA_fnc_addSetting;
+
+[
+    QGVAR(enableAmmo),
+    "CHECKBOX",
+    "STR_3DEN_Object_Attribute_Ammo_displayName",
+    [LSTRING(DisplayName), "STR_3DEN_Object_textPlural"],
+    true,
+    false
+] call CBA_fnc_addSetting;
+
+[
+    QGVAR(enableRank),
+    "CHECKBOX",
+    "STR_3DEN_Object_Attribute_Rank_displayName",
+    [LSTRING(DisplayName), "STR_3DEN_Object_textPlural"],
+    true,
+    false
+] call CBA_fnc_addSetting;
+
+[
+    QGVAR(enableStance),
+    "CHECKBOX",
+    "STR_A3_RscAttributeUnitPos_Title",
+    [LSTRING(DisplayName), "STR_3DEN_Object_textPlural"],
+    true,
+    false
+] call CBA_fnc_addSetting;
+
+[
+    QGVAR(enableVehicleLock),
+    "CHECKBOX",
+    "STR_3den_object_attribute_lock_displayname",
+    [LSTRING(DisplayName), "STR_3DEN_Object_textPlural"],
+    true,
+    false
+] call CBA_fnc_addSetting;
+
+[
+    QGVAR(enableEngine),
+    "CHECKBOX",
+    LSTRING(Engine),
+    [LSTRING(DisplayName), "STR_3DEN_Object_textPlural"],
+    true,
+    false
+] call CBA_fnc_addSetting;
+
+[
+    QGVAR(enableLights),
+    "CHECKBOX",
+    LSTRING(Lights),
+    [LSTRING(DisplayName), "STR_3DEN_Object_textPlural"],
+    true,
+    false
+] call CBA_fnc_addSetting;
+
+[
+    QGVAR(enableBuildingMarker),
+    "CHECKBOX",
+    ELSTRING(building_markers,BuildingMarker),
+    [LSTRING(DisplayName), "STR_3DEN_Object_textPlural"],
+    true,
+    false
+] call CBA_fnc_addSetting;
+
+[
+    QGVAR(enablePlateNumber),
+    "CHECKBOX",
+    LSTRING(PlateNumber),
+    [LSTRING(DisplayName), "STR_3DEN_Object_textPlural"],
+    true,
+    false
+] call CBA_fnc_addSetting;
+
+[
+    QGVAR(enableRespawnPosition),
+    "CHECKBOX",
+    LSTRING(RespawnPosition),
+    [LSTRING(DisplayName), "STR_3DEN_Object_textPlural"],
+    true,
+    false
+] call CBA_fnc_addSetting;
+
+[
+    QGVAR(enableRespawnVehicle),
+    "CHECKBOX",
+    LSTRING(RespawnVehicle),
+    [LSTRING(DisplayName), "STR_3DEN_Object_textPlural"],
+    true,
+    false
+] call CBA_fnc_addSetting;
+
+[
+    QGVAR(enableStates),
+    "CHECKBOX",
+    LSTRING(States),
+    [LSTRING(DisplayName), "STR_3DEN_Object_textPlural"],
+    true,
+    false
+] call CBA_fnc_addSetting;
+
+[
+    QGVAR(enableExecute),
+    "CHECKBOX",
+    "STR_a3_rscdebugconsole_expressiontext",
+    [LSTRING(DisplayName), "STR_3DEN_Object_textPlural"],
+    true,
+    false
+] call CBA_fnc_addSetting;
+
+[
+    QGVAR(enableArsenal),
+    "CHECKBOX",
+    "STR_A3_Arsenal",
+    [LSTRING(DisplayName), "STR_3DEN_Object_textPlural"],
+    true,
+    false
+] call CBA_fnc_addSetting;
+
+[
+    QGVAR(enableSkills),
+    "CHECKBOX",
+    LSTRING(Skills),
+    [LSTRING(DisplayName), "STR_3DEN_Object_textPlural"],
+    true,
+    false
+] call CBA_fnc_addSetting;
+
+[
+    QGVAR(enableAbilities),
+    "CHECKBOX",
+    LSTRING(Abilities),
+    [LSTRING(DisplayName), "STR_3DEN_Object_textPlural"],
+    true,
+    false
+] call CBA_fnc_addSetting;
+
+[
+    QGVAR(enableTraits),
+    "CHECKBOX",
+    LSTRING(Traits),
+    [LSTRING(DisplayName), "STR_3DEN_Object_textPlural"],
+    true,
+    false
+] call CBA_fnc_addSetting;
+
+[
+    QGVAR(enableSensors),
+    "CHECKBOX",
+    LSTRING(Sensors),
+    [LSTRING(DisplayName), "STR_3DEN_Object_textPlural"],
+    true,
+    false
+] call CBA_fnc_addSetting;
+
+// - Group --------------------------------------------------------------------
+
+[
+    QGVAR(enableGroupID),
+    "CHECKBOX",
+    "STR_A3_RscAttributeGroupID_Title",
+    [LSTRING(DisplayName), "str_a3_rscdisplaycurator_modegroups_tooltip"],
+    true,
+    false
+] call CBA_fnc_addSetting;
+
+[
+    QGVAR(enableGroupSkill),
+    "CHECKBOX",
+    "STR_3DEN_Object_Attribute_Skill_displayName",
+    [LSTRING(DisplayName), "str_a3_rscdisplaycurator_modegroups_tooltip"],
+    true,
+    false
+] call CBA_fnc_addSetting;
+
+[
+    QGVAR(enableGroupFormation),
+    "CHECKBOX",
+    "STR_3DEN_Group_Attribute_Formation_displayName",
+    [LSTRING(DisplayName), "str_a3_rscdisplaycurator_modegroups_tooltip"],
+    true,
+    false
+] call CBA_fnc_addSetting;
+
+[
+    QGVAR(enableGroupBehaviour),
+    "CHECKBOX",
+    "STR_3DEN_Group_Attribute_Behaviour_displayName",
+    [LSTRING(DisplayName), "str_a3_rscdisplaycurator_modegroups_tooltip"],
+    true,
+    false
+] call CBA_fnc_addSetting;
+
+[
+    QGVAR(enableGroupCombatMode),
+    "CHECKBOX",
+    "STR_3DEN_Group_Attribute_CombatMode_displayName",
+    [LSTRING(DisplayName), "str_a3_rscdisplaycurator_modegroups_tooltip"],
+    true,
+    false
+] call CBA_fnc_addSetting;
+
+[
+    QGVAR(enableGroupSpeed),
+    "CHECKBOX",
+    "STR_HC_Menu_Speed",
+    [LSTRING(DisplayName), "str_a3_rscdisplaycurator_modegroups_tooltip"],
+    true,
+    false
+] call CBA_fnc_addSetting;
+
+[
+    QGVAR(enableGroupStance),
+    "CHECKBOX",
+    "STR_A3_RscAttributeUnitPos_Title",
+    [LSTRING(DisplayName), "str_a3_rscdisplaycurator_modegroups_tooltip"],
+    true,
+    false
+] call CBA_fnc_addSetting;
+
+[
+    QGVAR(enableGroupExecute),
+    "CHECKBOX",
+    "STR_a3_rscdebugconsole_expressiontext",
+    [LSTRING(DisplayName), "str_a3_rscdisplaycurator_modegroups_tooltip"],
+    true,
+    false
+] call CBA_fnc_addSetting;
+
+[
+    QGVAR(enableGroupSide),
+    "CHECKBOX",
+    "STR_Eval_TypeSide",
+    [LSTRING(DisplayName), "str_a3_rscdisplaycurator_modegroups_tooltip"],
+    true,
+    false
+] call CBA_fnc_addSetting;
+
+// - Waypoint -----------------------------------------------------------------
+
+[
+    QGVAR(enableWaypointType),
+    "CHECKBOX",
+    "STR_3DEN_Object_Attribute_Type_displayName",
+    [LSTRING(DisplayName), "STR_3DEN_Waypoint_textPlural"],
+    true,
+    false
+] call CBA_fnc_addSetting;
+
+[
+    QGVAR(enableWaypointLoiterDirection),
+    "CHECKBOX",
+    "STR_3DEN_Waypoint_Attribute_LoiterDirection_displayname",
+    [LSTRING(DisplayName), "STR_3DEN_Waypoint_textPlural"],
+    true,
+    false
+] call CBA_fnc_addSetting;
+
+[
+    QGVAR(enableWaypointLoiterRadius),
+    "CHECKBOX",
+    "STR_3DEN_Waypoint_Attribute_LoiterRadius_displayname",
+    [LSTRING(DisplayName), "STR_3DEN_Waypoint_textPlural"],
+    true,
+    false
+] call CBA_fnc_addSetting;
+
+[
+    QGVAR(enableWaypointLoiterAltitude),
+    "CHECKBOX",
+    "STR_3DEN_Waypoint_Attribute_LoiterAltitude_displayname",
+    [LSTRING(DisplayName), "STR_3DEN_Waypoint_textPlural"],
+    true,
+    false
+] call CBA_fnc_addSetting;
+
+[
+    QGVAR(enableWaypointTimeout),
+    "CHECKBOX",
+    LSTRING(Timeout),
+    [LSTRING(DisplayName), "STR_3DEN_Waypoint_textPlural"],
+    true,
+    false
+] call CBA_fnc_addSetting;
+
+[
+    QGVAR(enableWaypointFormation),
+    "CHECKBOX",
+    "STR_3DEN_Group_Attribute_Formation_displayName",
+    [LSTRING(DisplayName), "STR_3DEN_Waypoint_textPlural"],
+    true,
+    false
+] call CBA_fnc_addSetting;
+
+[
+    QGVAR(enableWaypointBehaviour),
+    "CHECKBOX",
+    "STR_3DEN_Group_Attribute_Behaviour_displayName",
+    [LSTRING(DisplayName), "STR_3DEN_Waypoint_textPlural"],
+    true,
+    false
+] call CBA_fnc_addSetting;
+
+[
+    QGVAR(enableWaypointCombatMode),
+    "CHECKBOX",
+    "STR_3DEN_Group_Attribute_CombatMode_displayName",
+    [LSTRING(DisplayName), "STR_3DEN_Waypoint_textPlural"],
+    true,
+    false
+] call CBA_fnc_addSetting;
+
+[
+    QGVAR(enableWaypointSpeed),
+    "CHECKBOX",
+    "STR_HC_Menu_Speed",
+    [LSTRING(DisplayName), "STR_3DEN_Waypoint_textPlural"],
+    true,
+    false
+] call CBA_fnc_addSetting;
+
+// - Marker -------------------------------------------------------------------
+
+[
+    QGVAR(enableMarkerText),
+    "CHECKBOX",
+    "STR_3DEN_Marker_Attribute_Text_displayName",
+    [LSTRING(DisplayName), "STR_3DEN_Marker_textPlural"],
+    true,
+    false
+] call CBA_fnc_addSetting;
+
+[
+    QGVAR(enableMarkerColor),
+    "CHECKBOX",
+    "STR_3DEN_Marker_Attribute_Color_displayName",
+    [LSTRING(DisplayName), "STR_3DEN_Marker_textPlural"],
+    true,
+    false
+] call CBA_fnc_addSetting;
+
+[
+    QGVAR(enableMarkerAlpha),
+    "CHECKBOX",
+    "STR_3DEN_Marker_Attribute_Alpha_displayName",
+    [LSTRING(DisplayName), "STR_3DEN_Marker_textPlural"],
+    true,
+    false
+] call CBA_fnc_addSetting;
diff --git a/addons/attributes/stringtable.xml b/addons/attributes/stringtable.xml
index ae0ef148d..30b57de13 100644
--- a/addons/attributes/stringtable.xml
+++ b/addons/attributes/stringtable.xml
@@ -1,6 +1,22 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project name="ZEN">
     <Package name="Attributes">
+        <Key ID="STR_ZEN_Attributes_DisplayName">
+            <English>Zeus Enhanced - Attributes</English>
+            <Czech>Zeus Enhanced - Atributy</Czech>
+            <German>Zeus Enhanced - Attribute</German>
+            <Russian>Zeus Enhanced - Атрибуты</Russian>
+            <Polish>Zeus Enhanced - Atrybuty</Polish>
+            <Italian>Zeus Enhanced - Attributi</Italian>
+            <Spanish>Zeus Enhanced - Atributos</Spanish>
+            <French>Zeus Enhanced - Attributs</French>
+            <Chinese>Zeus Enhanced - 屬性</Chinese>
+            <Japanese>Zeus Enhanced - 属性</Japanese>
+            <Korean>Zeus Enhanced - 속성</Korean>
+            <Portuguese>Zeus Enhanced - Atributos</Portuguese>
+            <Chinesesimp>Zeus Enhanced - 属性</Chinesesimp>
+            <Turkish>Zeus Enhanced - Özellikler</Turkish>
+        </Key>
         <Key ID="STR_ZEN_Attributes_Engine">
             <English>Engine</English>
             <French>Moteur</French>
diff --git a/addons/damage/XEH_preInit.sqf b/addons/damage/XEH_preInit.sqf
index 07511da51..7b403d030 100644
--- a/addons/damage/XEH_preInit.sqf
+++ b/addons/damage/XEH_preInit.sqf
@@ -6,6 +6,8 @@ PREP_RECOMPILE_START;
 #include "XEH_PREP.hpp"
 PREP_RECOMPILE_END;
 
+#include "initSettings.sqf"
+
 [QGVAR(setHitPointsDamage), {
     params ["_vehicle", "_damageValues"];
 
@@ -21,7 +23,7 @@ PREP_RECOMPILE_END;
         [_entity] call FUNC(configure);
     },
     {
-        alive _entity && {_entity isKindOf "LandVehicle" || {_entity isKindOf "Air"} || {_entity isKindOf "Ship"}}
+        EGVAR(attributes,enableDamage) && {alive _entity} && {_entity isKindOf "LandVehicle" || {_entity isKindOf "Air"} || {_entity isKindOf "Ship"}}
     }
 ] call EFUNC(attributes,addButton);
 
diff --git a/addons/damage/initSettings.sqf b/addons/damage/initSettings.sqf
new file mode 100644
index 000000000..348cfb0fc
--- /dev/null
+++ b/addons/damage/initSettings.sqf
@@ -0,0 +1,8 @@
+[
+    QEGVAR(attributes,enableDamage),
+    "CHECKBOX",
+    "STR_A3_NormalDamage1",
+    [ELSTRING(attributes,DisplayName), "STR_3DEN_Object_textPlural"],
+    true,
+    false
+] call CBA_fnc_addSetting;
diff --git a/addons/garage/XEH_preInit.sqf b/addons/garage/XEH_preInit.sqf
index 722ae8119..1c32c3e3f 100644
--- a/addons/garage/XEH_preInit.sqf
+++ b/addons/garage/XEH_preInit.sqf
@@ -6,6 +6,8 @@ PREP_RECOMPILE_START;
 #include "XEH_PREP.hpp"
 PREP_RECOMPILE_END;
 
+#include "initSettings.sqf"
+
 GVAR(currentTab) = -1;
 GVAR(helperPos) = [0, 0, -1];
 GVAR(camDistance) = 100;
@@ -16,7 +18,7 @@ GVAR(camYaw) = -45;
     "Object",
     "STR_A3_Garage",
     {_entity call FUNC(openGarage)},
-    {alive _entity && {_entity isKindOf "LandVehicle" || {_entity isKindOf "Air"} || {_entity isKindOf "Ship"}}},
+    {EGVAR(attributes,enableGarage) && {alive _entity} && {_entity isKindOf "LandVehicle" || {_entity isKindOf "Air"} || {_entity isKindOf "Ship"}}},
     true
 ] call EFUNC(attributes,addButton);
 
diff --git a/addons/garage/initSettings.sqf b/addons/garage/initSettings.sqf
new file mode 100644
index 000000000..25682da04
--- /dev/null
+++ b/addons/garage/initSettings.sqf
@@ -0,0 +1,8 @@
+[
+    QEGVAR(attributes,enableGarage),
+    "CHECKBOX",
+    "STR_A3_Garage",
+    [ELSTRING(attributes,DisplayName), "STR_3DEN_Object_textPlural"],
+    true,
+    false
+] call CBA_fnc_addSetting;
diff --git a/addons/inventory/XEH_preInit.sqf b/addons/inventory/XEH_preInit.sqf
index 8cd49f810..d549bdf95 100644
--- a/addons/inventory/XEH_preInit.sqf
+++ b/addons/inventory/XEH_preInit.sqf
@@ -6,6 +6,8 @@ PREP_RECOMPILE_START;
 #include "XEH_PREP.hpp"
 PREP_RECOMPILE_END;
 
+#include "initSettings.sqf"
+
 // Add inventory button to attribute display
 [
     "Object",
@@ -14,7 +16,7 @@ PREP_RECOMPILE_END;
         [_entity] call FUNC(configure);
     },
     {
-        alive _entity && {maxLoad _entity > 0} && {!(_entity isKindOf "CAManBase")}
+        EGVAR(attributes,enableInventory) && {alive _entity} && {maxLoad _entity > 0} && {!(_entity isKindOf "CAManBase")}
     }
 ] call EFUNC(attributes,addButton);
 
diff --git a/addons/inventory/initSettings.sqf b/addons/inventory/initSettings.sqf
new file mode 100644
index 000000000..d8dddd58e
--- /dev/null
+++ b/addons/inventory/initSettings.sqf
@@ -0,0 +1,8 @@
+[
+    QEGVAR(attributes,enableInventory),
+    "CHECKBOX",
+    "STR_A3_Gear1",
+    [ELSTRING(attributes,DisplayName), "STR_3DEN_Object_textPlural"],
+    true,
+    false
+] call CBA_fnc_addSetting;