* Adds a candle box crate (#78593)
## About The Pull Request
Adds a candle box crate that you can order. 🕯️
## Why It's Good For The Game
The chaplain only starts with a few boxes with a RNG way (scouring
maintenance) to acquire any more
## Changelog
🆑
add: Added a candle box crate for all your candle needs!
/🆑
* Adds a candle box crate
---------
Co-authored-by: admeeer <alexpeltier@hotmail.com>
* basic mobs ranged attacks can check for friendly fire (#78451)
## About The Pull Request
basic mobs can check for friends in the way before firing a attack. if
they find someone in the way they will try to adjust their position so
their friends dont get hit by the projectiles
## Why It's Good For The Game
nice optional feature people can put on the monsters they create
## Changelog
🆑
add: added ranged attack friendly fire checks for basic mobs. minebots
and hivebots will now try to avoid shooting their friends
/🆑
* basic mobs ranged attacks can check for friendly fire
---------
Co-authored-by: Ben10Omintrix <138636438+Ben10Omintrix@users.noreply.github.com>
* Removes `CANPUSH` status flag from lavaland basic mobs (#78531)
## About The Pull Request
Title. This makes it so every lavaland mob is now unable to be pushed by
moving into them while on combat mode. Namely this helps with watchers,
as they have gained this vulnerability when they've got the basic bitch
treatment — it caused their _look away_ ability to be easily cancellable
by just pushing them. ~~you can still just fuckin' grab them to do that
and i think it's fair game~~
Lobsters and brimdemons are also affected, which i'm not sure how
exactly this affects their gameplay... but it is what it is.
## Why It's Good For The Game
Previous behavior restored, mobs stop being bullied by literally running
into them.
* Removes `CANPUSH` status flag from lavaland basic mobs
---------
Co-authored-by: Sealed101 <cool.bullseye@yandex.ru>
* Advanced Plastic Surgery 2.0, It's rare now. (#78504)
## About The Pull Request
A revival of #76508 which got closed due to it eating up genetics niche.
This PR fixess that issue by seperating the surgery into two. the normal
roundstart plastic surgery and advanced plastic surgery. both works
identically with the one exception being that the advanced one allows
the feature that the last PR tried to add. which is to allow surgery to
mimic people in photographs.
the regular one remains as-is.
The disk containing the surgery can be found in a lot of places, a
role-restricted item to doctors and roboticists for 1TC, as a rare maint
loot and BEPIS technode reward
## Why It's Good For The Game
Opportunity for more fun gimmicks, ammo for BB's and paranoia, staple of
SS13 gameplay.
This also retroactively buffs forensic scanners and records since it
really only changes your name and voice. You can change your hair all
you want but anything more than that is a trip to genetics. overall
allows for more engaging gameplay while not detracting from genetics
niche with how niche and rare it would appear in rounds.
## Changelog
🆑
add: Adds an advanced plastic surgery procedure, allowing you to imitate
people in pictures. Simply hold a picture in your offhand of the person
you wish to imitate as while conducting the surgery! Remember, it's not
foolproof, it only changes your name and voice!
adds: You can obtain the disk containing the afromentioned surgery. as a
role-restricted item to doctors and roboticists for 1TC, as a rare maint
loot and BEPIS technode reward
/🆑
---------
Co-authored-by: ATH1909 <42606352+ATH1909@ users.noreply.github.com>
Co-authored-by: MrMelbert <51863163+MrMelbert@ users.noreply.github.com>
* Advanced Plastic Surgery 2.0, It's rare now.
---------
Co-authored-by: Singul0 <127663818+Singul0@users.noreply.github.com>
Co-authored-by: ATH1909 <42606352+ATH1909@ users.noreply.github.com>
Co-authored-by: MrMelbert <51863163+MrMelbert@ users.noreply.github.com>
* Fixes Intellicards in computers being deleted when the computer is destroyed (#78475)
## About The Pull Request
As described in #78467, if an Intellicard is inserted into a laptop or
stationary modular computer, and said computer is destroyed, then the
Intellicard (as well as any AI on it) is instantly deleted. This PR
makes the Intellicard get dropped instead. Closes#78467.
## Why It's Good For The Game
Bugs are bad.
## Changelog
🆑
fix: Intellicards in computers are no longer deleted when the computer
is destroyed.
fix: Modular consoles can now be deconstructed by right clicking with a
wrench.
/🆑
* Fixes Intellicards in computers being deleted when the computer is destroyed
---------
Co-authored-by: GPeckman <21979502+GPeckman@users.noreply.github.com>
* Stops metalgen destructing indestructible turfs (#78534)
## About The Pull Request
Adds a check to metalgen transmutation to allow for blacklisting of
types. Adds indestructible open and closed turfs to the blacklist to
prevent an exploit where they are transmuted to plasma and burned to
remove them.
## Why It's Good For The Game
Exploits are bad.
## Changelog
🆑
fix: Metalgen can no longer be used to transmute indestructible turfs.
/🆑
---------
Co-authored-by: Jacquerel <hnevard@ gmail.com>
* Stops metalgen destructing indestructible turfs
---------
Co-authored-by: Thunder12345 <Thunder12345@users.noreply.github.com>
Co-authored-by: Jacquerel <hnevard@ gmail.com>
* [NO GBP]Zap strength is now measured in joules. NT CIMs will now display the power transmission from the zaps, accounting for every factor. (#78310)
## About The Pull Request
Zap strength is now measured in joules. Scales everything to account for
this.
NT CIMS will now display the zap power transmission in watts, instead of
a modifier. This will allow you to actually see how much power the
supermatter is generating accurately, without knowledge of hidden
multipliers. NT CIMs will also show the internal energy gain from heat
in eV/K/s, so you can easily figure out how internal energy gain works,
and how much energy gain it actually gives. The internal energy
measurement will also adjust its prefix. Internal energy is now a
measure of internal energy, rather than internal energy density,
removing the "/cm^3".
Here is what it looked like:

This image was created on an earlier commit where the numbers were wrong
due to a hidden multiplier that got removed later, so keep that in mind.
Also fixes inactive supermatters unnecessarily scaling delta time. The
high energy (>5GeV) additional zaps now also scale with delta time.
The code in this PR is absolute garbage trash and there are some major
issues, so I'm drafting this for now.
## Why It's Good For The Game
Makes it more clear what the factors add, and also how much power the SM
is releasing. Zap strength being measured in joules will simplify a lot
of things, making power balance more clear rather than guessimating.
Adjusting the prefix for internal energy is just the natural thing to
do. The per cubic centimeter part of internal energy would imply it is
energy density, however it is functionally not. It would probably
confuse people thinking the volume of the turf or the size of the
supermatter actually matters for what the internal energy does, when it
does not (except for gas absorption I guess, which changes heating/mol
requirements, but nothing else), so I am removing that part.
## Changelog
🆑
qol: NT CIMs shows how much power the supermatter is releasing.
qol: NT CIMs internal energy will adjust its prefix.
qol: Energy displays (such as multitooling grid) will use the full range
of SI prefixes available, up to the peta prefix if you somehow managed
to reach that.
del: Removes the per cubic centimeter part of internal energy.
fix: Fix unnecessary delta time scaling on inactive supermatters.
fix: Fix high energy zaps not scaling with delta time.
fix: Fixes grounding rods lying about potential power you can generate.
code: Convert supermatter_zap() and tesla_zap() zap_str argument unit to
be in joules, and scales everything that uses that argument.
/🆑
* [NO GBP]Zap strength is now measured in joules. NT CIMs will now display the power transmission from the zaps, accounting for every factor.
---------
Co-authored-by: Pickle-Coding <58013024+Pickle-Coding@users.noreply.github.com>
* Fixes halloween spooky meteors (#78543)
## About The Pull Request
This fixes the "spooky" meteors that get summoned during catastrophic
meteor waves during the Halloween event.
By adding a weight value to the SPOOKY meteor list, the meteor wave
spawning event process will properly pick_weight the path it's looking
for.
## Why It's Good For The Game
Fixes a runtime case I hypothesized might happen.
## Changelog
🆑 Rhials
fix: "Spooky" meteors will now properly spawn during halloween.
/🆑
* Fixes halloween spooky meteors
---------
Co-authored-by: Rhials <28870487+Rhials@users.noreply.github.com>
* Tweak greyscale JSON test error message (#78469)
## About The Pull Request
Slightly changes the wording of the greyscale JSON check error.
The previous creates messages such as "Expected 1 but only found 3."
which implies it isn't finding enough, which isn't always the case.
## Changelog
🆑 LT3
spellcheck: Improved wording in greyscale JSON error message
/🆑
* Tweak greyscale JSON test error message
---------
Co-authored-by: lessthanthree <83487515+lessthnthree@users.noreply.github.com>
* Patches some cargo shuttle Centcom exploits. (#78540)
## About The Pull Request
Globally prevents anything blacklisted from actually getting to the
Centcom z-level by shipping blacklisted items back to their location of
origin just before the shuttle docks at Centcom.
Everything rejected in this way is logged and admins are given an alert
to let them know something funky went on.


## Why It's Good For The Game
Hopefully universally patches all current methods of getting to the
Centcom Z-level via getting on the cargo shuttle mid-transit.
Individual methods to accomplish this can still be patched individually,
but this tries to blanket prevent such exploits from working on a more
fundamental level.
## Changelog
🆑
fix: Centcom now rejects contraband that somehow makes it way onto the
cargo shuttle mid-transit and returns it.
/🆑
* Patches some cargo shuttle Centcom exploits.
---------
Co-authored-by: Timberpoes <silent_insomnia_pp@hotmail.co.uk>
* Changelings can now speak through their decoy brain if placed in an MMI (#78342)
## About The Pull Request
- If a changeling's decoy brain is placed in an MMI, they will now be
prompted to speak through it.
- They can speak through the decoy even if incapacitated or dead (or
fake-dead).
https://github.com/tgstation/tgstation/assets/51863163/804bd48a-c4b8-4feb-b021-019ea70e4b8e
## Why It's Good For The Game
The oft-controversial ling MMI test has been brought up time and time
again so I figure I throw my cards in for a solution.
We want as few ways as possible for people to hard and fast discover
whether someone is an antag, especially changling which is supposed to
revel in paranoia. This soft-patches out a big way, the MMI test, in
which you place a ling's brain in an MMI to determine if it's vestigial
and therefore, a ling.
Now the ling player can provide some benefit of the doubt by speaking
through the brain as normal, appearing active while actually in their
body still.
## Changelog
🆑 Melbert
add: Changelings can now speak through their decoy brain if it is placed
in an MMI, to maintain the illusion they are actually dead and have been
debrained.
/🆑
* Changelings can now speak through their decoy brain if placed in an MMI
---------
Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
* Added the Hippocrates bust to medbay heirlooms (#78121)
## About The Pull Request
Remade from #77961 because coders dont like bloat in prs
Added the Hippocrates bust to medbay heirlooms. Paramedics don't get
one.
You can now swear the Hippocratic oath with these busts! It'll give you
pacifism but nothing else. The process is reversible.
There's a very small chance that the Hippocrates bust was once wielded
by a certain German doctor. This chance is increased for coroner
heirlooms.
## Why It's Good For The Game
> Added the Hippocrates bust to medbay heirlooms. Paramedics don't get
one.
I got this idea and I just couldn't get it out of my head, it's too
funny. Paramedics don't get one because they're powergamers and laugh at
the Oath, and also it doesn't feel like a paramedic thing.
> You can now swear the Hippocratic oath with these busts! It'll give
you pacifism but nothing else. The process is reversible.
This is just a little fun thing you can choose to do, i think it'd be
cute to see doctors swearing the oath in medbay. Plus it's reversible
which can be even funnier depending on the occassion.
> There's a very small chance that the Hippocrates bust was once wielded
by a certain German doctor. This chance is increased for coroner
heirlooms.
We DO already have precedent for references with the entrenching tool
after all. The buff isn't all that special in reality, getting a medical
hud while in your hand is... basically irrelevant for the roles that
literally spawn with a med hud? It's just for accuracy and rule of
cool's sake.
## Changelog
🆑
add: Added the Hippocrates bust to medbay heirlooms. Paramedics don't
get one.
add: You can now swear the Hippocratic oath with these busts! It'll give
you pacifism but nothing else. The process is reversible.
add: There's a very small chance that the Hippocrates bust was once
wielded by a certain German doctor. This chance is increased for coroner
heirlooms.
/🆑
---------
Co-authored-by: Arturlang <24881678+Arturlang@ users.noreply.github.com>
* Added the Hippocrates bust to medbay heirlooms
---------
Co-authored-by: carlarctg <53100513+carlarctg@users.noreply.github.com>
Co-authored-by: Arturlang <24881678+Arturlang@ users.noreply.github.com>
* Ephedrine small nerf (#78158)
## About The Pull Request
Nerfs Ephedrine so you can get hand spasms when using 100% purity
Ephedrine
## Why It's Good For The Game
Pure Ephedrine in its current state is really strong, easy to make and
has negligible downsides, This aims to tackle that
## Changelog
🆑
balance: Makes it so Ephedrine spasms have a 10 * (1.5 - purity)% chance
per second to happen, Adding a downside to pure Ephedrine
/🆑
* Ephedrine small nerf
---------
Co-authored-by: starrm4nn <139372157+starrm4nn@users.noreply.github.com>
* Fixes beams rendering below mobs by default. The fishing line is no longer emissive. (#78170)
## About The Pull Request
That of beams being layered below mobs has been a minor issue ever since
that mess that is FoV was implemented (with the exception of chain
lighting of the 'lighting' holoparasite type). I'm changing the plane of
beams to GAME_PLANE_UPPER_FOV_HIDDEN along a couple other things.
## Why It's Good For The Game
Re-read the above section, also fishing lines shouldn't generally glow
in the dark like very thin lightsabers, and them being layered below
mobs has always been a peeve to me.
## Changelog
🆑
fix: Fixed beams rendering below mobs by default.
fix: The fishing line beam is no longer emissive (it doesn't glow in the
dark).
/🆑
---------
Co-authored-by: Zephyr <12817816+ZephyrTFA@ users.noreply.github.com>
* Fixes beams rendering below mobs by default. The fishing line is no longer emissive.
---------
Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
Co-authored-by: Zephyr <12817816+ZephyrTFA@ users.noreply.github.com>
* Hemostat/cautery steps now heal their targetted bodypart instead of a random one (#78380)
## About The Pull Request
Title summarizes all.
## Why It's Good For The Game
Fixes#48432
@ Sealed101
## Changelog
🆑 distributivgesetz
fix: Clamping/closing a wound should now heal the bodypart that was
damaged instead of a random one.
/🆑
* Hemostat/cautery steps now heal their targetted bodypart instead of a random one
---------
Co-authored-by: distributivgesetz <distributivgesetz93@gmail.com>
* Fixes Epinephrine Healing (#78479)
## About The Pull Request
As described in #78474, epinephrine wasn't properly updating health when
it healed people in crit. This meant that people stayed in crit despite
not being damaged enough to reach the crit threshold (at least until
something else updated their health). This fixes that. Closes#78474.
## Why It's Good For The Game
Epinephrine should actually get people out of crit.
## Changelog
🆑
fix: Epinephrine will now update health properly.
/🆑
* Fixes Epinephrine Healing
---------
Co-authored-by: GPeckman <21979502+GPeckman@users.noreply.github.com>
* Allows admins to overrule God (#78429)
## About The Pull Request
Adds a "manage religious sect" verb to the "game" menu of the admin
panel.
It can be used to assign the chaplain's sect if they haven't picked one
yet, or reassign it (to a different one, or to nothing) if they already
have.
This is likely mostly going to be used for ahelps where someone
misclicks or suddenly logs off and wants to be replaced by a different
chaplain with different ideas.
## Why It's Good For The Game
Admins asked me to make it
## Changelog
🆑
admin: Admins can now reset or modify the chaplain's sect from a UI
panel
/🆑
* Allows admins to overrule God
* Updates modular to use the reset signal for nulling the altars instead
---------
Co-authored-by: Jacquerel <hnevard@gmail.com>
Co-authored-by: Giz <13398309+vinylspiders@users.noreply.github.com>
* Basic Mob Brimdemon (#78424)
## About The Pull Request
Fixes#71330
The brimdemon was basically already perfect (well, it has a novel means
of attacking) so I didn't get too fancy with this one, it's _largely_
just a straightforward conversion.
Following this change it's a little slower to back off, but better at
lining up with people in order to blast them. Additionally, its beam is
now a mob ability so you can give it to other mobs if you so desire.
Because I can't help doing a _little_ tinkering, Brimdemons now explode
2.5 seconds after they die, after a brief warning animation.
## Why It's Good For The Game
Simple mobs must die
## Changelog
🆑
add: Brimdemon corpses release an explosion shortly after death, just to
keep you on your toes.
refactor: Brimdemons now use the basic mob framework which (should)
improve their pathfinding somewhat. Please bug report any unusual
behaviour.
admin: The brimdemon's beam ability can be given to any mob, for your
Binding of Isaac event
/🆑
* Basic Mob Brimdemon
* Modular
---------
Co-authored-by: Jacquerel <hnevard@gmail.com>
Co-authored-by: Giz <13398309+vinylspiders@users.noreply.github.com>
* Makes some better use of passtable_on / off (#78487)
## About The Pull Request
Flicking the passtable flag has a helper to avoid accidentally
overriding passtable from another source. A few places don't use it,
which makes it plausible you're removing the flag when you shouldn't be.
So I just went through a few places I noticed setting it directly and
made it use the helper.
## Changelog
🆑 Melbert
fix: Maybe fixes some weird occurrences where you lose the ability to
pass over tables when you shouldn't, and visa versa
/🆑
* Makes some better use of passtable_on / off
---------
Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
* Fixed several Foodening taste issues. (#78481)
## About The Pull Request
Fixes a number of issues with taste that arose from the Foodening:
- Foods with special `check_liked` callbacks were having these thrown
out without effect. This made food with special "liked" conditions get
ignored - for example, security lizards didn't like donuts anymore.
- Ageusia was completely ignored when determining taste reactions (the
entire point of the quirk!).
- Foods with a toxic ingredient still gave the normal toxic reaction,
but would not always show up as inedible on examine if they were very
complex or had several liked foodtypes.
These issues have been fixed through a rewrite of the
`get_perceived_food_quality()` proc - all relevant checks are now made
within this proc rather than some coming before (and being partly
discarded).
Food quality checks take on the following hierarchy:
`silver slime toxicity > check_liked > toxic foodtypes > ageusia > liked
+ disliked foodtypes`
- **Silver slime toxicity** is about the same as before, except it will
return a toxic result early if the eater is not a jellyperson, or
increase the perceived quality by 2 if they are.
- **check_liked** will return early with a value based on the result of
the callback: -8 (toxic) if toxic, -2 (disliked) if disliked, and 2 (a
nice meal) if liked. As before, these ignore all further foodtype
calculations.
- **Toxic foodtypes** will return the toxic threshold if present.
- **Ageusia** will always return 0 - you can't taste anything, so if it
doesn't poison you it tastes completely neutral.
- **Liked + disliked foodtypes** are how things already work - save for
toxic foodtypes no longer being needlessly factored into the math.
As part of unifying two disparate sets of checks, perceived food quality
of -8 or lower now gives the toxic reaction rather than the disliked
one. This threshold would be incredibly difficult to reach via disliked
food alone, requiring four different disliked foodtypes at once in a
non-handcrafted food. This could potentially be set to a less extreme
value, like -4, if you wanted disliked-enough food to act as toxic -
but, as this would be a minor balance change, I haven't done that here.
Finally, as a miscellaneous change, a vestigial "fraction" field has
been removed from the invocation of check_liked - this was not used, and
was inconvenient for the rewritten code.
## Why It's Good For The Game
Restores several features that were lost or muddled in the Foodening,
and should not have been.
Note that, while this change generally preserves old behavior, it
diverges somewhat from the _intended_ design of the Foodening. Namely,
toxic foodtypes will _always_ give the toxic disgust/moodlet (unless
superseded by the above hierarchy), rather than being weighed against
the other foodtypes. I personally think this is fine, as I disagree with
the notion that wrapping poison in nice ingredients will make them
edible.
## Changelog
🆑
fix: Foods that have special conditions for liking/disliking them (such
as donuts for sec officers) have these conditions again.
fix: Characters with ageusia properly ignore non-toxic food types that
they eat.
fix: If you examine toxic food, it can no longer appear to you as
edible.
/🆑
* Fixed several Foodening taste issues.
---------
Co-authored-by: lizardqueenlexi <105025397+lizardqueenlexi@users.noreply.github.com>
* seedling basic mobs (#78224)
## About The Pull Request
this is a mob that was removed from the game since years ago. this pr
refactors them and readds them to the game. seedlings now can have
different colored petals!

to obtain this monster, botany can now grow them out of 'seedling' seeds
that they can find in the exotic seeds crate. this mob loves to help all
plants and when its grown out of the seed, it will help the botanists
look after their plants. it can water plants (if it finds a bucket),
remove weeds and remove dead plants. they will also use their solarbeam
ability to provide small healing to damaged plants. it will try to
refill its bucket with water if there is a water source near by. it will
also follow the orders of whoever harvested it.

traitors can buy a seed from the uplink that grows an evil version of
the seedlings, they can command them to attack people and use abilities
and to cause chaos on the station.
## Why It's Good For The Game
refacotrs the seedlings into basic mobs
## Changelog
🆑
refactor: seedlings have been refactored into basic mobs please report
any bugs
add: seedlings now can have different colored petals and can look after
botanys plants
add: seedlings are re-added to the game! they grow out of seedling seeds
obtainable from exotic seed crates or traitor uplink
/🆑
* seedling basic mobs
---------
Co-authored-by: Ben10Omintrix <138636438+Ben10Omintrix@users.noreply.github.com>
* Fixes Boneless Smite (#78449)
## About The Pull Request
The boneless smite was using a list of strings instead of a list of
numbers, and didn't work as a result. This just fixes it. Fixes#78437.
## Why It's Good For The Game
Bugfixes good.
## Changelog
🆑
admin: Boneless smite should work properly again.
/🆑
* Fixes Boneless Smite
---------
Co-authored-by: GPeckman <21979502+GPeckman@users.noreply.github.com>
* The Medal Epilogue: Engineering (And Medical) Now Gets Them Too (#78461)
## About The Pull Request
**Credits to @ CoiledLamb for the awesome sprites in this PR!**
CE 🤝 CMO
Finally, the last department to receive their own medal box, the
engineering department. The saga is complete, we can go home now.
Adds two types of medals: 1. For assisting the station in a crisis, the
"emergency services award" 2. For showing your atmospheric prowess with
a project, the "atmospheric mastery award"
To me, those two awards symbolize the best engineering (and medical) has
to offer. On the one hand, assisting the station and its crew in a
calamity, and on the other hand just absolutely flexing your atmos
knowledge on your boss.
CEs now have a lockbox in their locker with 3 emergency service medals
and 1 atmospheric mastery medal, and CMOs get 3 emergency services
medals in their lockbox.
3 emergency service medals may seem like a lot, but remember that
assisting the station is often done in a team and not alone. An
engineering/medical department who can work together in a crisis really
demonstrates how robust they are.
As for the atmos mastery medal, well...
### THERE CAN ONLY BE ONE !
<details>
<summary>Pictures</summary>

Upper row: emergency services award, engineering
Middle row: atmospheric mastery award
Lower row: emergency services award, medical



Sprites without funky byond scaling


</details>
## Why It's Good For The Game
medals are cute and awesome, i think you can agree
## Changelog
🆑 distributivgesetz, CoiledLamb
add: Added two new awards specifically for engineering and medical: The
"Emergency Services Award" and the "Atmospheric Mastery Award". CEs get
3 Emergency Services Awards and 1 Atmospheric Mastery Award and CMOs get
3 Emergency Services Awards.
/🆑
* The Medal Epilogue: Engineering (And Medical) Now Gets Them Too
---------
Co-authored-by: distributivgesetz <distributivgesetz93@gmail.com>
* Adds the message monitor to the tcomm research node (#78426)
## About The Pull Request
After five long years of waiting, adds the messaging monitor board to
the tcomm research node.
Closes#35946
## Why It's Good For The Game
Consistency!
* Adds the message monitor to the tcomm research node
---------
Co-authored-by: Shadow-Quill <44811257+Shadow-Quill@users.noreply.github.com>
* [NO GBP] Fixes conveyor belt runtimes from screentips (#78478)
## About The Pull Request
In #78278 it looks like I missed confirming for `tool_behavior` when
mousing over on screentips, causing them to throw runtimes when not
holding the correct tool. Oops. This corrects that, now properly
providing screentips based on wrench and screwdriver mouseover.
## Why It's Good For The Game
Runtimes bad. 🐛💥
## Changelog
🆑
fix: Conveyor belts now properly show their new screentips on mouseover
with tools.
/🆑
* [NO GBP] Fixes conveyor belt runtimes from screentips
---------
Co-authored-by: ArcaneMusic <41715314+ArcaneMusic@users.noreply.github.com>
* Replaces "Bread" smite with "Objectify" (#78445)
Instead of turning people into bread, the bread smite can now turn people into any object (including bread).
* Replaces "Bread" smite with "Objectify"
---------
Co-authored-by: Jacquerel <hnevard@gmail.com>
* Holo para refund fix (#78431)
## About The Pull Request
Holoparasite injector can be refunded if its been used, this is because
the uplink_reimburse element is not removed from it when its used. Added
some signal code to it so that this is fixed.
## Why It's Good For The Game
Fixes a bug.
## Changelog
Fixes a bug allowing holopara injectors to be refundable when used.
🆑
fix: Fixes a bug allowing holopara injectors to be refundable when used.
/🆑
* Holo para refund fix
---------
Co-authored-by: Coconutwarrior97 <40315842+Coconutwarrior97@users.noreply.github.com>
* Fixes rescue hooks, adds a unit test to help prevent it from breaking again (#78418)
## About The Pull Request
Fixes https://github.com/Skyrat-SS13/Skyrat-tg/issues/23763
Somewhere along https://github.com/tgstation/tgstation/pull/77739 and
the following fishing PR's this feature got overlooked and broken.
The args for `dispense_reward()` and `find_chasm_contents()` needed to
be updated as they were just wrong.
This sets them straight and adds an additional fishing unit test for the
rescue hook to hopefully prevent this edge case from being overlooked.
## Why It's Good For The Game
Rescue hooks work again, hooray.
## Changelog
🆑
fix: rescue hooks will once again drop the mob next to the fisherman
instead of just displaying a balloon alert and doing nothing
/🆑
---------
Co-authored-by: Ghom <42542238+Ghommie@ users.noreply.github.com>
* Fixes rescue hooks, adds a unit test to help prevent it from breaking again
---------
Co-authored-by: Bloop <13398309+vinylspiders@users.noreply.github.com>
Co-authored-by: Ghom <42542238+Ghommie@ users.noreply.github.com>
* [GBP: NO UPDATE] Fixes a bug where update_inefficiencies() would call update_wounds() and cause gauze to fall off on promotion/demotion of wound (#78398)
## About The Pull Request
Title.
## Why It's Good For The Game
On some testing on a downstream, I found that demoting a wound to a
lower level via replace_wound caused gauze to fall off. Same thing
happened for promoting. I found the issue lied in the fact
update_inefficiencies always called update_wounds which didnt tell the
proc if a replacement was going on.
## Changelog
🆑
fix: Gauze no longer falls off if a wound is demoted or promoted
/🆑
* [GBP: NO UPDATE] Fixes a bug where update_inefficiencies() would call update_wounds() and cause gauze to fall off on promotion/demotion of wound
---------
Co-authored-by: nikothedude <59709059+nikothedude@users.noreply.github.com>
* Improve narsian's sacrifice behaviour (#78427)
## About The Pull Request
Replaces narsian's life proc, where it performed two type checks and
then ran duplicated blocks of code, with the connect_range component.
This doesn't fix any bugs as far as I am aware I just saw the old
behaviour once and didn't like looking at it.
## Changelog
Not player facing
* Improve narsian's sacrifice behaviour
---------
Co-authored-by: Jacquerel <hnevard@gmail.com>
* Antihol now makes surgeries slower (#78155)
## About The Pull Request
Splashing antihol on someone will now cause surgeries to go a bit
slower. This should completely counteract ethanol's speed buff.
## Why It's Good For The Game
Someone suggested this on the discord and I found it a funny idea, adds
a bit more flavor to antihol as the opposite of ethanol.
## Changelog
🆑
add: Splashing antihol on a patient before surgery will make it to go
slower.
/🆑
---------
Co-authored-by: Ghom <42542238+Ghommie@ users.noreply.github.com>
* Antihol now makes surgeries slower
---------
Co-authored-by: StaringGasMask <62149527+Exester509@users.noreply.github.com>
Co-authored-by: Ghom <42542238+Ghommie@ users.noreply.github.com>
* Makes the Olive Oil recipe work properly (#78430)
## About The Pull Request
Makes the Olive Oil recipe work properly.
## Why It's Good For The Game
The Oliver Oil recipe now makes Olive Oil a catalyst. This makes it work
correctly.
Fixes#78421
## Changelog
🆑
fix: Recipe that converts Vegetable Oil into Olive Oil works properly
/🆑
* Makes the Olive Oil recipe work properly
---------
Co-authored-by: blueDev2 <89804215+blueDev2@users.noreply.github.com>
* Restores drone holiday headwear and extends it to assistants (#78347)
## About The Pull Request
drone_hat defined a piece of headwear that drones would spawn with when
the corresponding holiday is active. While peeking at holiday code for
my own amusement, I noticed that it wasn't actually used anywhere and
must have become deprecated at some point. I have re-implemented that
functionality, and extended it to assistants.
Now, all drones/assistants spawning without headwear during a holiday
will receive the holiday's defined holiday_hat (if there is one). This
modifies a few of the holiday_hat entries, particularly the mask entries
since the new system is head-only, and adds a few more in there as well.

There's probably some balance implications to, say, spawning all the
assistants with fire helmets or pirate bandanas, but I see that as being
balanced out by the infrequency of these cases.
## Why It's Good For The Game
Restores an piece of drone code that fell off the wagon somewhere
amongst the removals and reworks.
As for implementing it for assistants, seeing assistants in funny hats
makes me laugh a lil bit :)
## Changelog
🆑 Rhials
qol: Restores holiday hats for drones.
qol: Extends holiday hat behavior to assistants. Get festive!
/🆑
* Restores drone holiday headwear and extends it to assistants
---------
Co-authored-by: Rhials <28870487+Rhials@users.noreply.github.com>
* [Fuck Shotties] Old Yellers Old Yeller (Improvised Shell Nerf) (#78235)
## About The Pull Request
Reworks improv shells to not be equal or even superior to buckshot, by
cutting their damage in half and reducing the wound bonuses. In return
they have a demolition_mod of 3, so do more damage overall to the
environment, a true vandal's paradise.
Added a glass shard to the recipe as an actual projectile instead of
just sheets of metal.
## Why It's Good For The Game
When buckshot was originally removed from the station (#55663) the
intended purpose was, as requested by oranges, to make shotguns a
specialist weapon instead of general purpose lethals.
It has come to my attention that improvised shells (which were initially
intended to be a weaker alternative made form commonly available
materials) are in fact better buckshot, and had no right to survive the
original nerf. I am now fixing that oversight by turning improvised
shells into a more specialised vandalism tool.
## Changelog
🆑
balance: Improvised shotgun shells now deal half as much damage to
humans and cause less wounds, but do 50% more damage to structures and
machines. They also require a glass shard for crafting.
/🆑
* [Fuck Shotties] Old Yellers Old Yeller (Improvised Shell Nerf)
---------
Co-authored-by: Thunder12345 <Thunder12345@users.noreply.github.com>
* Heretic Knock Path (#78108)
## About The Pull Request
other changes: GODMODEd mobs cannot receive embeds or bleed, admins can
now use the traitor panel to give heretics a focus
adds a new heretic path, the path of knock
its a path about opening shit and having access
wound opening included, and stealing
this is its award icon

its knowledge is as follows:
### A Locksmith’s Secret
starting knowledge, unlocks the key blade which also works as a crowbar
https://github.com/tgstation/tgstation/assets/70376633/3690232d-5687-4b0c-a9cc-b6374e7f1850
### Grasp of Knock
it literally just opens stuff (also makes a knocking sound)
unbolts bolted airlocks and opens them, opens locked closets, opens
mechas, logs you into consoles
(comms consoles are with barebones head-level access, no buying shuttle,
but hey you can shitpost over comms)
Sidepaths: Ashen Eyes, Codex Cicatrix
https://github.com/tgstation/tgstation/assets/70376633/8b890d69-ee03-4d12-99dd-dde7b4483cd4
### Key Keepers Burden
transmute a rod,wallet, and some id card to create an eldritch id card
(very original naming), the ID card used is not preserved
this ID card functions essentially as a superior agent card, using other
IDs on it makes it be consumed by the eldritch ID and have its accesses
and forms added into it, you can use it inhand to turn it into any of
the cards that were consumed
in addition you can hit two airlocks with it to link them together to
create portals under the doors, which has a green glow
going through the portal as a Heretic gets you to the other destination
going through as a nonheretic lands you in a random onstation airlock,
SM chamber included if youre unlucky
1 id card can only have 1 set of portals, making another destroys the
former set, one of the airlocks being destroyed also destroys them
https://github.com/tgstation/tgstation/assets/70376633/e96a518e-b35d-44aa-9a7c-8f2103feab6f
### Rite Of Passage
transmute a white crayon, a multitool, and a plank to create consecrated
lintel
heretics can use this cool looking book to create a 8 second shield that
knocks back any nonheretic that tries to pass
also its ranged
https://github.com/tgstation/tgstation/assets/70376633/036e0875-c422-433e-87b3-71328cb2bf8a
### Mark Of Knock
the mansus grasp will now mark its victim for like 10 seconds
marked victims are denied access by all objects, public airlocks
included
https://github.com/tgstation/tgstation/assets/70376633/6187ef36-30f4-4a92-af21-e5b288afb869
### Burglars Finesse
steal a random item from the victims backpack (or other storage item if
they dont have a backpack) and puts it into your hand
the victim will probably hear you and also gets a chat message about
this
https://github.com/tgstation/tgstation/assets/70376633/2529fa78-616d-4a46-ae18-3cb22efb1ab1
### Ritual of knowledge
this is nothing new i put this here to keep it in order
### Apetra Vulnera (sidepath with flesh)
the victim receives bleed wounds on every single bodypart that has more
than 15 brute
if they dont have a bodypart that has >= 15 brute they get a random
wound anyway so
side paths are: blood siphon and void cloak
https://github.com/tgstation/tgstation/assets/70376633/3c2cd21e-edbc-4956-8c2d-cd9a42b87f33
### Wave of Desperation (sidepath with flesh)
cannot be casted uncuffed with no bola, can be casted cuffed with no
bola, with a bola and no cuffs
adjacent mobs are knocked down, mobs are repulsed away, your cuffs and
bola are destroyed, and you gain a status effect that:
after 12 seconds makes you unconscious for 20 seconds
5 min cooldown
https://github.com/tgstation/tgstation/assets/70376633/da480921-d5dd-4b46-b2e8-0cf543640bf9
### Opening Blade
your blade has a 35% chance to cause a weeping avulsion on hit
https://github.com/tgstation/tgstation/assets/70376633/b6fd2837-6b0a-4a5a-bc7b-b9c3f7f715d1
### Caretakers Last Refuge
you can only cast this when not near sentient living beings
while in refuge you are invincible and near transparent, cannot use your
hands or spells
also immune to damage slowdown, being hit with a null rod cancels this
also if you lose your focus you get out of refuge
https://github.com/tgstation/tgstation/assets/70376633/f053cfd8-2a16-4195-8004-17df077983cahttps://github.com/tgstation/tgstation/assets/70376633/72330486-5273-4123-a108-b437b56120c4
### Many secrets behind the Spider Door (Ascension)
ritual needs 3 bodies without organs in their chest
when successfully performed you ascend and;
open a tear in reality (not the BoH one) which;
Polls all ghosts with sentient mob enabled to spawn and siege the
station, ghosts can interact with the portal to spawn as a random
eldritch mob
spawned mobs are loyal to whoever ascended and on examine can identify
their master
also fills the entire room with purple light
also the heretics opening blade is upgraded to a 65% chance, and they
gain Ascended Shapeshift which allows them to shapeshift into eldritch
mobs, and its not 1 choice only
https://github.com/tgstation/tgstation/assets/70376633/8d06286e-789d-442f-b33c-878d26deab07
## Why It's Good For The Game
its cool i think and an option for those wanting to steal and be sneaky
and stuff
## Changelog
🆑
add: heretic knock path and its respective items and award
/🆑
---------
Co-authored-by: MrMelbert <51863163+MrMelbert@ users.noreply.github.com>
Co-authored-by: Jacquerel <hnevard@ gmail.com>
* Heretic Knock Path
---------
Co-authored-by: jimmyl <70376633+mc-oofert@users.noreply.github.com>
Co-authored-by: MrMelbert <51863163+MrMelbert@ users.noreply.github.com>
Co-authored-by: Jacquerel <hnevard@ gmail.com>
* Supermatter Surge Event (#78244)
## About The Pull Request
Adds a new random event, Supermatter Surge.
For the duration of the event a powerloss inhibition is added, causing
the crystal to retain more of its internal energy. Engineers have to
keep the crystal stable for a few minutes until it passes.
The amount of additional heat is balanced around a roundstart nitrogen
engine with no freezers running (*icebox has freezers because planetary)
so that even the most basic setup can reasonably be responded to.
The event requires at least 3 engineering crew (or one CE) to run.
engine_alert3.ogg is a shortened version of bloblarm.ogg
## Why It's Good For The Game
Adds an engineering related event that while isn't too difficult to
respond to, makes the SM less of a 'set it and forget it' piece of
equipment in the round. The gas properties reduce heat generation as it
depletes during the event progression, so it remains relatively under
control compared to a massive 10K+ SM fire.
It creates a series of events that engineers can respond to in their own
way, be it adding more cooling, throwing in freezers, using a borg with
a fire extinguisher or whatever else they can think of.
## Changelog
🆑 LT3
add: New random event: Supermatter Surge
code: Individual supermatter crystals can have custom gas properties
/🆑
---------
Co-authored-by: distributivgesetz <distributivgesetz93@gmail.com>
Co-authored-by: Jacquerel <hnevard@gmail.com>
* remove Skyrat modular
---------
Co-authored-by: distributivgesetz <distributivgesetz93@gmail.com>
Co-authored-by: Jacquerel <hnevard@gmail.com>