From d21906c025f1c7055ed904beeb320e353440c3b0 Mon Sep 17 00:00:00 2001 From: MissKay1994 <15877268+MissKay1994@users.noreply.github.com> Date: Thu, 1 May 2025 14:16:51 -0400 Subject: [PATCH] Vox now can eat trash other other inedible things (#35681) * EAT TRASH EXHALE AMMONIA Update to files * Forgot to port this file * 1D4 Guidance * Summary (required) Suggested changes and fixes * Cries in conflicts * Why do we exist? To suffer? * 1 citation for being stupid * THE ANTIDOTE, THE ANTIDOTE FOR THE POISON * I was inverted sir * vox organs cleanup * vox reagents * guidebook * weh --------- Co-authored-by: Errant <35878406+Errant-4@users.noreply.github.com> --- .../Locale/en-US/flavors/flavor-profiles.ftl | 1 + .../Locale/en-US/reagents/meta/toxins.ftl | 3 ++ Resources/Prototypes/Body/Organs/vox.yml | 40 +++++++++++++++++++ Resources/Prototypes/Body/Prototypes/vox.yml | 6 +-- .../Objects/Consumable/Food/Baked/bagel.yml | 3 ++ .../Objects/Consumable/Food/Baked/bread.yml | 1 + .../Objects/Consumable/Food/Baked/cake.yml | 1 + .../Objects/Consumable/Food/Baked/donut.yml | 1 + .../Objects/Consumable/Food/Baked/misc.yml | 3 ++ .../Objects/Consumable/Food/Baked/pie.yml | 1 + .../Objects/Consumable/Food/meals.yml | 3 ++ .../Objects/Consumable/Food/noodles.yml | 5 ++- .../Objects/Consumable/Food/produce.yml | 2 + .../Objects/Consumable/Food/snacks.yml | 14 ++++++- .../Entities/Objects/Consumable/Food/soup.yml | 1 + Resources/Prototypes/Flavors/flavors.yml | 6 +++ Resources/Prototypes/Reagents/pyrotechnic.yml | 11 +++++ Resources/Prototypes/Reagents/toxins.yml | 32 ++++++++++++++- Resources/Prototypes/tags.yml | 3 ++ Resources/ServerInfo/Guidebook/Mobs/Vox.xml | 2 + 20 files changed, 133 insertions(+), 6 deletions(-) diff --git a/Resources/Locale/en-US/flavors/flavor-profiles.ftl b/Resources/Locale/en-US/flavors/flavor-profiles.ftl index f9249a7f13..da8c7ed622 100644 --- a/Resources/Locale/en-US/flavors/flavor-profiles.ftl +++ b/Resources/Locale/en-US/flavors/flavor-profiles.ftl @@ -52,6 +52,7 @@ flavor-base-horrible = horrible flavor-base-terrible = terrible flavor-base-mindful = mindful flavor-base-chewy = chewy +flavor-base-trashy = trashy # Complex flavors. Put a flavor here when you want something that's more # specific. diff --git a/Resources/Locale/en-US/reagents/meta/toxins.ftl b/Resources/Locale/en-US/reagents/meta/toxins.ftl index 6d92d81079..43c450988f 100644 --- a/Resources/Locale/en-US/reagents/meta/toxins.ftl +++ b/Resources/Locale/en-US/reagents/meta/toxins.ftl @@ -81,3 +81,6 @@ reagent-desc-lipolicide = A powerful toxin that will destroy fat cells, massivel reagent-name-mechanotoxin = mechanotoxin reagent-desc-mechanotoxin = A neurotoxin used as venom by some species of spider. Degrades movement when built up. + +reagent-name-toxintrash = trash +reagent-desc-toxintrash = An awful-smelling fluid. Deadly to non-vox. \ No newline at end of file diff --git a/Resources/Prototypes/Body/Organs/vox.yml b/Resources/Prototypes/Body/Organs/vox.yml index 70e0783271..8b38bb8d0b 100644 --- a/Resources/Prototypes/Body/Organs/vox.yml +++ b/Resources/Prototypes/Body/Organs/vox.yml @@ -13,3 +13,43 @@ - type: Item size: Small heldPrefix: lungs + +- type: entity + parent: OrganHumanStomach + id: OrganVoxStomach + name: stomach + description: "A stomach that smells of ammonia." + components: + - type: Metabolizer #Skreeeee! + metabolizerTypes: [Vox] + - type: Stomach +#Bird vs tags + specialDigestible: + tags: + - Trash + - Fruit + - ReptilianFood + - Meat + - Pill + - Crayon + - Paper + - VoxFood + - Vegetable + +- type: entity + parent: OrganHumanLiver + id: OrganVoxLiver + name: liver + description: "Smells flammable." + components: + - type: Metabolizer + metabolizerTypes: [Vox] + +- type: entity + parent: OrganHumanHeart + id: OrganVoxHeart + name: heart + description: "The strange heart of a vox." + components: + - type: Metabolizer + metabolizerTypes: [Vox] diff --git a/Resources/Prototypes/Body/Prototypes/vox.yml b/Resources/Prototypes/Body/Prototypes/vox.yml index 2a1f6d9dca..75824521bd 100644 --- a/Resources/Prototypes/Body/Prototypes/vox.yml +++ b/Resources/Prototypes/Body/Prototypes/vox.yml @@ -18,10 +18,10 @@ - right leg - left leg organs: - heart: OrganHumanHeart + heart: OrganVoxHeart lungs: OrganVoxLungs - stomach: OrganHumanStomach - liver: OrganHumanLiver + stomach: OrganVoxStomach + liver: OrganVoxLiver kidneys: OrganHumanKidneys right arm: part: RightArmVox diff --git a/Resources/Prototypes/Entities/Objects/Consumable/Food/Baked/bagel.yml b/Resources/Prototypes/Entities/Objects/Consumable/Food/Baked/bagel.yml index 114b3e01f2..ef0d43be3f 100644 --- a/Resources/Prototypes/Entities/Objects/Consumable/Food/Baked/bagel.yml +++ b/Resources/Prototypes/Entities/Objects/Consumable/Food/Baked/bagel.yml @@ -20,6 +20,9 @@ reagents: - ReagentId: Nutriment Quantity: 5 + - type: Tag + tags: + - VoxFood - type: entity id: FoodBagel diff --git a/Resources/Prototypes/Entities/Objects/Consumable/Food/Baked/bread.yml b/Resources/Prototypes/Entities/Objects/Consumable/Food/Baked/bread.yml index d817d53b18..1945da67f3 100644 --- a/Resources/Prototypes/Entities/Objects/Consumable/Food/Baked/bread.yml +++ b/Resources/Prototypes/Entities/Objects/Consumable/Food/Baked/bread.yml @@ -15,6 +15,7 @@ - type: Tag tags: - Bread + - VoxFood - type: SolutionContainerManager solutions: food: diff --git a/Resources/Prototypes/Entities/Objects/Consumable/Food/Baked/cake.yml b/Resources/Prototypes/Entities/Objects/Consumable/Food/Baked/cake.yml index 3b9ae17b6a..763e8d3580 100644 --- a/Resources/Prototypes/Entities/Objects/Consumable/Food/Baked/cake.yml +++ b/Resources/Prototypes/Entities/Objects/Consumable/Food/Baked/cake.yml @@ -26,6 +26,7 @@ - type: Tag tags: - Cake + - VoxFood - type: SecretStash maxItemSize: "Normal" secretStashName: secret-stash-cake diff --git a/Resources/Prototypes/Entities/Objects/Consumable/Food/Baked/donut.yml b/Resources/Prototypes/Entities/Objects/Consumable/Food/Baked/donut.yml index 52ac7b2fe9..4cdca4799c 100644 --- a/Resources/Prototypes/Entities/Objects/Consumable/Food/Baked/donut.yml +++ b/Resources/Prototypes/Entities/Objects/Consumable/Food/Baked/donut.yml @@ -10,6 +10,7 @@ - type: Tag tags: - Donut + - VoxFood - type: Sprite sprite: Objects/Consumable/Food/Baked/donut.rsi - type: SolutionContainerManager diff --git a/Resources/Prototypes/Entities/Objects/Consumable/Food/Baked/misc.yml b/Resources/Prototypes/Entities/Objects/Consumable/Food/Baked/misc.yml index c7a10d4212..7776906b75 100644 --- a/Resources/Prototypes/Entities/Objects/Consumable/Food/Baked/misc.yml +++ b/Resources/Prototypes/Entities/Objects/Consumable/Food/Baked/misc.yml @@ -18,6 +18,9 @@ Quantity: 5 - type: Item size: Tiny + - type: Tag + tags: + - VoxFood # Muffins diff --git a/Resources/Prototypes/Entities/Objects/Consumable/Food/Baked/pie.yml b/Resources/Prototypes/Entities/Objects/Consumable/Food/Baked/pie.yml index b86a4201e8..8633d0f718 100644 --- a/Resources/Prototypes/Entities/Objects/Consumable/Food/Baked/pie.yml +++ b/Resources/Prototypes/Entities/Objects/Consumable/Food/Baked/pie.yml @@ -30,6 +30,7 @@ - type: Tag tags: - Pie + - VoxFood - type: entity parent: FoodInjectableBase # Not sliceable diff --git a/Resources/Prototypes/Entities/Objects/Consumable/Food/meals.yml b/Resources/Prototypes/Entities/Objects/Consumable/Food/meals.yml index 0ba1bdf6ab..3576fdfc15 100644 --- a/Resources/Prototypes/Entities/Objects/Consumable/Food/meals.yml +++ b/Resources/Prototypes/Entities/Objects/Consumable/Food/meals.yml @@ -22,6 +22,9 @@ reagents: - ReagentId: Nutriment Quantity: 20 + - type: Tag + tags: + - VoxFood # Meals diff --git a/Resources/Prototypes/Entities/Objects/Consumable/Food/noodles.yml b/Resources/Prototypes/Entities/Objects/Consumable/Food/noodles.yml index 4bff8252aa..b11b38be1c 100644 --- a/Resources/Prototypes/Entities/Objects/Consumable/Food/noodles.yml +++ b/Resources/Prototypes/Entities/Objects/Consumable/Food/noodles.yml @@ -18,7 +18,10 @@ reagents: - ReagentId: Nutriment Quantity: 20 - + - type: Tag + tags: + - VoxFood + # Noodles - type: entity diff --git a/Resources/Prototypes/Entities/Objects/Consumable/Food/produce.yml b/Resources/Prototypes/Entities/Objects/Consumable/Food/produce.yml index 25a60dfc75..75a27c9754 100644 --- a/Resources/Prototypes/Entities/Objects/Consumable/Food/produce.yml +++ b/Resources/Prototypes/Entities/Objects/Consumable/Food/produce.yml @@ -445,6 +445,8 @@ - type: Extractable grindableSolutionName: food - type: SpaceGarbage + - type: Food + requiresSpecialDigestion: true - type: entity name: baked banana peel diff --git a/Resources/Prototypes/Entities/Objects/Consumable/Food/snacks.yml b/Resources/Prototypes/Entities/Objects/Consumable/Food/snacks.yml index 8c67a3d037..72243b6d06 100644 --- a/Resources/Prototypes/Entities/Objects/Consumable/Food/snacks.yml +++ b/Resources/Prototypes/Entities/Objects/Consumable/Food/snacks.yml @@ -10,6 +10,7 @@ - type: Tag tags: - FoodSnack + - VoxFood - type: Sprite sprite: Objects/Consumable/Food/snacks.rsi - type: SolutionContainerManager @@ -475,7 +476,6 @@ sound: path: /Audio/Effects/unwrap.ogg - - type: entity id: FoodSnackMREBrownieOpen parent: FoodSnackBase @@ -498,6 +498,9 @@ Quantity: 10 - ReagentId: Theobromine Quantity: 3 + - type: Tag + tags: + - VoxFood # Trash @@ -523,6 +526,15 @@ - type: SpaceGarbage - type: StaticPrice price: 0 + - type: SolutionContainerManager + solutions: + food: + maxVol: 10 + reagents: + - ReagentId: ToxinTrash + Quantity: 5 + - type: Food + requiresSpecialDigestion: true - type: entity categories: [ HideSpawnMenu ] diff --git a/Resources/Prototypes/Entities/Objects/Consumable/Food/soup.yml b/Resources/Prototypes/Entities/Objects/Consumable/Food/soup.yml index 0d9ba21e53..2450f6ab4f 100644 --- a/Resources/Prototypes/Entities/Objects/Consumable/Food/soup.yml +++ b/Resources/Prototypes/Entities/Objects/Consumable/Food/soup.yml @@ -42,6 +42,7 @@ - type: Tag tags: - Soup + - VoxFood - type: Destructible thresholds: - trigger: diff --git a/Resources/Prototypes/Flavors/flavors.yml b/Resources/Prototypes/Flavors/flavors.yml index a24de46b55..8ec899c57c 100644 --- a/Resources/Prototypes/Flavors/flavors.yml +++ b/Resources/Prototypes/Flavors/flavors.yml @@ -1468,3 +1468,9 @@ id: bacchusblessing flavorType: Complex description: flavor-complex-bacchus-blessing + +- type: flavor + id: trashy + flavorType: Base + description: flavor-base-trashy + diff --git a/Resources/Prototypes/Reagents/pyrotechnic.yml b/Resources/Prototypes/Reagents/pyrotechnic.yml index 3ff7eb5ad6..510cf8aa93 100644 --- a/Resources/Prototypes/Reagents/pyrotechnic.yml +++ b/Resources/Prototypes/Reagents/pyrotechnic.yml @@ -161,9 +161,20 @@ tileReactions: - !type:FlammableTileReaction {} metabolisms: + Food: + effects: + - !type:SatiateThirst + factor: 1 + conditions: + - !type:OrganType + type: Vox Poison: effects: - !type:HealthChange + conditions: + - !type:OrganType + type: Vox + shouldHave: false damage: types: Poison: 1 diff --git a/Resources/Prototypes/Reagents/toxins.yml b/Resources/Prototypes/Reagents/toxins.yml index 5f6e5581dd..27057cb715 100644 --- a/Resources/Prototypes/Reagents/toxins.yml +++ b/Resources/Prototypes/Reagents/toxins.yml @@ -477,6 +477,9 @@ - !type:OrganType type: Animal shouldHave: false + - !type:OrganType + type: Vox + shouldHave: false type: Local visualType: MediumCaution messages: [ "generic-reagent-effect-sick" ] @@ -487,11 +490,17 @@ - !type:OrganType type: Animal shouldHave: false + - !type:OrganType + type: Vox + shouldHave: false - !type:HealthChange conditions: - !type:OrganType type: Animal shouldHave: false + - !type:OrganType + type: Vox + shouldHave: false damage: types: Poison: 1 @@ -499,9 +508,14 @@ conditions: - !type:OrganType type: Animal - shouldHave: true reagent: Protein amount: 0.5 + - !type:AdjustReagent + conditions: + - !type:OrganType + type: Vox + reagent: Protein + amount: 0.25 - type: reagent id: Allicin @@ -701,3 +715,19 @@ shouldHave: false walkSpeedModifier: 0.4 sprintSpeedModifier: 0.4 + +- type: reagent + id: ToxinTrash + name: reagent-name-toxintrash + group: Toxins + desc: reagent-desc-toxintrash + flavor: trashy + physicalDesc: reagent-physical-desc-nondescript + metabolisms: + Food: + effects: + - !type:SatiateHunger + factor: 1 + conditions: + - !type:OrganType + type: Vox diff --git a/Resources/Prototypes/tags.yml b/Resources/Prototypes/tags.yml index 7a778953c5..e258a4da0f 100644 --- a/Resources/Prototypes/tags.yml +++ b/Resources/Prototypes/tags.yml @@ -1355,6 +1355,9 @@ - type: Tag id: VoiceTrigger +- type: Tag # Eating fix tag + id: VoxFood + - type: Tag id: Wall diff --git a/Resources/ServerInfo/Guidebook/Mobs/Vox.xml b/Resources/ServerInfo/Guidebook/Mobs/Vox.xml index 95e9df4c76..9500c95aea 100644 --- a/Resources/ServerInfo/Guidebook/Mobs/Vox.xml +++ b/Resources/ServerInfo/Guidebook/Mobs/Vox.xml @@ -14,6 +14,8 @@ Vox always spawn wearing working nitrogen internals equipment. A spare breathing mask and an emergency nitrogen canister is provided in their survival box. + In addition to regular foods, Vox can also eat various snack packaging, banana peels, eggshells, and raw meat without any ill effects. They also like to drink welding fuel. + Vox [color=#1e90ff]slowly recover from low levels of poison damage[/color] on their own, so long as they are careful not to exceed 20 poison damage. This allows them to endure breathing station air for up to thirty seconds at a time without lasting damage, -- 2.51.2