Horror modifier adjusments (#19544)

* Horror modifier adjusments

Removes nutrition drain

Makes it so your organs mutate every 200 seconds you've been under it instead of checking life ticks.

Makes it so only 1-2 organs get replaced per 200 seconds instead of 2-3
Makes redspace injection chance much lower (3%->0.5%)
Makes it so you won't repeatedly stab someone with fleshy spread if they already have it.

Makes exiting battle stance while infected a bit better.

Armor now lasts 1 minute. Lowers after 1 minute if health and the such is fixed.

Allows using bruise/ointment on changeling flesh armor...it's flesh and an extension of them.

Makes the fleshy virus chance of organ mutation from 5 to 0.5

Fixes GBS to be actually curable.

Implements COMSIG_ITEM_ATTACK_ZONE and COMSIG_ITEM_ATTACK

* Update redspace_corruption.dm

* Update vorestation.dme

* Update horror.dm
This commit is contained in:
Cameron Lennox
2026-06-25 11:03:17 -04:00
committed by GitHub
parent bb47d45749
commit 8d1c3f319a
15 changed files with 743 additions and 737 deletions
-2
View File
@@ -56,8 +56,6 @@
RegisterSignal(parent, COMSIG_MOVABLE_IMPACT_ZONE, PROC_REF(try_infect_impact_zone))
RegisterSignal(parent, COMSIG_ATOM_EXTRAPOLATOR_ACT, PROC_REF(extrapolation))
if(isitem(parent))
RegisterSignal(parent, COMSIG_ITEM_ATTACK, PROC_REF(try_infect_attack))
if(isitem(parent))
RegisterSignal(parent, COMSIG_ITEM_ATTACK_ZONE, PROC_REF(try_infect_attack_zone))
RegisterSignal(parent, COMSIG_ITEM_ATTACK, PROC_REF(try_infect_attack))
+1 -1
View File
@@ -11,7 +11,7 @@
agent = "Gravitokinetic Bipotential SADS+"
viable_mobtypes = list(/mob/living/carbon/human)
danger = DISEASE_PANDEMIC
disease_flags = CAN_NOT_POPULATE
disease_flags = CURABLE | CAN_NOT_POPULATE
/datum/disease/gbs/stage_act()
if(!..())
+20 -17
View File
@@ -15,6 +15,7 @@
danger = DISEASE_BIOHAZARD
disease_flags = CAN_NOT_POPULATE
stage_prob = 1
discovery_threshold = 0 //Doesn't show up on medical HUDs
/datum/disease/fleshy_spread/stage_act()
if(!..())
@@ -50,25 +51,27 @@
if(!infected.has_modifier_of_type(/datum/modifier/redspace_drain))
infected.add_modifier(/datum/modifier/redspace_drain/lesser)
var/datum/modifier/redspace_drain/drain_modifier = infected.get_modifier_of_type(/datum/modifier/redspace_drain/lesser)
if(drain_modifier && prob(5))
if(drain_modifier && prob(0.5))
drain_modifier.choose_organs(1)
if(5)
//You waited WAY too long to get this cured. You're permanently infected now. Technically, this means you're now 'infectious'
if(infected.mind?.assigned_role == JOB_CHAPLAIN)
to_chat(infected, span_cult("An alien presence attempts to prod at your mind, but your faith shields you from its full effects, purging the corruption."))
cure()
return
if(infected.species.flags & NO_SLEEVE)
to_chat(infected, span_cult("An alien presence attempts to prod at your mind, but at the final hour the effects of the corruption subsides."))
cure()
return
if(!infected.has_modifier_of_type(/datum/modifier/redspace_corruption))
infected.add_modifier(/datum/modifier/redspace_corruption)
to_chat(infected, span_cult("You feel something latch into your mind, something melding with every fiber of your being."))
to_chat(infected, span_cult("Every one of your cells scream out in agony as they're individually overtaken by a foreign entity."))
to_chat(infected, span_cult("Your body feels foreign, like you're an invader in another's body."))
to_chat(infected, span_cult("In the back of your mind, you can hear a voice reaching out to you, pleading for you to come back. To come and never leave."))
cure()
//You waited WAY too long to get this cured. You're permanently infected now. This means you're now 'infectious'
if(!(virus_modifiers & DORMANT))
if(infected.mind?.assigned_role == JOB_CHAPLAIN)
to_chat(infected, span_cult("An alien presence attempts to prod at your mind, but your faith shields you from its full effects, purging the corruption."))
cure()
return
if(infected.species.flags & NO_SLEEVE)
to_chat(infected, span_cult("An alien presence attempts to prod at your mind, but at the final hour the effects of the corruption subsides."))
cure()
return
if(!infected.has_modifier_of_type(/datum/modifier/redspace_corruption))
infected.add_modifier(/datum/modifier/redspace_corruption)
to_chat(infected, span_cult("You feel something latch into your mind, something melding with every fiber of your being."))
to_chat(infected, span_cult("Every one of your cells scream out in agony as they're individually overtaken by a foreign entity."))
to_chat(infected, span_cult("Your body feels foreign, like you're an invader in another's body."))
to_chat(infected, span_cult("In the back of your mind, you can hear a voice reaching out to you, pleading for you to come back. To come and never leave."))
virus_modifiers |= DORMANT //Become dormant. This keeps antibodies from being taken from us.
return
else
return