Commit Graph

42709 Commits

Author SHA1 Message Date
SkyratBot
164edf5fa0 [MIRROR] [no gbp] some medbot fixes [MDB IGNORE] (#25472)
* [no gbp] some medbot fixes (#80150)

## About The Pull Request
medbots now drop hats when tipped closes #80134
medbots now drop their items when they explode
player controlled bots now have their normal speed back

## Why It's Good For The Game
they will now correctly drop their hats when tipped

## Changelog
🆑
fix: medbots now drop hats when tipped and drop their items when they
explode
/🆑

---------

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

* [no gbp] some medbot fixes

---------

Co-authored-by: Ben10Omintrix <138636438+Ben10Omintrix@users.noreply.github.com>
Co-authored-by: san7890 <the@ san7890.com>
2023-12-06 22:00:04 -05:00
SkyratBot
4433c8491d [MIRROR] Turns the "Admin Permission Elevation Notification" into a macro [MDB IGNORE] (#25474)
* Turns the "Admin Permission Elevation Notification" into a macro (#80149)

## About The Pull Request
Turns this boilerplate message into a centralized macro because this
code is important, but not so important that every coder know the nitty
gritty details of it. In case someone wants to add more logging/handling
(or update the message), there's now a central macro to update for all
nine events in which we check.

This shouldn't break anything because it's the exact same thing we were
doing previously and the early return checks are still all there, but it
does work on my machine regardless ✔️

![image](https://github.com/tgstation/tgstation/assets/34697715/db4405d3-e57d-4c29-8a01-b32ba185041b)

* Turns the "Admin Permission Elevation Notification" into a macro

---------

Co-authored-by: san7890 <the@san7890.com>
2023-12-06 21:59:06 -05:00
Hypertorus Fusion Reactor
068ed05ddd Gasping in shock, but for non-humans! (#25470)
* makes gaspshock no longer limited to humans

* Revert "makes gaspshock no longer limited to humans"

This reverts commit 06e4d2d7dcce182d832d9b3e3ea9f10a2d7d5211.

* makes *gaspshock no longer limited to humans

* SKYRAT EDIT CHANGE comment

Co-authored-by: Bloop <13398309+vinylspiders@users.noreply.github.com>

* Update code/modules/mob/living/emote.dm

* Update code/modules/mob/living/emote.dm

* Update code/modules/mob/living/emote.dm

---------

Co-authored-by: Bloop <13398309+vinylspiders@users.noreply.github.com>
2023-12-06 23:35:54 +00:00
SkyratBot
d852cc21df [MIRROR] Adds a modular bitrunning map, changes safehouse spawns [MDB IGNORE] (#25363)
* Adds a modular bitrunning map, changes safehouse spawns (#79937)

## About The Pull Request
Primarily, this adds one new map to bitrunning that uses modular rooms.

<details>
<summary>pictures</summary>

![image](https://github.com/tgstation/tgstation/assets/42397676/48d78e05-1134-477c-a269-a4b71064058b)

![Screenshot 2023-11-25
133937](https://github.com/tgstation/tgstation/assets/42397676/851d6235-e939-465c-92e5-830886d50d9c)

![image](https://github.com/tgstation/tgstation/assets/42397676/6094dae6-fc3b-4cc4-9fd5-d7dd6d944cee)

</details>

I also added in some changes:
- Safehouses are now loaded using the modular map system rather than the
bespoke solution qservers had.
- Lowers the difficulty of psyker shuffle (which I felt was a little too
nightmarish) and boosts its rewards.
## Why It's Good For The Game
New maps
More integration with prior systems
## Changelog
🆑
add: Added a new modular bitrunning domain - Starfront Saloon.
balance: Psyker shuffle domain was made slightly easier and has been
given more rewards.
/🆑

* Adds a modular bitrunning map, changes safehouse spawns

* Linterpass minus Milsim

* readds Milsim

---------

Co-authored-by: Jeremiah <42397676+jlsnow301@users.noreply.github.com>
Co-authored-by: Zergspower <Griffinj88@yahoo.com>
2023-12-06 16:48:12 -06:00
xXPawnStarrXx
d303f090bb Primitive storage 2: food and flower boogaloo (#25377)
* Add files via upload

* Add files via upload

* Update storage_structures.dm

* Update sheet_types.dm

* Update ash_flora.dm

* Update storage_structures.dm
2023-12-06 08:58:31 -05:00
SkyratBot
8df7202455 [MIRROR] Rename notify_ghost_cloning to notify_revival [MDB IGNORE] (#25442)
* Rename notify_ghost_cloning to notify_revival (#80096)

<!-- Write **BELOW** The Headers and **ABOVE** The comments else it may
not be viewable. -->
<!-- You can view Contributing.MD for a detailed description of the pull
request process. -->

## About The Pull Request

Renames
- `/mob/proc/notify_ghost_cloning` to `/mob/proc/notify_revival`
- `/mob/dead/observer/proc/notify_cloning` to
`/mob/dead/observer/proc/send_revival_notification`
- `/atom/movable/screen/alert/notify_cloning` to
`/atom/movable/screen/alert/revival`.

I could have found a way to merge both procs together but default
parameters keep me up at night.

<!-- Describe The Pull Request. Please be sure every change is
documented or this can delay review and even discourage maintainers from
merging your PR! -->

## Why It's Good For The Game

Conciseness, code that is named after a removed feature is silly.

<!-- Argue for the merits of your changes and how they benefit the game,
especially if they are controversial and/or far reaching. If you can't
actually explain WHY what you are doing will improve the game, then it
probably isn't good for the game in the first place. -->

## Changelog

<!-- If your PR modifies aspects of the game that can be concretely
observed by players or admins you should add a changelog. If your change
does NOT meet this description, remove this section. Be sure to properly
mark your PRs to prevent unnecessary GBP loss. You can read up on GBP
and it's effects on PRs in the tgstation guides for contributors. Please
note that maintainers freely reserve the right to remove and add tags
should they deem it appropriate. You can attempt to finagle the system
all you want, but it's best to shoot for clear communication right off
the bat. -->

nothing playerfacing

<!-- Both 🆑's are required for the changelog to work! You can put
your name to the right of the first 🆑 if you want to overwrite your
GitHub username as author ingame. -->
<!-- You can use multiple of the same prefix (they're only used for the
icon ingame) and delete the unneeded ones. Despite some of the tags,
changelogs should generally represent how a player might be affected by
the changes rather than a summary of the PR's contents. -->

* Rename notify_ghost_cloning to notify_revival

* Missed wow

* Modular

---------

Co-authored-by: distributivgesetz <distributivgesetz93@gmail.com>
Co-authored-by: SomeRandomOwl <somerandomowl@ratchtnet.com>
2023-12-06 01:36:04 -05:00
xXPawnStarrXx
857c588553 Clean soups (#25408)
* Add files via upload

* Update tgstation.dme

* Update soup_mixtures.dm

* Update modular_skyrat/modules/supersoups/code/soup_mixtures.dm

Co-authored-by: Bloop <13398309+vinylspiders@users.noreply.github.com>

* Update code/modules/food_and_drinks/recipes/soup_mixtures.dm

Co-authored-by: Bloop <13398309+vinylspiders@users.noreply.github.com>

* Update modular_skyrat/modules/supersoups/code/soup_mixtures.dm

Co-authored-by: Bloop <13398309+vinylspiders@users.noreply.github.com>

* Here, let me get you started

* Moving this to the module

* Cursed tabs

* The whole thing needs to be tab spaced...

* Update stove.dm.dm

* Rename stove.dm.dm to stove.dm

* Update tgstation.dme

---------

Co-authored-by: Bloop <13398309+vinylspiders@users.noreply.github.com>
2023-12-06 01:08:25 -05:00
SkyratBot
53c3282f7e [MIRROR] Nar'Sie Only Ends The Round After Specific Proc Is Called [MDB IGNORE] (#25464)
* Nar'Sie Only Ends The Round After Specific Proc Is Called (#80127)

## About The Pull Request

Addresses at least one aspect of
https://github.com/tgstation/tgstation/issues/80125#issuecomment-1839262085

Nar'Sie will no longer end the round unless a specific proc is invoked.
There is a button in the VV Dropdown (although it is painful to get to
because the icon is so long) to invoke this proc (which is confirmation
guarded). Calling this proc directly via Atom Proccall will also give
you a confirmation prompt as well.
## Why It's Good For The Game

We trivially need to know what Nar'Sie looks like at times or just need
to access some variables about it, this greatly lowers the odds that the
whole round will be completely wacked out just because of this. It also
provides a nice QoL for admins to spawn in Nar'Sie and then varedit the
image to be of a cute kitty cat, and only after their setup is complete
can they start to torture players.
## Changelog
🆑
admin: Spawning in Nar'Sie will no longer automatically trigger the
round-ender, you need to specifically start this chain of events through
the new VV Dropdown Option "Begin Nar'Sie Roundender".
/🆑

* Nar'Sie Only Ends The Round After Specific Proc Is Called

---------

Co-authored-by: san7890 <the@san7890.com>
2023-12-06 00:54:21 -05:00
SkyratBot
eccaf8ac77 [MIRROR] Fix medibots [MDB IGNORE] (#25454)
* Fix medibots

* Conflict!

---------

Co-authored-by: Verm <32827189+Vermidia@users.noreply.github.com>
Co-authored-by: SomeRandomOwl <somerandomowl@ratchtnet.com>
2023-12-05 22:14:38 -06:00
SkyratBot
606ed4cce7 [MIRROR] adds a propeller hat, rainbow bowtie, and a swirl lollipop [MDB IGNORE] (#25448)
* adds a propeller hat, rainbow bowtie, and a swirl lollipop (#80034)

## About The Pull Request
Says it on the tin, adds a propeller hat and large rainbow bowtie which
can both be bought from the costume vendor. It also adds a comically
large swirl lollipop which can be bought from the premium section of the
snack vendors.

Propeller hats makes you happy by giving you a small positive moodlet
because they fill you with whimsical joy.

spinning propeller hat and bowtie showcase

https://github.com/tgstation/tgstation/assets/58376695/5617026e-6e43-4505-9911-b9ca1325e0f1

![image](https://github.com/tgstation/tgstation/assets/58376695/17030730-01ad-4b4e-894a-051d43a70f29)

comically large lollipop

![image](https://github.com/tgstation/tgstation/assets/58376695/6d235971-5323-47b2-8cf8-0015fbc8509b)
## Why It's Good For The Game
All of these things are iconic, funny, and I don't know why we don't
already have them.

![striders](https://github.com/tgstation/tgstation/assets/58376695/185ad63b-8221-4050-9897-9df8cde5d1fd)
## Changelog
🆑
add: adds propeller hats, rainbow bowties, and swirl lollipops
/🆑

---------

Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>

* adds a propeller hat, rainbow bowtie, and a swirl lollipop

---------

Co-authored-by: die_amond <58376695+dieamond13@users.noreply.github.com>
Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>
2023-12-05 18:20:16 -05:00
SkyratBot
a22c5fde78 [MIRROR] Moves thinking_IC variable to a trait [MDB IGNORE] (#25441)
* Moves `thinking_IC` variable to a trait (#80122)

## About The Pull Request

This was another boolean that was used to just manage stuff codeside
that really was not accessed _too_ much and is ultimately not useful as
a variable on `/mob`. This just moves it to a trait because it's only
really used in a few spots for a similar intent+purpose.
## Why It's Good For The Game

Less stuff to deal with in the average view variables window whenever
looking at a mob, which is really nice and welcome.
## Changelog
Doesn't concern players.

* Moves `thinking_IC` variable to a trait

---------

Co-authored-by: san7890 <the@san7890.com>
2023-12-05 02:32:25 -06:00
SkyratBot
6001394929 [MIRROR] Reworks invisimin variable to a trait [MDB IGNORE] (#25440)
* Reworks `invisimin` variable to a trait (#80121)

## About The Pull Request

This was a variable that existed on the `/mob` level despite only ever
being altered in one place. Perfect to just make a trait since it's all
managed in one spot anyways (and no other code is really reliant on this
flag being flipped, it's just for the code to know to add/remove
invisimin status).

I also tweaked some messages so they could be more consistent, lmk if
that should be changed
## Why It's Good For The Game

Less not-useful stuff to scroll through in View Variables, better
scoping of a variable to an intended location.
## Changelog
Not necessary

* Reworks `invisimin` variable to a trait

---------

Co-authored-by: san7890 <the@san7890.com>
2023-12-05 02:32:07 -06:00
SkyratBot
d6de4aaf41 [MIRROR] Blood brother gives chat log for conversions, fix blood brothers getting more antags (maybe?), better admin logging [MDB IGNORE] (#25438)
* Blood brother gives chat log for conversions, fix blood brothers getting more antags (maybe?), better admin logging (#80095)

I think I fixed the issue of blood brothers getting more antags by
setting special_role. Dynamic rulesets are too complicated and this
shouldn't even be possible as a bug. I intend to completely rewrite how
rulesets work.

* Blood brother gives chat log for conversions, fix blood brothers getting more antags (maybe?), better admin logging

---------

Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
2023-12-05 02:31:53 -06:00
SkyratBot
9c60ff1de1 [MIRROR] Removes Clone Damage [MDB IGNORE] (#25429)
* Removes Clone Damage

* Update blackbox.dm

* Modular

* Update schema

* Update database_changelog.md

* More modular deprecated clone things

---------

Co-authored-by: distributivgesetz <distributivgesetz93@gmail.com>
Co-authored-by: Bloop <13398309+vinylspiders@users.noreply.github.com>
2023-12-04 23:01:54 -05:00
SkyratBot
22f76b72ae [MIRROR] Express Console Code Improvement [MDB IGNORE] (#25426)
* Express Console Code Improvement (#80081)

## About The Pull Request
Account ID for Express Console was hardcoded, idk why. Now, it uses
"cargo_account" var, to select department's account, as it is in default
cargo console.
## Why It's Good For The Game
You can use VV to change charging account for Express Console and other
shenanigans.

* Express Console Code Improvement

---------

Co-authored-by: ReezeBL <shilk.e82@gmail.com>
Co-authored-by: SomeRandomOwl <2568378+SomeRandomOwl@users.noreply.github.com>
2023-12-05 00:24:59 +00:00
SkyratBot
c44d170a71 [MIRROR] Fix void adaptation not reapplying when born from a headslug [MDB IGNORE] (#25422)
* Fix void adaptation not reapplying when born from a headslug (#80108)

## About The Pull Request

This bug happend because of 2 things,
1. the traits where applied to the current mob on *purchase*
2. When head slug calls regain_powers, it uses the grant proc

There are 2 solutions for this. Either make void adapatation apply its
effects on grant or change regain powers to be on purchase.

This would break admin bussing non ling events into a lings
innate_powers. but saves having to rewrite all ling thingies from
on_purchase to on_grant

## Why It's Good For The Game

Permantly losing void adaptation  because of last resort is meh

## Changelog
🆑
fix: Rebirthing from headslug properly reapplys void adaptation
/🆑

* Fix void adaptation not reapplying when born from a headslug

---------

Co-authored-by: Autisem <36102060+Autisem@users.noreply.github.com>
2023-12-04 18:12:45 -06:00
SkyratBot
32196fd996 [MIRROR] Adds medical record descriptions for quirks without any [MDB IGNORE] (#25347)
* Adds medical record descriptions for quirks without any

* Fix Conflict, Preserve SR edit

* Updates Ration Ticket with medical Records

* Two more quirks

---------

Co-authored-by: Verm <32827189+Vermidia@users.noreply.github.com>
Co-authored-by: SomeRandomOwl <somerandomowl@ratchtnet.com>
2023-12-04 02:32:44 -05:00
SkyratBot
801484bcab [MIRROR] Moves the new "Turn Target into MMI" verb into a VV dropdown option and rewrites the code around it. [MDB IGNORE] (#25413)
* Moves the new "Turn Target into MMI" verb into a VV dropdown option and rewrites the code around it. (#80097)

## About The Pull Request

Removes the Turn Target into MMI verb and re-adds it as a VV dropdown
option.

Rewrites the code around this to support what is effectively an
admin-forced action, which MMI code previously didn't support cleanly.
## Why It's Good For The Game

#79896 added a new debug verb, unfortunately because of how that debug
verb was defined (it has args for a target mob in the proc params) it
automatically gets added to the right click context menu instead...

![image](https://github.com/tgstation/tgstation/assets/24975989/26529f7c-4393-45cc-a8e2-7aa2405384a2)

Which is not ideal for admins as they're one misclick away from just
deleting a mob.

This moves it to the VV dropdown menu for humans and rewrites the code
behind it, which previously relied on the MMI attackby proc which
expects a user and thus has side effects as a result.

This new code is more suited to an admin force-insertion than the old
code which removed the brain and forced the now brainless mob to insert
its former brain into the MMI (with the potential to fail on user input
for the now brainless mob).

![dreamseeker_VUBPYXOmEJ](https://github.com/tgstation/tgstation/assets/24975989/89e8b1ab-15f7-4187-a5db-b064b0861014)
## Changelog
🆑
admin: Removed the "Turn Target into MMI" right click context menu verb
entirely, and instead added the same command as a VV dropdown on human
mobs.
/🆑

* Moves the new "Turn Target into MMI" verb into a VV dropdown option and rewrites the code around it.

---------

Co-authored-by: Timberpoes <silent_insomnia_pp@hotmail.co.uk>
2023-12-03 19:02:31 -05:00
SkyratBot
9fc4311d96 [MIRROR] gives sectech restockers a name [MDB IGNORE] (#25415)
* gives sectech restockers a name (#80098)

## About The Pull Request
uh. title? gives sectech restock units a `machine_name` so they actually
tell you what they restock

## Why It's Good For The Game
sectech restockers are no longer just named "generic restocking units"

## Changelog

🆑
fix: SecTech restocking units are now actually named SecTech restocking
units, and not Generic restocking units.
/🆑

---------

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

* gives sectech restockers a name

---------

Co-authored-by: Hatterhat <31829017+Hatterhat@users.noreply.github.com>
Co-authored-by: Hatterhat <Hatterhat@ users.noreply.github.com>
2023-12-03 18:30:19 -05:00
SkyratBot
5580cb84ec [MIRROR] Roasts (Now without plates) [MDB IGNORE] (#25416)
* Roasts (Now without plates) (#80086)

## About The Pull Request
With the holiday season approaching, I noticed a distinct lack of foods
suitable for those present on Christmas day.
I am providing three dishes!
A Chicken roast, with peas, cabbage, parsnips, potatoes, gravy and
stuffing for the normal crew.
A grain free version of the normal, with korta stuffing and korta-blood
gravy.
A meat free version for those ~~who turned their backs on the ways and
diets of our ancestors, the kin who raised them, the kin who suffered so
they could strive, the kin who sent them to the very stars themselves
where they could become gods!~~ ... who choose to live a meat free
lifestyle.

![image](https://github.com/tgstation/tgstation/assets/53197594/3c77d64b-7a67-495c-8b9c-85dda29c85f2)

![image](https://github.com/tgstation/tgstation/assets/53197594/72a9d648-78d9-483f-a083-37e6b7739f6d)

![image](https://github.com/tgstation/tgstation/assets/53197594/4592397c-3c92-4948-b95b-217e94adf159)

![image](https://github.com/tgstation/tgstation/assets/53197594/f1aed6b7-749d-4a1f-a2fc-b072826de1da)
## Why It's Good For The Game
Nothing better for roleplay than the chef getting everyone together on
Christmas day for a big old roast dinner where we can share in
eachother's company... ~~until someone does something dumb like a max
cap.~~
## Changelog
🆑
add: Added new roast dinners, able to be cut into smaller portions
hopefully in time for the Christmas season.
/🆑

* Roasts (Now without plates)

---------

Co-authored-by: xXPawnStarrXx <53197594+xXPawnStarrXx@users.noreply.github.com>
2023-12-03 18:07:02 -05:00
SkyratBot
7c537b77b6 [MIRROR] Fixes a major heretic exploit. [MDB IGNORE] (#25410)
* Fixes a major heretic exploit.

* Update spell.dm

---------

Co-authored-by: KittyNoodle <78111117+KittyNoodle@users.noreply.github.com>
Co-authored-by: Bloop <13398309+vinylspiders@users.noreply.github.com>
2023-12-03 22:02:21 +00:00
SkyratBot
3a400ebc5d [MIRROR] Falling down a z-level while standing up can (occasionally) break your legs. Felinids will now always land on their feet (for better or for worse). [MDB IGNORE] (#25407)
* Falling down a z-level while standing up can (occasionally) break your legs. Felinids will now always land on their feet (for better or for worse).

* This whole proc needs to be overridden??

* Update living.dm

* Delete human.dm

---------

Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
Co-authored-by: Giz <13398309+vinylspiders@users.noreply.github.com>
2023-12-03 11:03:14 +00:00
SkyratBot
9b146e388f [MIRROR] Retools IS_SPINNING_1 into a trait [MDB IGNORE] (#25399)
* Retools `IS_SPINNING_1` into a trait

* Modular

---------

Co-authored-by: san7890 <the@san7890.com>
Co-authored-by: Bloop <13398309+vinylspiders@users.noreply.github.com>
2023-12-03 05:43:07 -05:00
SkyratBot
599fac5c5c [MIRROR] [NO GBP] Fixes damage ranging on feral cats [MDB IGNORE] (#25390)
[NO GBP] Fixes damage ranging on feral cats

Co-authored-by: Vekter <TheVekter@users.noreply.github.com>
Co-authored-by: Bloop <13398309+vinylspiders@users.noreply.github.com>
2023-12-03 08:04:33 +00:00
SkyratBot
4c01e3f805 [MIRROR] Demotes the "electrical conductivity" flag from flags_1 to obj_flags [MDB IGNORE] (#25381)
* Demotes the "electrical conductivity" flag from `flags_1` to `obj_flags` (#80033)

## About The Pull Request

Code to handle this flag only ever existed on the `/obj` sublevel, so
there's no need for it to be on the `/atom` level `flags_1`. There was
probably a point in time in which mobs or turfs conducted electricity
but there's zero code for it anymore so we truly just live in a society
now.
## Why It's Good For The Game

Frees up a slot on `flags_1` (which is really nice actually), proper
scoping of certain bitflag stuff, etc.
## Changelog
Not relevant to players.

I may have screwed something up, will be doing a few passes on this
myself to ensure all the search and replaces went alright but we should
be good™️

* Demotes the "electrical conductivity" flag from `flags_1` to `obj_flags`

* Modular

* Update misc.dm

---------

Co-authored-by: san7890 <the@san7890.com>
Co-authored-by: Giz <13398309+vinylspiders@users.noreply.github.com>
2023-12-03 07:58:26 +00:00
SkyratBot
c855151650 [MIRROR] Converts russian revolvers use of initial to the new :: operator [MDB IGNORE] (#25269)
* Converts russian revolvers use of initial to the new :: operator (#79948)

What the title says...
515 is cool this is a cool operator

* Converts russian revolvers use of initial to the new :: operator

---------

Co-authored-by: Nathan Singer <supernovaa41@gmx.com>
Co-authored-by: Bloop <13398309+vinylspiders@users.noreply.github.com>
2023-12-03 07:37:43 +00:00
SkyratBot
a6975112ed [MIRROR] Basic bots (medibots) [MDB IGNORE] (#25384)
* Basic bots (medibots)

* UpdatePaths, modular

---------

Co-authored-by: Ben10Omintrix <138636438+Ben10Omintrix@users.noreply.github.com>
Co-authored-by: Giz <13398309+vinylspiders@users.noreply.github.com>
2023-12-03 02:10:21 -05:00
SkyratBot
1885856425 [MIRROR] Adds Mob Tag data to log messages + player panel [MDB IGNORE] (#25366)
* Adds Mob Tag data to log messages + player panel

* Update _logging.dm

---------

Co-authored-by: san7890 <the@san7890.com>
Co-authored-by: Bloop <13398309+vinylspiders@users.noreply.github.com>
2023-12-03 02:07:16 -05:00
SkyratBot
4eb17420b5 [MIRROR] Festival Sect Expansion: New Tunes, New Rites, Cogitandi Fidis [MDB IGNORE] (#25404)
* Festival Sect Expansion: New Tunes, New Rites, Cogitandi Fidis (#80032)

## About The Pull Request

### Cogitandi Fidis

Creates a holy violin that gives an analysis of songs played on it. This
lets you check how long the song is for final effects, to make sure they
trigger without the hassle of trying a rite with a song until you get
one that works. 20 Favor, looks neat too!

### Portable Song Tuning

Rite to empower an instrument with the ability to invoke specifically
song tuning rites, 5 charges before you need to go back to a proper
altar. Helps a chaplain stay on the move, since songs are interruptable
and sometimes an altar can be incredibly far. 10 Favor for 5 charges.

### Illuminating Solo

![image](https://github.com/tgstation/tgstation/assets/40974010/9dddc60a-92e3-4e42-bf7b-423e9ac25c7c)

New free invocation that lets you light up the way with your music! The
finishing effect applies a weaker glow to all listeners for a minute.

### Other Misc Changes

The threshold for getting a final effect on a song is now lower, 220 ->
170. As a reminder, this threshold is lines * tempo. I think the
threshold was simply too high

## Why It's Good For The Game

Changes were made from
https://tgstation13.org/phpBB/viewtopic.php?f=10&t=35381 statistics and
feedback about sects. I think, overall, Festival Sect is in a very good
place and doesn't need a whole lot but a few rites that help with a
quality of life would really cut down on the amount of time a chappy is
spending doing nothing but running allllll the way back to the chapel to
load up some new songs

## Changelog
🆑
add: Festival Sect has 3 new rites: Cogitandi Fidis, Portable Song
Tuning, and Illuminating Solo.
balance: lowers threshold for triggering a final effect. Consult your
Cogitandi Fidis for more information
/🆑

* Festival Sect Expansion: New Tunes, New Rites, Cogitandi Fidis

---------

Co-authored-by: tralezab <40974010+tralezab@users.noreply.github.com>
2023-12-03 01:55:43 -05:00
SkyratBot
3d42235690 [MIRROR] Patches Up Gifts In Anticipation Of The Holidays [MDB IGNORE] (#25383)
* Patches Up Gifts In Anticipation Of The Holidays (#80035)

## About The Pull Request

I decided to look at why everyone loves (and I despise) Christmas too
much, and was met with a lot of smelly code. In fact, some of it was
completely busted! Let's fix several things.

* We no longer use a GLOB for "every possible item you can cram into a
gift box", we now use static lists scoped to the proc. That saves us
some pollution for something that really didn't need it (and only was
set up that way for cacheing I believe). We also static-cache stuff that
we weren't doing previously, to save even more work (in anticipation for
entropic heat death of universe).
* Repaths `/obj/item/a_gift` to `/obj/item/gift`. I never liked the old
path and this new one is cleaner. This also uncovered a bug.
* Mappers would var-edit gifts to have a unique mapped-in type, but the
code never respected this. I fixed it so the behavior should now respect
that rather than override the variable on Initialize(). Now the goat
plushie gift will always have said goat plushie rather than just any
toy.
* Procs should now have the proper arg nomenclature.
* Also just cleans up a lot of single letter variables and the like.
There was some cooked shit that's now alphabetized and nicely
multilined.
## Why It's Good For The Game

Ho ho ho.
## Changelog
🆑
fix: Some mapped-in gifts that were supposed to guarantee a certain gift
weren't spawning that exact gift type, this has been patched to reflect
the mapper's intent.
/🆑

* Patches Up Gifts In Anticipation Of The Holidays

* Update flora.dm

---------

Co-authored-by: san7890 <the@san7890.com>
Co-authored-by: Giz <13398309+vinylspiders@users.noreply.github.com>
2023-12-03 06:41:03 +00:00
SkyratBot
ba0b89dbbd [MIRROR] Reaction patches & maintenance [MDB IGNORE] (#25406)
* Reaction patches & maintenance (#80021)

## About The Pull Request
1. Closes #74818
One way to optimize this without using a type cache is to simulate the
behaviour of `istype()` by testing the pots content parent type against
the requested types list and if not present check its parent type and
keep going till we have hit the ceiling of type `obj/item`.
Another optimization is to count the ingredients once in a single for
loop rather than counting twice(i.e. once after looping over the pots
ingredients and again to confirm if we have 0 amount of them remaining).
With this we have removed excess for loops all without using a type
cache

2. Fixes #79979
So this problem actually occurs rarely with reactions that require large
amounts of reagents(e.g. soup requires 50 units of water) or that
produce large amount of products. When you require a large amount of
reagents the `product_ratio` becomes a large value and when you divide
`delta_chem_factor` by this large value and again round it

f2409db8ba/code/modules/reagents/chemistry/equilibrium.dm (L330-L331)

Its chances of becoming 0(only because of rounding) increases. In the
case for soups it did become 0 therefore no new soup was created nor was
any water removed and the reaction also did not have a chance to delete
itself because it saw there was enough water to keep reacting but
`delta_chem_factor` would become 0 by the time it got to reacting
resulting in a stuck state.

Now a sanity check is added to ensure the reaction ends early if this
value does become 0

This also removes the `reaction.data["boiled_over"]` value. Yes this
value would be set to TRUE but no where was it set to FALSE afterwards.
This means once boiled over the remaining reagents from the
`pot.ingredients` would not get transfered over to the pot until a new
reaction got started, which is dumb. You spill over the contents and
continue on with the reaction you don't give up after it happens so yeah
this var is removed and it's proc merged into `reaction_step()` cause
you know saving proc overhead calls.

3. Another problem with reactions is that when they are overheated their
volumes would diminish in an incorrect way. Take a look at

f2409db8ba/code/modules/reagents/chemistry/recipes.dm (L185)
Let's say our volume is 0.9. Doing some simple math
    ```
    0.9 * 0.98 = 0.882
    round(0.882, 0.01) = 0.9
    ```
Yup we are right back to where we started, the solution is to round it
lower i.e. with `CHEMICAL_QUANTIZATION_LEVEL`(0.0001) so we can properly
reduce it to levels where `update_total()` can finally remove it

## Changelog
🆑
fix: soups and other reactions where large quantities of reagents are
required/present should not have a random chance of reacting forever.
fix: reactions which are overheated should diminish all the way to 0
code: cleaned up code in `datam/equilibrium` in general. Slightly
optimized soup reaction code
/🆑

* Reaction patches & maintenance

---------

Co-authored-by: SyncIt21 <110812394+SyncIt21@users.noreply.github.com>
2023-12-03 01:16:45 -05:00
SkyratBot
cdd7725743 [MIRROR] Adds the message server key to the Chief Engineer's memories. [MDB IGNORE] (#25401)
* Adds the message server key to the Chief Engineer's memories. (#80063)

## About The Pull Request
Like the captain has innate knowledge of the golden safe code, the Chief
Engineer should know the daily key of the message server.

## Why It's Good For The Game
It's a perk of the job.

## Changelog

🆑
add: Added the daily (roundstart) message server key to the Chief
Engineer's memories.
/🆑

---------

Co-authored-by: distributivgesetz <distributivgesetz93@ gmail.com>

* Adds the message server key to the Chief Engineer's memories.

---------

Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
Co-authored-by: distributivgesetz <distributivgesetz93@ gmail.com>
2023-12-03 01:15:18 -05:00
SkyratBot
ad8ff4db19 [MIRROR] Replaces cosmic heretic clone damage with organ damage [MDB IGNORE] (#25403)
* Replaces cosmic heretic clone damage with organ damage (#80051)

## About The Pull Request

This PR replaces clone damage dealt by the cosmic blade with damage to a
random organ (8, 12, 14 respectively). To compensate for this, burn
damage will now deal 5-14-28, which is slightly weaker immediate damage
than before (6-16-32).

Someone suggested that blades should remove blood from the victim,
however I felt like that was too punishing considering the speed of
blood regeneration.

Feel free to share suggestions in the comments, if you know of a better
idea. Main point of this PR is to get rid of clone damage sources.
## Why It's Good For The Game

These are the last sources of clone damage in the game. We don't need it
anymore.
## Changelog
🆑
balance: Clone damage dealt by the cosmic blade has been replaced with
organ damage and increased burn damage. Clone damage dealt by the cosmic
beam has been removed. The star gazer now deals burn damage instead of
clone damage.
fix: The health of mobs combo'd by a cosmic blade will now update
correctly.
/🆑

* Replaces cosmic heretic clone damage with organ damage

---------

Co-authored-by: distributivgesetz <distributivgesetz93@gmail.com>
2023-12-03 01:15:09 -05:00
SkyratBot
1b4e5695a6 [MIRROR] Removes the vestigial slime reagent system [MDB IGNORE] (#25397)
* Removes the vestigial slime reagent system (#80068)

## About The Pull Request

Slimes, unique among simple and basic mobs, had a reagent holder. During
life, they removed some of the reagents in the holder, but they never
actually metabolized them. Two reagents, frostoil and capsaicin did not
know this, and checked every time in on mob life if the mob they were in
was a slime, which was never the case.

Slimes also checked if they had morphine or frostoil in them when they
detected a change in their reagents, on_reagent_change, and applied a
slowdown. There are not many ways to put these reagents in slimes in the
first place. Chempuffs, syringes (but not hyposprays) work, and I assume
smoke too. I removed this dead code.

I did see this comment _"Should be moved to the reagents at some point
in the future. As it is I'm in a hurry."_ and I did try to move the
effects to reagents' onExpose(), creating a status effect that only
applies to mobs without reagents, lasts as long as it would have lasted
based on reagents, and respects that morphine and frostoil doesn't
stack. However, while doing this I realized I would be making reagents
2, in a much worse, overcomplicated manner.

In the end, I have decided to completely remove the reagent holder of
slimes, and the morphine and frostoil effects.

## Why It's Good For The Game

These systems are rather vestigial, and there isn't really much to gain
from them. The interaction with heat and gas types is a much more unique
system, so perhaps it will be better if we focus on them.

Also makes it easier to convert them to basic mobs, and also, keeps them
consistent with the rest of our mobs.

## Changelog

🆑
del: Removes the slime's reagent holder. This will make them not slow
down from somehow imbibing morphine or frostoil.
/🆑

* Removes the vestigial slime reagent system

---------

Co-authored-by: Profakos <profakos@gmail.com>
2023-12-03 01:14:22 -05:00
SkyratBot
1f9fc79c7d [MIRROR] Meat Hook Rework (Accidental Features) [MDB IGNORE] (#25343)
* Meat Hook Rework (Accidental Features)

* Update meat_hook.dm

* Update meat_hook.dm

---------

Co-authored-by: san7890 <the@san7890.com>
Co-authored-by: Bloop <13398309+vinylspiders@users.noreply.github.com>
2023-12-03 01:07:56 -05:00
SkyratBot
6c11df99a4 [MIRROR] Retools renamedByPlayer into TRAIT_WAS_RENAMED [MDB IGNORE] (#25355)
* Retools `renamedByPlayer` into TRAIT_WAS_RENAMED (#80013)

## About The Pull Request

On the tin, this lived on the `/obj` level and polluted a lot of stuff
even though only a very small fraction of stuff actually leveraged it.
Let's make it a trait for that boolean-like behavior so I can be happier
scrolling through view-variables with less non-necessary things.

I wish we could tie it to unique sources but that whole drinking glass
thing makes me suspicious of weirder things so I think the way we do it
(source being a `REF()` to the thing itself) is probably fine enough for
the time being.
## Why It's Good For The Game

Same behavior one can expect but just a bit cleaner on the backend.
## Changelog
Nothing that particularly concerns players.

* Retools `renamedByPlayer` into TRAIT_WAS_RENAMED

* Update Blueshift.dmm

---------

Co-authored-by: san7890 <the@san7890.com>
Co-authored-by: Giz <13398309+vinylspiders@users.noreply.github.com>
2023-12-03 01:07:02 -05:00
SkyratBot
0304282fb9 [MIRROR] Blood brothers is now a single person conversion antagonist [MDB IGNORE] (#25338)
* Blood brothers is now a single person conversion antagonist (#79971)

## About The Pull Request
Instead of choosing 2-3 brothers, *one* person will be selected and
given a flash which can convert one other person over. In accordance to
the existing 10% chance for 3 members, there is a 10% chance that the
first person converted will receive a flash of their own.

Expectation is people will flash a friend or a robust guy or whatever.
My intent is primarily to see if this kind of blood brothers is more
enjoyable to play with/against, and if their inclusion in a round
increases the general chaos of it. My theory is that since most likely
blood brothers will be people who know each other, that it can become
more consistently interesting to the rest of the crew. That or they just
murderbone together idk

Fikou and head admins said they wanted this to replace rather than add
which I agree with.

## Why It's Good For The Game
Keeps the sandboxy aspect of blood brothers (no uplink) while likely
making it more enjoyable to play. Conversion is equally as simple as
revs for the user, and is just as intuitive to the one being converted
since there are no new mechanics thrown in your face.

Blood brothers is currently disabled everywhere on the main servers
except for MRP. I think this form will be more appealing to all
rulesets. If left enabled, Dynamic now has more antagonists to make
rounds diverse with and I want that

## Changelog

🆑
add: Instead of teaming up random people together, blood brothers will
now start out with one player and let them convert a single other person
over to blood brother using a flash.
/🆑

* Blood brothers is now a single person conversion antagonist

* Update oneclickantag.dm

---------

Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
Co-authored-by: Giz <13398309+vinylspiders@users.noreply.github.com>
2023-12-03 01:05:51 -05:00
SkyratBot
baa336ba67 [MIRROR] Ports feral cats and feral cat grenades from Hippie [MDB IGNORE] (#25372)
Ports feral cats and feral cat grenades from Hippie

Co-authored-by: Vekter <TheVekter@users.noreply.github.com>
Co-authored-by: Bloop <13398309+vinylspiders@users.noreply.github.com>
2023-12-03 06:05:07 +00:00
SkyratBot
e0304e0181 [MIRROR] [NO GBP] Cargo-ordered bar signs don't come with access restrictions [MDB IGNORE] (#25405)
* [NO GBP] Cargo-ordered bar signs don't come with access restrictions (#80070)

## About The Pull Request

Bar signs ordered from cargo will not have an access restriction
attached to them.

The barsign disassembly code has been slightly modified to accommodate
this.
## Why It's Good For The Game

It didn't even occur to me that bar signs had access locks on them.

Now you can establish Bargonia without begging the bartender/captain for
their ID.
## Changelog
🆑 Rhials
qol: Bar signs ordered from cargo will no longer be access-restricted.
/🆑

* [NO GBP] Cargo-ordered bar signs don't come with access restrictions

---------

Co-authored-by: Rhials <28870487+Rhials@users.noreply.github.com>
2023-12-03 01:03:22 -05:00
SkyratBot
37dab6269f [MIRROR] Add Felinid Laughter [MDB IGNORE] (#25375)
* Add Felinid Laughter (#80056)

## About The Pull Request

This PR allows the Felinid race to use the human laughter sounds when
they proc the laugh emote.
## Why It's Good For The Game

Felinids are closely related to humans, and while their voice is
distinguishable, the sound of laughter should be the same. It makes
happy and cheerful interaction more entertaining when you can actually
hear the laugh.
## Changelog
🆑
sound: Added human laughter to felinids
/🆑

* Add Felinid Laughter

---------

Co-authored-by: IsaacExists <125638858+IsaacExists@users.noreply.github.com>
2023-12-03 00:44:41 -05:00
SkyratBot
88bcbf40c1 [MIRROR] Makes the QM Skirt Work For Digi Legs [MDB IGNORE] (#25389)
* Makes the QM Skirt Work For Digi Legs (#80067)

## About The Pull Request
Makes digi legs use the QM skirt properly.
<img src="https://i.ibb.co/9qKDkr3/Digi-Lizard-Skirt.png">
(Difference illustrated with VV)
## Why It's Good For The Game
Realistically lizards shouldn't be allowed in this role, as such
inferior beings have no business being a head of staff on a cutting-edge
Nanotrasen research station. But if a human decides to get a leg
transplant or something this is good for them.
Clearly an oversight in the code. Fixes good oversights bad for the
project.
## Changelog
🆑
fix: Digi legs work with the QM's jumpskirt
/🆑

* Makes the QM Skirt Work For Digi Legs

---------

Co-authored-by: Jackraxxus <60418544+Jackraxxus@users.noreply.github.com>
2023-12-03 00:44:02 -05:00
SkyratBot
7dd661f342 [MIRROR] basic cats and mini kitchen helpers [MDB IGNORE] (#25330)
* basic cats and mini kitchen helpers (#79800)

## About The Pull Request
this pr transforms cats into basic pets! cats now have some new
behavior. they can carry fish and hunted mice in their mouths to deliver
it to kittens, and kittens will eat them.

![catmouse](https://github.com/tgstation/tgstation/assets/138636438/8f146be4-c7b2-41d3-8301-734be49b5efc)

![catfish](https://github.com/tgstation/tgstation/assets/138636438/f8df54f2-9183-406d-afbd-f90f415f7f3d)

if a kitten sees you holding food, it will point at you and meow loudly
until u give it the food.
becareful when putting male cats near each other, there is a small
chance they get into a heated argument and meow loudly at each other
until one of them flees.
also added a new small cat house for cats. cats will use these homes if
u build one near them (using 5 wood planks)

![cathouse](https://github.com/tgstation/tgstation/assets/138636438/9515a78c-fdfe-461b-bad2-6b497117c694)

Chefs can craft the cake cat and breadcat. these are useful cats because
they can help the chef around in the kitchen. they will turn stoves and
grills off when food is ready, so they dont burn. and the cake cat will
help the chef decorate his donuts

## Why It's Good For The Game
refactors cats into basic mobs and gives them a deeper ai

## Changelog
🆑
refactor: cats are now basic pets. please report any bugs.
add: the cake cat and bread cat can now help the chef around in the
kitchen
/🆑

* basic cats and mini kitchen helpers

* Modular

---------

Co-authored-by: Ben10Omintrix <138636438+Ben10Omintrix@users.noreply.github.com>
Co-authored-by: Giz <13398309+vinylspiders@users.noreply.github.com>
2023-12-03 00:37:58 -05:00
SkyratBot
bd00aac72f [MIRROR] Fixes needless DM_VERSION check in Poly code [MDB IGNORE] (#25300)
* Fixes needless DM_VERSION check in Poly code (#79951)

## About The Pull Request

This is useless now that #79134
(1d6533c525) is merged and we require 515
for everything now.
## Why It's Good For The Game

They forgot

## Changelog
No effect to players.

* Fixes needless DM_VERSION check in Poly code

---------

Co-authored-by: san7890 <the@san7890.com>
Co-authored-by: Bloop <13398309+vinylspiders@users.noreply.github.com>
2023-12-03 00:37:40 -05:00
SkyratBot
e06ec3e714 [MIRROR] Bumps compile to 515 [MDB IGNORE] (#25257)
* Bumps compile to 515 (#79134)

## About The Pull Request

LSP supports it, let's GOOOOOO
I've removed the 515 tests since they're stable, alongside the libcall
wrapper. left the rustgcall wrapper cause yaknow memes
Just removed all the 515 and 514 particular define wrappers. gaming

## Changelog
🆑
server: Minimum compile version has been bumped to 515. clients still
support 514 but we're gonna start using 515 restricted features for
serverside now.
/🆑

---------

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

* Bumps compile to 515

* Fixes a TGS regression in its API

---------

Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
Co-authored-by: John Willard <53777086+JohnFulpWillard@ users.noreply.github.com>
Co-authored-by: GoldenAlpharex <jerego1234@hotmail.com>
2023-12-02 21:48:21 -05:00
SkyratBot
6c4c965ea4 [MIRROR] Changes occurrences of recieve in code to receive [MDB IGNORE] (#25393)
* Changes occurrences of `recieve` in code to `receive`

* Fix conflict

---------

Co-authored-by: distributivgesetz <distributivgesetz93@gmail.com>
Co-authored-by: SomeRandomOwl <somerandomowl@ratchtnet.com>
2023-12-02 20:40:07 -06:00
SkyratBot
57159972d1 [MIRROR] Fixes smartfridges showing overlays when there is nothing inside [MDB IGNORE] (#25392)
* Fixes smartfridges showing overlays when there is nothing inside (#79982)

## About The Pull Request

It was considering stock parts as contents after the refactor in #79623

## Why It's Good For The Game

Bug fix

## Changelog

🆑 MrMelbert
fix: smartfridges no longer show false overlays
/🆑

* Fixes smartfridges showing overlays when there is nothing inside

---------

Co-authored-by: Andrew <mt.forspam@gmail.com>
2023-12-02 18:59:54 -06:00
SkyratBot
781ccff568 [MIRROR] Fixes an outfit typo [MDB IGNORE] (#25391)
* Fixes an outfit typo (#80077)

## About The Pull Request

Fixes a typo in one of the outfits used in the Pipe Dream domain.

Factory Quatermaster -> Factory Quartermaster
## Why It's Good For The Game

Quatermaster...
## Changelog
🆑 Rhials
spellcheck: Fixes a typo in the Factory Quartermaster outfit name.
/🆑

* Fixes an outfit typo

---------

Co-authored-by: Rhials <28870487+Rhials@users.noreply.github.com>
2023-12-02 18:59:47 -06:00
SkyratBot
d51ad67c1f [MIRROR] Honorbound Sect Improvements: Creatures are not Innocent, and Neither is the Blatantly Evil. Declarations are Cheaper, too [MDB IGNORE] (#25379)
* Honorbound Sect Improvements: Creatures are not Innocent, and Neither is the Blatantly Evil. Declarations are Cheaper, too (#80048)

<!-- Write **BELOW** The Headers and **ABOVE** The comments else it may
not be viewable. -->
<!-- You can view Contributing.MD for a detailed description of the pull
request process. -->

## About The Pull Request

Innocence is no longer considered when an honorbound attacks a nonhuman
(as in mob, not like, lizardpeople, lol).
Attacking a cultist with a halo, or a blatant syndicate operative will
now immediately make THEM guilty.
Converting a new follower now gives 300 favor, enough for 2 declarations
(costing 150 each)

## Why It's Good For The Game

Feedback and stats taken from
https://tgstation13.org/phpBB/viewtopic.php?p=713399#p713399
This is really the first half of fixing Honorbound Sect. It's the least
picked sect, because it gives a strange conditional pacifism and while
that's fun for roleplay, the pacifism is painfully difficult to work
with and there are just so many cases you have to ask out loud "HOW IS
THIS INNOCENT" when a xenomorph is running at you and you can't swing. I
still need to add rewards, but just for now let's make honorbound more
playable by putting aside lesser creatures as at least not innocent or
guilty (well they can be guilty, but it doesn't matter)

Once it's better to play with the honorbound rules, we can talk more
rewards like banners for fellow honorbound deacons and other stuff.

## Changelog

<!-- If your PR modifies aspects of the game that can be concretely
observed by players or admins you should add a changelog. If your change
does NOT meet this description, remove this section. Be sure to properly
mark your PRs to prevent unnecessary GBP loss. You can read up on GBP
and it's effects on PRs in the tgstation guides for contributors. Please
note that maintainers freely reserve the right to remove and add tags
should they deem it appropriate. You can attempt to finagle the system
all you want, but it's best to shoot for clear communication right off
the bat. -->

🆑
balance: Honorbound no longer cares about innocence when it comes to
lesser creatures. They can still be considered unready in some cases.
balance: Attacking a cultist with a halo or a nuclear operative first
instantly makes THEM guilty, allowing further attacks.
balance: More favor for converting someone to the honorbound rules
/🆑

<!-- Both 🆑's are required for the changelog to work! You can put
your name to the right of the first 🆑 if you want to overwrite your
GitHub username as author ingame. -->
<!-- You can use multiple of the same prefix (they're only used for the
icon ingame) and delete the unneeded ones. Despite some of the tags,
changelogs should generally represent how a player might be affected by
the changes rather than a summary of the PR's contents. -->

* Honorbound Sect Improvements: Creatures are not Innocent, and Neither is the Blatantly Evil. Declarations are Cheaper, too

---------

Co-authored-by: tralezab <40974010+tralezab@users.noreply.github.com>
2023-12-02 09:05:24 -05:00
SkyratBot
67c8055df5 [MIRROR] Disables mod links from virtual modsuits [NO GBP] [MDB IGNORE] (#25370)
* Disables mod links from virtual modsuits [NO GBP] (#80038)

## About The Pull Request
Via discussion in discord:

![image](https://github.com/tgstation/tgstation/assets/42397676/b1990bce-35c3-4266-9ee1-3f6abde846bb)
## Why It's Good For The Game
Virtual entities, however suited up they are, shouldn't be able to
communicate station side with crew or with syndicate entities.
## Changelog
🆑
fix: Mod links are now disabled in the virtual realm.
/🆑

* Disables mod links from virtual modsuits [NO GBP]

---------

Co-authored-by: Jeremiah <42397676+jlsnow301@users.noreply.github.com>
2023-12-02 08:56:57 -05:00
SkyratBot
f40c5a5102 [MIRROR] psyker echolocatione improvementa [MDB IGNORE] (#25380)
* psyker echolocatione improvementa (#80042)

## About The Pull Request
psyker echolocation cooldown time has been reduced from 2 to 1.8 seconds
psyker heads no longer render an overlay of not having eyes
psyker echolocation rendering has been reworked to hopefully not crash
the game anymore when theres many psykers

## Why It's Good For The Game
these changes make psyker better

## Changelog
🆑
qol: psyker echolocation cooldown time has been reduced from 2 to 1.8
seconds
fix: psyker heads no longer render an overlay of not having eyes
/🆑

* psyker echolocatione improvementa

---------

Co-authored-by: Fikou <23585223+Fikou@users.noreply.github.com>
2023-12-02 08:55:36 -05:00