From a2ac6b6873a9347cf1d9cf34361a551f4890dd24 Mon Sep 17 00:00:00 2001 From: SkyratBot <59378654+SkyratBot@users.noreply.github.com> Date: Thu, 17 Aug 2023 00:20:41 +0200 Subject: [PATCH] [MIRROR] Removes Liver Damage From Spider Toxins, Reduces Injection Amount for Tangle Spider [MDB IGNORE] (#23128) * Removes Liver Damage From Spider Toxins, Reduces Injection Amount for Tangle Spider (#77550) ## About The Pull Request This PR adds a new value to toxins called liver_damage_multiplier. As you might have guessed, this value modifies how much liver damage processing the toxin will do, and it is default at 1. Spider toxins now have this value set to 0, as having their toxins murdering livers isn't an intentional part of their gameplay loop. Tangle spiders also now inject half the amount of acid they used to. It was actually really strong compared to the other toxin types and wasn't intentional according to Seth. ## Why It's Good For The Game Liver damage is very strong when it comes to spiders, but it isn't considered at all in their balancing. Removing it makes the actual toxin damage the threat and not the liver damage. Tangle Spider isn't supposed to have high toxin damage, but because of it injecting acid, it did more damage than the other spider types and was requested to be have the injection amount reduced by Seth. ## Changelog :cl: balance: Hunter and viper spider toxins no longer deal liver damage. balance: Tangle spider's acid injection per bite reduced from 5 to 2.5. /:cl: * Removes Liver Damage From Spider Toxins, Reduces Injection Amount for Tangle Spider --------- Co-authored-by: IndieanaJones <47086570+IndieanaJones@users.noreply.github.com> --- .../basic/space_fauna/spider/giant_spider/giant_spiders.dm | 2 +- code/modules/reagents/chemistry/reagents/toxin_reagents.dm | 4 ++++ code/modules/surgery/organs/internal/liver/_liver.dm | 2 +- 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/code/modules/mob/living/basic/space_fauna/spider/giant_spider/giant_spiders.dm b/code/modules/mob/living/basic/space_fauna/spider/giant_spider/giant_spiders.dm index b6736a9d2a4..ec0499e13d0 100644 --- a/code/modules/mob/living/basic/space_fauna/spider/giant_spider/giant_spiders.dm +++ b/code/modules/mob/living/basic/space_fauna/spider/giant_spider/giant_spiders.dm @@ -202,7 +202,7 @@ health = 55 melee_damage_lower = 1 melee_damage_upper = 1 - poison_per_bite = 5 + poison_per_bite = 2.5 poison_type = /datum/reagent/toxin/acid obj_damage = 40 web_speed = 0.25 diff --git a/code/modules/reagents/chemistry/reagents/toxin_reagents.dm b/code/modules/reagents/chemistry/reagents/toxin_reagents.dm index fcc3c365b50..a9735cd7e75 100644 --- a/code/modules/reagents/chemistry/reagents/toxin_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/toxin_reagents.dm @@ -11,6 +11,8 @@ chemical_flags = REAGENT_CAN_BE_SYNTHESIZED ///The amount of toxin damage this will cause when metabolized (also used to calculate liver damage) var/toxpwr = 1.5 + ///The amount to multiply the liver damage this toxin does by (Handled solely in liver code) + var/liver_damage_multiplier = 1 ///won't produce a pain message when processed by liver/life() if there isn't another non-silent toxin present if true var/silent_toxin = FALSE ///The afflicted must be above this health value in order for the toxin to deal damage @@ -1254,12 +1256,14 @@ name = "Spider Toxin" description = "A toxic chemical produced by spiders to weaken prey." health_required = 40 + liver_damage_multiplier = 0 /datum/reagent/toxin/viperspider name = "Viper Spider Toxin" toxpwr = 5 description = "An extremely toxic chemical produced by the rare viper spider. Brings their prey to the brink of death and causes hallucinations." health_required = 10 + liver_damage_multiplier = 0 /datum/reagent/toxin/viperspider/on_mob_life(mob/living/carbon/affected_mob, seconds_per_tick, times_fired) affected_mob.adjust_hallucinations(10 SECONDS * REM * seconds_per_tick) diff --git a/code/modules/surgery/organs/internal/liver/_liver.dm b/code/modules/surgery/organs/internal/liver/_liver.dm index 78cebab11b7..f871fbd84db 100644 --- a/code/modules/surgery/organs/internal/liver/_liver.dm +++ b/code/modules/surgery/organs/internal/liver/_liver.dm @@ -147,7 +147,7 @@ amount += belly.reagents.get_reagent_amount(toxin.type) // a 15u syringe is a nice baseline to scale lethality by - liver_damage += ((amount/15) * toxin.toxpwr) / liver_resistance + liver_damage += ((amount/15) * toxin.toxpwr * toxin.liver_damage_multiplier) / liver_resistance if(provide_pain_message != HAS_PAINFUL_TOXIN) provide_pain_message = toxin.silent_toxin ? HAS_SILENT_TOXIN : HAS_PAINFUL_TOXIN