Commit Graph

41918 Commits

Author SHA1 Message Date
SkyratBot 996d022afe [MIRROR] Fixes the admin log when adding a new admin from the permissions panel not displaying the ckey of the new admin [MDB IGNORE] (#23635)
* Fixes the admin log when adding a new admin from the permissions panel not displaying the ckey of the new admin (#78245)

## About The Pull Request
It was just displaying nothing, which was only a mild annoyance, but
after tolerating it for a few years, today I've had enough and fixed it.

## Why It's Good For The Game
Finally others can know who was added to the team without having
`R_PERMISSIONS` themselves.

![image](https://github.com/tgstation/tgstation/assets/58045821/5a945bea-1f1f-4b3d-bd96-c18062cecae4)

## Changelog

🆑 GoldenAlpharex
fix: The message sent to admins when a new admin has been added via the
Permissions Panel will now properly show the new admin's ckey.
/🆑

* Fixes the admin log when adding a new admin from the permissions panel not displaying the ckey of the new admin

---------

Co-authored-by: GoldenAlpharex <58045821+GoldenAlpharex@users.noreply.github.com>
2023-09-11 17:19:30 -04:00
SkyratBot 7decf9c031 [MIRROR] Adds lag compensation for the supermatter zaps and some antagonists. [MDB IGNORE] (#23632)
* Adds lag compensation for the supermatter zaps and some antagonists. (#78174)

## About The Pull Request
Adds delta time scaling for changeling chemical generation, xenomorph
plasma generation, xenomorph resin healing (up to 8 seconds per tick to
prevent weird instant heal phenomena in extreme cases), and revenant
essence generation. This delta time scaling is based on the world's time
and the respective subsystem's last fire. This will help keep these
generation smooth even when their respective subsystem lags, preventing
lag from ruining the antagonists rounds. This can still slow down if the
actual world is slowing down, but that's fine because the rest of the
world will typically be slowing down proportionately so it's fair.

Fixes supermatter zap rate not scaling with its internal energy
properly. Ghilker forgot to scale the time reduction by seconds. It
should be much faster at higher energy levels, making the transition
between 0 and 5 GeV more smooth.

Supermatter zap power generation will scale by the world's delta time
between the supermatter's last zap, making power generation more
consistent even when atmos lags. Also prevents the supermatter zap rate
scaling from also scaling the power generation by extreme amounts,
keeping it linear and consistent for the first 5 GeV (>5GeV has cringe
power multipliers, but I'm going to ignore that for this PR, because I
want this to mainly be a consistency thing rather than a balance thing).
A 1.5GeV supermatter will be able to generate around 800kW* of power. I
forgot exactly what goal of power we want the roundstart SM to produce,
so I might change the scale if I find the target power generation.

* - By generate 800kW of power I mean the energy the actual zaps
contain. Tesla coils don't collect 100% of it. I'll test later to see
how much an actual roundstart SM will output to grid (ignoring SMES),
and I'll try to keep it as close as possible to what it was before this
PR assuming no lag.
## Why It's Good For The Game
Subsystems can disproportionately lag a lot more compared to the rest of
the subsystems and game. This can ruin antagonist rounds as it can slow
their chemicals, plasma or whatever generation grinding to a halt. The
delta time scaling will significantly reduce the impact of lag for these
antagonists, allowing them to play more normally even while the
subsystems their generators run on are lagging.

Supermatter zap rate was supposed to fire every 2.5 or something seconds
at 1.5GeV according to comments on older commits. I just assume they
accidentally forgot to scale their time reduction by seconds, as doing
that made it work accordingly.

For supermatter zap power generation delta time scaling, kinda same
reasoning as for the antagonists. We don't want power generation to stop
because atmos ss is being slow. Scaling between the zaps also prevents a
nonlinear boost to power generation making it even more absurd at higher
energy levels.
## Changelog
🆑
balance: Supermatter zap power generation scales with the delta time
between its last zaps, preventing faster zapping from scaling power
generation to extreme levels.
fix: Fixes supermatter zap rate not scaling properly. It should zap much
faster at higher energy levels as intended.
qol: Changeling chemical generation scales with the world's delta time,
making its rate independent of subsystem lag.
qol: Revenant essence generation scales with the world's delta time,
making its rate independent of subsystem lag.
qol: Xenomorph plasma generation and resin healing scales with the
world's delta time, making their rates independent of subsystem lag.
/🆑

* Adds lag compensation for the supermatter zaps and some antagonists.

---------

Co-authored-by: Pickle-Coding <58013024+Pickle-Coding@users.noreply.github.com>
2023-09-11 12:27:53 -04:00
SkyratBot f525b1ff59 [MIRROR] Stops the Vorpal Scythe harming you even when sated [MDB IGNORE] (#23633)
* Stops the Vorpal Scythe harming you even when sated (#78233)

## About The Pull Request

As it says on the tin. Fixes
https://github.com/tgstation/tgstation/issues/78218

## Why It's Good For The Game

Broke in a recent refactor.

## Changelog
🆑
fix: The vorpal scythe is no longer as greedy about you murdering
people, and will once again accept striking any living creature to be
sated.
/🆑

* Stops the Vorpal Scythe harming you even when sated

---------

Co-authored-by: necromanceranne <40847847+necromanceranne@users.noreply.github.com>
2023-09-11 12:26:12 -04:00
lessthanthree 764c955722 Singularities are no longer invisible (#23610)
from TG master
2023-09-10 21:46:35 -04:00
SkyratBot 8248bb90df [MIRROR] Polymorph belt blacklists several biotypes instead of allowing only organics [MDB IGNORE] (#23620)
* Polymorph belt blacklists several biotypes instead of allowing only organics (#78229)

## About The Pull Request

Title; this makes the belt able to morph into _more_ mobs, but _less
problematic/abusable_ mobs hopefully. It still only functions on
basic/simple_animals, however.

~~Headslugs get a `MOB_UNDEAD` bioflag to prevent morphing into them
completely. Though catching a sentient ling slug and morphing everyone
into it is funny, it's only funny the first 5 times someone does it.
(disclaimer: this is an approximation, i did not actually see a
polymorph belt in-game because i currently play miner and like 10 games
a week tops)
Arguably, this isn't ideal, but it's the closest we get unless we rename
`MOB_EPIC` or something into `MOB_SPECIAL` and let that one be the go-to
bioflag for mobs we don't want **fun** things happen to.~~
`MOB_EPIC` is now `MOB_SPECIAL`. Headslugs get that.
I think the alternative methow could use whatever the gold cores use to
determine what to spawn but that would shift the mobs available for the
belt even more and I can't be assed to figure out how _much_ of a shift
that would be. Dragons or slimes or lavaland mobs would be out, for
example. Don't really vibe with that.

Fixes headslug's description bit that discerns a sentient slug from an
AI one showing up on a dead slug. It can't move while it's dead, no
matter its mind/AI.

Also adds simple dmdoc comments to the defines to help discern a few of
them more easily. Non-quip text suggestions welcome.

## Why It's Good For The Game
- Resolves #77756
- Resolves #78227

More mobs available for the funny belt but less _fun_ mobs should allow
for more stable use of the damn thing. Arguably, some of the mobs that
have been found to be incompatible with the belt are simply lacking a
`MOB_ORGANIC` flag, some of them with no apparent reason. However,
blacklisting potentially problematic biotypes should be easier to design
the unwanted mobs around.
Also consistency, less all-ling stations, code clarity. Whatever.

## Changelog

🆑
balance: polymorph belt now blacklists mobs that are undead, humanoid,
robotic or spiritual (in nature, not religiously), as well as megafauna
balance: however, this means that it works with more mobs that it should
logically work with, like slimes/bugs/lightgeists etc
fix: fixed headslug shenanigans with the polymorph belt hopefully for
good this time
fix: fixed headslug description mentioning its movement despite the slug
being dead
/🆑

* Polymorph belt blacklists several biotypes instead of allowing only organics

---------

Co-authored-by: Sealed101 <cool.bullseye@yandex.ru>
2023-09-10 21:43:42 -04:00
SkyratBot 71ae83df92 [MIRROR] Update clothing appearance following species change [MDB IGNORE] (#23619)
* Update clothing appearance following species change (#78185)

## About The Pull Request

Fixes #78179
Monkey clothes didn't fit following black charged slime transformation
(I hate xenobiology)
Moved the proc call which updated the clothing appearance from turning
into or returning from being a monkey into generic `on_species_gain` on
the basis that this would effect any species with weird clothing offsets
(such as transforming into a golem from the same source) and we don't
want a bunch of specific checks against it.

Also I just tidied up that proc a little bit.

## Changelog

🆑
fix: Your clothes and such should correctly reposition themselves if a
black charged slime extract turns you into a monkey.
/🆑

* Update clothing appearance following species change

---------

Co-authored-by: Jacquerel <hnevard@gmail.com>
2023-09-10 21:43:09 -04:00
GoldenAlpharex 4086fda4c9 The Player Panel will now list out the player's Player Ranks (#23621)
* Displays the player ranks into the player panel

* Player ranks can now be checked without considering the admin bypass
2023-09-10 20:56:15 -04:00
Hatterhat a069404dfa extends the teleporter comment-out to the syndicate hand tele (#23443)
* extends the teleporter comment-out

* yeah ok

Co-authored-by: OrionTheFox <76465278+OrionTheFox@users.noreply.github.com>

---------

Co-authored-by: OrionTheFox <76465278+OrionTheFox@users.noreply.github.com>
2023-09-10 18:31:35 -04:00
SkyratBot 8752ac8abd [MIRROR] Fixes mortars grinding and juicing [MDB IGNORE] (#23617)
* Fixes mortars grinding and juicing (#78212)

## About The Pull Request

Mortal and pestle failed to grind items, as the proc passed over the
item itself, instead of the reagent holder. This PR fixes that.

## Why It's Good For The Game

Its good to have a way to grind some chemicals and fruits without an
All-in One Grinder.
Fixes #78205

## Changelog

🆑
fix: Mortar and pestle can grind stuff again
/🆑

* Fixes mortars grinding and juicing

---------

Co-authored-by: Profakos <profakos@gmail.com>
2023-09-10 13:38:03 -04:00
SkyratBot 85b005636e [MIRROR] Service borg extra apparatus upgrade [MDB IGNORE] (#23616)
* Service borg extra apparatus upgrade (#78077)

## About The Pull Request

Adds an upgrade similar to the extra beaker storage for mediborgs to
service borgs, which adds an additional drink apparatus (that also
doesn't do the weird drink refilling thing)
## Why It's Good For The Game

This can allow the service borg to carry a wider variety of drinks, also
considering they specialize in chemistry, they should get an apparatus
upgrade like mediborgs.

## Changelog
🆑
add: Added the service borg "drink apparatus" upgrade, which adds an
extra drinking apparatus to the borg, up to a maximum of 5 extra.
🆑

* Service borg extra apparatus upgrade

---------

Co-authored-by: Teagarden <124026007+Vincent983@users.noreply.github.com>
2023-09-10 13:37:29 -04:00
SkyratBot 114449eafe [MIRROR] Bloodchiller and ling tentacle work with antimagic [MDB IGNORE] (#23614)
* Bloodchiller and ling tentacle work with antimagic (#78200)

## About The Pull Request
Fixes #78198
Tentacle and bloodchiller had antimagic flags that they inherited from
`gun/magic` and were unusable if you had magic immunity. I set those
flags to `NONE`
## Why It's Good For The Game
Fixes a bug
## Changelog
🆑
fix: Changeling tentacle and bloodchiller from xenobio will no longer
stop working if you have antimagic
/🆑

* Bloodchiller and ling tentacle work with antimagic

---------

Co-authored-by: cnleth <113535457+cnleth@users.noreply.github.com>
2023-09-10 13:36:04 -04:00
SkyratBot d36db059b0 [MIRROR] Rice Dough can be made in a beaker [MDB IGNORE] (#23611)
* Rice Dough can be made in a beaker (#78062)

## About The Pull Request

Rice dough can be made in a beaker using 20u of Rice Flour and 10u of
Water. 10u of Rice Flour is made from 5u of Rice and 5u of Flour. Rice
dough can still be crafted manually using the crafting menu and the
original recipe.
## Why It's Good For The Game

Cooks can sometimes get swamped with work, especially on a high-pop
shift or when there are no botanists. By making rice dough more
convenient to make, cooks don't need to spend as much time in the
crafting menu.
Rice Flour is made from mixing equal parts Rice and Flour. Since no
recipe other than Rice dough uses both Rice and Flour in it's Recipe, it
should be fine to turn those regents into the intermediate reagent "Rice
Flour".
Fixes #77966
## Changelog
🆑
qol: Rice Dough may be made in beaker instead of being crafted, but the
rice and flour must be added first
/🆑

* Rice Dough can be made in a beaker

---------

Co-authored-by: blueDev2 <89804215+blueDev2@users.noreply.github.com>
2023-09-10 03:16:07 -07:00
SkyratBot 2c5c5fa46e [MIRROR] Desouls Hivelord [MDB IGNORE] (#23609)
* Desouls Hivelord (#78213)

## About The Pull Request

![dreammaker_RJz4brjobM](https://github.com/tgstation/tgstation/assets/7483112/e5e4a3e9-ea6b-47f9-887c-3339d24d3fa8)

Replaces the sprite of the hivelord with a new one, in my continuing
quest to annihilate the old asteroid mob sprites.
A (never completed) asteroid mob resprite was actually my first PR, this
one is my 200th.
I am also planning on fucking with basic mob versions of these mobs some
time but the sprites can be atomised out.

In addition to replacing the old-ass MSPaint sprites, this PR also adds
a short death animation effect to the hivelord brood (from hivelords or
legions) which looks nicer than them just vanishing instantly upon
death.

Look at this video for an example of the animation:
https://www.youtube.com/watch?v=cKaskN5-y2A

## Why It's Good For The Game

Looks nicer.

## Changelog

🆑
image: Hivelords have a new sprite.
image: Hivelord and Legion brood have a death animation.
/🆑

* Desouls Hivelord

---------

Co-authored-by: Jacquerel <hnevard@gmail.com>
2023-09-10 03:13:58 -07:00
RatFromTheJungle e6f0b6e693 [non modular] disables TG "hold up" for the foreseeable future (#23607)
Update gun.dm
2023-09-09 22:51:35 -04:00
SkyratBot 1492750967 [MIRROR] The Create Command Report verb has the option to prevent printing reports now [MDB IGNORE] (#23600)
* The Create Command Report verb has the option to prevent printing reports now (#78208)

## About The Pull Request

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

<details>

![image](https://github.com/tgstation/tgstation/assets/47710522/ae71a6f9-b22d-467a-8da9-6a0bec576215)

</details>

Prevents this nightmare on a comms console during an event with
particularly high centcom announcement traffic.

No, don't come at me with "it's soul", it's just highly annoying to deal
with and having the option to prevent it is better. If you leave a
downvote and tell me in the comments that I'm "taking" soul out of the
game then I will come find you and actually take your soul out of your
body.
## Changelog
🆑
admin: The "Create Command Report" verb now has the option to not print
report papers at communications consoles.
/🆑

* The Create Command Report verb has the option to prevent printing reports now

---------

Co-authored-by: distributivgesetz <distributivgesetz93@gmail.com>
2023-09-09 16:54:39 -04:00
SkyratBot a08ee56788 [MIRROR] Exploration drones can no longer be used to get to centcom [MDB IGNORE] (#23597)
* Exploration drones can no longer be used to get to centcom (#78197)

## About The Pull Request
Fixes #73417
Implements a check for exploration drones to make sure that containers
inside the storage don't have blacklisted items in them before launch.
Now you won't able to hide beacons and living beings inside bluespace
body bags.

Also adds exploration drone launchers to cargo shuttle's blacklist to
prevent potential shenanigans in the future.

[I suck at explaining, so here's a poorly made video that shows how to
do this](https://www.youtube.com/watch?v=U45ifQGQxzI)

~also, why does it take 10 hours to get the "Time Waster" achievement.
how did 6 people even get it??~

## Why It's Good For The Game
centcom is scary and exploits are bad

## Changelog
🆑
fix: Exploration drones can't be used to reach Centcom anymore.
/🆑

* Exploration drones can no longer be used to get to centcom

---------

Co-authored-by: leaKsi <59278564+leaKsi@users.noreply.github.com>
2023-09-09 10:33:07 -04:00
SkyratBot 542ddd22f2 [MIRROR] Fixes traitor objective brainwashing deadchat broadcast double-punctuation and doubles the number of default directives [MDB IGNORE] (#23595)
* Fixes traitor objective brainwashing deadchat broadcast double-punctuation and doubles the number of default directives (#78161)

## About The Pull Request

This fixes the double-period at the end of brainwashing deadchat
broadcasts. If you know what I'm talking about, you know, but I didn't
want to go back to get screenshots to show what I mean.

The broadcast would automatically put a period at the end of the
compiled message, and the default brainwashing directives already came
with a period at the end. Not content with removing the period at the
end of the directives or the automatic period, I made something that
works both ways.

This also adds some more default directives (the ones given by the
brainwash surgery objective). These objectives aren't too direct or
commanding but still open up opportunities to run with the prompt.
## Why It's Good For The Game

The double punctuation was really annoying me.

The new directives are meant to give variety to the same boring-ish 6
directives by turning 6 into 12. Hopefully they're flexible enough for
more creative spessmen to work with.
## Changelog
🆑
qol: adds some more traitor objective brainwashing default objectives.
spellcheck: fixes the double-punctuation on traitor objective
brainwashing broadcasts.
spellcheck: brainwashing deadchat broadcasts will now auto-punctuate.
/🆑

* Fixes traitor objective brainwashing deadchat broadcast double-punctuation and doubles the number of default directives

---------

Co-authored-by: Rhials <28870487+Rhials@users.noreply.github.com>
2023-09-09 10:32:56 -04:00
SkyratBot 6620bffa84 [MIRROR] Collected food fixes [MDB IGNORE] (#23596)
* Collected food fixes (#78190)

I went through the code and tried to find all of the remaining places we
forgot to update the arguments passed into `item/food/Initialize` after
more arguments were added to it, because there were a couple and they
caused things to stop working.
Most notably, golems were unable to eat anything because nothing would
correctly spawn "golem food".

_Additionally_ we were using a bunch of named arguments in new whenever
crafting or cooking food. This runtimed, causing the food not to init
properly.
_On top of that_ a late code review on a recent PR processed a list into
a string_assoc_list twice causing it to become null.

Finally, we were trying to check the food preferences of examining
ghosts or dogs or other non-human mobs. We shouldn't do that.

I also added a unit test for moth and golem food in the hopes that we'll
notice them breaking.

* Collected food fixes

---------

Co-authored-by: Jacquerel <hnevard@gmail.com>
2023-09-09 10:32:37 -04:00
SkyratBot 280757e57a [MIRROR] Martian foodtype corrections [MDB IGNORE] (#23594)
* Martian foodtype corrections (#78002)

## About The Pull Request

Due to the size of the Martian food update, it was inevitable that
there'd be a few hiccups with food types. I reviewed everything and
updated everything to the best of my ability.

I'd prefer it if EOB himself gave everything a glance over in approval
before any potential merging.

## Why It's Good For The Game

I said so.

## Changelog

🆑
fix:  Corrects various food types from the martian food expansion
/🆑

* Martian foodtype corrections

---------

Co-authored-by: carshalash <carshalash@gmail.com>
2023-09-09 10:32:28 -04:00
SkyratBot 824199189e [MIRROR] You can now send PDA messages when resting [MDB IGNORE] (#23589)
* You can now send PDA messages when resting (#78154)

## About The Pull Request

No longer must you stand up when sending messages over the PDA! Do it
all comfortably, laying down in your bed!

Computers are automatically inaccessible when resting, so this only
affects PDA's, TABLETS, and LAPTOPS

## Why It's Good For The Game

Why wouldn't I be able to use a PDA laying down, heck everyone uses
their phone laying on their back, using your PDA like that only makes
sense

## Changelog
🆑
fix: The messenger app can now be used when laying down.
/🆑

Co-authored-by: John Willard <53777086+JohnFulpWillard@ users.noreply.github.com>

* You can now send PDA messages when resting

---------

Co-authored-by: Waterpig <49160555+Majkl-J@users.noreply.github.com>
Co-authored-by: John Willard <53777086+JohnFulpWillard@ users.noreply.github.com>
2023-09-08 20:17:50 -04:00
SkyratBot 6feb3d3f19 [MIRROR] Canonizes Robot Yawns [MDB IGNORE] (#23583)
* Canonizes Robot Yawns (#78175)

## About The Pull Request

Closes #77592

I agree that it's silly that robots shouldn't be able to yawn, but I
think that instead of removing the potential for this interaction to
occur outright (which can be done with moving around a check), it should
be embraced instead.

## Why It's Good For The Game

![image](https://github.com/tgstation/tgstation/assets/34697715/43aaeda1-4cb2-4ca5-b9ef-fd11a37ee583)

Robots fake-yawning to make them feel more realistic to the workers of
the station (and if they aren't station based, their once-creators
(which is fine because we removed swarmers)) and not being exempt from a
really cutesy niche interaction greatly appeals to me.

## Changelog

🆑
add: Ever see a robot yawn? Don't worry, it makes sense now.
/🆑

* Canonizes Robot Yawns

---------

Co-authored-by: san7890 <the@san7890.com>
2023-09-08 11:51:05 -04:00
SkyratBot 18fc2d9b16 [MIRROR] Oldstation now has their own RND [MDB IGNORE] (#23567)
* Oldstation now has their own RND

* Update oldstation_fluff.dm

* Update techweb_types.dm

* beaker capacity

---------

Co-authored-by: John Willard <53777086+JohnFulpWillard@users.noreply.github.com>
Co-authored-by: Bloop <13398309+vinylspiders@users.noreply.github.com>
2023-09-07 22:36:11 -04:00
SkyratBot fd811029b9 [MIRROR] Supermatter delam common radio alert cooldown [MDB IGNORE] (#23577)
* Supermatter delam common radio alert cooldown (#78104)

## About The Pull Request

Changes the supermatter radio alert to be less spammy while the crystal
is healing during recovery.

If the crystal is in a state of fast healing (defined as 3% per minute,
about half of a crystal's 6%/min recovery at 293K) we're in a situation
where the engineers have prevented the delam and the crystal is
returning to normal.

In these situations the Common radio channel doesn't need to be reminded
every 60 seconds that the crystal is more than fine and on its way back
to 100, a cooldown is started for the Common channel alerts. Engineers
continue to get the integrity update every 60 seconds as usual on their
departmental channel.

The cooldown is only applicable to when the crystal is healing, if
integrity starts dropping again below the emergency point Common will be
alerted.

The command span is added for the final countdown only (from
https://github.com/tgstation/tgstation/pull/77996)

## Why It's Good For The Game

The SM alerting on Common every 60 seconds as it heals leads to alarm
fatigue and you tune it out. It should only be alerting Common when
there is imminent danger to the crew or that the danger has passed.

## Changelog

🆑 LT3
qol: Supermatter common channel alerts are less frequent if the
crystal's integrity is rising rapidly
/🆑

* Supermatter delam common radio alert cooldown

---------

Co-authored-by: lessthanthree <83487515+lessthnthree@users.noreply.github.com>
2023-09-07 19:02:34 -07:00
SkyratBot c15fc43be4 [MIRROR] Cauteries have heat, you can smoke with a space helmet [MDB IGNORE] (#23576)
* Cauteries have heat, you can smoke with a space helmet (#78122)

## About The Pull Request

Cauteries now have 'heat', like lighters, welders, etc.

You can smoke with a space helmet as long as you have internals on.

## Why It's Good For The Game

> Cauteries now have 'heat', like lighters, welders, etc.

Seems like an oversight. If an esword can do it so can a implement meant
to sear wounds shut.

> You can smoke with a space helmet as long as you have internals on.

Space smoking is awesome.

## Changelog

🆑
fix: Cauteries now have 'heat', like lighters, welders, etc.
qol: You can smoke with a space helmet as long as you have internals on.
/🆑

* Cauteries have heat, you can smoke with a space helmet

---------

Co-authored-by: carlarctg <53100513+carlarctg@users.noreply.github.com>
2023-09-07 20:26:22 -04:00
SkyratBot eb31082053 [MIRROR] Choose your own Objective [MDB IGNORE] (#23570)
* Choose your own Objective

* Update changeling.dm

* Update heretic_antag.dm

* Update heretic_antag.dm

* Update malf_ai.dm

* Update AntagInfoHeretic.tsx

---------

Co-authored-by: Jacquerel <hnevard@gmail.com>
Co-authored-by: Bloop <13398309+vinylspiders@users.noreply.github.com>
2023-09-07 20:26:06 -04:00
SkyratBot 804bb30914 [MIRROR] Change gas mixer to mix by molar instead of volumetric [MDB IGNORE] (#23571)
* Change gas mixer to mix by molar instead of volumetric (#78034)

## About The Pull Request

<!-- Describe The Pull Request. Please be sure every change is
documented or this can delay review and even discourage maintainers from
merging your PR! -->
Gas mixer output now accurate to set ratio regardless of mismatched
input temperatures
Input

![53c841b2db6c6d5f0db15634c613c50c-1](https://github.com/tgstation/tgstation/assets/109347230/086a4c3b-f76e-4e8b-8b38-9669e6bfaffd)

Mixer

![c619537ba1cdbfc5ec8a6c384aabc6c3](https://github.com/tgstation/tgstation/assets/109347230/388ecead-9a19-45da-8b54-33ed6e11ec7e)

Output

![2d9c662f348838f427c1523fd86c092b](https://github.com/tgstation/tgstation/assets/109347230/bbc8dbaf-f529-4ba6-ac65-a19214f1c8de)

## Why It's Good For The Game

We can start by looking at what gas mixers are actually good for. First
we have air supply mix and burn mixes, these are the main uses for a
mixer, but the resulting mix becomes inaccurate if one of your gas
supply tanks is cooler or warmer than another (this often happens when
someone adds a bunch of cold n2 or o2 to wastes). A gas mix for the HFR
or crystallizer, usually these are set up with a constant supply of
gasses with temperature of an input often varying, eventually clogging
if the mix becomes inaccurate. Finally we have bomb and internal mixes,
I would argue that this is the most important reason to keep things the
way they are, but are actually currently the easiest to manage. All of
these uses require molar precision, something the gas mixer doesn't
really provide on its own, making it almost useless if two inputs do not
match in temperature.

In my experience, in order to mix gasses accurately, you must do one of
three things. First, you must use a combination of heat gates and
thermomachines to equalize the temperatures before mixing. Second, you
can combine the mixtures into one to equalize the temperature, filter
the gasses apart, and mix again with your desired ratios. Or the third
option, you could create a custom calculator to take in your desired
ratio and the current temperatures of your input and plug the resulting
ratio into the mixer.

The way gas mixers work currently serves no real purpose outside of
tripping up new players and providing 'busy work' for the experienced
ones. Many newer players expect gas mixers to provide the set ratio to
the output, not knowing that the temperatures on the input mixes must
match. It requires a lot of additional effort and knowledge to
accurately mix gasses, something that should just be provided by the
tool itself.

This change is good because it helps makes atmos a bit simpler and more
intuitive. Unfortunately we will lose complexity in setups and make
atmos a bit easier, but maybe these are good things

## Changelog

🆑
balance: gas mixer output now accurate to set ratio regardless of input
temperatures
/🆑

* Change gas mixer to mix by molar instead of volumetric

---------

Co-authored-by: Redbert <109347230+Deadgebert@users.noreply.github.com>
Co-authored-by: Bloop <13398309+vinylspiders@users.noreply.github.com>
2023-09-07 20:25:59 -04:00
SkyratBot f537bb2097 [MIRROR] GAGS, recolorable and actually glowing glow shoes. [MDB IGNORE] (#23568)
* GAGS, recolorable and actually glowing glow shoes. (#78071)

## About The Pull Request
I've converted the gags_recolorable component into an element (it has no
var of its own) and the glow shoes icons to greyscale, added emissive
icon states for the shoes, both for its own sprite or when worn, and the
ability to recolor them with a spraycan (tbh a lot of clothing should be
recolorable with a spraycan in general but that's beyond the scope of
this PR)

Oh yeah, if you examine an item with the gags_recolorable element twice,
it now tells you can use a spraycan to recolor it.

## Why It's Good For The Game
They are called glow shoes yet don't glow, and the supposed glowing
stripes only come in a single flavor of blue. Truly the definition of
lame.

Overall, it looks as goofy as ever: I didn't put much effort into the
grayscale icons beyond the necessary:

![proofthatitworks](https://github.com/tgstation/tgstation/assets/42542238/93aa7701-122d-4214-a890-7f69df3cb309)

## Changelog

🆑
image: The glow shoes from the ClothesMate now actually glow and can be
recolored, even with a spraycan.
/🆑

---------

Co-authored-by: san7890 <the@ san7890.com>

* GAGS, recolorable and actually glowing glow shoes.

* Modular stuff

---------

Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
Co-authored-by: san7890 <the@ san7890.com>
Co-authored-by: Giz <13398309+vinylspiders@users.noreply.github.com>
2023-09-07 20:25:08 -04:00
SkyratBot 71da4ca73f [MIRROR] Refactors the notransform variable into a trait. [MDB IGNORE] (#23566)
* Refactors the `notransform` variable into a trait.

* Update robot_upgrades.dm

* modular

---------

Co-authored-by: san7890 <the@san7890.com>
Co-authored-by: Bloop <13398309+vinylspiders@users.noreply.github.com>
2023-09-07 20:24:59 -04:00
SkyratBot 92bfea94a6 [MIRROR] [NO GBP] Name-wise, the telescopic fishing rod is no longer just a fishing rod [MDB IGNORE] (#23564)
* [NO GBP] Name-wise, the telescopic fishing rod is no longer just a fishing rod (#78130)

## About The Pull Request
Gives the telescopic fishing rod its own name.

## Why It's Good For The Game
Guess why.

## Changelog

🆑
spellcheck: Corrected the name of the telescopic fishing rod to
"telescopic fishing rod" from the more generic "fishing rod"
/🆑

* [NO GBP] Name-wise, the telescopic fishing rod is no longer just a fishing rod

---------

Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
2023-09-07 18:39:55 -04:00
SkyratBot 4d9bed607f [MIRROR] Fixing this dead mouse related harddel [MDB IGNORE] (#23569)
* Fixing this dead mouse related harddel (#78150)

## About The Pull Request

Fixes https://github.com/tgstation/tgstation/issues/78085

Fixes https://github.com/Skyrat-SS13/Skyrat-tg/issues/23510
Fixes https://github.com/Skyrat-SS13/Skyrat-tg/issues/23506

![image](https://github.com/tgstation/tgstation/assets/13398309/fab09657-12e8-4fb8-9e84-05ef48c9d55e)

When the foodening added some args to the constructor of
`/obj/item/food` some instances of the constructor being passed stuff
got overlooked and were not updated.

This resulted in a mob ref potentially being passed in to
`starting_reagent_purity` in some cases, ultimately resulting in this
harddel.

@ SyncIt21 this is exactly the reason I was being so paranoid with #77946
the other day. Tracking constructor uses down can be such a pain when
they aren't prefaced with a type, and are almost guaranteed to get
overlooked during refactors if the compiler does not say anything about
it.

I hate DM.

edit: and I just tested this only to find a second bug with the ice
cream. I can confirm that it is in fact working now after fixing that
one too.

<details><summary>evil ice cream</summary>

![image](https://github.com/tgstation/tgstation/assets/13398309/46cd85cd-1051-46d9-9642-0275af098dbe)

</details>

## Why It's Good For The Game

Fixing a harddel that was causing many CI failures

## Changelog

🆑
fix: fixes creamatorium not producing any suspicious ice cream, and
fixes a dead mouse related harrdel
/🆑

---------

Co-authored-by: MrMelbert <51863163+MrMelbert@ users.noreply.github.com>
Co-authored-by: Jacquerel <hnevard@ gmail.com>

* Fixing this dead mouse related harddel

---------

Co-authored-by: Bloop <13398309+vinylspiders@users.noreply.github.com>
Co-authored-by: MrMelbert <51863163+MrMelbert@ users.noreply.github.com>
Co-authored-by: Jacquerel <hnevard@ gmail.com>
2023-09-07 18:39:21 -04:00
SkyratBot 30e79f6cc1 [MIRROR] Meteor turfs typecache [MDB IGNORE] (#23565)
* Meteor turfs typecache (#78152)

## About The Pull Request

When looking why meteors randomly explode sometimes, the check has it
taking damage and exploding from turfs that it should just be flying
over. This creates a typecache of turfs the meteor shouldn't deplete
health from flying over. Most commonly openspace and asteroid baseturf.

## Why It's Good For The Game

Meteor is more likely to explode when it actually hits something vs
flying into an openspace tile.

## Changelog

🆑 LT3
fix: Meteors no longer take damage from crossing certain unoccupied
turfs
/🆑

---------

Co-authored-by: san7890 <the@ san7890.com>

* Meteor turfs typecache

---------

Co-authored-by: lessthanthree <83487515+lessthnthree@users.noreply.github.com>
Co-authored-by: san7890 <the@ san7890.com>
2023-09-07 10:22:10 -07:00
SkyratBot cafdcdd886 [MIRROR] fix basic mobs ranged burst attacks [MDB IGNORE] (#23554)
* fix basic mobs ranged burst attacks (#78163)

## About The Pull Request
the burst attacks wasnt working because a cooldown in the ranged
component qwas added recently. this now moves the burst attacks option
to the component itself so even sapiant player mobs can use these burst
ranged attacks

## Why It's Good For The Game
fix basic mobs ranged burst attacks

## Changelog
🆑
fix: basic mobs can now use ranged burst attacks
/🆑

* fix basic mobs ranged burst attacks

---------

Co-authored-by: Ben10Omintrix <138636438+Ben10Omintrix@users.noreply.github.com>
2023-09-06 21:55:29 -04:00
SkyratBot 41e2ef5fcc [MIRROR] Adds special lung sprites for smoker quirk [MDB IGNORE] (#23555)
* Adds special lung sprites for smoker quirk (#78119)

## About The Pull Request
What it says on the tin, adds special sprites for ethereal, plasmaman,
and regular lungs for if you use the smoker quirk.

Top is normal lungs, bottom is lungs if you use the smoker quirk

![smokerlungs](https://github.com/tgstation/tgstation/assets/58376695/eeb95ab6-3f99-4f64-8cfb-6d9ded0b9413)

Adds some cool flavor and a visual difference between regular and smoker
lungs. Previously, smoker lungs looked identical to normal ones but had
less health and healed slower.
## Why It's Good For The Game
Details are nice, and it was weird there was no visual difference before
since realistically, smoking constantly makes your lungs very visually
different and deteriorate over time.
## Changelog
🆑
image: adds special sprites for lungs when you use the smoker quirk
/🆑

---------

Co-authored-by: san7890 <the@ san7890.com>

* Adds special lung sprites for smoker quirk

---------

Co-authored-by: die_amond <58376695+dieamond13@users.noreply.github.com>
Co-authored-by: san7890 <the@ san7890.com>
2023-09-06 21:09:42 -04:00
SkyratBot 465b16f20f [MIRROR] Fix megafauna's celebrate_kill() not printing the victim's name [MDB IGNORE] (#23558)
* Fix megafauna's `celebrate_kill()` not printing the victim's name (#78160)

## About The Pull Request
One symbol fix. `celebrate_kill()` expects a `mob/living` to be passed
into it, but it was called without arguments, I fixed that
Before:

![wrongtext](https://github.com/tgstation/tgstation/assets/113535457/d06c203e-1a6b-4eec-93d6-685a1adb4b86)
After:

![correcttext](https://github.com/tgstation/tgstation/assets/113535457/0283bfcd-14de-4fb8-b53e-619b4b95b0d0)
## Why It's Good For The Game
It's a bugfix
## Changelog
🆑
fix: Megafauna now correctly prints the victim's name after a kill
/🆑

* Fix megafauna's `celebrate_kill()` not printing the victim's name

---------

Co-authored-by: cnleth <113535457+cnleth@users.noreply.github.com>
2023-09-06 21:09:18 -04:00
SkyratBot e9acaff140 [MIRROR] Attempts to fix the leash unit test CI failures [MDB IGNORE] (#23556)
* Attempts to fix the leash unit test CI failures (#78157)

## About The Pull Request

Fixes https://github.com/tgstation/tgstation/issues/77704

Fixes https://github.com/Skyrat-SS13/Skyrat-tg/issues/23467
Fixes https://github.com/Skyrat-SS13/Skyrat-tg/issues/23511

What it says on the tin. This has started causing CI failures with the
Tramstation test in almost every single PR downstream and it's gotten to
the point where it's become a major headache.

I don't know why it's happening only only on Tramstation, or why it's
happening at all-- but I will say it instantly began ramping up in
frequency immediately after merging
https://github.com/tgstation/tgstation/pull/75924 , which was the same
PR that was also causing the progressbar harddels previously to crop up
every time @ LemonInTheDark .

This attempts to fix it by doing 2 things:

~~1) Make sure the `COMSIG_LEASH_PATH_COMPLETE` always gets sent, which
will prevent needless false 'timeouts' whenever every iteration of the
check_distance() loop returns early. Now it will only timeout when it
actually times out.~~

1) Increases the timeout timer to 80 seconds. Why so long? Well, I've
looked at a number of individual CI failures and it looks like it tries
to complete the path somewhere between 40-75 seconds after the time out
failure. Most of the time it should not take this long though and will
just finish right away as normal.

<details><summary>Timeouts with timestamps shown here so you can see
what I am talking about</summary>

![firefox_mjwj5LCEje](https://github.com/tgstation/tgstation/assets/13398309/376be09f-ab85-4362-a75f-156c76a5c901)

![firefox_St29Dis9Jh](https://github.com/tgstation/tgstation/assets/13398309/f5bfbb5f-fc24-404d-ba41-e84130885500)

</details>

<details><summary>And here</summary>

![firefox_joAs0qA0f6](https://github.com/tgstation/tgstation/assets/13398309/13955036-a120-4ea4-adcb-8c945d0695ab)

![firefox_WABTuH6Z1j](https://github.com/tgstation/tgstation/assets/13398309/222af6fb-8cb1-4ea1-97aa-c5785294da58)

</details>

<details><summary>And here</summary>

![firefox_BaZXVwFzPE](https://github.com/tgstation/tgstation/assets/13398309/c68f0c3a-553b-42ca-aef4-a04628c5abf0)

![firefox_qoMid37BUi](https://github.com/tgstation/tgstation/assets/13398309/8ce48a2d-3b21-4346-aa9f-654e66b2a6b7)

</details>

2) Moves the priority of the test down so it happens later, with the
other long tests. This might even fix the issue on its own--haven't seen
the test take more than 0.1s to complete so far in any of my runs. Maybe
things just needed some more time to load?

So far I've done about 10 test runs and haven't seen a single timeout
with these two changes. I'm fairly confident the issue is fixed but
we'll see.

Test functioning:

![image](https://github.com/tgstation/tgstation/assets/13398309/fd7e9cf4-3573-4971-bbee-2fe45f82dafb)

## Why It's Good For The Game

Stops a PR blocking spurious CI failure.

## Changelog

🆑
fix: leash unit test will time out less often and increases the timer
until it is considered 'timed out', to reduce false CI failures
/🆑

* Attempts to fix the leash unit test CI failures

---------

Co-authored-by: Bloop <13398309+vinylspiders@users.noreply.github.com>
2023-09-06 21:05:04 -04:00
SkyratBot 16a9fb61cc [MIRROR] Worn Shirt Resprite (& GAGS Enhancement) [MDB IGNORE] (#23542)
* Worn Shirt Resprite (& GAGS Enhancement) (#78014)

## About The Pull Request
Hi! Sheets gave me some new sprites for the worn shirt, the Ian shirt,
and the gamer shirt you can find on MetaStation. These come in three
variants.

![image](https://github.com/tgstation/tgstation/assets/12636964/0111d5a5-5c78-4f59-912b-05184e9e06df)
Clean, worn out, and messy, for varying degrees of 'washedness.'

![image](https://github.com/tgstation/tgstation/assets/12636964/d083bd00-e272-467f-8c95-60f7f0168b64)
As seen here on these mobs.

They are now also GAGS grayscaled, which means

![image](https://github.com/tgstation/tgstation/assets/12636964/d099a459-a6cd-47d3-b5eb-915b7c5e3501)
they are highly recolorable; and look good to boot.

However, I have also elected to give them a variant for each version; a
'graphics' variant with either Ian, or Phanic the Weasel.

![image](https://github.com/tgstation/tgstation/assets/12636964/6fdb7dd8-9b04-46ab-bfc9-3711685401bd)
The gamer shirt and the Ian shirt retain their unique names and
descriptions, luckily.

Due to the Phanic shirt using an uncolorable third zone, this allows you
to make your very own Phanic OCs, seen here in the full vignette.

![image](https://github.com/tgstation/tgstation/assets/12636964/92d3f8ea-be3d-47d1-9e76-7d98dfa0b629)

## Why It's Good For The Game
Drip drip drip.

## Changelog
🆑 Sheets and Nerev4r
sprite: Complete redo of the worn shirt, Ian shirt, and gamer shirts;
now GAGS-compatible!
/🆑

---------

Co-authored-by: Snakebittenn <12636964+Snakebittenn@ users.noreply.github.com>

* Worn Shirt Resprite (& GAGS Enhancement)

* Modular & loadout

* Update loadout_datum_suit.dm

* This is a dupe

---------

Co-authored-by: Nerevar <12636964+Nerev4r@users.noreply.github.com>
Co-authored-by: Snakebittenn <12636964+Snakebittenn@ users.noreply.github.com>
Co-authored-by: Giz <13398309+vinylspiders@users.noreply.github.com>
2023-09-06 09:23:14 -04:00
SkyratBot 01f6c1c268 [MIRROR] Fixed snow legion corpse spawning. [MDB IGNORE] (#23540)
* Fixed snow legion corpse spawning. (#78147)

## About The Pull Request

Resolves #77973

Due to a pair of oversights, snow legions erroneously drop two corpses
when killed, and both of these corpses use the spawnlists for Lavaland
legions. The duplicate has been removed, and the snow legion corpse
spawner is no longer a subtype of the regular one - which was causing
the issue. Now the new corpses will actually spawn.
## Why It's Good For The Game

Makes #76898 actually work.
## Changelog
🆑
fix: Snow legions now drop only one corpse, and no longer drop Lavaland
corpses.
/🆑

* Fixed snow legion corpse spawning.

---------

Co-authored-by: lizardqueenlexi <105025397+lizardqueenlexi@users.noreply.github.com>
2023-09-06 06:51:55 -04:00
SkyratBot 4012db7ce2 [MIRROR] Adds Blood-drunk and demonic frost miner boss music. [MDB IGNORE] (#23543)
* Adds Blood-drunk and demonic frost miner boss music. (#78123)

Acts as a continuation of PR #77149 for boss music functionality and
implements a BDM and demonic frost miner boss music theme.

More music is good, but I do have some gripes with my own PR. This
particular track relies on instrumentation that when compressed just
doesn't sound as good, and the in-game version is noticeably less
enjoyable that the high quality version. I wish I could help the track
out more, but as is it's already at 811 kb which is barely in line with
file requirements, so i just can't justify bloating the audio file sizes
to make it sound better. You notice this kind of problem a lot with the
higher runtime music and background tracks. It just feels a bit more
clunky than hierophant, but what are you gonna do right?

* Adds Blood-drunk and demonic frost miner boss music.

---------

Co-authored-by: RICK IM RI <77305289+tommysalami3@users.noreply.github.com>
2023-09-05 21:51:44 -04:00
SkyratBot 2bcbb36ab9 [MIRROR] [TEST-MERGE FIRST] Allows all limbs to be dismembered and significantly refactors wounds [MDB IGNORE] (#23407)
* [TEST-MERGE FIRST] Allows all limbs to be dismembered and significantly refactors wounds

* ah fuck it

* test

* edaawdawd

* Revert "edaawdawd"

This reverts commit 47be710fe61a1f4ca79212b29b3e88bf05ec9a3a.

* nothing but sheer hatred

* freaawd

* dzfxg

* Fixing some diffs here while we are at it.

* These are deprecated and should be removed

---------

Co-authored-by: nikothedude <59709059+nikothedude@users.noreply.github.com>
Co-authored-by: nikothedude <simon.prouty@gmail.com>
Co-authored-by: Giz <13398309+vinylspiders@users.noreply.github.com>
2023-09-05 13:24:22 -04:00
SkyratBot c27a9f4576 [MIRROR] Fixed reagent grinding (and juicing?) [MDB IGNORE] (#23534)
* Fixed reagent grinding (and juicing?) (#78136)

## About The Pull Request

Resolves #78063

The Foodening refactored grinding and juicing in the reagent grinder,
but there were a few mistakes along the way. Most notably, items that
gave extra reagents when ground were not doing that (such as peptides in
livers) due to an error in adding those reagents. This error has been
corrected.

I've also fixed the code for juicing, which was erroneously passing a
beaker as its own reagents datum, though I couldn't tell if this
actually had any negative effects. Somehow. Better safe than sorry.
## Why It's Good For The Game

It's good to get everything you're supposed to get when you grind stuff.
The main source of peptides being inadvertently removed also made
cytology harder, and cytology really doesn't need to be made _more_
inconvenient.
## Changelog
🆑
fix: Fixed all-in-one grinders not giving all the correct reagents when
grinding.
/🆑

* Fixed reagent grinding (and juicing?)

---------

Co-authored-by: lizardqueenlexi <105025397+lizardqueenlexi@users.noreply.github.com>
2023-09-05 12:59:03 -04:00
SkyratBot 18b0abe4b3 [MIRROR] minebots basic bots [MDB IGNORE] (#23529)
* minebots basic bots (#78032)

## About The Pull Request
Transforms the minebots into basic robots. You can now command these
minebots to extract minerals for you. To activate automated mining mode,
simply instruct them with the command "mine." They will then proceed to
autonomously mine walls and gather ores. If you wish to make the bot
deposit all the collected ores, use the command "drop." Alternatively,
you can leave it in collection mode, and it will gather all the ores you
mine. Additionally, the bot now responds to several more commands; you
can instruct it to follow you, toggle its lights on or off by saying
"lights." In attack mode, it refrains from mining or collecting ores but
will engage in combat alongside you. If it detects you as deceased or
unconscious, it will alert all miners, request assistance, and relay
your coordinates via the mining communication channel. to power it on u
will need to feed it any type of ore first so it may listen to ur
commands

## Why It's Good For The Game
makes the non sapiant minebots more useful

## Changelog
🆑
refactor: the minebots have been refactored please report any bugs
add: minebots can now mine walls and collect ores automatically and they
will alert everyone if they find u dead
/🆑

* minebots basic bots

* Modular

---------

Co-authored-by: Ben10Omintrix <138636438+Ben10Omintrix@users.noreply.github.com>
Co-authored-by: Giz <13398309+vinylspiders@users.noreply.github.com>
2023-09-05 06:46:11 -04:00
SkyratBot c447e9bddf [MIRROR] Re-does cosmic heretic lore [MDB IGNORE] (#23527)
* Re-does cosmic heretic lore (#77950)

## About The Pull Request

rewrites every gain_text of cosmic heretic and its side paths

## Why It's Good For The Game

i really didnt like reading the original and it felt phoned in. please
feel free to give suggestions about my writings in the comments

## Changelog
🆑
spellcheck: re-writes cosmic heretic lore
/🆑

---------

Co-authored-by: MrMelbert <51863163+MrMelbert@ users.noreply.github.com>
Co-authored-by: Jacquerel <hnevard@ gmail.com>
Co-authored-by: wulfenbach-jpg <53832839+wulfenbach-jpg@ users.noreply.github.com>

* Re-does cosmic heretic lore

---------

Co-authored-by: Jackal-boop <61211748+Jackal-boop@users.noreply.github.com>
Co-authored-by: MrMelbert <51863163+MrMelbert@ users.noreply.github.com>
Co-authored-by: Jacquerel <hnevard@ gmail.com>
Co-authored-by: wulfenbach-jpg <53832839+wulfenbach-jpg@ users.noreply.github.com>
2023-09-05 05:57:51 -04:00
SkyratBot 77de679782 [MIRROR] mob_transformation_simple sends a COMSIG_MOB_CHANGED_TYPE signal, letting content_barfer mobs spit things out [MDB IGNORE] (#23518)
* `mob_transformation_simple` sends a `COMSIG_MOB_CHANGED_TYPE` signal, letting `content_barfer` mobs spit things out (#78093)

## About The Pull Request

Title; also makes bileworm devour message have a warning span.
~~it's a bit cheeky but i didn't want to add a deletion signal to the
content_barfer's signal list, and the wabbajack signal here kinda makes
sense?~~

## Why It's Good For The Game

Fixes #76791

## Changelog

🆑
fix: fixed bileworm evolution deleting anything they devoured; they will
now eject their contents upon evolution to vileworms
/🆑

* `mob_transformation_simple` sends a `COMSIG_MOB_CHANGED_TYPE` signal, letting `content_barfer` mobs spit things out

---------

Co-authored-by: Sealed101 <cool.bullseye@yandex.ru>
2023-09-04 21:28:24 -04:00
SkyratBot dbda7c92b8 [MIRROR] eye emissive appearances now rotate with the person [MDB IGNORE] (#23523)
* eye emissive appearances now rotate with the person

* Remove the modular version of this

* diffs

---------

Co-authored-by: jimmyl <70376633+mc-oofert@users.noreply.github.com>
Co-authored-by: Bloop <13398309+vinylspiders@users.noreply.github.com>
2023-09-04 21:28:05 -04:00
SkyratBot d865f6fa9a [MIRROR] pAIs control a PDA they're inserted into [MDB IGNORE] (#23519)
* pAIs control a PDA they're inserted into (#78103)

## About The Pull Request

This PR lets pAIs inserted into a PDA to control the PDA of their owner.
They can see their own pAI configurations but cannot edit any of it.
They also can't eject themselves from it.
This means they can receive and send PDA messages as their owner, acting
like a personal secretary

This also adds support for multiple people using a PDA and its UI
updating for all of them and PDA messages being received and responded
to from multiple people under the same PDA
It also removes pAI camera in favor of using siliconcamera, which is the
same thing; this just cuts down on some copy paste.

I also reverted PDA's ringer being off preventing messages from being
sent to your chat, silent mode was meant to prevent only the ringing
sound.

## Why It's Good For The Game

pAIs can now do a little bit more to help their owners on a personal
level, and adds support for more stuff like this in the future (an idea
I had was being able to hack into PDAs in the same way the CE can hack
into APCs remotely)

This is a re-PR of https://github.com/tgstation/tgstation/pull/76445 but
it's a little better this time and does not remove the PDA Messenger app
from pAIs.

## Changelog

🆑
fix: PDAs being on silent no longer prevents PDAs from being sent to
your chat, again.
add: pAIs inserted into a PDA can now control the PDA, and will receive
PDA messages sent to it (and can respond under the PDA's name).
/🆑

* pAIs control a PDA they're inserted into

---------

Co-authored-by: John Willard <53777086+JohnFulpWillard@users.noreply.github.com>
2023-09-04 20:04:07 -04:00
SkyratBot 29aa72b014 [MIRROR] [NO GBP] Fixes the fishing skill. [MDB IGNORE] (#23516)
* [NO GBP] Fixes the fishing skill. (#78110)

## About The Pull Request
The gain for second were 10 lower than they were supposed to be, since I
hadn't taken into account the deciseconds. I've also a cap on the gain
and lowered the necessary time just to be sure it doesn't take too much
time to attain the legendary tier anyway. I may bump it up later if
people say it's too easy.

## Why It's Good For The Game
This will fix #77972.

## Changelog

🆑
fix: It's now humanly possible to reach the legendary fisherman rank,
get the achievement and the hat.
/🆑

* [NO GBP] Fixes the fishing skill.

---------

Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
2023-09-04 13:43:13 -07:00
SkyratBot c3c696b6a0 [MIRROR] [NO GBP] Fixing a small issue with chasm fishing [MDB IGNORE] (#23515)
* [NO GBP] Fixing a small issue with chasm fishing (#78111)

## About The Pull Request
The default spawnables from chasms are spawned on top of the chasm
rather than on the user's turf, and that can be an issue.

## Why It's Good For The Game
This will fix #77982.

## Changelog

🆑
fix: fixed fishing skeleton mob spawners that immediately crumble back
into the void of whatever chasm you fished them from.
/🆑

* [NO GBP] Fixing a small issue with chasm fishing

---------

Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
2023-09-04 13:42:48 -07:00
SkyratBot 5f829cffac [MIRROR] Medical/roller beds [MDB IGNORE] (#23520)
* Medical/roller beds

* medical beds

* Update ninja_den.dmm

* medicell

---------

Co-authored-by: lessthanthree <83487515+lessthnthree@users.noreply.github.com>
2023-09-04 13:41:52 -07:00
SkyratBot c86475e29e [MIRROR] (no gbp) small improvement to bee pollination [MDB IGNORE] (#23514)
* (no gbp) small improvement to bee pollination (#78095)

## About The Pull Request
i saw some players are upset because the hive bees aggro towards people
so it makes them harder to control for the pollination. bees will now
only aggro to people if they are standing very near their hive. if they
move out of range of the beehive they will ignore them and focus on
pollination.

## Why It's Good For The Game
improvements to pollination

## Changelog
🆑
qol: pollinating bees will now only attack players that are standing
near the beehive
/🆑

* (no gbp) small improvement to bee pollination

---------

Co-authored-by: Ben10Omintrix <138636438+Ben10Omintrix@users.noreply.github.com>
2023-09-04 13:34:33 -07:00
SkyratBot 06cce1effb [MIRROR] replaces surgical and coroner duffels with surgery trays and medical carts, resprites razor [MDB IGNORE] (#23499)
* replaces surgical and coroner duffels with surgery trays and medical carts, resprites razor

* Update cosmetics.dm

* Update tramstation.dmm

---------

Co-authored-by: Lamb <110322848+CoiledLamb@users.noreply.github.com>
Co-authored-by: lessthanthree <83487515+lessthnthree@users.noreply.github.com>
Co-authored-by: Pinta <68373373+softcerv@users.noreply.github.com>
2023-09-04 12:44:08 -07:00