From 469e58ef50cd27ecf17435a2ffc2575937710d05 Mon Sep 17 00:00:00 2001 From: iaada Date: Thu, 9 Apr 2026 17:46:18 -0500 Subject: [PATCH 01/13] initial restructuring --- .../Damage/ModifierSets/material.yml | 181 ++++++++++ .../Prototypes/Damage/ModifierSets/mob.yml | 76 ++++ .../Damage/ModifierSets/special.yml | 22 ++ .../Damage/ModifierSets/species.yml | 73 ++++ .../Prototypes/Damage/ModifierSets/status.yml | 6 + Resources/Prototypes/Damage/modifier_sets.yml | 341 ------------------ 6 files changed, 358 insertions(+), 341 deletions(-) create mode 100644 Resources/Prototypes/Damage/ModifierSets/material.yml create mode 100644 Resources/Prototypes/Damage/ModifierSets/mob.yml create mode 100644 Resources/Prototypes/Damage/ModifierSets/special.yml create mode 100644 Resources/Prototypes/Damage/ModifierSets/species.yml create mode 100644 Resources/Prototypes/Damage/ModifierSets/status.yml delete mode 100644 Resources/Prototypes/Damage/modifier_sets.yml diff --git a/Resources/Prototypes/Damage/ModifierSets/material.yml b/Resources/Prototypes/Damage/ModifierSets/material.yml new file mode 100644 index 0000000000000..47ac9446cf274 --- /dev/null +++ b/Resources/Prototypes/Damage/ModifierSets/material.yml @@ -0,0 +1,181 @@ +# Modifier sets for entities that can be described as fully (or mostly) composed of some specific material + +## Metallic + +- type: damageModifierSet + id: Metallic + coefficients: + Blunt: 0.7 + Slash: 0.5 + Piercing: 0.7 + Shock: 1.2 + Structural: 0.5 + flatReductions: + Blunt: 5 + Heat: 5 + +- type: damageModifierSet + id: StructuralMetallicStrong + coefficients: + Blunt: 0.5 + Slash: 0.5 + Piercing: 0.5 + Shock: 1.2 + Structural: 0.25 + flatReductions: + Blunt: 10 + Slash: 10 + Piercing: 10 + Heat: 10 + Structural: 10 + +- type: damageModifierSet + id: StructuralMetallic + coefficients: + Shock: 1.2 + Heat: 1.2 + Structural: 0.5 + flatReductions: + Blunt: 10 + Slash: 10 + Piercing: 10 + Heat: 10 + Structural: 10 + +# Like metallic, but without flat reduction so it can be damaged with fists. +- type: damageModifierSet + id: FlimsyMetallic + coefficients: + Blunt: 0.7 + Slash: 0.5 + Piercing: 0.7 + Shock: 1.2 + +# Like metallic but very strong to resist most all basic tools and weapons. +- type: damageModifierSet + id: StrongMetallic + coefficients: + Blunt: 0.7 + Slash: 0.5 + Piercing: 0.7 + Shock: 1.2 + flatReductions: + Blunt: 10 + Slash: 10 + Piercing: 10 + Shock: 10 + Heat: 10 + +- type: damageModifierSet + id: PerforatedMetallic + coefficients: + Blunt: 2 + Piercing: 0.2 + Shock: 0.6 + flatReductions: + Piercing: 10 + +## Glass + +- type: damageModifierSet + id: Glass + coefficients: + Blunt: 1.2 + Slash: 0.5 + Piercing: 1.0 + Heat: 0.8 + Shock: 0 #glass is an insulator! + flatReductions: + Slash: 5 + Piercing: 5 + Heat: 5 + Structural: 5 + +# Glass without the flat reductions +- type: damageModifierSet + id: FlimsyGlass + coefficients: + Blunt: 1.2 + Slash: 0.5 + Piercing: 1.0 + Heat: 0.8 + Shock: 0 #glass is an insulator! + +- type: damageModifierSet + id: RGlass + coefficients: + Blunt: 0.5 + Slash: 0.3 + Piercing: 0.6 + Heat: 0.5 + Shock: 0 + Structural: 0.5 + flatReductions: + Blunt: 5 + Slash: 5 + Piercing: 5 + Heat: 5 + Structural: 10 + +## Organic + +- type: damageModifierSet + id: Wood + coefficients: + Blunt: 0.5 + Slash: 2.0 + Piercing: 1.0 + Heat: 2.0 + Structural: 0.5 + flatReductions: + Blunt: 5 + +- type: damageModifierSet + id: Card + coefficients: + Slash: 2.0 + Piercing: 0.1 # Holes easily poked through, but do little to structural integrity + Heat: 3.0 + +- type: damageModifierSet + id: Web # Very flammable, can be easily hacked and slashed, but shooting or hitting it is another story. + coefficients: + Blunt: 0.7 + Slash: 1.4 + Piercing: 0.7 + Heat: 2.0 + +## Other + +- type: damageModifierSet + id: Rock + coefficients: + Structural: 4 + Blunt: 0.5 + Slash: 0.25 + Piercing: 0.75 + Heat: 0.9 + flatReductions: + Blunt: 5 + +# for fragile electronics like consoles or shuttle engines. +- type: damageModifierSet + id: Electronic + coefficients: + Blunt: 0.7 + Slash: 0.5 + Piercing: 0.7 + Shock: 2 + Heat: 3 + Structural: 0.5 + +- type: damageModifierSet + id: Inflatable + coefficients: + Blunt: 0.5 + Piercing: 2.0 + Heat: 0.5 + Shock: 0 + Structural: 0.25 + flatReductions: + Blunt: 5 diff --git a/Resources/Prototypes/Damage/ModifierSets/mob.yml b/Resources/Prototypes/Damage/ModifierSets/mob.yml new file mode 100644 index 0000000000000..7f4ebd97a4a00 --- /dev/null +++ b/Resources/Prototypes/Damage/ModifierSets/mob.yml @@ -0,0 +1,76 @@ +# Modifier sets for non-species mobs + +- type: damageModifierSet + id: SlimePet # Very survivable slimes + coefficients: + Blunt: 0.5 + Slash: 0.8 + Piercing: 0.8 + Cold: 1.0 + Poison: 0.2 + Cellular: 0.0 + Radiation: 0.2 + Caustic: 0.0 + +- type: damageModifierSet + id: Cockroach + coefficients: + Blunt: 1.0 + Slash: 1.0 + Piercing: 1.0 + Cold: 1.0 + Poison: 1.0 + Cellular: 1.0 + Radiation: 0.0 # hehe funny cockroach immune to rads + Caustic: 1.0 + +# Massive heat damage, presumably to kill with lasers +- type: damageModifierSet + id: LivingLight + coefficients: + Blunt: 0.8 + Slash: 0.8 + Piercing: 0.7 + Shock: 0.0 + Cold: 0.0 + Poison: 0.0 + Radiation: 0.0 + Cellular: 0.0 + Heat: 2.5 + Caustic: 0.0 + +- type: damageModifierSet + id: Zombie #Blunt resistant and immune to biological threats, but can be hacked apart and burned + coefficients: + Blunt: 0.6 + Piercing: 0.8 + Cold: 0.3 + Heat: 1.25 + Poison: 0.0 + Radiation: 0.0 + +- type: damageModifierSet + id: Infernal + coefficients: + Blunt: 0.8 + Slash: 0.8 + Piercing: 0.8 + Cold: 0.8 + Heat: 0.2 + Holy: 1.5 + flatReductions: + Heat: 3 + +- type: damageModifierSet + id: HellSpawn + coefficients: + Heat: 0.0 + Radiation: 0.0 + Shock: 0.8 + Bloodloss: 0.4 + Holy: 1 + +- type: damageModifierSet + id: ManifestedSpirit + coefficients: + Holy: 2 diff --git a/Resources/Prototypes/Damage/ModifierSets/special.yml b/Resources/Prototypes/Damage/ModifierSets/special.yml new file mode 100644 index 0000000000000..6f9c6e754eddf --- /dev/null +++ b/Resources/Prototypes/Damage/ModifierSets/special.yml @@ -0,0 +1,22 @@ +# These modifiers don't appear as a natural set used by any entity, but for some other novel purpose. + +# Represents which damage types should be modified +# in relation to how they cause bleed rate. +# Make sure to add any new damage type here. +- type: damageModifierSet + id: BloodlossHuman + coefficients: + Asphyxiation: 0.0 + Bloodloss: 0.0 # no double dipping + Blunt: 0.08 + Caustic: 0.0 + Cellular: 0.0 + Cold: 0.0 + Heat: -0.5 # heat damage cauterizes wounds, but will still hurt obviously. + Holy: 0 + Piercing: 0.2 + Poison: 0.0 + Radiation: 0.0 + Shock: 0.0 + Slash: 0.25 + Structural: 0.0 diff --git a/Resources/Prototypes/Damage/ModifierSets/species.yml b/Resources/Prototypes/Damage/ModifierSets/species.yml new file mode 100644 index 0000000000000..a10eed93d93df --- /dev/null +++ b/Resources/Prototypes/Damage/ModifierSets/species.yml @@ -0,0 +1,73 @@ +# These are modifier sets used for humanoids + +## Standard round-start + +- type: damageModifierSet + id: Slime + coefficients: + Blunt: 0.6 + Slash: 1.2 + Piercing: 1.2 + Cold: 1.5 + Poison: 0.8 + +- type: damageModifierSet + id: Scale # Skin tougher, bones weaker, strong stomachs, cold-blooded (kindof) + coefficients: + Cold: 1.3 + +- type: damageModifierSet + id: Diona + coefficients: + Blunt: 0.7 + Slash: 0.8 + Heat: 1.5 + Shock: 1.2 + +- type: damageModifierSet + id: Moth # Slightly worse at everything but cold + coefficients: + Cold: 0.7 + Heat: 1.2 + +- type: damageModifierSet + id: Vox + coefficients: # To be decided + Poison: 1 + +# Vulps get more heat damage because fur +- type: damageModifierSet + id: Vulpkanin + coefficients: + Heat: 1.15 + Cold: 0.85 + +## Special + +# immune to everything except physical and heat damage; vulnerable to holy damage because they're undead, but not as vulnerable as a ghost or demon would be +- type: damageModifierSet + id: Skeleton + coefficients: + Blunt: 1.1 + Slash: 0.8 + Piercing: 0.6 + Cold: 0 + Poison: 0 + Radiation: 0 + Asphyxiation: 0 + Bloodloss: 0 + Cellular: 0 + Holy: 0.5 + flatReductions: + Blunt: 5 + +# hurt a lot by blunt, immune to a good amount of other stuff because they're a cookie +- type: damageModifierSet + id: Gingerbread + coefficients: + Blunt: 1.5 + Cold: 0.0 + Radiation: 0.5 + Asphyxiation: 0.0 + Bloodloss: 0.0 + Cellular: 0.0 diff --git a/Resources/Prototypes/Damage/ModifierSets/status.yml b/Resources/Prototypes/Damage/ModifierSets/status.yml new file mode 100644 index 0000000000000..5fa25a8c54cdf --- /dev/null +++ b/Resources/Prototypes/Damage/ModifierSets/status.yml @@ -0,0 +1,6 @@ +# Modifiers applied by status effects + +- type: damageModifierSet + id: PotassiumIodide + coefficients: + Radiation: 0.1 diff --git a/Resources/Prototypes/Damage/modifier_sets.yml b/Resources/Prototypes/Damage/modifier_sets.yml deleted file mode 100644 index 1a19bfdcc207f..0000000000000 --- a/Resources/Prototypes/Damage/modifier_sets.yml +++ /dev/null @@ -1,341 +0,0 @@ -- type: damageModifierSet - id: Metallic - coefficients: - Blunt: 0.7 - Slash: 0.5 - Piercing: 0.7 - Shock: 1.2 - Structural: 0.5 - flatReductions: - Blunt: 5 - Heat: 5 - -- type: damageModifierSet - id: StructuralMetallicStrong - coefficients: - Blunt: 0.5 - Slash: 0.5 - Piercing: 0.5 - Shock: 1.2 - Structural: 0.25 - flatReductions: - Blunt: 10 - Slash: 10 - Piercing: 10 - Heat: 10 - Structural: 10 - -- type: damageModifierSet - id: StructuralMetallic - coefficients: - Shock: 1.2 - Heat: 1.2 - Structural: 0.5 - flatReductions: - Blunt: 10 - Slash: 10 - Piercing: 10 - Heat: 10 - Structural: 10 - -- type: damageModifierSet - id: Rock - coefficients: - Structural: 4 - Blunt: 0.5 - Slash: 0.25 - Piercing: 0.75 - Heat: 0.9 - flatReductions: - Blunt: 5 - -- type: damageModifierSet - id: PerforatedMetallic - coefficients: - Blunt: 2 - Piercing: 0.2 - Shock: 0.6 - flatReductions: - Piercing: 10 - -# for fragile electronics like consoles or shuttle engines. -- type: damageModifierSet - id: Electronic - coefficients: - Blunt: 0.7 - Slash: 0.5 - Piercing: 0.7 - Shock: 2 - Heat: 3 - Structural: 0.5 - -# Like metallic, but without flat reduction so it can be damaged with fists. -- type: damageModifierSet - id: FlimsyMetallic - coefficients: - Blunt: 0.7 - Slash: 0.5 - Piercing: 0.7 - Shock: 1.2 - -# Like metallic but very strong to resist most all basic tools and weapons. -- type: damageModifierSet - id: StrongMetallic - coefficients: - Blunt: 0.7 - Slash: 0.5 - Piercing: 0.7 - Shock: 1.2 - flatReductions: - Blunt: 10 - Slash: 10 - Piercing: 10 - Shock: 10 - Heat: 10 - -- type: damageModifierSet - id: Inflatable - coefficients: - Blunt: 0.5 - Piercing: 2.0 - Heat: 0.5 - Shock: 0 - Structural: 0.25 - flatReductions: - Blunt: 5 - -- type: damageModifierSet - id: Glass - coefficients: - Blunt: 1.2 - Slash: 0.5 - Piercing: 1.0 - Heat: 0.8 - Shock: 0 #glass is an insulator! - flatReductions: - Slash: 5 - Piercing: 5 - Heat: 5 - Structural: 5 - -# Glass without the flat reductions -- type: damageModifierSet - id: FlimsyGlass - coefficients: - Blunt: 1.2 - Slash: 0.5 - Piercing: 1.0 - Heat: 0.8 - Shock: 0 #glass is an insulator! - -- type: damageModifierSet - id: RGlass - coefficients: - Blunt: 0.5 - Slash: 0.3 - Piercing: 0.6 - Heat: 0.5 - Shock: 0 - Structural: 0.5 - flatReductions: - Blunt: 5 - Slash: 5 - Piercing: 5 - Heat: 5 - Structural: 10 - -- type: damageModifierSet - id: Wood - coefficients: - Blunt: 0.5 - Slash: 2.0 - Piercing: 1.0 - Heat: 2.0 - Structural: 0.5 - flatReductions: - Blunt: 5 - -- type: damageModifierSet - id: Card - coefficients: - Slash: 2.0 - Piercing: 0.1 # Holes easily poked through, but do little to structural integrity - Heat: 3.0 - -- type: damageModifierSet - id: Web # Very flammable, can be easily hacked and slashed, but shooting or hitting it is another story. - coefficients: - Blunt: 0.7 - Slash: 1.4 - Piercing: 0.7 - Heat: 2.0 - -- type: damageModifierSet - id: Slime - coefficients: - Blunt: 0.6 - Slash: 1.2 - Piercing: 1.2 - Cold: 1.5 - Poison: 0.8 - -- type: damageModifierSet - id: Infernal - coefficients: - Blunt: 0.8 - Slash: 0.8 - Piercing: 0.8 - Cold: 0.8 - Heat: 0.2 - Holy: 1.5 - flatReductions: - Heat: 3 - -- type: damageModifierSet - id: Scale # Skin tougher, bones weaker, strong stomachs, cold-blooded (kindof) - coefficients: - Cold: 1.3 - -- type: damageModifierSet - id: Diona - coefficients: - Blunt: 0.7 - Slash: 0.8 - Heat: 1.5 - Shock: 1.2 - -- type: damageModifierSet - id: Moth # Slightly worse at everything but cold - coefficients: - Cold: 0.7 - Heat: 1.2 - -- type: damageModifierSet - id: Vox - coefficients: # To be decided - Poison: 1 - -- type: damageModifierSet - id: Zombie #Blunt resistant and immune to biological threats, but can be hacked apart and burned - coefficients: - Blunt: 0.6 - Piercing: 0.8 - Cold: 0.3 - Heat: 1.25 - Poison: 0.0 - Radiation: 0.0 - -# immune to everything except physical and heat damage; vulnerable to holy damage because they're undead, but not as vulnerable as a ghost or demon would be -- type: damageModifierSet - id: Skeleton - coefficients: - Blunt: 1.1 - Slash: 0.8 - Piercing: 0.6 - Cold: 0.0 - Poison: 0.0 - Radiation: 0.0 - Asphyxiation: 0.0 - Bloodloss: 0.0 - Cellular: 0.0 - Holy: 0.5 - flatReductions: - Blunt: 5 - -# hurt a lot by blunt, immune to a good amount of other stuff because they're a cookie -- type: damageModifierSet - id: Gingerbread - coefficients: - Blunt: 1.5 - Cold: 0.0 - Radiation: 0.5 - Asphyxiation: 0.0 - Bloodloss: 0.0 - Cellular: 0.0 - -# Represents which damage types should be modified -# in relation to how they cause bleed rate. -# Make sure to add any new damage type here. -- type: damageModifierSet - id: BloodlossHuman - coefficients: - Asphyxiation: 0.0 - Bloodloss: 0.0 # no double dipping - Blunt: 0.08 - Caustic: 0.0 - Cellular: 0.0 - Cold: 0.0 - Heat: -0.5 # heat damage cauterizes wounds, but will still hurt obviously. - Holy: 0 - Piercing: 0.2 - Poison: 0.0 - Radiation: 0.0 - Shock: 0.0 - Slash: 0.25 - Structural: 0.0 - -- type: damageModifierSet - id: SlimePet # Very survivable slimes - coefficients: - Blunt: 0.5 - Slash: 0.8 - Piercing: 0.8 - Cold: 1.0 - Poison: 0.2 - Cellular: 0.0 - Radiation: 0.2 - Caustic: 0.0 - -- type: damageModifierSet - id: HellSpawn - coefficients: - Heat: 0.0 - Radiation: 0.0 - Shock: 0.8 - Bloodloss: 0.4 - Holy: 1 - -- type: damageModifierSet - id: Cockroach - coefficients: - Blunt: 1.0 - Slash: 1.0 - Piercing: 1.0 - Cold: 1.0 - Poison: 1.0 - Cellular: 1.0 - Radiation: 0.0 # hehe funny cockroach immune to rads - Caustic: 1.0 - -# Massive heat damage, presumably to kill with lasers -- type: damageModifierSet - id: LivingLight - coefficients: - Blunt: 0.8 - Slash: 0.8 - Piercing: 0.7 - Shock: 0.0 - Cold: 0.0 - Poison: 0.0 - Radiation: 0.0 - Cellular: 0.0 - Heat: 2.5 - Caustic: 0.0 - -# protects against radiation -- type: damageModifierSet - id: PotassiumIodide - coefficients: - Radiation: 0.1 - -- type: damageModifierSet - id: ManifestedSpirit - coefficients: - Holy: 2 - -# Vulps get more heat damage because fur -- type: damageModifierSet - id: Vulpkanin - coefficients: - Heat: 1.15 - Cold: 0.85 From 1a2fef707734483ccb52ebb1fd9b7d0cb0b4a1cd Mon Sep 17 00:00:00 2001 From: iaada Date: Wed, 20 May 2026 20:58:17 -0500 Subject: [PATCH 02/13] structure health bases --- .../Damage/ModifierSets/material.yml | 172 ---------- .../Damage/ModifierSets/material_old.yml | 181 +++++++++++ .../Structures/Bases/structure_health.yml | 300 ++++++++++++++++++ 3 files changed, 481 insertions(+), 172 deletions(-) create mode 100644 Resources/Prototypes/Damage/ModifierSets/material_old.yml create mode 100644 Resources/Prototypes/Entities/Structures/Bases/structure_health.yml diff --git a/Resources/Prototypes/Damage/ModifierSets/material.yml b/Resources/Prototypes/Damage/ModifierSets/material.yml index 47ac9446cf274..916017a247689 100644 --- a/Resources/Prototypes/Damage/ModifierSets/material.yml +++ b/Resources/Prototypes/Damage/ModifierSets/material.yml @@ -2,180 +2,8 @@ ## Metallic -- type: damageModifierSet - id: Metallic - coefficients: - Blunt: 0.7 - Slash: 0.5 - Piercing: 0.7 - Shock: 1.2 - Structural: 0.5 - flatReductions: - Blunt: 5 - Heat: 5 - -- type: damageModifierSet - id: StructuralMetallicStrong - coefficients: - Blunt: 0.5 - Slash: 0.5 - Piercing: 0.5 - Shock: 1.2 - Structural: 0.25 - flatReductions: - Blunt: 10 - Slash: 10 - Piercing: 10 - Heat: 10 - Structural: 10 - -- type: damageModifierSet - id: StructuralMetallic - coefficients: - Shock: 1.2 - Heat: 1.2 - Structural: 0.5 - flatReductions: - Blunt: 10 - Slash: 10 - Piercing: 10 - Heat: 10 - Structural: 10 - -# Like metallic, but without flat reduction so it can be damaged with fists. -- type: damageModifierSet - id: FlimsyMetallic - coefficients: - Blunt: 0.7 - Slash: 0.5 - Piercing: 0.7 - Shock: 1.2 - -# Like metallic but very strong to resist most all basic tools and weapons. -- type: damageModifierSet - id: StrongMetallic - coefficients: - Blunt: 0.7 - Slash: 0.5 - Piercing: 0.7 - Shock: 1.2 - flatReductions: - Blunt: 10 - Slash: 10 - Piercing: 10 - Shock: 10 - Heat: 10 - -- type: damageModifierSet - id: PerforatedMetallic - coefficients: - Blunt: 2 - Piercing: 0.2 - Shock: 0.6 - flatReductions: - Piercing: 10 - ## Glass -- type: damageModifierSet - id: Glass - coefficients: - Blunt: 1.2 - Slash: 0.5 - Piercing: 1.0 - Heat: 0.8 - Shock: 0 #glass is an insulator! - flatReductions: - Slash: 5 - Piercing: 5 - Heat: 5 - Structural: 5 - -# Glass without the flat reductions -- type: damageModifierSet - id: FlimsyGlass - coefficients: - Blunt: 1.2 - Slash: 0.5 - Piercing: 1.0 - Heat: 0.8 - Shock: 0 #glass is an insulator! - -- type: damageModifierSet - id: RGlass - coefficients: - Blunt: 0.5 - Slash: 0.3 - Piercing: 0.6 - Heat: 0.5 - Shock: 0 - Structural: 0.5 - flatReductions: - Blunt: 5 - Slash: 5 - Piercing: 5 - Heat: 5 - Structural: 10 - ## Organic -- type: damageModifierSet - id: Wood - coefficients: - Blunt: 0.5 - Slash: 2.0 - Piercing: 1.0 - Heat: 2.0 - Structural: 0.5 - flatReductions: - Blunt: 5 - -- type: damageModifierSet - id: Card - coefficients: - Slash: 2.0 - Piercing: 0.1 # Holes easily poked through, but do little to structural integrity - Heat: 3.0 - -- type: damageModifierSet - id: Web # Very flammable, can be easily hacked and slashed, but shooting or hitting it is another story. - coefficients: - Blunt: 0.7 - Slash: 1.4 - Piercing: 0.7 - Heat: 2.0 - ## Other - -- type: damageModifierSet - id: Rock - coefficients: - Structural: 4 - Blunt: 0.5 - Slash: 0.25 - Piercing: 0.75 - Heat: 0.9 - flatReductions: - Blunt: 5 - -# for fragile electronics like consoles or shuttle engines. -- type: damageModifierSet - id: Electronic - coefficients: - Blunt: 0.7 - Slash: 0.5 - Piercing: 0.7 - Shock: 2 - Heat: 3 - Structural: 0.5 - -- type: damageModifierSet - id: Inflatable - coefficients: - Blunt: 0.5 - Piercing: 2.0 - Heat: 0.5 - Shock: 0 - Structural: 0.25 - flatReductions: - Blunt: 5 diff --git a/Resources/Prototypes/Damage/ModifierSets/material_old.yml b/Resources/Prototypes/Damage/ModifierSets/material_old.yml new file mode 100644 index 0000000000000..47ac9446cf274 --- /dev/null +++ b/Resources/Prototypes/Damage/ModifierSets/material_old.yml @@ -0,0 +1,181 @@ +# Modifier sets for entities that can be described as fully (or mostly) composed of some specific material + +## Metallic + +- type: damageModifierSet + id: Metallic + coefficients: + Blunt: 0.7 + Slash: 0.5 + Piercing: 0.7 + Shock: 1.2 + Structural: 0.5 + flatReductions: + Blunt: 5 + Heat: 5 + +- type: damageModifierSet + id: StructuralMetallicStrong + coefficients: + Blunt: 0.5 + Slash: 0.5 + Piercing: 0.5 + Shock: 1.2 + Structural: 0.25 + flatReductions: + Blunt: 10 + Slash: 10 + Piercing: 10 + Heat: 10 + Structural: 10 + +- type: damageModifierSet + id: StructuralMetallic + coefficients: + Shock: 1.2 + Heat: 1.2 + Structural: 0.5 + flatReductions: + Blunt: 10 + Slash: 10 + Piercing: 10 + Heat: 10 + Structural: 10 + +# Like metallic, but without flat reduction so it can be damaged with fists. +- type: damageModifierSet + id: FlimsyMetallic + coefficients: + Blunt: 0.7 + Slash: 0.5 + Piercing: 0.7 + Shock: 1.2 + +# Like metallic but very strong to resist most all basic tools and weapons. +- type: damageModifierSet + id: StrongMetallic + coefficients: + Blunt: 0.7 + Slash: 0.5 + Piercing: 0.7 + Shock: 1.2 + flatReductions: + Blunt: 10 + Slash: 10 + Piercing: 10 + Shock: 10 + Heat: 10 + +- type: damageModifierSet + id: PerforatedMetallic + coefficients: + Blunt: 2 + Piercing: 0.2 + Shock: 0.6 + flatReductions: + Piercing: 10 + +## Glass + +- type: damageModifierSet + id: Glass + coefficients: + Blunt: 1.2 + Slash: 0.5 + Piercing: 1.0 + Heat: 0.8 + Shock: 0 #glass is an insulator! + flatReductions: + Slash: 5 + Piercing: 5 + Heat: 5 + Structural: 5 + +# Glass without the flat reductions +- type: damageModifierSet + id: FlimsyGlass + coefficients: + Blunt: 1.2 + Slash: 0.5 + Piercing: 1.0 + Heat: 0.8 + Shock: 0 #glass is an insulator! + +- type: damageModifierSet + id: RGlass + coefficients: + Blunt: 0.5 + Slash: 0.3 + Piercing: 0.6 + Heat: 0.5 + Shock: 0 + Structural: 0.5 + flatReductions: + Blunt: 5 + Slash: 5 + Piercing: 5 + Heat: 5 + Structural: 10 + +## Organic + +- type: damageModifierSet + id: Wood + coefficients: + Blunt: 0.5 + Slash: 2.0 + Piercing: 1.0 + Heat: 2.0 + Structural: 0.5 + flatReductions: + Blunt: 5 + +- type: damageModifierSet + id: Card + coefficients: + Slash: 2.0 + Piercing: 0.1 # Holes easily poked through, but do little to structural integrity + Heat: 3.0 + +- type: damageModifierSet + id: Web # Very flammable, can be easily hacked and slashed, but shooting or hitting it is another story. + coefficients: + Blunt: 0.7 + Slash: 1.4 + Piercing: 0.7 + Heat: 2.0 + +## Other + +- type: damageModifierSet + id: Rock + coefficients: + Structural: 4 + Blunt: 0.5 + Slash: 0.25 + Piercing: 0.75 + Heat: 0.9 + flatReductions: + Blunt: 5 + +# for fragile electronics like consoles or shuttle engines. +- type: damageModifierSet + id: Electronic + coefficients: + Blunt: 0.7 + Slash: 0.5 + Piercing: 0.7 + Shock: 2 + Heat: 3 + Structural: 0.5 + +- type: damageModifierSet + id: Inflatable + coefficients: + Blunt: 0.5 + Piercing: 2.0 + Heat: 0.5 + Shock: 0 + Structural: 0.25 + flatReductions: + Blunt: 5 diff --git a/Resources/Prototypes/Entities/Structures/Bases/structure_health.yml b/Resources/Prototypes/Entities/Structures/Bases/structure_health.yml new file mode 100644 index 0000000000000..36b21422725fa --- /dev/null +++ b/Resources/Prototypes/Entities/Structures/Bases/structure_health.yml @@ -0,0 +1,300 @@ +# This file contains the standardized health values for structures. +# Generally, each type of structure has 3 values for weak, mundane, and strong. + +- type: entity + abstract: true + id: BaseStructureHealth + components: + - type: Destructible + - type: Damageable + - type: Injurable + damageContainer: StructuralInorganic + +#region Airlock / Door + +- type: entity + abstract: true + parent: BaseStructureHealth + id: StructureHealthDoorFlimsy + components: + - type: Destructible + thresholds: + - trigger: + !type:DamageTrigger + damage: 75 + behaviors: + - !type:PlaySoundBehavior + - !type:DoActsBehavior + acts: [ "Destruction" ] + +- type: entity + abstract: true + parent: BaseStructureHealth + id: StructureHealthDoorWeak + components: + - type: Destructible + thresholds: + - trigger: + !type:DamageTrigger + damage: 125 + behaviors: + - !type:PlaySoundBehavior + - !type:DoActsBehavior + acts: [ "Destruction" ] + +- type: entity + abstract: true + parent: BaseStructureHealth + id: StructureHealthDoor + components: + - type: Destructible + thresholds: + - trigger: + !type:DamageTrigger + damage: 250 + behaviors: + - !type:PlaySoundBehavior + - !type:DoActsBehavior + acts: [ "Destruction" ] + +- type: entity + abstract: true + parent: BaseStructureHealth + id: StructureHealthDoorStrong + components: + - type: Destructible + thresholds: + - trigger: + !type:DamageTrigger + damage: 350 + behaviors: + - !type:PlaySoundBehavior + - !type:DoActsBehavior + acts: [ "Destruction" ] + +#endregion +#region Closet / Container / Locker + +- type: entity + abstract: true + parent: BaseStructureHealth + id: StructureHealthCloset + components: + - type: Destructible + thresholds: + - trigger: + !type:DamageTrigger + damage: 100 + behaviors: + - !type:PlaySoundBehavior + - !type:DoActsBehavior + acts: [ "Destruction" ] + +- type: entity + abstract: true + parent: BaseStructureHealth + id: StructureHealthClosetStrong + components: + - type: Destructible + thresholds: + - trigger: + !type:DamageTrigger + damage: 175 + behaviors: + - !type:PlaySoundBehavior + - !type:DoActsBehavior + acts: [ "Destruction" ] + +#endregion +#region Decoration / Furniture + +- type: entity + abstract: true + parent: BaseStructureHealth + id: StructureHealthFurnitureWeak + components: + - type: Destructible + thresholds: + - trigger: + !type:DamageTrigger + damage: 30 + behaviors: + - !type:PlaySoundBehavior + - !type:DoActsBehavior + acts: [ "Destruction" ] + +- type: entity + abstract: true + parent: BaseStructureHealth + id: StructureHealthFurniture + components: + - type: Destructible + thresholds: + - trigger: + !type:DamageTrigger + damage: 70 + behaviors: + - !type:PlaySoundBehavior + - !type:DoActsBehavior + acts: [ "Destruction" ] + +#endregion +#region Machine + +- type: entity + abstract: true + parent: BaseStructureHealth + id: StructureHealthMachineWeak + components: + - type: Destructible + thresholds: + - trigger: + !type:DamageTrigger + damage: 100 + behaviors: + - !type:PlaySoundBehavior + - !type:DoActsBehavior + acts: [ "Destruction" ] + +- type: entity + abstract: true + parent: BaseStructureHealth + id: StructureHealthMachine + components: + - type: Destructible + thresholds: + - trigger: + !type:DamageTrigger + damage: 175 + behaviors: + - !type:PlaySoundBehavior + - !type:DoActsBehavior + acts: [ "Destruction" ] + +- type: entity + abstract: true + parent: BaseStructureHealth + id: StructureHealthMachineStrong + components: + - type: Destructible + thresholds: + - trigger: + !type:DamageTrigger + damage: 250 + behaviors: + - !type:PlaySoundBehavior + - !type:DoActsBehavior + acts: [ "Destruction" ] + +#endregion +#region Wall + +- type: entity + abstract: true + parent: BaseStructureHealth + id: StructureHealthWallFlimsy + components: + - type: Destructible + thresholds: + - trigger: + !type:DamageTrigger + damage: 100 + behaviors: + - !type:PlaySoundBehavior + - !type:DoActsBehavior + acts: [ "Destruction" ] + +- type: entity + abstract: true + parent: BaseStructureHealth + id: StructureHealthWallWeak + components: + - type: Destructible + thresholds: + - trigger: + !type:DamageTrigger + damage: 200 + behaviors: + - !type:PlaySoundBehavior + - !type:DoActsBehavior + acts: [ "Destruction" ] + +- type: entity + abstract: true + parent: BaseStructureHealth + id: StructureHealthWall + components: + - type: Destructible + thresholds: + - trigger: + !type:DamageTrigger + damage: 400 + behaviors: + - !type:PlaySoundBehavior + - !type:DoActsBehavior + acts: [ "Destruction" ] + +- type: entity + abstract: true + parent: BaseStructureHealth + id: StructureHealthWallStrong + components: + - type: Destructible + thresholds: + - trigger: + !type:DamageTrigger + damage: 600 + behaviors: + - !type:PlaySoundBehavior + - !type:DoActsBehavior + acts: [ "Destruction" ] + +#endregion +#region Window + +- type: entity + abstract: true + parent: BaseStructureHealth + id: StructureHealthWindowWeak + components: + - type: Destructible + thresholds: + - trigger: + !type:DamageTrigger + damage: 60 + behaviors: + - !type:PlaySoundBehavior + - !type:DoActsBehavior + acts: [ "Destruction" ] + +- type: entity + abstract: true + parent: BaseStructureHealth + id: StructureHealthWindow + components: + - type: Destructible + thresholds: + - trigger: + !type:DamageTrigger + damage: 90 + behaviors: + - !type:PlaySoundBehavior + - !type:DoActsBehavior + acts: [ "Destruction" ] + +- type: entity + abstract: true + parent: BaseStructureHealth + id: StructureHealthWindowStrong + components: + - type: Destructible + thresholds: + - trigger: + !type:DamageTrigger + damage: 150 + behaviors: + - !type:PlaySoundBehavior + - !type:DoActsBehavior + acts: [ "Destruction" ] + +#endregion From c5532c1fc5279fc7f247cabd1b260a941d0b62a6 Mon Sep 17 00:00:00 2001 From: iaada Date: Wed, 27 May 2026 16:53:29 -0500 Subject: [PATCH 03/13] StructuralBiological --- Resources/Prototypes/Damage/containers.yml | 11 ++++++++ .../Structures/Bases/structure_health.yml | 27 +++++++++++++++++++ 2 files changed, 38 insertions(+) diff --git a/Resources/Prototypes/Damage/containers.yml b/Resources/Prototypes/Damage/containers.yml index 9b90248e3d923..67bf57a8c7ac6 100644 --- a/Resources/Prototypes/Damage/containers.yml +++ b/Resources/Prototypes/Damage/containers.yml @@ -7,6 +7,17 @@ - Airloss - Genetic +- type: damageContainer + id: StructuralBiological + supportedGroups: + - Brute + - Burn + - Toxin + - Airloss + - Genetic + supportedTypes: + - Structural + - type: damageContainer id: Inorganic supportedGroups: diff --git a/Resources/Prototypes/Entities/Structures/Bases/structure_health.yml b/Resources/Prototypes/Entities/Structures/Bases/structure_health.yml index 36b21422725fa..4ce2e00c48043 100644 --- a/Resources/Prototypes/Entities/Structures/Bases/structure_health.yml +++ b/Resources/Prototypes/Entities/Structures/Bases/structure_health.yml @@ -153,8 +153,17 @@ damage: 100 behaviors: - !type:PlaySoundBehavior + - !type:ChangeConstructionNodeBehavior + node: machineFrame - !type:DoActsBehavior acts: [ "Destruction" ] + - trigger: + !type:DamageTrigger + damage: 50 + behaviors: + - !type:PlaySoundBehavior + - !type:DoActsBehavior + acts: [ "Breakage" ] - type: entity abstract: true @@ -168,8 +177,17 @@ damage: 175 behaviors: - !type:PlaySoundBehavior + - !type:ChangeConstructionNodeBehavior + node: machineFrame - !type:DoActsBehavior acts: [ "Destruction" ] + - trigger: + !type:DamageTrigger + damage: 75 + behaviors: + - !type:PlaySoundBehavior + - !type:DoActsBehavior + acts: [ "Breakage" ] - type: entity abstract: true @@ -183,8 +201,17 @@ damage: 250 behaviors: - !type:PlaySoundBehavior + - !type:ChangeConstructionNodeBehavior + node: machineFrame - !type:DoActsBehavior acts: [ "Destruction" ] + - trigger: + !type:DamageTrigger + damage: 150 + behaviors: + - !type:PlaySoundBehavior + - !type:DoActsBehavior + acts: [ "Breakage" ] #endregion #region Wall From c4f6635598ef0f7617360613f69158078c309f04 Mon Sep 17 00:00:00 2001 From: iaada Date: Wed, 27 May 2026 16:55:42 -0500 Subject: [PATCH 04/13] remove box container --- Resources/Prototypes/Damage/containers.yml | 9 --------- .../Entities/Structures/Storage/Closets/big_boxes.yml | 2 +- 2 files changed, 1 insertion(+), 10 deletions(-) diff --git a/Resources/Prototypes/Damage/containers.yml b/Resources/Prototypes/Damage/containers.yml index 67bf57a8c7ac6..b8f66f80c77a6 100644 --- a/Resources/Prototypes/Damage/containers.yml +++ b/Resources/Prototypes/Damage/containers.yml @@ -50,15 +50,6 @@ supportedTypes: - Heat -- type: damageContainer - id: Box - supportedGroups: - - Brute - - Burn - - Toxin - supportedTypes: - - Shock - - type: damageContainer id: ShadowHaze supportedTypes: diff --git a/Resources/Prototypes/Entities/Structures/Storage/Closets/big_boxes.yml b/Resources/Prototypes/Entities/Structures/Storage/Closets/big_boxes.yml index 31e3e211d2dc3..7c4827f6e2222 100644 --- a/Resources/Prototypes/Entities/Structures/Storage/Closets/big_boxes.yml +++ b/Resources/Prototypes/Entities/Structures/Storage/Closets/big_boxes.yml @@ -35,7 +35,7 @@ entity_storage: !type:Container - type: Damageable - type: Injurable - damageContainer: Box + damageContainer: Inorganic - type: Sprite noRot: true sprite: Structures/Storage/closet.rsi From 8f6badff91e9c7d68552356524d3148d9ee3321f Mon Sep 17 00:00:00 2001 From: iaada Date: Wed, 27 May 2026 19:20:14 -0500 Subject: [PATCH 05/13] New health bases --- .../Structures/Bases/structure_health.yml | 74 ++++++++++++++++++- 1 file changed, 72 insertions(+), 2 deletions(-) diff --git a/Resources/Prototypes/Entities/Structures/Bases/structure_health.yml b/Resources/Prototypes/Entities/Structures/Bases/structure_health.yml index 4ce2e00c48043..0c0f69cec820f 100644 --- a/Resources/Prototypes/Entities/Structures/Bases/structure_health.yml +++ b/Resources/Prototypes/Entities/Structures/Bases/structure_health.yml @@ -78,7 +78,37 @@ - type: entity abstract: true parent: BaseStructureHealth - id: StructureHealthCloset + id: StructureHealthContainerFlimsy + components: + - type: Destructible + thresholds: + - trigger: + !type:DamageTrigger + damage: 25 + behaviors: + - !type:PlaySoundBehavior + - !type:DoActsBehavior + acts: [ "Destruction" ] + +- type: entity + abstract: true + parent: BaseStructureHealth + id: StructureHealthContainerWeak + components: + - type: Destructible + thresholds: + - trigger: + !type:DamageTrigger + damage: 50 + behaviors: + - !type:PlaySoundBehavior + - !type:DoActsBehavior + acts: [ "Destruction" ] + +- type: entity + abstract: true + parent: BaseStructureHealth + id: StructureHealthContainer components: - type: Destructible thresholds: @@ -93,7 +123,7 @@ - type: entity abstract: true parent: BaseStructureHealth - id: StructureHealthClosetStrong + id: StructureHealthContainer components: - type: Destructible thresholds: @@ -141,6 +171,22 @@ #endregion #region Machine +# Not build from a proper frame. Light fixtures and other small electronics. +- type: entity + abstract: true + parent: BaseStructureHealth + id: StructureHealthMachineFlimsy + components: + - type: Destructible + thresholds: + - trigger: + !type:DamageTrigger + damage: 40 + behaviors: + - !type:PlaySoundBehavior + - !type:DoActsBehavior + acts: [ "Destruction" ] + - type: entity abstract: true parent: BaseStructureHealth @@ -213,6 +259,30 @@ - !type:DoActsBehavior acts: [ "Breakage" ] +- type: entity + abstract: true + parent: BaseStructureHealth + id: StructureHealthMachineMassive + components: + - type: Destructible + thresholds: + - trigger: + !type:DamageTrigger + damage: 500 + behaviors: + - !type:PlaySoundBehavior + - !type:ChangeConstructionNodeBehavior + node: machineFrame + - !type:DoActsBehavior + acts: [ "Destruction" ] + - trigger: + !type:DamageTrigger + damage: 350 + behaviors: + - !type:PlaySoundBehavior + - !type:DoActsBehavior + acts: [ "Breakage" ] + #endregion #region Wall From f4038306b4fdb0104e6a5188e81b86257712a668 Mon Sep 17 00:00:00 2001 From: iaada Date: Wed, 3 Jun 2026 17:23:56 -0500 Subject: [PATCH 06/13] more non-changes --- .../Damage/ModifierSets/material.yml | 33 ++++++++++++++++--- Resources/Prototypes/Damage/containers.yml | 5 +++ .../Structures/Bases/structure_health.yml | 17 +++++----- .../Construction/Graphs/utilities/cameras.yml | 2 +- .../Crafting/Graphs/storage/cratesecure.yml | 2 +- 5 files changed, 44 insertions(+), 15 deletions(-) diff --git a/Resources/Prototypes/Damage/ModifierSets/material.yml b/Resources/Prototypes/Damage/ModifierSets/material.yml index 916017a247689..0b42a5ed8e923 100644 --- a/Resources/Prototypes/Damage/ModifierSets/material.yml +++ b/Resources/Prototypes/Damage/ModifierSets/material.yml @@ -1,9 +1,34 @@ # Modifier sets for entities that can be described as fully (or mostly) composed of some specific material -## Metallic +#region Metallic -## Glass +Plasteel +Steel +CopperAlloy +PreciousMetal -## Organic +#endregion +#region Glass -## Other +Glass +ReinforcedGlass + +#endregion +#region Organic + +Card +Wood +Thread +Durathread +Meat + +#endregion +#region Other + +Plastic +Rock # Porcelain too +Bananium +Diamond + + +#endregion diff --git a/Resources/Prototypes/Damage/containers.yml b/Resources/Prototypes/Damage/containers.yml index b8f66f80c77a6..6e5217bef43b0 100644 --- a/Resources/Prototypes/Damage/containers.yml +++ b/Resources/Prototypes/Damage/containers.yml @@ -1,3 +1,4 @@ +# Living things, like animals or animal parts - type: damageContainer id: Biological supportedGroups: @@ -7,6 +8,7 @@ - Airloss - Genetic +# "Living" things that are predominantly static, like walls of meat - type: damageContainer id: StructuralBiological supportedGroups: @@ -18,6 +20,7 @@ supportedTypes: - Structural +# Not living things that are typically items, like sheets of metal or a tool - type: damageContainer id: Inorganic supportedGroups: @@ -26,6 +29,8 @@ - Heat - Shock +# Not living things that are "well-built" and rarely move, like machines or tables +# If it's on wheels it probably belongs here, too - type: damageContainer id: StructuralInorganic supportedGroups: diff --git a/Resources/Prototypes/Entities/Structures/Bases/structure_health.yml b/Resources/Prototypes/Entities/Structures/Bases/structure_health.yml index 0c0f69cec820f..a37bab341c7f7 100644 --- a/Resources/Prototypes/Entities/Structures/Bases/structure_health.yml +++ b/Resources/Prototypes/Entities/Structures/Bases/structure_health.yml @@ -123,7 +123,7 @@ - type: entity abstract: true parent: BaseStructureHealth - id: StructureHealthContainer + id: StructureHealthContainerStrong components: - type: Destructible thresholds: @@ -186,6 +186,13 @@ - !type:PlaySoundBehavior - !type:DoActsBehavior acts: [ "Destruction" ] + - trigger: + !type:DamageTrigger + damage: 20 + behaviors: + - !type:PlaySoundBehavior + - !type:DoActsBehavior + acts: [ "Breakage" ] - type: entity abstract: true @@ -199,8 +206,6 @@ damage: 100 behaviors: - !type:PlaySoundBehavior - - !type:ChangeConstructionNodeBehavior - node: machineFrame - !type:DoActsBehavior acts: [ "Destruction" ] - trigger: @@ -223,8 +228,6 @@ damage: 175 behaviors: - !type:PlaySoundBehavior - - !type:ChangeConstructionNodeBehavior - node: machineFrame - !type:DoActsBehavior acts: [ "Destruction" ] - trigger: @@ -247,8 +250,6 @@ damage: 250 behaviors: - !type:PlaySoundBehavior - - !type:ChangeConstructionNodeBehavior - node: machineFrame - !type:DoActsBehavior acts: [ "Destruction" ] - trigger: @@ -271,8 +272,6 @@ damage: 500 behaviors: - !type:PlaySoundBehavior - - !type:ChangeConstructionNodeBehavior - node: machineFrame - !type:DoActsBehavior acts: [ "Destruction" ] - trigger: diff --git a/Resources/Prototypes/Recipes/Construction/Graphs/utilities/cameras.yml b/Resources/Prototypes/Recipes/Construction/Graphs/utilities/cameras.yml index 95294d8e4f674..195fac05f36a1 100644 --- a/Resources/Prototypes/Recipes/Construction/Graphs/utilities/cameras.yml +++ b/Resources/Prototypes/Recipes/Construction/Graphs/utilities/cameras.yml @@ -21,7 +21,7 @@ - to: start completed: - !type:GivePrototype - prototype: SheetSteel1 + prototype: SheetSteel1 # should be glass amount: 2 - !type:DeleteEntity {} steps: diff --git a/Resources/Prototypes/Recipes/Crafting/Graphs/storage/cratesecure.yml b/Resources/Prototypes/Recipes/Crafting/Graphs/storage/cratesecure.yml index 2a9047077d58e..f76e41abad3d7 100644 --- a/Resources/Prototypes/Recipes/Crafting/Graphs/storage/cratesecure.yml +++ b/Resources/Prototypes/Recipes/Crafting/Graphs/storage/cratesecure.yml @@ -6,7 +6,7 @@ edges: - to: cratesecure steps: - - material: Steel + - material: Steel # microbalance to plasteel amount: 5 - material: Cable amount: 2 From 407815916bf564027499c9c182b7c2d5eee3cb5d Mon Sep 17 00:00:00 2001 From: iaada Date: Wed, 17 Jun 2026 22:46:37 -0500 Subject: [PATCH 07/13] final (for now) values --- .../Damage/ModifierSets/material.yml | 297 ++++++++++++- .../Prototypes/Damage/ModifierSets/status.yml | 6 - .../Structures/Bases/structure_health.yml | 396 ------------------ .../Construction/Graphs/utilities/cameras.yml | 2 +- .../Crafting/Graphs/storage/cratesecure.yml | 2 +- 5 files changed, 284 insertions(+), 419 deletions(-) delete mode 100644 Resources/Prototypes/Damage/ModifierSets/status.yml delete mode 100644 Resources/Prototypes/Entities/Structures/Bases/structure_health.yml diff --git a/Resources/Prototypes/Damage/ModifierSets/material.yml b/Resources/Prototypes/Damage/ModifierSets/material.yml index 0b42a5ed8e923..bb718e311ec98 100644 --- a/Resources/Prototypes/Damage/ModifierSets/material.yml +++ b/Resources/Prototypes/Damage/ModifierSets/material.yml @@ -1,34 +1,301 @@ # Modifier sets for entities that can be described as fully (or mostly) composed of some specific material #region Metallic +## Metals resist brute making them resilient to common attacks, but have an exploitable weakness to burn. -Plasteel -Steel -CopperAlloy -PreciousMetal +# Extremely strong metal that's unavailable to crew. +- type: damageModifierSet + id: PlastitaniumMod + coefficients: + Blunt: 0.4 + Slash: 0.4 + Piercing: 0.4 + Heat: 0.8 + Cold: 0.8 + Shock: 0.8 + Caustic: 0.8 + Structural: 0.6 + flatReductions: + Blunt: 8 + Slash: 8 + Piercing: 8 + Heat: 4 + Cold: 4 + Shock: 4 + Caustic: 4 + Structural: 8 + +# Strong metal used by crew to protect important areas and items. +- type: damageModifierSet + id: PlasteelMod + coefficients: + Blunt: 0.6 + Slash: 0.6 + Piercing: 0.6 + Structural: 0.8 + flatReductions: + Blunt: 8 + Slash: 8 + Piercing: 8 + Structural: 4 + +# Common metal found all over the place +- type: damageModifierSet + id: SteelMod + coefficients: + Blunt: 0.8 + Slash: 0.8 + Piercing: 0.8 + Heat: 1.3 + flatReductions: + Blunt: 4 + Slash: 4 + Piercing: 4 + +# Weak metal used for specific or aesthetic reasons. +- type: damageModifierSet + id: BrassMod + coefficients: + Heat: 1.5 + Cold: 1.2 + Shock: 1.2 + +# Metals that you really shouldn't be building things out of. Gold, silver, uranium, etc. +- type: damageModifierSet + id: PreciousMetalMod + coefficients: + Blunt: 1.2 + Slash: 1.2 + Piercing: 1.2 + Heat: 2 + Cold: 1.5 + Shock: 1.5 + Caustic: 0.5 #endregion #region Glass -Glass -ReinforcedGlass +# Resists burns, but is weak to common blunt damage. +- type: damageModifierSet + id: GlassMod + coefficients: + Blunt: 1.5 + Heat: 0.7 + Cold: 0.7 + Shock: 0.7 + flatReductions: + Heat: 6 + Cold: 6 + Shock: 6 + +# Halfway between steel and glass. +- type: damageModifierSet + id: GlassReinforcedMod + coefficients: + Blunt: 1.2 + Slash: 0.9 + Piercing: 0.9 + Heat: 1.1 + Cold: 0.8 + Shock: 0.8 + flatReductions: + Slash: 2 + Piercing: 2 + Shock: 4 + Caustic: 4 + +# Halfway between plasma and glass. +- type: damageModifierSet + id: GlassPlasmaMod + coefficients: + Slash: 0.7 + Piercing: 1.5 + Heat: 0.6 + Cold: 1.4 + Shock: 1.4 + Caustic: 0.7 + flatReductions: + Slash: 6 + Heat: 8 + Caustic: 6 + +# Halfway between plasma glass and steel. +- type: damageModifierSet + id: GlassReinforcedPlasmaMod + coefficients: + Blunt: 0.9 + Slash: 0.7 + Piercing: 1.2 + Heat: 1.1 + Cold: 1.3 + Shock: 1.3 + Caustic: 0.8 + flatReductions: + Blunt: 2 + Slash: 6 + Caustic: 4 #endregion #region Organic +## Poor resistances with specific, obvious weaknesses. -Card -Wood -Thread -Durathread -Meat +- type: damageModifierSet + id: CardboardMod + coefficients: + Blunt: 1.5 + Slash: 2 + Heat: 2 + flatReductions: + Structural: -2 # Falls apart no matter what you do to it + +- type: damageModifierSet + id: WoodMod + coefficients: + Blunt: 0.8 + Slash: 1.5 + Piercing: 0.8 + Heat: 1.5 + flatReductions: + Blunt: 4 + Piercing: 4 + +# Silk, cloth, and other woven materials. +- type: damageModifierSet + id: ThreadMod + coefficients: + Slash: 2 + Piercing: 1.5 + Heat: 2 + +# Halfway between thread and plastic. +- type: damageModifierSet + id: DurathreadMod + coefficients: + Blunt: 0.9 + Slash: 1.5 + Piercing: 1.2 + Heat: 1.5 + Cold: 0.9 + Shock: 0.9 + Caustic: 1.5 + +# Standard "weak to everything" design. Meat is as good a place as any for it. +- type: damageModifierSet + id: MeatMod + coefficients: + Blunt: 1.5 + Slash: 1.5 + Piercing: 1.5 + Heat: 1.5 + Cold: 1.5 + Shock: 1.5 + Caustic: 1.5 + Poison: 1.5 + Radiation: 1.5 + Asphyxiation: 1.5 + Bloodloss: 1.5 + Cellular: 1.5 + Holy: 1.5 + Structural: 1.5 #endregion #region Other -Plastic -Rock # Porcelain too -Bananium -Diamond +# A little bit resistant to everything. +- type: damageModifierSet + id: PlasticMod + coefficients: + Blunt: 0.9 + Slash: 0.9 + Piercing: 0.9 + Heat: 0.9 + Cold: 0.9 + Shock: 0.9 + Caustic: 2 + flatReductions: + Blunt: 2 + Slash: 2 + Piercing: 2 + Heat: 2 + Cold: 2 + Shock: 2 + +# Durable material with an extreme weakness to structural. +- type: damageModifierSet + id: RockMod # And dirt and porcelain + coefficients: + Blunt: 0.7 + Slash: 0.7 + Piercing: 0.7 + Heat: 0.7 + Cold: 0.7 + Shock: 0.7 + Caustic: 0.7 + Structural: 3 + flatReductions: + Blunt: 6 + Slash: 6 + Piercing: 6 + Heat: 6 + Cold: 6 + Shock: 6 + Caustic: 6 + +# A weird space rock which fills gaps for unusual weaknesses. +- type: damageModifierSet + id: PlasmaMod + coefficients: + Blunt: 0.5 + Slash: 0.5 + Piercing: 2 + Heat: 0.5 + Cold: 2 + Shock: 2 + Caustic: 0.5 + flatReductions: + Blunt: 8 + Slash: 8 + Heat: 8 + Caustic: 8 + +# Resists everything. Space diamonds have solved the original design flaws of Earth diamonds. +- type: damageModifierSet + id: DiamondMod + coefficients: + Blunt: 0.5 + Slash: 0.5 + Piercing: 0.5 + Heat: 0.5 + Cold: 0.5 + Shock: 0.5 + Caustic: 0.5 + Poison: 0.5 + Radiation: 0.5 + Asphyxiation: 0.5 + Bloodloss: 0.5 + Cellular: 0.5 + Holy: 0.5 + Structural: 0.5 +# The least durable material in the universe. You'd need to be some sort of clown to build with this :o) +- type: damageModifierSet + id: BananiumMod + coefficients: + Blunt: 2 + Slash: 2 + Piercing: 2 + Heat: 2 + Cold: 2 + Shock: 2 + Caustic: 2 + Poison: 2 + Radiation: 2 + Asphyxiation: 2 + Bloodloss: 2 + Cellular: 2 + Holy: 2 + Structural: 2 + flatReductions: + Structural: -5 # Destroyed by a soft breeze #endregion diff --git a/Resources/Prototypes/Damage/ModifierSets/status.yml b/Resources/Prototypes/Damage/ModifierSets/status.yml deleted file mode 100644 index 5fa25a8c54cdf..0000000000000 --- a/Resources/Prototypes/Damage/ModifierSets/status.yml +++ /dev/null @@ -1,6 +0,0 @@ -# Modifiers applied by status effects - -- type: damageModifierSet - id: PotassiumIodide - coefficients: - Radiation: 0.1 diff --git a/Resources/Prototypes/Entities/Structures/Bases/structure_health.yml b/Resources/Prototypes/Entities/Structures/Bases/structure_health.yml deleted file mode 100644 index a37bab341c7f7..0000000000000 --- a/Resources/Prototypes/Entities/Structures/Bases/structure_health.yml +++ /dev/null @@ -1,396 +0,0 @@ -# This file contains the standardized health values for structures. -# Generally, each type of structure has 3 values for weak, mundane, and strong. - -- type: entity - abstract: true - id: BaseStructureHealth - components: - - type: Destructible - - type: Damageable - - type: Injurable - damageContainer: StructuralInorganic - -#region Airlock / Door - -- type: entity - abstract: true - parent: BaseStructureHealth - id: StructureHealthDoorFlimsy - components: - - type: Destructible - thresholds: - - trigger: - !type:DamageTrigger - damage: 75 - behaviors: - - !type:PlaySoundBehavior - - !type:DoActsBehavior - acts: [ "Destruction" ] - -- type: entity - abstract: true - parent: BaseStructureHealth - id: StructureHealthDoorWeak - components: - - type: Destructible - thresholds: - - trigger: - !type:DamageTrigger - damage: 125 - behaviors: - - !type:PlaySoundBehavior - - !type:DoActsBehavior - acts: [ "Destruction" ] - -- type: entity - abstract: true - parent: BaseStructureHealth - id: StructureHealthDoor - components: - - type: Destructible - thresholds: - - trigger: - !type:DamageTrigger - damage: 250 - behaviors: - - !type:PlaySoundBehavior - - !type:DoActsBehavior - acts: [ "Destruction" ] - -- type: entity - abstract: true - parent: BaseStructureHealth - id: StructureHealthDoorStrong - components: - - type: Destructible - thresholds: - - trigger: - !type:DamageTrigger - damage: 350 - behaviors: - - !type:PlaySoundBehavior - - !type:DoActsBehavior - acts: [ "Destruction" ] - -#endregion -#region Closet / Container / Locker - -- type: entity - abstract: true - parent: BaseStructureHealth - id: StructureHealthContainerFlimsy - components: - - type: Destructible - thresholds: - - trigger: - !type:DamageTrigger - damage: 25 - behaviors: - - !type:PlaySoundBehavior - - !type:DoActsBehavior - acts: [ "Destruction" ] - -- type: entity - abstract: true - parent: BaseStructureHealth - id: StructureHealthContainerWeak - components: - - type: Destructible - thresholds: - - trigger: - !type:DamageTrigger - damage: 50 - behaviors: - - !type:PlaySoundBehavior - - !type:DoActsBehavior - acts: [ "Destruction" ] - -- type: entity - abstract: true - parent: BaseStructureHealth - id: StructureHealthContainer - components: - - type: Destructible - thresholds: - - trigger: - !type:DamageTrigger - damage: 100 - behaviors: - - !type:PlaySoundBehavior - - !type:DoActsBehavior - acts: [ "Destruction" ] - -- type: entity - abstract: true - parent: BaseStructureHealth - id: StructureHealthContainerStrong - components: - - type: Destructible - thresholds: - - trigger: - !type:DamageTrigger - damage: 175 - behaviors: - - !type:PlaySoundBehavior - - !type:DoActsBehavior - acts: [ "Destruction" ] - -#endregion -#region Decoration / Furniture - -- type: entity - abstract: true - parent: BaseStructureHealth - id: StructureHealthFurnitureWeak - components: - - type: Destructible - thresholds: - - trigger: - !type:DamageTrigger - damage: 30 - behaviors: - - !type:PlaySoundBehavior - - !type:DoActsBehavior - acts: [ "Destruction" ] - -- type: entity - abstract: true - parent: BaseStructureHealth - id: StructureHealthFurniture - components: - - type: Destructible - thresholds: - - trigger: - !type:DamageTrigger - damage: 70 - behaviors: - - !type:PlaySoundBehavior - - !type:DoActsBehavior - acts: [ "Destruction" ] - -#endregion -#region Machine - -# Not build from a proper frame. Light fixtures and other small electronics. -- type: entity - abstract: true - parent: BaseStructureHealth - id: StructureHealthMachineFlimsy - components: - - type: Destructible - thresholds: - - trigger: - !type:DamageTrigger - damage: 40 - behaviors: - - !type:PlaySoundBehavior - - !type:DoActsBehavior - acts: [ "Destruction" ] - - trigger: - !type:DamageTrigger - damage: 20 - behaviors: - - !type:PlaySoundBehavior - - !type:DoActsBehavior - acts: [ "Breakage" ] - -- type: entity - abstract: true - parent: BaseStructureHealth - id: StructureHealthMachineWeak - components: - - type: Destructible - thresholds: - - trigger: - !type:DamageTrigger - damage: 100 - behaviors: - - !type:PlaySoundBehavior - - !type:DoActsBehavior - acts: [ "Destruction" ] - - trigger: - !type:DamageTrigger - damage: 50 - behaviors: - - !type:PlaySoundBehavior - - !type:DoActsBehavior - acts: [ "Breakage" ] - -- type: entity - abstract: true - parent: BaseStructureHealth - id: StructureHealthMachine - components: - - type: Destructible - thresholds: - - trigger: - !type:DamageTrigger - damage: 175 - behaviors: - - !type:PlaySoundBehavior - - !type:DoActsBehavior - acts: [ "Destruction" ] - - trigger: - !type:DamageTrigger - damage: 75 - behaviors: - - !type:PlaySoundBehavior - - !type:DoActsBehavior - acts: [ "Breakage" ] - -- type: entity - abstract: true - parent: BaseStructureHealth - id: StructureHealthMachineStrong - components: - - type: Destructible - thresholds: - - trigger: - !type:DamageTrigger - damage: 250 - behaviors: - - !type:PlaySoundBehavior - - !type:DoActsBehavior - acts: [ "Destruction" ] - - trigger: - !type:DamageTrigger - damage: 150 - behaviors: - - !type:PlaySoundBehavior - - !type:DoActsBehavior - acts: [ "Breakage" ] - -- type: entity - abstract: true - parent: BaseStructureHealth - id: StructureHealthMachineMassive - components: - - type: Destructible - thresholds: - - trigger: - !type:DamageTrigger - damage: 500 - behaviors: - - !type:PlaySoundBehavior - - !type:DoActsBehavior - acts: [ "Destruction" ] - - trigger: - !type:DamageTrigger - damage: 350 - behaviors: - - !type:PlaySoundBehavior - - !type:DoActsBehavior - acts: [ "Breakage" ] - -#endregion -#region Wall - -- type: entity - abstract: true - parent: BaseStructureHealth - id: StructureHealthWallFlimsy - components: - - type: Destructible - thresholds: - - trigger: - !type:DamageTrigger - damage: 100 - behaviors: - - !type:PlaySoundBehavior - - !type:DoActsBehavior - acts: [ "Destruction" ] - -- type: entity - abstract: true - parent: BaseStructureHealth - id: StructureHealthWallWeak - components: - - type: Destructible - thresholds: - - trigger: - !type:DamageTrigger - damage: 200 - behaviors: - - !type:PlaySoundBehavior - - !type:DoActsBehavior - acts: [ "Destruction" ] - -- type: entity - abstract: true - parent: BaseStructureHealth - id: StructureHealthWall - components: - - type: Destructible - thresholds: - - trigger: - !type:DamageTrigger - damage: 400 - behaviors: - - !type:PlaySoundBehavior - - !type:DoActsBehavior - acts: [ "Destruction" ] - -- type: entity - abstract: true - parent: BaseStructureHealth - id: StructureHealthWallStrong - components: - - type: Destructible - thresholds: - - trigger: - !type:DamageTrigger - damage: 600 - behaviors: - - !type:PlaySoundBehavior - - !type:DoActsBehavior - acts: [ "Destruction" ] - -#endregion -#region Window - -- type: entity - abstract: true - parent: BaseStructureHealth - id: StructureHealthWindowWeak - components: - - type: Destructible - thresholds: - - trigger: - !type:DamageTrigger - damage: 60 - behaviors: - - !type:PlaySoundBehavior - - !type:DoActsBehavior - acts: [ "Destruction" ] - -- type: entity - abstract: true - parent: BaseStructureHealth - id: StructureHealthWindow - components: - - type: Destructible - thresholds: - - trigger: - !type:DamageTrigger - damage: 90 - behaviors: - - !type:PlaySoundBehavior - - !type:DoActsBehavior - acts: [ "Destruction" ] - -- type: entity - abstract: true - parent: BaseStructureHealth - id: StructureHealthWindowStrong - components: - - type: Destructible - thresholds: - - trigger: - !type:DamageTrigger - damage: 150 - behaviors: - - !type:PlaySoundBehavior - - !type:DoActsBehavior - acts: [ "Destruction" ] - -#endregion diff --git a/Resources/Prototypes/Recipes/Construction/Graphs/utilities/cameras.yml b/Resources/Prototypes/Recipes/Construction/Graphs/utilities/cameras.yml index 195fac05f36a1..95294d8e4f674 100644 --- a/Resources/Prototypes/Recipes/Construction/Graphs/utilities/cameras.yml +++ b/Resources/Prototypes/Recipes/Construction/Graphs/utilities/cameras.yml @@ -21,7 +21,7 @@ - to: start completed: - !type:GivePrototype - prototype: SheetSteel1 # should be glass + prototype: SheetSteel1 amount: 2 - !type:DeleteEntity {} steps: diff --git a/Resources/Prototypes/Recipes/Crafting/Graphs/storage/cratesecure.yml b/Resources/Prototypes/Recipes/Crafting/Graphs/storage/cratesecure.yml index f76e41abad3d7..2a9047077d58e 100644 --- a/Resources/Prototypes/Recipes/Crafting/Graphs/storage/cratesecure.yml +++ b/Resources/Prototypes/Recipes/Crafting/Graphs/storage/cratesecure.yml @@ -6,7 +6,7 @@ edges: - to: cratesecure steps: - - material: Steel # microbalance to plasteel + - material: Steel amount: 5 - material: Cable amount: 2 From e5585abd07203c00b5856d2087de9c0d3daec6ce Mon Sep 17 00:00:00 2001 From: iaada Date: Wed, 17 Jun 2026 23:41:57 -0500 Subject: [PATCH 08/13] structure coe and stronger plasma glass --- .../Damage/ModifierSets/material.yml | 24 ++++++++++--------- 1 file changed, 13 insertions(+), 11 deletions(-) diff --git a/Resources/Prototypes/Damage/ModifierSets/material.yml b/Resources/Prototypes/Damage/ModifierSets/material.yml index bb718e311ec98..5250e8ad0ffa9 100644 --- a/Resources/Prototypes/Damage/ModifierSets/material.yml +++ b/Resources/Prototypes/Damage/ModifierSets/material.yml @@ -14,7 +14,6 @@ Cold: 0.8 Shock: 0.8 Caustic: 0.8 - Structural: 0.6 flatReductions: Blunt: 8 Slash: 8 @@ -32,7 +31,6 @@ Blunt: 0.6 Slash: 0.6 Piercing: 0.6 - Structural: 0.8 flatReductions: Blunt: 8 Slash: 8 @@ -118,22 +116,25 @@ Slash: 6 Heat: 8 Caustic: 6 + Structural: 4 -# Halfway between plasma glass and steel. +# Halfway between reinforced glass and plasma. - type: damageModifierSet id: GlassReinforcedPlasmaMod coefficients: - Blunt: 0.9 + Blunt: 0.8 Slash: 0.7 - Piercing: 1.2 - Heat: 1.1 - Cold: 1.3 - Shock: 1.3 - Caustic: 0.8 + Piercing: 1.5 + Heat: 0.8 + Cold: 1.4 + Shock: 1.4 + Caustic: 0.7 flatReductions: - Blunt: 2 + Blunt: 4 Slash: 6 - Caustic: 4 + Heat: 4 + Caustic: 6 + Structural: 4 #endregion #region Organic @@ -257,6 +258,7 @@ Slash: 8 Heat: 8 Caustic: 8 + Structural: 8 # Resists everything. Space diamonds have solved the original design flaws of Earth diamonds. - type: damageModifierSet From d30a30d22d79cdbc951971d5f5033f58334ac5ca Mon Sep 17 00:00:00 2001 From: iaada Date: Thu, 18 Jun 2026 18:23:54 -0500 Subject: [PATCH 09/13] destroy sub 1 coefficents --- .../Damage/ModifierSets/material.yml | 73 ++++--------------- 1 file changed, 13 insertions(+), 60 deletions(-) diff --git a/Resources/Prototypes/Damage/ModifierSets/material.yml b/Resources/Prototypes/Damage/ModifierSets/material.yml index 5250e8ad0ffa9..60c16986327fd 100644 --- a/Resources/Prototypes/Damage/ModifierSets/material.yml +++ b/Resources/Prototypes/Damage/ModifierSets/material.yml @@ -6,31 +6,19 @@ # Extremely strong metal that's unavailable to crew. - type: damageModifierSet id: PlastitaniumMod - coefficients: - Blunt: 0.4 - Slash: 0.4 - Piercing: 0.4 - Heat: 0.8 - Cold: 0.8 - Shock: 0.8 - Caustic: 0.8 flatReductions: - Blunt: 8 - Slash: 8 - Piercing: 8 - Heat: 4 - Cold: 4 - Shock: 4 - Caustic: 4 - Structural: 8 + Blunt: 12 + Slash: 12 + Piercing: 12 + Heat: 6 + Cold: 6 + Shock: 6 + Caustic: 6 + Structural: 12 # Strong metal used by crew to protect important areas and items. - type: damageModifierSet id: PlasteelMod - coefficients: - Blunt: 0.6 - Slash: 0.6 - Piercing: 0.6 flatReductions: Blunt: 8 Slash: 8 @@ -41,9 +29,6 @@ - type: damageModifierSet id: SteelMod coefficients: - Blunt: 0.8 - Slash: 0.8 - Piercing: 0.8 Heat: 1.3 flatReductions: Blunt: 4 @@ -68,7 +53,6 @@ Heat: 2 Cold: 1.5 Shock: 1.5 - Caustic: 0.5 #endregion #region Glass @@ -78,9 +62,6 @@ id: GlassMod coefficients: Blunt: 1.5 - Heat: 0.7 - Cold: 0.7 - Shock: 0.7 flatReductions: Heat: 6 Cold: 6 @@ -91,27 +72,21 @@ id: GlassReinforcedMod coefficients: Blunt: 1.2 - Slash: 0.9 - Piercing: 0.9 Heat: 1.1 - Cold: 0.8 - Shock: 0.8 flatReductions: Slash: 2 Piercing: 2 Shock: 4 Caustic: 4 + Structural: 1 # Halfway between plasma and glass. - type: damageModifierSet id: GlassPlasmaMod coefficients: - Slash: 0.7 Piercing: 1.5 - Heat: 0.6 Cold: 1.4 Shock: 1.4 - Caustic: 0.7 flatReductions: Slash: 6 Heat: 8 @@ -122,13 +97,9 @@ - type: damageModifierSet id: GlassReinforcedPlasmaMod coefficients: - Blunt: 0.8 - Slash: 0.7 Piercing: 1.5 - Heat: 0.8 Cold: 1.4 Shock: 1.4 - Caustic: 0.7 flatReductions: Blunt: 4 Slash: 6 @@ -152,9 +123,7 @@ - type: damageModifierSet id: WoodMod coefficients: - Blunt: 0.8 Slash: 1.5 - Piercing: 0.8 Heat: 1.5 flatReductions: Blunt: 4 @@ -172,13 +141,14 @@ - type: damageModifierSet id: DurathreadMod coefficients: - Blunt: 0.9 Slash: 1.5 Piercing: 1.2 Heat: 1.5 - Cold: 0.9 - Shock: 0.9 Caustic: 1.5 + flatReductions: + Blunt: 2 + Cold: 2 + Shock: 2 # Standard "weak to everything" design. Meat is as good a place as any for it. - type: damageModifierSet @@ -206,12 +176,6 @@ - type: damageModifierSet id: PlasticMod coefficients: - Blunt: 0.9 - Slash: 0.9 - Piercing: 0.9 - Heat: 0.9 - Cold: 0.9 - Shock: 0.9 Caustic: 2 flatReductions: Blunt: 2 @@ -225,13 +189,6 @@ - type: damageModifierSet id: RockMod # And dirt and porcelain coefficients: - Blunt: 0.7 - Slash: 0.7 - Piercing: 0.7 - Heat: 0.7 - Cold: 0.7 - Shock: 0.7 - Caustic: 0.7 Structural: 3 flatReductions: Blunt: 6 @@ -246,13 +203,9 @@ - type: damageModifierSet id: PlasmaMod coefficients: - Blunt: 0.5 - Slash: 0.5 Piercing: 2 - Heat: 0.5 Cold: 2 Shock: 2 - Caustic: 0.5 flatReductions: Blunt: 8 Slash: 8 From 0068d9d5b5537cb4420ca331aaca5cf37d27eeca Mon Sep 17 00:00:00 2001 From: iaada Date: Fri, 26 Jun 2026 11:59:18 -0500 Subject: [PATCH 10/13] changes to plasma --- .../Damage/ModifierSets/material.yml | 73 +++++++++++-------- 1 file changed, 42 insertions(+), 31 deletions(-) diff --git a/Resources/Prototypes/Damage/ModifierSets/material.yml b/Resources/Prototypes/Damage/ModifierSets/material.yml index 60c16986327fd..f7a4dc8e83afd 100644 --- a/Resources/Prototypes/Damage/ModifierSets/material.yml +++ b/Resources/Prototypes/Damage/ModifierSets/material.yml @@ -25,7 +25,7 @@ Piercing: 8 Structural: 4 -# Common metal found all over the place +# Common metal found all over the place. - type: damageModifierSet id: SteelMod coefficients: @@ -71,40 +71,51 @@ - type: damageModifierSet id: GlassReinforcedMod coefficients: - Blunt: 1.2 - Heat: 1.1 + Blunt: 1.3 + Heat: 1.2 flatReductions: + Blunt: 2 Slash: 2 Piercing: 2 - Shock: 4 - Caustic: 4 + Heat: 3 + Cold: 3 + Shock: 3 Structural: 1 # Halfway between plasma and glass. - type: damageModifierSet id: GlassPlasmaMod coefficients: + Blunt: 1.5 Piercing: 1.5 - Cold: 1.4 - Shock: 1.4 + Cold: 1.5 + Shock: 1.5 flatReductions: - Slash: 6 - Heat: 8 - Caustic: 6 - Structural: 4 + Blunt: 3 + Slash: 3 + Heat: 6 + Cold: 3 + Shock: 3 + Caustic: 3 + Structural: 3 # Halfway between reinforced glass and plasma. - type: damageModifierSet id: GlassReinforcedPlasmaMod coefficients: - Piercing: 1.5 - Cold: 1.4 - Shock: 1.4 + Blunt: 1.3 + Piercing: 1.3 + Heat: 1.2 + Cold: 1.5 + Shock: 1.5 flatReductions: - Blunt: 4 - Slash: 6 - Heat: 4 - Caustic: 6 + Blunt: 5 + Slash: 5 + Piercing: 2 + Heat: 3 + Cold: 3 + Shock: 3 + Caustic: 3 Structural: 4 #endregion @@ -150,7 +161,7 @@ Cold: 2 Shock: 2 -# Standard "weak to everything" design. Meat is as good a place as any for it. +# Generic "weak to everything" design. Meat is as good a place as any for it. - type: damageModifierSet id: MeatMod coefficients: @@ -191,13 +202,13 @@ coefficients: Structural: 3 flatReductions: - Blunt: 6 - Slash: 6 - Piercing: 6 - Heat: 6 - Cold: 6 - Shock: 6 - Caustic: 6 + Blunt: 4 + Slash: 4 + Piercing: 4 + Heat: 4 + Cold: 4 + Shock: 4 + Caustic: 4 # A weird space rock which fills gaps for unusual weaknesses. - type: damageModifierSet @@ -207,11 +218,11 @@ Cold: 2 Shock: 2 flatReductions: - Blunt: 8 - Slash: 8 - Heat: 8 - Caustic: 8 - Structural: 8 + Blunt: 6 + Slash: 6 + Heat: 6 + Caustic: 6 + Structural: 6 # Resists everything. Space diamonds have solved the original design flaws of Earth diamonds. - type: damageModifierSet From 947baaddcfd6faa8ddbb8a2efdfd814b704da549 Mon Sep 17 00:00:00 2001 From: iaada Date: Wed, 1 Jul 2026 02:57:27 -0500 Subject: [PATCH 11/13] final final pass (before the final one) --- Resources/Prototypes/Damage/ModifierSets/material.yml | 4 ++-- Resources/Prototypes/Damage/ModifierSets/material_old.yml | 2 +- Resources/Prototypes/Damage/ModifierSets/special.yml | 3 +-- Resources/Prototypes/Damage/ModifierSets/species.yml | 7 +++++-- 4 files changed, 9 insertions(+), 7 deletions(-) diff --git a/Resources/Prototypes/Damage/ModifierSets/material.yml b/Resources/Prototypes/Damage/ModifierSets/material.yml index f7a4dc8e83afd..108c273f85f88 100644 --- a/Resources/Prototypes/Damage/ModifierSets/material.yml +++ b/Resources/Prototypes/Damage/ModifierSets/material.yml @@ -14,7 +14,7 @@ Cold: 6 Shock: 6 Caustic: 6 - Structural: 12 + Structural: 8 # Strong metal used by crew to protect important areas and items. - type: damageModifierSet @@ -57,7 +57,7 @@ #endregion #region Glass -# Resists burns, but is weak to common blunt damage. +# Inverse of metal. Weak to brute but resists burns. - type: damageModifierSet id: GlassMod coefficients: diff --git a/Resources/Prototypes/Damage/ModifierSets/material_old.yml b/Resources/Prototypes/Damage/ModifierSets/material_old.yml index 47ac9446cf274..b0bf2d7db4bb7 100644 --- a/Resources/Prototypes/Damage/ModifierSets/material_old.yml +++ b/Resources/Prototypes/Damage/ModifierSets/material_old.yml @@ -1,4 +1,4 @@ -# Modifier sets for entities that can be described as fully (or mostly) composed of some specific material +# Depreciated modifier sets previously used by structures ## Metallic diff --git a/Resources/Prototypes/Damage/ModifierSets/special.yml b/Resources/Prototypes/Damage/ModifierSets/special.yml index 6f9c6e754eddf..0bbd18326bf75 100644 --- a/Resources/Prototypes/Damage/ModifierSets/special.yml +++ b/Resources/Prototypes/Damage/ModifierSets/special.yml @@ -1,7 +1,6 @@ # These modifiers don't appear as a natural set used by any entity, but for some other novel purpose. -# Represents which damage types should be modified -# in relation to how they cause bleed rate. +# Represents which damage types should be modified in relation to how they cause bleed rate. # Make sure to add any new damage type here. - type: damageModifierSet id: BloodlossHuman diff --git a/Resources/Prototypes/Damage/ModifierSets/species.yml b/Resources/Prototypes/Damage/ModifierSets/species.yml index a10eed93d93df..5c22a27eacff3 100644 --- a/Resources/Prototypes/Damage/ModifierSets/species.yml +++ b/Resources/Prototypes/Damage/ModifierSets/species.yml @@ -1,6 +1,6 @@ # These are modifier sets used for humanoids -## Standard round-start +#region Standard round-start - type: damageModifierSet id: Slime @@ -42,7 +42,8 @@ Heat: 1.15 Cold: 0.85 -## Special +#endregion +#region Special # immune to everything except physical and heat damage; vulnerable to holy damage because they're undead, but not as vulnerable as a ghost or demon would be - type: damageModifierSet @@ -71,3 +72,5 @@ Asphyxiation: 0.0 Bloodloss: 0.0 Cellular: 0.0 + +#endregion From 027aba200a751c4b546c1fb68754195e6ec6fe01 Mon Sep 17 00:00:00 2001 From: iaada Date: Sat, 18 Jul 2026 13:18:05 -0500 Subject: [PATCH 12/13] another pass --- .../Damage/ModifierSets/material.yml | 115 ++++++++---------- 1 file changed, 48 insertions(+), 67 deletions(-) diff --git a/Resources/Prototypes/Damage/ModifierSets/material.yml b/Resources/Prototypes/Damage/ModifierSets/material.yml index 108c273f85f88..3244ece7d1c17 100644 --- a/Resources/Prototypes/Damage/ModifierSets/material.yml +++ b/Resources/Prototypes/Damage/ModifierSets/material.yml @@ -1,47 +1,45 @@ # Modifier sets for entities that can be described as fully (or mostly) composed of some specific material #region Metallic -## Metals resist brute making them resilient to common attacks, but have an exploitable weakness to burn. +## Metals resist brute, making them resilient to common attacks and especially bullets. +## Neutral against burns, making burn the preferred damage to destroy it. # Extremely strong metal that's unavailable to crew. - type: damageModifierSet id: PlastitaniumMod + coefficients: + Piercing: 0.7 # Bullets aren't a good option against metal flatReductions: - Blunt: 12 - Slash: 12 - Piercing: 12 - Heat: 6 - Cold: 6 - Shock: 6 - Caustic: 6 - Structural: 8 + Blunt: 9 + Slash: 9 + Piercing: 9 + Heat: 3 + Cold: 3 + Shock: 3 + Caustic: 3 + Structural: 9 # Strong metal used by crew to protect important areas and items. - type: damageModifierSet id: PlasteelMod + coefficients: + Piercing: 0.7 # Bullets aren't a good option against metal flatReductions: - Blunt: 8 - Slash: 8 - Piercing: 8 - Structural: 4 + Blunt: 6 + Slash: 6 + Piercing: 6 + Structural: 6 # Common metal found all over the place. - type: damageModifierSet id: SteelMod coefficients: - Heat: 1.3 + Piercing: 0.7 # Bullets aren't a good option against metal flatReductions: - Blunt: 4 - Slash: 4 - Piercing: 4 - -# Weak metal used for specific or aesthetic reasons. -- type: damageModifierSet - id: BrassMod - coefficients: - Heat: 1.5 - Cold: 1.2 - Shock: 1.2 + Blunt: 3 + Slash: 3 + Piercing: 3 + Structural: 3 # Metals that you really shouldn't be building things out of. Gold, silver, uranium, etc. - type: damageModifierSet @@ -49,19 +47,22 @@ coefficients: Blunt: 1.2 Slash: 1.2 - Piercing: 1.2 - Heat: 2 + Heat: 1.5 Cold: 1.5 Shock: 1.5 #endregion #region Glass +## Glass acts somewhat like an inverse to metal. Resists burns, but weak to brutes. # Inverse of metal. Weak to brute but resists burns. - type: damageModifierSet id: GlassMod coefficients: Blunt: 1.5 + Heat: 0.7 + Cold: 0.7 + Shock: 0.7 flatReductions: Heat: 6 Cold: 6 @@ -72,15 +73,15 @@ id: GlassReinforcedMod coefficients: Blunt: 1.3 - Heat: 1.2 + Piercing: 0.8 flatReductions: Blunt: 2 Slash: 2 Piercing: 2 - Heat: 3 - Cold: 3 - Shock: 3 - Structural: 1 + Heat: 2 + Cold: 2 + Shock: 2 + Structural: 2 # Halfway between plasma and glass. - type: damageModifierSet @@ -88,35 +89,35 @@ coefficients: Blunt: 1.5 Piercing: 1.5 - Cold: 1.5 - Shock: 1.5 + Heat: 0.7 + Cold: 1.3 + Shock: 1.3 flatReductions: Blunt: 3 Slash: 3 - Heat: 6 - Cold: 3 - Shock: 3 + Heat: 5 + Cold: 2 + Shock: 2 Caustic: 3 - Structural: 3 # Halfway between reinforced glass and plasma. - type: damageModifierSet id: GlassReinforcedPlasmaMod coefficients: Blunt: 1.3 - Piercing: 1.3 - Heat: 1.2 - Cold: 1.5 - Shock: 1.5 + Piercing: 1.2 + Heat: 0.8 + Cold: 1.3 + Shock: 1.3 flatReductions: Blunt: 5 Slash: 5 Piercing: 2 - Heat: 3 - Cold: 3 - Shock: 3 - Caustic: 3 - Structural: 4 + Heat: 2 + Cold: 2 + Shock: 2 + Caustic: 2 + Structural: 2 #endregion #region Organic @@ -222,26 +223,6 @@ Slash: 6 Heat: 6 Caustic: 6 - Structural: 6 - -# Resists everything. Space diamonds have solved the original design flaws of Earth diamonds. -- type: damageModifierSet - id: DiamondMod - coefficients: - Blunt: 0.5 - Slash: 0.5 - Piercing: 0.5 - Heat: 0.5 - Cold: 0.5 - Shock: 0.5 - Caustic: 0.5 - Poison: 0.5 - Radiation: 0.5 - Asphyxiation: 0.5 - Bloodloss: 0.5 - Cellular: 0.5 - Holy: 0.5 - Structural: 0.5 # The least durable material in the universe. You'd need to be some sort of clown to build with this :o) - type: damageModifierSet From e3b619be0e540a85c124fbc51f3a34bb4c5eaf2b Mon Sep 17 00:00:00 2001 From: iaada Date: Sat, 18 Jul 2026 13:57:18 -0500 Subject: [PATCH 13/13] skeleton conflict --- Resources/Prototypes/Damage/ModifierSets/species.yml | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/Resources/Prototypes/Damage/ModifierSets/species.yml b/Resources/Prototypes/Damage/ModifierSets/species.yml index 5c22a27eacff3..88ac7e765cfd3 100644 --- a/Resources/Prototypes/Damage/ModifierSets/species.yml +++ b/Resources/Prototypes/Damage/ModifierSets/species.yml @@ -49,9 +49,7 @@ - type: damageModifierSet id: Skeleton coefficients: - Blunt: 1.1 - Slash: 0.8 - Piercing: 0.6 + Blunt: 1.5 # Oof ouch my bones Cold: 0 Poison: 0 Radiation: 0 @@ -59,8 +57,6 @@ Bloodloss: 0 Cellular: 0 Holy: 0.5 - flatReductions: - Blunt: 5 # hurt a lot by blunt, immune to a good amount of other stuff because they're a cookie - type: damageModifierSet