## About The Pull Request
Inversion on early return, tracks only if the target isn't on cams.
## Why It's Good For The Game
fixes#95935
## Changelog
🆑
fix: SyndEye PDA app tracking tracks successfully
/🆑
## About The Pull Request
Introduces a new targeting priority strategy system for basicmob AIs,
which allows controllers to decide which mob to prioritize over others.
Mining mobs will now focus on the NODE drone unless hit, and will pursue
the attacker for 25 seconds before dropping the aggro. They also get
increased aggro if you've attacked other mobs in their view recently,
and after a few hits will have enough aggro to swap to you from the NODE
drone. Ashwalkers get a reduction in aggro because they live there.
Legion broods and brimdemons will immediately target anyone who attacks
their allies rather than waiting for multiple hits. Broods also now
inherit their parent's targets and retaliation/reinforcements lists.
https://github.com/user-attachments/assets/6baaba8a-8b3c-4b2f-ae8b-842f0b1f2b6d
#### This is a bounty for ArcaneMusic
## Why It's Good For The Game
Makes vent defense mob behavior more predictable and easier for players
to manipulate, allowing them to draw aggro from the NODE drone should
make vents more engaging and less of an AI rng fest
## Changelog
🆑
add: Mining mobs now use priority when choosing their target,
prioritizing NODE drones over miners who haven't attacked them or their
allies
/🆑
## About The Pull Request
See title.
## Why It's Good For The Game
These reagents are far too disruptive to the round to allow to be
produced in the vast quantities and with the distribution vectors that
botany offers. The amounts of them that can be procured through natural
maintenance pill spawns and the silver-extract-exclusive food items
containing them is still acceptable.
## Changelog
🆑
balance: You can no longer get Xenomicrobes and Nanomachines from botany
mutations.
/🆑
## About The Pull Request
Adds new floor types and natural decor to both Siderite and Shale
biomes, as well as makes flora and fauna spawns differ between said
biomes.
<img width="1216" height="997" alt="dreamseeker_uIv1OgVkpD"
src="https://github.com/user-attachments/assets/327d9caa-a58c-4d70-acbe-477da69b4d71"
/>
---
Basalt biome now spawns more legions and goliaths, but less watchers and
no brimdemons. You can rarely find new volcanic pore rocks which will
spew out lava when destroyed.
<img width="505" height="361" alt="dreamseeker_TA9rXzOgad"
src="https://github.com/user-attachments/assets/fb19a60a-c927-441b-abad-161ce5022a60"
/>
Siderite biome has a lot of rock formations and may sometimes spawn new
stalagmites. You can expect to see a ton of bileworms, raptors and
watchers there.
<img width="747" height="613" alt="dreamseeker_uZgRX8qqh3"
src="https://github.com/user-attachments/assets/d356f1c6-371a-4b8b-899b-470edb0d2790"
/>
Shale is full of lobstrocities, goldgrubs and brimdemons, and home to a
new glowgrowth "plant" - colony of bioluminescent fungi growing on
natural air vents.
<img width="274" height="220" alt="dreamseeker_EtxiS4X9M7"
src="https://github.com/user-attachments/assets/cbefba67-b618-4a65-ad12-9ee5182b650c"
/>
While it cannot be planted by itself, it contains luminescent fluid
inside which will grant whoever eats it minor night vision as long as it
is inside their bloodstream (as well as cyan-glowing eyes)
---
Ruins now properly respect their biome's rock (and now floor as well)
type, since it was broken for some of them previously.
<details>
<summary>More images under the dropdown</summary>
<img width="1216" height="997" alt="dreamseeker_fpXXV0Rt3D"
src="https://github.com/user-attachments/assets/fa790ca1-7045-490e-bcb2-c1f9da9f277c"
/>
<img width="414" height="303" alt="dreamseeker_l6E8S2fzCe"
src="https://github.com/user-attachments/assets/8b10dcca-c546-41ce-9363-a12b0f225881"
/>
<img width="784" height="587" alt="dreamseeker_RUWQo0unNp"
src="https://github.com/user-attachments/assets/d7364abc-ec68-4daf-b3cb-a03b8ba7e5de"
/>
<img width="1216" height="997" alt="dreamseeker_zoltABvkBw"
src="https://github.com/user-attachments/assets/324f50f8-83c9-4451-8eff-33ebf81c1d0d"
/>
<img width="1125" height="571" alt="dreamseeker_ky5qvl2XtC"
src="https://github.com/user-attachments/assets/ff08d22f-fc15-4961-b76e-7c10d7814096"
/>
</details>
Credit for original versions of new flora/feature sprites to
SentryPrimis on the /tg/station discord
## Why It's Good For The Game
Makes biomes more distinct and interesting, as well as gives them unique
atmosphere, since right now they only differ in rock type and mineral
distribution.
## Changelog
🆑 SmArtKar, SentryPrimis
add: Siderite and Shale lavaland biomes now have unique floors, as well
as flora, features and fauna!
fix: Fixed some ruins generating with default basalt walls instead of
their biome's walls
/🆑
## About The Pull Request
Adds a new traitor item, the E-2 Earthcracker. The Earthcracker is a
handheld sabotage device that you can deploy onto the ground in order to
deliberately create a weakpoint on that location.
As a recap, weakpoints can be exploited with a sufficiently large enough
explosive in order to create a chain of cracked turfs from it's
location, randomly breaking floors and walls, as well as attempting to
create new weakpoints that will allow for more of the hull to break
down. Weakpoints, if discovered, can be welded to taped up to repair
them using sticky tape.
The earthcracker creates a longer, and larger weakpoint than the kind
that spawn naturally. However, to use this subtly, you'll need to hide
the weakpoint created, as well as clear away the spent earthcracker by
using a wrench.
Practical use is: Get the earthcracker, use in hand to arm/anchor onto a
turf (Can be unwrenched at this point), activate with an empty hand to
begin the cracking process, then wrench away, and you have a well
hidden, high power sabotage device.
Two variants are available in-game: The E-2 Earthcracker which can be
obtained from the traitor uplink at 2TC each, and the E-1 Earthcracker
which can be purchased on the black market. The E-1 variant spawns
normal run-of-the-mill weakpoints as opposed to the E-2, with a 30%
availability from the back market, at a cost of 200-600 credits.

## Why It's Good For The Game
I'll be frank, I don't think we necessarily need *more* tools to cause
havoc, but I wanted to expand the weakpoint framework a bit and this
idea came to mind. The Earthcracker fits in the same category as C4, but
without a signifigant amount of the control that comes from C4 and
absolutely from X4. This stands to cause more damage across the hull,
with the ability to keep expanding the crack. For that reason, I think I
may have underpriced this in terms of TC, but I'm up for discussion on
if it needs to go up to a 3-5 range.
In an ideal world, this could be used for making booby traps, such as
planting an earthcracker in an area like escape or a larger department,
and then triggering the weakpoint when the right people are around, even
through something like a detomatrix or a trigger on a grenade.
As an added reminder, weakpoints have a dedicated method to repair them
if discovered, that being welding them or hitting them with sticky tape
to repair them quickly, offering some counterplay.
I also added a lighter variant onto the black market as a fun, dubious
thing to have on the black market.
## Changelog
🆑
add: Adds the E-2 Earthcracker device as a purchasable traitor item for
2 TC. Use it to create potentially devastating weakpoints onto the
station!
/🆑
## About The Pull Request
Fixes the passive positive virus healing behavior I fucked up about two
years ago in the process of reworking virology.
Basically, if you had even one single tick of time spent malnourished or
at lower than 0 satiety, you started to accumulate recovery_prob. If
recovery_prob was anything other than 0, you'd be rolling to get rid of
your virus, eventually getting to a point where, by virtue of the
scaling, it was gonna happen.
This change just makes sure that
- if we aren't currently rocking spaceacillin,
- if we aren't eating a ton of junk food and recovering (negative
satiety trends towards 0, a good binge will put you at about -150,)
- if we aren't starving (less than 150 nutrition,)
our positive viruses are not going to have a recovery_prob and so are
not going to self-cure. They will still accumulate peaked_cycles and so,
if you constantly dip into and out of time spent malnourished, on
antibiotics, or whatever, they're going to eventually cure faster when
allowed. But if you maintain yourself, they should actually be rock
solid now.
## Why It's Good For The Game
Intended behavior that I somehow missed in the tests and tweaks and then
fell out from really ever investigating why it didn't work. You weren't
supposed to be fucked out of having the positive virus work from even
one slightest brush with the negative circumstances. That totally
undercut both the predictability and value of smart maintenance as
player behavior.
## Changelog
🆑
fix: positive viruses no longer self-cure when not having spaceacillin
or meeting the nutrition/satiety requirements.
/🆑
## About The Pull Request
Fixes the maximum time of syndicate bombs being 60,000 seconds (1,000
minutes) to instead be 6,000 seconds (100 minutes) as intended. The
previous code used the MINUTES define, which converts to deciseconds,
rather than directly converting to seconds.
## Why It's Good For The Game
Makes the game work as intended.
## Changelog
🆑
fix: Fixed syndicate bombs having a maximum timer of 1000 minutes
instead of 100 minutes.
/🆑
## About The Pull Request
Fix 1: argument 4 on a new mimic is delete parent, not not having googly
eyes, so the issue there is clear
fix 2: `remove_thing_from_blackboard_key()` had no handling for the list
not yet being up, so it crashes thinking it's been called where
`clear_blackboard_key()` should've been.
fix 3: same as 1 but on wand of nothing, replaced copypaste with just
calling the function
## Why It's Good For The Game
fixes#95981
fixes an animated wand of animation animating a wand of animation
runtiming
Also the same problem with the wand of nothing
## Changelog
🆑
fix: animating a wand of animation works, and that animated wand of
animation animating a wand of animation does not runtime
/🆑
## About The Pull Request
~~I saw this when I was debugging something else, and thought it was my
fault.~~
~~Nope - turns out this has been happening for who knows how long. I was
able to very reliably reproduce it in my env downstream so went ahead
and pushed a fix to this while I am working on something unrelated, I
have tested it and seems to be gone.~~
~~populateOptions function was being passed as an inline arrow function
from the caller, which created a new function reference on every render.
Since it was listed as a dependency in useEffect, the effect re-ran on
every render, which called setDropdownOptions, which triggered a
re-render, which created a new function reference... and so on~~
Building off of the fix Mothblocks made in
https://github.com/tgstation/tgstation/pull/95904 this goes a step
further and nukes that useEffect while we are at it
## Why It's Good For The Game
## Changelog
Nothing player-facing
## About The Pull Request
Originally this PR was just supposed to split blob's "start victory"
thing into its own proc and add an extra check that could be overridden,
both for downstreams because a friend asked, but then I thought
"wouldn't it be funny if you could varedit a blob to not end the round
on critical mass?" so now we're here.
Anyways, it's about what it says on the tin. Blobs now have a variable,
`end_round_on_victory`, which defaults to TRUE (preserving current
behavior). Setting it to 0/FALSE:
- Makes the blob no longer gain infinite points upon reaching critical
mass
- Makes it announce an "emergency containment activation" instead of
killing everyone if it does hit critical mass
- Prevents the blob from expanding over the blob victory count (400 by
default).
- ...basically does nothing else. (You're still going to have to
manually remove the blob from SSshuttle's hostile environments list!)
## Why It's Good For The Game
Maybe you want to jumpscare the station with a giant fight they have to
take but then not actually kill them in the sake they don't actually
win. You could make an event out of this (said in the same cadence as
"You could make a religion out of this"), probably.
## Changelog
🆑
admin: Admins can now varedit blob overminds (the eye mob) to not kill
everyone on the station if they hit critical mass. (Admins will still
have to remove the blob from the shuttle subsystem's "hostile
environments" tracker, though.)
/🆑
---------
Co-authored-by: Hatterhat <Hatterhat@users.noreply.github.com>
## About The Pull Request
Ports our optimizations to the version of ghost runechat introduced by
https://github.com/tgstation/tgstation/pull/95223
Instead of looping through all the mobs a second time it will do it in
deadchat_broadcast(). Also adds a global for if drunechat is
enabled/disabled and an admin verb for toggling it on or off.
<details><summary>still works</summary>
<img width="330" height="220" alt="dreamseeker_kkNBPBjbMv"
src="https://github.com/user-attachments/assets/4706ad98-fafe-4f88-9de0-6b72983ab044"
/>
</details>
## Why It's Good For The Game
Better option for performance
## Changelog
🆑
code: speeds ghost runechat up a bit, and makes it show as italic
admin: adds a 'toggle dead runechat' admin verb in case you need to
disable it midround for an event or something
/🆑
## About The Pull Request
April 26th is Chernobyl Disaster Remembrance Day
There are no colored tiles or posters associated, but it does have
station prefixes.
Also as an added effect, radiation storms are twice as likely to trigger
randomly, and multiple can trigger in one round.
## Why It's Good For The Game
Today is the 40th anniversary of the Chernobyl disaster and I feel it
would be somewhat fitting as an in game holiday given our game's
propensity to have reactor meltdowns
(and also the Space Soviet Union existed in the lore so I imagine they'd
carry the tradition out to the Spinward Sector)
## Changelog
🆑 Melbert
add: April 26th is Chernobyl Disaster Remembrance Day.
/🆑