Skip to content

TG Pull 7/1/2026#1187

Draft
FalloutFalcon wants to merge 399 commits into
DarkPack13:masterfrom
FalloutFalcon:darkpack-7-1-2026
Draft

TG Pull 7/1/2026#1187
FalloutFalcon wants to merge 399 commits into
DarkPack13:masterfrom
FalloutFalcon:darkpack-7-1-2026

Conversation

@FalloutFalcon

@FalloutFalcon FalloutFalcon commented Jul 1, 2026

Copy link
Copy Markdown
Member

About The Pull Request

Pulls the latest TGStation commits to keep us up-to-date
Please dont squash this one!!!

Highlights include:
Mobs arent dropped from ambience subsystem randomly.
Crates cant "climb" themselves to get pushed around weirdly.
More lovely reworks to human overlays by Melbert.
Some more item_interaction refactors on random items,

Why It's Good For The Game

MODERN CODE

Changelog

🆑 Beautiful TG coders
code: TG Pull. Thank you TG.
/:cl:

CabinetOnFire and others added 30 commits June 14, 2026 14:31
…del when clients logged out while hearing sound tokens (#96472)

🆑
fix: Fixes a hard-del and signal override with sound tokens
/🆑


The comsig issue was basically: both source and listener register for
qdel, but they can be the same thing resulting in a double register.
lame!

the hard-del was caused by me running remove_listener when a client
logged out of a mob...but at that point the client is null...so we cant
clear its sound tokens. boo! not smart!
<!-- 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

Basically, if it's forced, we rely on create_vote to catch the "no
options" case.
This used to be the behavior, but it was removed in persistant tallies.
I have no idea why.
I've also cleaned up the quite dubious caching code to avoid the bugs I
was getting when testing locally.

## Why It's Good For The Game

S been causing forced icebox (15 pop min, meta can't replace it because
meta's the only one with 0 minpop) on the servers, that's silly.

Of note, it's possible this will still be an issue due to the stale map
system, but yaknow, one thing at a time, and that'll be louder so we
should find out pretty fast (fix would be defaulting to some marked
default map if only one can be rolled).

## 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 its 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. -->

:cl:
fix: End of round mapvotes will now properly default to the only option
if only one map is votable.
/:cl:

<!-- Both :cl:'s are required for the changelog to work! You can put
your name to the right of the first :cl: 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. -->
## About The Pull Request

Gizmo sends a message when turning on and off

## Why It's Good For The Game

Makes it a bit more clear what's going on.

## Changelog

:cl: Melbert
qol: Gizmo sends a message when turning on and off
/:cl:
## About The Pull Request
Baby stoats can now grow into adult stoats. ive also included kits into
the spawn pool of maints, (the overall chance of running into a stoat
whether adult/baby remains the same), and you can also now find baby
stoats rummaging through bins. since baby stoats are cute ive made their
growth rates slow so people can enjoy them at their youths for longer.

## Why It's Good For The Game
fixes an oversight.

## Changelog
:cl:
fix: baby stoats can now become adults
add: baby stoats are added to the spawn pool of maints, (the overall
chance of running into a stoat whether adult/baby remains the same)
/:cl:
… (#96490)

## About The Pull Request

If your gun is empty and you are on combat mode and you are adjacent to
someone and you click on them, you will perform a gun bash rather than
just dry firing

## Why It's Good For The Game

If your gun is empty and you are on combat mode and you are repeatedly
click on someone you PROBABLY just want to smash the guy instead of dry
firing repeatedly

## Changelog

:cl: Melbert
qol: If your gun is empty, and you are on combat mode, and you are
adjacent to someone, and you click on them: you will perform a gun bash
rather than just dry firing.
/:cl:
## About The Pull Request

Early return if no fish. The signalling stays despite no reward because
the heretic enchanted rod doesn't care if there wasn't a reward

## Why It's Good For The Game

<img width="591" height="89" alt="image"
src="https://github.com/user-attachments/assets/c9258e5f-f1e3-43d3-b346-12011cd1560d"
/>

## Changelog
:cl:
fix: fixed a runtime when fishing up no fish
/:cl:
## About The Pull Request

This was supposed to be icon_state_to_use

## Changelog

Not player-facing
…cle weather toggle) (#96510)

## About The Pull Request

Due to a BYOND bug, large amounts of particles will cause immense lag
and framedrops on AMD GPUs, no matter how good the GPU itself is.
Unfortunately this is most noticeable with new particle weather, to the
point where storms reduce framerate to single digits for players who
haven't invested into NVIDIA before the AI market boom.

By rendering overlays twice and only enabling one of the planes, we can
allow players to toggle between new particle weather (semi-transparent
overlays + particles) and old (fully opaque overlays)
Unfortunately we don't have a way to check the player's GPU (at least
not easily) so players will have to change it themselves


https://github.com/user-attachments/assets/0c36fca4-c8a4-42ed-895f-42e853b10f44

(Particle weather is a bit more dense without ghost vision but i'm too
lazy to re-record)

Closes #96460 (Sort of)

## Changelog
:cl:
qol: Particle weather can now be disabled in favor of old weather. !!!
AMD GPU USERS NEED TO SWITCH TO OLD WEATHER TO FIX THE LAG!!!
/:cl:
## About The Pull Request

Particle weather changes for additional optimization on
hide_weather_planes broke non-particle weather rendering on multiz maps.
Oops.

Closes #96527

## Changelog
:cl:
fix: Fixed weather on multi-z maps
/:cl:
## About The Pull Request

Groups need to be set to smth or otherwise they show up as uncategorized
in both admin observe and antagpanel menus.
<img width="257" height="89" alt="4uXQEAamCb"
src="https://github.com/user-attachments/assets/4fd859b6-38e2-4366-b5ba-e0d9ce468a88"
/>

## Changelog
:cl:
fix: Fixed recovered crew showing up as uncategorized antags
/:cl:
…5369)

## About The Pull Request

Re-did blips to be significantly nicer sounding and way better. Alien
speech you don't understand now comes through as Blips. If you have TTS
entirely disabled, you won't hear blips. Blips also now include more
customization options, and a dedicated Blips preview button by clicking
the leaf icon.

<img width="1749" height="354" alt="ApplicationFrameHost_5nKJEvaNV1"
src="https://github.com/user-attachments/assets/ef6c6b61-7c22-4a87-94c9-be50e89c65bb"
/>


https://github.com/user-attachments/assets/8cab7e55-6370-4e4e-99ba-ea2475569453

Radio TTS has been implemented. By default, you will hear all TTS over
the radio, but will not hear yourself over the radio. You can configure
this in Game Settings.


https://github.com/user-attachments/assets/94a44d84-17a9-4e6e-ac5c-3b800b11c159

<img width="743" height="193" alt="chrome_MOIcXaC2gh"
src="https://github.com/user-attachments/assets/907379b7-0689-486c-b29c-9be0a2259b05"
/>

The new TTS stack is located at
https://github.com/Iamgoofball/tgtts-qwen3 and is AGPLv3 licensed. The
new blips design was inspired by
https://github.com/joshxviii/animalese-typing.

The configuration to disable TTS on whispering has been removed, as it
is no longer needed and also interferes with radio TTS functioning
properly.

The Tram now utilizes TTS, and has had a general audio tune-up.


https://github.com/user-attachments/assets/f532d002-939c-43a1-95d0-0f0c43048997

TTS audio is now 3D and in space, see attached.


https://github.com/user-attachments/assets/b00df49a-9d1d-4b27-a8a0-d103099f5c7e

## Why It's Good For The Game

Quality of life improvements to the TTS system, long overdue. Also, TGMC
can migrate to this new method of doing radio audio so they aren't
sending double the TTS requests anymore.

## Changelog

:cl:
add: Added support for Radio TTS. You will now hear players over the
radio via the TTS system.
add: Configure this in Game Options under the Sound tab.
sound: Re-did blips to be significantly nicer sounding and way better. 
sound: Alien speech you don't understand now comes through as Blips. If
you have TTS entirely disabled, you won't hear blips.
sound: The Tram and Computers now utilize the TTS system. Configs have
been added to set a consistent voice.
sound: TTS audio now utilizes 3D audio; you can now walk away from
people saying stupid shit and it gets quieter.
sound: Blips also now include more customization options, and a
dedicated Blips preview button by clicking the leaf icon.
del: The configuration to disable TTS on whispering has been removed, as
it is no longer needed and also interferes with radio TTS functioning
properly.
/:cl:

---------

Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
Co-authored-by: Lucy <lucy@absolucy.moe>
Co-authored-by: Aleksej Komarov <stylemistake@gmail.com>
…and the food folder inside module/food_and_drinks. (#96526)

## About The Pull Request
Title.

## Why It's Good For The Game
In the case of materials. the two folders had roughly the same names,
and material_containers rely on materials to work anyway so they belong
inside the materials folder, instead of a separate directory with the
same name (minus an s).

As for food, the food items have filepaths that differ too much from the
corresponding recipe files, despite the two being closely connected as
far as features and game mechanics go, and that makes moving back and
forth between these files a pain in the ass with a standard file
manager, workspace viewer etc.

## Changelog
N/A
## About The Pull Request

title

## Why It's Good For The Game

because being forcefemmed/forcemasced instantly sucks cmon, not a big
problem but its honestly weird that potion doesnt have a do after.

## Changelog

:cl:
balance: Gender changing potion has a 5 seconds do_after now.
/:cl:
… and adds support for it to emotes. (#96519)
tgstation-ci Bot and others added 12 commits June 30, 2026 22:27
## About The Pull Request

Fixes the power crowbar from being rejected despite being in the EMT
belt's allow list.

## Why It's Good For The Game

Fix bug

## Changelog

:cl: LT3
fix: Fixed jaws of recovery not being able to be stored in the paramedic
EMT belt
/:cl:
## About The Pull Request
Fixes #96687

Basically, /datum/element/climb_walkable makes it so that if you share a
turf with this object, you can keep walking onto other objects with that
component. so if you're on a crate you can step onto tables for example.

Issue was, if an with /datum/element/climb_walkable gets initialized it
would give itself this trait via
COMSIG_ATOM_AFTER_SUCCESSFUL_INITIALIZED_ON, and if it then moved and
would be blocked by a crate, it would instead move "onto" the crate.

This is not a perfect fix, I think in general this is not an ideal way
to handle elevation movement, but fixing that would turn this into a big
refactor.

## Why It's Good For The Game

Prevents roundstart crates from clipping into the backrooms

## Changelog

:cl:
fix: Fixes crates not respecting density in all cases and being able to
move into other crates or tables
/:cl:
## About The Pull Request

I changed how `add_bodypart_overlay` works and then forgot to update its
return value

## Changelog

:cl: Melbert
fix: Fix emote overlays sticking
/:cl:
## About The Pull Request

headmin disabled this map and asked i removed these
i dont think these things are too impactful as they are purely defensive
meaning theyre meaningless save for like, icebox security, and escape
shuttle but its whatever in the end.

## Why It's Good For The Game

no more mounted guns.

## Changelog

removes both the mounted guns.

:cl:
del: Removed both mounted guns in the heretic gateway per headmin
request
/:cl:
## About The Pull Request

We were iterating all cargo packs once per cargo pack, and for each
subgroup we were regenerating all their ui data info.

This wastes a catastrophic amount of time.

Instead, let's just build a list of group -> list(pack data 1, 2, ...)
and send over that, since that's what the ui is ultimately asking for.

Should reduce a semi prominent source of overtime on live.
@FalloutFalcon FalloutFalcon marked this pull request as ready for review July 5, 2026 14:07
@FalloutFalcon FalloutFalcon requested review from a team as code owners July 5, 2026 14:07
@chazzyjazzy

Copy link
Copy Markdown
Contributor

breaks beast overlays?

@FalloutFalcon FalloutFalcon marked this pull request as draft July 5, 2026 21:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.