From 853e5b1b6850598313821359052fd64c74042b57 Mon Sep 17 00:00:00 2001 From: nullspace-industries <57872710+nullspace-industries@users.noreply.github.com> Date: Sat, 12 Apr 2025 05:21:11 +0100 Subject: [PATCH 01/13] Update neutral.dm --- code/datums/traits/neutral.dm | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/code/datums/traits/neutral.dm b/code/datums/traits/neutral.dm index 064febb2d2..b6d964dfaf 100644 --- a/code/datums/traits/neutral.dm +++ b/code/datums/traits/neutral.dm @@ -189,3 +189,14 @@ /datum/quirk/dullahan/post_add() quirk_holder.AddComponent(/datum/component/dullahan) + +// GS13 EDIT START +/datum/quirk/biofuel + name = "Biofuel Processor" + desc = "Your robotic body is equipped to eat and digest food the same way organic crew can." + value = 0 + mob_trait = TRAIT_BIOFUEL + +/datum/quirk/biofuel/post_add() + REMOVE_TRAIT(quirk_holder, TRAIT_NO_PROCESS_FOOD) +// GS13 EDIT END From 70623955db7c424879857feb3bd3d8d49d576781 Mon Sep 17 00:00:00 2001 From: nullspace-industries <57872710+nullspace-industries@users.noreply.github.com> Date: Sat, 12 Apr 2025 05:22:02 +0100 Subject: [PATCH 02/13] Update traits.dm --- code/__DEFINES/traits.dm | 1 + 1 file changed, 1 insertion(+) diff --git a/code/__DEFINES/traits.dm b/code/__DEFINES/traits.dm index 98d5205a20..7c55fe07fb 100644 --- a/code/__DEFINES/traits.dm +++ b/code/__DEFINES/traits.dm @@ -289,6 +289,7 @@ #define TRAIT_METAL_CRUNCHER "metal_cruncher" #define TRAIT_WATER_SPONGE "water_sponge" #define TRAIT_FATROUSAL "fatrousal" +#define TRAIT_BIOFUEL "biofuel_processor" //GS13 Port #define TRAIT_HEADPAT_SLUT "headpat_slut" From ca31fc413faf213b8b4afe690d118b5bc2c0503d Mon Sep 17 00:00:00 2001 From: nullspace-industries <57872710+nullspace-industries@users.noreply.github.com> Date: Sat, 12 Apr 2025 05:55:25 +0100 Subject: [PATCH 03/13] Update neutral.dm --- code/datums/traits/neutral.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/datums/traits/neutral.dm b/code/datums/traits/neutral.dm index b6d964dfaf..4db452d59c 100644 --- a/code/datums/traits/neutral.dm +++ b/code/datums/traits/neutral.dm @@ -198,5 +198,5 @@ mob_trait = TRAIT_BIOFUEL /datum/quirk/biofuel/post_add() - REMOVE_TRAIT(quirk_holder, TRAIT_NO_PROCESS_FOOD) + REMOVE_TRAIT(quirk_holder, TRAIT_NO_PROCESS_FOOD, TRAIT_GENERIC) //no idea how trait source works // GS13 EDIT END From d70b94efbf7134368f8fcc2ddd76689554b7238d Mon Sep 17 00:00:00 2001 From: nullspace-industries <57872710+nullspace-industries@users.noreply.github.com> Date: Sat, 12 Apr 2025 06:05:59 +0100 Subject: [PATCH 04/13] Update neutral.dm --- code/datums/traits/neutral.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/datums/traits/neutral.dm b/code/datums/traits/neutral.dm index 4db452d59c..5ce4a7b30d 100644 --- a/code/datums/traits/neutral.dm +++ b/code/datums/traits/neutral.dm @@ -198,5 +198,5 @@ mob_trait = TRAIT_BIOFUEL /datum/quirk/biofuel/post_add() - REMOVE_TRAIT(quirk_holder, TRAIT_NO_PROCESS_FOOD, TRAIT_GENERIC) //no idea how trait source works + REMOVE_TRAIT(quirk_holder, TRAIT_NO_PROCESS_FOOD, TRAIT_SPECIES) // GS13 EDIT END From 86a696dccf9ca09e3d6600d3e7c8b6146a720223 Mon Sep 17 00:00:00 2001 From: nullspace-industries <57872710+nullspace-industries@users.noreply.github.com> Date: Sat, 12 Apr 2025 06:08:21 +0100 Subject: [PATCH 05/13] Update neutral.dm --- code/datums/traits/neutral.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/datums/traits/neutral.dm b/code/datums/traits/neutral.dm index 5ce4a7b30d..8863e601b2 100644 --- a/code/datums/traits/neutral.dm +++ b/code/datums/traits/neutral.dm @@ -198,5 +198,5 @@ mob_trait = TRAIT_BIOFUEL /datum/quirk/biofuel/post_add() - REMOVE_TRAIT(quirk_holder, TRAIT_NO_PROCESS_FOOD, TRAIT_SPECIES) + REMOVE_TRAIT(quirk_holder, TRAIT_NO_PROCESS_FOOD, SPECIES_TRAIT) // GS13 EDIT END From f60cbd00c0e051bd0933ac29608a9f81dd91ff40 Mon Sep 17 00:00:00 2001 From: nullspace-industries <57872710+nullspace-industries@users.noreply.github.com> Date: Sat, 12 Apr 2025 06:28:46 +0100 Subject: [PATCH 06/13] Update reagents.dm --- code/__DEFINES/reagents.dm | 2 ++ 1 file changed, 2 insertions(+) diff --git a/code/__DEFINES/reagents.dm b/code/__DEFINES/reagents.dm index 2b0f51f230..3e8f6081bd 100644 --- a/code/__DEFINES/reagents.dm +++ b/code/__DEFINES/reagents.dm @@ -77,6 +77,8 @@ #define REAGENT_SPLITRETAINVOL (1<<7) //Retains initial volume of chem when splitting #define REAGENT_ORGANIC_PROCESS (1<<8) //Can be processed by organic carbons - will otherwise slowly dissipate #define REAGENT_ROBOTIC_PROCESS (1<<9) //Can be processed by robotic carbons - will otherwise slowly dissipate +//GS13 edit +#define REAGENT_BIOFUEL_PROCESS (1<<10) //Can be processed by robotic carbons with biofuel processor trait - should be on nutriment-type reagents and fatchems only #define REAGENT_ALL_PROCESS (REAGENT_ORGANIC_PROCESS | REAGENT_ROBOTIC_PROCESS) //expand this if you for some reason add more process flags From 0ab306c463d5fbba24fa7c79cf96b6343ee72581 Mon Sep 17 00:00:00 2001 From: nullspace-industries <57872710+nullspace-industries@users.noreply.github.com> Date: Sat, 12 Apr 2025 06:37:38 +0100 Subject: [PATCH 07/13] Update reagents.dm --- code/__HELPERS/reagents.dm | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/code/__HELPERS/reagents.dm b/code/__HELPERS/reagents.dm index 0ecf82b191..8c8bc75cd2 100644 --- a/code/__HELPERS/reagents.dm +++ b/code/__HELPERS/reagents.dm @@ -106,4 +106,8 @@ /proc/is_reagent_processing_invalid(datum/reagent/R, mob/living/owner) if(!R || !owner) return TRUE + //GS13 edit start + if(HAS_TRAIT(owner, TRAIT_BIOFUEL) && (R.chemical_flags & REAGENT_BIOFUEL_PROCESS)) + return FALSE + //GS13 edit end return ((HAS_TRAIT(owner, TRAIT_ROBOTIC_ORGANISM) && !(R.chemical_flags & REAGENT_ROBOTIC_PROCESS)) || (!HAS_TRAIT(owner, TRAIT_ROBOTIC_ORGANISM) && !(R.chemical_flags & REAGENT_ORGANIC_PROCESS))) From eb32d8f49b9657b6d39e8caebebe80ce7f7a0f9f Mon Sep 17 00:00:00 2001 From: nullspace-industries <57872710+nullspace-industries@users.noreply.github.com> Date: Sat, 12 Apr 2025 07:01:58 +0100 Subject: [PATCH 08/13] Update food_reagents.dm --- code/modules/reagents/chemistry/reagents/food_reagents.dm | 1 + 1 file changed, 1 insertion(+) diff --git a/code/modules/reagents/chemistry/reagents/food_reagents.dm b/code/modules/reagents/chemistry/reagents/food_reagents.dm index d156f3e36b..e8149946b7 100644 --- a/code/modules/reagents/chemistry/reagents/food_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/food_reagents.dm @@ -12,6 +12,7 @@ taste_description = "generic food" taste_mult = 4 value = REAGENT_VALUE_VERY_COMMON + chemical_flags = REAGENT_ORGANIC_PROCESS | REAGENT_BIOFUEL_PROCESS // GS13 edit; lets robots with the biofuel trait process foodchems var/nutriment_factor = 1 * REAGENTS_METABOLISM var/max_nutrition = INFINITY var/quality = 0 //affects mood, typically higher for mixed drinks with more complex recipes From 05e5f39e9c29d8146105b56fe9d034c62c613261 Mon Sep 17 00:00:00 2001 From: nullspace-industries <57872710+nullspace-industries@users.noreply.github.com> Date: Sat, 12 Apr 2025 07:08:07 +0100 Subject: [PATCH 09/13] Update consumable_reagents.dm --- .../reagents/chemistry/reagents/consumable_reagents.dm | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/GainStation13/code/modules/reagents/chemistry/reagents/consumable_reagents.dm b/GainStation13/code/modules/reagents/chemistry/reagents/consumable_reagents.dm index 9cef5cb2ab..8c7901bea2 100644 --- a/GainStation13/code/modules/reagents/chemistry/reagents/consumable_reagents.dm +++ b/GainStation13/code/modules/reagents/chemistry/reagents/consumable_reagents.dm @@ -8,6 +8,7 @@ reagent_state = LIQUID color = "#e2e1b1" metabolization_rate = 0.5 * REAGENTS_METABOLISM + chemical_flags = REAGENT_ORGANIC_PROCESS | REAGENT_BIOFUEL_PROCESS /datum/reagent/consumable/lipoifier/on_mob_life(mob/living/carbon/M) M.adjust_fatness(15, FATTENING_TYPE_CHEM) @@ -22,6 +23,7 @@ // GS13 tweak metabolization_rate = 0.7 * REAGENTS_METABOLISM overdose_threshold = 105 + chemical_flags = REAGENT_ORGANIC_PROCESS | REAGENT_BIOFUEL_PROCESS /datum/reagent/medicine/lipolicide/overdose_process(mob/living/carbon/C) . = ..() @@ -51,6 +53,7 @@ reagent_state = LIQUID taste_description = "fizziness" metabolization_rate = 2 * REAGENTS_METABOLISM + chemical_flags = REAGENT_ORGANIC_PROCESS | REAGENT_BIOFUEL_PROCESS /datum/reagent/consumable/fizulphite/on_mob_life(mob/living/carbon/M) if(M && M?.client?.prefs.weight_gain_chems) @@ -69,6 +72,7 @@ reagent_state = LIQUID taste_description = "smoothness" metabolization_rate = 0.8 * REAGENTS_METABOLISM + chemical_flags = REAGENT_ORGANIC_PROCESS | REAGENT_BIOFUEL_PROCESS /datum/reagent/consumable/extilphite/on_mob_life(mob/living/carbon/M) if(M && M?.client?.prefs.weight_gain_chems) @@ -91,6 +95,7 @@ reagent_state = LIQUID taste_description = "sulfury sweetness" metabolization_rate = 0.5 * REAGENTS_METABOLISM //Done by Zestyspy, Jan 2023 + chemical_flags = REAGENT_ORGANIC_PROCESS | REAGENT_BIOFUEL_PROCESS /datum/reagent/consumable/flatulose/on_mob_life(mob/living/carbon/M) if(M && M?.client?.prefs.weight_gain_chems) @@ -136,6 +141,7 @@ taste_description = "blueberry pie" var/no_mob_color = FALSE value = 10 //it sells. Make that berry factory + chemical_flags = REAGENT_ORGANIC_PROCESS | REAGENT_BIOFUEL_PROCESS //screw it let robots have juice why not /datum/reagent/blueberry_juice/on_mob_life(mob/living/carbon/M) if(M?.client) From b61403fe3a26d37287561fbe7733d6143211c474 Mon Sep 17 00:00:00 2001 From: nullspace-industries <57872710+nullspace-industries@users.noreply.github.com> Date: Sat, 12 Apr 2025 07:38:54 +0100 Subject: [PATCH 10/13] Update bitfields.dm --- code/_globalvars/bitfields.dm | 1 + 1 file changed, 1 insertion(+) diff --git a/code/_globalvars/bitfields.dm b/code/_globalvars/bitfields.dm index c66823050b..dac68a6cca 100644 --- a/code/_globalvars/bitfields.dm +++ b/code/_globalvars/bitfields.dm @@ -100,6 +100,7 @@ DEFINE_BITFIELD(chemical_flags, list( "REAGENT_ONMOBMERGE" = REAGENT_ONMOBMERGE, "REAGENT_ORGANIC_PROCESS" = REAGENT_ORGANIC_PROCESS, "REAGENT_ROBOTIC_PROCESS" = REAGENT_ROBOTIC_PROCESS, + "REAGENT_BIOFUEL_PROCESS" = REAGENT_BIOFUEL_PROCESS, "REAGENT_SNEAKYNAME" = REAGENT_SNEAKYNAME, "REAGENT_SPLITRETAINVOL" = REAGENT_SPLITRETAINVOL, )) From 48d4516a4869f5b60c9a3b88012a44441f207231 Mon Sep 17 00:00:00 2001 From: nullspace-industries <57872710+nullspace-industries@users.noreply.github.com> Date: Sat, 12 Apr 2025 08:11:07 +0100 Subject: [PATCH 11/13] Update fermi_fat.dm --- .../code/modules/reagents/chemistry/reagents/fermi_fat.dm | 2 ++ 1 file changed, 2 insertions(+) diff --git a/GainStation13/code/modules/reagents/chemistry/reagents/fermi_fat.dm b/GainStation13/code/modules/reagents/chemistry/reagents/fermi_fat.dm index 2e4968752a..068adfc5b6 100644 --- a/GainStation13/code/modules/reagents/chemistry/reagents/fermi_fat.dm +++ b/GainStation13/code/modules/reagents/chemistry/reagents/fermi_fat.dm @@ -8,6 +8,7 @@ overdose_threshold = 50 metabolization_rate = REAGENTS_METABOLISM / 4 can_synth = FALSE //DO NOT MAKE THIS SNYTHESIZABLE, THESE CHEMS ARE SUPPOSED TO NOT BE USED COMMONLY + chemical_flags = REAGENT_ORGANIC_PROCESS | REAGENT_BIOFUEL_PROCESS overdose_threshold = 50 addiction_threshold = 100 @@ -150,6 +151,7 @@ pH = 7 metabolization_rate = REAGENTS_METABOLISM / 4 can_synth = FALSE + chemical_flags = REAGENT_ORGANIC_PROCESS | REAGENT_BIOFUEL_PROCESS overdose_threshold = 50 From d9be24df01d1f596d4c043bec4aa2bedbe069088 Mon Sep 17 00:00:00 2001 From: nullspace-industries <57872710+nullspace-industries@users.noreply.github.com> Date: Sun, 13 Apr 2025 08:54:32 +0100 Subject: [PATCH 12/13] Update neutral.dm --- code/datums/traits/neutral.dm | 11 ----------- 1 file changed, 11 deletions(-) diff --git a/code/datums/traits/neutral.dm b/code/datums/traits/neutral.dm index 8863e601b2..064febb2d2 100644 --- a/code/datums/traits/neutral.dm +++ b/code/datums/traits/neutral.dm @@ -189,14 +189,3 @@ /datum/quirk/dullahan/post_add() quirk_holder.AddComponent(/datum/component/dullahan) - -// GS13 EDIT START -/datum/quirk/biofuel - name = "Biofuel Processor" - desc = "Your robotic body is equipped to eat and digest food the same way organic crew can." - value = 0 - mob_trait = TRAIT_BIOFUEL - -/datum/quirk/biofuel/post_add() - REMOVE_TRAIT(quirk_holder, TRAIT_NO_PROCESS_FOOD, SPECIES_TRAIT) -// GS13 EDIT END From 87a507c3059dfe4f680c450dbb97fbd96a58b4b1 Mon Sep 17 00:00:00 2001 From: nullspace-industries <57872710+nullspace-industries@users.noreply.github.com> Date: Sun, 13 Apr 2025 08:56:54 +0100 Subject: [PATCH 13/13] Update traits.dm --- GainStation13/code/datums/traits.dm | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/GainStation13/code/datums/traits.dm b/GainStation13/code/datums/traits.dm index 89484a7b25..58fb96f112 100644 --- a/GainStation13/code/datums/traits.dm +++ b/GainStation13/code/datums/traits.dm @@ -148,3 +148,12 @@ species.liked_food |= MEAT else species.disliked_food &= ~MEAT + +/datum/quirk/biofuel + name = "Biofuel Processor" + desc = "Your robotic body is equipped to eat and digest food the same way organic crew can." + value = 0 + mob_trait = TRAIT_BIOFUEL + +/datum/quirk/biofuel/post_add() + REMOVE_TRAIT(quirk_holder, TRAIT_NO_PROCESS_FOOD, SPECIES_TRAIT)