Commit Graph
41143 Commits
Author SHA1 Message Date
MathildeandGitHub 21a5c52eab Oversized Buff/QOL (#5978)
## About The Pull Request

I've made it so that Oversized characters get a 0.25 debuff to their
movement speed (as opposed to 0.50) as well as having removed their
MOB_SIZE_LARGE trait, which made them unable to fit into any machine in
the game, unless specifically coded in to ignore the mob size (to my
knowledge it's the SAD, cryotube, cryopod and cyborg recharger).

I've also preserved the vampiric coffin functionality, made it so that
it checks if the character using the coffin has the oversized trait,
instead of checking whether they are too large for it.

## Why It's Good For The Game

Oversized is a very difficult trait. While it makes sense for there to
be some drawbacks for being so large, I also believe that the negatives
were a little too much, making the quirk very challenging to use and
punitive. I've tweaked it a bit while at the same time preserving most
of the traits that came with the quirk.

## Proof Of Testing


https://github.com/user-attachments/assets/1bc0fba1-2d34-4dba-834d-1ecf8dfcff50

The movement speed change.
Green is regular speed, orange is 0.25 (the speed they will have) and
red is 0.50 (the current oversized speed).


## Changelog

🆑
balance: Oversized characters are now faster, having their speed penalty
lowered from 0.50 to 0.25.
balance: Oversized characters no longer have the MOB_SIZE_LARGE trait,
allowing them to fit in machines and closets.
/🆑
2026-07-25 13:58:08 -04:00
Phantastic-SwanandGitHub 71da73b19c megacell charger (also fixes a runtime) (#5979)
## About The Pull Request

I am a perfectionist, and as such leaving the megacells from inducers
uncharged after I use them is annoying me. As such, I made a megacell
charger so I wouldn't have to juggle them in an APC.

I've also fixed a runtime related to alt clicking the cell charger.

## Why It's Good For The Game

Allows you to charge megacells to recharge inducers without having to
resort to hot swaping them in an APC.

## Proof Of Testing



https://github.com/user-attachments/assets/75a5443d-eade-4c34-8641-c36f1d1a44f7

Unfortunately you can't see the chat but I was meant to show how there
is no runtime on removing the cells via alt click anymore.

## Changelog

🆑 Swan
add: Added the megacell charger
fix: Fixes a runtime that happened when cells were ejected from the cell
charger via alt-click
/🆑
2026-07-21 20:04:03 -07:00
b5274b0616 Bounty selection no longer runtimes for Blacksmith and Prisoner jobs (#5969)
## About The Pull Request

Edits the new version of tgstation's civilian_bounty_trims.dm to add
"if" cases for the Smith and Prisoner job types, as each job type check
is hardcoded as "if" statements in the original file.


## Why It's Good For The Game
Once again allows Blacksmiths and Prisoners to get Personal Bounties,
giving both roles a potential goal to do as non-antags to get some cash
and fund the station.
On the backend, cuts down on runtime errors.

Risk: Blacksmithing bounties feel much easier and more lucrative than
many other station jobs. **This does not address that issue,** so it's
possible this fix does weird things to the station's economy.


## Proof Of Testing

<details>

Spawned as various jobs and inserted my ID into the Civilian Bounty
Control Terminal, then clicked the New Bounty button. Two
job-appropriate and one random bounty appeared on the resulting list.

Tested the following jobs to make sure bounties applied and no runtimes
appeared:
- Blacksmith
- Prisoner
- Captain
- Nanotrasen Consultant
- Blueshield
- Barber
- Bitrunner
- Persistence Sanitation Technician
- Cardboard ID (doesn't slot into terminal)


<summary>Screenshots/Videos</summary>

<img width="571" height="371" alt="Bubber_BountyFix1"
src="https://github.com/user-attachments/assets/d8568d78-f977-48a6-bd20-8165ccb62fc0"
/>
<img width="630" height="373" alt="Bubber_BountyFix2"
src="https://github.com/user-attachments/assets/55af3125-1ed9-41ea-93b0-af60f2585161"
/>

</details>

## Changelog
🆑 Kaltren
fix: Blacksmiths and Prisoners can once again properly generate Personal
Bounties.
/🆑

---------

Co-authored-by: Alexis <catmc8565@gmail.com>
2026-07-20 14:31:40 -04:00
6508994fdf Cabbage's Armory (#5757)
## Main Additions and Modifications
This PR adds in a quite a few new things.
### Overview
**WT-550 "Enhancements"** - made available via research. These
modifications retain the full-auto capability of the WT-550 to varying
degrees. Additionally a compressed WT550 magazine is available via
research. It contains 40 weaker bullets compared to the normal
magazine's 20. It is only allowed to contain compressed bullets to avoid
cheesing, and requires bluespace to fabricate. It is designed as a
sustained dps ammunition as opposed to a high dps ammunition
**WT-550-B** - Shoots in bursts with decent recoil and slightly higher
dps.
**WT-550-C** - Shoots slower but has a higher damage and projectile
velocity along with a scope.
**Sawn-off WT-550** - Is smaller but has egregious recoil and spread.
**.38 BR** - A simple but slightly less powerful alternative to the
NT-38 battle rifle. Craftable via a kit obtained from research.
**Stunstaff** - A weapon that is available via crafting and functions as
an alternative to a baton and riot shield. A heroic variant exists
within the code but the recipe can only be learned from a book that
sometimes spawns in the armory contraband closet.
**Advanced Energy SMG** - A hybrid of a disabler SMG, laser carbine, and
advanced energy gun. Does exactly what you think it does. Obtainable via
crafting.
**Stingballer** - A rifle that rapidly shoots stingballs. Direct damage
is lesser than a stingbang. Purchasable from cargo.
**Security Juggernaut Suit** - A heavily armoured suit that severely
cripples your mobility in exchange for very high protection. Crafting
kit is printable from a technode.
**Horizon Beam Rifle** - Damage is now 110 with 35 armor piercing, and a
demo mod of 2. Upon contact with walls, it destroys them like how a
pulse laser does.

### Crafting
WT-550 weapons can all be made with just the gun and the kit.
The sawn-off WT550 can be made by taking a saw to the WT550.
The .38 BR requires an NT-38 battle rifle along with a multitool and a
screwdriver.
The Advanced Energy SMG requires a disabler smg, laser carbine, and an
advanced energy gun.
The Stunstaff requires two security batons, some plasteel and some
cable, along with a welder and wrench.
The Heroic Stunstaff requires some other ingredients.
The Security Juggernaut suit requires a full toolbox of tools as well as
the armor plates, a full coil of cable, a pair of magboots, a swat
helmet, a swat suit, and two seclites.
Stingbangs can be prepared into stingball canisters with a screwdriver
and some wirecutters. Each contains 25 rounds are are used to fill the
stingballer.

### Cargo
**Stingballer** - Armory crate - Contains one stingballer. - 4500
credits.
**Grenade Launcher** - Armory crate - Contains one grenade launcher and
a box of flashbangs. - 15000 credits.
**Kiboko Grenade Launcher** - Armory crate - Contains one Kiboko grenade
launcher. - 7500 credits.

### R&D
The **"Ballisitic Research"** technode has been removed and dragon's
breath shells have been moved to the illegal technology node. The node
remains within the code though if more exotic ammunition is developed
and requires an additional research node for it.
New **"Advanced Ballistics"** technode contains the part kits for the
WT-550 modifications and NT-BR simplification kit and requires Exotic
Ammunition to research.
New **"Advanced Armor"** technode contains the Security Juggernaut
Plates and requires Riot Suppression and Gas Compression to research.

### Code
Adds to the buckling system where if something has TRAIT_NO_BUCKLE, it
cannot be buckled at all.
Adds to the vehicle system where if something has TRAIT_NO_VEHICLE, it
will be flung off the vehicle it attempts to move the vehicle
themselves.
Adds to the chair system where if something has TRAIT_NO_VEHICLE, it
will destroy the chair.
Adds to the movement system where if something has TRAIT_LARGE_CLOTHES,
TRAIT_BULKY_CLOTHES, or TRAIT_HUGE_CLOTHES, it will incur a 3, 4, and 5
move speed multiplier when pulling that thing. If anyone can help me do
this more modular, please reach out, I have no clue how.
Edits the equipment slowdown system to properly apply a special slowdown
that cannot be negated by anything. Requires the TRUE_IMMUTABLE_SLOW
bubber_obj_flag to be present. IMMUTABLE_SLOW is still required for red
potion immunity.

### Other Misc. Changes
The WT-551 has been effectively rendered impossible to get. This
decision stems from the fact that the WT-550 and the WT-551 were
functionally identical when used in-game. Instances of the 551 have been
replaced with the 550.
Skyrat's renaming of /tg/ bullets has been completely removed. Some
descriptions have been kept and altered because they were kinda neat.
.460 Ceres -> .45
.416 Stabilis -> .50 BMG
8mm Usurpator -> 4.6x30mm
.454 Trucidator -> .50 Action Express
.277 Aestus -> .223

## Statistics For New Additions
**Stunstaff**
<img width="32" height="32" alt="image"
src="https://github.com/user-attachments/assets/0e1c2a1a-20ba-47a9-91f1-e63ca11b5e43"
/>
- Two-handed, bulky. Fits on the back and an armor vest.
- 65 stamina damage
- 20 stun armour penetration
- 14 force
- 8 throw force
- 50 block chance
- 20 effective block vs tackles
- 10 effective block vs projectiles

**Heroic Stunstaff**
- 24 stamina damage
- 0.5 second stun
- 4 times the cell charge consumption
- No cooldown between stuns
- 35 stun armor penetration
- 15 force
- 10 throw force
- 75% throw stun chance
- Can be thrown like a boomerang
- 75 block chance
- 30 effective block vs tackles
- 50 effective block vs projectiles

**WT-550-B**
<img width="32" height="32" alt="image"
src="https://github.com/user-attachments/assets/56fea4dd-9b0c-4e06-93a7-b0389f3d32c9"
/>
- Bulky sized, small weapon weight, dual wielding.
- 2 round burst every 0.5 seconds
- 0.25 recoil
- 3 spread
- Can be suppressed

**WT-550-C**
<img width="48" height="32" alt="image"
src="https://github.com/user-attachments/assets/bd80570d-3e70-463d-8b6b-7cefcb1d54e6"
/>
- Bulky sized, heavy weapon weight, no dual wielding.
- Half fire rate of normal WT (0.6 compared to 0.3)
- 1.5x damage multiplier
- 1.5x projectile speed multiplier
- +5 projectile wound bonus
- Can be Suppressed
- Mediocre Scope

**Sawn-off WT-550**
<img width="32" height="32" alt="image"
src="https://github.com/user-attachments/assets/6d786022-2d93-42da-9dcc-fe6dfadbbce1"
/>
- Normal sized, light weapon weight, dual wielding
- 10 spread
- 20 dual wielded spread
- Sawn-off recoil (high)

**Compressed WT-550 magazine**
- 40 capacity
- 12 damage (20 for normal rounds)

**Stingballer**
<img width="32" height="32" alt="image"
src="https://github.com/user-attachments/assets/de30bda5-9e0b-44da-8097-ca9827d3d8c8"
/>
- Bulky sized, normal weapon weight, no dual wielding.
- 8 rounds per second
- 7.5 spread
- 50 round capacity
- 1.5 damage
- 4 stamina damage
- Embed chance at close range
- Bouncy projectile
- Low effective range

**.38 Battle Rifle**
<img width="48" height="32" alt="image"
src="https://github.com/user-attachments/assets/24a9a257-97fe-4313-ba39-93d17230f1b4"
/>
- Overall same statistics as the NT-38 Battle Rifle except for
- 1.0x damage multiplier (compared to 1.2x)
- 1.0x projectile speed multiplier (compared to 1.2x)
- 25.0% faster rate of fire (1.5 compared to 2)
- No degradation mechanics
- No scope

**Advanced Energy SMG**
<img width="32" height="32" alt="image"
src="https://github.com/user-attachments/assets/2671009a-a994-4054-92ff-4db2959501e8"
/>
- Bulky Size, no dual wielding.
- 0.8x damage multiplier (12 on kill, 12 on disable)
- 1.2x projectile speed multiplier
- 40 shots on kill, 40 shots on disable
- Charges about half as fast as the regular advanced energy gun.
- Same fire rate as the disabler SMG
- 2 spread

**Security Juggernaut Suit**
<img width="32" height="32" alt="image"
src="https://github.com/user-attachments/assets/5de0a084-4a07-4d8f-88a3-d9996de41010"
/>
- Built in helmet
- Helmet protects head from flashes, loud noises, impacts and
pepperspray
- Full temperature and pressure protection
- Helmet has powerful flashlight mounted
- Takes 12 seconds to put on, 15 to put on someone else
- Slows you down everywhere
- Slows you down when in-hand
- Slows down someone who's dragging you
- Prevents aggressive grabs against you when worn
- Prevents combat-mode pushing against you when worn
- Prevents shove knockdowns when worn
- Prevents gravity effects when worn
- Prevents buckling when worn
- Cannot be red potion'd.
- Does NOT protect against batons or knockdown.

Current Armor values:
- melee = 80
- bullet = 80
- laser = 70
- energy = 60
- bomb = 100
- bio = 100
- fire = 100
- acid = 100
- wound = 30

## Why It's Good For The Game

This PR adds in quite a few items that fill certain role archetypes
within security while allowing them to still use equipment that security
would already have.

## Proof Of Testing

Testing overall has been completed.

Testing left to do:
- [x] Cargo Orders

## Changelog
🆑
add: Added a bunch of alternative additional weapon and equipment
upgrade options to security, allowing a little bit of difference in the
late-game arsenal or general armament.
add: Adds the WT-550-B and WT-550-C, upgrades to the classic autorifle.
add: The WT550 can now also be sawn-off.
add: Adds the Stingballer, a close range weapon that rapidly shoots
stingballs.
add: Adds the Stunstaff, an aura-farming alternative to the classic
baton and shield.
add: Adds the Advanced Energy SMG, an a modified AEG that gains
rapid-fire capabilites.
add: Adds the Security Juggernaut suit, an impossibly slow suit that
hinders your movement but has some of the best armour you'll ever see.
add: Adds the .38 battle rifle, a simplified NT-38 Battle Rifle. Lacks
the combat improvements, but does not degrade.
balance: The Horizon Beam Rifle's performance has been tweaked. Damage
is now 110, with 35 armor penetration and a demolition mod of 2, as well
as the ability to destroy walls like pulse rifles.
add: The Kiboko and pneumatic grenade launcher can be bought from cargo
now.
del: The WT-551 has be completely removed and replaced with the WT-550
del: Any instances of Skyrat's ammunition naming system have been wiped.
Please report any inconsistencies you may find.
/🆑

---------

Co-authored-by: Cabbage <supredoode@gmail.com>
Co-authored-by: Mathilde <146444134+ibexgoetia@users.noreply.github.com>
Co-authored-by: Roxy <75404941+TealSeer@users.noreply.github.com>
Co-authored-by: LT3 <83487515+lessthnthree@users.noreply.github.com>
2026-07-19 12:24:29 -07:00
RobwoandGitHub 99dcbd4743 Adds Emergency Vox Nitrogen Tanks to Oxygen Closets (#5911)
## About The Pull Request
#Nitrogen4Vox
I know we have low amount of vox players but this feels like a
no-brainer change.
Also this updates the emergency nitrogen tank sprite to be consistent
with tg's.

<img width="835" height="458" alt="image"
src="https://github.com/user-attachments/assets/ba14a469-c8eb-4aaa-a806-788b38a7f451"
/>

## Changelog
🆑 Robwo
add: Added emergency n2 tanks to oxygen closets for vox.
/🆑
2026-07-14 11:34:07 -07:00
The Sharkening 4a5104e4a0 Turns janitor borgs into walking crew operated vacuum cleaners. (#96724)
## About The Pull Request
Allows people to detach a cleaner and vacuum (uses the trash bag) from
janitor borgs. This option uses zero water management and doesn't create
slip tiles.

The module can be locked with alt click.

<img width="342" height="681" alt="image"
src="https://github.com/user-attachments/assets/0fe53f8b-d850-4354-aa70-382ca40dcd37"
/>

<img width="590" height="581" alt="image"
src="https://github.com/user-attachments/assets/70fea653-ad20-479a-8986-fed0e15af4b1"
/>


https://github.com/user-attachments/assets/ff81a214-1bfb-4a33-a660-ccb563e310af

Sounds are from soundsnap and properly licenced.
https://soundsnap.zendesk.com/hc/en-us/articles/115003916431-Legal


## Why It's Good For The Game

I think co-op mechanics are fun. If you manage to get a friend, this is
an option with zero water management. I feel like janitor borgs don't
really have much the way to cooperate with their base mechanics. You can
walk into a department and clean it wordlessly. This gives the option
where you can clean with your friend (or the crime scene you're trying
to scrub)

## Changelog
🆑 StrangeWeirdKitten, Toriate (sprites)
add: Janitor borgs now have a crew operated end that allows their
squishy overlords to do some cleaning themselves.
/🆑
2026-07-12 10:50:41 -06:00
AlexisandGitHub fb67ef6a5d Cleanup + TGUI Fix for Hair Dye [NOVA PORT] (#5896)
## About The Pull Request
ORIGINAL PR: https://github.com/NovaSector/NovaSector/pull/6818
Cleans up the code for hair dye and fixes the TGUI NtOS bluescreen.
## Why It's Good For The Game
Bugs are bad and maintenance for unmaintained code is good.
## Proof Of Testing
See below.
<details>
<summary>Screenshots/Videos</summary>
<img width="451" height="172" alt="image"
src="https://github.com/user-attachments/assets/36c89512-e375-47f7-9d49-942158acabde"
/>

<img width="767" height="526" alt="image"
src="https://github.com/user-attachments/assets/bb0c5053-437f-4d93-8956-f8164ad9be4d"
/>

</details>

## Changelog
🆑 xPokee, Hardly
fix: Fixes hair dye's gradient dyeing not working
/🆑
2026-07-04 11:44:27 -07:00
The Sharkening dac3809188 [GBP IGNORE] Fixes " and ' being broken (#96660) 2026-06-29 14:55:53 -06:00
The Sharkening a796a57821 Adds <small> to Say html options. Uses ^ as its prefix. (#96616)
## About The Pull Request
``
^this is small text^
``

<img width="458" height="17" alt="image"
src="https://github.com/user-attachments/assets/f2850440-bdd5-4cfa-b3e1-963e54f895b8"
/>


## Why It's Good For The Game

Allows a greater range of creativity and emphasis for people when
they're talking to each other. Overall, there's a level of freedom this
would unlock for people and I think it'll primarily be fun. Muttering,
saying something under your breath. Stuff like that.

🆑
add: Added a new <small> html option for Say. Use ^text^ for smaller
text.
/🆑
2026-06-29 14:55:53 -06:00
Roxy a19098fcac Merge branch 'master' into upstream-2026-06-23 2026-06-27 13:07:00 -04:00
muchatrasandGitHub 74a3fa6d03 Fixes sprites from the security officer/hos outfits, adds other viro sec stuff and remove duplicates (#5841)
## About The Pull Request
This PR is basically an hos outfit cleanup:

- It fixes the viro sec helmet and the hos sec helmet from not being
able to carry a flashlight, it also put the hos helmet to the same armor
level as all other head garbs
- It removes all of the duplicates from the hos outfit bag
- It fixes stray pixels from the viro hos uniform
- It fixes a missing icon from the softshell coat
- It removes one of the viro hos trenchcoat which I couldn't find the
worn icon anywhere (currently invisible ingame)
- Re-add the hos plate carrier that was forgotten in the code and the
security viro helmet in the sec vendor
- Migrates all of the hos custom garment from the TG code into the
Bubber module
## Why It's Good For The Game

The hos outfit bag had 9 duplicated items
Before: 
<img width="473" height="538" alt="image"
src="https://github.com/user-attachments/assets/8fffe8e1-8267-4300-b27e-c7adb3591821"
/>

After:
<img width="470" height="467" alt="Screenshot 2026-06-24 183746"
src="https://github.com/user-attachments/assets/b326f63d-b998-40fc-baae-ed046823fb86"
/>
 
The removed coat was identical to another one that is working, but had a
red pixel on one of the arm. I'll eventually try to find the missing
icon
Everything that was there is still there
The plate carrier is cool and awesome and is my prized jewel that I
didn't create myself

Bugs bad
## Proof Of Testing
The plate, the helmet with flashlight, the uniform with no more stray
pixel floating
<img width="83" height="74" alt="Screenshot 2026-06-24 185003"
src="https://github.com/user-attachments/assets/4048f68d-cf3e-47a8-bae1-17d2f7f0efe4"
/>



## Changelog
🆑
add: Re-added the hos plate carrier and sec helmets from viro (in
vendor)
fix: Fixed certain missing/broken icons from sec outfits
fix: Fixed the viro sec helmets
fix: Removed all the duplicates from the hos outfit bag

/🆑
2026-06-25 06:55:27 +02:00
RobwoandGitHub 23e12b3be2 Fine, I'll do it myself: Teshari Limbs in the Limb Grower (#5832)
## About The Pull Request
Adds teshari limbs to the limb grower. What more needs to be said? Well,
actually this changes limbgrower.dm so that it falls back to `path =
"/obj/item/bodypart/[part_type]/mutant/[species]"` if `path =
"/obj/item/bodypart/[part_type]/[species]"` doesn't exist. This means
that other species like vox, skrell, ect can get the same treatment as
teshari now (although I think the limb grower ui would need a rework for
all the extra tabs that'd make).
## Why It's Good For The Game
No more suffering for the birds. No longer do you have to go all the way
to robotics when you need a new limb that fits on you.
## Proof Of Testing

<details>
<summary>Screenshots/Videos</summary>
<img width="677" height="373" alt="image"
src="https://github.com/user-attachments/assets/45531ba1-d8d6-4d7b-bb69-96800d65e181"
/>

</details>

## Changelog

🆑 Robwo
add: Limb growers can print teshari limbs/organs now.
/🆑
2026-06-24 13:36:51 +02:00
Roxy de4c3b255d Merge branch 'master' of github.com:tgstation/tgstation into upstream-2026-06-23 2026-06-23 15:51:55 -04:00
Leland KembleandGitHub 1af1723f09 Fixes runtime when dropping an IED (#96621)
## About The Pull Request

arguments are important for functioning procs

## Why It's Good For The Game

<img width="342" height="96" alt="image"
src="https://github.com/user-attachments/assets/af33d6e3-5483-4e6b-8e7a-638f85eb149c"
/>

the hell was this guy doing to drop an ied 42 times in one round

## Changelog
🆑

fix: fixed a runtime when dropping an IED

/🆑
2026-06-23 16:44:53 +02:00
5c39729e09 You can put the surplus energy sword on your belt slot (nmh larp?) (#96619)
## About The Pull Request
When the surplus energy sword is inactive you can put it into your belt
slot.
There is a worn sprite for it now as well to accommodate this, shown in
the video below as well as the active check.

https://github.com/user-attachments/assets/59c2e404-b6d7-4125-a207-582697da351c


## Why It's Good For The Game
It's a expensive and powerful black market item, it's cool to be able to
show it off without having to wave it around in people's faces. Belt
slot is valuable real estate already; i don't see any issues with
letting it hold a tiny item, and you can't leave it active while on your
belt.
## Changelog
🆑
qol: you can put the surplus esword onto your belt
image: updated belt.dmi with worn sprites for the surplus esword
/🆑

---------

Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
2026-06-23 16:43:44 +02:00
SmArtKarandGitHub 75ac9042e1 Hides projectile lighting from the right click menu (#96501)
## About The Pull Request
Fixes this

<img width="294" height="181" alt="dreamseeker_ktDfO4mbM9"
src="https://github.com/user-attachments/assets/3150a452-93bc-44a0-895b-e2d02b5ac15a"
/>

## Changelog
🆑
fix: Projectile lighting is no longer shown in the right click menu
/🆑
2026-06-22 13:29:46 +12:00
SmArtKarandGitHub 0f0be33fcd Drastically lowers the amount of gibtonite on icebox, fixes incorrect wall typepath (#96504)
## About The Pull Request

Significantly reduces the amount of gibtonite spawned on icebox, and
fixes underground cavegen spawning normal icemoon walls rather than
special underground ones (which have numbers equals to those of lavaland
walls, rather than reduced surface numbers) which caused icebox to have
significantly less ore than intended.

## Why It's Good For The Game

Its everywhere man, I'm pretty sure underground has more gibtonite than
titanium at this point. Its so common that I've had 5-6 long chain
reactions occur just from shooting one of them, which caused the station
to shake for half a minute straight.

<img width="533" height="619" alt="dreamseeker_WiZO1oTeM6"
src="https://github.com/user-attachments/assets/04080f36-5687-42d3-9754-a93a2b26c3fc"
/>

## Changelog
🆑
balance: Drastically reduced the amount of gibtonite spawning on icebox
fix: Fixed icebox underground spawning significantly less ores than
intended
/🆑
2026-06-22 13:28:55 +12:00
f69a9634fa Standing overlay cleanup (#96593)
## About The Pull Request

Every standing overlay layer that wasn't actually a standing overlay
layer is now a "sub-standing layer", denoted with a decimal

Total number of standing overlay layers reduced from 39 to 23

Small refactors to mutation overlay/species handling and cult halo. 

## Why It's Good For The Game

Makes it easier to work with mob overlays. 

You can see at a glance which layers are applied with standing overlays
and which layers are manually handled, and more importantly you can see
how the layers sort themselves out by just looking at them. Very
convenient.

## Changelog

🆑 Melbert
code: Reorganized human layering, report any oddities with sprites, such
as mislayered equipment.
refactor: Refactored cult halos, report any oddities like them not
appearing when they should.
refactor: Refactored mutation visuals, they're now affected by height!
Report any oddities like them disappearing.
refactor: Refactored mutation species handling, report any oddities like
lizards with hulk.
/🆑

---------

Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
2026-06-22 01:25:01 +00:00
GhomandGitHub e700e5c8b1 Floor decals are no longer rainbow-colored every round during pride week (#96557) 2026-06-21 22:13:13 +00:00
Leland KembleandGitHub 4e1c2d5154 Fixes runtime when creating a stack out of a stack with full hands with a stack below you (#96582)
## About The Pull Request

Stack's made, eaten by other stack the second it's created, tries to
initialize materials with an amount of 0, predictably runtimes. Don't
bother with materials if the stack's already eaten.

## Why It's Good For The Game

<img width="677" height="93" alt="image"
src="https://github.com/user-attachments/assets/79e6c8f0-b3e3-4b8d-9bcb-00974f3545f0"
/>

## Changelog
🆑

fix: fixed a runtime when creating a stack via another stack that's then
eaten by another stack when it's created

/🆑
2026-06-21 22:19:17 +02:00
QuiteLiterallyAnythingandGitHub c7e7257d9a Fixes floor igniters by refactoring wall button control assemblies (#96516)
## About The Pull Request
Constructable atmospheric floor igniters (as introduced in PR #75722 by
@SyncIt21) seem to have been broken last year with PR #92494. All
button-bound controllers (igniter, airlock, crematorium, curtain, et
cetera) are currently subtypes of blast door controllers. Accordingly,
the `multitool_act()` proc from the latter PR both broke and erroneously
introduced blast door ID-setting functionality to every subtype.

<details><summary>Faulty <code>examine()</code> for example:</summary>

<img width="415" height="121" alt="Ignition_Controller_Desc"
src="https://github.com/user-attachments/assets/ce7b038a-035a-45b1-85f9-1c78ad9b8b63"
/>

</details>

This PR fixes floor igniters by refactoring blast door controllers into
their own subtype of a generic parent type. A few minor grammar
corrections have also been included.
## Why It's Good For The Game
There are a lot of different wall buttons in-game that do a lot of
different things. Many of those things are far removed from blast doors.
Having blast door controllers be the parent type for all other
controllers is then likely to cause future problems. Nothing more
exemplifies this than the problem fixed here.
## Changelog
🆑
fix: Fixed floor igniters and ensured that they are linkable to
constructed buttons.
fix: All wall-mounted button electronics are no longer arbitrarily
alterable with blast doors.
refactor: Refactored blast doors controllers into their own subtype of a
new abstract controller type.
/🆑
2026-06-20 16:45:56 -06:00
SmArtKarandGitHub dd05552fe6 Refactors shards to item_interaction, fixes a runtime (#96465)
## About The Pull Request

What title says, shards would runtime when cutting cloth due to calling
the wrong proc (which wasn't needed in the first place, qdel already
drops the item)

## Changelog
🆑
fix: Fixed a runtime when cutting cloth with glass shards
refactor: Refactored glass shards to item_interaction
/🆑
2026-06-20 12:20:52 +02:00
GhomandGitHub 52e7062fa7 You can now kiss that pizza toilet with the chef kiss skillchip to add "love" to its reagents. (#96547)
## About The Pull Request
De-hardcodes food/crafting complexity (the stuff responsible for food
buffs) from food items and gives the var to the edible component, so
that objects crafted with pizza or meat sheets can have it as well.
Renamed TRAIT_FOOD_CHEF_MADE to TRAIT_HANDMADE now that it's also given
to the item when crafted through either the stack recipe UI or crafting
UI.

## Why It's Good For The Game
See title. In all seriousness though, it's more flexible code.

## Changelog

🆑
refactor: Refactored a couple things around food/recipe complexity (what
food buffs depend on). Technically, you can now kiss that pizza toilet,
which you crafted (right?), with the chef kiss skillchip enabled to add
"love" to its reagents.
/🆑
2026-06-19 12:15:00 -06:00
Leland KembleandGitHub 8f11034a79 Fixes runtime when connecting a tank to a TTV (#96559)
## About The Pull Request

didn't pass user when attaching the other way around

## Why It's Good For The Game

<img width="534" height="97" alt="image"
src="https://github.com/user-attachments/assets/d86e9674-9346-4e50-8f23-f449df97508f"
/>

## Changelog
🆑

fix: fixed connecting a tank to a TTV the other way around

/🆑
2026-06-19 01:10:47 +02:00
c3c54bf66c Heretic rework & reintroduction - less prog, less murder, more cultsim LARP (#5445)
# Before TMing this please contact me on discord, I'd like to observe
the TM

## About The Pull Request

### There is a shimmer in the air, again. Familiar. The nighttime walk
of dreams yet again takes the uncomfortable form of an icey woodfield,
moths and owls swooping overhead. An uneasy shiver runs down the spine
of the world. The gaze of the Light focuses on our lowly region of space
- will you knock?

Design doc V1 (Tentative, may change based on feedback):
https://hackmd.io/@NikoTheGuyDUde/B1XEAAv3Zg

Reverts https://github.com/Bubberstation/Bubberstation/pull/5268 by
reworking heretic into a far less scaling, less dangerous, and less
murdery antagonist. Read the design doc for more.

### DISCLAIMER
I was not a mainline heretic player, nor someone who had constant
contact with ehretics. Therefore, I am not the best judge of heretic's
balance. A lot of this is **prone to change**.

### Changes
Heretic is now named **acolyte.**

#### Base kit
1. Heretics can no longer blade break. This is because jesus christ
blade breaking was annoying but also as a way to remove some of
heretic's crazy mobility.
2. Cloak of shadows and warren king's welcome are now 0.5 cost shop
items.
3. Passives are purchased now, with cost based off the path itself.
4. The same is true for blades and the mansus grasp mark, being 2 cost
nodes.
5. The heretic aura is now completely disabled, until I find some way to
use it.
6. The living heart ritual now requires plasma. You cannot get a heart
in perma, good riddance.
7. You can no longer shovestun after a grasp. Still a very useful tool,
though.
9. _**ASCENSION IS GONE.**_ Your only progression is with your
objectives. Find a gimmick to do if you want. Opening ways will be hard
enough.
10. Rituals & Mansus grasp are disabled if you have no heart. Its now
complete neutering.

#### Countermeasures
1. No heart = No rituals and no mansus grasp for anything but runes.
2. Added antimagic collars to security and cargo that act the same as
having no living heart, but is less invasive and can be more easily
removed.
3. Most heretic items have examine hints to non-heretics now.

#### Progression
1. Heretics now only progress via their intrinsic objectives, and only
up to a point. Ex. 0.5 points per influence, 2 points per way.
4. Passive generation is also substantially slower.
5. Heretics now have access to **fifteen knowledge points** on spawn,
and **their entire research tree+draft shop**. No more draft freebees
exist, either. (This is prone to change)
#### Objectives
1. Drain Influences - Influences now passively drain sanity aroudn them,
cause hallucinations, and have a rare onetime chance to spawn a heretic
mob. The heretic must drain **six-seven** influences to gain **two**
knowledge points.
2. Open Ways - Ways are a new type of heretic influence that spawn
exclusively in high-importance or high-traffic areas. A heretic must
perform a ritual with four randomly generated items on the way to open
it. Once open, the way has a variety of effects, the majority of which
are **beneficial, but in a bad way.** Ex. spawning 5000 mols of a
valuable gas. The heretic must drain **three** ways to gain **four**
knowledge points.
3. Wildcard - There are currently five wildcard objectives any heretic
can roll. **One:** Steal 1000-1250 credits from crewmembers using the
Claw of the Capitalist ritual. **Three:** Have 9-10 crewmembers consume
potions from the Mawed Crucible. **Four:** Perform a ritual in the SM
chamber to neuter its output for 10 minutes. **Five:** Perform a ritual
in the AI upload to upload 3 ion laws to the AI.
#### New spells
1. Cloak of shadows & Warren king's welcome are now 0.5 cost knowledge -
This gives me a reason to give heretics just a bit more starting
knowledge.
2. The Owl's Secrets - Sacrifice a radio, a pair of ears, and a
bluespace crystal to cast a curse on the telecomms processors. For five
minutes, any outgoing message will be corrupted into heretic-speak, and
will damge the sanity and brain of anyone who hears them. If you start
seeing hypnophrase in the chat, take off your headset or turn off the
processors. 2 uses, as this has the potential to be really annoying. 1
cost.
3. Paranoia's eye - A silent, focusless spell that curses nearby people
to see everyone around them as heretics and disables their ability to
examine them for one minute. 1 cost.
6. Claw of the Capitalist - Allows you to transmute someone's blood into
money by stealing it from their account. Each 1u of blood of 5% drained.
If the blood is from a phylactery, it wont steal any that will reduce
the target's account below 300 credits. The target is notified when this
happens. 1 cost.
7. Voice of the mansus - Single use, but re-researchable, ritual that
allows you to do a fake announcement. 1 ears, 1 radio. 0.5 cost.
12. Trickster's pen - Transmute a pen, a sheet of plasma, and a pair of
eyes into a pen that can be used to change the name, age, job, and trim
of a card, and clicked to turn you momentarily near-invisible. 1 cost.
13. Trickster's mask - Transmute a bandana and a spraycan into a
chameleon mask. Thats it. Best with the pen. 0.5 cost.
14. Trickster's Promise - prestidigitation. You can make an item glow,
clean a atom (cleans forensics), shoot confetti, or my personal
favorite, increase the food quality of an edible by 2 and add 5u of a
weak synth-healing omnizine to it. Perfect for chef heretics. 1 cost.
15. Unwrap Minds - EARLY PULL FROM
https://github.com/tgstation/tgstation/pull/95796/. Scalpal, glass
shard, paper, victim. Hypnotizes the victim with whatever is on the
paper. 2 cost.
16. The Blacksmith's Hammer - One diamond, one set of wirecutters,
upgrades your mansus grasp to emag whatever you hit on right click. One
time use - has to be reinvoked every time. 1 cost.
17. Watching Eye - One set of eyes, a sheet of plasmaglass, and a
blindfold creates a one-time small item that can be viewed as if it was
a long-rnged x-ray camera. Has 10% opacity, for sneakiness. While
uncontained in anything, the heretic can whisper a phrase - such as
sleep, blind - to create a short-term, localized negative effect on
non-heretics that the eye is viewing (but only if theyd be viewable
without x-ray). 2 cost, only one can be made - high risk, high reward.
Sprite by Burger, from path of exile.
#### Spell rebalance
1. Ether of the newborn now doesnt heal normal damage. Get a medkit for
that. Additionally, implants remain. Get a _doctor_ for those, or use
any of the other methods to break them.
2. Mawed crucible potions can now be consumed by non-heretics, albiet
disgusting. The potion shop gimmick is real. Additionally, crucible soul
now lasts for 20 seconds and leaves a trail towards the location you
jaunted from when you return. This is because I've heard quite a few
people complain about this thing in the olden days. This doesnt make it
useless, but it does make it more difficult to use.
4. Space phase now has a 2 second do after before phasing out,
uninterruptable. This is mainly for tramstation and icebox when holy
fucking shit it is ridiculous.
5. Wave of desparation now costs 3 points.
8. Armor is now four points.
9. Rust kit and paintings are gone.
10. Codex morbus is gone. Sorry, I dont want to deal with rebalancing it
right now.
11. Phylactery now needs LOS, and has a 3 second do after.
12. Void cloak now disguises itself instead of going invisible.

### Changed paths

#### Void
In the interest of making void a little less murderkill, I opted to add
some flavor and alternate use to void's abilities.

**Void chill** can now put you to sleep if you click its status. This
sleep will heal you via cryoxadone. Being hit will wake you up, as will
void chill going away.
* This is intended to add a alternate, medical use to void, as well as
to nerf void chill a little bit. It does nothing to help you in active
1v1 combat, but if the void heretic disengages, you can heal yourself.
Its alsl nice and flavorful.
Void chill is also now nearly 100% countered by leporazine. Coffee and
tea help with the slowdown, but dont help with cold at 5 stacks.

**Void pull** is gone. **Cloak of darkness** replaces it, with perfect
invisibility taht prevents the use of any tools or abilities while its
active. Being hit instantly banishes it. The cloak slowly cools the air
around you, so if people are aware of your status of a void heretic,
they might be able to guess the chill in a previously warm room might be
you.

**Void conduit** no longer griefs windows and doors. It now chills the
air around it, while putting people to sleep - using the same eldritch
sleep that void chill does. You can use coffee to counteract this, or
simply fire at the conduit from a distance.

**Void cage** now heals the target for 2 of each damgae type a second.
Can now be self-cast. _Still useful for its intended roles._

**Void phase** now has a 40 second cooldown instead of 20. 20 is
ridiculously low for a jaunt with guaranteed EVA power, and 40 should
prevent its abuse.

_Void will probably receive further changes._ On the docket is a void
phase nerf and a void conduit nerf.

#### Moon

**Ringleader** no longer stuns you if you kill a clone, only knocks
down.
**Lunar parade** now lasts for 45 tiles, down from 60.
The passive's healing is reduced by 25%.
The blades upgraded brain damage is now 20, and the sanity threshold for
insanity is now disturbed.
The armor now translates slughtly more health, meaning its less
protective.

_I understand moon the least of all the paths, but I love its flavor, so
I decided to focus on it. Im balancing based off what Roxy suggested
were the issues._

## TODO

- [x] Void path rework
- [x] Investigate if we need to nerf moon more, maybe reflavor it as
well
- [x] Implement the third objective
- [x] Rigorous bug testing
- [x] Rewrite UI
- [x] Remove irrelevant tarting spells (sacrifice, notably)
- [x] Add more non-combat spells

### Implemented paths

- [x] Void
- [ ] Moon
- [x] Lock
- [x] Flesh
The paths beneath this line will be focused on after the initial TM is a
success.
- [ ] Blade
- [ ] Ash
- [x] Cosmic
- [ ] Rust
## Why It's Good For The Game

Heretic is one of the most flavorful internal antagonists in the entire
game, flavorful enough people were making characters around heretic,
people had entire storylines based on heretic, and I feel a lot of value
was lost with heretic. Simulatniously, uh, _**heretic was one of the
worst designed antags in the game?**_ Too powerful, too scalable, and
generally just has a "I HAVE A ANTI-EVERYTHING SHIELD" vibe.

This PR brings it back as a static, traitor-style antag with limited
progression. Variety is always good.
## Proof Of Testing
<details>
<summary>Screenshots/Videos</summary>
TODO
</details>

## Changelog
🆑
add: Heretic - Now reworked as a far less oppressive and far less
scaling antagonist
/🆑

---------

Co-authored-by: Roxy <94389951+SapphoQueer@users.noreply.github.com>
2026-06-18 20:37:25 +02:00
308853cee3 Stasis crates (#96505)
Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
2026-06-18 17:54:04 +02:00
ArcaneMusicandGitHub 0846c1f602 Standarizes some moon outpost 19 fixes and map tweaks. (#96278) 2026-06-18 17:16:10 +02:00
RoxyandGitHub 4fe5897dfd Fix limbgrower/fullupgrade having invalid designs (#96541) 2026-06-18 17:12:58 +02:00
SmArtKarandGitHub 7e0fba028f Fixes earthcracker not getting spent on mining z levels (#96533)
## About The Pull Request

Closes #96531

## Changelog
🆑
fix: Fixed earthcracker not getting spent on mining z levels
/🆑
2026-06-17 05:43:59 +02:00
SmArtKarandGitHub 6721fdad20 Allows materials to be ejected directly from the autolathe (#96487)
## About The Pull Request

<img width="670" height="600" alt="image"
src="https://github.com/user-attachments/assets/db451921-5cfa-437d-b9ca-be09f0daa91e"
/>

Adds buttons to eject 1, 5, or all sheets of any material from the
autolathe, and removes sheet designs.

## Why It's Good For The Game

The existing system is insanely stupid and results in most uncommon
materials being stuck in the autolathe until it is disassembled, and
having to find the sheet manually is annoying.

## Changelog
🆑
qol: Materials can now be directly ejected from autolathes rather than
needing to be printed.
/🆑
2026-06-16 22:21:58 +02:00
CabinetOnFireandGitHub d5b366d47a adds a playsoundtoken proc that allows one-shot sound tokens playing, and adds support for it to emotes. (#96519) 2026-06-16 12:06:13 +02:00
GhomandGitHub 564939d751 moves the material container files inside the datum/materials folder 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
2026-06-16 14:43:26 +12:00
33824ac7c1 TTS 3.0: Blips Rework, Radio TTS, Unknown Languages are Blips now (#95369)
## 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

🆑
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.
/🆑

---------

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>
2026-06-15 18:54:24 -04:00
AeriandGitHub 4f36062120 Ball Mittens: Expanded and Enhanced (#5664)
<img width="830" height="45" alt="image"
src="https://github.com/user-attachments/assets/dc76c74d-7a97-4cd7-ab91-df8ffefa392e"
/>

## About The Pull Request

**YOU!** [Have you ever wanted to be a strange, round, rubbery little
creature with absolutely no fine motor control? No? Well you should have
thought of that before you went to sleep somewhere which gave me the
AMPLE opportunity to slide my EXTRAORDINARY new creation right onto your
FORMER HANDS!](https://www.youtube.com/watch?v=OjdgFSoQ00w)

Introducing Ball Mittens and Latex Paw Mittens: inflatable latex gloves
that, once on, become your hands for the foreseeable future! Big
shoutout to **Onule** for the sprites!

Ball Mittens are now a new equip-able lewd item available in the loadout
(Toys > Lewd Toys) or found in the Lustwish vendor.

They can be reskinned mid-round into Latex Paw Mittens, which are ALSO
available directly as an _incredible_ loadout item in the Gloves tab
with full GAGS color customization across three extraordinary color
groups! All for only four easy payments of no money at all!

While wearing either variant, the wearer experiences a suite of
DELIGHTFUL fumble mechanics representing a meteoric rise above the old
versions which just meant you could do basically nothing!

Here's what they do:
- Item pickup requires getting down on your knees and wrestling with the
item for a variable delay, with a small chance of you struggling even
longer because of how hard it is.
- Inventory retrieval from pockets, ID slot, belt, suit storage, and
_many more_ has a brief delay to represent fishing it out of your
pockets with your clumsy mitts! NOTE: This functionality is limited by
core aspects of the game engine, certain items are not subject to this
delay such as any item which is a container including but not limited to
toolbelts, backpacks and more. I tried but eventually gave up.
- Clothing has an extended timer. Have you ever tried unbuttoning a
jacket with paws the size of your face?
- Machine and console interaction requires a 1.5-second delay (skipped
when in combat mode, where you are presumably STRIKING DOWN the EVIL
machine)!
- Self-removal takes a full minute via the resist key or clicking the
item in the HUD. I was thinking of just making it impossible to remove
them on your own outright, but I changed my mind, aren't I swell?
- Throwing has a 5% chance of the item simply tumbling to the floor
instead. I thought about monekying with strength or like half a dozen
other things which I scrapped in the prototype phase when I realized how
_VIOLENTLY ANNOYING_ they would get over time!
- Guns suffer a serious spread penalty! It's hard to use guns when your
beans won't even fit inside the trigger guard!
- Restraint escape time is tripled! How the hell do you escape handcuffs
with your bare hands, let alone paws?!
- Stripping other players is much harder, I think it speaks for itself,
you're a cat, have you ever seen a cat steal your shoes? Absurd!
- The items are fire-proof because they're supposed to play into the
fantasy of having paws so it'd be lame if they could be trivially burned
off you and you can also use insulated gloves on them to witness the
absolute peak of comedy in the form of a funny easter egg!
- Surgery on the wearer is not blocked in order to play into the fantasy
that you actually have paws, wow! The mittens are considered transparent
to surgical operations! This means you don't have to have your hands
ripped off to get arm surgery! This was **obscenely** challenging to
implement! This and the ability to add insulation are very small
concessions to make it not pure agony to play with these on as say, an
engineer. They are heavily outweighed by the downsides.
- Another player can strip them off normally. The OOC safeword removes
them instantly if you decide the fun really has to end! Remember that
this function exists boys and girls!
- The items make appropriate rubber squeaking sounds, play flavor
messages for the wearer, and have visible bystander messages so the
whole crew can enjoy the endless novelty afforded by your predicament.


Also since this changes the appearance of the Cat Gloves, I've decided
to just go ahead and add the light QOL functions to these too, they
don't provide any gameplay advantage whatsoever. Arguably they make your
life harder.

## Why It's Good For The Game

You have been granted a GIFT. A BLESSING. An entirely voluntary and
opt-in set of squishy latex paws that make everything slightly harder in
ways that are charming rather than punishing.
More seriously: this adds a significant level of functionality to an
item which is otherwise a dead end
It also adds SKINS which you can sell on the Steam Market for PENNIES ON
THE DOLLAR!†

What's more, many manhours have been expended testing these to get the
balance just right!

†Disclaimer, you cannot actually sell the skins 

Also I have already gotten approval from maintainers so I'm just writing
this for fun.

## Proof Of Testing

There are 30 to 50 copies of Tgstation.dmb in my recycle bin because I
meticulously compiled and tested every feature with every change to this
code that I made because I am **NOT GUILTY BY REASON OF INSANITY!** And
also I don't know how to use VSC. I think that's adequate and I don't
want to download OBS again. Oh and there are like a bajillion commits of
my dumb ass trying to fix this.

<img width="425" height="414" alt="image"
src="https://github.com/user-attachments/assets/806f4c6d-81ee-4143-be1c-91db94b6efdf"
/>
<img width="1626" height="832" alt="image"
src="https://github.com/user-attachments/assets/327581d2-e593-443a-8cde-053b7d0de80a"
/>
<img width="496" height="1177" alt="image"
src="https://github.com/user-attachments/assets/12fc408b-b2d1-43e5-b220-f207cac8ef1d"
/>



</details>

## Changelog
🆑
add: Added vast amounts of functionality to Ball Mittens, inflatable
latex gloves with fumble mechanics for item pickup, inventory retrieval,
clothing removal, machine interaction, and more !
add: Added Latex Paw Mittens, a GAGS-colorable paw-form variant
available in the Gloves loadout tab with full three-color customization!
image: Added GAGS sprite layers for Latex Paw Mittens
/🆑
2026-06-14 10:21:23 -04:00
MrMelbertandGitHub 5b9ae7636b First aid station circuitboard in cargo + updates medical crate larp (#96453)
## About The Pull Request

1. DeForest first aid stations can now be constructed and deconstructed

Deconstruction is a simple screwdriver + crowbar. 

Construction involves the following: 
```
1x wound analyzer
1x syringe
1x scalpel
1x hemostat
```

Extra circuitboards can only be obtained from cargo for 1200 credits. 
Emag status is tied to the circuitboard. 
Innate armor has been tweaked to accomodate. 

2. DeForest emergency first aid stations now take 2x longer to recharge
but heal 2x faster.

These are the ones you find on shuttles that are always free to use. 

3. Medical crate larp updates

Most medical supplies now come in generic `DeForest Medical crate`s. 
Sansufentanyl now comes in a generic `Interdyne Pharmaceutics crate`.

## Why It's Good For The Game

1. I wanted a way to replace broken or hacked first aid stations WITHOUT
making them spammable. (They really musn't be spammable or it puts
Medbay out of a job.) So Cargo seemed pretty appropriate.

2. Since you can now theoretically steal these from space ruins (which I
think is fine and cool), they needed a small update so as to not also
put Medbay out of a job.

3. Larp larp larp. Cementing DeForest as the main provider of
conventional medical supplies, but also Sansufentanyl is already
flavored as being produced by Interdyne.

## Changelog

🆑 Melbert
add: You can now deconstruct first aid stations with a screwdriver and a
crowbar.
add: You can now buy first aid station circuitboards from cargo for 1200
credits.
add: Most medical supplies ordered from cargo now come in DeForest
crates. Sansufentanyl comes in an Interdyne create.
balance: As they can now be replaced, first aid station armor has been
reduced.
balance: Emergency first aid stations now heal twice as fast but also
take twice as long to recharge.
/🆑
2026-06-13 14:48:25 -07:00
Leland KembleandGitHub f75cff4b99 Fixes runtime in pathfinding (#96468)
## About The Pull Request

Obvious

## Why It's Good For The Game

<img width="532" height="112" alt="image"
src="https://github.com/user-attachments/assets/d4e82701-943c-4301-a301-2db53b135e5b"
/>

## Changelog
🆑

fix: fixed a runtime in pathfinding

/🆑
2026-06-13 14:45:44 -07:00
99786302fe Pull #96417 from tg - Fixes diamond and bluespace artifact boulders not containing any diamonds/bluespace crystals (#5783)
## About The Pull Request

https://github.com/tgstation/tgstation/pull/96417
## Why It's Good For The Game

bugs bad
## Proof Of Testing
<details>
<summary>Screenshots/Videos</summary>

tis a upstream pull

</details>

## Changelog
🆑
fix: Fixed diamond and bluespace artifact boulders not containing any
diamonds/bluespace crystals
/🆑

Co-authored-by: SmArtKar <44720187+SmArtKar@users.noreply.github.com>
2026-06-13 16:25:21 -04:00
SyncIt21andGitHub b003f8fd97 [NO GBP]DeIntegrates welder from omnitool & radial menu won't show already selected tool (#96443)
## About The Pull Request
- See #96481 &
https://github.com/tgstation/tgstation/pull/96214#issuecomment-4697205835.
It's not worth the hastle but the revert was done in a bad way that
removes code & qol stuff so i did it better here.
- Radial menu won't show you the selected tool again thus reducing
clutter

## Changelog
🆑
del: removes the welder from the engiborg omnitool. They are now
separate entities again
qol: The omnitool radial menu won't show the same selected tool again
reducing clutter
/🆑
2026-06-13 17:29:20 +01:00
CabinetOnFireandGitHub ce9752800d Fixes audio not working if you are inside of something (#96476)
get_dist_euclidean needs to have the turf to compare the distance. (this
is not required for get_dist since byond handles that automatically)

🆑 CabinetOnFire
fix: You can now hear the outside world when you're inside of something
again (e.g. lockers, mechs
/🆑

sorry!

closes #96454
2026-06-13 02:34:23 +02:00
Ben10OmintrixandGitHub 64baa1979d Basic mulebots. last basic bot refactor (#95899)
my watch has ended

<img width="401" height="256" alt="ffffff"
src="https://github.com/user-attachments/assets/a539203c-020b-4ad8-b034-f69ec0eafa78"
/>



## Changelog
🆑 Profakos (originally pulled from their branch, did massive chunk of
this), Ben10omintrix
refactor: mulebots have been refactored. please report any bugs
/🆑
2026-06-11 23:58:13 -07:00
antropodandGitHub 4a72162d07 Fix for material tiles and walls not having material when constructed from last item in the stack (#96404)
## About The Pull Request

Fixes #96244.
Problem was that when you use last item in the stack, the stack gets
qdel'd and the destructor is called. The destructor sets `mats_per_unit
= null` for the object, and when custom materials applied to tile/wall
it is null.
Bug was caused by #92620. I'm not gonna review 272 files from that PR to
see if I can delete that destructor, potentially breaking something
else, so this is a lazy fix for the annoying bug which is 6 months old.

## Changelog
🆑
fix: fixed material tiles and walls not having material when constructed
from last item in the stack
/🆑
2026-06-12 01:04:50 +02:00
TimandGitHub 52858a68e1 Add sound to light switches (#96432)
## About The Pull Request
This adds the flashlight toggle on/off sound to the room light switches.
This is also used by a lot of other lighting objects, like lamps and
lanterns.

## Why It's Good For The Game
Mah Immersion!

## Changelog
🆑
sound: Add on/off sound to light switches in rooms
/🆑
2026-06-12 00:54:55 +02:00
SmArtKarandGitHub 2e01fb19c4 Fixes diamond and bluespace artifact boulders not containing any diamonds/bluespace crystals (#96417)
## About The Pull Request

Boulder-specific materials got overriden by the vent

## Changelog
🆑
fix: Fixed diamond and bluespace artifact boulders not containing any
diamonds/bluespace crystals
/🆑
2026-06-11 11:31:28 -04:00
2b0da7a1ce Security camera attackby to item_interaction (#96361)
## About The Pull Request

Rewrite the big `attackby` for security cameras to use
`item_interaction` and distinct `_act` procs, also turns the big
clusterfuck for pressing notes up to cameras into a slightly less
clusterfuck proc

## Why It's Good For The Game

Clean code

## Changelog
🆑
refactor: security camera construction/item interaction has been
rewritten, report any weirdness
/🆑

---------

Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
2026-06-11 03:28:05 +02:00
SmArtKarandGitHub 4cbef7bc28 Makes TESTING mineral depth overlay work on larger rocks (#96415)
## About The Pull Request

<img width="345" height="347" alt="dreamseeker_g3fZveerSI"
src="https://github.com/user-attachments/assets/bb80332e-8392-4cc4-b754-bf3075da60fb"
/>

New rocks are noticeably larger and old maptext offsets resulted in
depth numbers being partly covered

## Changelog
🆑
fix: Fixed debug overlays on new biome rocks on lavaland
/🆑
2026-06-11 03:25:44 +02:00
btcbusterandGitHub b03c7afaf0 Buffs baseball bats to do more damage and fit on back' (#96397)
## About The Pull Request

Buffs baseball bats to have equivalent damage to fire extinguishers and
fit on the back slot like a spear

## Why It's Good For The Game

Baseball bats have fallen behind recently due to the buffs to improvised
weapons, they take effort to create and are less powerful than other
options, which I think is a darn shame.

## Changelog

<!--Baseball bats do more damage and fit on the back slot now. -->

🆑
balance: Baseball bats do more damage and fit on the back slot now. 
/🆑
2026-06-09 23:42:58 -06:00
GhomandGitHub 3cfd4d5caa All snacks now have the finger food flag now thus can be eaten while moving around. (#96395) 2026-06-09 20:08:44 -04:00
cacogenandGitHub 51708d5504 Adds beef space ramen (#96393)
## About The Pull Request

Adds beef space ramen packets as an uncommon maintenance spawn. These
are small boxes that contain a brick of dehydrated space ramen and a
beef flavour sachet (these are all they can hold). These items can be
used on the soup range to create beef ramen.
## Why It's Good For The Game

The existing option for ramen leaves something to be desired. You just
add water and it magically heats itself. The ramen is treated as a
reagent rather than an object like other noodles.
## Changelog
🆑 cacogen
add: Adds packets of beef ramen as an uncommon maintenance spawn
/🆑
2026-06-10 09:08:10 +12:00
0bd4b0820f Adds TGMC Tactical maps to the game and to Nuclear Operatives! (#96068)
<!-- 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

Brought to you by Team Powercrèpe.(same group of people that delivered
the Heretic Overhaul)

This PR ports the TGMC Tacmaps and grants em to our NukeOps.

Code by Me, @Xander3359, @Arturlang, @Absolucy.

Mapping by @RipGrayson 

Sprites by @KillerOrcaCora

Writing bits by @necromanceranne

Tacmaps are essentially dynamically generated minimaps,

<img width="1711" height="1335" alt="Tac map examples"
src="https://github.com/user-attachments/assets/f936fac0-fb7c-4b84-970d-7195b4995ca7"
/>



<img width="1274" height="714" alt="Tac-Maps Icons"
src="https://github.com/user-attachments/assets/0f04e388-af4b-4955-be7a-04650cfd746b"
/>






As you can see from the screenshots above, departments are classified by
color, hovering your cursor over an area or a team mate, will display
their name, the system does allow the user to switch between Multi-Z,
and lastly you can draw and add labels to the map, although the last
option is only available to the NukeOps Leader and OW agents.


The functionality is tied to the Syndicate implants nukies start with,
Cayenne, Syndie borgs and Mechs also have the ability to toggle the map.

Likewise, the tacmaps will display the positioning of the following in
real time!

- Nuke ops agents

- Syndie borgs and Mechs

- Cayenne

- Location of the nuclear fission device (and beer nuke)

- Location of the Nuclear Authentication Disk.

<img width="1274" height="714" alt="SkyBridge OFF"
src="https://github.com/user-attachments/assets/3915e7d7-644a-4e9a-b213-997834dde2ea"
/>

<img width="1274" height="714" alt="SkyBridge ON"
src="https://github.com/user-attachments/assets/13748290-fd16-42ba-a9c4-a6b4f7e69c79"
/>

<img width="566" height="459" alt="Holo table done"
src="https://github.com/user-attachments/assets/1a43c5b7-ee51-4794-9c09-16b4fb50e2ad"
/>






https://github.com/user-attachments/assets/caf38538-ef04-4330-992c-3137a67ea0d0






Lastly The tactiical map implant cannot be be used on the nuke ops
base,If the team wishes to interact with the map they'll have to
Interact with the "Reconnaisance Platform" (Sprite by Orcacora) in the
briefing room, which has seen some mapping changes (Brought to you by
TheLastGrayson).



<!-- Describe The Pull Request. Please be sure every change is
documented or this can delay review and even discourage maintainers from
merging your PR! -->

## Why It's Good For The Game

Originally this feature was planned for the Upcoming Contractor Rework
our team is currently working on, but given the massive size of it all,
we decided to atomize it.

But without that consideration in mind, I think it makes sense for
Nuclear operatives of all antagonists to have the means to Recon and
plot an assault plan onto the station and actually be able to know the
whereabouts of their teammates.

Obviously this feature has a lot of other potential applications, we
have wanted to have functional Maps for a very long time, if someone
wants to give it a go once the feature is merged, by all means.

<!-- 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

<!-- 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. -->

🆑
add: Tactical Maps have been added to the game!
add: Nuclear Operatives implants now grant the ability to open a
Minimap, this map will display and show the names of various areas of
the station, and the positioning of the Nukeops team,borgs,mechs,Cayenne
and the nuke disk in real time!
add: Nukie leaders and OW agents can also draw and apply labels to the
map.
add: the "Recoinassance Platform" has been added to the Nukie Base, it
allows displaying of the Tactical maps while on the Syndicate Base Z
level.
map: The briefing room in the NukeOps base has been remapped to better
accomodate the new Holographic table.
map: Changed the front shutters on the Syndicate Infiltrator to the more
fitting Syndicate Shutters.
/🆑

<!-- 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: Xander3359 <66163761+Xander3359@users.noreply.github.com>
Co-authored-by: Artur Lang <24881678+Arturlang@users.noreply.github.com>
Co-authored-by: Lucy <lucy@absolucy.moe>
Co-authored-by: Copilot <copilot@github.com>
Co-authored-by: RipGrayson <49290523+RipGrayson@users.noreply.github.com>
Co-authored-by: necromanceranne <40847847+necromanceranne@users.noreply.github.com>
2026-06-09 16:38:00 +02:00
mcbalaamandGitHub 516e13d836 fix: misc Big Manipulator bug fixes (#96374) 2026-06-09 13:47:03 +02:00