From 972e517cfecb4fb2e801865c6a3652d0b6db88da Mon Sep 17 00:00:00 2001 From: SkyratBot <59378654+SkyratBot@users.noreply.github.com> Date: Sun, 4 Feb 2024 14:01:05 +0100 Subject: [PATCH] [MIRROR] Less laughing from trace nitrous (#26341) * Less laughing from trace nitrous (#81223) ## About The Pull Request Re-open of #80808 post embargo I've increased the minimum amount of n2o required in the air to cause giggling. Threshold is still well below the para and sleep values. This should stop people randomly getting drugged and giggly from trace amounts of gas. I'm not gonna lie I had no idea how to fully dial this in, so the numbers are an arbitrary ~~10x increase from .01 mol to .1 mol~~ 8x increase from .01 mol to .08 mol. ## Why It's Good For The Game After "extensive" real life testing I've determined that giggling and euphoria from trace amounts of the gas is unrealistic. Also it would be a lot less annoying. @ Cheshify also called it qol so I'm sticking with that. 220f1c0470cef181192facef1374bf5c ## Changelog :cl: qol: Increased threshold of trace n2o required to make euphoria and giggles happen. /:cl: * Less laughing from trace nitrous --------- Co-authored-by: Swift --- code/modules/surgery/organs/internal/lungs/_lungs.dm | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/code/modules/surgery/organs/internal/lungs/_lungs.dm b/code/modules/surgery/organs/internal/lungs/_lungs.dm index 874ec320648..78afbd9871e 100644 --- a/code/modules/surgery/organs/internal/lungs/_lungs.dm +++ b/code/modules/surgery/organs/internal/lungs/_lungs.dm @@ -47,6 +47,7 @@ var/safe_plasma_min = 0 ///How much breath partial pressure is a safe amount of plasma. 0 means that we are immune to plasma. var/safe_plasma_max = 0.05 + var/n2o_detect_min = 0.08 //Minimum n2o for effects var/n2o_para_min = 1 //Sleeping agent var/n2o_sleep_min = 5 //Sleeping agent var/BZ_trip_balls_min = 1 //BZ gas @@ -503,12 +504,12 @@ /obj/item/organ/internal/lungs/proc/too_much_n2o(mob/living/carbon/breather, datum/gas_mixture/breath, n2o_pp, old_n2o_pp) if(n2o_pp < n2o_para_min) // Small amount of N2O, small side-effects. - if(n2o_pp <= 0.01) - if(old_n2o_pp > 0.01) + if(n2o_pp <= n2o_detect_min) + if(old_n2o_pp > n2o_detect_min) return BREATH_LOST return // No alert for small amounts, but the mob randomly feels euphoric. - if(old_n2o_pp >= n2o_para_min || old_n2o_pp <= 0.01) + if(old_n2o_pp >= n2o_para_min || old_n2o_pp <= n2o_detect_min) breather.clear_alert(ALERT_TOO_MUCH_N2O) if(prob(20))