* [READY]Removes Nitryl burn damage and adds Nitryl decomposition reaction (#53821)
This PR removes the burn damage you accumulate when breathing nitryl and adds a reaction to breakdown nitryl into its components(excluding bz) when in contact with oxygen under 600k. This produces small amounts of heat.
Nitryl, as it stands, is barely made or used due to the constant damage you take from breathing it, which causes damage slowdown after less than a minute of use. By making nitryl unsafe or unable to breathe with oxygen present, users must turn to pluoxium while using it in tanks, or hyper-nobilium when filling a room with it. BZ is not refunded if you waste your nitryl.
You now burp while breathing nitryl instead of gasping because it no longer directly harms you.
Breathing nitryl will cause lung damage proportional to the amount you are breathing at a rate proportional to the amount you are breathing when it makes up more than 10% of your breath.
* [READY]Removes Nitryl burn damage and adds Nitryl decomposition reaction
Co-authored-by: Capsandi <38051413+Capsandi@users.noreply.github.com>
* removes hexane (#54437)
removes hexane gas from video game
(the ability to hear dchat got removed like half a day ago) (Lemons note, it's been more then half a day)
it will speed up atmos a bit with less reactions, the reagent from the gas does the same things as halon + bz and the reaction from it is pretty similar to halon, they are both gases that exist to stop fires, i dont think we need both
* removes hexane
Co-authored-by: Fikou <piotrbryla@onet.pl>
* Activate Held Object and Drop hotkeys (Z and Q by default) now activate and store arm implant tools (#53893)
* Self_attack for arms if the hand is empty
* Oops
* Light runtime fix
This is not my runtime, but I will fix it all the same
* return better good
* How about a variable name that actually fits
* asdf
* Activate Held Object and Drop hotkeys (Z and Q by default) now activate and store arm implant tools
Co-authored-by: zxaber <37497534+zxaber@users.noreply.github.com>
* hexane refractor and rework (#54263)
Hexane no longer grant the ability to hear dchat (yep it was a bad idea) (Lemon's note: I am very dumb)
Hexane now gives the resist heat trait to fight fires better but can give you a lot of hallucinations
* hexane refractor and rework
Co-authored-by: Ghilker <42839747+Ghilker@users.noreply.github.com>
* Converts A && A.B into A?.B (#54342)
Implements the ?. operator, replacing code like A && A.B with A?.B
BYOND Ref:
When reading A?.B, it's equivalent to A && A.B except that A is only evaluated once, even if it's a complex expression like a proc call.
* Converts all A && A.B into A?.B
Co-authored-by: ZeWaka <zewakagamer@gmail.com>
* Fix some potential sleeps as detected by SpacemanDMM improvements (#54230)
overrides weren't detected by should not sleep, i think i've mostly
fixed that with SpaceManiac/SpacemanDMM#214
Some of these are wacky but overall this pr is harmless
signals shouldnt sleep even in weird 1 in a million situations or due
to other people adding bad code
overrides of changeling can_sting() use alert() and input() and that's
just too fucked for me to fix in this pr
* Fixes some potential sleeps as detected by SpacemanDMM improvements
Co-authored-by: spookydonut <github@spooksoftware.com>
* Fixes monkeycube size and organ callback and microwaves (#54095)
* fixes
* dumb runtime
* fixes eggs
* Fixes monkeycube size and organ callback and microwaves
Co-authored-by: Qustinnus <Floydje123@hotmail.com>
* Scales ethereal power capacity and interactions upwards (#53984)
Basically, all ethereal charge capacity and interactions have been scaled upwards by 20x.
Power wise, ethereals now hold up to 3000, with the max safe threshold being 2000. For reference, upgraded powercells can hold 2500, with high capacity holding 10K).
All appropriate values have been tweaked to match this change. There shouldn't be ANY sort of noticeable difference in game, aside from power sources depleting faster, and a few values which I decided to tweak for balance reasons. They are: power cell draining time is 1.5 seconds longer, and light draining time is 0.5 shorter. Also, draining cells has less of a punishment multiplier upon the cell now, (originally, the the cell lost 33x as much as you received. now its 12x). (to avoid returning to this in why its good, I did this because now that ethereals are capable of holding more, I can afford to have less of a punishment, while still maintaining a reasonable level of punishment).
Also some minor code and grammar improvements.
* Scales ethereal power capacity and interactions upwards
Co-authored-by: wesoda25 <37246588+wesoda25@users.noreply.github.com>
* Clears up issues moods and alerts on gain of NOBREATH (#53908)
Fixes up the gain of the NOBREATH trait to clear breath related moods and alerts.
Added a godmode fix up for humans also.
* Clears up issues moods and alerts on gain of NOBREATH
Co-authored-by: NightRed <nightred@gmail.com>
* Fixes scars sticking around after a limb is dismembered (#53763)
During dismemberment from wounds, some scars would stick around even though the limb was no longer attached to the person. This was because I removed the scars from the person before removing the wounds, which itself would create more scars that would still be tied to the victim's scars. This fixes that, and tidies up some related code as well. Notably, you can now see which types of wounds a detached limb is suffering from by sight. Also, I have no clue what happened before when you attached a limb with existing wounds to someone, but I've made sure it applies the wounds to the person where they left off.
I also realized I made an order of operations error in the self-treatment for broken bones (with the bone gel and surgical tape) on the bone gel step, which made failing these treatments and briefly passing out/wasting a use of the gel 38 percentage points more likely than intended. This corrects that, so the base is 25%/45% failure for severe/critical blunt wounds. It also raises the bonuses to succeeding you get from painkillers a bit since you're going through a lot of trouble for all this already.
* Fixes scars sticking around after a limb is dismembered
Co-authored-by: Ryll Ryll <3589655+Ryll-Ryll@users.noreply.github.com>
* Fully removes devil and affiliated shitcode (#53612)
Its all over the place, messy, and overall a bad enough gamemode to be removed from rotation.
A rework would have to tear out everything as is so there is no reason to allow the shitcode to live beyond tripping up everything.
* Fully removes devil and affiliated shitcode
* weh
Co-authored-by: TiviPlus <57223640+TiviPlus@users.noreply.github.com>
Co-authored-by: Azarak <azarak10@gmail.com>
* Healium is too powerful we need to nerf it! (#53766)
Healium was too stronk, nerfed it to behave like a good gas.
Added coughing and euphoria mood if breathed in small quantities to alert the player.
Sleep if it is 3 moles in the air for 3 to 5 seconds
Sleep you if is more than 6 moles and it heals you while knocked down.
Lowered the amount of healing done
Edit: It doesnt knock you out, it makes you sleep now, since the knockdown effect was so strong that people wouldn't wake up
* Healium is too powerful we need to nerf it!
Co-authored-by: Ghilker <42839747+Ghilker@users.noreply.github.com>
* Skeletons and other bloodless creatures no longer suffer repeated heart attacks. (#53838)
Added simple code guards at the start of the two remaining peices of code that are responsible from spamming heart attack messages to early return if the owner doesn't actually use their heart.
* Skeletons and other bloodless creatures no longer suffer repeated heart attacks.
Co-authored-by: Timberpoes <silent_insomnia_pp@hotmail.co.uk>
* Robits!
* stuffs
* Pfixes
* bugfixes
* smol balance
* fixxx
* hello
* Update alcohol_reagents.dm
* WHAT DOES IT WANT OF ME
* oh right those too
* Update alcohol_reagents.dm
* Update alcohol_reagents.dm
* grrr
* Remove bad reference from atmos (#53781)
Change the name from Cyrion B to Zauker due to the easy connection the bad groups in the past
Not getting a repo ban is good
* Remove bad reference from atmos
Co-authored-by: Ghilker <42839747+Ghilker@users.noreply.github.com>
* s-s-s-spaghetti to newfood (#53574)
🆑 Qustinnus
code: Moves spaghetti to new food
fix: Fixes some more size problems on food
fix: Fixes organs having wrong params
/🆑fixes#53482fixes#53572
* s-s-s-spaghetti to newfood
Co-authored-by: Qustinnus <Floydje123@hotmail.com>
* Fixes some issues with sign language & makes some things more clear (#53610)
Changes the name of the recipe for the gloves to make them more clear
Adds a note in the tongue file to make sure it's clear you SHOULDN'T SEE THAT TONGUE.
Adds a unique chat message for mimes who use sign language, to make it clearer you can't cheese as a mime
Adds a unique slurring verb for drunkards
Removes the ability for sign languagers to use megaphones, which I forgot existed in the game.
Punctuation removal now replaces all punctuation used with periods rather than with blank space, to reduce run-on sentences.
* Fixes some issues with sign language & makes some things more clear
Co-authored-by: Wallemations <66052067+Wallemations@users.noreply.github.com>
* Organ removal ends metabolizing reagents in the organ (#53619)
If an organ contains reagents it will end metabolizing them on removal.
* Organ removal ends metabolizing reagents in the organ
Co-authored-by: NightRed <nightred@gmail.com>
* limb disabled refactor (#53374)
Fixes#53219
Nukes is_disabled()
Turns several variable value changes into events.
bodypart_disabled turned into a boolean value.
BODYPART_DISABLED_WOUND turned into TRAIT_DISABLED_BY_WOUND. Not the cleanest thing out there, but it works.
Cleans some code and reduces number of updates, as only the extremities have a disabled effect.
* limb disabled refactor
Co-authored-by: Rohesie <rohesie@gmail.com>
* Merge pull request #53013 from Ghilker/reactions-go-BRRRR
The scope of this PR is to add new and interesting stuff to the atmos crew and to bring more people to it both old and new.
This PR adds 5 new gases, a bunch of reactions (i'm still working on this but suggestions are useful), new recipes and items to the atmosians arsenal. These gases have high utility for everyone, atmosians will find them useful to do their job both as firefighters and air maintenance.
FINAL GAS NAMES (will change only if a maintainer ask about it)
Healium
Proto Nitrate
Cyrion B
Halon
Hexane
reactions avaiable in this PR: https://drive.google.com/file/d/1e6DZlBaKSCNdCADKnrH3F3aDWvl0iZr4/view
What the PR add:
-Healium: a red gas, stronger than n2o if breathed, with healing properties
-Proto Nitrate: a green inert gas if breathed but with different reactions with various gases at high temperatures
-Cyrion B: a black deadly gas if breathed that decompones very fast if exposed to N2 even at minimal amounts
-Halon: a light blue gas that when used in a fire it will suck up the O2 and will help cool the room, helping fighting the fire
-Hexane: a purple gas that has the ability to filter from the air plasma and n2o, useful to clean distro from the harmful gases quickly
-Healium Crystal: a reddish crystal that when broken will explode cooling the room and removing the plasma from the air (act like a grenade)
-Proto Nitrate Crystal: a greenish crystal that when broken will explode refilling a space with O2 and N2
-Cyrion B Crystal: a blackish crystal that when broken will explode dealing damage around it
-Metallic hydrogen recipe addition (atmosian armor and fireaxe)
-Statue of an elder atmosian (for bragging rights)
-Supermatter Interactions
-More gas interactions (Roinnel have multiple and different interactions)
-New RPD device: the pressure valve, a device that allow gas flow in a pipenet if the input pressure is higher than the set pressure it's getting atomized
-Fusion is a bit "easier" to start (minor changes to the math so that the instability is more reasonable)
-pluox can be also made without using rads
-cyrion-b bounty
-all 5 gases can be sold to cargo
More stuff needs to be added (like the SM interactions(added) and probably more reactions and breathe reactions)
Please leave suggestions and feedbacks as it helps improve the PR
Atmos desperately need more content and need to be proactive in the making of its tools, with this PR is a start to more atmos content
🆑
add: hydrogen + rads = trit
add: 5 new gases
add: Healium : made from Bz + Freon + cold, it knocks people down but have healing properties
add: Proto Nitrate : made from pluox and H2 + heat, it has different reaction with a bunch of other gases
add: Cyrion B : made from hypernoblium + stimulum around 0°C, it has heavy damage if breathed but is decomposed rapidly by N2
add: Halon : made from bz + trit + cold, it reacts with O2 at high temperature removing it and cooling the air, helping putting out fires
add: Hexane : made from bz + H2 + cold, it reacts with plasma and n2o and removes them from the air mix, filtering them.
tweak: stimulum no longer require plasma
add: canister sprites, gas sprites
add: crystal from gases formation and reaction
add: new metallic hydrogen recipes
add: elder atmosian statue
add: supermatter interactions
tweak: minor changes to fusion math to make it "easier" to start
add : pluoxium can be also made without using rads (not removing the rad production one) (this also produces a minimal amount of h2)
tweak: lowered hypernoblium min temperature of reaction
tweak: metallic hydrogen production more common
add: cyrion-b bounty
add: all 5 gases are up to selling
/🆑
* Add 5 new gases, related interactions/items/content, changes parts of fusion
Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
* Process procs now properly utilize deltatime when implementing rates, timers and probabilities (#52981)
* Process procs now properly use deltatime when implementing rates, timers and probabilities
* Review fixes
* Geiger counters cleanup
Made hardsuit geiger code more similar to geiger counter code
Geiger counters are more responsive now
* Moved SS*_DT defines to subsystems.dm
* Rebase fix
* Redefined the SS*_DT defines to use the subsystem wait vars
* Implemented suggested changes by @AnturK
* Commented /datum/proc/process about the deltatime stuff
* Send delta_time as a process parameter instead of the defines
Also DTfied acid_processing
* Dtfied new acid component
* Process procs now properly utilize deltatime when implementing rates, timers and probabilities
Co-authored-by: Donkie <daniel.cf.hultgren@gmail.com>
* Performing a head transplant will now properly preserve the appearance. (#53494)
* Performing a head transplant will now properly preserve the appearance.
Co-authored-by: Jared-Fogle <35135081+Jared-Fogle@users.noreply.github.com>
* Zombies can be decapped again, un-nerfs esword/armblade/etc wounding power, improvised cauterization tweaks (#53349)
#53117 introduced a few minor bugs with the health system, in this case, zombies being un-decappable due to an oversight in the head/chest dismember requiring full death rather than either full crit or death. As zombies (or anything with TRAIT_NODEATH) can only reach hard crit and not death, this meant they couldn't be decapped/disemboweled. This fixes that. It also fixes krokodil addict zombies being unwoundable due to not having flesh or bone traits.
Next up, I originally set really high negative wound bonuses for high damage weapons like eswords and armblades since they already had high damage and dismember power by themselves. Now that dismembering is tied to wounding power (and I have a better sense of balance values), these harsh nerfs are no longer needed or wanted, and you can actually dismember people worth a damn with an esword again. I also punched up the wounding power of a few other weapons like saws and scalpels to less awful (but still not optimal) against armor.
Attacks currently have an 80% chance to hit the limb you're aiming at, which can make destroying a limb a complete pain even if the target is already down and out. As such, attacks against prone targets now have a 90% chance to hit the targeted limb, cutting the miss rate in half.
Lastly, trying to cauterize bleeding wounds with improvised tools (anything hot that isn't a cautery) is now slightly less efficient than a real cautery and requires an aggro grab on the patient to apply. No more trying to cauterize the person you just attacked with an esword because you were on help intent!
* Zombies can be decapped again, un-nerfs esword/armblade/etc wounding power, improvised cauterization tweaks
Co-authored-by: Ryll Ryll <3589655+Ryll-Ryll@users.noreply.github.com>
This changes the has_reagent check to work with stomachs.
Several supporting procs have been added to fully support this behavior.
end_metabolization will work as expected again
expose is working with INGEST items again
on_mob_add working as intended
on_mob_life has been reviewed and worked over.
Health Analyzers now show stomach contents, same with the medical kiosk.
Included the unit test to validate reagent checks.
Unit tests for the new procs on mob
Co-authored-by: NightRed <nightred@gmail.com>
* Replace two instances of "peice" with "piece" (#53431)
* fixes a number of typographical errors within the /tg/station13 codebase
Co-authored-by: Emmanuel S <mrdoomboyo@gmail.com>
* Makes the stomach important part of eating (#53228)
This puts food you eat in to the stomach.
If you do not have a stomach you can not eat, if you try to swallow anything you will spew it out.
Changes to surgeries:
Stomach pump can now be done on the living, and pushes out the reagents in the stomach.
Blood filter is a new tool and cleans the reagents out of the body.
This also makes it so that reagents that do not metabolize can accumulate in the stomach reducing how much food you can eat.
* Makes the stomach important part of eating
Co-authored-by: NightRed <nightred@gmail.com>
* The searing tool now starts as a cautery (#53303)
The experimental searing tool (both a cautery and a drill) now starts as a cautery, rather than the drill.
* The searing tool now starts as a cautery
Co-authored-by: Jared-Fogle <35135081+Jared-Fogle@users.noreply.github.com>
Replaces like 70-80% of 0 and such, as a side effect cleaned up a bunch of returns
Edit: Most left out ones are in mecha which should be done in mecha refactor already
Oh my look how clean it is
Co-authored-by: TiviPlus <TiviPlus>
Co-authored-by: Couls <coul422@gmail.com>
Co-authored-by: TiviPlus <57223640+TiviPlus@users.noreply.github.com>
Co-authored-by: Couls <coul422@gmail.com>
* Grabbing Yourself + Wound Fixes: Take 2 (+Minor Scar Changes) (#52951)
By clicking yourself with grab intent while targeting a limb of yours that's bleeding, you'll "grab" onto it with your free hand to apply pressure. This takes 1.5 seconds to do, takes up a hand while you do so, and applies a slowdown while you're holding it. In return, that limb will bleed 30% less while you're holding it (though it won't clot any faster). This stacks with the 25% reduction in bleeding you get from being horizontal, so laying down clutching your gushing gut while waiting for help is now both thematic and viable!
Other fixes and changes
I also made some other changes to wounds of various importance. Here's a quick list
-Most wound treatments now respect thick clothing/materials, so you can no longer suture slashes through spacesuits.
-Using sutures on slashes and pierces now actually use up sutures, and regen mesh must be opened to treat wounds with
-Infectious zombies (romerol) can now be wounded as intended
-Coagulant has been nerfed again to reduce bleeding less for every wound it's reducing bleeding on. This'll still need more love and attention later, but I need to find a good middle point where medipens are good for bleeding in an emergency without being a way to sidestep any and all bleeding wounds in one go.
-I added a recipe for improvised coagulant in the Wounds 2 PR using baked pulped banana peels and salglu, but then realized that recipe sucked and was overly complicated. You can now drink straight up ground/juiced banana peels to help close up slashes and piercings. Yuckm!
-You can no longer repeatedly disembowel people who have already lost their internal organs
-Whetstones now make things edged sharp rather than pointy sharp, fixing a carryover from when sharpness = 2 used to be accurate sharpness. This'll have the effect of making sharpened weapons less sucky at chopping people apart since slashing is usually more devastating than piercing
I've also made a few tweaks to scars, mostly making them a bit smaller. It now takes twice as much scar severity to reach "absolutely fucked up" when examined, and the other steps have been raised a few points as well. Minor scar examine text is a tad smaller text-wise, and the precise locations for the scars are a bit more procedural as well (more location modifiers like upper/lower/inner/outer wrist/whatever). These changes will hopefully add a bit more variety to the scarring you see on random crew members, since it's pretty easy to hit max examine severity as is.
* Grabbing Yourself + Wound Fixes: Take 2 (+Minor Scar Changes)
Co-authored-by: Ryll Ryll <3589655+Ryll-Ryll@users.noreply.github.com>
* Execution/gunpoint shots work properly with pellet clouds, buffs piercing wounds a bit (#52995)
Made a few changes to gunpoints and some related mechanics while tidying up and adding docs. Here's a quick list
-Execution (point blank help intent shot aimed at the mouth) and gunpoint shots now apply their bonuses to every pellet fired rather than only the first, generally making them gushier. They also buff wound power as well as damage
-You can no longer punch yourself while holding someone up to trigger the charged shot
-You can no longer purposely fail executions and gunpoints with pax or whatever to endlessly spike the damage in a loaded round
-Attacks with extremely high wounding power can now outright dismember limbs regardless of mangled status. The threshold is high enough that it mostly applies for admin edited weapons or execution shots with shotguns (or people with the frail quirk!)
-Piercing wounds make further wounds a bit easier to apply to give them a bit more power
-Hellguns now cost 2250 credits instead of 2000 to make them a bit harder for random crew to get
-Adds special bouncy L6 rounds for admins to use to bounce off anything and everything en-masse
Also as a minor note
Projectiles with no trajectory (meaning they were likely spawned in manually) now qdel themselves on bumping something, rather than runtiming helplessly
* Execution/gunpoint shots work properly with pellet clouds, buffs piercing wounds a bit
Co-authored-by: Ryll Ryll <3589655+Ryll-Ryll@users.noreply.github.com>
* Merge pull request #53020 from Qustinnus/fatgrowing
[READY] Vatgrowing: Third time's the charm
* [READY] Vatgrowing: Third time's the charm
Co-authored-by: 81Denton <32391752+81Denton@users.noreply.github.com>
* Overlay lighting component (#52413)
Sparks no longer lag, projectile beams move super smoothly, same with mobs and whatnot. This also allows for easy expansion into directional lights, field-of-view, wee-woo rotating lights or whatever.
It does have a downside: things right-clicked or checked through the alt+click tab will show the light overlay:
This is a BYOND limitation, very well worth it IMO.
🆑
add: Smooth movable lighting system implemented. Projectiles, sparks, thrown flashlights or moving mobs with lights should be much smoother and less laggy.
balance: Light sources no longer stack in range, though they still do in intensity.
/🆑
* Overlay lighting component
Co-authored-by: Rohesie <rohesie@gmail.com>