## About The Pull Request
Closes#85002
This order change shouldn't cause any issues with other uses of on_wield
## Changelog
🆑
fix: Fixes hulks being able to activate dualsabers despite not being
able to actually do anything with them
/🆑
## About The Pull Request
Currently the fonts are blurry due to using wrong sizes and also overlap
with the style bar above them. Also they move upwards when actions are
gained due to wrong length coefficient.
Here's how it looks now:

## Changelog
🆑
fix: Style meter text is no longer blurry and doesnt overlap with UI
anymore.
/🆑
## About The Pull Request
Added security gloves, which have the fast cuff trait. Normal black
gloves no longer have them.
Adds sprites for security and tackling gloves, moves tackling to
right-click!
Also added blue security gloves for the blue sec PR. Whoever merges it
first will, assumedly, add it then.
Sprites here:

Moved tackling to right click.
## Why It's Good For The Game
> Added security gloves, which have the fast cuff trait. Normal black
gloves no longer have them.
Didn't make any sense that normie gloves had these. It was an
undocumented feature! Why can jannies fast cuff!
> Adds sprites for security and tackling gloves, moves tackling to
right-click!
Really smells that these don't have sprites so I quickly slapped some
up, edited from tackler and CE insuls.
> Also added blue security gloves for the blue sec PR. Whoever merges it
first will, assumedly, add it then.
We can't have blue sec with red gloves!!!
> Moved tackling to right click.
It's so fuckin annoying to accidentally tackle when you're trying to
throw something. It's the biggest thing that prevents me from putting on
gloves. Now it'll rarely, if ever, be a problem: Pressing right click
while thowing mode is on is unlikely to ever happen accidentally.
## Changelog
🆑
add: Added security gloves, which have the fast cuff trait. Normal black
gloves no longer have them.
imageadd: Adds sprites for security and tackling gloves, moves tackling
to right-click!
imageadd: Also added blue security gloves for the blue sec PR. Whoever
merges it first will, assumedly, add it then.
qol: Moved tackling to right click.
/🆑
## About The Pull Request
I have noticed that when I petted a raptor corpse I have found, it
started spinning and hearts appeared above it. Apparently, the same
happens if you wash them. This PR makes sure that dead raptors stop
spinning in their graves.
I decided to not to disable the happiness component's processing on
death, as the idea that the raptor's ghost looms over you, patiently
waiting to be revived is funny, and also encourages their revival to be
a priority.
This PR also removes a duplicate animal petting proc that has not
actually been hooked into anything.
## Why It's Good For The Game
Dead animals should consistently act as dead animals.
## Changelog
🆑
fix: Fixes dead raptors getting excited when petted or groomed
/🆑
## About The Pull Request
Add new spells category for wizards: Perks. perks are not really spells,
but useful (and not so useful) improvements for your wizard which
provide more variety for builds.
https://youtu.be/eeVvUkVE3xQ
All perks cost 2 points, they work without wizard’s uniform, cannot
refund, effect start only at the station (perks will not work at the
wizard’s base). Perk can only be purchased once.
9 added perks:
1. Four Hands - gives you 2 extra hands.
2. Worm Born - on death, wizard turns into a large worm and can no
longer return to his previous form.

3. Dejavu - every 60 seconds returns wizard to where he was 60 seconds
ago and restores his health to the amount he had 60 seconds ago.
4. Sale Off - When buying something from a book of spells, wizard has a
chance not to spend points for the purchase, depending on the purchase
price. 1/2/3/4 price chance 50/25/15/10%. You can no longer refund
purchases.
5. Gamble - Give wizard 2 random perks.
6. Heart Eater - By eating someone's heart, the wizard has a chance to
either increase his maximum HP and stamina by 25 or lose 10 percent of
his maximum HP but get a random mutation.
7. Slime Friends - Slimes is your friends now. Every 20 Seconds you
spend 50 nutriments to spawn random big angry slime.
8. Transparence - wizard becomes half transparent, any projectiles pass
through, but you loses 25% of max HP and you get a stalker who will
follow you to the station to kill you.
9. Magnetism - Wizard gain gravitational anomaly that orbit around him,
which attracts objects and people.
https://youtu.be/gp6ZtTrZu7I
## Why It's Good For The Game
Gives the wizard more options to create a fun and interesting builds
## Changelog
🆑
add: new wizard spells category - perks.
add: adds 9 wizard perks.
/🆑
---------
Co-authored-by: Jacquerel <hnevard@gmail.com>
## About The Pull Request
Added anti-magic support for things that mob can buckle to, so that we
don't have to add the anti-magic component to the mob riding the holy
skateboard but the skateboard itself.
Also, made it possible for the holy skateboard to soar space and open
space with no support without falling, at the cost of a moderate
slowdown.
## Why It's Good For The Game
It's a first-time contributor that added this skateboard to the game,
and it looked like he couldn't find a solution to some of the issues I
brought on in my review. Plus the holy skateboard being usable in spess
has some real Space Jesus vibes to it.
## Changelog
🆑
fix: ACTUALLY fixed hoverboards being able to be used in space.
balance: However, you can soar space with the holy skateboard. at a
slower speed.
/🆑
## About The Pull Request
This change allows tongue based speech modifications to be ignored if
the user is speaking in a native language or using hand signs, putting
it back to where it was functionally before moving to speechmod
components.
## Why It's Good For The Game
This is correcting some of the speaking code to how it was working prior
to speechmods, meaning lizard people won't be elongating there s's in
draconic. Fly people are the other species with a tongue based speech
modifier and receive the same fix. This also corrects tongue based
speech mods getting applied to sign language. Speech modifiers are still
applied if the user is talking in a non-native language, same as it was
pre speechmod.
Before:

After:

## Changelog
🆑
fix: fixing speech modifiers being applied to a tongue's native
languages.
/🆑
---------
Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
## The Voidwalker
Adds a new antagonist, the Voidwalker!
It's a rare antag that spawns in space when there's at least 40 people
Design doc is here: https://hackmd.io/jE4YScP8RPykXo37rTBV2Q (there's
some deviations)
No biddle
## Summary
Spooky space antag that moves around space, ambushing people either in
space or near space. They can move through glass, have an ability to
stamina drain you if they remain in your vision for 8 seconds, can
temporarily remove glass windows to drag you through them and deal
~~stamina damage~~ incredibly violence. Upon being taken, they can be
kidnapped and cursed, muting and pacifying the person and sending them
to the void.
## Passive


Passive abilities:
- Permanent space flight and indoor flight
- Space regen
- Slowdown when in gravity
- Space camo (very low alpha when in space
- Can freely move through unshocked glass
- Mute, but can hear all station frequencies (excluding binary)
- Will quickly die when on planets or moons (obviously can't roll on
icebox)
- 10 brute armor and 20 burn armor. They can't wear any form of armor
and don't have any get out of jail free cards, so I think it'll help
with their survivability a slight bit
## Abilities
**Void eater:** Literally just a light-eater but instead of eating light
it instantly shatters windows, but restores them after a few seconds
**Space Dive:** New ability that lets you move under the station with a
2 second do_after, so they can still get to closed of space spots
without being as annoying as heretic space shift
**Unsettle:** Remain in view of the target for 8 seconds to give them a
short stun, slurring and 80 stamina damage, but announce your presence
and location to them. Both you and your target can move, as long as you
remain in their view.
**Space Kidnap:** When your target is incapacitated and in space, you
can drag them into the cosmic void. They'll be returned cursed after
undergoing a sort of reverse heretic sacrifice (more on that in the next
section).
[Showcase of all the above abilities!](https://youtu.be/NJ01H28PV9w)
## Voided Crew
A brain trauma received when you get kidnapped. While under it's
influence, you are muted and pacified. You will die in planetary gravity
and cannot enter space.

It can be cured with a lobotomy or by dying in planetary gravity.
You get warned to avoid the Voidwalker. The voidwalker now does extra
damage and gets the option to glass gib you if you die, leaving just a
brain
## Loot
On death, the Voidwalker shatters into glass and drops a cosmic skull.
Looking into the skull gives you a stable version of the Voided brain
trauma. It doesn't give you pacifism and doesn't ban you from space. It
also makes you space immune and gives you the ability to walk through
unshocked glass after 2 seconds do_after.
Sprites for the cosmic skull by Justice12354 and Rex9001! I'll throw up
a video showcasing death and their sprites on Sunday
## Why It's Good For The Game
We don't have any space centered antagonists. The closest we have are
Space Dragons, but they have to go deep into the station anyway. I'm
also quite fond of simpler antagonists, like revenant and nightmare.
Give people the tools, and they'll make the fun themselves.
I've been comparing the Voidwalker with the Nightmare. Both are goalles,
simple antagonists, but where the Nightmare's gimmick is darkness, the
Voidwalker's gimmick is space.
They also get a dark tentacle arm so they can murderize people, but it
only gets them to crit. After that they can drag people into the "void"
to kidnap them. This is mostly to encourage the Voidwalker not to just
space them cause that's kinda lame. They still can though, just in-case
it would be very funny
## Changelog
🆑 Time-Green, Justice12354, Rex9001
add: Adds the Voidwalker, a new rare space based midround antagonist!
code: Adds the ability to texture limbs and bodypart_overlays
Sprite: Cosmic skull sprites by Justice12354 and Rex9001
/🆑
- [x] Add a better kidnapping mechanic, instead of just teleporting
someone to a station turf
- [x] Add an armblade or weapon or something, unarmed combat is kinda
ass for this
- [x] Fix the antag preview not rendering textures
- [x] Prevent them from space phasing when in combat so they can
actually be killed in space combat, even if really fucking hard
- [x] Nerf visibility for people with space parallax disabled, probably
also something to improve camo with colored parallax
- [x] Replace the stamina damage stuff
- [x] Cool rework of space phase idea I have
- [x] Update/implement vidual effects
- [x] Implement names
## Considerations
There's a few things that I might change or implement later, depending
on how it actually plays.
It's a space focused antag, but there might not be enough people near
space in a given round. An ability to let them "capture" area's or let
them turn into a meteor or something might be needed later if they turn
out to be too passive.
They might also be _too_ oppressive in space. I designed them for
near-space combat, but may've made them insanely overpowered in in raw
space combat.
Probably wont do biddle, but might add more powers that you can reroll
every few minutes or something (like blob). Either wat it wont be this
PR
---------
Co-authored-by: carlarctg <53100513+carlarctg@users.noreply.github.com>
Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
Co-authored-by: Jacquerel <hnevard@gmail.com>
## About The Pull Request
Adds a craftable airlock pump that is an atmos device with distro &
waste nodes on a single side.
When wrenched down, looks for airlocks and sets up a cycling airlock
chamber.
A more compact and flexible alternative to the current binary DP Vent
Pumps.
https://github.com/tgstation/tgstation/assets/3625094/a799b3e8-3425-43fc-9c17-2bdde63ec194
Can also skip cycling when a shuttle is docked with one of the external
airlocks:
https://github.com/tgstation/tgstation/assets/3625094/37054bc0-b8c5-4556-aa2c-0fa5bc3c7c5b
**Set up from scratch**: https://youtu.be/22PDfmJKC7g
## Why It's Good For The Game
Provides an easy to map and setup alternative to DP Vents that doesn't
require any map helpers, var editing and can even be crafted in the
game.

You just need to extend the disto/waste pipes to the place where you
want your airlock to be.
When built, it automatically considers the first found airlock in the
direction of incoming pipes as an internal one, and the opposite -
external.
Cycling is controlled by the airlocks. When you click/bump an internal
airlock, it starts pressurizing. When external one - depressurizing.
When unable to complete the cycle in 10 seconds, unbolts the door
automatically to avoid stucking due to issues with pipes or slow atmos.
TODO:
- [x] Hook up to the power and figure out the logic when unpowered
- [x] ~Make it work with a directly connected layer manifold~
- [x] Make unwrenching require unpowered state and forbid mapspawn pump
unwrenching
- [x] Support airlock arrays and double airlocks
- [x] An option to open airlocks instead of just bolts
- [x] Check for the presence of airlocks and crash if not set up
properly on map
## Changelog
🆑
add: Added airlock pump atmos device to create cycling airlocks
/🆑
---------
Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
## About The Pull Request
Adds the Herculean Gravitronic Spinal Implant. A personal gravity
dampener that affords the user improved physical performance without all
the effort of actually working out.
This implant improves the user's ability in a variety of minor but
useful ways Including;
1) Faster climbing speeds with climbing hooks and ladders. (Athletics
now also influences this time)
2) Slightly less damage from falling from a height.
3) Faster fireman lifting and placing onto tables.
4) An easier time working out and stronger in boxing.
5) Standing up just a bit faster.
6) Throwing things just a little further.
7) Tackle performance, including offense, defense and safety if you
miss.
You can improve the implant by using a gravity anomaly core on it,
transforming it into an Atlas implant. This implant has considerably
better bonuses compared to the baselines fairly minor even if numerous
benefits. It also forces personal gravity to normal values.
As a result, the total number of gravity anomaly cores is now 6.

Has some little floating rocks around your head while active.
## Why It's Good For The Game
I attempted to add something fairly similar in the past, but didn't
quite like simply making an entirely combat related implant. Instead,
I've changed the concept towards generally improving some minor physical
world interactions. Things that you may not really think about or
notice.
I really enjoy getting just slight tweaks to the small little gameplay
activities that come up every so often, and even if this won't appeal to
most players, I know someone will see this and think to find a way to
make the most of the implant in some way that I didn't even think about.
## Changelog
🆑
add: Adds the Herculean Gravitronic Spinal Implant; an implant that
makes you better at athletics. You can upgrade it into an Atlas implant
using a gravity anomaly core.
balance: Gravity anomaly cores have had their max number of cores
reduces from 8 to 6.
balance: Your athletic ability allows you to climb faster.
/🆑
## About The Pull Request
- Fixes#84794
`/datum/component/remote_materials` blocks the tool act from continuing
when linking with ore silo fails. We don't want that for stacking
machines
## Changelog
🆑
fix: stacking machines can be linked with its console via multitool
/🆑
## About The Pull Request
Added a ``/datum/component/speechmod`` component which can be used to
perform basic speech modifications. It use either simple replacements or
regex, add a string at the end of any message (at a chance if required)
and convert speech to uppercase. However, a good chunk of speechmods are
far too niche and specific to be put into a speechmod component and thus
have been left alone.
## Why It's Good For The Game
Cuts down on copypasted code, makes making new speechmods easier.
## Changelog
🆑
refactor: Refactored a lot of speech modifiers to use a component
instead of copied over code.
/🆑
## About The Pull Request
Closes#84727
This stops you from picking up blood from existing bloody footprints
which could result in a huge mess.
## Why It's Good For The Game
Bloody footprints are extremely messy after being fixed and then buffed,
and while you could argue about it, picking up blood from the footsteps
you made a second ago just by going in circles don't make a whole lot of
sense.
## Changelog
🆑
fix: Bloody footprints no longer bloody your shoes even more when walked
over.
/🆑
## About The Pull Request
- Fixes#84699
The issue isn't with reagents getting transferred one at a time. Yes
this happens inside plumbing machinery and it isn't an issue there
because they are not processed but simply stored(until all reagents can
get there) until it is transferred to another machine that requests it.
This however is a problem with hydroponic trays which both store &
process those reagents. So when 1 reagent comes into the tray & if the
tray gets full before the other reagents can get there it leads to
missing fertilizers/nutrients in the tray causing problems in plant
growth & such.
For e.g. if your ducts have reagents like 3u sodium, 7u ash & 5u water &
the tray has space for only 10u reagents. Using round robin it takes in
3u sodium + 7u ash = 10u reagents. The 5u water is left out cause the
10u request is complete causing the plants to dehydrate & die.
Now trays are reverted to use the old "proportional method" of
transferring reagents leading to trays getting all their nutrients from
plumbing ducts. So using the old technique we get sodium + ash + water =
10u i.e. all reagents in the tray so the plants are happy
Additionally bottler also uses the old "proportional method" of
transferring reagents so it pumps out all reagents into the beaker
## Changelog
🆑
fix: hydroponic trays take in all reagents "proportionally" from
plumbing ducts without leaving any behind
fix: plumbing bottler pumps out all reagents "proportionally" into
output beakers
/🆑
## About The Pull Request
Rewrites `GetExactComponent` to be 1641 compliant, and more readable
## Why It's Good For The Game
This proc was quite unreadable, and less work to make the server run on
1641
## Changelog
🆑
refactor: refactored `GetExactComponent` to be 1641 compatible
/🆑
## About The Pull Request
Aquariums now have a beauty element based on their contents. Props give
a fixed beauty value, while for fish it depends on whether they're alive
or not. Some fishes have a better score than others. A few, like the
ratfish, even have negative beauty.
Mobs with the morbid trait now get a positive moodlet when admiring an
aquarium full of dead fish, and a negative one when fish are alive.
Also, this brings a few improvements to bits of aquarium code. Namely
the removal of a GetComponent call and a few balloon alert calls.
## Why It's Good For The Game
Aquariums can be quite decorative at times.
## Changelog
🆑
add: Aquariums now influence the beauty score of an area based on their
contents.
add: Morbid people now get a positive moodlet when admiring an aquarium
full of dead fish, and a negative one when fish are alive.
/🆑
## About The Pull Request
This refactors embedding elements to make them use singleton datums
(similarly to armor) instead being bespoke and creating a new element
every time armor values are supposed to be adjusted.
Default values have been removed from defines due to now being declared
in base class itself.
Additionally fixes vending machines and tackling gloves setting
generated shards (which they instantly embed into their victim) embed
properties to null after running the embedding code, despite said shards
having non-null embedding values by default, making them not be able to
embed into anyone else, also potentially breaking the pain/jostling code
if they somehow get updated.
## Why It's Good For The Game
Current embedding system is an unnecessarily complicated mess as bespoke
elements are hard to work with, and creating a new element every time
you change values is hacky at best. This change should make it easier to
read and work with.
## Changelog
🆑
fix: Fixed glass shards generated from falling vending machines or
tackling windows not being able to embed into anyone.
refactor: Refactored embedding code to use datums instead of bespoke
elements and ugly associated lists.
/🆑
## About The Pull Request
Apparently I've left out that `isopenspaceturf(A)` returns false on
normal (not multi-z) space turfs because they're of a different path.
This should fix the fact you can use hoverboards as a substitute
jetpacks, which wasn't intended. You can still use them in space if
there's lattice/catwalk underneath, or another kind of turf on the
z-level below however.
## Why It's Good For The Game
Unintended bit from the skateboard buff PR I had made months ago.
## Changelog
🆑
fix: Hoverboards properly dysfunction in space without any kind of
support underneath them.
/🆑
## About The Pull Request
i meant for these changes to be station-side only
## Why It's Good For The Game
closes#84655
## Changelog
🆑
fix: raptors don't easily stress out in lavaland environments
/🆑
## About The Pull Request
Adds a new crate to the Service section of cargo. The Fletching and
Bow-Making Starter Kit. Comes with some materials and a fletching
instruction manual.
The manual teaches you how to make shortbows (18 force from normal
arrows utilizing projectile multipliers), arrows, holy arrows (but you
need a divine bow to make them), quivers (but they only hold 10 arrows),
plastic arrows and violins. For reasons.

### Fixes
Bows now no longer utilize hardcoded sprites for their loaded sprite.
Now they use overlays.
Bows properly become undrawn once fired. No longer can your bow
magically launch arrows by sheer force of will.
## Why It's Good For The Game
Initially I just wanted to provide a way for bow wielding chaplains to
produce additional arrows for their bow. Running out of those always
felt pretty lame. But then I got to thinking; actually, I kind of want
to LARP sometimes as an archer. I think that'd be kind of goofy and fun.
So I bundled that together into a solution for both.
The shortbow is really, really not meant to be a meaningful weapon. It's
just kind of silly, and meant to let people pretend to be Robin Hood and
occasionally hurt someone in a workplace accident. I'm particularly
thinking of clowns being the perfect users for this with their clumsy
trait. I will make this weaker if I have too.
(I am not, at this moment, redoing flaming arrows okay? I saw the code
comment. I know. Not right now. @tralezab, if you have any flaming arrow
sprites lying around, please let me know.)
## Changelog
🆑
add: Fletching starter kit! Make your own bow, shoot your friends in an
unfortunate workplace accident. Replace all those holy arrows you lost.
fix: Bows now properly undraw once they have fired an arrow.
code: Bows now utilize overlays in order to display loaded arrows.
Unique overlays per arrow.
/🆑
## About The Pull Request
For some reason fish spot examine use fish_counts instead of fish_table
and only show limited fishes. (if there were any at all). So I change it
## Why It's Good For The Game
Bug fix I guess
## Changelog
🆑
fix: Examining a fishing spot twice with sufficiently high fishing skill
(or the skillchip) will get you a list of fishes that can ACTUALLY be
caught
/🆑
## About The Pull Request
[Removes all other listlike var
accesses](4c5996b5c8)
Also fucking dumpsters an unused proc that allowed for arbitrary
variable modifcation. Bad juju
This is undefined behavior and errors in later 515 versions. also it's
stupid as hell
## About The Pull Request
Converts slapcrafting into a bespoke element, used to be ac omponent
## Why It's Good For The Game
Noticed this was a big C and realized there was no real reason for that.
It's the same recipe shared across different items.
## Changelog
N/A
---------
Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
## About The Pull Request
Reduces the upper and lower speed adjustments of the Settler's
Roughrider trait.
## Why It's Good For The Game
I added this to settler as a suggestion from goof, but I promised myself
that should this get overused to the point that it is abused on a
regular basis, I was putting a bullet straight into the back of its
head.
Unfortunately, because of this quirk, raptors had to get super nerfed
just to account for the extra speed because people wouldn't stop
bringing them up to the station to outspeed everyone on foot. People
have since moved onto different mounts. This is going to keep
continuing, so unfortunately for everyone this can no longer persist.
I brought it into this world, and now I'm...limiting it because I would
like people to not worry about a quirk ruining the balance of their cool
mount additions.
## Changelog
🆑
balance: Settlers are a bit slower on their steeds.
/🆑
## About The Pull Request

A lot of this all of a sudden, I am going to assume it's related to the
recent spark changes, which are most likely causing (literal) fires in
the testing area.
Fixes https://github.com/tgstation/tgstation/issues/84161
Fixes https://github.com/NovaSector/NovaSector/issues/3123
I'm still testing this one with a few CI runs but the timelines match up
with roughly around the time of the spark PR; it's most likely the
culprit.
EDIT: 8 CI runs so far and the issue has not come up, I am fairly
confident it was the sparks + fuel puddle combination that was the
problem.
EDIT EDIT: Found one more issue with /datum/material/plasma that needs
to be dealt with.
EDIT EDIT EDIT: Issue resolved
## Why It's Good For The Game
Save the burninating for in-game please!
## Changelog
Not player facing
## About The Pull Request
Linked speech now prevents messages from highlighting if its a message
you sent, or if you are the owner of said link.
Also, linked speech messages are now marked as radio messages, for chat
tab purposes.
## Why It's Good For The Game
Because when you have your own name highlighted, it's annoying having
every message with `[Shion Rosenthal's Slime Link]` highlighted, even if
it's _my own_ message.
## Changelog
🆑
qol: Linked speech now prevents messages from highlighting if its a
message you sent, or if you are the owner of said link..
qol: Linked speech messages are now marked as radio messages, for chat
tab purposes.
/🆑
## About The Pull Request
This PR adds a new gunkit to the **Illumination Applications** tech node
acquired via BEPIS techs. For years, this funny little tech node has
been one of the lamer results from the BEPIS tech pool, only offering
constructable unique hardhats and access to a micro RLD. Well, lets just
say, badda bing
https://github.com/tgstation/tgstation/assets/41715314/bd869d7f-449a-4563-871a-b90f550e0bda
The photon cannon is craftable via a lathed gunkit obtained from the
security lathe, which fires 4 shots per recharge. Each shot, on direct
contact with a mob, acts like a severity 3 flash. The shot also
distinctly slows down after traveling, so you can more effectively gauge
where it's going to stop moving, as when it reaches it's travel
distance, it will perform a weaker AOE severity 1 flash. Direct hits
will effect silicons, while the AOE flash will not. Direct hits only
deal 5 ***STAMINA* damage.
The Gunkit requires a flux anomaly core to be crafted, completing with
the tesla gun in this respect.
## Why It's Good For The Game
There's been some discussion about how we've hoping to offer higher
power features and options to the game at large using anomaly cores, and
flux anomalies are currently only used for guns, which is rather
unfortunate. The bigger issue, I'd suppose, is that every gun that flux
anomalies can produce are considered lethal, with the event horizon gun
and tesla gun. And honestly, by comparison, the tesla is not lethal
enough to use to any real effect, or practical enough to bother science
enough for the core.
The photon cannon, however, works as a rather effective crowd control
weapon for breaching and incapacitating crewmates, making it ideal for
wardens dealing with large tides of crewmates, officers breaking into
bases, or ~~the captain trying to burn down your library dnd game,
DOUGLAS~~
Overall, it's still a fairly low power weapon, and sits in a niche place
somewhere between a dragNET, flashbang-loaded grenade launcher, the
flash, and the ion-cannon, with it's versatility coming from core rarity
and requiring a BEPIS tech.
**I have since updated this PR so that this gun deals stamina damage
instead of energy damage, and contact with the energy ball deals a short
period of confusion.**
## Changelog
🆑
add: The Illumination Applications technode now includes a gunkit for a
new gun, the Photon Cannon.
/🆑
## About The Pull Request
fixes mansus grasp not removing runes
## Why It's Good For The Game
closes#84289
## Changelog
🆑
fix: fixes mansus grasp not clearing runes
/🆑
## About The Pull Request
1. Objects now have an `get_proxy_for()` proc. This returns an atom that
will participate in the object melee attack chain on behalf of your
atom. Allows for general purpose polymorphism per object interaction
2. Cleaned up some multitool acts to accommodate proxy behaviour
3. You can pry tiles as an Engiborg with crowbar in hand & do other
similar behaviour with crowbar
5. Improves & Depends on #83880. We don't need a hidden omni toolbox &
can create the tools directly in the omnitool and pass them in the
attack chain as a proxy rather than calling the attack chain manually.
All tools are on the borg directly
- Fixes#84355
- Fixes#84359
- Fixes#84393
## Changelog
SyncIt21,zxaber
🆑
fix: omni crowbar tool interaction for replacing tiles has been fixed
fix: techfab screentip does not runtime when you hover over it with an
omnitool multitool
fix: medi borgs can do brain surgery again
code: improved multitool & general tool code for some machines
/🆑
---------
Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
## About The Pull Request
The string path that has been passed to `perform_rite` has not been
converted to an actual type path. This meant that religious tools that
had a whitelist of rites they could perform, could not actually perform
these rights, as a string path does not equals with a typepath. This PR
fixes that.
## Why It's Good For The Game
Makes a mechanic work, allowing the chaplain to store up rite slots as
intended.
Fixes#83997
## Changelog
🆑
fix: Instruments enhanced with portable tuning can perform the rites
that have been granted
/🆑
## About The Pull Request
- Fixes#84361
This brings back the round robin method of transferring reagents I
removed in #78884 but in a more miniaturized & light weight form. It
should speed up cpu performance of plumbing as a whole
**The Downside**
The reason i was hesitant about bringing it back is because this
technique can result in **missing reagents**
For example let's say our plumbing pill press has only space for 10u
more of reagents but in the ducts we have say 3 reagents i.e 3u copper,
7u Aluminium, 4u iron(Order of reagents in the ducts is important)
When the pill press makes the request for 10u of reagents from the ducts
we get 3u copper + 7u Aluminium = 10u. **We completely leave out iron**
because the 10u request has been fulfilled.
This happens when the below 2 conditions are met
- When there are a large number(different types) of reagents or large
volume of one type of reagent in the ducts
- When there isn't enough space in the machinery to take in all these
reagents
This is why the plunger was made so you can flush out reagents from
machines and can make space to take in those missing reagents
**The Upside**
You don't get any floating point errors. Also given that this code has
been around for years before i removed it, It should be ok to bring it
back. Assuming players have always been sensible to only create the
exact volume of reagents they need without making excess & quickly push
out these reagents (either through output gate, pill press etc) from the
ducts you should not see any problems. Plus this code is only exclusive
to plumbing so no outside usage

**Other changes**
- Plumbing IV Drip now only accepts reagents i.e. it only has a input
pipe no output pipe just like your output gate & smoke machine. This was
done because it is not an instance of `obj/machinery/plumbing` & so it
won't use the round robin transfer technique leading to again
re-introducing errors in the plumbing system.
Also it makes sense as in we only need it to accept reagents from the
ducts & inject it into the connected mob/whatever. We don't need it to
pump out reagents back into the system
- Output gate still uses the regular "proportional" method of
transferring reagents. This is so if you use a beaker or something to
take reagents out from it, it gives you all reagents without "missing
any"
## Changelog
🆑
fix: plumbing machinery should have consistent volumes throughout the
course of its operations
fix: plumbing iv drop now only accepts reagents from ducts but won't put
reagents back into it i.e. it only has a input pipe
/🆑
## About The Pull Request
This PR multiplies, by 1.1, and caps the x and y offset coords of the
zoom cursor catcher to make it humanly beareable to reach the maximum
zoom range without slipping the cursor out of the game screen.
## Why It's Good For The Game
The scope component is nice but it can be annoying at times.
## Changelog
🆑
qol: You no longer need to reach the very edge of the game screen to
reach the maximum zoom range when scoped.
/🆑
## About The Pull Request
- Fixes#84517. material container won't consume the contents of an item
if that item itself is rejected for any reason(lack of mats, not
suitable for redemption etc)
- You can use any storage medium (not just bags, boxes but anything that
has `atom_storage`) to dump stuff into an material container
## Changelog
🆑
fix: material container won't consume the contents of an item if that
item itself is rejected for any reason
qol: you can use any storage medium & not just bags/boxes to dump stuff
into material containers
/🆑
## About The Pull Request
The gun code is an absolute mess that seems to have been untouched for
the better part of the decade and finally gave way due to the attack
chain refactor. This PR is the first in my attempts to refactor this
mess by making bayonet attachment a component instead of /obj/item/gun
variables. Followup PRs may or may not be atomic changes or a monolith
due to how horribly the original code is structured.
## Why It's Good For The Game
Gun code is ancient, unmaintained, barely readable and started actively
breaking in the past weeks.
## Changelog
🆑
refactor: Bayonet attachment is now a component.
/🆑
## About The Pull Request
Facehuggers dont make people fall asleep, instead making them unable if
on (already was in), and muffling speech
Xenomorphs still have decent tools to stun people in melee thats stuff
for another pr
muzzle is now an element and also just makes you talk like
word word word -> mmmmf mmmf mf
COMPLETELY evaporates BLOCKS_SPEECH flag
## Why It's Good For The Game
Being instantly sent to sleep by a facehugger thrown the hunter that
materialized from a vent then getting dragged to their goon cave where
you spend 2 minutes to get gibbed so someone else but you can play antag
is just extremely unfun
This should allow you to survive if youre quick enough after getting
hugged instead of being forced to get gibbed, allowing cooler xenomorph
combat (you could try fistfighting the dude or something idk)
## About The Pull Request
nerfs on station raptors. now raptors will freak out if hit by an energy
gun of any kind, or if they recieve any form of stamina damage (for
example from a baton) and will knock their rider off rendering them
disabled for a few seconds. im open to other suggestions and feedback
## Why It's Good For The Game
i was a bit saddened to learn these are still being brought up station
and some being abused for on-station combat as meatshields. they were
primarily balanced around the lavaland tower defense minigames which
might make them too tanky of a vehicle on station and unfair for whoever
has to deal with them. this pr hopefully restores them to only serve
their original purpose, which was to be super nieche mining tools
## Changelog
🆑
balance: raptors will now knock off their rider and disable them if hit
by any energy projectiles or if they recieve any stamina damage
/🆑
---------
Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
## About The Pull Request
There were some tiles and wallframes in lathe designs, while most of
these are already in the crafting menu. Moved all of them into the
crafting menu to avoid confusion, when you can't find some wallframe in
the menu because it must be built in lathe.
Made the light tile craftable in menu, instead of slap-crafting, and
made the circuit tiles use similar recipe (since they both are emissive
tiles). And the circuit tiles can now be cycled in-hand:

## Why It's Good For The Game
Centralized place for tiles and wallframes.
## Changelog
🆑
qol: Made light tiles available in the crafting menu
qol: Circuit tile variants can be cycled in-hand
add: Moved loose tiles and wall frames from lathe designs to other tiles
and frames in the crafting menu
/🆑
---------
Co-authored-by: Fikou <23585223+Fikou@users.noreply.github.com>
## About The Pull Request
Since non-clothing items can also be worn on several slots, there's no
need for cigarettes/vapes to be subtypes of masks anymore, since that
comes with a few oddities like #82870.
## Why It's Good For The Game
This should fix#82870, with about no side-effect aside them no longer
being edible by moths 🤢.
## About The Pull Request
This PR was originally meant as a replacement for the Bloody Bastard
blade, but then I stopped existing for 7 months. Now that I'm here
again, I'm finishing the job once and for all.
### **HERETICS VERSUS CULTISTS**
### Heretics
Heretics can now sacrifice cultists, which will give them one of three
gifts: The Cursed Blade, the Crimson Focus, and the Rusted Harvester.
The gifts given are weighted to be spread out equally with each type.
They will also gain one knowledge point.
- The Cursed Blade is a free heretic blade that is more powerful than
the normal heretic blade, including a small block chance. It can also be
used to draw heretic runes off combat mode.
- The Crimson Focus is a necklace that grants focusing and a minor
regeneration effect which also affects nearby heretics, at the cost of
gaining the BLOODY_MESS trait while wearing it. Additionally, it can be
squeezed to heal 50 points of brute/burn damage, injecting yourself with
three to six (separately) units of Eldritch ~~Water~~ Essence and Unholy
Water. Yes, this isn't good.
- The Rusted Harvester is a heretic 'monster' summon. It's a normal
Harvester, but instead of Area Conversion and Forcewall, it has
Aggressive Spread and Rust Construction (Raise Wall). It can delimb, but
only cultists, with a delay. It has an aura of decay, corroding the
environment and withering enemies near it, but it's VERY fragile.
Rusting cultist item dispensers will now cause them to turn into a
Heretic object. Altars turn into small heretic runes, Archives turn into
Codex Cicatrixi, Forges turn into Mawed Crucibles.
Ideally, Heretics would be able to gain an amount of these new powers
and use them to turn the tide against the cultists, amassing their power
and almost forming a sect of their own in turn which sweeps over and
converts the cult.
### Cultists
When a Cultist sacrifices a heretic, two things will happen:
- A new item will be available for creation at one of the dispensers.
- The Heretic will be trapped inside a powerful Haunted Blade.
`/obj/item/melee/cultblade/haunted`
` name = "haunted longsword"`
` desc = "An eerie sword with a blade that is less 'black' than it is
'absolute nothingness'. It glows with furious, restrained green
energy."`
This blade will be stronger across-the-board than a normal cult sword,
and will even allow those who wield it to cast one heretic spell from
their previous path. The only downside? The heretic can also cast one
spell. It's up to the trapped spirit if it wants to help you, or be a
nuisance.
The unlocked items are:
- The Cursed Blade, again. For cultists, it can be used to draw runes
twice as fast as usual, and they can even right-click it to teleport to
safety, just like a heretic!
- The Crimson Focus, again. Cultists are twice as fast at carving spells
into their body, and they gain a 5th spellslot as long as they wear the
amulet. It still causes hemophilia and grants weak regeneration.
- The Proteon Orb. This orb will create a gateway to Nar'sie's own
realm, spawning one Proteon every 15 seconds, which ghosts can possess.
The gateways cannot be placed close to one another.
Originally, they were going to be able to create a Harvester Shell, but
there were some concerns of it being too OP.
The true Bastard sword has been fully deleted. The null rod conversion
has been changed to a Bloody Halberd instead.
I'm considering re-enabling Stun Hand on Heretics, with Mansus Grasp
stats.
### Other
All the items above can be used by both Heretics and Cultists, no matter
how they were first created. Hell, even normal crew can use them! This
is probably not the best idea a lot of the time, though.
There are a lot of other changes in this PR. A loooooot. I will likely
miss some in the changelog, but I'll try to be as thorough as possible.
There's probably also some leftover garbo that I didn't find and clear
out yet.
## Why It's Good For The Game
Cult and Heretics, despite being mortally opposed, have very few
interactions with eachother, especially now that the Blade's gone. The
only thing of note is just the Heretic's unfair complete resistance to
stun hand, which is only marginally better than the alternative. This PR
will reintroduce their animosity, and give both sides a very, very good
reason to fight eachother.
The Cult will gain a sick sword that keeps the heretic in the game, and
unlike with the original implementation, will recieve a cult-wide bonus
in the form of a powerful, well deserved, and fun new item to summon.
The Heretic will gain powerful trinkets and knowledge from the
sacrifices, incentivizing them to become a terrifying cult-hunter. And
if they do succeed in wiping out the cult, they will have quite the
rewards to help with their ascension.
The crew, while mostly unaffected, will have a damn good reason to not
just Side with the heretic, out of fear of what they may become after
the cult is stomped down. They can also use a few of the items here in
an attempt to get one up on either side, as long as they manage to stay
clear of the side-effects.
Let the heretics eradicate the apostates.
Let the cultists root out the heathens.

The haunted longsword creates an aura of darkness (disabled for the
cultist for the image)
Sprites... are not great. Hopefully someone comes by and improves them.
code: Added get_inactive_hand() as an easy shortcut for carbons
code: Wall walker element can now accept a trait for wall-checking
fix: Fixed soulsword component being unable to invoke the post summon
callback
refactor: Turned Heretic rust turf healing into an element, given to
Rust Walkers and Rusted Harvesters
refactor: Converted Limb Amputation from an element to a component
Blade and Sword sprites by meyhaza!!! I did the inhands though. Cuz im
cool
## About The Pull Request
### Dilemma
So we've been running into a dilemma recently as we move more and more
items over (#84070, #83910)
Some things like modsuits, tables, washing machines, storage items want
to do their tool acts before their item interactions
In the past this was perfectly fine, because it was `tool_act` ->
`attack`, but now it's a problem, because it's `item_interaction` ->
`tool_act` -> `attack`.
Rather than resort to snowflaking, my idea is that we can move tools
back up the chain so deconstruction and other similar effects are
handled first, before anything else like putting the tool onto the
table.
### So why does it require non-combat-mode?
A large amount of tool acts early return if the user's on combat mode to
allow the user to smack the thing instead of using the tool on it. So
I've decided to walk back on what I said like a week ago and make this
standardized behavior.
### Misc
Reintroducing `tool_act` as a proc that exist means that atoms can
easily hook certain interactions that must happen very high in the click
chain, such as doing something that block storage insertion. Moves some
of the behaviors I put on the (admittedly rather hacky) new proc to
that.
(Also cleaned up a bit of lockbox and medbot code)
## Changelog
🆑 Melbert
fix: Fixed modsuit interactions slightly. No longer requires combat mode
to use tools on it, plasma core works as intended as well. (Using combat
mode, however, will make you insert the item)
refactor: Refactored lockboxes
refactor: Refactored medbot skin application
/🆑
## About The Pull Request
Improved code quality of both so they resemble each other. Some of the
new specs are as follows
1. Moved` COMSIG_CLICK_ALT` & `COMSIG_CLICK_ALT_SECONDARY` up i.e.
before `can_perform_action()` making them pure hooks not bound by any
action checks giving components full control over them
2. Removed range check(`CAN_I_SEE`) & view check(`is_blind()`) out of
the base alt click proc. They now only apply to living mobs and don't
apply to ghosts(ghosts don't get blind & see everything) & revenants
(the range check still applies for revenants though).
This was actually a bug because these 2 checks were only meant to see if
the loot panel could be opened (as stated in
https://github.com/tgstation/tgstation/pull/83736#discussion_r1628097941)
but because they are at the top of the proc they also apply to all alt
click actions which is not intended. Also, by moving these checks down
to mob subtype levels some of the snowflake checks like this
7579e0e173/code/_onclick/click_alt.dm (L23)
can be removed. We should not check for subtypes within the parent type
proc but instead have subtypes override their parent procs to implement
custom behaviour
3. Removed redundant signals like` COMSIG_XENO_SLIME_CLICK_ALT` in
favour of just `COMSIG_MOB_ALTCLICKON`
4. While looking for alt click signal overrides I found alt click for
style meter was run timing, that's fixed now
## Changelog
🆑
fix: alt click runtime no more when using style meter
code: improved alt & ctrl click code
/🆑
## About The Pull Request
Fixes some interactions with attempting to patch multi-z holes.
1. openspace clicks happen on different z levels, so it's inherently a
*ranged* interaction- it was being ignored due to using the non ranged
signal
2. RCD was lacking the open space click handler,
3. #77540 still exists to a degree, I've refactored the click handler to
use parse_caught_click_modifiers to always grab the tile you're aiming
at rather than going off of whatever item you happened to click on
4. handle_openspace_click was treating the modifiers list as the old
parameters list
## Why It's Good For The Game
fix bugs, being able to repair holes is a very important and time
sensitive task that needs to flow well, and not require pixel hunting
## Changelog
🆑
fix: multi-z hole repair works better, especially when the turf below is
blocked by items
/🆑