diff --git a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Medicine.dm b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Medicine.dm
index 353df9095c..681929691a 100644
--- a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Medicine.dm
+++ b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Medicine.dm
@@ -400,6 +400,49 @@
M.heal_organ_damage(30 * removed, 30 * removed * chem_effective)
M.adjustToxLoss(-30 * removed * chem_effective)
+/datum/reagent/mortiferin
+ name = "Mortiferin"
+ id = "mortiferin"
+ description = "A liquid compound based upon those used in cloning. Utilized in cases of toxic shock. May cause liver damage."
+ taste_description = "meat"
+ reagent_state = LIQUID
+ color = "#6b4de3"
+ metabolism = REM * 0.5
+ mrate_static = TRUE
+ scannable = 1
+
+/datum/reagent/mortiferin/on_mob_life(var/mob/living/carbon/M, var/alien, var/datum/reagents/metabolism/location)
+ if(M.stat == DEAD && M.has_modifier_of_type(/datum/modifier/bloodpump_corpse))
+ affects_dead = TRUE
+ else
+ affects_dead = FALSE
+
+ . = ..(M, alien, location)
+
+/datum/reagent/mortiferin/affect_blood(var/mob/living/carbon/M, var/alien, var/removed)
+ if(M.bodytemperature < (T0C - 10) || (M.stat == DEAD && M.has_modifier_of_type(/datum/modifier/bloodpump_corpse)))
+ var/chem_effective = 1 * M.species.chem_strength_heal
+ if(alien == IS_SLIME)
+ if(prob(10))
+ to_chat(M, "It's so cold. Something causes your cellular mass to solidify sporadically, resulting in uncontrollable twitching.")
+ chem_effective = 0.5
+ M.Weaken(10)
+ M.silent = max(M.silent, 10)
+ M.make_jittery(4)
+ if(M.stat != DEAD)
+ M.adjustCloneLoss(-5 * removed * chem_effective)
+ M.adjustOxyLoss(-10 * removed * chem_effective)
+ M.adjustToxLoss(-20 * removed * chem_effective)
+
+ if(ishuman(M))
+ var/mob/living/carbon/human/H = M
+ var/obj/item/organ/internal/liver/L = H.internal_organs_by_name[O_LIVER]
+ if(istype(L) && prob(5))
+ if(L.robotic >= ORGAN_ROBOT)
+ return
+
+ L.take_damage(rand(1,3) * removed)
+
/datum/reagent/necroxadone
name = "Necroxadone"
id = "necroxadone"
@@ -410,18 +453,11 @@
metabolism = REM * 0.5
mrate_static = TRUE
scannable = 1
-
-/datum/reagent/necroxadone/on_mob_life(var/mob/living/carbon/M, var/alien, var/datum/reagents/metabolism/location)
- if(M.stat == DEAD && M.has_modifier_of_type(/datum/modifier/bloodpump_corpse))
- affects_dead = TRUE
- else
- affects_dead = FALSE
-
- . = ..(M, alien, location)
+ affects_dead = TRUE
/datum/reagent/necroxadone/affect_blood(var/mob/living/carbon/M, var/alien, var/removed)
+ var/chem_effective = 1 * M.species.chem_strength_heal
if(M.bodytemperature < 170 || (M.stat == DEAD && M.has_modifier_of_type(/datum/modifier/bloodpump_corpse)))
- var/chem_effective = 1 * M.species.chem_strength_heal
if(alien == IS_SLIME)
if(prob(10))
to_chat(M, "It's so cold. Something causes your cellular mass to harden sporadically, resulting in seizure-like twitching.")
@@ -433,6 +469,12 @@
M.adjustCloneLoss(-5 * removed * chem_effective)
M.adjustOxyLoss(-20 * removed * chem_effective)
M.adjustToxLoss(-40 * removed * chem_effective)
+ M.adjustCloneLoss(-15 * removed * chem_effective)
+
+ else
+ M.adjustToxLoss(-25 * removed * chem_effective)
+ M.adjustOxyLoss(-10 * removed * chem_effective)
+ M.adjustCloneLoss(-7 * removed * chem_effective)
/* Painkillers */
diff --git a/code/modules/reagents/Chemistry-Recipes.dm b/code/modules/reagents/Chemistry-Recipes.dm
index f5f4d17587..9adb2558b9 100644
--- a/code/modules/reagents/Chemistry-Recipes.dm
+++ b/code/modules/reagents/Chemistry-Recipes.dm
@@ -428,6 +428,14 @@
catalysts = list("phoron" = 5)
result_amount = 2
+/datum/chemical_reaction/mortiferin
+ name = "Mortiferin"
+ id = "mortiferin"
+ result = "mortiferin"
+ required_reagents = list("cryptobiolin" = 1, "clonexadone" = 1, "corophizine" = 1)
+ result_amount = 2
+ catalysts = list("phoron" = 5)
+
/datum/chemical_reaction/spaceacillin
name = "Spaceacillin"
id = "spaceacillin"
diff --git a/html/changelogs/mechoid - mortiferin.yml b/html/changelogs/mechoid - mortiferin.yml
new file mode 100644
index 0000000000..00ce2ca033
--- /dev/null
+++ b/html/changelogs/mechoid - mortiferin.yml
@@ -0,0 +1,37 @@
+################################
+# Example Changelog File
+#
+# Note: This file, and files beginning with ".", and files that don't end in ".yml" will not be read. If you change this file, you will look really dumb.
+#
+# Your changelog will be merged with a master changelog. (New stuff added only, and only on the date entry for the day it was merged.)
+# When it is, any changes listed below will disappear.
+#
+# Valid Prefixes:
+# bugfix
+# wip (For works in progress)
+# tweak
+# soundadd
+# sounddel
+# rscadd (general adding of nice things)
+# rscdel (general deleting of nice things)
+# imageadd
+# imagedel
+# maptweak
+# spellcheck (typo fixes)
+# experiment
+#################################
+
+# Your name.
+author: Mechoid
+
+# Optional: Remove this file after generating master changelog. Useful for PR changelogs that won't get used again.
+delete-after: True
+
+# Any changes you've made. See valid prefix list above.
+# INDENT WITH TWO SPACES. NOT TABS. SPACES.
+# SCREW THIS UP AND IT WON'T WORK.
+# Also, all entries are changed into a single [] after a master changelog generation. Just remove the brackets when you add new entries.
+# Please surround your changes in double quotes ("), as certain characters otherwise screws up compiling. The quotes will not show up in the changelog.
+changes:
+ - rscadd: "Mortiferin added in place of old Necroxadone as a normal chem recipe."
+ - tweak: "Necroxadone changed to a more powerful alternative to Mortiferin which works even on corpses without bloodflow."