Commit Graph
357 Commits
Author SHA1 Message Date
Roxy a58d3115f2 Fixes for d1cf293c58 2025-10-15 22:57:06 -04:00
Roxy d14e538393 Merge branch 'master' of https://github.com/tgstation/tgstation into upstream-15-10-2025 2025-10-15 19:34:41 -04:00
GhomandGitHub aa4cf2b136 The nullrod refactor (the carp-sie plushie is now actually a plushie) (#93311) 2025-10-10 13:42:33 +11:00
TimandGitHub d1cf293c58 More trash added to spawners plus unit test (#93045)
## About The Pull Request
This adds more trash: 
- Paper 
- Empty cigarette packs
- Empty lighters
- Empty food containers from snacks
- Empty can containers
- Unarmed mousetraps
- Cut wire
- Broken plates
- ~~Empty bowls~~

This slightly tweaks some existing values to make things feel fresh.
Also adds a unit test to enforce trash food types to be added to the
trash spawner.
 
## Why It's Good For The Game
The more trash we have, the less we'll feel bad about being garbage
players.

## Changelog
🆑
qol: More types of garbage (empty lighters, empty cigarette packs, empty
food, etc.) have been added to the trash spawner.
qol: Paper plane added to the paper spawner, which is now used in the
trash spawner.
/🆑
2025-10-05 07:31:21 +02:00
xPokee 5e629dff04 Merge branch 'master' of https://github.com/tgstation/tgstation into upstream-sync 2025-10-03 07:05:54 -04:00
KrysonismandGitHub 075de00420 Chekov's Canister! Adds missing resupply canisters, makes them constructable & spawn in maint,. (#93028)
## About The Pull Request

This is was created because I found several rare and exciting canisters
in game and then finding out there is no way to actually construct the
vendor they belong to!...

<img width="768" height="385" alt="image"
src="https://github.com/user-attachments/assets/70261cea-daaf-41df-a212-21cef6d6bd0c"
/>

### This PR:

* Makes all noteable vendors constructable, if you have the canister. 
* Adds canisters to syndismokes, syndiechem, liberation station,
magivend, shambler's juice and bombuddy
* Replaces the old tptally random canisters spawner, with a variety of
spawners weighted for power and split according to different themes.
* Adds the new main canister spawner to maint. 

### Spawner weights

The random canister spawner from maintenance has a:

* **93,5%** chance to spawn a common station vendor refill(with weights
for wardrobes being somewhat reduced.)
* **6%** chance to spawn a rare and special vendor refill.
* **0.5%** chance to spawn a oddity level., super powerful vendor
refill.

## Why It's Good For The Game

One must never place a filled canister in maint if it isn't going to be
constructed It's wrong to make promises you don't mean to keep.

## Changelog

🆑
add: Nearly all notable vendors are now constructable if you have the
canister.
add Added refill canisters for syndiesmokes, liberation station,
magivend, bombuddy 3000, shambler's juice and syndichem.
add: Random vending refill canisters now have a chance to spawn in
maint.
image: Robco Toolmaker and Centdrobe canisters have new sprites.
/🆑
2025-10-02 20:12:46 +02:00
necromanceranneandGitHub f843f61b9f Tendril loot changes: Demonic portals drop locked chests instead of just flat out the item, removes some items from some lists, punching mitts is a vendor item. Concussive gauntlets grant hunter boxing. (#93127) 2025-09-29 08:12:33 +02:00
xPokee b308ee9d78 Merge branch 'master' of https://github.com/tgstation/tgstation into upstream-sync 2025-09-24 10:13:01 -04:00
c0f8e7bb5c Multiload Second Pass (ft. Speedloaders Will Be Real In 2025) (#92854)
## About The Pull Request
Gets, yet again, more granular with multiload capabilities, by
introducing `AMMO_BOX_MULTILOAD_OUT_LOADED`; ammo boxes flagged with
this can speed-load ammo boxes that are currently inside another gun,
like revolver cylinders or internal magazines.

To accomodate for this, the previous flag that covered this,
`AMMO_BOX_MULTILOAD_OUT` can no longer speedload into currently loaded
magazines (e.g. internal magazines, including revolver cylinders).

Also implements a base type for speedloaders, moving .38 and .357
speedloaders along with .310 stripper clips to this type, instead of
being ammo boxes. Also features an UpdatePaths script for mappers, which
is why there's so many files touched - repathing is a pain.

Also also adds fancy types for ammo boxes, magazines, and speedloaders,
which isn't particularly player-facing.

Also also also makes the lionhunter ammo strip for the lionhunter rifle
visually three rounds only instead of being perpetually half-full (or
half-empty, depending on your pessimism).

## Why It's Good For The Game

The hypothetical case of "ammo box that holds shotgun ammo" should
probably... not... teleport as much of its ammo as possible into a
tube-fed shotgun, but should probably still be okay at reloading
magazines that actually go into shotguns. Or something.

More relevant, reloading BR-38 magazines with speedloaders, while funny,
probably also shouldn't be teleporting in six fresh rounds.

## Changelog

🆑
balance: General ammo boxes (not speedloaders, not stripper clips) can
no longer multiload into currently loaded magazines (revolver cylinders,
internal magazines).
balance: Speedloaders are now a separate type from ammo boxes, and can
only multiload into currently loaded magazines e.g. revolver cylinders.
qol: Ammo boxes, magazines, and speedloaders now have fancier types for
spawning in by admins.
sprite: Lionhunter ammo clips are visually smaller now.
/🆑

---------

Co-authored-by: Hatterhat <Hatterhat@users.noreply.github.com>
2025-09-20 08:10:35 +10:00
xPokee 9b282a850e Merge branch 'master' of https://github.com/tgstation/tgstation into upstream-sync 2025-09-17 11:45:44 -04:00
FalloutFalconandGitHub d2f34e33be moves abstract_type up to datum, spawners wont spawn them (#92909)
## About The Pull Request
moves all implementations (im aware of) for "Im a parent type dont spawn
me please" to the datum layer to standardized behavior
adds a standerized proc for filtering out "bad" items that we dont want
spawning. applies to it the subtype vendor, gifts, and a new spawner and
mystery box for a random gun (neither playerfacing)
"port" of https://github.com/shiptest-ss13/Shiptest/pull/4621



https://github.com/user-attachments/assets/22f6f0b2-b44e-411a-b3dc-6b97dc0287aa

small warning: I dont have EVERY abstract type defined right now but,
ive done a good enough job for now. Im tired of data entry rn
## Why It's Good For The Game
standardizing behavior. Might be a micro hit to performance however

having this lets us not rely on icon state to determine whether
something is a parent type and makes it much easier to tell something is
a parent type (could be applied further to things like admin spawning
menus and things like that).

need feedback on if this is actually good for the game.
## Changelog
🆑
add: Soda cans show up in the silver slime drink table.
add: Examine tag for items that are not mean to show up ingame.
refactor: Standardizes how gifts rule out abstract types.
fix: gifts no longer check if something has an inhand, massively
expanding the list of potential items.
/🆑
2025-09-13 00:36:15 +02:00
xPokee 939f2fc9ac Merge branch 'master' of https://github.com/tgstation/tgstation into xpokee-test-upstream-sync 2025-09-10 14:12:16 -04:00
GhomandGitHub c274677cfd glass ore (aka sand) is now actually made of sand (#92889)
## About The Pull Request
sand blocks existed for the only purpose of making sand available as a
material. However, the only method to get them was pretty whimsical and
the existence of the feature wasn't really conveyed to the player, which
involves rinsing regular sand in a sink... and before you ask, we also
have sandstone, which can be crafted just by using the sand in hands, no
water involved. In fact, the sand blocks use the same sprites for
regular sandstone, except they have no recipes associated to them,
nothing! Nada!

Let's address the elephant in the room: We already have sand, however
said sand already has the glass material attached to it even before
being smelted, so if you put sand into the Autolathe, you get glass,
yay. Sand blocks really only existed to make up for the shortcoming of
whoever coded the sand material at the time.

But enough ranting. As the title says, sand is now made of sand, sand
blocks are kill. I've been careful enough to give the ORM the ability to
smelt gathered sand into glass beforehand, so miners won't curse me for
making them _actually_ use the smelter for once, "I will rather die to a
goliath than have anything to do with that". However, this still means
you cannot shove sand directly into lathes and expect glass out of it.
Get a welder.

## Why It's Good For The Game


## Changelog

🆑
balance: sand is now made of sand and not glass. Get a welder if you
plan to shove it into a protolathe.
del: Removed now useless sand blocks.
/🆑
2025-09-09 15:08:45 -04:00
TimandGitHub 37a34b4cd3 The Grinch Who Patched Christmas: Preventing Trashy Presents (#92734)
## About The Pull Request
- Fixes #88595

Cargo's gift giving was so bad it landed them on Santa's _very_ naughty
list. The ~cargo techs~ elves in charge were handing out game breaking
equipment.

This closes a loophole that allowed players to spam dumpsters during the
Christmas event for gifts that could contain admin tools and other debug
loot. I've removed Christmas presents (and holiday items) from the
dumpster spawns to put a stop to this.

## Why It's Good For The Game
![The Grinch Vintage GIF by The Good
Films](https://github.com/user-attachments/assets/dcc1e49b-ba9f-479c-a793-f743baf5e9f1)

Players were using the cargo system to purchase and dumpster dive
endlessly for OP shit. During the Christmas event, these dumpsters had a
high chance of spawning the special `/anything` gifts, which can contain
literally any item in the game, including admin tools and debug
equipment. This exploit bypassed the intended rarity of these items,
which were meant to be one-time, limited gifts from Santa's bag or the
Christmas tree.

## Changelog
🆑
fix: Santa has put cargo in his very naughty list for spam producing his
presents by dumpster diving. This fixes Christmas presents (and other
holiday items) from spawning inside dumpsters.
/🆑
2025-09-09 10:23:40 -07:00
50499dba9a Adds opium and meth rocks! (#92699)
## About The Pull Request


![demo2](https://github.com/user-attachments/assets/26223fa6-6eb8-43eb-ba87-54be7d2c19b3)<img
width="612" height="185" alt="dreamseeker_SNMvxqCRiR"
src="https://github.com/user-attachments/assets/1d3103e9-edc1-4e50-8793-c8c2ace53aea"
/>

This is a small expansion to narcotics, their production, and presence
in the game! For my esteemed Terry and Manuel/Sybil sector colleagues
I've added:
- 2 new solid drug items: **crystal meth and opium**!
- A **precipitation reaction** for meth after it's been cooled,
producing a solid crystal form, 2u sulfuric acid, 10u meth. **Above 90%
purity, the meth will gain an increasingly blue tint!**
- A production method for opium! Slice a well developed poppy pod with
any sharp item, **before it's fully mature and flowered** to extract a
small amount of opium to enjoy! It's a small container for morphine. Can
be pressed together to combine the concentrations up to 10u, as each
extraction contains trace amounts. Scales off poppy's potency.
- Populated narcotics/contraband spawners with new items, and items that
really should have been on there.
- Added a brand new smoking apparatus, the glass pipe! Can be crafted.
Fixed the transparent pixel.
- **Fixed methsplosions so that now spacemen can finally smoke meth
without exploding!!!** Omegaweed too. Normal methsplosions are
untouched!
- **Expanded the ability for players to insert all drug items into
pipes**, so now players can smoke moon rocks, SaturnX, and my new items!
Previously, only 'dried' items were.
- Fentanyl patch box for narcotics spawner, also for a new ruin I've
made.
- **Expanded these changes to the black market uplink.** 
<img width="640" height="256" alt="demo"
src="https://github.com/user-attachments/assets/c8a0eb2c-b0fa-4e70-b6c1-2e741cd170a2"
/>

Now, players can precipitate meth into a solid form, and produce opium.
I added a lot of these substances and the ones that didn't exist into
spawners that they were partially in, or could reasonably be in. The
opium poppy extraction required a new variable that can be used for
similar interactions too. Crystal sprites are transparent, smoked sprite
has a nice little animation and glow.

These items are now on the black market uplink, in both expensive dealer
shipments of varying rarities for different narcotics, as well as
personal use quantities on a different rotation, at a steeper price.
Expanded randomized spawners to give the black market and ruins more
teeth and edge, without adding another weapon.

Credit to the moon rock guy, I'm just happy I made your stuff smokable!!
<img width="219" height="201" alt="dreamseeker_N8x9bsN3kS"
src="https://github.com/user-attachments/assets/64d23c27-92b9-423b-91ac-903b8476d0b4"
/>


tl;dr added opium and meth
## Why It's Good For The Game
For **too long**, narcotics, chems and stims have been mere integers or
buffs/debuffs in pills or syringes, so I introduced two new methods for
making them and populated niche, criminal vectors with them. These are
real items now, with more interactions. Allowing these to be smoked also
allowed moon rocks and SaturnX to be smoked too, including them into
this and enticing players to have another reason to make them as well.
Buffs with drawbacks, addictions and problems are actually great.

It's a new venue for flavor. I've put thought into the balance for
addition and quantity. It'll add a criminal, or exotic tone to a round,
provide new business opportunities, and new access to stims and chems
without going over the top. Perhaps something peaceful antagonists can
do. More proverbial floor pills give security or command something to
selectively enforce, and absolutely provide novel opportunities for
medical staff!

Also, methsplosions now don't happen in cigarette items! You can smoke
omegaweed without fucking dying!
## Changelog
🆑
add: Added meth, opium, and their production! Also added to black market
uplink.
add: Added a craftable glass pipe.
add: Added to contraband spawners. 
qol: Can now insert any drug item into a pipe.
fix: Spacemen can now smoke meth without exploding!!
/🆑

---------

Co-authored-by: SyncIt21 <110812394+SyncIt21@users.noreply.github.com>
Co-authored-by: tattle <66640614+dragomagol@users.noreply.github.com>
2025-09-09 01:13:46 +00:00
nevimer b348b617a3 Merge branch 'master' of https://github.com/tgstation/tgstation into pupstream-2025-09-07
# Conflicts:
#	README.md
#	code/__DEFINES/admin.dm
#	code/__DEFINES/melee.dm
#	code/_globalvars/traits/_traits.dm
#	code/controllers/subsystem/economy.dm
#	code/datums/components/crafting/crafting.dm
#	code/datums/elements/crusher_loot.dm
#	code/modules/antagonists/pirate/pirate_shuttle_equipment.dm
#	code/modules/clothing/suits/_suits.dm
#	code/modules/escape_menu/leave_body.dm
#	code/modules/jobs/job_types/_job.dm
#	code/modules/mining/equipment/mineral_scanner.dm
#	code/modules/mob/living/living.dm
#	code/modules/plumbing/plumbers/pill_press.dm
#	tgui/packages/tgui/interfaces/Vending.tsx
2025-09-07 00:37:52 -04:00
67d27ffe91 Accounting Glowup: Advances, Pay raises and cuts, and more (#92419)
## About The Pull Request

Fixes #92188

1. The Accounting console now has a new UI

<img width="757" height="486" alt="image"
src="https://github.com/user-attachments/assets/0c6ce73f-ae1c-4a54-b6ba-bcc3b3232d13"
/>

2. The Accounting console can now dish out advances on paychecks, giving
you for full paycheck early. You can give up to 3 advances. This of
course means your next paycheck is not paid out when relevant.

3. The Accounting console can now change paycheck sizes of crewmembers -
up to 1.5x and down to 0.5x.

## Why It's Good For The Game

- Gives the HoP some more duties, now being able to dish out money on
request, reward good behavior, or punish bad behavior.

## Changelog

🆑 Melbert
add: Accounting Console: New UI!
add: Accounting Console: Now can give advances to crewmembers
add: Accounting Console: Can now give pay raises or pay cuts
add: Accounting Console: Now only printable in the security lathe
add: Accounting Console: A spare board is now now found in secure tech
storage.
fix: Fix vending machines adding payments to audit log twice.
fix: Non-crewmembers are no longer shown in the accounting console
/🆑

---------

Co-authored-by: ArcaneMusic <41715314+ArcaneMusic@users.noreply.github.com>
2025-09-02 18:57:20 -07:00
Nickandnevimer 808fe41997 Replaces all public botany trays with Soil again, and removes sinks from botany/public garden (#92519)
## About The Pull Request

This PR replaces all Garden trays with Soil.
This PR removes all sinks from botany/garden area

<img width="837" height="806" alt="image"
src="https://github.com/user-attachments/assets/23325df3-4542-4d6e-9886-ff4463e3bbfd"
/>

<img width="1104" height="727" alt="image"
src="https://github.com/user-attachments/assets/d0e6fd97-9688-4e27-bf9b-f92b77a799fb"
/>

<img width="787" height="658" alt="image"
src="https://github.com/user-attachments/assets/11595356-ad6f-47ba-a3ca-9a0f0c90306e"
/>

<img width="809" height="464" alt="image"
src="https://github.com/user-attachments/assets/f0c66277-7ab9-40a7-b5a7-8df4e8c452d6"
/>

<img width="658" height="686" alt="image"
src="https://github.com/user-attachments/assets/1bddf9c2-dccd-4971-bf31-32a5673f258e"
/>

<img width="588" height="729" alt="image"
src="https://github.com/user-attachments/assets/13534fd0-6bd1-48ab-bad4-15117cb95b31"
/>


## Why It's Good For The Game

Public garden always had soil as a baseline because it like a more
garden feel, where hydrononics have a more industrialized feel with the
trays, this is why i put soil back in all public gardens. i also removed
the sinks from botany and public gardens because its a lame infinite
water source why bother putting water tanks down if you put like 2-3
sinks in the same area

🆑 Ezel
balance: Removes Sinks from botany/garden
balance: Replaces all Garden trays with soil
/🆑
2025-08-19 22:40:28 -04:00
NickandGitHub a9f9675e6b Replaces all public botany trays with Soil again, and removes sinks from botany/public garden (#92519)
## About The Pull Request

This PR replaces all Garden trays with Soil.
This PR removes all sinks from botany/garden area

<img width="837" height="806" alt="image"
src="https://github.com/user-attachments/assets/23325df3-4542-4d6e-9886-ff4463e3bbfd"
/>

<img width="1104" height="727" alt="image"
src="https://github.com/user-attachments/assets/d0e6fd97-9688-4e27-bf9b-f92b77a799fb"
/>

<img width="787" height="658" alt="image"
src="https://github.com/user-attachments/assets/11595356-ad6f-47ba-a3ca-9a0f0c90306e"
/>

<img width="809" height="464" alt="image"
src="https://github.com/user-attachments/assets/f0c66277-7ab9-40a7-b5a7-8df4e8c452d6"
/>

<img width="658" height="686" alt="image"
src="https://github.com/user-attachments/assets/1bddf9c2-dccd-4971-bf31-32a5673f258e"
/>

<img width="588" height="729" alt="image"
src="https://github.com/user-attachments/assets/13534fd0-6bd1-48ab-bad4-15117cb95b31"
/>


## Why It's Good For The Game

Public garden always had soil as a baseline because it like a more
garden feel, where hydrononics have a more industrialized feel with the
trays, this is why i put soil back in all public gardens. i also removed
the sinks from botany and public gardens because its a lame infinite
water source why bother putting water tanks down if you put like 2-3
sinks in the same area

🆑 Ezel
balance: Removes Sinks from botany/garden
balance: Replaces all Garden trays with soil
/🆑
2025-08-14 12:40:27 -07:00
Thunder12345andRoxy e7c25d4c40 The Glitterening (#92226)
## About The Pull Request

Adds a number of new capabilities to glitter.

- It can be any colour.
<img width="657" height="398" alt="image"
src="https://github.com/user-attachments/assets/60e80c04-8eee-470c-8953-47f6eda9f83e"
/>

- It can be made in chemistry and dyed by combining it with acetone and
other reagents to give it the average colour of the non-glitter,
not-acetone reagents.
- Multiple colours can be mixed into one reagent datum, randomly
depositing a colour from those in the datum on the floor.
<img width="554" height="507" alt="image"
src="https://github.com/user-attachments/assets/9cc7d1d5-9bec-4b28-af06-310ffb24de49"
/>

- Anyone with glitter reagent in them will cough glitter onto the floor
- Glittery crates will leave a trail of appropriately coloured glitter
when moved
<img width="960" height="259" alt="image"
src="https://github.com/user-attachments/assets/71cc1176-23f9-4ae7-b500-1744b752c014"
/>

Resprited glitter to support these changes and make it not look like gas
(or ass).

## Why It's Good For The Game

It looks cool and raises the bar for chemists maximally pissing off the
janitor as they fill a room with multicoloured glitter and all the
occupants run off to cough more up all over the surrounding area.

## Changelog
🆑
add: Glitter can now be made from plastic polymers and aluminium.
add: Plastic polymer can be made at any temperature, and then heated to
produce sheets.
add: Glitter can now be made any colour, mix 10 units each of glitter
and acetone to change its colour to that of the other reagents in the
beaker.
add: Mixing different colours of glitter will cause a random selection
of those colours to appear on the floor when released.
add: Being exposed to glitter in reagent form causes you to cough up
more glitter onto the floor
add: Dragging glittery crates will now spread a trail of glitter and
angry janitors behind them.
image: Added new glitter sprites (that don't look like gasses)
/🆑
2025-08-04 20:53:39 -04:00
Thunder12345andGitHub d97c57b263 The Glitterening (#92226)
## About The Pull Request

Adds a number of new capabilities to glitter.

- It can be any colour.
<img width="657" height="398" alt="image"
src="https://github.com/user-attachments/assets/60e80c04-8eee-470c-8953-47f6eda9f83e"
/>

- It can be made in chemistry and dyed by combining it with acetone and
other reagents to give it the average colour of the non-glitter,
not-acetone reagents.
- Multiple colours can be mixed into one reagent datum, randomly
depositing a colour from those in the datum on the floor.
<img width="554" height="507" alt="image"
src="https://github.com/user-attachments/assets/9cc7d1d5-9bec-4b28-af06-310ffb24de49"
/>

- Anyone with glitter reagent in them will cough glitter onto the floor
- Glittery crates will leave a trail of appropriately coloured glitter
when moved
<img width="960" height="259" alt="image"
src="https://github.com/user-attachments/assets/71cc1176-23f9-4ae7-b500-1744b752c014"
/>

Resprited glitter to support these changes and make it not look like gas
(or ass).

## Why It's Good For The Game

It looks cool and raises the bar for chemists maximally pissing off the
janitor as they fill a room with multicoloured glitter and all the
occupants run off to cough more up all over the surrounding area.

## Changelog
🆑
add: Glitter can now be made from plastic polymers and aluminium.
add: Plastic polymer can be made at any temperature, and then heated to
produce sheets.
add: Glitter can now be made any colour, mix 10 units each of glitter
and acetone to change its colour to that of the other reagents in the
beaker.
add: Mixing different colours of glitter will cause a random selection
of those colours to appear on the floor when released.
add: Being exposed to glitter in reagent form causes you to cough up
more glitter onto the floor
add: Dragging glittery crates will now spread a trail of glitter and
angry janitors behind them.
image: Added new glitter sprites (that don't look like gasses)
/🆑
2025-08-03 00:25:58 +10:00
NickandRoxy fb2bdd2af7 Removes the ralsei plushie (#92311)
## About The Pull Request

Removes ralsei plushie

## Why It's Good For The Game
Its a lazy sprite forced into the game
+ i killed him


https://github.com/user-attachments/assets/a678fa08-0882-4e24-86df-942e7adfda84



## Changelog

🆑 Ezel
del: Removes ralsei plushie
/🆑
2025-07-30 17:37:35 -04:00
NickandGitHub 192059b67d Removes the ralsei plushie (#92311)
## About The Pull Request

Removes ralsei plushie

## Why It's Good For The Game
Its a lazy sprite forced into the game
+ i killed him


https://github.com/user-attachments/assets/a678fa08-0882-4e24-86df-942e7adfda84



## Changelog

🆑 Ezel
del: Removes ralsei plushie
/🆑
2025-07-26 15:04:33 -07:00
MrMelbertandRoxy 12ae914efc Adds Anti-Weed (#92043)
## About The Pull Request

Adds Anti-Cannabis, or "Anti-Weed", a mutation of Cannabis which
contains Naloxone, Antihol, and Diphen-Synaptizine

These three chemicals will purge like 90% of all addictive substances
and their side effects (at the cost of negative mood and some tox
damage)


![image](https://github.com/user-attachments/assets/318a7a3a-fd7d-41cd-a73c-840a83d5d56c)

## Why It's Good For The Game

I thought it'd be really funny if a botanist offers you a smoke, you get
super high, and then to help they offer you another smoke

## Changelog

🆑 Melbert
add: Anti-cannabis mutation
/🆑
2025-07-11 18:04:54 -04:00
c65b2a0d0b Add multi-z helper function (#92010)
Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
2025-07-11 17:59:03 -04:00
MrMelbertandGitHub 750ee12f3c Adds Anti-Weed (#92043)
## About The Pull Request

Adds Anti-Cannabis, or "Anti-Weed", a mutation of Cannabis which
contains Naloxone, Antihol, and Diphen-Synaptizine

These three chemicals will purge like 90% of all addictive substances
and their side effects (at the cost of negative mood and some tox
damage)


![image](https://github.com/user-attachments/assets/318a7a3a-fd7d-41cd-a73c-840a83d5d56c)

## Why It's Good For The Game

I thought it'd be really funny if a botanist offers you a smoke, you get
super high, and then to help they offer you another smoke

## Changelog

🆑 Melbert
add: Anti-cannabis mutation
/🆑
2025-07-11 08:18:18 +02:00
1681b976db Add multi-z helper function (#92010)
Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
2025-07-08 21:14:42 +02:00
c58ad4fb34 Maid Uniform Resprited and GAGsified (#91885)
## About The Pull Request

Resprites the maid uniform and maid headband using GAGs.
Combines maid neckpiece, gloves, and corset into the main outfit.
Removes standalone maid neckpiece, gloves, and corset.
Adds maid uniform and headband inhands.

stock option in black
custom colors as example

![dreamseeker_rz3t2ZDTyr](https://github.com/user-attachments/assets/e3505b4f-5d81-47e2-a470-c5453de80d6d)
## Why It's Good For The Game

Updates the sprite to be more inline with our current clothes.
Makes the sprite in-game player customizable.
## Changelog
🆑
image: resprites the maid uniform and headband using GAGs
del: removes standalone maid neckpiece, gloves, and corset
/🆑

---------

Co-authored-by: tattle <66640614+dragomagol@users.noreply.github.com>
2025-07-04 16:33:34 -04:00
2427db409e Maid Uniform Resprited and GAGsified (#91885)
## About The Pull Request

Resprites the maid uniform and maid headband using GAGs.
Combines maid neckpiece, gloves, and corset into the main outfit.
Removes standalone maid neckpiece, gloves, and corset.
Adds maid uniform and headband inhands.

stock option in black
custom colors as example

![dreamseeker_rz3t2ZDTyr](https://github.com/user-attachments/assets/e3505b4f-5d81-47e2-a470-c5453de80d6d)
## Why It's Good For The Game

Updates the sprite to be more inline with our current clothes.
Makes the sprite in-game player customizable.
## Changelog
🆑
image: resprites the maid uniform and headband using GAGs
del: removes standalone maid neckpiece, gloves, and corset
/🆑

---------

Co-authored-by: tattle <66640614+dragomagol@users.noreply.github.com>
2025-06-29 19:42:46 -07:00
eb84412816 Adds a new brand of cigarettes, Mainthol Greys (#91328)
**We all like a little flavor, and a new brand in the sector promises a
dark smoke, questionable trace compounds, and the robust flavors of
maintenance...**

![paintdotnet_GC1kzxYiG0](https://github.com/user-attachments/assets/fb1c9986-7ce2-4ab4-a033-f4d2cf93b3c6)

## About The Pull Request
I've added a new brand of cigarettes! Mainthol greys, now available in
hacked cigarette vending machines for an immodest sum, hand rolled &
grown in the Sybil sector. The syndicate stock some stolen surplus too.
The goal was to create another nice little flavor item, a compliment to
grey bull and other maintenance loot.

<details>
<summary>Chemical contents in code, for the joy of discovery!</summary>

  ```
1u oculine is in every cigarette, an imperceptible buffer against the
welder harming an enterprising assistant's eyes.
Extremely trace amount for cigarette microdosing.
Each cigarette has a 40% chance to have an extra reagent from a list of
14 minor toxins, drugs, and things like glitter.
They're inconsequential via cigarette, but still noticed and
experienced.
  ```
</details>
I tested these bad boys extensively, blending them, ate them, blinded
myself with a welder, spammed a health analyzer while smoking to gauge
chemicals and ensure intended effects are noticed and add a nice je ne
sais quois.

**Our sprites!**

![image](https://github.com/user-attachments/assets/4a8c8e57-634b-4c29-ae03-ae8913040279)

## Why It's Good For The Game
It's an extra little flavor item with a couple simple surprises to spice
up your assisting.
## Changelog
🆑
add: Added a new brand of cigarettes to hacked & syndicate vending
machines+spawner list.
/🆑

---------

Co-authored-by: Tim <timothymtorres@gmail.com>
Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
Co-authored-by: san7890 <the@san7890.com>
2025-06-15 15:53:26 -04:00
cdac0c5bf9 Adds a new brand of cigarettes, Mainthol Greys (#91328)
**We all like a little flavor, and a new brand in the sector promises a
dark smoke, questionable trace compounds, and the robust flavors of
maintenance...**

![paintdotnet_GC1kzxYiG0](https://github.com/user-attachments/assets/fb1c9986-7ce2-4ab4-a033-f4d2cf93b3c6)

## About The Pull Request
I've added a new brand of cigarettes! Mainthol greys, now available in
hacked cigarette vending machines for an immodest sum, hand rolled &
grown in the Sybil sector. The syndicate stock some stolen surplus too.
The goal was to create another nice little flavor item, a compliment to
grey bull and other maintenance loot.

<details>
<summary>Chemical contents in code, for the joy of discovery!</summary>

  ```
1u oculine is in every cigarette, an imperceptible buffer against the
welder harming an enterprising assistant's eyes.
Extremely trace amount for cigarette microdosing.
Each cigarette has a 40% chance to have an extra reagent from a list of
14 minor toxins, drugs, and things like glitter.
They're inconsequential via cigarette, but still noticed and
experienced.
  ```
</details>
I tested these bad boys extensively, blending them, ate them, blinded
myself with a welder, spammed a health analyzer while smoking to gauge
chemicals and ensure intended effects are noticed and add a nice je ne
sais quois.

**Our sprites!**

![image](https://github.com/user-attachments/assets/4a8c8e57-634b-4c29-ae03-ae8913040279)

## Why It's Good For The Game
It's an extra little flavor item with a couple simple surprises to spice
up your assisting.
## Changelog
🆑
add: Added a new brand of cigarettes to hacked & syndicate vending
machines+spawner list.
/🆑

---------

Co-authored-by: Tim <timothymtorres@gmail.com>
Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
Co-authored-by: san7890 <the@san7890.com>
2025-06-09 16:32:15 +01:00
carlarctgandRoxy baa9f4f592 Adds the bloodroach (#91383)
## About The Pull Request

Adds bloodroaches.


![image](https://github.com/user-attachments/assets/2f122787-0a22-4ff3-9c9b-7e14ca479369)

These are cockroaches that have gorged themselves on blood in
maintenance. They're very gross!


![image](https://github.com/user-attachments/assets/1ff744ed-a61b-4f6b-8d1c-28664f7a953f)

Splatting one causes an explosion of blood all around the death
perimeter, splashing both turfs and mobs with blood.

They have a 1% chance of spawning in place of normal roaches.

They also spawn in:
- Abandoned crates, replacing the 30 roaches with 30 bloodroaches.
- As backup anomalous crystal possession targets.
- Grimy fridges

Added a trait given to things killed by pest spray, used to check on
death explosion for bloodroaches.
Changed roach spawns in maps to use mob spawners, so I can replace them
with bloodroaches 1% of the time.
## Why It's Good For The Game

Splatting a random roach in maintenance that explodes into blood sounds
hilarious. It also adds janitorial depth by requiring pest spray to
carefully eliminate these pests
## Changelog
🆑
add: Added bloodroaches, a rare variant of cockroaches that explode into
a shower of blood when squashed.
/🆑
2025-06-05 20:05:25 -04:00
JeremiahandRoxy a5a4b83a25 Sets prettier to run on the repo (#91379)
Prettier (an auto formatter) is set to only run within the tgui folder
currently. This removes that limitation, allowing it to automatically
format all supported files in the repo (.js, .html, .yml
[etc](https://prettier.io/docs/))

I made a few exceptions for bundled and generated files
I'm of the opinion that code should look uniform and am lazy enough to
want CTRL-S to format files without having to think beyond that
2025-06-05 19:13:02 -04:00
carlarctgandGitHub 0b683d175b Adds the bloodroach (#91383)
## About The Pull Request

Adds bloodroaches.


![image](https://github.com/user-attachments/assets/2f122787-0a22-4ff3-9c9b-7e14ca479369)

These are cockroaches that have gorged themselves on blood in
maintenance. They're very gross!


![image](https://github.com/user-attachments/assets/1ff744ed-a61b-4f6b-8d1c-28664f7a953f)

Splatting one causes an explosion of blood all around the death
perimeter, splashing both turfs and mobs with blood.

They have a 1% chance of spawning in place of normal roaches.

They also spawn in:
- Abandoned crates, replacing the 30 roaches with 30 bloodroaches.
- As backup anomalous crystal possession targets.
- Grimy fridges

Added a trait given to things killed by pest spray, used to check on
death explosion for bloodroaches.
Changed roach spawns in maps to use mob spawners, so I can replace them
with bloodroaches 1% of the time.
## Why It's Good For The Game

Splatting a random roach in maintenance that explodes into blood sounds
hilarious. It also adds janitorial depth by requiring pest spray to
carefully eliminate these pests
## Changelog
🆑
add: Added bloodroaches, a rare variant of cockroaches that explode into
a shower of blood when squashed.
/🆑
2025-06-04 14:57:11 -07:00
JeremiahandGitHub 9db2f6916b Sets prettier to run on the repo (#91379)
## About The Pull Request
Prettier (an auto formatter) is set to only run within the tgui folder
currently. This removes that limitation, allowing it to automatically
format all supported files in the repo (.js, .html, .yml
[etc](https://prettier.io/docs/))

I made a few exceptions for bundled and generated files
## Why It's Good For The Game
I'm of the opinion that code should look uniform and am lazy enough to
want CTRL-S to format files without having to think beyond that
## Changelog
2025-05-29 21:23:59 -07:00
fleurandRoxy 12490fc9fd Monkey plush (#91154) 2025-05-29 16:15:02 -04:00
655b66bdd0 Adds automatic GAGS icon generation for mapping and the loadout menu (#90940)
Revival of https://github.com/tgstation/tgstation/pull/86482, which is
even more doable now that we have rustg iconforge generation.

What this PR does:

- Sets up every single GAGS icon in the game to have their own preview
icon autogenerated during compile. This is configurable to not run
during live. The icons are created in `icons/map_icons/..`
- This also has the side effect of providing accurate GAGS icons for
things like the loadout menu. No more having to create your own
previews.

![FOuGL6ofxC](https://github.com/user-attachments/assets/e5414971-7f13-4883-9f7f-a8a212b46fe8)

<details><summary>Mappers rejoice!</summary>

![StrongDMM_1oeMSoRHXT](https://github.com/user-attachments/assets/83dcfe4c-31be-4953-98f3-dff90268bbc4)

![StrongDMM_uyqu3CggPn](https://github.com/user-attachments/assets/7896f99e-2656-40e1-a9da-3a513882365a)

</details>

<details><summary>Uses iconforge so it does not take up much time during
init</summary>

![dreamdaemon_u4Md3Dqwge](https://github.com/user-attachments/assets/17baaff8-5d5e-4a4d-ba8f-9dd548024155)

</details>

---

this still applies:

Note for Spriters:

After you've assigned the correct values to vars, you must run the game
through init on your local machine and commit the changes to the map
icon dmi files. Unit tests should catch all cases of forgetting to
assign the correct vars, or not running through init.

Note for Server Operators:

In order to not generate these icons on live I've added a new config
entry which should be disabled on live called GENERATE_ASSETS_IN_INIT in
the config.txt

No more error icons in SDMM and loadout.

🆑
refactor: preview icons for greyscale items are now automatically
generated, meaning you can see GAGS as they actually appear ingame while
mapping or viewing the loadout menu.
/🆑

---------

Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
2025-05-29 16:14:43 -04:00
fleurandGitHub 8e667c7c7d Monkey plush (#91154) 2025-05-24 23:18:38 +00:00
cb51a652a9 Adds automatic GAGS icon generation for mapping and the loadout menu (#90940)
## About The Pull Request

Revival of https://github.com/tgstation/tgstation/pull/86482, which is
even more doable now that we have rustg iconforge generation.

What this PR does:

- Sets up every single GAGS icon in the game to have their own preview
icon autogenerated during compile. This is configurable to not run
during live. The icons are created in `icons/map_icons/..`
- This also has the side effect of providing accurate GAGS icons for
things like the loadout menu. No more having to create your own
previews.


![FOuGL6ofxC](https://github.com/user-attachments/assets/e5414971-7f13-4883-9f7f-a8a212b46fe8)

<details><summary>Mappers rejoice!</summary>


![StrongDMM_1oeMSoRHXT](https://github.com/user-attachments/assets/83dcfe4c-31be-4953-98f3-dff90268bbc4)


![StrongDMM_uyqu3CggPn](https://github.com/user-attachments/assets/7896f99e-2656-40e1-a9da-3a513882365a)

</details>

<details><summary>Uses iconforge so it does not take up much time during
init</summary>


![dreamdaemon_u4Md3Dqwge](https://github.com/user-attachments/assets/17baaff8-5d5e-4a4d-ba8f-9dd548024155)

</details>

---

### Copied from https://github.com/tgstation/tgstation/pull/86482 as
this still applies:

Note for Spriters:

After you've assigned the correct values to vars, you must run the game
through init on your local machine and commit the changes to the map
icon dmi files. Unit tests should catch all cases of forgetting to
assign the correct vars, or not running through init.

Note for Server Operators:

In order to not generate these icons on live I've added a new config
entry which should be disabled on live called GENERATE_ASSETS_IN_INIT in
the config.txt


## Why It's Good For The Game

No more error icons in SDMM and loadout.

## Changelog

🆑
refactor: preview icons for greyscale items are now automatically
generated, meaning you can see GAGS as they actually appear ingame while
mapping or viewing the loadout menu.
/🆑

---------

Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
2025-05-24 15:21:02 -07:00
OnlineGirlfriendandRoxy 92e6961777 Horse plushie :) (#91229)
## About The Pull Request

Adds horse and unicorn plushies. Available from cargo, plus horse
plushie is available as a loadout option.

![Screenshot 2025-05-18
183315](https://github.com/user-attachments/assets/bfa9a05e-dd4b-4b48-89e6-979325241753)
## Why It's Good For The Game

Horses are the original sports car. They're like big dogs you can ride.
They're like motorcycles that love you back. We have horses to thank for
pulling our ambulances and fire trucks before engines were invented. God
I fucking love horses.

Unicorns are okay.
## Changelog
🆑
add: horse and unicorn plushies
/🆑
2025-05-22 21:30:16 -04:00
878041f587 Clown Abomination Rebalance! #Cytology2025 (#91000)
## About The Pull Request

This PR includes a number of fixes, buffs and improvements to the clown
mobs to make them more playable and worthwhile.

### Atmos tolerance buffs
This PR removes the insane unsuitable atmos and temperature damage clown
mobs used to take and bring it in line with other mobs.

In addition, clownanas can tolerate lower oxygen levels and are immune
to carbon dioxide due to their half plant biology.

### Movement speed changes

A lot of these mobs were previously unviable due to their slow speed,
one of the most important stats.

This problem will only get worse for basic mobs if the proposed basic
mob stamina changes get implemented.

Most of them are still slower than humans but now have some chance to
corner a human in some circumstances.

(I plan to add more ways to modify basic mob run speed in the future to
help with this.)

The flesh clown and honkling are now fast again, I remember the original
speed nerf of fleshclown upset the very few fleshclown enjoyers once i
PR'd in the initial balance pass years back.

### Glutton buffs

The banana glutton is now given a mechanical incentive to eat lots of
foods to nudge them into good RP.

They heal for every item and gain max health every 5 items eaten!

The banana glutton can now smash doors.

They can now prank the crew with ink sacs should they find them.

### Biotype update

Clownana has gained the plant biotype.

Living lube has gained the slime biotype.

### cell lines & samples

clownana and longface; the two other clown cell lines now have samples
associated with them and can be biopsied to create pure samples of each
cell line.

The clownana banana bunch can also be swabbed for the pure clownana cell
line!

### death drop changes

The death drop element now spreads the items out slightly instead of
stacking lots of drops in the center of the tile.

Clown mobs now drop less soap and more peels, with some of the rarer
ones dropping mimana, bluespace or gros michel peels.

The clownana now has a chance to drop full bananas or even a full banana
bunch.

The banana glutton has a chance to drop a heart of freedom. 

The flesh clown now drops a meatclown instead of soap, and a piece of
human skin instead of a bloated human suit.


### other stat changes

living lube is now highly resistant to brute damage

longface can now acutally fight a little bit, still kinda terrible
though.

## Why It's Good For The Game

These mobs are quite beloved but their level of playability is low due
to poor balance.

The main problem is atmos.

Even a whiff of bad atmos would gib these mobs before they could get to
safety.

Many of them had their speed set way too high or way too low when they
were first added, even after i adjusted their speeds years ago I was
being too conservative.

Their loot tables were too similar, this helps with that a little bit. A
couple of them might even be worthwhile farming for their drops in
certain niche situations!

The banana glutton has such a cool sprite but has been neglected
mechanically, this helps make him a little more worthwhile and the extra
obj damage helps him not be in that sucky place where he is too large to
vent crawl and not powerful enough to break down doors.

Ideally in the future we should probably be more restrictive with
allowing mobs to smash airlocks and give them another way of opening
doors via armblade -like prying or ID implants.

## Changelog

🆑
add: banana gluttons gain max health and heal by eating foods! And they
can smash doors.
balance: clown mobs no longer get nuked by bad atmos.
balance: blown mobs have new death drops.
balance: most clown more are now faster!
balance: clownanas are now plants and are immune to carbon dioxide.
balance: living lube is now a slime and highly brute resistant.
balance: longfaces now hit decently hard.
fix: clownanas and longfaces can now be biopsied.
/🆑

---------

Co-authored-by: Ben10Omintrix <138636438+Ben10Omintrix@users.noreply.github.com>
Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
2025-05-22 21:17:46 -04:00
MrMelbertandRoxy ec3f5acec0 [MDB Ignore] Damp Rag can now get dirty / Repaths damp rag (it's no longer a cup) (#90700)
- Damp rag is now no longer god's perfect cleaning tool. After blood,
the damp rag will collect it, and after cleaning a lot of blood, you can
no longer clean with the rag until you wash it in a sink (or with
cleaner or however you want)
- This means the rag will collect DNA in it as you clean, which gives
detectives an opportunity to investigate.
- It also means the DNA it collects will occasionally spread onto you,
meaning you will have to clean your gloves or hands.
- Cleaning vomit and such is (currently) unaffected (and does not dirty
the rag).
- Diseases are not currently transferred to the rag (but this would be
fun to add)

- Gauze now gets dirty when using it to wrap bleeding wounds. This is
just visual, though blood DNA gets transferred. It can be washed in a
sink.

- Removed gauze on sink / cloth on sink interaction.
   - Can't really wash gauze with it, plus it's redundant.

- Damp rag is no longer a cup.

Damp rag is just "soap without any downsides", which is kinda lame.
I thought about going a step further and making it require you wet it
first but then it just becomes "mop but small" which is also lame.

Instead, you're required to clean it, which gives janitors / crewmembers
an alternate cleaning method:
- Soap: Small, finite, limited. Can't be replenished.
- Cleaner: Small, finite, even more limited, ranged. Can be refilled
with chemistry's help.
- Mop: Large, infinite, limited. Needs a water bucket.
- Damp Rag: Small, infinite, limited. Need to clean it after a few goes.

🆑 Melbert
balance: Damp Rags can now get dirty when using them to clean blood,
passing blood DNA along.
add: Gauze now gets dirty when apply it to actively bleeding wounds.
Doesn't spread disease or anything, just passes blood DNA. It can be
cleaned in a sink.
del: Removed cloth on sink / gauze on sink interaction to make rags.
Just use the crafting menu
/🆑
2025-05-22 21:14:47 -04:00
OnlineGirlfriendandGitHub e38cebfc96 Horse plushie :) (#91229)
## About The Pull Request

Adds horse and unicorn plushies. Available from cargo, plus horse
plushie is available as a loadout option.

![Screenshot 2025-05-18
183315](https://github.com/user-attachments/assets/bfa9a05e-dd4b-4b48-89e6-979325241753)
## Why It's Good For The Game

Horses are the original sports car. They're like big dogs you can ride.
They're like motorcycles that love you back. We have horses to thank for
pulling our ambulances and fire trucks before engines were invented. God
I fucking love horses.

Unicorns are okay.
## Changelog
🆑
add: horse and unicorn plushies
/🆑
2025-05-20 14:03:34 +10:00
b3580b8a8d Clown Abomination Rebalance! #Cytology2025 (#91000)
## About The Pull Request

This PR includes a number of fixes, buffs and improvements to the clown
mobs to make them more playable and worthwhile.

### Atmos tolerance buffs
This PR removes the insane unsuitable atmos and temperature damage clown
mobs used to take and bring it in line with other mobs.

In addition, clownanas can tolerate lower oxygen levels and are immune
to carbon dioxide due to their half plant biology.

### Movement speed changes

A lot of these mobs were previously unviable due to their slow speed,
one of the most important stats.

This problem will only get worse for basic mobs if the proposed basic
mob stamina changes get implemented.

Most of them are still slower than humans but now have some chance to
corner a human in some circumstances.

(I plan to add more ways to modify basic mob run speed in the future to
help with this.)

The flesh clown and honkling are now fast again, I remember the original
speed nerf of fleshclown upset the very few fleshclown enjoyers once i
PR'd in the initial balance pass years back.

### Glutton buffs

The banana glutton is now given a mechanical incentive to eat lots of
foods to nudge them into good RP.

They heal for every item and gain max health every 5 items eaten!

The banana glutton can now smash doors.

They can now prank the crew with ink sacs should they find them.

### Biotype update

Clownana has gained the plant biotype.

Living lube has gained the slime biotype.

### cell lines & samples

clownana and longface; the two other clown cell lines now have samples
associated with them and can be biopsied to create pure samples of each
cell line.

The clownana banana bunch can also be swabbed for the pure clownana cell
line!

### death drop changes

The death drop element now spreads the items out slightly instead of
stacking lots of drops in the center of the tile.

Clown mobs now drop less soap and more peels, with some of the rarer
ones dropping mimana, bluespace or gros michel peels.

The clownana now has a chance to drop full bananas or even a full banana
bunch.

The banana glutton has a chance to drop a heart of freedom. 

The flesh clown now drops a meatclown instead of soap, and a piece of
human skin instead of a bloated human suit.


### other stat changes

living lube is now highly resistant to brute damage

longface can now acutally fight a little bit, still kinda terrible
though.

## Why It's Good For The Game

These mobs are quite beloved but their level of playability is low due
to poor balance.

The main problem is atmos.

Even a whiff of bad atmos would gib these mobs before they could get to
safety.

Many of them had their speed set way too high or way too low when they
were first added, even after i adjusted their speeds years ago I was
being too conservative.

Their loot tables were too similar, this helps with that a little bit. A
couple of them might even be worthwhile farming for their drops in
certain niche situations!

The banana glutton has such a cool sprite but has been neglected
mechanically, this helps make him a little more worthwhile and the extra
obj damage helps him not be in that sucky place where he is too large to
vent crawl and not powerful enough to break down doors.

Ideally in the future we should probably be more restrictive with
allowing mobs to smash airlocks and give them another way of opening
doors via armblade -like prying or ID implants.

## Changelog

🆑
add: banana gluttons gain max health and heal by eating foods! And they
can smash doors.
balance: clown mobs no longer get nuked by bad atmos.
balance: blown mobs have new death drops.
balance: most clown more are now faster!
balance: clownanas are now plants and are immune to carbon dioxide.
balance: living lube is now a slime and highly brute resistant.
balance: longfaces now hit decently hard.
fix: clownanas and longfaces can now be biopsied.
/🆑

---------

Co-authored-by: Ben10Omintrix <138636438+Ben10Omintrix@users.noreply.github.com>
Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
2025-05-17 16:36:04 +00:00
MrMelbertandGitHub 685ca9db69 [MDB Ignore] Damp Rag can now get dirty / Repaths damp rag (it's no longer a cup) (#90700)
## About The Pull Request

- Damp rag is now no longer god's perfect cleaning tool. After blood,
the damp rag will collect it, and after cleaning a lot of blood, you can
no longer clean with the rag until you wash it in a sink (or with
cleaner or however you want)
- This means the rag will collect DNA in it as you clean, which gives
detectives an opportunity to investigate.
- It also means the DNA it collects will occasionally spread onto you,
meaning you will have to clean your gloves or hands.
- Cleaning vomit and such is (currently) unaffected (and does not dirty
the rag).
- Diseases are not currently transferred to the rag (but this would be
fun to add)

- Gauze now gets dirty when using it to wrap bleeding wounds. This is
just visual, though blood DNA gets transferred. It can be washed in a
sink.

- Removed gauze on sink / cloth on sink interaction.
   - Can't really wash gauze with it, plus it's redundant.

- Damp rag is no longer a cup.

## Why It's Good For The Game

Damp rag is just "soap without any downsides", which is kinda lame. 
I thought about going a step further and making it require you wet it
first but then it just becomes "mop but small" which is also lame.

Instead, you're required to clean it, which gives janitors / crewmembers
an alternate cleaning method:
- Soap: Small, finite, limited. Can't be replenished.
- Cleaner: Small, finite, even more limited, ranged. Can be refilled
with chemistry's help.
- Mop: Large, infinite, limited. Needs a water bucket.
- Damp Rag: Small, infinite, limited. Need to clean it after a few goes.

## Changelog

🆑 Melbert
balance: Damp Rags can now get dirty when using them to clean blood,
passing blood DNA along.
add: Gauze now gets dirty when apply it to actively bleeding wounds.
Doesn't spread disease or anything, just passes blood DNA. It can be
cleaned in a sink.
del: Removed cloth on sink / gauze on sink interaction to make rags.
Just use the crafting menu
/🆑
2025-05-16 13:49:27 -07:00
JacquerelandRoxy 9968f94721 Regal Rat cleanup & minor changes (#91012)
## About The Pull Request

Since #90505 added another entry to it the Regal Rat Riot ability, which
turns maintenance creatures into versions loyal to the rat, has become
sort of unmanageable (and to be honest it was a bit gross to start
with).
Instead of having a big if/else list (which was making the same range
check multiple times...) that sets stats on a bunch of mobs, I delegated
it to the mobs themselves and instead of changing some stats of the
existing mobs we just turn them into a new mob which can be spawned or
placed separately by mappers or admins if they want.

Other stuff I changed:

Riot (the ability which transforms mobs into minions) no longer spawns a
mouse if it fails to find anything. Instead you have a chance to fish
mice out of disposals bins while digging out trash and items.

Domain is now a toggle which activates itself every 6 seconds rather
than a button you manually click every 6 seconds.

Riot makes a visual effect when used.

Rare Pepe randomisation is done via a random spawner instead of the mob
modifying a bunch of its own properties in Initialise.

A bunch of mobs now automatically follow you after being tamed. I wrote
this assuming I was going to add it to the rioted mobs but then didn't
end up doing that because you might want them to immediately attack
someone.
My rule of thumb is that if I think you'd want the mob to attack someone
the moment it is befriended I didn't add this and if you wouldn't I did.

I changed some of the regal rat minion names, and some of them can now
spawn from gold slime which couldn't before.

## Why It's Good For The Game

This proc sucked and now it's nicer.

As for the other changes;
- A tamed mob immediately following you is nice feedback and saves you a
click as it's likely to be your first action. Also removes some admin
panel shitcode I added.
- I changed Domain to a toggle because you generally want to use it on
cooldown and someone suggested it on this PR and it sounded like a good
idea.
- I saw someone in Discord complaining that the previous flow of
recruiting rats by hitting Riot with nothing around to summon one,
waiting, hitting it again to convert one rat, and waiting again was
tedious and annoying which I agree with.
This method improves the quality of life by separating these two actions
but _also_ as a side effect reduces a regal rat's ability to secretly
stockpile 50 rats in a hidden maintenance room because most disposal
bins are in slightly more visible areas, they'll actually need to go and
make a mess somewhere someone can see them.


## Changelog

🆑
balance: Regal Rats can now grab mice out of disposal bins, and no
longer spawn them with the Riot ability.
balance: The Riot ability no longer needs to be used once for each
slightly different kind of mob in your radius.
balance: The Regal Rat Domain ability is now toggled on and off.
balance: Several kinds of mob will immediately start following you once
tamed.
balance: Rats, hostile frogs, and evil snails can be created via gold
slime reaction.
/🆑
2025-05-15 16:05:41 -04:00
BloopandRoxy 4a12545899 De-snails CI (#91077)
## About The Pull Request

Someone stopped mice from spawning in dangerous atmospheric conditions
but they forgot about the snails.


![firefox_QOXOuKGVp9](https://github.com/user-attachments/assets/99ff924c-a52b-4f2e-9850-cfd83d3871a6)

## Why It's Good For The Game

Think about the SNAILS

## Changelog

🆑
fix: stops snails from clogging up CI
/🆑
2025-05-13 19:11:50 -04:00
JacquerelandGitHub 96976c0b9a Regal Rat cleanup & minor changes (#91012)
## About The Pull Request

Since #90505 added another entry to it the Regal Rat Riot ability, which
turns maintenance creatures into versions loyal to the rat, has become
sort of unmanageable (and to be honest it was a bit gross to start
with).
Instead of having a big if/else list (which was making the same range
check multiple times...) that sets stats on a bunch of mobs, I delegated
it to the mobs themselves and instead of changing some stats of the
existing mobs we just turn them into a new mob which can be spawned or
placed separately by mappers or admins if they want.

Other stuff I changed:

Riot (the ability which transforms mobs into minions) no longer spawns a
mouse if it fails to find anything. Instead you have a chance to fish
mice out of disposals bins while digging out trash and items.

Domain is now a toggle which activates itself every 6 seconds rather
than a button you manually click every 6 seconds.

Riot makes a visual effect when used.

Rare Pepe randomisation is done via a random spawner instead of the mob
modifying a bunch of its own properties in Initialise.

A bunch of mobs now automatically follow you after being tamed. I wrote
this assuming I was going to add it to the rioted mobs but then didn't
end up doing that because you might want them to immediately attack
someone.
My rule of thumb is that if I think you'd want the mob to attack someone
the moment it is befriended I didn't add this and if you wouldn't I did.

I changed some of the regal rat minion names, and some of them can now
spawn from gold slime which couldn't before.

## Why It's Good For The Game

This proc sucked and now it's nicer.

As for the other changes;
- A tamed mob immediately following you is nice feedback and saves you a
click as it's likely to be your first action. Also removes some admin
panel shitcode I added.
- I changed Domain to a toggle because you generally want to use it on
cooldown and someone suggested it on this PR and it sounded like a good
idea.
- I saw someone in Discord complaining that the previous flow of
recruiting rats by hitting Riot with nothing around to summon one,
waiting, hitting it again to convert one rat, and waiting again was
tedious and annoying which I agree with.
This method improves the quality of life by separating these two actions
but _also_ as a side effect reduces a regal rat's ability to secretly
stockpile 50 rats in a hidden maintenance room because most disposal
bins are in slightly more visible areas, they'll actually need to go and
make a mess somewhere someone can see them.


## Changelog

🆑
balance: Regal Rats can now grab mice out of disposal bins, and no
longer spawn them with the Riot ability.
balance: The Riot ability no longer needs to be used once for each
slightly different kind of mob in your radius.
balance: The Regal Rat Domain ability is now toggled on and off.
balance: Several kinds of mob will immediately start following you once
tamed.
balance: Rats, hostile frogs, and evil snails can be created via gold
slime reaction.
/🆑
2025-05-11 04:52:20 +03:00
BloopandGitHub 54b12b2494 De-snails CI (#91077)
## About The Pull Request

Someone stopped mice from spawning in dangerous atmospheric conditions
but they forgot about the snails.


![firefox_QOXOuKGVp9](https://github.com/user-attachments/assets/99ff924c-a52b-4f2e-9850-cfd83d3871a6)

## Why It's Good For The Game

Think about the SNAILS

## Changelog

🆑
fix: stops snails from clogging up CI
/🆑
2025-05-10 21:16:23 +03:00
Ben10OmintrixandRoxy 914a85d562 snails (#90505)
## About The Pull Request
adds snails to the game

![image](https://github.com/user-attachments/assets/f1745795-695f-443a-827e-1f1987d4fdb6)

these are harmless critters you can find in maints. they love eating all
variety of fruits, and are gravitated towards snail people, where
they'll dance around them.

you can also pick them up and put them on your head.

finally, you can also grab them and put them in hydrotrays (they will
swim around in it very slowly). they'll help ur plants grow as they act
as natural weed-repellants, as they'll eat weeds that grow in trays.

![image](https://github.com/user-attachments/assets/512f0974-d0d1-4f90-a540-c03d1c969328)


## Why It's Good For The Game
there's not that many mobs you can usually find in maints, currently
there's only mice and cockroaches, this helps expand the pools a bit.

## Changelog
🆑
add: adds snails to the game. (keep them away from salt!)
/🆑
2025-05-08 19:19:40 -04:00