## About The Pull Request
Removes INTERACT_MACHINE_SET_MACHINE on machines that don't use a
non-TGUI UI.
Removes set_machine from TGUI things that forgot to remove them
previously.
Decouples advanced camera consoles from UI procs since it doesn't
actually use one.
## Why It's Good For The Game
TGUI machines don't need to be using these procs and vars, and this
makes it more clear what does and doesn't use a TGUI menu from a glance.
I explain it a bit better
[here](https://hackmd.io/XLt5MoRvRxuhFbwtk4VAUA) if you're interested.
## Changelog
No player-facing changes.
## About The Pull Request
This PR renames Knock to Lock, and changes most of the knowledge gain
lore.
## Why It's Good For The Game
The Knock Lore, is based on the Knock Principle from Cultist Simulator,
with the path description being copied from the wiki. Many other
keywords and concepts are fully lifted from that game (Locksmith's
Secret, Mother Of Ants, etc). In my vision, if a heretic path has to be
based on a principle from cultist simulator, it should have its own
spin, and also, the knowledge gain texts should tell a story. For
example, Ash tells the story of a watchman burning down their city after
being betrayed, and Cosmic is a love story between a knowledge seeker
and a monster from the beyond.
So I have decided to reflavour Knock. I have changed the name to Lock,
so at least it would feel similar, just like how Blade is akin to Edge.
Many powers also block people or confuse their paths instead of opening
new ways, and thus, I feel a path whose name implies that it *both*
opens and closes would be more self describing.
I have changed most of its lore to be about the Locked Labyrinth, where
knowledge seekers willingly trap themselves and submit themselves to
servitude to find ultimate freedom by progressing through its trials.
These are the Stewards, who are basically workers in an infinite and
malicious hotel in their dreams. Consider them assistants if you will
(this wasn't my intention when I wrote the lore, but thinking about it
in retrospect, it honestly fits). In the implied story, the heretic
joins their ranks, but keeps getting closer to the more corrupt members,
along with parasitic spirits. Ultimately, they manage to open the
Labyrinth's core, letting out the Stewards, allowing them to manifest in
the forms of heretic summon creatures.
The side path spells and the lock knowledge ritual I have not touched,
they were fine. Some items have been renamed and repathed.
I have kept the distinctive sound effect for using the Grasp, as its
unique enough. Though if someone did have a nice sound effect for
turning a lock and added some filters, I would add it.
**DB Issue**
I have renamed the achievement's define to MEDAL_LOCK_ASCENSION but kept
the value as "Knock", as I don't know how trigger a change in the DB. If
this is a blocking change, I'll try to figure out how to make a
migration file.
**Future improvements**
I would also come back later with another PR, that hands out names to
the eldritch beings spawned by the portal, based on the Stewards in the
knowledge gain lore that I added, along with some new ones that fit the
theme, and some jokey ones like Minotaur.
## Changelog
🆑
spellcheck: Renamed Knock to Locks, and changed most of the flavor text
of knowledge gain, and renamed some items and knowledges from the path.
/🆑
## About The Pull Request
[Implements the backend required to make targeting datums
global](6901ead12e)
It's inconsistent with the rest of basic ai for these to have a high
degree of state, plus like, such a waste yaknow?
[Implements
GET_TARGETING_STRATEGY](d79c29134d)
Regexes used:
new.*(/datum/targetting_datum[^,(]*)\(*\)* -> GET_TARGETING_STRATEGY($1)
Renamed all instances of targetting to targeting (also targetting datum
-> targeting strategy)
I've used GET_TARGETING_STRATEGY at the source where the keys are
actually used, rather then in the listing. This works out just fine.
## Why It's Good For The Game
Not a misspelled name through the whole codebase, very slightly less
memory load for basically no downside (slight cpu cost maybe but not a
significant one.
---------
Co-authored-by: John Willard <53777086+JohnFulpWillard@users.noreply.github.com>
Gives the bandolier the ability to quick gather, adds .357 ammo to the
items it can carry and increases the capacity from 18 to 24
The bandolier feels a bit underwhelming to use with how it currently is,
Giving it quick gather and a higher carry capacity will make it worth
the belt slot, Also carrying .357 on it for a revolver is cool.
## About The Pull Request
Fixes#79545
Basically, the TGUI markdown reader that every other book uses didn't
properly send the HTML printified wiki page that we had. In order to fix
this, I shuffled around a bunch of code and worked in an edge case to
ensure that these manuals keep functioning.
In an ideal world we would be able to do something more elegant, or
maybe not even rely on displaying wiki pages in-game at all, but we just
gotta play the hand we're dealt and ensure that these sorts of features
continue to work for right now.
Also, we no longer need to both write and access raw HTML in the book
framework to make everything work here. This should reduce a LOT of
potential exploit vectors.
## Why It's Good For The Game

Thing work 👍
## Changelog
🆑
fix: Nanotrasen has clarified an issue with their manual publishers, and
these guides should now contain actual user-pertinent content.
/🆑
## About The Pull Request
I've tweaked some elements of unarmed fighting to give it additional
interactions between the various components, bridging them into a more
coherent system and focusing more strongly as tool for disabling
opponents nonlethally.
### Shoving
Shoving guarantees that unarmed attacks will land while knocked
off-balance (AKA when slowed by a shove).
Being off-balance means that you can be knocked down from a punch if you
have taken enough brute and stamina damage combined (at least above 40).
Being off-balance makes you vulnerable to grabs while you have a
moderate amount of stamina damage (30 damage), forcing you to have to
resist even passive grabs. This pairs _exceptionally_ well with
tackling.
### Grappling
Grappling someone makes your unarmed attacks penetrate armor based on a
new limb value called ``unarmed_effectiveness``. This is something
shared by kicking.
### Unarmed Attacks in General
``unarmed_effectiveness`` has also taken over the functionality of
``unarmed_stun_threshold``, as well as accuracy calculations. Human
equivalent limbs (pretty much all of them except mushrooms and golems)
have a value of 10.
Now, ``unarmed_effectiveness`` determines how accurately a given limb
makes unarmed attacks. Unarmed attacks have a base inaccuracy of 20%,
with effectiveness acting as a reduction to this value. (so for humans,
that's 20% - 10% before any value changes from brute and stamina
damage). It is also capped at 75% miss chance, just to avoid those weird
instances of two brawling fighters being incapable of finishing each
other off at a certain amount of damage and it being real awkward, like
it does currently.
It also determines the base probability of landing a knockdown punch.
For humans, this is 10%.
For the most part, these two particular changes are roughly equivalent
to the current values, just handled in a way that is more
straightforward to understand from a code perspective.
In addition to the above, human equivalent limbs have higher damage
floors for unarmed attacks. Arms deal 5-10 damage, while legs deal 7-15
damage. In addition, kicks also deal stamina damage, like punches do.
### Minor Mentions
Golems and Mushroom People (who don't even use their limbs for their
unarmed strikes because mushroom people start with a martial art) have
very accurate punches, and their punches penetrate quite a bit of armor
when they are entitled to that. They also have a high knockdown
probability. This is partially because they previously already _had_
these features due to the wonky math at play, but also because this is
their big thing they are good at.
Carp mutation also got a big win out of this as well. If and when you
actually manage to get that to work and matter.
## Why It's Good For The Game
My favorite thing in this game is the robustness of unarmed fighting.
It's the part of the game that actually acknowledges the sandbox and
environmental interaction in a big way. The only problem with the
unarmed combat is that it is a bit disjointed, and often much weaker
than using even the most pathetic weapon you can get your hands on
unless you're using the stun loops available. Those loops get a bit
boring, even if they're mostly all environmental (except for the lucky
neckgrab finish). Giving more options generally means that even when not
in an ideal position, you still have _some_ options.
It also has some internal inconsistencies in design even in the same
proc, like accuracy calculations and knockdowns, as well as weird splits
in damage. So I decided to resolve that.
Now, every part of unarmed fighting has some relevance in the other
parts. Predominantly, it is heavily favoured towards dealing stamina
damage, making unarmed combat very favourable as a nonlethal method of
taking someone down, which is something we currently lack considerably.
While people may still opt to simply beat someone into actual crit
rather than stop at stamina crit, the possibility is actually entirely
available and supported now. No just banking on a lucky neckgrab after a
shove.
Paying attention to damage dealt and thinking intelligently about how
you apply combinations of effects allows even someone on the significant
back foot an opportunity for a comeback if they know what they're doing
against even armed opponents.
Separating accuracy and knockdown effectiveness from damage allows for
more consistent design and readability, but also preventing weirdness
ike tighter damage spreads increasing knockdown probabilities as well as
increasing accuracy without the coder knowing why. This also lets us
make unarmed attacks just that little bit stronger. Since unarmed
attacks require more complicated combinations to work, I think this
won't make them stronger than weapons necessarily, but it will make for
more interesting swung fights.
## Changelog
🆑
add: With the flood of Chi within the Spinward Sector receding, various
masters of The Tunnel Arts, colloquially known as 'Maint-fu Masters',
have started to refine the basics of their martial techniques. New forms
have started to develop within Spacestation 13's hidden maintenance
dojos.
add: Someone shoved off-balance makes them vulnerable to more guaranteed
unarmed strikes, knockdowns from a successful punch, and more difficult
to escape grabs.
add: Grabbing someone (as well as kicking them while they're on the
floor) makes them more vulnerable to taking unarmed attack damage, even
if they have armor.
balance: Unarmed strikes made with human-equivalent limbs have higher
damage floors, meaning you overall do more damage on average while not
increasing the overall damage potential. It's more consistent!
refactor: Significantly changed how punching accuracy and knockdowns are
calculated.
balance: Golem and mushroom limbs are a lot more effective at punching
as a result of these various changes. As they should be.
/🆑
## About The Pull Request
Okay; Take two at this ~~because I totally didn't delete my sprites and
set myself back when all I had to do was fix a few merge issues and
instead decided to entangle myself in adding another plant.~~
This PR aims to add THREE new plants; Pepper-Corn, Saltcane and
Butterbeans.
Peppercorn can be ground for black pepper.
Saltcane can be ground for salt or dried into a seaweed sheet
replacement.
Butterbeans can be pressed into a small slice of butter, or ground for a
small amount of milk/cream and fermented for yoghurt.
I have also added fermentation of Soybeans to produce soysauce... since
that's literally how authentic soysauce is made.
## Why It's Good For The Game
I personally feel this will be good for the game as it means the kitchen
can rely on their botanists to produce higher quality ingredients and
don't have to harass other places or hemorraghe money to make good food
for the crew. Easier access to condiments allows for easier production
of a varied amount of food.
<!-- Write **BELOW** The Headers and **ABOVE** The comments else it may
not be viewable. -->
<!-- You can view Contributing.MD for a detailed description of the pull
request process. -->
## About The Pull Request

Engi now has access to a Half Life 2 Inspired rebar crossbow! Made of
rods, wire, and an inducer, it shoots sharpened iron rods at a high
velocity. High damage and good embed chance, but requires you to reload
every shot which requires you to stand still for three seconds to pull
the string back. You can also Use a wrench on it to force it to store
more rods (read: more than one), but risks it exploding and shooting you
instead.
The syndicate variant, avaliable to traitor engis, can fire three rounds
before needing a reload, and features a scope and better armor piercing
ammpo, but costs 10TC. I see it as a sidegrade to the revolver - quieter
and has much more widespread ammuniton, but holds less ammo and doesnt
have the same burst stopping power. And, to those concerned about the
balance of a non-traitor with this item - the AP ammo can only be made
by the traitor who bought it, and anyone else has to use normal ammo.
GUN STAT JUNK
Normal one has 60% embed chance and does 40 damage (against unarmored
targetd), but requires you to wait at least 3 seconds not moving to pull
the string back. Good alpha strike but not sustainable in a long fight.
Its akin to a pipegun.
Lacks any AP qualities besides piercing a jumpsuit, because any wound
chance it has is due to a bare skin bonus. Generally not a great weapon
to fight sec with.
Syndie version is generally the above but better. Takes less to pull the
string back, slightly higher damage, better fire rate, etc. Doesnt fare
well against any armor thats equivalent to sec gear or better due to
most having low (relatively) AP and wound chance, but good bare wound
bonus.
STATS TLDR: Its good against unarmored chumps and greyshirts but anyone
in armor that protects against bullets will kick your teeth in.
Also, Ammo is crafted from an iron rod. I wanted to have it just fire
rods as is, but theyre stacked items which you cant define projectiles
or ammo from.
## Why It's Good For The Game
I've always felt engi, for as big of a department as it is, is lacking
in the "fun weapons" area. Sci has mechs and xenobio, med has chem nades
and syringe guns, and cargo has anything the QM will buy - but other
than the flamer and shocked doors, engi doesnt have much. Thats why I
made this pr. it was originally just a traitor item, as they lacked many
traitor items in their shop, but I felt like a worse, bootleg version
would suit them.
## Changelog
<!-- If your PR modifies aspects of the game that can be concretely
observed by players or admins you should add a changelog. If your change
does NOT meet this description, remove this section. Be sure to properly
mark your PRs to prevent unnecessary GBP loss. You can read up on GBP
and it's effects on PRs in the tgstation guides for contributors. Please
note that maintainers freely reserve the right to remove and add tags
should they deem it appropriate. You can attempt to finagle the system
all you want, but it's best to shoot for clear communication right off
the bat. -->
🆑
add: Enginenering rebar crossbows + tot kit
add: Added a bunch of ammos and crafting junk to make the ammo exist
image: added icond for all the above
/🆑
<!-- Both 🆑's are required for the changelog to work! You can put
your name to the right of the first 🆑 if you want to overwrite your
GitHub username as author ingame. -->
<!-- You can use multiple of the same prefix (they're only used for the
icon ingame) and delete the unneeded ones. Despite some of the tags,
changelogs should generally represent how a player might be affected by
the changes rather than a summary of the PR's contents. -->
---------
Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
Co-authored-by: Jacquerel <hnevard@gmail.com>
## About The Pull Request
1. Replaces all usages of `GLOB.chemical_name_list` with
`GLOB.name2reagent` both of these are lists that store the names of
reagents mapped to their respective typepath so the first list was
redundant. Also now `GLOB.name2reagent` has its names sorted
alphabetically & white space between words and their case preserved.
This means that
- The search button for finding reagents in the chem dispenser
- Adding reagents to the plumbing reaction chamber
- Adding reagents to plumbing chem filter
- Adding whitelist reagents to blood filter
Now **won't** display a list like this(searched for Strong Acid Buffer,
notice all space and case between words are lost)

But **will** instead display this(searched for Strong Acid Buffer,
notice all space and case between words are preserved)

Making these names much more readable.
2. In searching for all use cases of `GLOB.name2reagent` i found it was
used by 2 significant machines, the chem dispenser & portable chem
dispenser. So i took the time to clean up their code(auto doc vars, make
lists static etc etc.) and converted their UI to typescript.
3. Slightly improves performance of plumbing reagent chamber. Makes
lesser loops & hopefully gets better results
## Changelog
🆑
qol: machines/devices that ask you to pick a reagent name from an input
list have their names sorted alphabetically & preserves white space
between words making them more readable.
qol: improves performance of plumbing reaction chamber furthur
code: cleaned up code for portable chem mixer & chem dispenser.
converted their ui to typescript
/🆑
## About The Pull Request
I was asked by a maintainer to split this off from my other PR (#79360),
so here it is. Basically, health analyzers are hard-coded to list you as
a mutant if you have wings from a flightpotion. This only applies to
flightpotion wings; no other organ, internal or external, not even moth
wings, work in the same way. So this PR just removes that check for
consistency.
I'd also like to note that I'm not opposed to the flightpotion being
made to _actually_ change your species again, as long as someone else
does the work. In fact, if someone were to do that this change would
still make just as much if not more sense.
## Why It's Good For The Game
As far as I can tell, there is no reason for this check to exist. At one
point, the flight potion did actually change your species, and it seems
like this check is just an old, unneeded relic of that. I'm not aware
for any balance reason for this check, unlike the hulk mutation.
Although you can argue that policy lists people with angel wings as
being nonhuman, that is specifically because the health analyzer lists
them as mutants, so it makes no sense for health analyzers to do so
because of policy.
## Changelog
🆑
balance: Flightpotion wings will no longer make health analyzers list
you as nonhuman.
/🆑
## About The Pull Request
Fixes#79547#78597 broke induction implants by replacing the "has antag datum" check
with a "does not have a fake antag datum" check which passes on a null
case. I added an `isnull()` check to cover this.
The introduced `antag_flags` var was by default set to
`FLAG_FAKE_ANTAG`, presumably in error as the only antag datums to
override this are ERT and Valentines and they just set it to
`FLAG_FAKE_ANTAG` anyways. This also means the induction implants ONLY
worked on non-antags and anybody with any antag datum would fail the
implant. I changed the default to `NONE`. This may have some knock-on
effects as `is_special_character()` was returning `FALSE` with any antag
datum (unless allow_fake_antags was passed) but no special role which
this also fixes.
## Why It's Good For The Game
Non-antags can no longer self-antag their way onto a nuclear operative
team and antags can now antag their way onto a nuclear operative team.
## Changelog
🆑
fix: Nuclear operative induction implants now work correctly on
antagonists and fail on non-antagonists
/🆑
## About The Pull Request
refactors leapers into basic mobs and adds a new ability for wizards.
for 2 points wizards can buy their own leaper pet. they will get a
contract which lets them pick their pet's name and color

after they sign the contract they will get a frog statue which is used
to contain the leaper. players can use this statue to release or recall
the leaper into the statue. when its in the statue it will slowly regain
health or even revive from the dead, but if it gets gibbed then the
statue will be useless.
also adds a new ai behavior for leapers which lets them go swim in water
(and splash around) for a period of time. i gave this behavior to frogs
and crabs too
when riding the leaper, the players will get access to all its
abilities, it now has new abilities, it can create frog minions that
suicide bomb the enemies and it can also create a shower of poisonous
structures.
https://github.com/tgstation/tgstation/assets/138636438/931aa7b4-09f0-493f-bdb6-f3bdd0915b22
also when riding the leaper, players can point at walls near it so it
will destroy it. alternatively players can give commands to their
leapers to use abilities and to follow them if they are not riding it.
wizards cant be force dismounted from their frogs, and only wizards can
ride the frogs.
this also removes leapers from cytology as they now are much more
dangerous and have a new home
## Why It's Good For The Game
refactors leapers into basic mobs, and gives more gameplay opportunities
for wizards
## Changelog
🆑
refactor: leapers have been refactored into basic mobs please report any
bugs
add: wizards can now summon a leaper pet
removal: removes leapers from cytology
/🆑
## About The Pull Request
This helps clean up my favorite helper proc in the whole codebase,
`notify_ghosts()`.
The notify_suiciders, ignore_mapload, and flashwindow args are GONE.
They have been replaced with the notify_flags bitflag argument. This was
intended to make deadchat announcements a bitflag argument too, but
those got reverted right before I originally wanted to submit this PR.
The on-screen popup now shows the notification body when you hover it
with your mouse again. The format is now `[notify_ghosts message] --
[click action (orbit/jump/play)]`
Every single `notify_ghosts()` call has been changed to multiline format
and has been given trailing commas. Pretty!
## Why It's Good For The Game
Cleans up a proc that is very popular and going through a lot of changes
at the time.
Allows for further flexibility when this proc inevitably gets tweaked or
improved. 12 -> 10 args is an improvement, and it doesn't impact the
helper's flexibility at all.
## Changelog
🆑 Rhials
code: The notify_ghosts proc has been cleaned up. Please report any
abnormal changes in deadchat notification behavior.
qol: The on-screen deadchat popups now contain the notification blurb
when hovered with your mouse again.
/🆑
## About The Pull Request
Adds player ckey to who builds a holobarrier, for admin use
## Changelog
## Changelog
🆑
admin: Holobarrier creation now adds player fingerprint data
/🆑
## About The Pull Request
Improves penlight sprite and code.
A new type of pen has been introduced - the Security Pen. This pen is
red and can create a holograph around a person, similar to a medical
penlight. The holograph prompts the person to surrender for 30 seconds,
and the holograph itself is visible for 5. There is a 30-second cooldown
between usage.
Holosign itself does nothing except be visual, just like medical
holosign **(DO NOT MISTAKE HOLOSIGNS FOR HOLOBARRIERS)**
https://github.com/tgstation/tgstation/assets/42353186/1ee5f794-7218-4e52-b04f-3ebb50bd224a
Now every Security member spawns with a Security Pen in their PDA.
Now you can print Security Pens at Security Techfab, and Penlights at
Medical Techfab.
## Why It's Good For The Game
The only way to prompt someone to perform the surrender emote is by
holding them up with a gun. However, this mechanic can be quite
unreliable, even after updates, especially if the person is moving. As a
result, many players are unaware of how to prompt the surrender emote or
even about its existence, so they don't know they can trigger it
themselves by typing "*surrender".
This enables non-lethal arrests without stun batons or other tools.
Sprites are a significant improvement as the previous penlight sprites
were outdated.
## Changelog
🆑
qol: There is now a more convenient way to prompt surrender to emote -
the Security Pen. Each officer is equipped with one in their PDA. Simply
click someone with it to prompt a 30-second surrender. They are
printable at Security Techfab as well.
qol: Penlights now are printable at Medical Techfab.
image: Penlights got a new cleaner sprite to replace its ancient one
code: The code for Penlight's holographic sign has been improved.
/🆑
## About The Pull Request
Closes#79301
Saw this PR, realized how much this annoyed me whenever I played. Not a
hard fix either, since RCD's were a perfect example.
(In the future perhaps items that use upgrades like this could have one
base type of disk, and a component for 'upgrade_disk_tool', but that's
way, WAY out of my experience. Just something I noticed between the RPD
and RCD disks.)

One on the Left already has the upgrade. Neither try to double-install
it! (Shown for posterity)
Ones on the right are installed both ways. One, the RPD on the Disk. The
other, the Disk on the RPD!
---
Actual PR changes:
- New proc on the RPD called `install_upgrade()` - If the upgrade disk
isn't installed, it installs it onto the RPD and deletes the disk. So,
the same as the RCD one, but fewer checks since the RPD's got a lot
fewer disks. But, easier to add new ones now.
- Since `install_upgrade()` is a thing, the attack chain's code for how
RPD's originally got upgraded is now much shorter. It still functions
the same, though - nothing was removed in this PR!
- Adds an attackby check - if the RPD's attacked by an upgrade disk it
will try to `install_upgrade()`. So basically, what RCD's have.
## Why It's Good For The Game
Consistency between the RPD and RCD upgrade-wise. The RPD's other method
of installing (hitting the disk WITH the RPD) still works, but now
players used to the RCD won't get confused.
## Changelog
🆑
qol: The RPD now accepts upgrade disks inserted by hand, as well as
their original method of hitting the disk with the RPD
/🆑
---------
Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
## About The Pull Request
gives revolvers on the nukie uplink syndie firing pins
## Why It's Good For The Game
Every other firearm on the nukie uplink has a syndie firing pin.
## Changelog
🆑
fix: The Syndicate Revolver now has a Syndicate Firing Pin on the Nuke
Ops uplink.
/🆑
## About The Pull Request
Fix bug that you can't use chameleon projector on items with
datum/storage(backpacks, box, holsters etc). Now you can right-click on
it to copy icon.
## Why It's Good For The Game
https://github.com/tgstation/tgstation/issues/55143#issue-749661132
## Changelog
🆑
fix: chameleon projector now can copy icon for storage items(backpacks,
box, holsters etc) using right-click on it.
/🆑
## About The Pull Request
Brings the CQC kit back down to the same price range of 14 TC (it's 1
more than before weapon kits). It feels like currently that CQC is
overpriced, even with the stealth box coming along with it, and by
comparison the energy sword and shield got a huge value increase by
combining the two. They're both melee styles and also equally difficult
play styles. It isn't really necessary to make one more expensive than
the other. Also now comes with syndicate smokes. It's a whatever change,
ops get these for free on the base.
Adds a core gear kit in the weapon category. This kit comes with a
doormag, a freedom implant, stimpack and c-4 charge. All of these are
items almost every nukie buys if they want to succeed, so let's inform
newer players by putting it RIGHT on top of the list. This isn't at any
discount, this is mostly to help inform players what items help make you
successful.
Hat stabilizers are now a part of every syndicate modsuit for FREE. It
comes built in, can't be removed, and has no complexity cost. Now
everyone can wear their wacky hats as they operate.
## Why It's Good For The Game
CQC felt like it got shafted waaay too hard with the weapon case
changes. Definitely don't believe that it is punching at the same weight
as many of the other high cost weapons. So we've dropped it down a
category. 14 TC is still a large upfront cost, even if it comes bundled
with a lot of goods.
Melbert gave me the idea of a core bundle kit to help newer players and
I was really taken with that. So I added it as part of this followup.
I want people to wear their hats goddamnit, and I didn't learn my
mistake with the tool parcels. So now everyone has hat stands on their
suits. WEAR THE SOMBRERO YOU **FUCK**.
### THIS IS NOW A THREAT.
## Changelog
🆑
balance: Operatives can once again read about the basics of CQC at a
reasonable price of 14 TC.
qol: All Syndicate MODsuits come with the potent ability to wear hats on
their helmets FOR FREE. No longer does any operative need be shamed by
their bald helmet's unhatted state when they spot the captain, in their
MODsuit, wearing a hat on their helmet. The embarrassment has resulted
in more than a few operatives prematurely detonating their implants! BUT
NO LONGER! FASHION IS YOURS!
qol: There is now a Core Gear Box, containing a few essential pieces of
gear for success as an operative. This is right at the top of the
uplink, you can't miss it! Great for those operatives just starting out,
or operatives who need all their baseline equipment NOW.
/🆑
## About The Pull Request
Title
## Why It's Good For The Game
Less headache in the future for a macro thats not really obvious in what
it does
## Changelog
🆑
fix: signals in circuits now actually function
/🆑
## About The Pull Request

adds this ruin to space ruin pool
this is a shady (as NT always is) bioresearch outpost that got fucked up
by an experiment
this has like some puzzle aspect to it since you gotta find keycards and
shit and press buttons to unlock shield gates
this ends with you fighting a heart which if you defeat, destroys the
blockade that prevents you from entering the outpost vault
also you can no longer literally just cut indestructible grilles or
unanchor indestructible windows
### new puzzle elements or something idk
variant of pressure plate that you cannot remove and it sends a puzzle
signal
cooler red puzzle doors that look very foreboding or something idk
theyre for this ruin
also puzzle blockades, which are indestructible dense objects that are
destroyed if they receive a puzzle signal
and also buttons and keycard pads for puzzles
https://github.com/tgstation/tgstation/assets/70376633/c98807ec-1e7b-49c4-a757-cdbb76a1b566https://github.com/tgstation/tgstation/assets/70376633/9d5d9dd1-5868-44e6-a978-5ea57b30c298
stuff that throws electric shocks in a pattern, ignores insuls and only
knocks down, and no you cannot just run past
https://github.com/tgstation/tgstation/assets/70376633/5772917c-a963-48a4-a743-b0f610801d25
### enemies
living floor, it can only attack stuff on top of it and it attacks until
the victim is dead
it is invincible to all but a crowbar, and it cannot move, and it
remains hidden until a victim is in range
https://github.com/tgstation/tgstation/assets/70376633/aa1d54f6-b259-4e58-9d44-e393d2131acf
living flesh, it can replace your limbs with itself
the conditions for that are; the limb must have 20 or more brute, victim
must be alive and dismemberable, the limb may not be torso or head, or
the limb may not be living flesh
alternatively it can replace a missing limb
these are all checked with every attack
they have 20 hp
the limbs in question will sometimes act up, while passively draining
nutrition, arms will randomly start pulling nearby stuff, legs may step
randomly
limbs when detached, turn into mobs and reactivate AI 2 seconds later.
if the host is shocked, all living flesh limbs will detach, or if the
host dies they will also do that
https://github.com/tgstation/tgstation/assets/70376633/765cc99e-c800-4efb-aabe-d68817bbd7ae
## Why It's Good For The Game
ruin variety is cool i think
also the other things i added should be useful for other mappers for
bitrunning or whatever
also bug bad for that one fix
## Changelog
🆑
add: living floor, living flesh, and other stuff for the bioresearch
outpost ruin
add: bioresearch outpost ruin
fix: you may not defeat indestructible grilles and windows with mere
tools
/🆑
---------
Co-authored-by: Jacquerel <hnevard@gmail.com>
## About The Pull Request
#67676 described a bug where PDAs can apparently emit a small amount of
light after being affected by the light eater. As it turns out, the bug
is even worse than that. It doesn't work for just PDAs, it works for
basically any light source that can be turned off and on. Even
flashlights. In the following pictures, a flashlight has been
light-eaten and then turned off and on again:

Observe how the nightmare jaunt is available, as it should be. However,
one step closer to the flashlight:

The nightmare jaunt can no longer be used, because the flashlight is
still emitting light.
This PR just fixes that behavior. Light-eaten objects will now be
totally dark again, even after being power cycled. Closes#67676.
## Why It's Good For The Game
Bugs bad.
## Changelog
🆑
fix: Light-Eaten objects can no longer emit light after being turned off
and then back on.
code: Flashlights now use light_on instead of defining their own
variable. Please report buggy behavior.
/🆑
## About The Pull Request
Changes the amount of HP gained when treating basic and animal mobs. For
today mobs receive treatment equal to the half treatment of the selected
object like sutures heal 5 hp.
Because of this, mobs with a large amount of HP, such as gorillas, spend
one stack of sutures to heal themselves for 1-3% of HP, while mobs with
a small amount of HP, for example 25 HP, will receive treatment equal to
20%.
With this PR, all basic/animal mobs receive the same % of HP equal to
the amount of healing for using one healing object. Like if sutures heal
10 brute damage, it will heal 10% of basic/animal mob HP.
## Why It's Good For The Game
Makes treatment for basic and animal mobs more understandable and less
resource-intensive, like if you heal basic/animal mob with 100 hp or 220
hp you will need the same number of sutures.
## Changelog
🆑
balance: Sutures now heal a percentage of basic/animal max health
instead of a flat amount.
/🆑
## About The Pull Request
- `apply_damage` is now uniform, handled, in a single place. At the
living level.
- Fixes people being held at gunpoint from being unable to flinch from
taking damage.
- Fixes a few signals (explodable, glass jaw) of apply damage maybe
potentially not having effects if the passed hit zone was a bodypart and
not a def zone.
- Fixes regenerator component always halting regeneration no matter what
damage taken.
- Fixes pressure damage being unaffected by `brute_mod` despite what
documentation claims.
- Signalizes the `check_species_weakness` proc on species.
## Why It's Good For The Game
The copy+paste of this proc made it awful, awful to maintain or add
features to. And also made it very bug prone.
This just takes a step forward in making sustaining damage a lot more
consistent, not only across all mobs, but across all methods of...
taking damage. Unarmed attacks, hulk, item attacks, etc.
## Changelog
🆑 Melbert
fix: People held at gunpoint can now flinch when being hit.
fix: Regenerating mobs no longer stop regenerating no matter hit with
what.
fix: Pressure damage is now properly modified by a mob's brute damage
modifier.
fix: Fixes some occasions which some effects (glass jaw, explodable worn
items) won't respond to hits.
refactor: Refactored core code related to mobs sustaining damage.
/🆑
## About The Pull Request
Caused by #77465
Two global lists, food items are only found in one. This locate failed
and caused the next line to runtime error.
## Changelog
🆑 Melbert
fix: Cooking Deserts 101 grants all intended recipes
/🆑
## About The Pull Request
#79139 turned out to be quite annoying, it wasn't taken into account
that these alerts can stack (ie: spiders).
Of course, I poked around the code and found some inconsistencies in the
process. For instance, there were usages of Topic for custom action
behavior which could've been consolidated. There were other instances
where jump (the default action) doesn't give a link at all, which I
think it should anyway, since the screen toast gives you this.
I've standardized it more, meaning you can use "NOTIFY_PLAY" without
writing a custom link and topic handler (for instance, MMIs)
## Why It's Good For The Game
Fixes#79198Fixes#79195
## Changelog
🆑
fix: Ghost alerts have been tuned down a bit.
/🆑
## About The Pull Request
may not enter refuge with the nuke disk and may not be cuffed in refuge
cuffing someone in refuge mansus grasps the person cuffing
i havent tested this because i am out of time as of time of writing so i
am PRing as draft until i test this
also claiming the issues
## Why It's Good For The Game
fixes#79133fixes#79126
## Changelog
🆑
fix: you may not enter knock path caretakers last refuge with the nuke
disk
fix: you can no longer cuff knock heretics in refuge
/🆑
## About The Pull Request
Adds a Syndicate Monkey Agent beacon uplink item. It spawns a dapper
monkey that must follow your orders.
Added a monkey gun case to the uplink, which contains monkey guns!
Though they aren't very powerful.
Added a more modularlike subtype for antagonist spawners to reduce
future hardcoding.
Gave the syndicate turtleneck a monkey sprite, from SS14!
## Why It's Good For The Game
I want to see the clown driving security insane with 2-3 monkeys and an
incredible amount of pranking. Or an assistant killing everyone with his
monkey friends while wearing a monkey suit. Or a geneticist sending out
mutated monkeys to kill people. Or a scientist equipping his monkeys
with bombs or xenobiology equipment and sending them out to wreak havoc.
6 TC is only enough for two monkeys, but you can get a third if you
finish any kind of objective.
> Added a monkey gun case to the uplink, which contains monkey guns!
Though they aren't very powerful.
We can't have the monkey mafia without guns, come on. The guns are weak
and only usable by monkeys. Additionally, they're restricted to
entertainment only.
Credit to SS14 for the monky turtleneck sprite.
## Changelog
🆑
add: Adds a Syndicate Monkey Agent beacon uplink item. It spawns a
dapper monkey that must follow your orders.
add: Added a monkey gun case to the uplink, which contains monkey guns!
Though they aren't very powerful.
refactor: Added a more modularlike subtype for antagonist spawners to
reduce future hardcoding.
sprite: Gave the syndicate turtleneck a monkey sprite, from SS14!
/🆑
---------
Co-authored-by: ATH1909 <42606352+ATH1909@users.noreply.github.com>
Co-authored-by: Jacquerel <hnevard@gmail.com>
## About The Pull Request
- Fixes#79127
The argument `max_res_amount` in `/datum/stack_recipe` must be greater
than 1 for the recipe to produce multiple tiles. I made this value the
same as creating iron floor tiles from a stack of iron sheets i.e. 20
## Changelog
🆑
fix: plastic sheet produces 4 tiles via the tiles option without using
the crafting menu
/🆑
## About The Pull Request
Changes the sprites of the Station Intercom, Command Intercom, and
Prison Intercom to the next ones:



Now Station Intercom and Command Intercom descriptions are changed to
tell more about their real functionality.
Command Intercom now has High-Volume settings like heads headsets.
There is now a memo with frequencies of every channel on the station,
the memo is placed near the Command Intercom and in the
Telecommunications Room.
## Why It's Good For The Game
Intercoms are part of the "old wall-mount" sprites that were never
touched, besides the brief addition of overlays.
Replacing them to design more familiar of other wall-mounts will make it
less ancient.
Making the Command Intercom and Prison Intercom look unique ensures
players (especially new ones) can distinguish them by just glancing
without needing to examine them.
The Command Intercom having a High-Volume setting makes it even more
unique as an item that is only met in one room at the station, also
makes any Command orders given through an intercom (during
Telecomunnications outages) more noticeable.
The description change gives more useful information about Station
Intercom and Command Intercom. Now players (especially new ones) can
understand that Station Intercoms are usable during telecommunications
outages, and Command Intercoms can be set to any frequency.
The memo will help players (especially new ones) understand what numbers
they should input to access certain channels using Command Intercom, as
right now, the only way to find out the frequencies is through wiki or
directly checking servers.
<!-- Argue for the merits of your changes and how they benefit the game,
especially if they are controversial and/or far-reaching. If you can't
actually explain WHY what you are doing will improve the game, then it
probably isn't good for the game in the first place. -->
## Changelog
🆑
qol: The Command intercom now has a High-Volume setting like command
headsets
qol: A memo telling frequencies of station radio channels are now
present near the Command intercom and T-Comms room
image: Station, Command, and Prison intercoms have received new sprites
spellcheck: Station and Command intercom descriptions have been changed
to tell about their functionality
/🆑
## About The Pull Request
This makes a new ghost poll system which doesn't give TGUI popups -
instead, users are prompted to follow the POI and one of the orbiters is
chosen. The old system remains in place, so you can still prompt if you
want to.
This gives two things:
1. A deadchat notification:

2. A screen alert:

## Why It's Good For The Game
As stated in #76507, popups are pretty annoying. This is halfway between
a screen alert with no time limit and an event with more important
pings. This is better because:
1. Less popup fatigue
2. You can SEE how many you're competing with
4. DRY
## Changelog
🆑
add: Adds a subtle ghost poll. This pings in dead chat and gives a
screen alert, but no TGUI popup. Orbit the point of interest to be
selected for the role.
refactor: A number of ghost spawns now feature this alert. Write an
issue report if anything breaks.
/🆑
---------
Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
## About The Pull Request
This PR has a few simple aims; 2 new rootbread sandwiches, slicable
versions of most pies and a new rootbread crafting method.
Sliceable pies added:
-Cherry
-Apple
-Frosty
-Meat
-Tofu
-Xenomeat
Sammiches: Peanut butter & jelly and peanutbutter & banana.


## Why It's Good For The Game
Lizard food has been around for a while; if it's ever made it's usually
the same handful of easy dishes repeated and recycled. Why can't a
lizard enjoy a good sandwich? Even the most subhuman crewmembers deserve
a treat every once in a while!
Sliceable pies are good; because watching someone eat an ENTIRE pie to
themselves is insulting and justifies the chef leaping over the counter
and feeding them their own entrails!
EDIT: I forgot to mention in my first pass why the rootdough alternative
was good; I noticed that in cakebatter you are able to replace eggs with
soymilk, to allow an alternate way of making it. I repeated this trend
of replacing eggs with soymilk as it's a replacement for eggs and is
also lizard safe.
## Changelog
🆑
add: Most pies can now be sliced rather than being consumed whole.
add: Rootdough can be crafted using soy milk in place of eggs.
add: Two new lizard-safe rootbread sandwiches can be crafted.
/🆑
## About The Pull Request
Adds food allergies as a counterpart to medicinal allergies.
This is about as you would expect. Eating food you are allergic to
causes Anaphylaxis, which can be cured with epinephrine. If you are not
cured rapidly, you will shortly fall into a coma and die.
There is a preference for choosing your character's allergy.
Not all food types are viable allergen types: Only `"Alcohol", "Bugs",
"Dairy", "Fruit", "Grain", "Meat", "Nuts", "Seafood", "Sugar",
"Vegetables"`.
You also get a dogtag like med allergies.
Minor implementation detail: I added a "dangerous" level of food quality
/ scale, so I gave it to the Death Sandwich.
## Why It's Good For The Game
This was a request, and I saw it fairly harmless, so I said why not.
Similar to Medicine Allergy, it adds a small mechanic to concern
yourself with when you visit the kitchen, encouraging you to get a bit
more familiar with food types before diving into food at the kitchen.
As it is not as impactful as Medicine Allergy, it is only a -2 quirk.
## Changelog
🆑 Melbert
add: Adds Food Allergies as a -2 quirk. You can select which food you're
allergic to or rock a random option.
/🆑
## About The Pull Request
See the title.
## Why It's Good For The Game
Someone pointed it out on #78743. I'd like to consider this a fix, even
though carlarc has actually set blood decals for cooked xeno and killer
tomato meat toos, because meat generally loses blood as it gets
griddled, and doneness really isn't a feature yet.
## Changelog
🆑
fix: Cooked meat no longer spreads blood around as if it weren't cooked.
/🆑
## About The Pull Request
In #78322 I removed the reagent purity initialize argument from grown
items, thinking it was only used by butter. It was actually used in two
other places which I missed, in which I have implemented the same
functionality.
Rather than passing the desired purity on creation we instead just set
the purity of contents reagents after initialising the atom. This
broadly replicates what the edible component was doing, as these items
only get reagents from being edible.
## Changelog
🆑
fix: Meatwheat Clumps, Bungo Pits, and Eggplant Eggs should once again
inherit reagent purity from the grown item which produces them.
/🆑
## About The Pull Request
/obj/item/skeleton_key is now in the mining belt's holdable list
## Why It's Good For The Game
Fixes#79099. I assume this was a bug since plenty of other small-sized
mining purchasables can fit in the belt.
## Changelog
🆑 Treach
fix: Skeleton Keys now fit in the Explorer's Webbing.
/🆑
## About The Pull Request
Adds a variable to exports called `scannable`. If you are trying to scan
it and its set to false, then it won't show the value. When the actual
sale is done, the value will still be added/subtracted.
I also reorganized the message the scanner sends because I didn't want
to put multiple inline if statements.
Lastly, made it so that locked crates and private order lockboxes can't
get the shipping manifest contents error by adding a new trait
`TRAIT_NO_MANIFEST_CONTENTS_ERROR`. For departmental orders, I just
entirely disabled the manifests having errors by setting it to
`MANIFEST_CAN_FAIL` to false.
This PR conflicts with #78911, sorry but that PR was what reminded me to
fix this bug.
## Why It's Good For The Game
Some may call it tedium but having to read paperwork is part of the
cargo experience. Since it is harder to determine the crates value,
there has been a few balance changes. The penalty for incorrect manifest
is half the crates price or 500 credits, whichever is less.

Let me know if you have any suggestions for how the message is worded,
it might be too long.
Locked crates and private orders can no longer get the shipping manifest
contents error because it is basically impossible to get someone to tell
you all the contents of their purchase. It's only a 5% chance of being
wrong and if they're not in cargo they probably don't care about the
cargo budget.
## Changelog
🆑
balance: Export scanner no longer shows value of shipping manifests, now
you actually have to read them.
balance: Shipping manifest penalty is now only half crate cost as well
as capped to 500 credits.
balance: Shipping manifests for private orders or locked crates can no
longer have the incorrect contents error. Shipping manifests for
departmental orders can n longer have any error.
/🆑
---------
Co-authored-by: Jacquerel <hnevard@gmail.com>
Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
## About The Pull Request
A long time ago, it was common for designs to cost reagents in addition
to normal materials. Every circuit board used to require sulfuric acid,
for example. However, these designs have slowly been whittled away, and
only two remain: the death syphon PKA modkit, which costs blood, and
paint remover in the service lathe, which costs acetone. Although these
two designs still use the old system, it is very outdated, and it shows.
TGUI doesn't take reagent costs into account at all. Reagent costs
aren't displayed on mouse over like material costs, and the design won't
be greyed out if there necessary reagents aren't present. If you try and
fail to print one of the two designs, the protolathe will tell you that
reagents are missing, but it won't say what reagents. In fact, there is
not way to find out what reagents are required without code diving.
## Why It's Good For The Game
In light of how outdated and unsupported this system is, I think it
makes sense to deprecate it almost entirely.* Now, protolathes, circuit
imprinters and techfabs will no longer take reagent costs into account
at all, even if a design does define reagent costs. The machines also no
longer need beakers to be built, and reagents can't be transferred into
them. The two remaining designs that did use reagent costs now don't,
and I've updated the designs unit test to fail if any non-limbgrower
design does set any reagent costs.
*Limb growers are the exception, as they're fully functional and work
fine.
## Changelog
🆑
del: Protolathe/circuit imprinter/techfab designs costing reagents is
now totally deprecated.
/🆑
## About The Pull Request
When switching between "Construction" & "Airlocks" tab the UI would not
update unless you closed & reopened the UI. This was annoying so I fixed
it & now the UI updates properly. Same applies for RTD when switching
between floor types
## Changelog
🆑
fix: RCD & RTD ui updates when switching between root categories
/🆑
Also optimizes the update_icon proc a little bit, especially as a round
goes on, since everything is stored as an appearance (or text, gross)
this allows us to only call on overlay update code if the managed
overlays change.

This also fixes some sources of null overlays but it ended up being more
things than I should shove into this pr if I were to fix all of them.
Should probably be testmerged for a little bit to make sure nothing
weird comes from assuming everything being passed in has an appearance
var.
## About The Pull Request
Adds 'Bloody Spreader' component that bloodies everything it touches!
For example inserting an item into it if it is a storage item. Or
entering it if it's a turf, or bumping onto it, or... you get the point,
hopefully.
Added this component to the MEAT backpack, meat slabs, bouncy castles,
meateor fluff, meateor heart, and the heretic sanguine blade.
Gave most of these the blood walk component as well, which spreads blood
if it's dragged around.
Meat slabs contain a limited amount of both components, eventually they
will 'dry out'.
## Why It's Good For The Game
Meat isn't meaty and squelchy enough, this will make it meatier. It also
makes the janitor suffer.
## Changelog
🆑
code: Adds 'Bloody Spreader' component that bloodies everything it
touches!
code: For example inserting an item into it if it is a storage item. Or
entering it if it's a turf, or bumping onto it, or... you get the point,
hopefully.
add: Added this component to the MEAT backpack, meat slabs, bouncy
castles, meateor fluff, meateor heart, and the heretic sanguine blade.
add: Gave most of these the blood walk component as well, which spreads
blood if it's dragged around.
add: Meat slabs contain a limited amount of both components, eventually
they will 'dry out'.
code: Added a signal for when an item is entered into storage.
/🆑
## About The Pull Request
The boris module that turns a cyborg into an AI shell is a bit weird. It
can be used like an MMI or a positronic brain directly on a completed
borg exoskeleton. It can also be used like any other cyborg upgrade on a
completed cyborg, if an only if that cyborg is not controlled by a
player already. If you reset an AI shell, it is intended to make the
cyborg un-player controlled and to drop the boris module onto the
ground. From there, you are supposed to be able put it back in like any
other upgrade.
However, this behavior was bugged. Due to certain parts of the code not
calling procs they should have, the boris module was not being properly
removed from the list of upgrades when the shell was reset (in most
cases). This meant that the boris module could not be re-applied to the
newly empty borg. Furthermore, if the empty borg was deconstructed then
the dropped boris module would immediately be deleted.
This PR just fixes all that behavior so it works properly. I also fixed
a weird typo with removing cells from borgs because I noticed it while
testing.
## Why It's Good For The Game
Bugs are bad.
## Changelog
🆑
fix: B.O.R.I.S. modules can once again be properly applied to the
unformatted borg created when you reset an AI shell.
/🆑
## About The Pull Request
- Refactored `bullet_act`. Adds `should_call_parent` and refactors
associated children to support that.
- Fixes silicons sparking off when hit by disabler fire.
- Desnowflakes firing range target integrity and cleans up its
bullet-hole code a bit.
- Cleans up changeling tentacle code a fair bit and fixes it not taking
off throw mode if you fail to catch something.
- The Sleeping Carp deflection is now signalized
- Nightmare projectile dodging is now signalized and sourced from the
Nightmare's brain rather than species
- Refactored how cardboard cutouts get knocked over to be less
snowflaked / use integrity
- Also adds projectile `on_hit` `should_call_parent` and cleans up a bit
of that, particularly their arguments.
- On hit arguments were passed wrong this entire time, it's a good thing
nothing relied on that.
## Why It's Good For The Game
This is cringe.
1863eb2cd8/code/modules/mob/living/carbon/human/_species.dm (L1430-L1442)
Bullets should overall act more consistent across mob types and objects.
## Changelog
🆑 Melbert
fix: Silicons don't spark when shot by disablers
fix: Changelings who fail to catch something with a tencacle will have
throw mode disabled automatically
fix: Fixes occasions where you can reflect with Sleeping Carp when you
shouldn't be able to
fix: Fixes some projectiles causing like 20x less eye blur than they
should be
refactor: Refactored bullet-mob interactions
refactor: Nightmare "shadow dodge" projectile ability is now sourced
from their brain
/🆑
## About The Pull Request
Added slapcraft recipes for: Pillow suits, pillow helmets, bone and
sinew tailoring/weaponry, pipeguns, ghetto jetpacks, and pneumatic
cannons.
The base type of cowboy hats no longer looks and is named like a bounty
hunter hat, clarifying the recipe for the heroic laser musket.
Fixed an issue where if a slapcraft recipe required more than one
instance of its 'primary' slapcrafting item, it wouldn't show the
additional instance when examining its recipes.
## Why It's Good For The Game
Idk lol
## Changelog
🆑
qol: Added slapcraft recipes for: Pillow suits, pillow helmets, bone and
sinew tailoring/weaponry, pipeguns, ghetto jetpacks, and pneumatic
cannons.
code: The base type of cowboy hats no longer looks and is named like a
bounty hunter hat, clarifying the recipe for the heroic laser musket.
They need cowboy hats not bounty hats.
fix: Fixed an issue where if a slapcraft recipe required more than one
instance of its 'primary' slapcrafting item, it wouldn't show the
additional instance when examining its recipes.
/🆑
This adds a tracker for sources of invisibility and a priority system. I
needed this for another thing so I'm doing this first since it touches a
lot of code. As for the bugs fixed in the changelog, it's only what I
noticed while going through everything and there's likely a few more
things fixed with this. This should be testmerged for a while, I'll
bring this out of draft when it feels safe.
🆑
admin: Invisimin can now be used on mobs that are already invisible,
whether through temporary or permanent effects.
fix: Monkeyize/Humanize mob transformations no longer permanently reveal
invisible mobs if they had effects making them invisible otherwise.
fix: Objects with the undertile element that have been made invisible
through other means are no longer revealed by being uncovered.
/🆑