Commit Graph

41712 Commits

Author SHA1 Message Date
SkyratBot
d21e06104f [MIRROR] Dunking handle_atom_del() in the trash bin. [MDB IGNORE] (#23183)
* Dunking handle_atom_del() in the trash bin.

* Update _box_magazine.dm

* Modular paths

---------

Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
Co-authored-by: Giz <13398309+vinylspiders@users.noreply.github.com>
2023-08-18 12:17:04 -04:00
SkyratBot
de19b25f36 [MIRROR] The speedwagon is now a car [MDB IGNORE] (#23166)
* The speedwagon is now a car

* Modularizes edits

* Update sealed.dm

* Update sealed.dm

---------

Co-authored-by: Jacquerel <hnevard@gmail.com>
Co-authored-by: Giz <13398309+vinylspiders@users.noreply.github.com>
2023-08-18 10:34:41 -04:00
SkyratBot
01d7a0c70d [MIRROR] [NO GBP] Fixing a minor mistake with update_transform() [MDB IGNORE] (#23176)
* [NO GBP] Fixing a minor mistake with update_transform() (#77685)

## About The Pull Request
Well, while the translation for lying/standing from #77619 is supposed
to work using the decimal place of whatever value the
`body_position_pixel_y_offset` variable should be while the mob is in
standing position (basically, `get_pixel_y_offset_standing()`), for a
fleeting moment idiocy took the better of me, and instead I just used
`body_position_pixel_y_offset` (which is of a different value when the
mob is lying down), resulting in resized mobs slooowly ascending (if
bigger) or descending (if smaller) each time they stood up.

Also taking a few seconds to add some `if` checks to avoid running these
operations for the wide majority of mobs, which have a default size of 1
anyway.

~~I hope I won't have to make further such PRs for a while.~~

## Why It's Good For The Game
Read above.

## Changelog
N/A

* [NO GBP] Fixing a minor mistake with update_transform()

---------

Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
2023-08-17 23:47:13 -04:00
SkyratBot
11568ad904 [MIRROR] Fixes Xeno Sentinel's Sneak Action Icon + Additional Sneak QoL [MDB IGNORE] (#23169)
* Fixes Xeno Sentinel's Sneak Action Icon + Additional Sneak QoL (#77543)

## About The Pull Request

This PR fixes the xenomorph sentinel's Sneak ability having an error
icon as opposed to the intended appearance. This PR also adds a smooth
alpha transition to Sneak as opposed to setting the alpha immediately.
Having your alpha drop to its sneak value takes 0.5 seconds, which is
fast enough that it really shouldn't matter.

This PR also changes sneak's chat message alert to a balloon alert.

## Why It's Good For The Game

The icon thing is a bugfix, which is always good. The alpha
transitioning instead of being immediately set looks much better in my
opinion, I think most would agree on that front. Balloon alerts are our
preferred option as opposed to chat alerts now, so its also a good thing
to change.

## Changelog
🆑
qol: Xenomorph Sentinel and Ambusher Spider's sneak ability now has a
transition to a lower alpha as opposed to being immediate.
qol: The sneak ability now uses balloon alerts as opposed to chat
alerts.
fix: Fixed the Xenomorph Sentinel's Sneak ability icon being an error.
/🆑

---------

Co-authored-by: Ghom <42542238+Ghommie@ users.noreply.github.com>

* Fixes Xeno Sentinel's Sneak Action Icon + Additional Sneak QoL

---------

Co-authored-by: IndieanaJones <47086570+IndieanaJones@users.noreply.github.com>
Co-authored-by: Ghom <42542238+Ghommie@ users.noreply.github.com>
2023-08-17 20:14:15 -04:00
SkyratBot
4ef9c407d6 [MIRROR] Add Mob Ability menu now displays ability names before typepath [MDB IGNORE] (#23167)
* Add Mob Ability menu now displays ability names before typepath (#77682)

## About The Pull Request

Look at this menu:

![image](https://github.com/tgstation/tgstation/assets/7483112/2ecf0839-a7b6-4038-b772-7ffcdec8bd8d)

Isn't this basically useless?
When you try to add a mob ability to a mob, it displays a huge list of
typepaths.
Literally none of the typepaths are short enough that they even fit in
the window, and the data about what the ability actually is usually lies
at the end of the typepath.
This is clearly silly.

I made it look like this instead:

![image](https://github.com/tgstation/tgstation/assets/7483112/13af9a9c-39b5-4a47-8ae4-3f6ac242f9f9)

Now you see the name _and_ the typepath (it's still useful information
in cases where there are several similar abilities).
Also I gave the lobster charge ability its own name because it didn't
have one.

## Why It's Good For The Game

Increases usability of this admin feature.

## Changelog

🆑
admin: The Add Mob Ability menu now prefixes the typepath of the ability
with the ability's name, so you can much more quickly see what the
ability is.
/🆑

* Add Mob Ability menu now displays ability names before typepath

---------

Co-authored-by: Jacquerel <hnevard@gmail.com>
2023-08-17 19:44:35 -04:00
SkyratBot
50f87f7f41 [MIRROR] Converts some actions to mob cooldown actions [MDB IGNORE] (#23165)
* Converts some actions to mob cooldown actions (#77680)

## About The Pull Request

It has come to my attention that it isn't possible for admins to grant
the abilities to place web, lay eggs, and issue commands to spiders to
arbitrary mobs. This refactors Spider, Goliath, and Meteor Heart
abilities (hey what do you know I last touched all of those) such that
they can.

## Why It's Good For The Game

You **can** create the spider pig as an event.

## Changelog

🆑
admin: Adds Spider, Goliath, and Meteor Heart actions to the "Grant Mob
Action" menu.
/🆑

* Converts some actions to mob cooldown actions

---------

Co-authored-by: Jacquerel <hnevard@gmail.com>
2023-08-17 19:42:26 -04:00
SkyratBot
508b43d7b3 [MIRROR] Settler Quirk: Tame the Outdoors! Have trouble with tall shelves... [MDB IGNORE] (#23157)
* Settler Quirk: Tame the Outdoors! Have trouble with tall shelves...

* Update quirks.dm

---------

Co-authored-by: necromanceranne <40847847+necromanceranne@users.noreply.github.com>
Co-authored-by: Bloop <13398309+vinylspiders@users.noreply.github.com>
2023-08-17 17:46:43 -04:00
SkyratBot
83f1f4b8bc [MIRROR] Polymorphic Inverter tweaks [MDB IGNORE] (#23162)
* Polymorphic Inverter tweaks (#77675)

## About The Pull Request

Fixes #77649

You can no longer use the belt to turn into any kind of carbon mob,
sorry gamers it was a cool dream but it leads to too many problems.
Also I made space dragon "there's an alive guy in my stomach" code now
work on signals instead of on Life tick which is slightly more efficient
and also resolves an issue with the funny belt.

## Why It's Good For The Game

Too much room for weird edge cases as a result of doing this (messing
with monkey DNA, producing infinite xeno organs, blocking legit xeno
queens from being created) which had no graceful solution.
Moving stuff off Life if it can be event based is nice.

## Changelog

🆑
fix: Turning into a space dragon with the polymorphic inverter will no
longer leave you existing in two places
balance: You can no longer use the belt to transform into monkeys or
xenomorphs, for technical reasons.
/🆑

* Polymorphic Inverter tweaks

---------

Co-authored-by: Jacquerel <hnevard@gmail.com>
2023-08-17 17:28:49 -04:00
SkyratBot
fe76790608 [MIRROR] Adds numerous boozepowers to the martian drinks. [MDB IGNORE] (#23161)
* Adds numerous boozepowers to the martian drinks. (#77605)

## About The Pull Request

my family owns a liquor store so i made a bit of each of these and rated
them all on a scale of 1-100 on how fucked up they were likely to make
you for boozepower

These were all set at '20' boozepower for some reason. This fixes that.
## Why It's Good For The Game

fixes #77566
## Changelog
🆑
fix: fixes all the martian drinks having 20 boozepower
/🆑

---------

Co-authored-by: oilysnake <63020759+oilysnake@ users.noreply.github.com>

* Adds numerous boozepowers to the martian drinks.

---------

Co-authored-by: DeerJesus <willgiscool@gmail.com>
Co-authored-by: oilysnake <63020759+oilysnake@ users.noreply.github.com>
2023-08-17 17:28:37 -04:00
Bloop
d518ca3b84 [MISSED MIRROR] Add pickaxe to basic tools techweb (#72938) (#23155)
Add pickaxe to basic tools techweb (#72938)

Adds the pickaxe to basic tools techweb that can be printed the cargo
lathe or autolathe.

This is a basic mining tool and should be available at roundstart.

It wasn't possible to create pickaxes, despite it being a T1 item. It
should be as easy to make as a shovel since these usually are mapped
together. I was tempted to put this into mining technology, but that
already has advanced drills that are T2 versions of the pickaxe.

🆑
qol: Add pickaxe to basic tools techweb
/🆑

Co-authored-by: Tim <timothymtorres@gmail.com>
2023-08-17 16:59:03 -04:00
Bloop
6029db1292 [MISSED MIRROR] fixes generic tanks not being printable (#72743) (#23153)
fixes generic tanks not being printable (#72743)

Co-authored-by: Fikou <23585223+Fikou@users.noreply.github.com>
2023-08-17 16:58:01 -04:00
Bloop
b6ccdfa8d3 [MISSED MIRROR] Moves the botanogenetic shears to the botany node and locks it behind a botany experiment (#67363) (#23152)
* Moves the botanogenetic shears to the botany node and locks it behind a botany experiment (#67363)

* Update code/modules/research/techweb/all_nodes.dm

---------

Co-authored-by: SovietJenga <102672798+SovietJenga@users.noreply.github.com>
Co-authored-by: GoldenAlpharex <58045821+GoldenAlpharex@users.noreply.github.com>
2023-08-17 16:56:54 -04:00
SkyratBot
2399e88e7b [MIRROR] Gives engineers the RCD round start and nerfs its base abilities to compensate [MDB IGNORE] (#23158)
* Gives engineers the RCD round start and nerfs its base abilities to compensate (#77641)

## About The Pull Request
- Gives engineers an RCD as part of their round start equipment
- RCD by default will build/deconstruct slower if you already have
another one in progress. This can be upgraded with the new cooling
upgrade disk. Reconstructing (anything that was there roundstart as per
the destructive scan) doesn't have this downside, only
construction/deconstruction.
- RCD construction effects can now be attacked in order to cancel them.
This can be deterred with the anti-disruption upgrade disk.
- RCDs for nukies and whatever don't have these downsides
- The CE's roundstart RCD also doesn't have these downsides

## Why It's Good For The Game
Construction and reconstruction are currently one of the worst aspects
of SS13--they are so slow and tedious that any sort of mass destruction
goes unfixed for 10-30+ minutes, if fixed at all. This limits us because
it means people don't want traitors to create large explosions, for
instance--I do and so I think it's crucial that we fix construction.

Reconstruction has already been improved on the RCD with the destructive
scans, but I see no reason to limit this to something so out of the way.

Ideally the RCD even gets more functionalities, like the ability to
print stock parts (or having stock parts removed), etc, in order to
lessen this burden.

## Changelog
🆑
add: Engineers now have an RCD round start.
balance: RCD construction/deconstruction effects can now be attacked in
order to cancel them. You can get the anti-disruption upgrade disk to
prevent this.
balance: RCD construction/deconstruction is now slower if you already
have another effect up. This does not effect reconstruction.
balance: Both of the above effects do not effect the CE's roundstart
RCD, nor any other RCDs such as combat RCDs.
/🆑

---------

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

* Gives engineers the RCD round start and nerfs its base abilities to compensate

---------

Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
Co-authored-by: Fikou <23585223+Fikou@ users.noreply.github.com>
2023-08-17 16:56:29 -04:00
SkyratBot
6aa545500e [MIRROR] Changeling armblade gets 35% armour penetration + better wounding. [MDB IGNORE] (#22989)
* Changeling armblade gets 35% armour penetration + better wounding.

* Fixes conflict and reduces the changeling buffs

---------

Co-authored-by: Pickle-Coding <58013024+Pickle-Coding@users.noreply.github.com>
Co-authored-by: GoldenAlpharex <jerego1234@hotmail.com>
2023-08-17 16:55:23 -04:00
SkyratBot
45a1502809 [MIRROR] Replaces Big Mob Tiny Sprites With Togglable Clientside Transparency For Big Mobs [MDB IGNORE] (#23144)
* Automatic changelog for PR #23141 [ci skip]

* Replaces Big Mob Tiny Sprites With Togglable Clientside Transparency For Big Mobs

* Replaces Big Mob Tiny Sprites With Togglable Clientside Transparency For Big Mobs (#77361)

## About The Pull Request

This PR replaces the tiny mob sprite abilities for our large mobs with a
Toggle Seethrough ability. What this does when enabled is make yourself
transparent on your own client and makes you unable to click yourself.
With this, any sort of overlays that get added look correct while in
your tiny mob form and you can still appreciate your large size without
giving up the ability to click on targets that would be hiding
underneath your sprite.


![XenoQueen](https://github.com/tgstation/tgstation/assets/47086570/537b7db7-84fd-4202-955f-c5d2bec830c0)


![image](https://github.com/tgstation/tgstation/assets/47086570/1f9272f0-a972-407f-9031-ee87bbc67ead)

In total, this ability is granted to all the mobs who had tiny sprites:

- Xenomorph Queen
- Space Dragon
- Megafauna (not that players ever get access to these normally, but it
might be nice for admins)

Along with all this, I've also gone and expanded the mobs who get access
to the Seethrough ability to mobs that are large but didn't have a
mini-sprite. This includes:

- Jungle giants (leaper and mega arachnid)
- Tree mob
- Festivus pole mob
- Lavaland elites
- Xenomorph Praetorian
- Wumborian Fugu

On top of all this, any simple/basic mob given a fugu gland also
automatically gains this ability.

This solution also fixes all the overlays bugs that tiny mob sprites
introduced to the game, most notably the xenomorph queen overlays being
screwy when in small form and space dragon's overlays being completely
disabled for everyone if he was in small form.

The only issue with this currently is that clicking on any overlays from
your mob will let you still click on yourself, though this issue is
pretty negligible.

## Why It's Good For The Game

Tiny mob sprite abilities clashed very hard with our overlay system,
leading to a lot of buggy and unintended behavior. This replacement
works a lot more smoothly with overlays and also requires much less
setup to give it to a mob than tiny sprites did. I would also imagine it
helps keep the fantasy of being a big monster alive by letting you still
see yourself being a big monster without it getting in your way when
trying to attack things.

## Changelog
🆑
del: Removed tiny mob sprite abilities for large mobs
add: Add a Self Seethrough ability, given to most large mobs and all
mobs affected by a fugu gland
fix: Space Dragon's overlay will no longer vanish at times

---------

Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>

* Delete AutoChangeLog-pr-23141.yml

This is really weird

* Modular adjustments

---------

Co-authored-by: IndieanaJones <47086570+IndieanaJones@users.noreply.github.com>
Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
Co-authored-by: Bloop <13398309+vinylspiders@users.noreply.github.com>
2023-08-17 13:43:10 -04:00
SkyratBot
21e208d678 [MIRROR] fixes a typo from unloading a revolver [MDB IGNORE] (#23148)
* fixes a typo from unloading a revolver

* Update ballistic.dm

---------

Co-authored-by: Hatterhat <31829017+Hatterhat@users.noreply.github.com>
Co-authored-by: Bloop <13398309+vinylspiders@users.noreply.github.com>
2023-08-17 11:55:02 -04:00
SkyratBot
1aa547866c [MIRROR] Cybernetic Moth Eyes : Cybermoff 2077 [MDB IGNORE] (#23140)
* Cybernetic Moth Eyes : Cybermoff 2077

* Update _eyes.dm

* Modular adjustments, and cleans up some skyrat edits while we're here

* Adds the moth cybereyes as augment options

* Revert "Adds the moth cybereyes as augment options"

This reverts commit 7c91d01ed0c14d4a3ec435b2fc878267a7b8618b.

* Update organs.dm

* Update internal_HA.dmi

---------

Co-authored-by: jimmyl <70376633+mc-oofert@users.noreply.github.com>
Co-authored-by: Bloop <13398309+vinylspiders@users.noreply.github.com>
2023-08-17 09:59:00 -04:00
SkyratBot
f98c727416 [MIRROR] Fixes an invalid bartender suit spawn [MDB IGNORE] (#23146)
* Fixes an invalid bartender suit spawn (#77662)

## About The Pull Request

https://github.com/tgstation/tgstation/pull/77558 removed the bartender
outfit but there was still one instance of the path left over, leading
to an invalid icon state bartender suit spawning in a locker.

![dreamseeker_mc0gjQkreo](https://github.com/tgstation/tgstation/assets/13398309/863f77ce-2cf2-463d-b552-2ac632b49624)

![image](https://github.com/tgstation/tgstation/assets/13398309/43aeb546-c3e1-44bb-8cb6-13b680a4aca4)

This gets rid of that. The bartender outfit has been replaced with the
greyscale buttondown suit with slacks now.

Also repaths `/obj/item/clothing/under/rank/civilian/bartender/purple`
to `/obj/item/clothing/under/rank/civilian/purple_bartender` to avoid
having a defunct basetype for this same reason.

## Why It's Good For The Game

Fixes an oversight

## Changelog

🆑
fix: formal closet will no longer spawn with two 'error' icon suits
inside of it
/🆑

* Fixes an invalid bartender suit spawn

---------

Co-authored-by: Bloop <13398309+vinylspiders@users.noreply.github.com>
2023-08-17 09:56:05 -04:00
SkyratBot
0e533de6cf [MIRROR] Multi-tile airlock assemblies/pathing [NO GBP] [MDB IGNORE] (#23138)
* Multi-tile airlock assemblies/pathing [NO GBP] (#77537)

## About The Pull Request

Small fixes after https://github.com/tgstation/tgstation/pull/76732
- Creates base large subtype for mapping
- Door assembly naming consistent with other airlocks
- Base subtype large airlock no longer spawns in a normal sized airlock
- Renames station2 subtype to public for consistency

## Changelog

🆑 LT3
fix: Base large airlock subtype no longer spawns a normal sized airlock
image: Added mapping icons for large airlocks
code: Repathed all public airlocks to consistent naming
/🆑

* Multi-tile airlock assemblies/pathing [NO GBP]

* maps

* Merge remote-tracking branch 'upstream/master' into upstream-merge-77537

---------

Co-authored-by: lessthanthree <83487515+lessthnthree@users.noreply.github.com>
2023-08-17 00:12:19 -07:00
Paxilmaniac
302cbe7b45 Various related bolt action rifle changes (#23108)
* aw yup

* ill fix that upstream later

* lowers the price a bit (and also re-eliminates the tg soviet crate)
2023-08-16 23:28:25 -07:00
SkyratBot
fdfe5a420b [MIRROR] the big slappy is now immutably slow [MDB IGNORE] (#23141)
* the big slappy is now immutably slow (#77655)

## About The Pull Request
the big slappy is now immutably slow, it cant be sped up by xenobio
speed potion (because of how red slime crossbreed works, you can still
avoid it with that bullshit, but at least that requires some effort for
the xenobiologist to specifically create you one)

## Why It's Good For The Game
30 force
30 block chance
double object damage
throws tha guy away
KNOCKS DOWN FOR 2 SECONDS
and then your ass can literally just walk with it for FREE if you visit
xenobio and they gloop out one potion with a slime and water (which if
xenobio is staffed at all they probably will have at the point you made
it)

![image](https://github.com/tgstation/tgstation/assets/23585223/00bba834-2944-4260-b26a-cf9608ee851d)
(also a bit sus that it was added by a xenobio powergamer but thats
beside the point)

## Changelog
🆑
balance: you cant speed up the big slappy with slime potion
/🆑

* the big slappy is now immutably slow

---------

Co-authored-by: Fikou <23585223+Fikou@users.noreply.github.com>
2023-08-16 23:55:46 -04:00
SkyratBot
812ada6703 [MIRROR] Makes mob resizing a smidge more precise. [MDB IGNORE] (#23136)
* Makes mob resizing a smidge more precise. (#77619)

## About The Pull Request
I've recently come to learn recently that transform translation, unlike
pixel x/y/w/z, doesn't disregard values after the decimal separator, and
while that has little effect on atoms with identity
transform/interpolation matrices, can alter how the atom is rendered
slightly.
This way, there shouldn't be visible differences between an icon, scaled
by, let's say, 1.23, translated by 2.4 vertically, and a similar icon
scaled the same, offset by another 2pixels in the same direction yet
translated by the remainder 0.4.

## Why It's Good For The Game
Manily because I've a PR up on Skyrat to replace some of the code to
actually use the current size variable, tho some players have reported
it looks worse than before. Also, title.

## Changelog
N/A

* Makes mob resizing a smidge more precise.

---------

Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
2023-08-16 17:29:07 -07:00
SkyratBot
b0b200387d [MIRROR] Fixes skeletons not healing burn damage by milk. [MDB IGNORE] (#23125)
* Fixes skeletons not healing burn damage by milk. (#77645)

## About The Pull Request
Closes https://github.com/tgstation/tgstation/issues/77629
## Changelog
🆑
fix: Skeletons now heal burn damage with milk once again.
/🆑

* Fixes skeletons not healing burn damage by milk.

---------

Co-authored-by: Helg2 <93882977+Helg2@users.noreply.github.com>
2023-08-16 20:21:11 -04:00
SkyratBot
57272c8d22 [MIRROR] Basic Watchers & Basilisks [MDB IGNORE] (#23137)
* Basic Watchers & Basilisks (#77630)

## About The Pull Request

This one is a double feature because Watchers and Basilisks share the
same typepath. You might see a couple more of those.
As is tradition I decided to fuck with them rather than just port them.
Here's what's up.

**Basilisks**

![image](https://github.com/tgstation/tgstation/assets/7483112/9e4b0115-65dd-4df7-b62a-21c7be8549bf)

![image](https://github.com/tgstation/tgstation/assets/7483112/59162e68-7d73-4659-9531-5078ff751228)

- Have a new soulless sprite which looks less like a living blue hedge.
- Walk at you and shoot you while you are not in range (just like
before).
- Become supercharged if they become "heated" by lava, lasers, or
temperature weapons. This was a feature they also previously had but
they would never encounter lava, so now it also works if you use the
wrong gun on them.
- Lose their supercharge if you cool them down.
- Otherwise pretty normal mobs.

**Watchers**

https://www.youtube.com/watch?v=kOq_Bf78k5A
Here's a traditional video of me intentionally getting hit by mechanics
(trust me its definitely on purpose)

- They glow emmissively a little bit so you can see them from further
away.
- Their eyes light up about 0.5 seconds before they are able to shoot at
you.
- No longer melee attack, instead try to stay out of melee.
- Will occasionally put you into "Overwatch", meaning they will shoot
you rapidly if you move or act while they're staring at you for a brief
time period (after which you become immune for 12 seconds, and during
which other watchers will play fair and stop shooting at you).
- If they start taking damage they will also start using their "Gaze"
attack, look away or suffer some kind of negative effect!
- - Normal watcher gaze flashes and confuses you.
- - Magmawing watcher gaze obviously burns (and briefly stuns) you.
- - Icewing watcher gaze freezes you and throws you backwards.
- Magnetically attract and eat diamonds. They also used to do this, but
just if they happened to coincidentally walk past some.

**Other accompanying changes**

All basic mobs will now adopt the "stop gliding" trait if they get
slowed down too much.
I moved behaviour for "fire a projectile from this atom" into a helper
proc because I was using it in three places and I will probably use it
in more places. There are probably other places in the existing code
which could be using this.
I think I made the basic mob melee attack forecast default a little more
forgiving, they were fucking me up too much and I am the playtester.

## Why It's Good For The Game

Another one off the list.
New tricks for old dogs.
Framework for making mobs with ranged attacks "fairer" (you can see when
they are ready to shoot you).
More (hopefully) versatile AI behaviours which we will reuse later (I
hope I'm not duplicating one someone already made).
If our players "enjoy" them enough we can give more mobs "don't look at
me" mechanics.
Removes some soul sprites.

## Changelog

🆑
refactor: Basilisks and Watchers now use the basic mob framework. Please
bug report any unusual behaviour.
sprite: Basilisks have new sprites.
add: Basilisks will go into a frenzy if heated by energy weapons or
temperature beams as well as by lava.
add: Watcher eyes will be illuminated briefly when they are ready to
fire at you.
add: Watchers can now briefly put you into "Overwatch" and penalise you
for moving while they can see you.
add: Wounded watchers will occasionally punish players who look at them.
balance: Unusual watcher variants are more likely to appear.
/🆑

* Basic Watchers & Basilisks

* Modular paths

---------

Co-authored-by: Jacquerel <hnevard@gmail.com>
Co-authored-by: Giz <13398309+vinylspiders@users.noreply.github.com>
2023-08-16 20:20:53 -04:00
SkyratBot
46c8fb70cf [MIRROR] [no gbp] Goliath tentacles now damage mechs [MDB IGNORE] (#23134)
* [no gbp] Goliath tentacles now damage mechs (#77643)

## About The Pull Request

Goliaths will now use said tentacles on mechs.
The tentacles aren't strong enough to grab mechs so they just damage
them a bit, you're still better off driving through them than a human
is.

## Why It's Good For The Game

Someone pointed out that these abilities were only being used on living
mobs, but miners use mechs sometimes.

## Changelog

🆑
fix: Goliaths will try to attack mechs with their tentacles.
/🆑

* [no gbp] Goliath tentacles now damage mechs

---------

Co-authored-by: Jacquerel <hnevard@gmail.com>
2023-08-16 18:29:24 -04:00
SkyratBot
32f4007f93 [MIRROR] mega arachnid basic monster [MDB IGNORE] (#23135)
* mega arachnid basic monster (#77601)

## About The Pull Request
the mega arachnid is now a basic monster. he is a very tricky and
opportunistic creature he will plan his attacks carefully and only
attack the weak. he will first try to throw fleshy legcuffs at his
victims, if the victim becomes cuffed he will move in to attack him,
otherwise he will run away from him while trying to throw restraints at
his legs. while he is running away he will also release slippery acid to
slip his prey. also when he is looking for his prey, he will be
transparent for more stealth. after he finds his prey the transparency
will wear off. he is also a very stealthy creature, he will break any
lights and cameras near him and he can also climb trees to hide in them
while he is looking for a victim.

## Why It's Good For The Game
add more combat depth for the mega arachnid

## Changelog
🆑
refactor: the mega arachnid is now a basic monster ,please report any
bugs
feature: the mega arachnid now have an ability to slip victims
/🆑

* mega arachnid basic monster

---------

Co-authored-by: Ben10Omintrix <138636438+Ben10Omintrix@users.noreply.github.com>
2023-08-16 18:26:34 -04:00
SkyratBot
0cd4176458 [MIRROR] Rat King mouse summoning grammar fix [MDB IGNORE] (#23127)
* Rat King mouse summoning grammar fix (#77648)

## About The Pull Request

the rat king commands mice to their side, not rats; they turn said mice
into rats with a spell, but they do not summon mice.
`"[owner] commands a rat to their side!"`

this PR changes it from rat to mouse in the text.
`"[owner] commands a mouse to their side!"`

## Changelog

🆑
spellcheck: fixed the rat king text saying that they're summoning rats
/🆑

* Rat King mouse summoning grammar fix

---------

Co-authored-by: iwishforducks <65363339+iwishforducks@users.noreply.github.com>
2023-08-16 18:24:23 -04:00
SkyratBot
a2ac6b6873 [MIRROR] Removes Liver Damage From Spider Toxins, Reduces Injection Amount for Tangle Spider [MDB IGNORE] (#23128)
* Removes Liver Damage From Spider Toxins, Reduces Injection Amount for Tangle Spider (#77550)

## About The Pull Request

This PR adds a new value to toxins called liver_damage_multiplier. As
you might have guessed, this value modifies how much liver damage
processing the toxin will do, and it is default at 1. Spider toxins now
have this value set to 0, as having their toxins murdering livers isn't
an intentional part of their gameplay loop.

Tangle spiders also now inject half the amount of acid they used to. It
was actually really strong compared to the other toxin types and wasn't
intentional according to Seth.

## Why It's Good For The Game

Liver damage is very strong when it comes to spiders, but it isn't
considered at all in their balancing. Removing it makes the actual toxin
damage the threat and not the liver damage.

Tangle Spider isn't supposed to have high toxin damage, but because of
it injecting acid, it did more damage than the other spider types and
was requested to be have the injection amount reduced by Seth.

## Changelog
🆑
balance: Hunter and viper spider toxins no longer deal liver damage.
balance: Tangle spider's acid injection per bite reduced from 5 to 2.5.
/🆑

* Removes Liver Damage From Spider Toxins, Reduces Injection Amount for Tangle Spider

---------

Co-authored-by: IndieanaJones <47086570+IndieanaJones@users.noreply.github.com>
2023-08-16 18:20:41 -04:00
SkyratBot
b9259a5b4f [MIRROR] Rebalances nuisance cell lines for Cyto [MDB IGNORE] (#23132)
* Rebalances nuisance cell lines for Cyto (#77494)

## About The Pull Request

Makes the cockroach and blob spore cell lines easier to suppress in
Cytology.
Making fun stuff with Cytology already is very hard with how you have to
build your own setup in most maps and somehow get all the reagents you
need.

## Why It's Good For The Game

All of the fun recipes with Cytology require at least 1 of Organic
Slurry or Growth Serum. Sometimes both. And roaches are hard to suppress
and thrive on that. That means that if your cell line includes roaches
you are forced to throw it out. This change makes roaches at least able
to be dealt with by making them not grow as much from these fun reagents
and having a easier to find reagent to suppress them (salt).

Blob spores were already on a relatively balanced state where in some
petri dishes you could ignore them and in others you couldn't. I wanted
to preserve that fun aspect of figuring out if you should or not care
about blob spores based on what you see so I didn't touch its
supplementary reagents. However suppresing them was really hard so if
you did decide that you have to deal with them in the dish you had to
throw the entire petri dish away. This PR adds a way to deal with them;
it's not the easiest to get but it can be obtained with the chemist's
help or (more interestingly) the Psychologist's help since they spawn
with psicodine pills (iirc), making for a very nice interdepartmental
cooperation and giving a lil love to the Psychologist.

## Changelog

🆑
balance: Nuisance cell lines are easier to deal with in Cytology;
Cockroaches:
Salt  N/A -> -2

Growth Serum +2 -> +1
Organic Slurry +4 -> +2

Immature blob spore:
Psicodine: N/A -> -2

/🆑

* Rebalances nuisance cell lines for Cyto

---------

Co-authored-by: Fazzie <84548101+EuSouAFazer@users.noreply.github.com>
2023-08-16 18:14:54 -04:00
SkyratBot
621af5bfb4 [MIRROR] Fixes runtimes with arm implants in general and the Vorpal Scythe in particular [MDB IGNORE] (#23130)
* Fixes runtimes with arm implants in general and the Vorpal Scythe in particular (#77595)

## About The Pull Request

Two batches of runtimes, somewhat related:

1. Being dismembered while holding an extended arm implant would
runtime, because Retract() no longer has an owner to reference when
moving the deployed item back into the implant. This, on top of
runtiming, would make the item in question be permanently stuck (and
usable) on your missing limb. (Described, along a similar but seemingly
unrelated issue with the godhand, in #76899)

Solution: Sanity check for an owner, forcemove the item into the implant
if we don't have one.

2. Spamming sheathe and unsheathe on a vorpal blade seems to
occasionally cause it to retract while it isn't in your hand.
Additionally, being self-dismembered by unsheathing an unsated vorpal
blade would trigger runtime number 1 with a vengeance, as it calls
Retract() twice in the same block.

Solution: Sanity check to make sure we do have a scythe in hand before
continuing and some other changes and minor re-structuring to more
cleanly handle losing the limb.
## Why It's Good For The Game

The less runtimes, the better.
The less people running around with scythes and energy guns super-glued
to the stump of their arm, the better.
## Changelog
🆑
fix: items implanted on arms no longer become permanently stuck in-hand
when their limb is dismembered
fix: quickly sheathing and unsheathing the vorpal scythe can no longer
bug out and prevent its effects from being applied
/🆑

---------

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

* Fixes runtimes with arm implants in general and the Vorpal Scythe in particular

---------

Co-authored-by: A miscellaneous Fern <80640114+FernandoJ8@users.noreply.github.com>
Co-authored-by: san7890 <the@ san7890.com>
2023-08-16 18:14:37 -04:00
SkyratBot
77adc42cdc [MIRROR] Add policy for sentient mobs that were revived by lazarus injector [MDB IGNORE] (#23122)
* Add policy for sentient mobs that were revived by lazarus injector (#77515)

## About The Pull Request

There's two policies:
* Normal lazarus injector gives you the 'friendly revived mob' policy
since it normally makes mobs friendly to everyone,
* Default text: "The lazarus injector has brought you back to life! You
are now friendly to everyone."
* EMPed lazarus injector gives you the 'slaved revived mob' policy since
it normally makes mobs only friendly to you,
* Default text: "You have been revived by a malfunctioning lazarus
injector! You are now enslaved by whoever revived you."
* The EMPed lazarus injector now also enslaves the mob to the person who
revived them, giving them the text: "Serve [reviver], and assist
[reviver.p_them()] in completing [reviver.p_their()] goals at any cost."

Suggestions for default text welcome,
## Why It's Good For The Game

There's currently no policy for lazarus revived mobs, so can be
confusing. See https://tgstation13.org/phpBB/viewtopic.php?f=33&t=34538
Now it's more clear what they should do.
Admins can also change the text if they want.
## Changelog
🆑
add: Add policy for sentient mobs that were revived by lazarus injector
(depends on config)
add; Sentient mobs that were revived by malfunctioning lazarus injector
now get enslaved to whoever revived them.
fix: Servant golems get their master's real name (Won't be serving
"Unknown" if their master is wearing a mask)
/🆑

* Add policy for sentient mobs that were revived by lazarus injector

---------

Co-authored-by: BlueMemesauce <47338680+BlueMemesauce@users.noreply.github.com>
2023-08-16 18:14:02 -04:00
SkyratBot
51d62e685e [MIRROR] More Suits resprites (Bonus: Chef/Bartender updates!) [MDB IGNORE] (#23088)
* More Suits resprites (Bonus: Chef/Bartender updates!) (#77558)

## About The Pull Request
Finally, my ultimate goal:
All Lawyer suits are now under suits.dmi. Having some suits in suits.dmi
and some in civilian.dmi was just really really weird and confusing.

Also updated some more Service stuff, specifically the Chef and
Bartender. Their uniform is the generic Service Buttondown, and their
other gear has been updated. The Bartender, notably, now has a new item,
the bowtie!

Full changelog:
- Adds Bowtie (and yes, it's in relevant vendors)
- Adds a greyscale Formal Jacket (the lawyer jackets but greyscaled)
- Removes `/obj/item/clothing/under/rank/civilian/chef` and
`/obj/item/clothing/under/rank/civilian/bartender`; replaces them with
`/obj/item/clothing/under/costume/buttondown/slacks/service`
- **Moves all Lawyer suit sprites to the suits.dmi**
- Converted `/obj/item/clothing/under/rank/civilian/lawyer/bluesuit` to
use the same GAGS configs as the buttondown (path unchanged)
- Resprited all Lawyer suits (except galaxy ones)
- Resprited the Lawyer jackets to match (including a currently unused
GAGS-palette one)
- Resprited the Chef Apron-Jacket and Hat
- Resprited the Botanist Overalls (and made them Greyscale)
- Updated the shirt on the Cook Jorts to be more up-to-date instead of
being new pants on a super crusty old shirt sprite.
- Puts stuff into vendors

## Why It's Good For The Game
Sprote updates yahoo!

Chef/Bartender showed their age, and essentially had the same uniform.
Now they look much more at home.

![image](https://github.com/tgstation/tgstation/assets/76465278/c4c317c3-e62a-41d3-87fe-bb38c2a46552)
GAGS Suit jacket yippee!

![image](https://github.com/tgstation/tgstation/assets/76465278/a1eaf9a9-58c9-44ef-b967-fdc62311afbd)
This jacket was put into to the Bartender's vendor for the sake of
allowing them their own gimmicks, such as this:

![image](https://github.com/tgstation/tgstation/assets/76465278/eb42e93b-9442-4cd4-891f-091a74aaccbf)
New greyscale overalls wahooo! Since they're greyscaled they're also in
the clothesmate for anybody who really wants them.

![image](https://github.com/tgstation/tgstation/assets/76465278/c8aea289-d2d9-467d-949a-82563bccb2d3)
The Lawyer suits just used an entirely different type of shading and it
made them stick out weird... I'm not quite sure on reshaping their
jackets but figured it's better to start with this and update them if
requested.

![image](https://github.com/tgstation/tgstation/assets/76465278/9a74c3a3-a2b8-48d6-89f9-77d1e0fdd86a)

As for moving Lawyer suits to suits.dmi... I just don't like them being
split up. It makes it annoying to prevent duplicates or keep them all
updated.
## Changelog
🆑
add: Added the Bowtie! Bartenders start with one on, but they can also
be found in the Bardrobe, Autodrobe, and Clothesmate. No need to tie it
either, it's just a clip-on.
add: Added a Greyscale "Formal Jacket" of the style that most suits use,
for crew who want to make their own using the buttondown shirt.
del: Removed the generic Cook/Bartender uniforms and changed them to use
the Service buttondown w/ slacks.
image: updated the majority of Lawyer suit sprites, along with the
Cook's Apron-Jacket and Hat, and updated/greyscaled Botany's Overalls!
Also the Overalls are available in the clothesmate, and the Cook Jorts'
shirt is less crusty.
/🆑

* More Suits resprites (Bonus: Chef/Bartender updates!)

* Modular path changes/removals

* Modular adjustments: removing deleted sprites, creating digi sprites for overalls and purple bartender resprite, removing greyscale overalls

* Fix grayscale configs

* Update misc.dm

* Moves icons to new location

* Update civilian.dm

* I hate all of this so very much.

* Update civilian.dm

* Update loadout_datum_suit.dm

---------

Co-authored-by: OrionTheFox <76465278+OrionTheFox@users.noreply.github.com>
Co-authored-by: Giz <13398309+vinylspiders@users.noreply.github.com>
2023-08-16 18:13:39 -04:00
SkyratBot
d3b87e03f2 [MIRROR] Plumbing RCD Refactors [MDB IGNORE] (#23096)
* Plumbing RCD Refactors (#77563)

## About The Pull Request
- Removed the `category` var from all plumbing machinery, now all the
designs are organized by category in a single static list(1 list for
each plumbing rcd type). This makes it easy to add new designs to 1 list
in the future and since the list is static memory is saved when multiple
plumbing RCDs are made in game
- Removed redundant `machinery_data` list. This list simply stored the
cost of designs from the `plumbing_designs` list. Rather than wasting
memory with this list we can derive the cost from `plumbing_designs`
list ourselves
- Removed unused list `choices`. No idea what that did back then
- When low on ammo the plumbing RCD would display multiple balloon
alerts. That's fixed now
- Made the icon sizes of designs in the UI slightly smaller so they
don't clip and look blurry

## Changelog
🆑
fix: multiple balloon alerts when the plumbing RCD is low on ammo
code: organized all plumbing designs into static lists for memory
savings
refactor: removed unused vars for further memory savings
/🆑

* Plumbing RCD Refactors

* Nonmodular update because static

---------

Co-authored-by: SyncIt21 <110812394+SyncIt21@users.noreply.github.com>
Co-authored-by: Giz <13398309+vinylspiders@users.noreply.github.com>
2023-08-16 14:15:38 -07:00
SkyratBot
eecf8a080e [MIRROR] Dismemberment moodlets are alleviated when recovering your limbs. [MDB IGNORE] (#23121)
* Dismemberment moodlets are alleviated when recovering your limbs. (#77581)

## About The Pull Request

What it says on the tin.
When reattaching a limb, the respective dismemberment debuff will be
replaced by a significantly less severe one (-3 for 2
minutes as opposed to -10 for 8 minutes)
However, the way I've done it, to that ensure replacing a leg when
you're missing 4 limbs doesn't clear the moodbuff, has the entertaining
side effect of **allowing dismemberment moodlets to stack for each limb
you've lost, and being cleared separately.**
I honestly kind of like it. Their description changes in accordance to
what limb it is as well.
## Why It's Good For The Game

It doesn't make much sense for your character to continue lamenting the
loss of their arm/leg after they've already acquired a replacement.
I also like that this makes losing multiple limbs worse than losing just
one, as someone who's been nugget-ed would have a far worse day than
someone who has simply lost an arm.

Closes #77388.
## Changelog
🆑
fix: dismemberment moodlets are replaced by a lesser mood debuff when
you recover the limb in question.
balance: dismemberment moodlets can now stack for each limb you lose,
and are cleared separately. Their descriptions have been updated to
reflect this.
/🆑

---------

Co-authored-by: MrMelbert <51863163+MrMelbert@ users.noreply.github.com>
Co-authored-by: Ghom <42542238+Ghommie@ users.noreply.github.com>

* Dismemberment moodlets are alleviated when recovering your limbs.

---------

Co-authored-by: A miscellaneous Fern <80640114+FernandoJ8@users.noreply.github.com>
Co-authored-by: MrMelbert <51863163+MrMelbert@ users.noreply.github.com>
Co-authored-by: Ghom <42542238+Ghommie@ users.noreply.github.com>
2023-08-16 12:06:08 -04:00
SkyratBot
57f952f49f [MIRROR] ammo bands no longer disappear upon icon updates [MDB IGNORE] (#23119)
* ammo bands no longer disappear upon icon updates (#77603)

## About The Pull Request
moves the `update_ammo_band()` call from `update_icon_state` to
`update_overlays`, so that the ammo layer sticks around

## Why It's Good For The Game

visual clarity. i want to be able to see which speedloader/magazine/etc
does what for my gun

## Changelog

🆑
fix: Colored ammo bands, such as those on .357 and .38 speedloaders, no
longer permanently disappear upon icon update.
/🆑

---------

Co-authored-by: Hatterhat <Hatterhat@ users.noreply.github.com>

* ammo bands no longer disappear upon icon updates

---------

Co-authored-by: Hatterhat <31829017+Hatterhat@users.noreply.github.com>
Co-authored-by: Hatterhat <Hatterhat@ users.noreply.github.com>
2023-08-16 09:49:18 -04:00
SkyratBot
ac5d85a080 [MIRROR] Fix spaceacillin's infection processing not applying to corpses [MDB IGNORE] (#23118)
* Fix spaceacillin's infection processing not applying to corpses (#77635)

## About The Pull Request
Spaceacillin used to be able to be able to treat infections on the dead
as well as the living, and got unintentionally changed in #76393. Simply
brings back old functionality
## Why It's Good For The Game
Fix bugs!
## Changelog
🆑
fix: Spaceacillin will once again provide antiviral effects for the
deceased
/🆑

* Fix spaceacillin's infection processing not applying to corpses

---------

Co-authored-by: FlufflesTheDog <piecopresident@gmail.com>
2023-08-16 09:49:02 -04:00
SkyratBot
3b01999db7 [MIRROR] Fixes Ticked File Enforcement and Missing Unit Test (and makes said Unit Test Compile) (and genericizes the C&D list to the base unit test datum) [MDB IGNORE] (#23117)
* Fixes Ticked File Enforcement and Missing Unit Test (and makes said Unit Test Compile) (and genericizes the C&D list to the base unit test datum)

* Updates ignores

---------

Co-authored-by: san7890 <the@san7890.com>
Co-authored-by: Giz <13398309+vinylspiders@users.noreply.github.com>
2023-08-16 04:08:15 -04:00
SkyratBot
7456c9be22 [MIRROR] Add the ability to use blips as your character's voice [MDB IGNORE] (#23109)
* Add the ability to use blips as your character's voice (#77640)

## About The Pull Request

- Adds the ability to force your TTS voice to always be blips, default
is still normal speech
- Probably fixes a bug with silicon voices not transferring properly?
There was an entire argument missing from tts_request/New
- Fixes problems I got from the Docker build not working at all. Only
thing interesting is `--no-cache-dir` which was to fix the container
running out of RAM even though I literally just got 64GB of RAM today

Got permission from @ optimumtact as alternative to being able to disable
your voice, CC @ Iamgoofball

## Why It's Good For The Game

I spent two hours trying to find a voice that didn't make me
uncomfortable to use and that was even in the realm of being the voice I
would actually want people to hear. Characters still have distinct
"voices" because the blips are chopped together from the voice itself

## Changelog

🆑
add: You can now set your voice to just blips.
/🆑

* Add the ability to use blips as your character's voice

---------

Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
2023-08-16 00:12:33 -07:00
SkyratBot
34306b4266 [MIRROR] Buffs Heretic ash ascension [MDB IGNORE] (#23114)
* Buffs Heretic ash ascension (#77618)

## About The Pull Request

Post-Ascension the Nightwatchers Rebirth (Or Fiery Rebirth) has its
cooldown lowered from 60 seconds to 10
Additionally adds bomb immunity to the list of resistances that
ascension provides

## Why It's Good For The Game

Ash ascension kind of sucks when compared to its big brothers flesh,
rust and blade. You do get a couple of cool spells but their impact is
negated by how shitty fire damage is and while you get a ton of
resistances, you don't get stun immunity and have absolutely zero
sustainability in long-term engagements.

Blade has its lifesteal, rust has its leeching walk and flesh has a big
worm that eats arms. And while the laziest solution would be to give ash
stun immunity like those three I think it'd be more fitting if it could
capitalize on one of its more powerful spells. Keeping in the fight by
siphoning health from all those people you lit on fire with your cascade
instead of watching in pain as they completely negate any threat you
have with a fire extinguisher and temp adapt.

* Buffs Heretic ash ascension

---------

Co-authored-by: DaydreamIQ <62606051+DaydreamIQ@users.noreply.github.com>
2023-08-16 02:16:08 -04:00
SkyratBot
dbb980552f [MIRROR] Food Expansion 6 - Pineapple, eggplant, and more! [MDB IGNORE] (#23112)
* Food Expansion 6 - Pineapple, eggplant, and more! (#77516)

## About The Pull Request

This is my sixth food expansion, focusing primarily on adding more
recipes for under-utilized ingredients such as pineapple, eggplant, and
pickles. Included are a few more cookies, spaghettis, sushis, and other
miscellaneous recipes for people to toy around with.

![Hysk0xw](https://github.com/tgstation/tgstation/assets/18170896/81215f2b-2b09-4990-9109-98e1f0409011)

![dWNLtus](https://github.com/tgstation/tgstation/assets/18170896/55e57a8c-caf1-481a-a7bb-03e97178f1b3)

![zMOejJR](https://github.com/tgstation/tgstation/assets/18170896/b5ae8f1e-29d2-409c-96db-fe9d908a78ef)

![EvGani9](https://github.com/tgstation/tgstation/assets/18170896/33093d22-a610-443d-badc-4ab1ac57f2bf)

![l8kCeEh](https://github.com/tgstation/tgstation/assets/18170896/b404eefc-f331-4846-aafc-aa2e7a53b613)

![VcyvMAF](https://github.com/tgstation/tgstation/assets/18170896/52e8a177-a48a-4544-98d0-ca257ad10965)

## Why It's Good For The Game

Adding more recipes for under-utilized ingredients actually makes them
useful, and encourages people to make more diverse menus now that there
are recipes which use them. Pineapple for example only had 3 recipes up
until now. After this PR, it will have 8. Other than that, adding more
recipe options allows for greater flexibility of chef gameplay,
especially with simpler and easier to make options such as the falafel.

## Changelog
🆑
add: Added 28 new food recipes!
/🆑

* Food Expansion 6 - Pineapple, eggplant, and more!

---------

Co-authored-by: MidoriWroth <kodyman@att.net>
2023-08-16 02:15:47 -04:00
SkyratBot
18fe4b547e [MIRROR] Stopgap fix for polymorphed headrevs counting towards a rev loss [MDB IGNORE] (#23111)
* Stopgap fix for polymorphed headrevs counting towards a rev loss (#77636)

## About The Pull Request

Revheads being a simplemob, basic mob, or xenomorph no longer count
towards a rev loss.

## Why It's Good For The Game

Strictly checking that a revhead is a human introduces several edge
cases in which a revolution would be considered defeated, even if the
last headrev is alive, on station, and able to eliminate command staff.
Such cases include:
- A promoted traitor getting the final objective that lets them turn
into a dragon.
- A promoted, ascended Flesh heretic.
- A headrev getting brain transplanted into a xenomorph, especially a
queen.
- The Polymorphic Field Inverter.
- Other crew-obtainable sources of polymorphing (ash drake/wendigo
blood, colossus crystal, etc.)

Heads of staff don't count towards a rev win in any of these cases, so
it should be fair that revheads in these cases don't count towards a
loss either.

There are probably some more rigorous checks that should be done because
the original intention of the strict humanity check for revheads
probably had to do with being able to convert, but those seem a bit too
complicated for now.

Fixes #77634

## Changelog

🆑
fix: Head Revolutionaries no longer count towards a revolution's defeat
if they have become simplemobs, basic mobs, or xenomorphs.
/🆑

* Stopgap fix for polymorphed headrevs counting towards a rev loss

---------

Co-authored-by: Y0SH1M4S73R <legoboyo@earthlink.net>
2023-08-16 02:14:52 -04:00
SkyratBot
d5b783feaf [MIRROR] Chemistry Heaters can now be unwrenched [MDB IGNORE] (#23113)
* Chemistry Heaters can now be unwrenched (#77612)

## About The Pull Request
Chemistry heaters can now be unwrenched. now you can steal the ENTIRE
chemistry setup
## Why It's Good For The Game
The dispenser and the chem master can be unwrenched, so I've made it
more consistent, especially considering the sprite of the reaction
chamber just has two tiny legs attaching it to the ground.

## Changelog
🆑
qol: the chemistry heater can now be unwrenched.
/🆑

* Chemistry Heaters can now be unwrenched

---------

Co-authored-by: Vincent983 <124026007+Vincent983@users.noreply.github.com>
2023-08-16 02:14:14 -04:00
SkyratBot
2644a9e37d [MIRROR] New Mech UI and equipment refactor [MDB IGNORE] (#23098)
* New Mech UI and equipment refactor

* Update mecha_defense.dm

* Update clothing.dm

---------

Co-authored-by: Andrew <mt.forspam@gmail.com>
Co-authored-by: Bloop <13398309+vinylspiders@users.noreply.github.com>
2023-08-15 19:59:50 -04:00
SkyratBot
b446591e96 [MIRROR] Held items are now dropped when their associated arm is dismembered [MDB IGNORE] (#23101)
* Held items are now dropped when their associated arm is dismembered (#77613)

## About The Pull Request

What it says on the tin. The parent of
`obj/item/bodypart/arm/drop_limb()` would remove the arm from the
owner's hand_bodyparts list, which would then prevent the child proc
from dropping the item held in the now missing hand.

Now we call the parent afterwards and it works just fine.
## Why It's Good For The Game

Addresses the issue with the GodHand described in #76899, although it's
not limited to items you can't ordinarily drop. It's a bit more
noticeable with them, because there's no risk of dropping the item in
shock if the limb is being hit with a weapon, but you can verify using
amputation shears that any ordinary item would also stay stuck on the
arm.
## Changelog
🆑
fix: items no longer stay in your hands after their respective arm is
dismembered
/🆑

* Held items are now dropped when their associated arm is dismembered

---------

Co-authored-by: A miscellaneous Fern <80640114+FernandoJ8@users.noreply.github.com>
2023-08-15 19:59:09 -04:00
SkyratBot
2d804d3645 [MIRROR] Reflavors the Mosin to be a surplus rifle from the past IC 200 years, rather than from 670 years ago in game. Allergy warning: May contain microscopic silverscale buff [MDB IGNORE] (#23091)
* Reflavors the Mosin to be a surplus rifle from the past IC 200 years, rather than from 670 years ago in game. Allergy warning: May contain microscopic silverscale buff

* oorah

* im sure more will come up eventually

---------

Co-authored-by: Paxilmaniac <82386923+Paxilmaniac@users.noreply.github.com>
Co-authored-by: Paxilmaniac <paxilmaniac@gmail.com>
2023-08-15 16:41:13 -04:00
SkyratBot
2f5a976935 [MIRROR] Putting mobs into evidence bags no longer causes harddels [MDB IGNORE] (#23085)
* Putting mobs into evidence bags no longer causes harddels (#77583)

## About The Pull Request

Fun interaction. Since evidence bags make you drop held items to the
floor and then forcemove the item into the bag, mob holders would dump
the mob on the floor, be qdeleted and have their references cleared and
then be put inside the bag's contents, bugging the fuck out and staying
in the bag (`put_in_hands()` fails if the item in question is qdeleted)
until it's eventually harddeleted because the reference to it in the
evidence bag never gets cleared.

![image](https://github.com/tgstation/tgstation/assets/80640114/42cc4748-653f-4ed7-98fa-4c9cd39615e9)
<details>

<summary>Harddel logs</summary>

```
[2023-08-13 12:05:25.908] RUNTIME: ## REF SEARCH Beginning search for references to a /obj/item/clothing/head/mob_holder.
[2023-08-13 12:05:26.089] RUNTIME: ## REF SEARCH Finished searching globals
[2023-08-13 12:05:26.353] RUNTIME: ## REF SEARCH Finished searching native globals
[2023-08-13 12:05:59.099] RUNTIME: ## REF SEARCH Found /obj/item/clothing/head/mob_holder [0x2001ffb] in list World -> /obj/item/evidencebag [0x20140e8] -> contents (list).
[2023-08-13 12:09:22.401] RUNTIME: ## REF SEARCH Finished searching atoms
[2023-08-13 12:09:50.415] RUNTIME: ## REF SEARCH Finished searching datums
[2023-08-13 12:09:50.419] RUNTIME: ## REF SEARCH Finished searching clients
[2023-08-13 12:09:50.421] RUNTIME: ## REF SEARCH Completed search for references to a /obj/item/clothing/head/mob_holder.
[2023-08-13 12:09:50.427] RUNTIME: ## TESTING: GC: -- [0x2001ffb] | /obj/item/clothing/head/mob_holder was unable to be GC'd
```

</details>

My solution was to change the checks of the evidence bag. Rather than
making you drop the item, they will check that the item is in your hands
and that it doesn't have `TRAIT_NODROP`. If either isn't true, it will
fail, which I think covers all the relevant cases for this. It should
avoid any similar issues in the future with items that dissapear when
dropped. (Hand gestures would have also suffered from this if they
weren't excluded in an earlier check, for example).

As an additional fallback, it will also check if the item is qdeleted
before trying to forcemove it.
## Why It's Good For The Game

Closes #77197.
Hard deletes are bad, real bad.
## Changelog
🆑
fix: mob holders no longer bug out and harddel when put into evidence
bags.
/🆑

* Putting mobs into evidence bags no longer causes harddels

---------

Co-authored-by: A miscellaneous Fern <80640114+FernandoJ8@users.noreply.github.com>
2023-08-14 20:42:38 -04:00
SkyratBot
f3072d7377 [MIRROR] Adds a unique medibot to the Syndicate Infiltrator [MDB IGNORE] (#23084)
* Adds a unique medibot to the Syndicate Infiltrator (#77582)

## About The Pull Request

Adds a unique medibot to the Syndicate Infiltrator. It doesn't like
nukes - when one is armed, disarmed, or detonating, it says an unique
line. Players can optionally enable personalities on it if they want to.
Probably best to just let it stay on the shuttle though. (It's also in
the Interdyne Pharmaceuticals ship, renamed)

Fixed an issue that made mapload medibots unable to load custom skins.

This PR adds a medibot subtype to the simple animal freeze list, which I
don't think is a big deal as this isn't a 'true' simplemob but just a
slightly altered medibot, similarly to my 'lesser Gorillas' in the
summon simians PR.

## Why It's Good For The Game

> Adds a unique medibot to the Syndicate Infiltrator. It doesn't like
nukes - when one is armed, disarmed, or detonating, it says an unique
line. Players can optionally enable personalities on it if they want to.
Probably best to just let it stay on the shuttle though.

I know what the inmediate reaction is here - but hear me out. Besides
the meme of the month, it really, genuinely is cute and amusing to have
a friendly medibot that shows dismay when you're arming the nuke and
horror when it blows up (with you, hopefully, at the syndibase), and
still fits quite well within SS13's charm and flavor. The reference
isn't overt and in-your-face.

Besides that, slip-ups, friendly fire, and accidents are semi-common on
the shuttle and, just like Wizards, nukies deserve a bot to patch their
wounds up.

> (It's also in the Interdyne Pharmaceuticals ship, renamed)

I think it makes sense for the pharmacists to have an evil medibot!

> Fixed an issue that made mapload medibots unable to load custom skins.

Fixed "bezerk" skin not appearing. Didn't fix it being ugly as sin
though.

## Changelog

🆑
add: Adds a unique medibot to the Syndicate Infiltrator. It doesn't like
nukes - when one is armed, disarmed, or detonating, it says an unique
line. Players can optionally enable personalities on it if they want to.
Probably best to just let it stay on the shuttle though. (It's also in
the Interdyne Pharmaceuticals ship, renamed)
fix: Fixed an issue that made mapload medibots unable to load custom
skins.
/🆑

---------

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

* Adds a unique medibot to the Syndicate Infiltrator

---------

Co-authored-by: carlarctg <53100513+carlarctg@users.noreply.github.com>
Co-authored-by: Fikou <23585223+Fikou@ users.noreply.github.com>
2023-08-14 20:42:23 -04:00
SkyratBot
2ac66a8a4a [MIRROR] Adds sanity checking to prefs checks, fixing a bug that can cause emotes to stop displaying intermittently [MDB IGNORE] (#23081)
* Adds sanity checking to prefs checks, fixing a bug that can cause emotes to stop displaying intermittently

* Update vox_procs.dm

---------

Co-authored-by: Bloop <13398309+vinylspiders@users.noreply.github.com>
2023-08-14 19:40:51 -04:00
SkyratBot
d0a892d19c [MIRROR] Big Slappy | Giant Weapon DLC [MERGE READY!!!] [MDB IGNORE] (#23082)
* Big Slappy | Giant Weapon DLC [MERGE READY!!!] (#77273)

## About The Pull Request
Big Slappy is a new illegal shovel/wrench which can be obtained through
illegals means. Parts you need to craft it can be found on the black
market uplink for a low price, but if it is not there you can find it on
the imports page on your hacked cargo console for 4400 credits usually.
Big Slappy makes you slow and you will get 10 recoil damage everytime
you hit someone and you will knock down your opponent for two seconds
while throwing people back like a baseball bat. It deals 30 damage and
is the fastest shovel/wrench out there. It can be folded into its wrench
form which will change its typing and makes it look like a wrench. It
also deals more damage in the wrench state, but also deals more recoil
damage and your target will not get knocked down. This weapon will
probably only appear in a few rounds since it has recoil damage, is slow
and costs a lot to obtain. It also has a longer meele attack cooldown.

To craft it you need 4 wrenches, 1 drill, 5 plasteel, 10 rods and 1 big
slappy parts using tools.

![promo](https://github.com/tgstation/tgstation/assets/25363960/4d619283-832c-4ce0-b3b2-e6ddb3dbd988)
## Why It's Good For The Game
Cool new weapon.
## Changelog
🆑
add: Added big slappy
image: Added big slappy parts and big slappy sprites
/🆑

* Big Slappy | Giant Weapon DLC [MERGE READY!!!]

---------

Co-authored-by: Comxy <tijntensen@gmail.com>
2023-08-14 19:27:01 -04:00
SkyratBot
3bbd9a254a [MIRROR] basic ice whelps [MDB IGNORE] (#23077)
* basic ice whelps (#77493)

## About The Pull Request
i have refactored ice whelps into basic mobs. They are now the artistic
sort as theyll mark their territory by seeking out icy rocks and carve
out statues of theirselves using their claws to serve as a warning to
players/animals that this is dragon turf and theyll also go out of their
way to burn any trees in vicinity just for the hell of it. they are now
gruesome cannibals if they find a corpse of one of their kin near them
theyll go eat it for nurishment. AS for combat, they have a new ability
which allows them to release fire in all directions however theyll only
use this ability once their enraged meter is full. to make it fair ive
given them a new component which allows them to telegraph abilities and
only do them after a delay so players can react in time for it.

## Why It's Good For The Game
basic mob refactor

## Changelog
🆑
refactor: ice whelps have been refactored to basic mobs
add: ice whelps have a new dangerous ability which theyll use once their
enraged meter is full
/🆑

* basic ice whelps

* Modular paths

---------

Co-authored-by: SMOSMOSMOSMOSMO <95004236+SmoSmoSmoSmok@users.noreply.github.com>
Co-authored-by: Giz <13398309+vinylspiders@users.noreply.github.com>
2023-08-14 19:17:20 -04:00