Skip to content

Upstream 2026-08-23 - #197

Merged
Bruh-24 merged 212 commits into
masterfrom
upstream
Aug 24, 2026
Merged

Upstream 2026-08-23#197
Bruh-24 merged 212 commits into
masterfrom
upstream

Conversation

@mass-bot

@mass-bot mass-bot Bot commented Aug 19, 2026

Copy link
Copy Markdown
Contributor

resolves #198

🆑 MassMeta
add: Upstream 2026-08-23
fix: Починено заполнение data для ExosuitFabricator.tsx
/:cl:

conflicts: README.md
code/__DEFINES/research/techweb_nodes.dm
code/controllers/subsystem/minor_mapping.dm
code/modules/research/techweb/nodes/engi_nodes.dm
code/modules/research/techweb/nodes/medbay_nodes.dm
code/modules/research/techweb/nodes/research_nodes.dm
code/modules/research/techweb/nodes/robo_nodes.dm
code/modules/research/techweb/nodes/security_nodes.dm
code/modules/research/techweb/nodes/service_nodes.dm
code/modules/vehicles/mecha/mech_fabricator.dm

Aliceee2ch and others added 30 commits August 12, 2026 18:45
## About The Pull Request

makes medical record console use dropdown with all bloodtypes list. also
closes #97013

<img width="883" height="597" alt="image"
src="https://github.com/user-attachments/assets/319fd9c0-56ea-47fe-95af-6c308cec93b9"
/>

## Why It's Good For The Game

i *wanted* to just edit "reject_bad_name" proc but i think having to
choose bloodtypes instead of manually typing is cooler and less
time-consuming. also prevent bullshit bloodtype names (yes probably
removes fun but who cars)
… Golem hunger buffs. (#97467)

Look at me go, making species changes as a maintainer, not something I
do everyday.

## About The Pull Request

This PR hits a few pain points of playing as a golem. Some of this may
still be too short, but qualitatively, this should help to make playing
golem feel far less like a death sentence.

First: The golem ship now has shutters on it's windows, and mapped in
shutter buttons in both the bedroom as well as the main shuttle hull.
This helps to protect the golems inside from being attacked by
brimdemons and goliaths from inside the safety of their own ship. These
shutters are, however, mapped open, but require no access to drop the
shielding.
I've also added a box of spare lights, though since the light fixtures
come unwired (for some reason?) that's probably not moving the needle on
anything.

Golem food has 2 different buffs (One of them is more of a fix than a
buff):

1. The golem food buffs now have different nutrient values based on the
material that they're spawned from. Previously, every material was only
offering 2 nutrition, every single time, as the nutrition value from the
golem food buff datum was never accessed. In addition to the old values,
that should now work as expected, here are all the values, including the
ones that have been changed:

- Glass (0.5)
- Iron (3)
- Uranium (5) (Also has a status effect that pauses hunger anyway,
unchanged)
- Silver (4)
- Plasma (6)
- Plasteel (7)
- Gold (5)
- Titanium (5)
- Bananium (10)
- Lightbulbs (0)
- Gibtonite (5)
- Bluespace (10)

Additionally, eating any golem food item that's been processed into a
sheet offers an additional 1.3x multiplier on the amount of nutrition a
single sheet will offer. As a reminder, if a golem hits 0 nutrition at
any point, they will near-instantly die, but can be revived by simply
being fed additional minerals.

2. I've decreased the golem stomach's metabolism rate from 10x higher
than human to 8x. This may be a half-measure, and while still high,
isn't necessarily a huge step down.

## Why It's Good For The Game

First off, we discovered that golems literally get the same amount of
nutrition from every mineral, regardless of processing requirements and
rarity, only granting them different powers. Ironically enough, it meant
that uranium was the only effect that golems were using, because it was
the only effect that let them survive for _longer than 5 minutes_ at a
time.

By offering additional value based on the quality of food and the amount
of effort being put into obtaining them, we can incentivize golem
players to use different types of golem forms, including ones out of
pure necessity. Not to mention, golems getting better food from
processing ores gives them an incentive to head back to their base on
occasion to more efficiently heal & eat.

The decrease to the golem stomach's metabolism is an attempt to also
help curb their hunger issues, as it should ideally be a constant
concern as per the original design, it shouldn't be so bad to the point
that you'll starve yourself the moment you start fighting mobility heavy
mining mobs like bileworms or goliaths.

Fixes #95044.
We'll want to follow up on this afterwards, as this is likely a start in
the right direction, but I'm confident this won't solve **every** issue
specific to golems as well.

## Changelog
:cl:
balance: Golems now have slightly less aggressive metabolism.
fix: Golem foods now offer different levels of nutrition! Finally!
balance: Golems now offer more nutrition from rarer ores.
balance: Golems now get further additional nutrition from eating
processed ore sheets instead of raw ore.
map: The free golem ship now has shutters to block wildlife from
attacking while inside.
/:cl:
## About The Pull Request

Recently on Bee I had to jump head first into techweb code and it nearly
destroyed me, so I've decided to rebuild the majority of it from the
ground up while I PR it here first so I can take advantage of a greater
quantity of competent reviewers.

So, what's wrong with `SSresearch`? Primarily, it's the `id` var on
techweb nodes & designs. This var exists as a, well, unique identifier
for each individual node/design, but guess what? Every single datum in
the game already has a unique identifier, **it's called a typepath**. A
big benefit in replacing ids with typepaths is that we can get rid of
nearly all safety checks. With strings you can refer to a node/design
which doesn't exist, but of course in the case of typepaths, you can't
use a non-existant typepath.

Aside from this variable which never should've existed, the code quality
was poor. The vast majority of it has been rewritten and since I love
assoc list loops, they have been implemented everywhere.

## Why It's Good For The Game

Techweb code is so incredibly convoluted and confusing.
Co-authored-by: Fghj240 <fakeemail@notrealemail.com>
…s that spawn naturally. (#97486)

## About The Pull Request
Earthcrackers no longer spawn with a baseline alpha of zero, instead
spawning with full alpha, but setting their alpha to 0 before then
animating to full, which was the intended effect. This worked well
enough for weakpoints that were spawning in front of you, but caused
weakpoints spawning under floors or when affected by their turf changing
to remain invisible forever. This resolves that issue.

Also, this PR adjusts the number of weakpoints that spawn on maps as a
baseline from 3 to 5, while stations spawning with the weakpoint trait
to result in between 6 to 12 to spawn instead.

Lastly, mostly for testing and admin tracking purposes, all weakpoints
spawned are added to a global list, allowing you to quickly find any
weakpoints that naturally spawned/were spawned by players without issue.

## Why It's Good For The Game

Weakpoints are intended to be rare occurances in rounds, but with them
more often then not spawning and becoming completely invisible, they
were pretty much pure chance to interact with one on any given round.

Beyond that, they're also consistently rare enough that naturally
occurring weakpoints were not factoring into the outcomes of rounds
often if at-all. This should allow them to at least show up slightly
more often, though not by such a major degree that you'd be seeing them
every other round.

## Changelog

:cl:
fix: Weakpoints, and weakpoints spawned by weakpoints being detonated,
should no longer be spawning invisible.
balance: The number of weakpoints that spawn on regular maps has
increased from 3 to 5.
balance: The number of weakpoints that spawn on the "Structural
Weaknesses" station trait now spawns 6 to 12, instead of 4 to 8
weakpoints.
/:cl:
## About The Pull Request

I forgot to convert the designs from strings to typepaths
## About The Pull Request

Makes most items that start with "MOD" improper nouns. Improper nouns
show up differently in inspect text ("This is MOD core." versus "This is
a MOD core.").

MOD items were marked as proper nouns because the first letter of their
name is capitalized, so appending the name with \improper switches it
back to an improper noun.

Also changes the commented-out example module addition to use \improper.



This PR should have the grammar and formatting tag but I don't know how
to add that tag without putting it in the changelog.

<img width="519" height="84" alt="image"
src="https://github.com/user-attachments/assets/ebc03611-cc93-4e8b-85d9-6f9661adf0b9"
/>

## Why It's Good For The Game

MODs aren't proper nouns, and neither are any of their related items.
Fixing this will make the game look better.
tgstation-ci Bot and others added 22 commits August 22, 2026 04:47
…ME.md (#97454)

## About The Pull Request

Improves visibility of CONTRIBUTING.md for new developers in the
README.md

## Why It's Good For The Game

New contributors and also even old contributors have expressed to me
they routinely miss the CONTRIBUTING.md because it's hard to find unless
you click tiny links on the sidelines of the PR process or click the
"hey there's a guide to contributing btw" button by the time you're
opening your first PR, at which point you've probably already broken the
style guide and contributing rules. This should help matters as most our
new developers tend to not find it, and also the new developer prompt
making the popup occur apparently is kinda broken these days.

## Changelog

N/A, not an in-game change, github docs.
## About The Pull Request

Goldgrubs no longer spawn eggs when eating bluespace crystals unless
hand-fed them, rather than doing so even when eating ore off the ground

## Why It's Good For The Game

While the removal does somewhat impact the sandbox element of the game,
current behavior also results in goldgrub digging parties at untapped
ore vents, as they crack open boulders and eat (guaranteed) bluespace
crystals from them, spawning more goldgrubs which do the same, spawning
even more goldgrubs, etc.
Wild breeding in general is risky for CPU time, so its probably best to
remove this behavior regardless of the issue describing above.

## Changelog
:cl:
del: Goldgrub no longer reproduce unless hand fed ores
/:cl:
## About The Pull Request

Lights have an rng chance to be broken on init

## Why It's Good For The Game

fixes #97583

## Changelog

No player facing changes
## About The Pull Request

They just keep finding new ways of doing it

<img width="1616" height="558" alt="firefox_nFVVPV3P1x"
src="https://github.com/user-attachments/assets/056ee1ed-f3ea-4258-8065-5c4e837642aa"
/>

## Why It's Good For The Game

Less flaky failures

## Changelog

Not player facing
## About The Pull Request

`owner` is not necessarily guaranteed to be what we need it to be here,
it should be using the passed-in parameter `remove_from` instead. This
can result in the mob's ref being hung by the action, which is not good.

## Why It's Good For The Game

Fixes a source of mob hard deletes.

## Changelog

Not player facing
Co-authored-by: l0 <-->
Co-authored-by: Lucy <lucy@absolucy.moe>
@mass-bot mass-bot Bot changed the title Upstream 2026-08-19 Upstream 2026-08-23 Aug 23, 2026
@Bruh-24
Bruh-24 merged commit 4ff5f38 into master Aug 24, 2026
19 checks passed
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.

Exosuit fabricator TGUI crash