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

30-09 merge #101

Merged
merged 101 commits into from
Sep 29, 2023
Merged

30-09 merge #101

merged 101 commits into from
Sep 29, 2023

Conversation

Iajret
Copy link
Collaborator

@Iajret Iajret commented Sep 29, 2023

2f45116

carpotoxin and others added 30 commits September 30, 2023 01:33
* [Removal] Removes the wall-mushroom

* sound
…cupation is called [MDB IGNORE] (#23884)

* Fixed overflow role not actually being overflow anymore after ResetOccupation is called (#78556)

## About The Pull Request
See title. Calling ResetOccupation doesn't re-apply the overflow role
correctly so it has reduced slots when it shouldn't.

## Why It's Good For The Game
Bugfix

## Changelog
:cl:
fix: Fixed the overflow role having less slots than it actually should.
/:cl:

Co-authored-by: Watermelon914 <3052169-Watermelon914@ users.noreply.gitlab.com>

* Fixed overflow role not actually being overflow anymore after ResetOccupation is called

---------

Co-authored-by: Watermelon914 <[email protected]>
Co-authored-by: Watermelon914 <3052169-Watermelon914@ users.noreply.gitlab.com>
… welding goggles when hit by it. (#23886)

* [MODULAR] Fixes a bug with the steampunk goggles that deletes items that aren't welding goggles when hit by it.

* Update modular_skyrat/modules/customization/modules/clothing/~donator/donator_clothing.dm

Co-authored-by: GoldenAlpharex <[email protected]>

---------

Co-authored-by: GoldenAlpharex <[email protected]>
* Successful restart vote restarts on current map (#78510)

## About The Pull Request

A successful restart vote will revert any pending map change. Also
performs the end round task so persistence data gets saved.

## Why It's Good For The Game

Admin request for lowpop hours.

## Changelog

:cl: LT3
admin: Successful restart votes will now restart on the current map
code: End round and persistence data will be saved before executing
successful restart vote
/:cl:

* Successful restart vote restarts on current map

---------

Co-authored-by: lessthanthree <[email protected]>
* Suspected status is now teal (#78516)

## About The Pull Request
recolors the suspected status to teal
## Why It's Good For The Game
now the security records color and the hud color match, which is good
for consistency

![image](https://github.com/tgstation/tgstation/assets/124026007/f832db93-e160-4742-9868-dbc4e8bd9ad7)

## Changelog

:cl:
image: the security records suspected status is now teal instead of
orange
/:cl:

* Suspected status is now teal

---------

Co-authored-by: Teagarden <[email protected]>
* Patches some cargo shuttle Centcom exploits. (#78540)

## About The Pull Request

Globally prevents anything blacklisted from actually getting to the
Centcom z-level by shipping blacklisted items back to their location of
origin just before the shuttle docks at Centcom.

Everything rejected in this way is logged and admins are given an alert
to let them know something funky went on.

![image](https://github.com/tgstation/tgstation/assets/24975989/09717f16-1115-45f2-8f8b-85b316ed4bc6)

![image](https://github.com/tgstation/tgstation/assets/24975989/af149939-1cf1-49f1-b458-7d5d4ff6ae89)
## Why It's Good For The Game

Hopefully universally patches all current methods of getting to the
Centcom Z-level via getting on the cargo shuttle mid-transit.

Individual methods to accomplish this can still be patched individually,
but this tries to blanket prevent such exploits from working on a more
fundamental level.
## Changelog
:cl:
fix: Centcom now rejects contraband that somehow makes it way onto the
cargo shuttle mid-transit and returns it.
/:cl:

* Patches some cargo shuttle Centcom exploits.

---------

Co-authored-by: Timberpoes <[email protected]>
* Tweak greyscale JSON test error message (#78469)

## About The Pull Request

Slightly changes the wording of the greyscale JSON check error.

The previous creates messages such as "Expected 1 but only found 3."
which implies it isn't finding enough, which isn't always the case.

## Changelog

:cl: LT3
spellcheck: Improved wording in greyscale JSON error message
/:cl:

* Tweak greyscale JSON test error message

---------

Co-authored-by: lessthanthree <[email protected]>
* Adds a frog pAI holoform (#78537)

## About The Pull Request
It has been over a year since we have got a new pAI holoform, so I
present to you, the fwog.

![image](https://github.com/tgstation/tgstation/assets/20053168/3e1a77f0-e7b6-4aed-8401-c510afbcd2c5)
More importantly, it can be worn on the head like a normal frog.

![image](https://github.com/tgstation/tgstation/assets/20053168/795dcfd2-d576-4722-ab6f-edbed5b8fb36)

All of the new icons

![image](https://github.com/tgstation/tgstation/assets/20053168/b84ceca5-ff27-4a3a-a023-1d350762148b)

## Why It's Good For The Game
More holoform variety for pAIs is nice, especially one that can be worn
as a hat.
## Changelog
:cl:
image: adds a frog holoform for pAIs
/:cl:

* Adds a frog pAI holoform

---------

Co-authored-by: Alexis <[email protected]>
* Fixes halloween spooky meteors (#78543)

## About The Pull Request

This fixes the "spooky" meteors that get summoned during catastrophic
meteor waves during the Halloween event.

By adding a weight value to the SPOOKY meteor list, the meteor wave
spawning event process will properly pick_weight the path it's looking
for.
## Why It's Good For The Game

Fixes a runtime case I hypothesized might happen.
## Changelog
:cl: Rhials
fix: "Spooky" meteors will now properly spawn during halloween.
/:cl:

* Fixes halloween spooky meteors

---------

Co-authored-by: Rhials <[email protected]>
* Adds logging for first time user connections (#78525)

## About The Pull Request

Fikou asked me for this and I like fikou.

![image](https://github.com/tgstation/tgstation/assets/58055496/fdf99821-2404-45c4-ac09-85e29589a7ac)

## Changelog
:cl:
admin: First time user connections are now logged
/:cl:

* Adds logging for first time user connections

---------

Co-authored-by: LemonInTheDark <[email protected]>
…power transmission from the zaps, accounting for every factor. [MDB IGNORE] (#23887)

* [NO GBP]Zap strength is now measured in joules. NT CIMs will now display the power transmission from the zaps, accounting for every factor. (#78310)

## About The Pull Request
Zap strength is now measured in joules. Scales everything to account for
this.

NT CIMS will now display the zap power transmission in watts, instead of
a modifier. This will allow you to actually see how much power the
supermatter is generating accurately, without knowledge of hidden
multipliers. NT CIMs will also show the internal energy gain from heat
in eV/K/s, so you can easily figure out how internal energy gain works,
and how much energy gain it actually gives. The internal energy
measurement will also adjust its prefix. Internal energy is now a
measure of internal energy, rather than internal energy density,
removing the "/cm^3".

Here is what it looked like:
![Screenshot
(25)](https://github.com/tgstation/tgstation/assets/58013024/781323d4-db91-4a78-9a46-8152022993ed)

This image was created on an earlier commit where the numbers were wrong
due to a hidden multiplier that got removed later, so keep that in mind.

Also fixes inactive supermatters unnecessarily scaling delta time. The
high energy (>5GeV) additional zaps now also scale with delta time.

The code in this PR is absolute garbage trash and there are some major
issues, so I'm drafting this for now.
## Why It's Good For The Game
Makes it more clear what the factors add, and also how much power the SM
is releasing. Zap strength being measured in joules will simplify a lot
of things, making power balance more clear rather than guessimating.
Adjusting the prefix for internal energy is just the natural thing to
do. The per cubic centimeter part of internal energy would imply it is
energy density, however it is functionally not. It would probably
confuse people thinking the volume of the turf or the size of the
supermatter actually matters for what the internal energy does, when it
does not (except for gas absorption I guess, which changes heating/mol
requirements, but nothing else), so I am removing that part.
## Changelog
:cl:
qol: NT CIMs shows how much power the supermatter is releasing.
qol: NT CIMs internal energy will adjust its prefix.
qol: Energy displays (such as multitooling grid) will use the full range
of SI prefixes available, up to the peta prefix if you somehow managed
to reach that.
del: Removes the per cubic centimeter part of internal energy.
fix: Fix unnecessary delta time scaling on inactive supermatters.
fix: Fix high energy zaps not scaling with delta time.
fix: Fixes grounding rods lying about potential power you can generate.
code: Convert supermatter_zap() and tesla_zap() zap_str argument unit to
be in joules, and scales everything that uses that argument.
/:cl:

* [NO GBP]Zap strength is now measured in joules. NT CIMs will now display the power transmission from the zaps, accounting for every factor.

---------

Co-authored-by: Pickle-Coding <[email protected]>
* Stops metalgen destructing indestructible turfs (#78534)

## About The Pull Request

Adds a check to metalgen transmutation to allow for blacklisting of
types. Adds indestructible open and closed turfs to the blacklist to
prevent an exploit where they are transmuted to plasma and burned to
remove them.

## Why It's Good For The Game

Exploits are bad.

## Changelog
:cl:
fix: Metalgen can no longer be used to transmute indestructible turfs.
/:cl:

---------

Co-authored-by: Jacquerel <hnevard@ gmail.com>

* Stops metalgen destructing indestructible turfs

---------

Co-authored-by: Thunder12345 <[email protected]>
Co-authored-by: Jacquerel <hnevard@ gmail.com>
…stroyed [MDB IGNORE] (#23900)

* Fixes Intellicards in computers being deleted when the computer is destroyed (#78475)

## About The Pull Request

As described in #78467, if an Intellicard is inserted into a laptop or
stationary modular computer, and said computer is destroyed, then the
Intellicard (as well as any AI on it) is instantly deleted. This PR
makes the Intellicard get dropped instead. Closes #78467.
## Why It's Good For The Game

Bugs are bad.
## Changelog
:cl:
fix: Intellicards in computers are no longer deleted when the computer
is destroyed.
fix: Modular consoles can now be deconstructed by right clicking with a
wrench.
/:cl:

* Fixes Intellicards in computers being deleted when the computer is destroyed

---------

Co-authored-by: GPeckman <[email protected]>
* [no gbp] fixes blackboard speech error (#78551)

## About The Pull Request

i changed initial to list()

## Why It's Good For The Game

![image](https://github.com/tgstation/tgstation/assets/70376633/4c289c2e-8974-4c4e-9d91-f2502134165d)

## Changelog
i dont think runtimes are playerfacing

---------

Co-authored-by: Zephyr <12817816+ZephyrTFA@ users.noreply.github.com>

* [no gbp] fixes blackboard speech error

---------

Co-authored-by: jimmyl <[email protected]>
Co-authored-by: Zephyr <12817816+ZephyrTFA@ users.noreply.github.com>
* fix posibrains (#78584)

* fix posibrain

---------

Co-authored-by: jimmyl <[email protected]>
* Advanced Plastic Surgery 2.0, It's rare now. (#78504)

## About The Pull Request
A revival of #76508 which got closed due to it eating up genetics niche.
This PR fixess that issue by seperating the surgery into two. the normal
roundstart plastic surgery and advanced plastic surgery. both works
identically with the one exception being that the advanced one allows
the feature that the last PR tried to add. which is to allow surgery to
mimic people in photographs.
the regular one remains as-is.

The disk containing the surgery can be found in a lot of places, a
role-restricted item to doctors and roboticists for 1TC, as a rare maint
loot and BEPIS technode reward
## Why It's Good For The Game
Opportunity for more fun gimmicks, ammo for BB's and paranoia, staple of
SS13 gameplay.
This also retroactively buffs forensic scanners and records since it
really only changes your name and voice. You can change your hair all
you want but anything more than that is a trip to genetics. overall
allows for more engaging gameplay while not detracting from genetics
niche with how niche and rare it would appear in rounds.
## Changelog
:cl:
add: Adds an advanced plastic surgery procedure, allowing you to imitate
people in pictures. Simply hold a picture in your offhand of the person
you wish to imitate as while conducting the surgery! Remember, it's not
foolproof, it only changes your name and voice!
adds: You can obtain the disk containing the afromentioned surgery. as a
role-restricted item to doctors and roboticists for 1TC, as a rare maint
loot and BEPIS technode reward
/:cl:

---------

Co-authored-by: ATH1909 <42606352+ATH1909@ users.noreply.github.com>
Co-authored-by: MrMelbert <51863163+MrMelbert@ users.noreply.github.com>

* Advanced Plastic Surgery 2.0, It's rare now.

---------

Co-authored-by: Singul0 <[email protected]>
Co-authored-by: ATH1909 <42606352+ATH1909@ users.noreply.github.com>
Co-authored-by: MrMelbert <51863163+MrMelbert@ users.noreply.github.com>
* Fixes tackling issues with stun immune tacklers (#78494)

## About The Pull Request

When a human uses gripper gloves and such to perform a tackle, it does
some stuff with knockdowns. First, at the start of the tackle, the
tackler is given 1 or 2 seconds of knockdown. This knockdown bypasses
stun immunity. If the tackle and its rolled to be an expert or monster
tackle, then this initial knockdown is cleared. However, the knockdown
clearing does NOT bypass stun immunity. This ironically meant that stun
immune tacklers would remain knocked down when landing a monster tackle,
and it would cause a runtime because knocked down people can't grab.
This PR just makes the knockdown clear bypass stun immunity as well.
Closes #78441.

* Fixes tackling issues with stun immune tacklers

---------

Co-authored-by: GPeckman <[email protected]>
* Fixes map votes of only one choice (#78509)

## About The Pull Request

Unfortunately, back in #70340 (4085e792ab5716485d379ce5f3dcbbae1c3d0522)
which was declared to fix the issue of having only one map to vote for,
I cocked up a part of it. For some reason, the part where it states that
only one map could be voted for would only play on the emergency shuttle
leaving. I think I did this because of the fact that the mapvote would
auto-call, and this didn't really respect the fact that people would
also call their own votes with only one map to vote for. Thus, the vote
would fire with one map to choose for and there wouldn't be the message
on there being only one map to vote for that I added in the
aforementioned PR. This brings it back to the intended working
condition.

* Fixes map votes of only one choice

---------

Co-authored-by: san7890 <[email protected]>
* Fixes cigarettes smoking on any slot (#78544)

## About The Pull Request

#76881 allowed you to put cigarettes in a gas mask but removed the check
for, if the thing was a cigarette, making sure it was in your mask slot.

What this meant was that standing around with a cigarette in your hand
would still make you passively smoke it - although this is somewhat more
immersive to me as a former smoker, it also gets obnoxious having to set
the cigarette on a table or put it in my bag to avoid racking up the
ridiculously easy-to-accumulate nicotine addiction points you otherwise
get from even one cigarette in-game.

This just readds that check after the checks for gas masks/non-smoker
locations (which may also be broken but are beyond me right now - trying
to put a cigarette into a gas mask's filter* slot returns 'mask's mouth
is covered.')

* Fixes cigarettes smoking on any slot

---------

Co-authored-by: Higgin <[email protected]>
…#23908)

* Removes `CANPUSH` status flag from lavaland basic mobs (#78531)

## About The Pull Request

Title. This makes it so every lavaland mob is now unable to be pushed by
moving into them while on combat mode. Namely this helps with watchers,
as they have gained this vulnerability when they've got the basic bitch
treatment — it caused their _look away_ ability to be easily cancellable
by just pushing them. ~~you can still just fuckin' grab them to do that
and i think it's fair game~~

Lobsters and brimdemons are also affected, which i'm not sure how
exactly this affects their gameplay... but it is what it is.

## Why It's Good For The Game

Previous behavior restored, mobs stop being bullied by literally running
into them.

* Removes `CANPUSH` status flag from lavaland basic mobs

---------

Co-authored-by: Sealed101 <[email protected]>
* Removes unused ai detector camera mob (#78549)

it wasn't used anywhere for over a year (see #54832)

* Removes unused ai detector camera mob

---------

Co-authored-by: Sealed101 <[email protected]>
* initial

* apparently I am that dumb

* linebreak

* lemmie reword that

* as suggested

Co-authored-by: Bloop <[email protected]>

---------

Co-authored-by: Bloop <[email protected]>
…23918)

* basic mobs ranged attacks can check for friendly fire (#78451)

## About The Pull Request
basic mobs can check for friends in the way before firing a attack. if
they find someone in the way they will try to adjust their position so
their friends dont get hit by the projectiles

## Why It's Good For The Game
nice optional feature people can put on the monsters they create

## Changelog
:cl:
add: added ranged attack friendly fire checks for basic mobs. minebots
and hivebots will now try to avoid shooting their friends
/:cl:

* basic mobs ranged attacks can check for friendly fire

---------

Co-authored-by: Ben10Omintrix <[email protected]>
* Adds tiny fan to Tramstation Mass Driver. (#78484)

## About The Pull Request
Adds tiny fan to mass driver, so you don't cause air alarms when you try
to throw someone with it.
## Why It's Good For The Game
Consistency.
## Changelog
:cl:
fix: [Tramstation] Mass Driver in chapel now has tiny fan so you don't
space yourself.
/:cl:

* Adds tiny fan to Tramstation Mass Driver.

---------

Co-authored-by: Helg2 <[email protected]>
* Adds a candle box crate (#78593)

## About The Pull Request
Adds a candle box crate that you can order.  🕯️

## Why It's Good For The Game
The chaplain only starts with a few boxes with a RNG way (scouring
maintenance) to acquire any more

## Changelog
:cl:
add: Added a candle box crate for all your candle needs!
/:cl:

* Adds a candle box crate

---------

Co-authored-by: admeeer <[email protected]>
* Refsearch Info Injection (#78574)

## About The Pull Request

Adds a proc that types can override to inject extra information into the
refsearch
This'll allow us to more easily track and deal with refs held by general
datums, like callbacks.
I've implemented a template example FOR callbacks, to provide an example
and assist in solving future issues

Done to help lumipharon from TGMC, they were having trouble with this
case.

This isn't perfectly optimized, but this proc has a LOT of issues just
in general. Need to rework it to cut down on string churn someday

* Refsearch Info Injection

---------

Co-authored-by: LemonInTheDark <[email protected]>
…E] (#23932)

* Move felinid brain shrinkage from the species to the brain (#78592)

## About The Pull Request
Brain size is now a var on brains, and felinids have their own brains.
This makes the feature implemented here: #77879 more modular and in line
with our species goals.
## Why It's Good For The Game
I didn't spend all that time moving species specific traits to bodyparts
and organs for this bullshit.
## Changelog
pls add code improvement tag

* Move felinid brain shrinkage from the species to the brain

---------

Co-authored-by: itseasytosee <[email protected]>
* Fixes Strong Stone ruin (#78555)

## About The Pull Request

It was spawning all this time but it was overridden by mapgen!
just places the rock in a lavaland/surface/outdoors area

### look at how snug he looks in there

![confy](https://github.com/tgstation/tgstation/assets/75863639/3f6e32d3-a031-4348-b004-22d49c3b2f6c)

## Changelog

:cl:
fix: fixed Strong Stone ruin generation
/:cl:

* Fixes Strong Stone ruin

---------

Co-authored-by: Sealed101 <[email protected]>
SkyratBot and others added 28 commits September 30, 2023 01:33
* gas connector component (#78273)

* gas connector component

* Update paths

---------

Co-authored-by: Ghilker <[email protected]>
Co-authored-by: Giz <[email protected]>
* Allow name to start with number if AI/Borg (#78601)

## About The Pull Request

Allows names to start with a number if the player is an AI/Borg or
otherwise allows numbers in their name.

## Why It's Good For The Game

Serial number roleplay.

## Changelog
:cl:
qol: allowed names to start with a number if AI/Borg
/:cl:

* Allow name to start with number if AI/Borg

---------

Co-authored-by: yorii <[email protected]>
Co-authored-by: Pinta <[email protected]>
Co-authored-by: Bloop <[email protected]>
* Refactors Snakes into Basic Animals (#78612)

* Refactors Snakes into Basic Animals

* Modular paths

---------

Co-authored-by: san7890 <[email protected]>
Co-authored-by: Giz <[email protected]>
…er ranks live (#23521)

* Adding support for non-client argument for add and remove player from group on SSplayer_ranks

* Adds some code for a bot to be able to interface with the player ranks subsystem via the same system as TGS

* Actually capitalizes the name of the target rank

* Updates the feedback of the run of the command to have two arguments instead of just one

* Adds some temporary debugging info because I'm so confused

* I forgot to do a text2num there

* I actually should not have done that, it seems

* Adding even more debug info to try and figure out what's going wrong this time

* Oh I'm SO stupid, wow

* Of course, I forgot to properly parse the number, nice

* Removes the debug text that didn't need to be there, makes the one that remains be better formatted.

* Actually this makes removing mentors that aren't in the legacy save impossible, whoops

* Applied suggestions
* the code

* Update nif_persistence.dm

* Update modular_skyrat/modules/modular_implants/code/nifs.dm

Co-authored-by: GoldenAlpharex <[email protected]>

* Update modular_skyrat/modules/modular_implants/code/nif_persistence.dm

Co-authored-by: GoldenAlpharex <[email protected]>

* Update nif_persistence.dm

* Update tgui/packages/tgui/interfaces/NtosNifsoftCatalog.js

Co-authored-by: Tom <[email protected]>

---------

Co-authored-by: GoldenAlpharex <[email protected]>
Co-authored-by: Tom <[email protected]>
* [NO GBP] fixes crab walking (#78648)

## About The Pull Request
the sideway movement element isn't working as intended, because
apparently the client dir and not the mob's (which is always SOUTH) was
being sent with the signal, and the existence of the `turn(dir, angle)`
proc hadn't crossed my mind while I coded the element.

## Why It's Good For The Game
This fixes the above.

## Changelog

:cl:
fix: Fixed crabs not correctly (kinda) walking sideway.
/:cl:

* [NO GBP] fixes crab walking

---------

Co-authored-by: Ghom <[email protected]>
* Fixes incorrect logging for some admin secrets (#78641)

## About The Pull Request

Open admin secrets panel try to power full station
![Screenshot
(307)](https://github.com/tgstation/tgstation/assets/110812394/879b0f0f-d05d-4d8a-801d-adc4e89ff067)

Get stack trace
![Screenshot
(308)](https://github.com/tgstation/tgstation/assets/110812394/1b0491c3-7b00-4985-a706-fa16bee5792f)

Cause we didn't pass a list to log as its data. instead we passed a
number `1` for no reason
![Screenshot
(311)](https://github.com/tgstation/tgstation/assets/110812394/84108cd2-eab4-43eb-8d21-abdc9047d80a)

This fixes that for this event & some others

## Changelog
:cl:
fix: removes incorrect stack traces when using some admin secrets
/:cl:

* Fixes incorrect logging for some admin secrets

---------

Co-authored-by: SyncIt21 <[email protected]>
…[MDB IGNORE] (#23994)

* Scrubbers and Vents will no longer reset their settings on map load. (#78582)

## About The Pull Request

Scrubbers and Vents will no longer reset their settings on map load.

## Why It's Good For The Game

On map load, vents and scrubbers would be set to filtering, overriding
any map-edited settings of scrubbers/vents or unique subtypes of
scrubbers/vents, such as siphoning vents.

## Changelog

:cl: BurgerBB
fix: Scrubbers and Vents will no longer reset their settings on map
load.
/:cl:

* Scrubbers and Vents will no longer reset their settings on map load.

---------

Co-authored-by: BurgerLUA <[email protected]>
* Fixes sec record colors (#78528)

## About The Pull Request
Swapped the colors of the discharged and parole statuses in the sec
record interface, so that their colors match their actual sechud icons.

## Why It's Good For The Game

it's good for the colors of statuses in the interface to be consistent
with hud icons

## Changelog
:cl:

fix: the parole status and discharged status are now green and blue
respectively in the security record interface

/:cl:

---------

Co-authored-by: tattle <66640614+dragomagol@ users.noreply.github.com>

* Fixes sec record colors

---------

Co-authored-by: Teagarden <[email protected]>
Co-authored-by: tattle <66640614+dragomagol@ users.noreply.github.com>
…oor [MDB IGNORE] (#23998)

* Only drop wall-mounted objects on turf change if it changes into a floor (#78651)

## About The Pull Request

Fixes #78643
It was clearly the intent of this feature to drop stuff onto the ground
when the wall is destroyed.
If we turn a wall into a _different_ wall then there isn't any need to
do this.

If there's some side effect to this that I haven't thought about, I
haven't thought about it.

## Why It's Good For The Game

Dimensional anomalies aren't supposed to destroy lights, fire alarms,
APCs, and air alarms.

## Changelog

:cl:
fix: Dimensional Anomalies no longer destroy wall-mounted equipment.
/:cl:

* Only drop wall-mounted objects on turf change if it changes into a floor

---------

Co-authored-by: Jacquerel <[email protected]>
* Freedom Implant Feedback and Facelift (#78486)

## About The Pull Request

This aims to make the freedom implant a bit less clunky, and a bit more
responsive. No fundamental changes or buffs or anything, just some more
feedback and player-facing clarity on what this thing actually does.

Changes include:
- Freedom implants can no longer be implanted into non-carbon
(uncuffable) mobs.
- The freedom implant will no longer expend charges when used without
active restraints.
- The to_chat has been replaced with a balloon alert (displayed to the
user only, of course).
- The implant throws a balloon alert shortly after it runs out of
charges, notifying the user that it has degraded and is gone.
- The implant pad readout has been changed to provide a bit more useful
information, and provide a bit less incorrect information.
- No, seriously, what did _"Analyzes certain shadow signals in the
nervous system"_ even mean? Shadowlings??
- The uplink listing now lists the number of uses, and explains that the
implant is useful for more than just handcuffs.
## Why It's Good For The Game

I used this thing once on a nukie round and thought "oh god this needs a
facelift immediately".

Players should be able to know the basic functions of their toys without
having to consult the wiki.
## Changelog
:cl: Rhials
qol: The freedom implant has received minor feedback and other minor
usage improvements.
/:cl:

* Freedom Implant Feedback and Facelift

---------

Co-authored-by: Rhials <[email protected]>
* Human sounds now depend on body type (#78632)

## About The Pull Request

So there's currently a problem where our human sounds are dependent on
whether you are a male or female, however we have 4 genders in-game.
This leads to scream sounds being female if you're anything but a Male,
and gasp shock sounds being male if you're anything but a Female. This
is very inconsistent, and I think as a better way of handling this, it
should all be handled by Bodytype, since we only have 2 and is a
separate choice from gender. This means regardless of gender, you can
still choose what sounds your character will make.

## Why It's Good For The Game

Mostly explained in the about section, this lets people who play as
they/them & it/its to decide what they should sound like.
I guess as a bonus, it means men now appear more like women if they
choose the female bodytype, and vice versa. Or at least I think it's a
bonus? I'm not really knowledgeable in this sort of stuff.

I kinda have the same argument as why I think TTS should be accurate.
You should be able to customize your character to how you want it, and I
think that choosing the non-male/female ones shouldn't give you
inconsistent voices.

## Changelog

I actually don't know what to label this.

:cl:
code: Your bodytype now decides what gendered sounds you make.
/:cl:

* Human sounds now depend on body type

---------

Co-authored-by: John Willard <[email protected]>
…u transform into a vampire; swapping species caps your blood up to the normal volume unless lower [MDB IGNORE] (#23995)

* Splattercasting sets your blood levels to a normalized volume when you transform into a vampire; swapping species caps your blood up to the normal volume unless lower (#78464)

## About The Pull Request

What is says on the tin.

## Why It's Good For The Game

Prevents an exploit able to give you an exceptionally large blood head
start due to a series of magic mirror race choices and raceswapping,
allowing for almost unlimited casting due to how some species handle
blood volume and generation.

## Changelog
:cl:
fix: Splattercasting resets your blood to normal values when you
transsform into a vampire.
fix: Gaining a new species will set your blood volume down to the normal
volume levels if higher than normal.
/:cl:

* Splattercasting sets your blood levels to a normalized volume when you transform into a vampire; swapping species caps your blood up to the normal volume unless lower

---------

Co-authored-by: necromanceranne <[email protected]>
* HotFix for Crew Monitors

* swaps back the ERT/centcom bit i forgot to undo
* Removes flight from lavaland syndicate modsuits (#78649)

## About The Pull Request

Fixes #78557
I wasn't really thinking of these guys when I gave nuke op suits the
ability to fly.
The lavaland syndicate base now simply spawns a modsuit with no jetpack
or jump jet in it.
Those guys aren't going to space, they don't need it.

## Changelog

:cl:
fix: Lavaland syndicate operatives can no longer trivially use the
jetpack on their modsuit to fly over the lava.
/:cl:

---------

Co-authored-by: Fikou <23585223+Fikou@ users.noreply.github.com>

* Removes flight from lavaland syndicate modsuits

---------

Co-authored-by: Jacquerel <[email protected]>
Co-authored-by: Fikou <23585223+Fikou@ users.noreply.github.com>
* Adds add/remove mob ability to VV dropdown menu (#78652)

## About The Pull Request

You add spells to mobs via a dropdown in VV but mob abilities via
marking the mob and pressing a button in the admin status panel.
I like opening the VV menu more than I like marking mobs (I am usually
going to need to open it anyway) so I added an alternate route in the VV
dropdown.

## Why It's Good For The Game

It's better for my personal workflow.

## Changelog

:cl:
admin: Mob abilities can be granted to arbitrary mobs via the VV menu in
a similar way to spells.
/:cl:

* Adds add/remove mob ability to VV dropdown menu

---------

Co-authored-by: Jacquerel <[email protected]>
* Fixes getting dusted when you spray paint the SM (#78666)

## About The Pull Request
Hopefully? implemented the correct fix. It _does_ work, but I don't know
if its the best possible fix. Should resolve #78456
## Why It's Good For The Game
Better consistency
## Changelog
:cl:
fix: You can now spray paint the SM without getting dusted
/:cl:

* Fixes getting dusted when you spray paint the SM

---------

Co-authored-by: admeeer <[email protected]>
* Adds on z impact interaction for SM. (#78428)

## About The Pull Request
Adds interaction for supermatter crystal when it falls on
something/someone.
I changed intercept_z_fall line that prevents sm dusting itself from
continue to return because it didn't spin/dust on fall.
## Why It's Good For The Game
Presumably a little bit more chaos.
## Changelog
:cl:
add: SM crystal can now dust someone or something if it falls on it.
/:cl:

---------

Co-authored-by: Jacquerel <hnevard@ gmail.com>

* Adds on z impact interaction for SM.

---------

Co-authored-by: Helg2 <[email protected]>
Co-authored-by: Jacquerel <hnevard@ gmail.com>
* Moves the Metastation CMO's stamp onto the table (#78667)

## About The Pull Request

![image](https://github.com/tgstation/tgstation/assets/20053168/894354be-3079-42bf-9f4b-2ec2fea8fac7)
I moved it down one tile, as shown by my horrible drawing.
## Why It's Good For The Game
A stamp isn't being thrown on the floor for no reason
## Changelog
:cl:
fix: fixed the stamp in the metastation CMO office always spawning on
the floor
/:cl:

* Moves the Metastation CMO's stamp onto the table

---------

Co-authored-by: Alexis <[email protected]>
* Small clean up code for Airlocks (#78665)

## About The Pull Request
So like Byond for the longest time has been complaining about a
duplicate `Initialize()` proc defined for airlocks
![Screenshot
(312)](https://github.com/tgstation/tgstation/assets/110812394/72a850db-5c83-46eb-b9a7-6ed5656f6ee2)

So i did something about it and moved the `grey_tide()` proc back inside
the original airlocks file

Also there is no need to explicity return `INITIALIZE_HINT_LOAD` because
the parent `obj/machinery/Initialize()` proc already returns this value
and the parent type for airlocks that is `obj/machinery/door` does not
change it in any way

## Changelog
:cl:
code: removed some redundant code for airlocks
/:cl:

* Small clean up code for Airlocks

---------

Co-authored-by: SyncIt21 <[email protected]>
* tweaks mob-creation `message_admins()` message (#78654)

## About The Pull Request

Right now it says "ADMIN created 10ea spiders.", which is really odd
syntax since nothing else in the game does this. This just fixes it so
the message reads "ADMIN created 10 spiders.", which is a lot more clear
to my eyes.

## Changelog
I'll be honest I had no idea you could spawn mobs this way and I don't
think it's measurable enough to even put an `admin` changelog.

* tweaks mob-creation `message_admins()` message

---------

Co-authored-by: san7890 <[email protected]>
* Makes the reverse revolver better hidden. (#78660)

## About The Pull Request

Fixes #78639

Makes the name and description of the reverse revolver always equal
those of the Syndicate revolver.
## Why It's Good For The Game

The reverse revolver is supposed to look like a normal Syndicate
revolver until you shoot yourself in the face with it. Having an obvious
tell is bad.
## Changelog
:cl:
fix: The reverse revolver now looks like a normal Syndicate revolver on
inspection.
/:cl:

* Makes the reverse revolver better hidden.

---------

Co-authored-by: lizardqueenlexi <[email protected]>
* Heretic Ascension Tweaks (#78472)

## About The Pull Request

Some changes to Cosmic and Knock heretic ascensions, in response to
feedback.

- Cosmic Heretics can no longer control their summon while jaunted.
- Additionally the death link element the Star Gazer used... wouldn't
work if there was more than one cosmic heretic. I refactored it into a
component, so that it would.

Frankly there are probably a lot of _other_ abilities which shouldn't be
usable while jaunted but are, but I have been burned in the past by
adding defaults which were applied too widely so we'll leave it
case-by-case for now.

- The Knock rift can no longer summon Flesh Worms of any kind.
- But it _can_ summon fire sharks (we really need to reflavour these...)
and any future "basic mob" heretic mobs (or ones which are converted).
- Additionally the rift can't be clicked by ghosts while it's polling
ghosts automatically because that would create funky empty-minded mobs.
- Finally it goes away when the heretic dies.

## Why It's Good For The Game

For Cosmic Heretics, controlling the Star Gazer in conjunction with
Space Jaunt essentially meant that the heretic was playing an RTS as an
invincible observer with an invulnerable unit, now they have to actually
be present and killable in order to sic The Beast on you.

For Knock Heretics, Minor Flesh Worms are a proof of concept which was
never meant to be used except by admins. They're _barely_ weaker than a
normal flesh worm, extraordinarily tanky, delete walls, and generally
devalue the Flesh path ascension.
Vanishing upon heretic death is because every _other_ ascension is at
least theoretically stoppable except this one. Now this one is too.
It's still _very hard_ to kill the heretic because every _10 seconds_
they can transform into a heretic mob which acts as an extra health
pool.

## Changelog

:cl:
fix: If two cosmic heretics ascend in the same round, their star gazer
survival will be linked to each individual heretic and not shared by
just one of them.
fix: You can't click the Knock heretic portal to join as a mob while
already signed up to become a mob.
balance: Cosmic heretics can't order the Star Gazer around while
jaunting.
balance: The Knock Heretic portal cannot summon Flesh Worms, but can
summon Fire Sharks.
balance: The Knock Heretic portal will disperse if its creator is
killed.
/:cl:

* Heretic Ascension Tweaks

---------

Co-authored-by: Jacquerel <[email protected]>
… round end report bit for them (#24013)

maybe that's why the language doesn't work
@Iajret Iajret merged commit 9af064b into Fluffy-Frontier:master Sep 29, 2023
21 checks passed
@Iajret Iajret deleted the 3009merge branch October 2, 2023 20:11
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.