Commit Graph

64856 Commits

Author SHA1 Message Date
Time-Green ed94de4ddf Removes metalgen from randomspawns (#76538)
Metalgen can't spawn in strange seeds, maintpills, random geysers, egg
gland etc anymore

Metalgen is an extremely strong chem, intentionally gated behind both a
a rare geyser chem and a randomized recipe. A botanist being able to
mass-produce it randomly roundstart throws off the entire balance
systems and takes away from the novelty of metalgen synthesis

The randomized recipe system is meant to reward players for putting in
extraordinary effort to get an extraordinary reagent. Secret sauce (the
only other secret chem) can also not be randomly generated for this
reason, I made an oversight by not doing the same for metalgen.
2023-07-10 22:34:31 +00:00
CRITAWAKETS dba95083a0 Makes HMS (and uncurable severity diseases) actually uncurable. (#76291)
This PR makes HMS and any other diseases set to uncurable severity (only
HMS counts right now) actually uncurable through either aheal or viral
bonding.

Well, simply put, you shouldn't be able to cure quirks. Viral bonding
doesn't technically "cure" the disease but makes you into a carrier for
something that doesn't spread, which has been fixed.
2023-07-10 22:13:32 +00:00
TerraGS b37f1c33a9 Fixes explorer drone trader asking for "suit" (#76695)
There was an oversight with one of the explorer drone trader events who
wants /obj/item/clothing/suit/armor (base armor path) which currently
doesn't have its own name so it gets referred to by the inherited name
from /obj/item/clothing/suit in game. I've given it the proper generic
name "armor" so this sort of thing won't happen in the future.

Ran into a player doing explorer drone who tried using different types
of clothing because the trader asked for "suit" and not even the admins
online knew what it meant. This will clear things up and stop similar
confusion in the event any code needs to refer to the base armor path by
name.
2023-07-10 22:06:46 +00:00
MrMelbert 8c1e35e1c0 Refactors mind language holders into non-existent, fixes new languages being deleted on species swap + tests (#76612)
## About The Pull Request

This PR refactors mind language holders into non-existence

As a result, `update_atom_languages` is no longer necessary

Mind-bound languages are transferred via `/mind/proc/transfer_to`

Species changing no longer deletes and re-creates the mob's language
holder, allowing them to keep any languages they have.

Species languages are sourced from `LANGUAGE_SPECIES` now, meaning they
are removed when they change species. If the mob is not a human with a
species datum, these are effectively just atom level languages.

Makes a bunch of unit tests to ensure language transfer over certain
events works as intended

## Why It's Good For The Game

Mobs with minds having two independent language holders results in a
good few bugs, and simply doesn't make sense when we have sources
(`LANGUAGE_MIND`).

Instead of tracking two language holders, we can simply use sources
better and only track one.

This means that the language holder you start with is your language
holder, period. It doesn't get deleted or re-instantiated or whatever.

## Changelog

🆑 Melbert
refactor: Refactored language holders, making species changes not delete
all of your known languages
/🆑
2023-07-10 18:34:57 +00:00
BlueMemesauce a698aa2fd5 Simple and basic mobs can breath pluoxium (#76694)
## About The Pull Request

Fixes #76661

Also adds new PLUOXIUM_PROPORTION define, this is set to 8 which is
currently how better pluoxium is at metabolism compared to oxygen
## Why It's Good For The Game

Since pluoxium is 8 times as effective as oxygen, mobs only need 0.625
mol of it compared to 5 mol of oxygen. This is a very small amount,
maybe it should just be the same as oxygen?
Also pluoxium and oxygen are counted together, so you could have a mix
of 0.5 mol of pluoxium and 1 mol of oxygen for example.
## Changelog
🆑
fix:Mobs can breathe pluoxium
/🆑
Define not player-facing
2023-07-10 12:33:31 -06:00
ChungusGamer666 388a91b9c6 nightmare vision goggles give you mare vision (#76604)
## About The Pull Request

Daniel: https://github.com/tgstation/tgstation/pull/76600
The cooler daniel:

![image](https://github.com/tgstation/tgstation/assets/82850673/7cb2fc12-1b1e-4c07-8555-2da7fa052e72)

## Why It's Good For The Game

Neigh

![image](https://github.com/tgstation/tgstation/assets/82850673/3b9394b3-0113-44ae-9d62-f1a1e10e4f61)

## Changelog

🆑
add: Nightmare vision goggles now give you mare vision
/🆑

---------

Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
Co-authored-by: san7890 <the@san7890.com>
2023-07-10 19:43:52 +02:00
John Willard ee78ceea95 Clear PDA now has all themes (#76674)
## About The Pull Request

Gives all themes to clear PDAs

## Why It's Good For The Game

Clear PDAs are found/purchased late into a round and theme apps would
generally already be found and installed in PDAs. This means there's
nothing left to install in the crystal PDA, so instead I thought why
shouldn't they just get all themes?

## Changelog

🆑
qol: Clear PDAs now has all themes in their themify app by default.
/🆑
2023-07-10 18:26:22 +01:00
san7890 de3fb72973 Adds Radio Circuit Component Signaler to list-signalers (#76613)
## About The Pull Request

Fixes #76503

Probably important for this stuff to be logged.
## Why It's Good For The Game

Helps admins figure out the signallers that are signalling, and who
triggered the signaller.
## Changelog
🆑
admin: If a circuit component outputs a radio signal, it should now be
logged in list-signalers.
/🆑
2023-07-10 18:19:32 +01:00
ChungusGamer666 5472208d70 Fixes water-resistant creampies (#76653)
## About The Pull Request

Fixes https://github.com/tgstation/tgstation/issues/76641
Caused by the bodypart overlay being deleted before it got properly
removed on UnregisterFromParent()

## Why It's Good For The Game

One less hard delete and one less bug caused by said hard delete

## Changelog

🆑
fix: Creampies will no longer irreparably stain your face
/🆑
2023-07-10 18:18:13 +01:00
jimmyl 8aaa3e01b6 makes morgue units not hold ghosts (#76685)
## About The Pull Request

makes them unable to hold any /mob/dead

## Why It's Good For The Game

Fixes #76632

## Changelog
🆑
fix: morgue units can no longer hold ghosts
/🆑
2023-07-10 17:47:31 +01:00
Ghom 3b44a8b15c Adds cardboard IDs to the game: The broke man's agent ID. (#76682)
## About The Pull Request
This PR adds a new craftable item to the game that, in a way, works
somewhat like ID cards, as in it gives the wearer an identity of some
sort, and that can be modified similardly to the agent ID, but...

It doesn't provide access.
It doesn't trick security bots and turrets.
It doesn't work with chameleon masks.
It doesn't have a bank account.
It doesn't fit inside wallets or PDAs.
It doesn't show a trim (it's just cosmetic) on the security HUD.
It doesn't look like an ID card.

(It does however, synergizes well with sign language and face-covering
mask, but in the face of all the things id doesn't do, should I change
that? idk)

Basically, it's not an ID, it's just a piece of cardboard with name and
job written on it.

![aww](https://github.com/tgstation/tgstation/assets/42542238/b33ddb38-a11d-41d9-8085-2c719a2c4d48)

![(null)scrnshot1](https://github.com/tgstation/tgstation/assets/42542238/00a53379-70f6-4105-9cca-cff75d0e4144)

## Why It's Good For The Game
Often, player shenanigeans rely on ID cards with gimmicky names and jobs
to advertise themselves or provide a (feeble) disguise for it.
The idea is to provide players a cheap tool for their tomfoolery, that
doesn't get much in the way of balance. Compared to actual IDs,
cardboard IDs' only advantage is the fact they're more easily
produceable.

Also this PR converts a bit of snowflakey code into signals, and fixes
the name part in hallucination messages being shown "Unknown" while the
speaker is wearing a mask but also an ID.

## Changelog

🆑
add: Added cardboard IDs to the game. They can be crafted with a
cardboard sheet and wirecutters and modified with a writing tool. While
worn, these will modify the visible name of the wearer just like actual
IDs, though they aren't real IDs and won't work as such.
/🆑
2023-07-10 17:45:34 +01:00
Ghom f5bfff758d [NO GBP] Fixes the venomous element for projectiles, invisible arrows and something off with envenomable casings. (#76565)
## About The Pull Request
See #76551. The on hit effect component was treating the `hit_limb` arg
of the projectile on_hit signals as if it were a bodypart item rather
than a string. This wasn't my fault.
Also, invisible arrows because I forgot to set up their definition of
update_icon_state() and base icon state var.
Lastly, the envenomable casing registering a signal on the wrong atom,
and the arrow bullet subtype being defined twice.

## Why It's Good For The Game
This will close #76551.

## Changelog

🆑
fix: Fixes venomous projectiles for real, and invisible arrow sprites.
/🆑
2023-07-10 13:00:01 +01:00
Jacquerel e80cf8f358 Improved spider web AI (#76637)
## About The Pull Request

The AI I coded for spiders deciding where to make webs when they aren't
otherwise occupied would do so by finding the _closest_ valid tile,
which seemed like a good idea at the time. The problem with that is that
the "closest" algorithm we use has a predictable search pattern which
meant that spiders would always predictably make a diagonal line of webs
pointing South West, which looked very silly.
I've rewritten how they pick targets to introduce some randomness, which
causes them to properly spread out and make a nicer-looking structure:
which serves purely to annoy spacemen who need to pass through this
area.


![image](https://github.com/tgstation/tgstation/assets/7483112/cb01828f-7653-4010-a4f5-2abc6e10b630)

I'll be honest I mostly did this while bored waiting for other PRs which
I require for my other branch to get merged.

## Why It's Good For The Game

This probably only annoyed me to be quite honest and if you left one
alone for long enough it would fill enough space that you couldn't tell
anyway, but it does look nicer now.

## Changelog

🆑
add: AI-controlled spiders will make more web-shaped webs.
/🆑
2023-07-10 11:14:13 +02:00
ATH1909 ac7d94a678 Emagged organ harvesters can now harvest people who aren't naked (#76594)
## About The Pull Request

Emagged organ harvesters will no longer refuse a victim that has items
on their person, such as the handcuffs they've been bound with.

To be clear, this PR affects the organ harvester, which should not be
confused with the chef's gibber or cargo's recycler.

## Why It's Good For The Game

Emagging an organ harvester disables its checks to make sure that the
"patient" is dead, but doesn't disable its checks to make sure that the
patient is naked. This makes grinding people alive with an organ
harvester very awkward, as the machine will detect the cuffs you've
bound them with and refuse to grind them.

A demonstration of the jank involved in the current organ harvester
experience, courtesy of Livrah:
https://youtube.com/clip/UgkxC8OmO90nEhAonO0PIhRmQtcA-0urZoZ3

For the record, grinding conscious victims (but not critted or
unconscious ones) notifies ghosts. Furthermore, the variable for
disabling the item check actually already existed in the code for the
organ harvester, but was unused. I believe that tying someone up and
killing them slowly and painfully by shoving them into an organ
harvester is supposed to be intentional.

## Changelog
🆑 ATHATH
qol: Emagged organ harvesters will no longer refuse a victim that has
items on their person, such as the handcuffs they've been bound with.
/🆑
2023-07-10 10:45:07 +02:00
Helg2 ddac8ac668 Fixes few phobias not being scared of mobs. (#76659)
## About The Pull Request
Closes https://github.com/tgstation/tgstation/issues/76645
## Why It's Good For The Game
More reasons to ghost
## Changelog
🆑
fix: snakes, security, spiders and skeletons phobias now properly react
on mobs
/🆑
2023-07-10 10:40:06 +02:00
nikothedude 92c2a8d6fb Fixes quantum relays not processing (#76667)
## About The Pull Request
Replaces a return ..() with a return TRUE in the process(), removing the
PROCESS_KILL returb

## Why It's Good For The Game

Thinks working are always nice.
## Changelog
🆑
fix: Quantum relays now process, meaning DOS attacks actually function
/🆑
2023-07-10 10:39:09 +02:00
carshalash 81de84eca1 (no gbp change) Adds a blacklist to spidereggs. (#76677)
## About The Pull Request


![image](https://github.com/tgstation/tgstation/assets/16896032/f75ed7da-a208-49ed-8dc2-da37d70149a0)


## Why It's Good For The Game

Fewer crashes due to infinite spider eggs. 

## Changelog


🆑
fix:  Infinite spider eggs are no more. 
/🆑
2023-07-10 10:38:37 +02:00
Helg2 e6d078db83 Gives androids proper robotic organs. (#76658)
## About The Pull Request
Closes https://github.com/tgstation/tgstation/issues/76644
appendix to null
ears to simple cybernetic
eyes to tier 2 cybernetic eyes because i don't want android wizards to
cosplay moths, they are weak enough already.
## Why It's Good For The Game
Androids are now blind when emp'd.
## Changelog
🆑
fix: androids now have proper robotic organs and no appendix.
/🆑
2023-07-10 10:38:16 +02:00
MrMelbert 0e85aa3220 Lets you enter fakedeath when dead (#76666)
## About The Pull Request

Fixes #76665

`fakedeath` early returned if the mob was dead, I guess it assumed if
you were dead dead you wouldn't want to become fake dead as well

I removed that because it's definitely a valid use case, in my eyes,
that you would be able to apply the fakedeath traits to a mob who is
dead, for the event they are revived at some point (to still appear
dead)

## Why It's Good For The Game

Lings rely on this

## Changelog

🆑 Melbert
fix: Fix ling revival for full-dead lings
/🆑
2023-07-10 10:37:25 +02:00
Lufferly b8b7f4c71d Random Station Smuggler Satchel Rebalance (#76621)
## About The Pull Request

Rebalances the smuggler satchels that were randomly replaced around the
station.
Now only two are spawned, down from 10

## Why It's Good For The Game

Though I think these are cool, currently with 10 spawning roundstart
they feel like they are everywhere, especially if you are walking around
with t-ray vision. The smugglers satchel is powerful item, powerful
enough to be in the traitor uplink. It makes inventory management a lot
easier, as you essentially have another backpack in your backpack. I
feel like this is a fine reward for being lucky or actively looking for
them, but with how they are currently, you can pretty much guarantee
your chances of getting 5 with a t-ray scanner and a couple minutes of
walking around, invalidating the inventory system. Now if you want this
reward, you have to make a choice to look for one, with the knowledge
that you still may not find it.

## Changelog

🆑 Seven
balance: Only 2 smugglers satchels will spawn on the station at
roundstart, down from 10
/🆑
2023-07-10 10:35:02 +02:00
Riggle cc0d640917 Minor spelling mistake (#76652)
## About The Pull Request

Fixed the typo. Left with an underscore for back compatibility reasons.

## Changelog

🆑 Riggle
spellcheck: fix suspicious_logins
/🆑
2023-07-09 19:53:11 -04:00
distributivgesetz e2749d7f3a Remove underscore in spiderling names (#76655)
## About The Pull Request

Title.
## Why It's Good For The Game

Accidental coder speak.
## Changelog
🆑 distributivgesetz
spellcheck: Fixed some underscores in spiderling names.
/🆑
2023-07-09 12:42:29 -06:00
Fikou 8ca2a0bb35 service borg cookin fixin update (#76590)
## About The Pull Request
PR done for bounty:
https://tgstation13.org/phpBB/viewtopic.php?f=5&t=33988
borgs can now turn on stoves and griddles
borg click code has been reworked a bit to be closer to base mob, you
are now able to click on stuff within reach rather than just Adjacent
(might be buggy to introduce this? hopefully not. if anything we can
testmerge this), which lets us make the apparatus work to pick up stoves
on the range and such
Adds the Codex Cibus Mechanicus as an upgrade you can research in RnD
with the other service borg ones. When you use it it shows you the
cooking menu!

![image](https://github.com/tgstation/tgstation/assets/23585223/5f881387-e0ba-4bb8-a9d6-ddc9d8fa9272)

## Why It's Good For The Game
The service borg has the tools to prepare ingredients, but it can't
actually do anything with them, which severely limits it, only being
able to do slapcrafted foods.
The apparatus not working on items that are on top of stoves/griddles
seems to be just a bug with how cyborg click code is handled.

## Changelog
🆑 Fikou
fix: service borg apparatus now works on stoves and griddles and ovens
qol: borgs can now activate stoves and griddles
add: rnd can research a cookbook for service borgs
/🆑
2023-07-09 14:17:39 +01:00
Jacquerel e7426f0919 Golems can dig up the floor with their bare hands (#76623)
## About The Pull Request

I'm atomising a different branch I'm working on so here comes a bunch of
goofy components.
This one lets mobs dig up floor by clicking on them. 


![image](https://github.com/tgstation/tgstation/assets/7483112/723b712b-1d3d-4154-a116-7a0379e4e522)
I have justified the existence both of this component and of this system
by attaching it to golem arms.

## Why It's Good For The Game

If you can mine solid rock with your fists you should probably be able
to get sand too

## Changelog

🆑
add: Golems can scoop sand (or snow) off the floor by clicking on it.
/🆑
2023-07-09 11:35:19 +02:00
DATAxPUNGED c2b82a7ea2 Gives Warden their own Garment Bag. (#76579)
## About The Pull Request

Puts all of warden's clothes on a garment bag, and puts said garment bag
on warden's locker
## Why It's Good For The Game

Warden has almost as much alternative clothing as a head, using his
locker is kind of a pain, and this oughta fix that
## Changelog
🆑
qol: The Warden's locker now has a garment bag
/🆑

---------

Co-authored-by: Jolly <70232195+Jolly-66@users.noreply.github.com>
2023-07-09 00:30:15 -06:00
FlufflesTheDog c6efc38e2f Re-adds placing patients on surgical tables (#76643)
## About The Pull Request
This was removed by #75840, as it had a conflict that made it so that
trying to unbuckle someone that was buckled to a table would try to
place them again instead. This redoes that, unbuckling if the person
you're pulling is already buckled to said table.
## Why It's Good For The Game
It feels a bit less friendly that your only options are being buckled to
a table or shoved onto a table. Also, buckling requires both mobs to be
beside the table, where placing only requires the placer to be, which
makes things a lot less awkward in cramped operating rooms.
## Changelog
🆑
fix: You can once again directly place patients on operating tables
/🆑
2023-07-09 00:11:20 -06:00
Nimowa 89b4e7e826 Fixes the APC full_charge mapping helper (#76650)
## About The Pull Request
Currently the full_charge APC helper just sets the cell's charge to 100
flat, instead of 100%. This PR fixes that by setting the cell's charge
to whatever the cell's max charge is.

This is also my first PR. I was hoping to add a whiteship or something
instead but a fix is good too.

## Why It's Good For The Game
A mapping helper for giving APCs a full charge should actually fully
charge the APCs, instead of giving them only ~5% charge.

## Changelog
🆑
fix: Fully charged APCs will now actually be fully charged, instead of
nearly empty.
/🆑
2023-07-09 00:08:28 -06:00
MrMelbert b37007370b Fix WIzard Ritual hard delete (#76638)
## About The Pull Request


![image](https://github.com/tgstation/tgstation/assets/51863163/c59c619a-34cc-4adb-ab75-ffdc345a1e9a)

So this action was created with the target = the wizard's body
Wizard body gets deleted -> action gets deleted -> hard delete, bad

## Why It's Good For The Game

Stop bricking wizards

## Changelog

🆑 Melbert
fix: Fix hard deletes that brick all of a wizards spell when their body
is delted
/🆑
2023-07-08 17:30:27 -06:00
Jacquerel 65eab73561 Surgical Tables XVIII: The Return: The Saga Continues (final)[1] (#76634)
## About The Pull Request

Wow look at this beautiful surgical table, sprited by imaginos

![image](https://github.com/tgstation/tgstation/assets/7483112/a38ebfb5-813f-409b-83ef-9593cbd4de24)

Whoa look it even has the right offsets

![image](https://github.com/tgstation/tgstation/assets/7483112/58cebe0f-4d33-41a5-ae60-22a4b11381e4)

## Why It's Good For The Game

This sprite was all ready to go but the person who made the PR didn't
know how to apply the bed offsets so I have nobly stepped up to the
challenge

## Changelog

🆑 Imaginos
image: A new sprite for oeprating tables
/🆑
2023-07-08 15:28:19 -06:00
Rhials e3b2ac149e Fixes organ/implant manipulator creating implants in the void when failing to insert (#76602)
## About The Pull Request

When using the organ manipulator, implants that fail implant() would
still be created and be left out of the implantee.

Now, implants that fail insertion will self-delete and notify the menu
operator. This functionality has been extended to organs as well,
although I don't know of any cases where they could fail insertion.

I also touched up on the variable names while I was here, because they
needed a face-lift.
## Why It's Good For The Game

Prevents edge cases that could lead to orphaned implants or organs.

More readable code is neat too.
## Changelog
🆑 Rhials
fix: The organ manipulator menu will now delete implants or organs that
fail to properly insert.
code: The organ manipulator menu code now looks nicer :)
/🆑
2023-07-08 14:36:14 -04:00
YesterdaysPromise 97ec5ed1a0 Adds Interdyne Modsuits (#76236)
## About The Pull Request
Adds separate, Interdyne-brand Modsuits for Intrudyne pirates.
Incredibly fast and more techy, including among other things an organ
thrower module (which is, based on flavour text, Interdyne tech). To
balance this, they discharge dramatically fast, encouraging fast get-in
get-out approach.

Sprite itself is mostly a combination of medical and syndicate suits,
with labcoat bits for extra stylishness and evil feel. The colour
pallete was enterily borrowed from Interdyne Pharmaceutics container
sprite and Interdyne-produced E-surgery tools.

![flayed](https://github.com/tgstation/tgstation/assets/122572637/8a09a138-b57b-4c51-9e78-2264ee895977)

![image](https://github.com/tgstation/tgstation/assets/122572637/fcc4dc4f-cc92-4643-b7dd-40856d9f9604)

![image](https://github.com/tgstation/tgstation/assets/122572637/f5282cb8-199f-4835-b852-8507bf9f189d)

Lorewise, I borrowed a random idea from cyberpunk lore video I once
watched and is now blurred for me now, upon seeing retrieval suits.
Originally made by conjuction of Cybersun and Intrudyne, combining
mechanics with supersoldier treatment for speed, allegadely for rapid
response and retrieval off corpses. [By the way, it would be funny if
someone coded an event where after cap's death on Revs or Cult, a bunch
of guys in these suits would show up with sole goal of recovering the
body and escaping with it (plus maybe some side syndicate objective)]
Aaanyway, obviously, the rapid speed plays into a lot of
Intrudyne-related tactics for the shady side of things as well. Much
like a scalpel, their attacks are supposed to be fast, clean and
precise.

## Why It's Good For The Game

Consistency thing, mostly. It doesn't make much sense that a medical
corp would use their competitors tools when they could develop a
counter. Also ties with organ thrower module, why would they have made
it, if they didn't have modsuits for it?

## Changelog

🆑
add: Added Interdyne ModSuits for Interdyne pirates.
/🆑

---------

Co-authored-by: Fikou <23585223+Fikou@users.noreply.github.com>
2023-07-08 10:26:10 -07:00
DATAxPUNGED 3cbbefa742 Mini Fridges now have a grimy subtype, can go over tables, and start off anchored. (#76517)
## About The Pull Request

/obj/structure/closet/mini_fridge is now a clean nice one, which only
spawns beverages and does not have that cockroach reference in the
description, and starts off anchored. now
/obj/structure/closet/mini_fridge/grimy works like the old mini-fridge,
with syndicake, moldy bread, and now the chance of an ACTUAL cockroach.
I've replaced them on maps according to each one's needs, So, as an
example, Northstar gets a regular one (it var edited it before) while
tram maints get the grimy subtype.
mini-fridges now can properly go over tables, so you don't have to
deconstruct said table to put it on top again.
## Why It's Good For The Game

I've found the need for a nice subtype while doing a ruin, and so has a
few other mappers apparently, as northstar had a var edited variant. The
fact that it couldn't go over tables and started off unanchored was
annoying on tram and icebox, where it is present on the kitchen and you
could easily push it to the ground and suffer.
## Changelog
🆑
qol: It has been issued brand new mini-fridges for our active stations,
Featuring more booze and less moldy pizza!
/🆑
2023-07-08 09:49:44 -07:00
DATAxPUNGED 8f4e4d1702 Removes excess ID boxes from the HoP's office and adds silver IDs to their locker. (#76448)
## About The Pull Request

Every ID, silver ID, and PDA box has been removed from the maps. You can
now only find ID boxes on the HoP's locker and PDAs must be bought from
the tech vendor. Said locker also had two instances of ID boxes, so i've
swapped one of them for the silver ID box
## Why It's Good For The Game

tram had, in total, 5 ID boxes. That's *35 IDs in total.* No one is ever
gonna lose that much, and having 7 is more than enough. If a situation
happens where you somehow need more, you can still buy it on the tech
vendor AND on cargo. I realized how many boxes the HoP had on the other
PR
## Changelog
🆑
del: Removed excess ID boxes on HoP's office
/🆑
2023-07-08 09:36:16 -07:00
MrMelbert 06372b34d9 Atrocinator flips your chat text around (#76618)
## About The Pull Request


![image](https://github.com/tgstation/tgstation/assets/51863163/fd325eeb-f862-4268-8370-4c13c4701c16)

## Why It's Good For The Game

It's funny

## Changelog

🆑 Melbert
add: The Atrocinator will now flip you even more. 
/🆑
2023-07-08 17:05:49 +01:00
Fikou e330b2fb51 nightmare vision goggles give you night vision (#76600)
## About The Pull Request
what the title says, it gives you fullbright

## Why It's Good For The Game
it'd be really funny to see people use it in dark areas for the night
vision while trying to work with the full red/black screen

## Changelog
🆑
balance: nightmare vision goggles give you night vision
/🆑
2023-07-08 16:15:02 +01:00
Toastgoats 5ed6407462 Ethereal Pirates (Re-pr) (#76554)
Other pr had some weird check failure, making a new pr to see if it
fixes it.

## About The Pull Request
After he ended up finishing his pirate pr before I could, SethLafuente
graciously offered to let me roll my in-progress pirate pr into his
overall pirate expansion project.

This pr essentially adds a new faction of pirates, along with a new
subspecies of Ethereals a-la silverscales.

- The Lustrous:

A unique subspecies of Ethereal, with years of exposure to bluespace
dust mutating them into crystalline abominations sporting a new pointy
head, pressure resistance, and a permanent bluespace prophet brain
trauma. They're still as fragile as ever, but far more capable of
getting in and out of sticky situations.

- Geode Pirates:

A hollowed out asteroid manned by three Lustrous, equipped with
switchblades, traitor PKAs, jump boots, two teleporting turrets, and an
upgradable bluespace launchpad.

However, they lack proper armor and ship defenses, forcing them to adopt
a coordinated hit-and-run playstyle.


![asteroid](https://github.com/tgstation/tgstation/assets/63932673/1ab420fd-4bf3-4a54-94be-fde73cf66edf)

![shuttle](https://github.com/tgstation/tgstation/assets/63932673/00574b29-54be-4efb-b6d6-0085c3bc5cfb)

![piratas](https://github.com/tgstation/tgstation/assets/63932673/d1586a30-a1e5-42e0-b16b-9793db1340ad)
## Why It's Good For The Game

When I started working on this project, I wanted to implement this
faction to cover for the loss of psykers and as a means of creating a
"rock-paper-scissors" system to how standard pirate playstyles would
work; with default pirates being offensive, Silverscales defensive, and
Lustrous mobile.

With Seth's pr, things are a little different now, but I still believe a
glass cannon mobility-focused pirate faction would be a welcome addition
to the pirate roster.
## Changelog
🆑
add: Adds the Lustrous, ethereal pirates in a big bluespace geode!
sound: Unique scream sound for the Lustrous species.
image: Unique head icon for the Lustrous species.
/🆑

---------

Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
Co-authored-by: Jacquerel <hnevard@gmail.com>
2023-07-07 23:48:47 +00:00
ChungusGamer666 ca401b57a7 Bargain bin organ quirks: Prosthetic organ and Tin Man (#76498)
## About The Pull Request

Basically, the organ equivalents of prosthetic limb and quadruple
amputee.
These replace your organs with absolutely terrible cybernetic
counterparts which also have absolutely no resistance against EMPs.

![image](https://github.com/tgstation/tgstation/assets/82850673/1e4a4abc-8871-41fc-b2f7-a2e626f1fdfb)

### ADDITIONAL FUN
Surplus organs are so awful that if surgically removed while not EMPed
nor failing, they *explode*!

## Why It's Good For The Game

More character customization, and more suffering for hardcore random
players.

## Changelog

🆑
add: Added two new quirks, prosthetic organ and tin man. Essentially,
they replace organs with bad bad not good cybernetic counterparts.
/🆑

---------

Co-authored-by: Jacquerel <hnevard@gmail.com>
Co-authored-by: carlarctg <53100513+carlarctg@users.noreply.github.com>
2023-07-08 00:31:43 +01:00
John Willard a2c8cce535 Bilingual can now choose their language (#76609)
## About The Pull Request

This was one of the tradeoffs for removing other, more consistent
sources of languages, and was requested by Melbert among many others.
This does go against my wanted goal of decreasing the risk of
eavesdropping by other players through just magically knowing a
language, but it is an expensive quirk and it is in their medical
records, which makes it better than language encryption keys or silicon
just innately knowing them.

This also limits Bilingual to only roundstart languages (+Uncommon),
rather than being randomly selected from a list (that had very useless
ones like monkey, podpeople, and beachbum). This is mostly just for
modularity, I didn't want to make it look terrible code-wise and thought
this may be the optimal way to handle it.

This is also me going back on
https://github.com/tgstation/tgstation/pull/71773 - which I had closed
myself.

## Why It's Good For The Game

If we're gonna keep the Bilingual quirk, it might as well be something
players can choose the language of, it's their character and they should
be allowed to decide how their character is, and it is my fault that
this stupid compromise of "getting a random language" was made in the
first place. It never should've happened.
It now actually limits it to roundstart-only languages, so there's no
way you can spy on people who prepare in advance through becoming
podpeople, or monkeys, etc.

## Changelog

🆑
balance: Bilingual quirk now lets you choose your language between ones
given to roundstart species.
balance: Foreigner and Bilingual are now mutually exclusive languages.
/🆑
2023-07-08 00:26:35 +01:00
carlarctg 4c99fb2ebb Coroner additions and tweaks (#76534)
## About The Pull Request

Serrated bone shovels can be created with any kind of shovel now, not
just a spade (???)

Serrated bone shovels can be used in place of circular saw in most
surgeries.

Added a duller (still deadly) variant of the serrated bone shovel as
coroner mail.

Autopsy scanners now act as advanced health analyzers on dead and
seemingly-dead people.

Increased the force, throwforce, and wound bonus of inert ritual knives
and scythes.

Coroner gloves can quickly apply medicine like nitrile gloves.
## Why It's Good For The Game

> Serrated bone shovels can be created with any kind of shovel now, not
just a spade (???)

Weird ass bug.

> Serrated bone shovels can be used in place of circular saw in most
surgeries.

It's serrated, it's cool, it's rare, it has a fast toolspeed.

> Added a duller (still deadly) variant of the serrated bone shovel as
coroner mail.

Very thematic for the coroner, should probably also be a heirloom item
but whatevs. Weaker so there's still a reason to seek out the OG.

> Autopsy scanners now act as advanced health analyzers on dead and
seemingly-dead people.

Scanning corpses is pretty important during surgery - it tells you how
much blood they have, organ damage, diseases... these things don't
appear in the surgical computer readout, which means the coroner has to
go out of his cave to pick up a boring light blue meatbag wound scanner.
This also incentivizes coroners to do their job by giving them something
cool that only works on dead bodies.

> Increased the force, throwforce, and wound bonus of inert ritual
knives and scythes.

These two options in the MortiDrobe are pretty frickin' badass,
especially with how SICK the Coroner looks with them, double especially
in combat.


![image](https://github.com/tgstation/tgstation/assets/53100513/98c6f8a5-3e5a-41a9-8a9c-cb6b82ecc0b8)

However, there's the large issue that as actual weapons they're really,
really weak. Not enough damage, when I use them in combat I both feel
badass but also get a nagging feeling in the back of my mind that I'm
intentionally gimping myself, and with only 10 damage I can *really*
feel it. I find it unfair that these are objectively worse than a
welding tool or even a Butcher's Cleaver when they're a lot more
involved to find, and scarce besides. These arguments apply equally to
the Wizard's ritual knife, and the scythe.

Additionally on the scythe, the crew really needs more good ghetto
weaponry that isn't the boring same ol' of baseball bats, spears,
cleavers... and making scythes useful is a great way to help bridge that
gap. They deal a satisfying amount of damage now, with the clear
downside, of course, being that they're bulky and hard to lug around.

> Coroner gloves can quickly apply medicine like nitrile gloves.

'Fast medicine' doesn't just cover sutures, it also covers medical gel.
Specifically, sterilizer gel. I find it annoying that the Coroner is
encouraged to give up his drip for the boring life-saver nitrile gloves,
because the difference in applying time really does make a difference -
it makes gel applying go from annoying to smooth, which is important
considering the whole purpose of sterilizer gel is to make surgeries go
faster. The Coroner has surgery and thus medical locker access to begin
with, so this isn't a balance problem, (and nitrile gloves are found by
the dozen anyways) especially with how rare the coroner gloves are.
## Changelog
🆑
fix: Serrated bone shovels can be created with any kind of shovel now,
not just a spade (???)
add: Serrated bone shovels can be used in place of circular saw in most
surgeries.
add: Added a duller (still deadly) variant of the serrated bone shovel
as coroner mail.
add: Autopsy scanners now act as advanced health analyzers on dead and
seemingly-dead people.
add: Increased the force, throwforce, and wound bonus of inert ritual
knives and scythes.
add: Coroner gloves can quickly apply medicine like nitrile gloves.
/🆑
2023-07-08 00:14:30 +01:00
LemonInTheDark cfc4e960bc Properly unreg's turf changed when space openspace is deleted (#76501)
## About The Pull Request

Openspace tracks the turf below for starlight purposes The trouble is if
a turf is replaced by another, all its signal registers still persist

I forgot about this, so we'd get runtimes when a
/turf/open/space/openspace was replaced, and the turf below it changed

## Why It's Good For The Game

Less random runtimes
2023-07-08 00:02:18 +01:00
carlarctg 721fd30837 Heavily reworks and resprites first aid analyzers. (#76533)
## About The Pull Request

Heavily reworks and resprites first aid analyzers. They now display if
they're happy, sad, angry, or warning you! Also a 'pricking' animation.

First aid analyzers are now found in all basic and specialized medkits.
Toxin medkits get a new* disease analyzer. Miners get a miner-colored
one in their box.

Scanning yourself with a first aid analyzer will 'create a holo-image
with treatment instructions next to your wounds', doubling the speed of
treatment of scanned wounds!

Health analyzers now have a scanning sound, courtesy of CM.

Refactored some wound code to make treatment duration changes and
changes in the description of wounds easier.

Fixed a dummy parent feature of the health analyzer (Verbose mode)
showing up, uselessly, on the disease and first aid subtypes.

Surgical processors and slime scanners have recieved a similar resprite.
## Why It's Good For The Game

> Heavily reworks and resprites first aid analyzers. They now display if
they're happy, sad, angry, or warning you! Also a 'pricking' animation.

These things have long, long needed some sprite love. Displaying emotion
will make them have a lot more 'weight' to them, same with the prick.
The old, shitty spectrometer sprites have gone directly into the
dumpster.

> First aid analyzers are now found in all basic and specialized
medkits. Toxin medkits get a new* disease analyzer. Miners get a
miner-colored one in their box.

They have also needed some gameplay love! Placing them in these kits is
not going to be a massive game-changer when they were already easily
found around the station in emergency medkits, but it will fill up that
awkward empty slot.

> Scanning yourself with a first aid analyzer will 'create a holo-image
with treatment instructions next to your wounds', doubling the speed of
treatment of scanned wounds!

The biggest gameplay-impacting change in this PR, I *sincerely* believe
this is the perfect solution to first aid analyzers being completely
redundant with eyesight. This lets you/someone else scan your wounds to
speed up treatment, with a neat in-character reason for it -
'holo-images' appearing on your body, like penlights.

This will speed up wound treatment, but I believe that is for the best,
as currently treating wounds is so slow that half the time it's not
worth it (or more accurately, it doesn't feel worth it in comparison to
the effort you're putting in) and you're better off shrugging off minor
wounds. It will do so in a way that requires a modicum of effort, so
it's not just a flat buff across the land.

> Health analyzers and gene scanners now have a scanning sound, courtesy
of CM.

It's a neat sound that will make medbay feel more alive. First aid
analyzers get a beeboop instead.

> Surgical processors and slime scanners have recieved a similar
resprite.

IT'S SPRITE MANIA IN HERE
## Changelog
🆑
Carlarc, Weird Orb
image: Heavily reworks and resprites first aid analyzers. They now
display if they're happy, sad, angry, or warning you! Also a 'pricking'
animation.
add: First aid analyzers are now found in all basic and specialized
medkits. Toxin medkits get a new* disease analyzer. Miners get a
miner-colored one in their box.
balance: Scanning yourself with a first aid analyzer will 'create a
holo-image with treatment instructions next to your wounds', doubling
the speed of treatment of scanned wounds!
sound: Health analyzers and gene scanners now have a scanning sound,
courtesy of CM.
refactor: Refactored some wound code to make treatment duration changes
and changes in the description of wounds easier.
fix: Fixed a dummy parent feature of the health analyzer (Verbose mode)
showing up, uselessly, on the disease and first aid subtypes.
image: Surgical processors and slime scanners have recieved a similar
resprite.
/🆑

---------

Co-authored-by: Jacquerel <hnevard@gmail.com>
2023-07-07 23:19:55 +01:00
Jacquerel e2de2046b5 Bibles, Lighters, and Cowboy Hats can block bullets (#76521)
## About The Pull Request

If you are wearing a bible or lighter in your suit slot, or a cowboy hat
on your head, there is a small (2%) chance that bullets (only bullets,
not lasers) will hit them instead of you.
This destroys lighters, removes the storage capacity of the bible, or
sends the hat flying off your head.

The Bounty Hunter's cowboy hat has a significantly higher chance to
intercept bullets.

## Why It's Good For The Game

Adds some fun flavour to these items.

## Changelog

🆑
add: A bible or lighter in your suit slot, or cowboy hat on your head
will occasionally intercept a bullet.
/🆑
2023-07-07 18:36:04 +08:00
Watermelon914 fc854e7076 Removes TTS voice disable option (#76530)
## About The Pull Request
Removes the TTS voice disable option, which was already unavailable on
TG as it was set to off by default. The reason this was added was so
that downstreams could toggle the config on or off.

## Why It's Good For The Game
I think this option fundamentally undermines the TTS system because it
allows individual players to disable their voice globally, meaning that
players who have TTS enabled will not be able to hear them.

This worsens the experience for players who have TTS enabled and it's
not something I want to include as an option. If players don't like
their voice, they can turn TTS off for themselves so that they don't
hear the voices. If players don't want to customize their voice, they
can quickly choose a random voice, and we can take directions in the
future to make voice randomization consistent with gender so that a male
does not get randomly assigned a female voice and vice versa.

This option is already unavailable on TG servers because it was
primarily added for downstreams, but I don't think giving downstreams
the option to undermine the TTS system is the right direction to take.
Downstreams are still completely free to code this option on their own
codebase.

---------

Co-authored-by: Watermelon914 <3052169-Watermelon914@users.noreply.gitlab.com>
2023-07-07 06:31:12 -04:00
san7890 ed59cdd458 Stop stack tracing if ezdb daemon is already running (#76555)
## About The Pull Request

This is an annoyance for me because I often kill the game but not the
EZDB daemon (leaving the cmd window open), and it just triggers this
stack trace while I have a debugger running. It's still able to connect
to the daemon in-game and functions perfectly fine, just hate dealing
with a completely needless stack_trace() every single time.


![image](https://github.com/tgstation/tgstation/assets/34697715/f8ae3cec-1cf6-4e70-b9bc-c7088121b85c)


![image](https://github.com/tgstation/tgstation/assets/34697715/a13774b8-addf-43fd-82f0-3d0e644d2dc1)
## Why It's Good For The Game

LET ME WORK!!! PLEASE!!!
## Changelog
Nothing that players should care about.
2023-07-07 06:30:47 -04:00
1393F fba8beec1d cursed katana shard no longer called "dark spoon shard" (#76605)
## About The Pull Request
https://github.com/tgstation/tgstation/pull/75948 changed the name of
the cursed shard and made the katana version a subtype...without
changing the name or desc of the shard
## Why It's Good For The Game
the dark shard from tendril loot will no longer have a stupid name and
tell you you're not supposed to have it
## Changelog
🆑
fix: The cursed katana shard you can get from tendril loot no longer
falsely tells you you're not supposed to have it
/🆑
2023-07-07 18:29:48 +08:00
John Willard 32afa856db Makes cult leader handling work off of the Cult datum (#76556)
## About The Pull Request

Removes Cult master's datum, it's not handled by the Cultist itself,
using a helper to promote/demote people to leader.
In practice, the only way someone would be demoted is through Admins, so
this adds support for Admins to intervene in this Cult stuff if
necessary.

Moves cult objectives and cult team to their own files

Removes the cult master's status effect that constantly processes to
send a deathrattle, and instead moves it to a signal hooked to stat
change.

Also moves some things from ``get_antag_minds`` to checking the team,
which doesn't change anything in-game but it does help add the currently
non-functional support for several cult teams. Iunno.


https://github.com/tgstation/tgstation/assets/53777086/573a4f13-35e1-4f34-9952-62fed10b49c9

## Why It's Good For The Game

Having the cult leader be its own datum has actually been handled like
shit. To promote someone to cult leader, we currently make their current
cult datum silent, then remove it, and finally add the cult leader
datum. This means they lose their spells unless manually given back
post-promotion, which sucks (and also, no one has done yet, meaning they
just lose all their spells).
It also means there's a lot more snowflake things, did you know there's
a var to bypass converting mindshielded people? That's so cult masters
can be promoted by Cultists who were mindshielded, and they have to be
"ownable", that var is to bypass the check for mindshield to "convert"
them to leader cultist.

## Changelog

🆑
fix: Cultists promoted to Leader no longer lose their spells (rip
whoever tried saving up blood rites)
admin: Admins can now force promote/demote people from Cult Leader if
necessary.
/🆑
2023-07-07 06:27:31 -04:00
MrMelbert 12c7f3a781 Fix double signal send of COMSIG_MOB_EMOTED (#76607)
## About The Pull Request


https://github.com/tgstation/tgstation/blob/75af2bed854c6426f46ed2797714c45446d92303/code/datums/emotes.dm#L124


https://github.com/tgstation/tgstation/blob/75af2bed854c6426f46ed2797714c45446d92303/code/modules/mob/emote.dm#L34-L36

I opted to keep the latter because it's always sent when the former is
only sent under certain conditions.

## Why It's Good For The Game

Fixes some strangeness involving this signal

## Changelog

🆑 Melbert
fix: Fix certain emote interactions happening twice at the same time
/🆑
2023-07-07 18:20:55 +08:00
ChungusGamer666 ab5e3f9be6 You can put bricks inside pillows (#76341)
## About The Pull Request

Terrible idea I got from reading the comments in
https://github.com/tgstation/tgstation/pull/76312

![image](https://github.com/tgstation/tgstation/assets/82850673/400b0f3d-6ab8-47f3-a0de-73d4b61a5e5a)

## Why It's Good For The Game

Because it's funny as hell and makes pillows work as an improvised
non-lethal weapon, if you get sandstone bricks.

## Changelog

🆑
add: You can now put sandstone bricks in pillows to... make them
deadlier?
/🆑
2023-07-07 18:16:33 +08:00
BlueMemesauce f9279f67a0 Sends AI VOX messages over announcement instead of radio (#76327)
## About The Pull Request
Fixes #76310

`sound_override = TRUE` makes it so that no sound is played for the
announcement since "TRUE" isn't a sound file, but that might be bad code
let me know

## Why It's Good For The Game

Sending the message over the radio makes the AI "speak" it, so TTS plays
from AI at the same time as the VOX sounds, which makes the announcement
sound bad for the AI and anyone around them. This turns it from being
sent over the radio to an announcement so that TTS doesn't apply. It
also just makes more sense having the VOX announcement sent as an
announcement rather than just a normal radio message.
## Changelog
🆑
qol: AI VOX messages are sent over announcement instead of radio
fix: AI VOX messages work properly on multi-Z stations
/🆑
2023-07-07 18:13:47 +08:00
John Willard dd77c2cc94 Jousting now unregisters the current holder (#76589)
## About The Pull Request

Fixes the args of on_equip and on_drop for active items
Picking an item up will unregister from the old user (in case it
transfers inventory)
Unregister's signal from current holder instead of whoever drops it. It
should be the same in each case but there may have some edge case where
on drop isn't called? This is more to just be safe.

## Why It's Good For The Game

Jousting won't runtime as much.

## Changelog

🆑
code: Jousting now registers/unregisters properly on two-handed items.
/🆑
2023-07-07 18:11:29 +08:00