Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Batch of TG PRs #39

Closed
wants to merge 152 commits into from
Closed

Conversation

carpotoxin
Copy link
Collaborator

About The Pull Request

Why It's Good For The Game

Changelog

🆑
add: Added new mechanics or gameplay changes
add: Added more things
del: Removed old things
qol: made something easier to use
balance: rebalanced something
fix: fixed a few things
sound: added/modified/removed audio or sound effects
image: added/modified/removed some icons or images
spellcheck: fixed a few typos
code: changed some code
refactor: refactored some code
config: changed some config setting
admin: messed with admin stuff
server: something server ops should know
/:cl:

SmArtKar and others added 30 commits September 9, 2024 17:11
…gstation#85795)

## About The Pull Request
Closes tgstation#84603 
It overrode one of its parent args, resulting in parent code not
assigning a var and runtiming when trying to spawn a blade

## Changelog
:cl:
fix: Blade heretic ascension now gives you floating blades once again
/:cl:
## About The Pull Request

Before, trying to fix an undamaged limb would have you whack the person
with the wires, or burn them with a welder. This is quite counter
productive when trying to repair someone. Now it cancels any further
attacks when you click on an uninjured limb, and tells you about it.


![image](https://github.com/user-attachments/assets/1fc94d15-5508-4fa2-bdfa-bde856eaba20)

## Why It's Good For The Game

I won't accidentally smack someone with a burning welder without combat
mode on just because their chest happens to have no damage.

## Changelog

:cl:
fix: Trying to repair someone's undamaged limb with a welder or wires no
longer has you smacking them
/:cl:

Co-authored-by: Ghom <[email protected]>
## About The Pull Request
Why are we restricting atmos techs from doing this?
## Why It's Good For The Game
atmos meters are very useful and there is no reason to restrict them
from layer 1 and 5
## Changelog
:cl:
qol: atmos meters can now be attached to layer 1 and 5
/:cl:
tgstation#85794)

## About The Pull Request
Copypasted code prevented improvised shields from being crafting due to
moonflower shields having the same path. Found by ncarlarc on discord

## Changelog
:cl:
fix: Fixed improvised shield crafting recipe being overriden by
moonflowers
/:cl:
…tional armor (tgstation#85726)

## About The Pull Request

Closes tgstation#81260
Closes tgstation#74022
Currently mechs are the only atoms utilizing attack_dir but I added it
in multiple other places that were missing it to ensure that if
something else uses it it won't break in those scenarios

## Changelog
:cl:
fix: Mechs' directional armor now actually works
/:cl:
…KNOWN, replaces your name with the name of the tactical item (tgstation#85567)

I added TRAIT_UNKNOWN to the code for picking up and dropping potted
plants. Picking them up will make you totally anonymous (and
suspicious). This is the same thing that infiltrator suit and heretic
shadow cloak does.

I also added in some code that changes your displayed name to the name
of the item, and then I had to jiggle ID code a bit so it wouldn't
display your worn ID; it'll now display the forced name of the tactical
object.

Becoming an absolute master of disguise by hiding with a potted plant is
hilarious. Causing people to become immensely paranoid of anyone holding
a potted plant is very on-brand. Dropping the potted plant to reveal
you're in full infiltrator gear or heretic aura is also a funny double
bluff. The total anonymity afforded by this is balanced out by the fact
that you have to use both hands to hold the plant so you can't defend
yourself at all if you're making use of it.
:cl: Bisar
add: The interns remembered to water the plants around the station;
their foilage is so thick that it totally hides the identity of anyone
holding them!
/:cl:

---------

Co-authored-by: Ubuntu <[email protected]>
…ation#85852)

I had unregistered signals from the wrong source in the original PR for
items with the tactical component changing your identity. Now they get
properly unregistered.

Fixes tgstation#85827
🆑 Bisar
fix: Potted plants no longer permanently mark you as one of their own.
/🆑

Co-authored-by: Ghom <[email protected]>
## About The Pull Request

In tgstation#77887 I have introduced a food buff system with placeholder buffs to
not bloat that PR with balance-related things to allow people to add
their own effects and discuss the particular effects in separate PRs.

The goal is to have:

- Some default buffs for all food. Currently there's only Haste that
scales with food complexity.
- Some interesting buffs tied to food categories or specific dishes

This PR is a first part of this change.

- Adding an indicator to Cooking UI that food does something special
- Added **Spaghetti Carbonara** dish that gives Italian speech.

![image](https://github.com/user-attachments/assets/2035a97a-6048-4636-bd49-d1ea3390a50e)

- Added **Jupiter Cup Cake** that gives shock immunity instead of it
being randomly given by high-complexity dishes.

![image](https://github.com/user-attachments/assets/3260339d-0167-4840-9b76-10371959e16c)

- Made **Omelette Du Fromage** give French speech.
- Made **Mime Tart** give Mute trait
- Made **Clown Cake** give Waddle Walk trait
- Made **Stuffed Legion** give Ashstorm Immune trait

## Why It's Good For The Game

Foodening PR was incomplete, this PR is a step towards the completion.

## TODO

- [X] Pick a certain dish to give the French speech
- [X] Pick a certain pasta to give the Italian speech
- [X] Pick a certain dish for the shock immunity buff
- [x] Add an indicator to the cooking UI that a dish has a special
effect
- [x] Add more food effects per suggestions

## Changelog

:cl:
qol: Dishes with a special food effect are marked in the Cooking UI
add: New Spaghetti Carbonara dish that makes people Italian temporarily
add: Omelette Du Fromage makes people French temporarily
add: Shock Immunity is no longer a random level 4-5 food buff, but a
buff given by a new Jupiter-Cup-Cake
add: Mime Tart gives Mute trait
add: Clown Cake gives Waddle Walk trait
add: Stuffed Legion gives Ashstorm Immune trait
/:cl:
…station#85777)

## About The Pull Request

Closes tgstation#84651
Also made sure that if there somehow are multiple kitchen areas chefs
don't yell steamed hams line multiple times

## Changelog
:cl:
fix: Fake aurora caelus event no longer permanently paints space green
/:cl:
…rectional glass (tgstation#85760)

## About The Pull Request

forceMove made it possible for someone to get shoved into a
closet/crate/disposals bin through a piece of directional glass that was
located on said objects tile, resulting in a very cheesy way to GBJ
people.

## Changelog
:cl:
fix: You can no longer shove people into closets through directional
glass
/:cl:
…on#85236)

## About The Pull Request

Sooooooo this one's a mess.
First off, layering issues. Pipes, cables, and disposals currently
render over catwalks!

![image](https://github.com/user-attachments/assets/bfb6fc15-878c-4686-aace-57f0b9c6923a)
That's not great.

Looking into it, it seems we've moved the `CATWALK_LAYER` below the
`ABOVE_OPEN_TURF_LAYER`, where the catwalk layer is used for closed
catwalks.

https://github.com/tgstation/tgstation/blob/33e983ced1ac27143c4b87d8761277eea35a6d2a/code/__DEFINES/layers.dm#L148-L150
Which, well, we've *also* made it so all `undertile` stuff gets rendered
at `ABOVE_OPEN_TURF_LAYER` when below a tile.
So! Naively! We swap those around! Easy peasy lemon squeezy.
```dm
 #define ABOVE_OPEN_TURF_LAYER (12 + TOPDOWN_LAYER) 
 #define CATWALK_LAYER (13 + TOPDOWN_LAYER) 
```
And hey! Well!

![image](https://github.com/user-attachments/assets/42d7a8f3-5c17-4039-a76b-dbd789432156)
It's progress!
But as we can see in the bottom right catwalk tile, something's not
rendering right when they're below the tile...

Well, time to take a closer look at our `undertile` element... aaaaaand
would you look at that:

https://github.com/tgstation/tgstation/blob/74f9a4314138afcb04af3cfb452ff167105f022c/code/datums/elements/undertile.dm#L45-L48
We're setting EVERYTHING to the `FLOOR_PLANE` at
`ABOVE_OPEN_TURF_LAYER`, even the stuff that was already on
`FLOOR_PLANE` with its own layer like disposals or cables.
Meaning, layering fuckery ensues, we can't see shit.

So? We just make it only do that when we're not already on the floor
plane.
```dm
	if(PLANE_TO_TRUE(source.plane) != FLOOR_PLANE)
		SET_PLANE_IMPLICIT(source, FLOOR_PLANE)
		source.layer = ABOVE_OPEN_TURF_LAYER
```
This solves it!

![image](https://github.com/user-attachments/assets/f930bd66-87eb-433e-8bf5-09706316ace4)
Progress!

![image](https://github.com/user-attachments/assets/f2f246a2-8524-4186-9ac3-07ac7dcf4288)
...Kind of.
The _layering_ is solved, but unscrewing and rescrewing them seems to
cause pipe caps to manifest out of nowhere!
This _sucks_ for debugging, y'know?
Anyhow, this is based on two different things: an order of operations
issue and catwalks just not being accounted for.

First off! Order of operations.
On `Initialize(...)`, the base `/obj/machinery/atmospherics` registers a
proc that updates pipe caps on `COMSIG_OBJ_HIDE`:

https://github.com/tgstation/tgstation/blob/33e983ced1ac27143c4b87d8761277eea35a6d2a/code/modules/atmospherics/machinery/atmosmachinery.dm#L114-L115
Meanwhile, `/obj/machinery/atmospherics/pipe`, adds the `undertile`
element on its `Initialize(...)`... AFTER calling the parent.

https://github.com/tgstation/tgstation/blob/33e983ced1ac27143c4b87d8761277eea35a6d2a/code/modules/atmospherics/machinery/pipes/pipes.dm#L31-L35
...Which then registers its own proc on `COMSIG_OBJ_HIDE`...

https://github.com/tgstation/tgstation/blob/74f9a4314138afcb04af3cfb452ff167105f022c/code/datums/elements/undertile.dm#L26
This meant that, well, the proc that generates the caps was being called
*before* undertile had a chance to chance to remove the
`TRAIT_UNDERFLOOR` trait... which pipe caps use to work out when to
generate.

https://github.com/tgstation/tgstation/blob/33e983ced1ac27143c4b87d8761277eea35a6d2a/code/modules/atmospherics/machinery/atmosmachinery.dm#L650-L652
So, we swap this around by moving both to a `setup_hiding()` proc which
allows the pipe to register its behaviours before calling the parent and
it register its, without needing to register it before calling the
parent `Initialize(...)`. Cause that's ugly.
Now we're generating pipe caps on catwalks!

But! That brings us perfectly to the next bit. Cause those pipe caps,
even if shown when the tile is open, look *ugly*.
Why, when we open a catwalk, are we having our pipes suddenly extend
onto the neighbouring tiles and catwalks and going down into them from
the top? Arguably, these should behave like they're below tiles, because
they logically are even if not technically so.
Well, actually, we already have a similar situation with bare plating.
It's not applying `TRAIT_UNDERFLOOR`, but also the pipe caps shouldn't
be behaving like they're above a tile, because that'd be ugly- and
that's what it does!

https://github.com/tgstation/tgstation/blob/33e983ced1ac27143c4b87d8761277eea35a6d2a/code/modules/atmospherics/machinery/atmosmachinery.dm#L654-L655
So, we just apply a second check there, `iscatwalkturf(...)`
```dm
	var/turf/node_turf = get_turf(node)
	if(isplatingturf(node_turf) || iscatwalkturf(node_turf))
		continue
```

And? Well!

![image](https://github.com/user-attachments/assets/f297136e-f62e-452b-b711-2f3b69462859)

![image](https://github.com/user-attachments/assets/a3f2df8b-3e22-4474-af32-7e858382f63f)

![image](https://github.com/user-attachments/assets/347a2c3b-8302-47b8-a376-41228fbe537a)
There we go! There's no weird layering, there's no pipe caps where there
shouldn't be, pipes behave like those on catwalks are actually under a
tile.
It looks _clean_.
...

Well, for however clean we can get it to be without making sprites for
the opened catwalks but without the integrated plating so we can make an
overlay and have the pipes/cables/disposals not spontaneously go over
the edges of the catwalk when opened. Or making the under sprites only
have the attachment points in the corners, so it looks like the
pipes/cables/disposals are going over plating instead of what looks like
a raised edge.
## Why It's Good For The Game

Fixes tgstation#84789.
Fixes tgstation#82622.
Screwing open a catwalk suddenly generating pipecaps on neighbouring
closed catwalks and tiles with pipes under them looks weird.
## Changelog
:cl:
fix: Fixed pipes/cables/disposals rendering above closed catwalks.
fix: Fixed catwalks covering pipes generating illogical pipe caps when
screwed.
fix: Opened catwalks are no longer assumed to be above-floor for the
sake of generating pipe caps.
/:cl:
## About The Pull Request

1. Silicons now able to invalidate crimes, because... they have armory
access too.
2. After citation being paid off there will be no more broken 0 in sec
records
3. After citation being paid off it will be invalidated automticaly
4. Crime authors can invalidate crimes, issued by them.
5. In case of invalidation, crime now shows who voided it
6. Also fixing bug with editing crime description
<details>
<summary>Screenshots</summary>

![image](https://github.com/user-attachments/assets/d6635dd2-87a8-47d6-a7eb-269c08fbdcf5)

![image](https://github.com/user-attachments/assets/8d739e57-24a5-4d58-8a87-47344a04b46c)

![image](https://github.com/user-attachments/assets/c000caff-76c7-484d-bf8f-57a2946e93c4)

</details>

## Why It's Good For The Game

Thats few fixes and QoLs features.
If someone want to argue about:
1. Synths: man they was able to issue crimes which is more impactfull +
now voiding is recorded
2. Authors: they had ability to edit name and description, why can't
delete?
3. Voiders: how offen do you use invalidate button? How many of those
uses you wanna hide from sec?
## Changelog
:cl:
fix: Strange zeros in paid off citations on sec records
fix: Now invalidating citations works
fix: You can change crimes description
fix: Synths have 'armory access' for sec records logic
qol: Paying off citation now automaticaly voiding it
qol: Crime issuer can void the crime without armory access
qol: In case of invalidation crime shows who voided it
/:cl:
This repurposes the redundant `mobtype` var on the ERT datum. Originally
used to store the typepath for what mob the ERT would spawn (which was
unchanged on any of the other datums), it is now null by default and can
be modified in the summon_ert verb menu. If left blank, it will default
to humans, but it can be set to any humanoid species.

![image](https://github.com/user-attachments/assets/8caa01e3-dabf-4971-ba38-68138fb66eae)

As stated previously, mobtype was redundant, as it would either always
spawn humans (human authority would immediately humanize the spawned
mob) or be overridden by the preferences of the player being spawned.
Rather than making it a hardcoded value and deleting the var, I've
elected to repurpose it for further ERT customization.

Moth ERT, Moth ERT, Moth ERT.
:cl: Rhials
admin: You can now choose the humanoid species spawned by an ERT summon
in the summon menu.
/:cl:
## About The Pull Request

This one's a bit complex, stay with me here.

So, the ERT system has support for enforcing all ERT members to be
human, or if they will be spawned as their selected species.


![image](https://github.com/user-attachments/assets/14aeaabc-ac47-44dd-811d-a25525d926ea)

This addresses plasmamen by including plasmamen outfits that are
equipped prior to the actual outfit they're given, added in tgstation#56987.


![image](https://github.com/user-attachments/assets/2b3192f9-2aa7-48eb-8ce3-ff58fa0883e8)

Despite this support, plasmamen never spawn as plasmamen, as they are
missing the `ERT_SPAWN` changeflag. This is because as the body is
created, the ERT spawning system human-ifies them to prevent them from
exploding. This system existed in place prior to tgstation#56987, but it didn't
work.


![image](https://github.com/user-attachments/assets/6b803c80-ded6-48d6-94a6-781efda89642)

Fortunately(?) tgstation#58870 fixed it, but in doing so nullified the work done
in tgstation#56987 as plasmamen could no longer be plasmamen when the
`plasmaman_outfit` check was reached. They had already become human.

If this reads a bit weirdly its because this was originally just going
to be an issue report. I finished writing it and decided "well why not
just fix it instead dorkus".


![image](https://github.com/user-attachments/assets/dd4b74af-b89e-4ecf-8bb4-0d3199a52649)
## Why It's Good For The Game

Fixes a problem caused by, ironically, a logic fix.
## Changelog
:cl: Rhials
fix: Centcom ERT hiring standards have been expanded to include
plasmamen, again.
/:cl:
## About The Pull Request
Hooked the switch sound on `ui_act`:
- RCD
- RPD
- Plumbing constructor
Added pickup and drop sounds for:
- RCD
- RPD
RPD also does the click sound when placing things.


https://github.com/user-attachments/assets/e6c2cb76-6a0a-4db9-9c25-961d41b84516

## Why It's Good For The Game
Immersion.
## Changelog
:cl: grungussuss
sound: added new sounds for RCD, RPD and Plumbing Constructor.
/:cl:
## About The Pull Request
This PR adds a treasure chest that can be fished from the ocean if
you're lucky enough (or have enough explosives or lobstrosities to do it
for you). The treasure chest is basically a mystery box (like the ones
from the deathmatch) with a couple catches; the treasure chest can be
opened up to 18 times in total before breaking down, however, it can
only be opened up to 3 times per spaceman, encouraging the player to
share it with others.

Here the possible loot by the by:
- A toolbox containing a master fishing rod, all the hooks and reels,
fish feed, an experi-scanner, an aquarium kit and a can of super baits
- A box containing a lazarus injector, a cup and a bottle of strange
reagent which you can use to revive fish now
- A circuit board for a pre-emagged fishing portal generator
- A master fishing rod
- A can of super fishing baits
- A fish case containing Tiziran fish
- A fish case containing Syndicate fish
- An old, yet fairly strong cutlass
- An old laser gun which fires only 5 shots before running out
- A crank laser musket
- A smoothbore disabler
- A surplus bolt action rifle
- A ration pack
- A can of squid ink
- A bottle of aged rum that forces you to switch to the piratespeak
language
- A money bag with some doubloons inside
- A piratespeak manual
- Pirate armored coat
- Pirate armored hat
- A pre-loaded cannon
- Four trash cannon balls
- Four cannon balls

## Why It's Good For The Game
Mystery boxes are fun, from the little fanfare they play to the
potential loot they can give, and I had an old treasure chest I had
sprited for fun years ago around so I've come up with an entertaining
idea. If you think the loot list is a bit too hot, I can cool it down a
bit.
Also yeah, I wanted to make fish revivable with strange reagent, since
you can already do it with lazarus injectors even though using a lazarus
injector for this would be a severe waste of mining points.

## Changelog

:cl:
add: Added a treasure chest you can rarely fish from the ocean/beach,
with loot being a mix of fishing and piratey stuff.
add: You can revive fish with strange reagent now.
/:cl:
)

## About The Pull Request

Currently, if you remove someone's BB status, and there's no more
members on the team - the empty BB team will still exist, and appear on
the roundend report.

## Why It's Good For The Game

No reason for empty teams to exist, and they clog up the roundend
report.

## Changelog
:cl:
fix: Empty blood brother teams will now be cleaned up, instead of
clogging up the roundend report.
/:cl:
## About The Pull Request

Checks if you're deaf before playing either the radio send sound, or the
receive sounds.
Fixes tgstation#85452

Additionally removes a repeated suicide_act for suiciding with a radio.
Other existing act is @ R558-R560

## Why It's Good For The Game

Can't hear a radio bloop if you can't hear.

## Changelog



:cl:
fix: You can no longer hear radio sounds if you're deaf.
/:cl:

---------

Co-authored-by: Ghom <[email protected]>
…ion#85904)

ai controllers would have the wrong status when moving z levels

fixes ai controllers incorrectly idling when changing z level

:cl:
fix: fixes ai controllers incorrectly idling when changing z level
/:cl:
## About The Pull Request

Ever since Clarkes could pick up boulders they've been broken if you
ever collected one. The UI would break and all your precious minerals
would be trapped inside the Clarke, only being obtainable if you broke
the Clarke itself.

This also updates the Clarke Storage to differentiate by ore name rather
than icon, as otherwise the lower quality boulders would be mixed with
normal boulders with no way to differentiate them in the UI.


## Why It's Good For The Game

Fixes tgstation#84364
Before:
<details>
  <summary>Before</summary> 


https://github.com/user-attachments/assets/f90daf35-733a-42bd-8af5-7e6712f09fba

</details>
<details>
<summary>After</summary> 


https://github.com/user-attachments/assets/4510803c-6dee-403e-a051-966a8a66c17c



</details>


## Changelog

:cl: TwistedSilicon
fix: Clarkes will no longer become unable to dump ores upon picking a
boulder up. Mine away.
/:cl:
## About The Pull Request
Following the PR that split the slowdown between spacesuits and helmets,
the CentCom special ops 'space suit' (officer's beret and winter coat),
which previously had no slowdown, gained a slowdown on the beret only.
Considering it is an adminspawned outfit and cannot be found anywhere,
there shouldn't be any balance issues with it.
## Why It's Good For The Game
The CentCom winter coat had its slowdown removed, why wouldn't the
beret? Seemed like an oversight from the original PR.
## Changelog
:cl:
qol: The CentCom officer's beret has had its slowdown removed to be in
line with the winter coat.
/:cl:
…d sticks of chalk (tgstation#85918)

![image](https://github.com/user-attachments/assets/1c698b33-3cd9-477c-b7a0-4a1ebb009122)
*The Miami Mutilator is at large once again. Thank god we have such
hardboiled detectives as Manny Pardo on the case.*

This pull request allows for players to use white crayons, which have
now been renamed to sticks of chalk, to generate outlines of dead or
"dead" bodies found throughout the station in an attempt to let
detectives actually set up crime scenes as opposed to, more typically,
just causing them.

Players will attempt to draw a chalk outline if the target is a mob and
the mob is dead (or fake-dead), using a single charge of the
crayon/chalk. Also, adds a quick macro so that we can get the proper
left/right orientation of the dead mob for reference.

Detective should have more thematic, simple ways to organize crime
scenes in-round, and what better way to do that then through existing
items and mechanics that we already have. Also, I was 100% shocked to
learn that these have always been white crayons as opposed to sticks of
chalk, which certainly seems odd. In essence, this change doesn't really
let you do anything "new", but just makes it easier and simpler to do so
in a regular round without nearly as much fiddling.

This mechanic exists exclusively within the afterattack of sticks of
chalk as opposed to all crayons for thematic reasons, but I'm not 100%
sold on that and it would be simple to move over to all crayons if
people feel strongly about that.

:cl:
add: White crayons (Renamed to Sticks of Chalk) may now be used on dead
bodies to draw a body outline onto the ground easily.
/:cl:

---------

Co-authored-by: Zephyr <[email protected]>
## About The Pull Request
The idea came up during the last blackmarket-related PR (tgstation#85066), when
the original creator @TheChosenEvilOne came and said the LTSRBT was
originally supposed to allow players to sell stuff on the blackmarket. I
replied saying the idea has some potential, and then other github users
followed, also saying it's a good idea.

So, here we are, adding another feature to the LTSRBT, to let you
provide other players with potentially knock-offs and fraudulent (or
genuinely honest) items on the blackmarket.

How you do it is fairly simple: left click the machine to open it, place
the item inside, then right-click to open the UI. From there you can
adjust the name, description and price of the market item. Finally,
click on the "Place on Market" button twice, pay a 30 credits fee, and
it's done. You have an item on the market, and once it's sold, 85% or
the earnings (the price) will be deposited on your account.

By the by, the icon of the item you're trying to sell will also show up
on the market. You should get a picture of what you're getting before
falling for an obvious scam.


![screenie](https://github.com/user-attachments/assets/fae70c25-ab46-4ceb-af9e-f4818d8a1c68)

By the by, it's a cardboard cutout.

## Why It's Good For The Game
This fits the design of the LTSRBT and blackmarket in general. 

## Changelog

:cl:
add: You can sell items on the blackmarket with the LTSRBT now.
fix: Added some checks to prevent the swapper device and bluespace
anomalies from theorically being able to send things and people to
nullspace.
/:cl:

---------

Co-authored-by: ArcaneMusic <[email protected]>
…ion#85894)

Also, this PR polishes the clown frame. The honkin' red nose looked
pretty malformed.

Fixing a few issues with paintings.

:cl:
fix: paintings now drop canvas and frame when knocked off the wall.
/:cl:
## About The Pull Request

wheelchairs + mobs that are ridden no longer double their movement
cooldown if you moved diagonally

## Why It's Good For The Game

this times two multiplier i have no clue why it exists and it apparently
seems to only be there to fuck you over if you move diagonally
this makes moving in wheelchairs and on ridden mobs slightly easier

## Changelog
:cl:
balance: wheelchairs no longer double your movement cooldown if you
moved diagonally
/:cl:
…egistering signals (tgstation#85937)

## About The Pull Request

sometimes runtimed due to reassigning signals and it has been driving me
insane

## Changelog
:cl:
fix: Fixed soapbox component sometimes runtiming roundstart
/:cl:
## About The Pull Request

Vomiting caused by disgust now deducts 50 disgust from you. This should
prevent chainvomiting causing infinite knockdowns and slowdowns.

## Why It's Good For The Game
This is primarily intended as a nerf to rust heretics, although it also
serves as semi-balance/qol to other sources of disgust. Rust tiles apply
10 disgust per tick with blade applying 50/100 on detonation, which
leads to chain vomiting resulting in endless knockdown.


![изображение](https://github.com/user-attachments/assets/5f184435-85e2-4c55-8fb5-ad24fec191a7)

Statistics also support this, as rust is currently the strongest heretic
path to go down, both pickrate and (almost) win % wise. Initial rework's
author also supports this change, as chain vomit knockdowns were not
intended to be this prevalent or strong.

## Changelog
:cl:
balance: Vomiting from disgust now removes 50 of it from you.
/:cl:
… can now be recharged with plasma. (tgstation#85950)

## About The Pull Request

PACMANs now can produce 10-40kW of power and take 180 ticks to go
through a sheet instead of 60. This does not allow them to power the
station on their own like in the good ole days, but they're still
capable of powering a section of a department(maybe even all of it if it
doesn't eat too much power)

Inducers can be recharged with plasma, 15kJ per sheet. Cargo-ordered
inducers now also start with an upgraded megacell (x2.5 of a normal one)
instead of a regular upgraded battery (x5 of a normal one and half of a
megacell) (it barely can charge anything)

## Why It's Good For The Game

PACMANs are currently in a very sad state as they are borderline useless
after power changes, and don't see much use beyond kickstarting the SM
if emitters don't have enough juice. This should bring them a bit into
action while not allowing them to power the entire station like before.
As for emitter changes, introduction of megacells rendered them almost
entirely useless as you cannot charge megacells you print and using
normal batteries for charging APCs is a joke. This should allow people
to recharge their APCs and machinery in a pinch. Inducer change has been
approved by Watermelon a while ago, while PACMAN buffs have been
mentioned but these are significantly smaller than discussed with him.

## Changelog
:cl:
balance: PACMANs now have significantly increased power output and take
longer to consume a single sheet
balance: Inducers can now be recharged with plasma
balance: Inducers ordered from cargo now start with upgraded megacells
instead of upgraded batteries
/:cl:
Hardly3D and others added 24 commits September 9, 2024 18:22
…#86103)

## About The Pull Request
Gives the Plumbing Constructor and Rapid-Tiling-Device the same pick up
and UI interaction sounds as the RCD's (Plumbing Constructor already had
the UI one actually)

Additionally fixes an issue where ghosts could interact with the RCD,
Plumbing Constructors and RPDs


https://github.com/user-attachments/assets/c743981c-0231-45c4-b003-e8aa89b8fc12



https://github.com/user-attachments/assets/4dc51f6d-eb4d-40c7-bf4e-ed29053796d9



## Why It's Good For The Game
Both of them are meant to be modified RCDs, so it makes sense to give
them the same sounds.


## Changelog
:cl: Hardly
sound: Plumbing Constructor and Rapid-Tiling-Device now has RCD's pick
up and UI sounds
fix: Fixes ghosts being able to interact with the RCD, RPLD and RPDs
/:cl:
## About The Pull Request
Adds sounds to conveyor belt switches



https://github.com/user-attachments/assets/1d399bea-262e-4ef1-8ee5-d10abad09ddd
## Why It's Good For The Game
Helps with the immersion, especially in cargo where where the techs are
often switching it on and off

## Changelog
:cl: Hardly
sound: Added sounds for conveyor belt switches
/:cl:
## About The Pull Request
https://imgur.com/a/bJkpusB
## Why It's Good For The Game
It sounds cool
## Changelog
:cl: grungussuss
sound: being sacrificed by a heretic is now spookier
/:cl:
## About The Pull Request
<details>
<summary>Video comparisons</summary>


https://github.com/user-attachments/assets/0dc6d936-6c43-4696-9488-ced2a6f63cd2


https://github.com/user-attachments/assets/17072a5f-3254-40a1-bfaa-216b7613ece5

<details>
<summary>OUTDATED</summary>


https://github.com/user-attachments/assets/6ec5393c-63cf-4d05-9b53-a6a925090c96

</details>
</details>
<br>
</details>
Took me a long time

## Why It's Good For The Game

Previous sound was very grating on the ears so we made a more light one.

## Changelog
:cl: grungussuss and kayozz
sound: gravity generator has a new sound
/:cl:
## About The Pull Request

Fixes NovaSector/NovaSector#4241

Just simply reuses the sound effects for dropping leather goods that was
added here: tgstation#85254

## Why It's Good For The Game

Muh immersion

## Changelog

:cl:
fix: wet hides and hairless hides no longer make metal clanging noises
when picked up/dropped
/:cl:
https://github.com/user-attachments/assets/b756bc49-70f0-4c86-8b04-5f0566d606a2

I've made the sound really quiet (quieter than most other sounds in the
game) so it shouldn't be too annoying, there is 7 variants of the clicks
so ear fatigue shouldn't strike too bad.
Clicky sounds release a dopamine surge for players and gives you audio
feedback when you're doing something, it also triggers when someone is
else working at a computer which tells you that they're using it.
:cl: grungussuss
sound: computers now make clicky clacky sounds
/:cl:
## About The Pull Request
`mid_sounds = list('sound/machines/computer/computer_mid1.ogg' = 1,
'sound/machines/computer/computer_mid2.ogg' = 1)`
These actually don't play if you don't set the value to 1
- added a disclaimer on this
## No one noticed this!!
## Changelog
:cl: grungussuss
fix: after 4 years, computer sound loop now works properly
/:cl:
## About The Pull Request

Radio message sounds now have cooldowns on when they play. The timer is
separate for "important" and regular messages.

The cooldown is half a second long, approximately the length of the
default message noise.
## Why It's Good For The Game

Closes tgstation#85817

Reduced audio spam means less people getting overwhelmed by the
aforementioned audio spam.
## Changelog
:cl: Rhials
sound: "radio message received" audio now has a brief cooldown. 
/:cl:
## About The Pull Request

The other day someone posted a story on the tgstation forums about being
spawned as a sentient "passive carp" from slime gold cores and then
biting someone to death which mildly annoyed me because "passive carp"
is a mob which exists purely for a shuttle event, to make them less
dangerous when passing through the area.

And _also_ because once sapient the passive carp was, of course, not
passive at all. If it was a passive carp they wouldn't have had to
appeal a note, because they wouldn't have been able to bite that guy.

There were two solutions for this.
The obvious one is "remove this mob from the gold slime core pool".
The one I chose instead was "give this mob more divergent behaviour".

Now instead of "passive carp" it is called a "false carp", which is a
carp-like creature that is incapable of harming humans (it has the
pacifist trait and does no damage).
It is spawned from the _friendly_ gold core reaction instead of the
hostile one.
It will be chill until someone attacks it or it sees someone attack
another false carp, then all of them will run away from that person.

Additionally I fixed a bug where its teeth reappeared in some animation
states.
And another bug where crab AI just didn't work.

## Why It's Good For The Game

If you see a mob called "passive carp" it should do what it says in the
name.

## Changelog

:cl:
balance: Pacifist carp can now be spawned from the friendly gold core
reaction, and no longer appear from the hostile one.
fix: The teeth of toothless carp will not occasionally reappear
fix: Crabs will now run from attackers larger than them and attack
things smaller than them, as intended.
/:cl:
## About The Pull Request
Vortex cores were set to 1 max in order to specifically limit a beam
rifle from ever being made more of in a round. This PR sets the amount
of vortex cores needed for the Event Horizon Anti-Existential Beam Rifle
to two, and increases the max Vortex cores capable of being made to 3 in
order to give leeway to use vortex cores for other things and not have
it only capped at 1.

## Why It's Good For The Game
Still stops the ability to create multiple black hole rifles, but allows
for more vortex cores to be made for other needs.

## Changelog
:cl:
balance: Changed max refined vortex cores from 1 to 3. Changed the Event
Horizon Anti-Existential Beam Rifle recipe to require 2 vortex cores.
/:cl:
…85994)

This makes it so the "morgue doors" (more often seen on the curator's
study or chaplain confession booth, tbh) also have
`/datum/component/redirect_attack_hand_from_turf`.

Consistency, and just nice to have.

:cl:
qol: Clicking floor tiles now also closes curator/morgue doors, like
with normal airlocks.
/:cl:
## About The Pull Request

ANIMATION_PARALLEL and random loop was messing it up heavily, plus you
only swayed to one side. Now its smoother, no longer teleports you
around and you don't snap to the center of the tile the moment you
unstagger

## Why It's Good For The Game

Current stagger animation is rather ugly and jittery, this should help
fix its visuals.

## Changelog
:cl:
fix: Stagger animation is no longer horrilbly jittery
/:cl:
…#86070)

Plexagon Crew Manifest has been made into a publicly accessible and
roundstart installed PDA app instead of being restricted to heads,
security and a few odd medical jobs. For this, it lost its major
Detomatix resistance which has been added to security records (minor
resistance) and status display control (major resistance)

To ensure that noone has to wipe their PDAs roundstart, its size on PDA
drives has been halved.

Crew manifest can be easily accessed from the messenger app, but without
nice formatting that plexagon has. The app itself does not have any
capabilities beyond reading crew manifest and printing it out on paper
from consoles, neither of which are something that cannot be already
done with ease. I believe this is a remnant from old PDA days and
doesn't really deserve to stay.

:cl:
balance: Plexagon Crew Manifest is now a default PDA app for everyone,
and is free.
balance: Plexagon Crew Manifest no longer provides Detomatix resistance,
but security records and status display control now do.
/:cl:
…es are available (tgstation#86012)

## About The Pull Request

I was trying to fix an unrelated bug with abductors on a downstream that
I'm not even sure exists on here and found another unrelated bug.

Turns out polling always returns the list of a requested size, except it
fills in the empty spots with nulls.

![image](https://github.com/user-attachments/assets/9a9c8f0f-32eb-4106-98a6-2c61960960ca)

This makes this check completely broken, and runtimes abductors trying
to spawn with null clients, making the one lone abductor spawn naked on
the shuttle.

![image](https://github.com/user-attachments/assets/67707002-5898-4b40-99fd-24f8c8b9a167)

There might be an issue open for this but I was unable to find one

## Why It's Good For The Game

Uuuuh bugfix good.

See it working here

![image](https://github.com/user-attachments/assets/3be58814-ce4e-4b0f-a8d5-ec1efffb46df)

![image](https://github.com/user-attachments/assets/bd5ed3d0-60cf-44ac-88bd-822f1a2ea7e7)

## Changelog

:cl:
fix: SSPolling no longer fills in the candidate list with empty entries
to guarantee it returns a list size of amount_to_pick
/:cl:
…#86057)

## About The Pull Request
these were 2 seperate issues to do with each's AI. spores should only be
looking for corpses they can infect and slimes would endlesly attack
people they can no longer feed on

## Why It's Good For The Game
closes tgstation#86000

## Changelog
:cl:
fix: fixes blob spore and slime AI endlessly attacking the dead
/:cl:
## About The Pull Request

Add salt electrolysis. You need to mix ethereal blood with table
salt/sodium chlorine/NaCl and you get sodium and chlorine.

## Why It's Good For The Game

Add ghetto chemistry way to obtain sodium

Add new reaction for ghetto chimestry

![20_5](https://github.com/user-attachments/assets/9e4108ba-fb2e-4f47-a6d3-8e98f97292ff)


## Changelog

:cl:
add: Added salt electrolysis reaction
/:cl:

---------

Co-authored-by: Aki Ito <[email protected]>
…86061)

## About The Pull Request

Closes tgstation#86045 by making inorganic or geneless species not be affected by
bioscrambler anomalies

## Why It's Good For The Game
Currently this only affects voidwalkers which are now also considered
geneless, but should ensure that we don't end up with bioscrambled
semiorganic skeletons or synths later down the line if something akin to
those gets added and ends up missing limb/organ tags.

## Changelog
:cl:
fix: Bioscrambler anomalies no longer affect inorganic species
/:cl:
## About The Pull Request

A define change was missed when we made QM a full-fledged member of
command, so it was showing up in the wrong section on Plexagon.

The access was also called "Quartermaster" instead of matching the
naming convention of "$abbreviation Office", so I fixed that.

Fixes tgstation#86073.


![image](https://github.com/user-attachments/assets/d3289b7b-e639-43d4-9adf-47cbce9e579a)
## Why It's Good For The Game

Makes it easier to find QM access at a glance (even if you're probably
just going to use the drop-down).
## Changelog
:cl: Vekter
fix: Fixed an issue causing Quartermaster office access to show in the
wrong area on Plexagon Access Management.
fix: Fixed an inconsistency in the naming for QM Office access.
/:cl:
## About The Pull Request

It didn't check if the reagents pool actually had the reagent passed
(ie, it did not check the result of `has_reagent`)

Did some cleanup while in the area.

## Changelog

:cl: Melbert
fix: Juicing and grinding should break less
/:cl:
…gstation#86023)

## Why It's Good For The Game
Always have to move revolver to the last slot, and if you don't, the
hotkey will give you a speedloader instead, which is very annoying
sometimes(especially in deathmatch).

:cl:
qol: revolver in roundstart holsters is on the last slot and not on
first
/:cl:
…n#86082)

## About The Pull Request

Fix that screwing radio headset in combat mode don't give you encryption
key and also don't do anything.

## Changelog
:cl:
fix: fixed that screwdriwing radio headset in combat mode don't do
anything.
/:cl:
## About The Pull Request
I removed the flag accidentally at some point when adding aged rum.
EDIT: They say it wasn't me.

## Why It's Good For The Game
Fixes tgstation#86129 

## Changelog

:cl:
fix: Rum can be synthetized again.
/:cl:
…d. (tgstation#86092)

## About The Pull Request
Syndicate Sleepers are only found on syndicate bases and shuttles, as
well as one Interdyne-themed space ruin with zombies, however when
deconstructed, they drop a generic sleeper board. This PR fixes that.

Syndicate Sleeper have also been aptly renamed so that it shows on the
circuit board, otherwise it'd be named just like the normal sleeper
board.

## Why It's Good For The Game
Consistency foremost. Balance is not an issue as sleepers weren't as
great as they once were. They don't cure wounds and several other
ailments that medical can with its starting tools, plus the syndie
version is fairly rare to find and get your hands on.

## Changelog

:cl:
fix: Syndie sleepers now drop the appropriate syndicate sleeper boards.
/:cl:
@carpotoxin carpotoxin marked this pull request as ready for review September 9, 2024 17:22
@carpotoxin carpotoxin closed this Sep 9, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.