Commit Graph

8082 Commits

Author SHA1 Message Date
SkyratBot
0d5e4e4ec9 [MIRROR] Basic pollen-particles for plants pollenating. [MDB IGNORE] (#20592)
* Basic pollen-particles for plants pollenating. (#74675)

Legally endorsed nightcode 👍

## About The Pull Request

When 2 plants are adjacent to each other, they will begin to
cross-pollenate, sharing their potency, instability, and yield values
between the two. This has been in the game since #50001 , however we
never added a more clear visual tell that cross-pollenation exists.
Thanks to the magic of *barticles*, now you can!

![image](https://user-images.githubusercontent.com/41715314/231359363-07c7f354-d2f6-4d5e-8b59-5f968781135f.png)
_pictured: wheat and tomatoes pollenating_

Adds a simple particle effect, largely lifted from bonfires, that
indicates that two plants are sharing stats at minimum.

## Why It's Good For The Game

Following discussion from #74621, it was decided we needed and preferred
a more visual cue to the mechanic. As a general point I think that's a
longer term fix to the issue, and this adds more visual clarity to an
otherwise arcane mechanic (heh).

Looking for feedback on how to improve the look of the particles but for
fast nightcode I think I did okay for a first try

## Changelog

🆑
imageadd: Hydroponics trays now have pollen particles that they generate
when they share stats and chems. Non-allergenic!
/🆑

---------

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

* Basic pollen-particles for plants pollenating.

---------

Co-authored-by: ArcaneMusic <41715314+ArcaneMusic@users.noreply.github.com>
Co-authored-by: san7890 <the@ san7890.com>
2023-04-17 17:53:30 +01:00
SkyratBot
156f9e33ec [MIRROR] Fixes eigen lockers bypassing TP protection [MDB IGNORE] (#20609)
* Fixes eigen lockers bypassing TP protection (#74722)

## About The Pull Request
Fixes eigenlockers bypassing teleport protections.

![image](https://user-images.githubusercontent.com/41448081/231939450-42287185-48f4-4a3b-ac7a-38adc0600633.png)

Tested w/ one and multiple lockers, prevents entering or exiting from a
tp-prot eigenlocker

## Why It's Good For The Game
This came up in an away mission designed to be a "one-way-trip", the
only exit being at the very end of the away mission. However, people are
able to bypass this with eigenlockers, thanks to them performing no
teleportation checks, which I believe is an oversight.

## Changelog
🆑
fix: Eigenstasium lockers no longer bypass teleport protection
/🆑

---------

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

* Fixes eigen lockers bypassing TP protection

---------

Co-authored-by: Zonespace <41448081+Zonespace27@users.noreply.github.com>
Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>
Co-authored-by: san7890 <the@ san7890.com>
2023-04-17 17:52:43 +01:00
SkyratBot
f4aee43e79 [MIRROR] Tones down the power of nitrous oxide, the reagent. Makes heparin a bit harder to fix to compensate [MDB IGNORE] (#20610)
* Tones down the power of nitrous oxide, the reagent. Makes heparin a bit harder to fix to compensate (#74703)

## About The Pull Request

Nitrous Oxide, rather than directly subtracting blood volume per tick,
instead applies the anticoagulant trait ''TRAIT_BLOODY_MESS''. It shares
this with heparin.

However, unlike, heparin, coagulants like Sanguirite will remove the
trait and allow for continued clotting while the reagent is present,
neutering the nitrous oxide's anticoagulant effects (but not the other
parts)

Heparin, on the other hand, will purge Sanguirite while it is in you
system. You must remove the heparin before you can apply an
anticoagulant.

## Why It's Good For The Game

Nitrous Oxide, on top of being a knockout chem that causes you to
suffocate and become drowsy, just starts deleting blood rapidly. About
15 units of it, standard in a syringe, will kill you in about a minute,
but you'll be unconscious for most of it (you'll be at around 50%-60%
blood by the time it is out of your system, so as good as dead). It
doesn't matter that it metabolizes quickly either, since because it
isn't a toxin, it doesn't get purged by livers/improved livers, so you
will probably metabolize all of the chem that enters your system.

Blood is one of those 'hidden damage types', a bit like brain damage.
Once you start losing it _directly,_ you probably don't have a lot of
options to resolve it (unlike a bleed, which you do in various manners),
and the means of causing blood loss has been mostly pretty well
controlled as of late. Heparin directly interacts with wounds as a good
example.

Blood loss is also tied into oxyloss, which is another very mean damage
type in that it causes you to fall into unconsciousness at 50 damage, so
significantly more lethal than normal damage, kept in check by the fact
that breathing restores some of it. Nitrous oxide, you might note,
causes you to stop breathing.

It's cheaper to make than either heparin or lexorin, and since it isn't
a toxin like those chems, it is able to circumvent a few game mechanics
to simply just start killing you. It does the work of chloral hydrate,
lexorin and heparin while it has a remarkably easy recipe.

Following the example of how lexorin was pulled into line, and
consistency with heparin, I've made nitrous oxide an anticoagulant that
may or may not come into play as one. I think this is more up to date
with the state of toxins and chem warefare as a whole, and works with
the relative ease in making nitrous oxide. And it has been this way for
about 5 years, before we got wounds.

(did I mention that nitrous oxide is also an explosive if it gets hot
enough?)

## TL;DR

I think a chem with a pretty basic recipe shouldn't be doing the work of
5 other, more complicated, chemicals while also not being a toxin and
also not interacting with the wounds system or purity system whatsoever.
And being an explosive.

## Changelog
🆑
balance: Nitrous oxide, the reagent, increases bleed rate from wounds
rather than directly subtracting blood. It can be counteracted using
coagulants (such as those in epipens).
balance: Heparin purges coagulants. You have to remove heparin from
someone's system before you can use coagulants.
/🆑

---------

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

* Tones down the power of nitrous oxide, the reagent. Makes heparin a bit harder to fix to compensate

---------

Co-authored-by: necromanceranne <40847847+necromanceranne@users.noreply.github.com>
Co-authored-by: san7890 <the@ san7890.com>
2023-04-17 01:26:08 +01:00
SkyratBot
9cee4ee779 [MIRROR] Optimizes particle holders [MDB IGNORE] (#20599)
* Optimizes particle holders (#74524)

## About The Pull Request

It isn't really an issue now, but these will be used more in future, so
let's start off strong.

There's a lot of work going on here that doesn't really need to be
happening, mostly off not knowing a trickTM.

Biggest one is vis_locs and vis_contents are linked lists, being in one
requires being in another. Atoms clear out their vis_locs on Destroy, so
we do not need to "own" references to things that have us in their
vis_contents.

This combined with knowing our old loc's loc off Moved made the use of
weakrefs here unneeded. Similarly, atoms inside atom movables qdel on
when the upper layer is deleted, so most cases of the qdeleting signal
were unneeded.

Also, we only cared about movement if we were an item (speaking of
which, I swapped out the isitem stuff with a flag that gets passed into
the new() call)

## Why It's Good For The Game

Speed

* Optimizes particle holders

---------

Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
2023-04-16 23:59:20 +01:00
SkyratBot
86adc2d878 [MIRROR] [no gbp] Simple animals can't catch on fire [MDB IGNORE] (#20583)
* [no gbp] Simple animals can't catch on fire (#74736)

## About The Pull Request

Fixes #74633
FIxes #74739

I probably broke this when I refactored spiders and it became apparent
because someone added particles to it.
Simple animals didn't really do anything as a result of being on fire
except perhaps invisibly pass it on to other people, but it was wasteful
to apply the status effect.

## Why It's Good For The Game

No mostly-invisible fire hazards.

## Changelog

🆑
fix: Renault and other simple animals are now correctly fireproof.
/🆑

* [no gbp] Simple animals can't catch on fire

---------

Co-authored-by: Jacquerel <hnevard@gmail.com>
2023-04-16 23:56:56 +01:00
SkyratBot
7463f2e2d1 [MIRROR] The North Star Expeditionary Vessel - A Second Wind [MDB IGNORE] (#20535)
* The North Star Expeditionary Vessel - A Second Wind (#74371)

## About The Pull Request
A new map for TGstation, in the works! It has 4 fucking Z levels, a
massive expansive maintenance with unique designs, and some unique code
features in the works.

To Do:
- [x] Update the Map to Modern TG
- [x] Local Tests
- [x] Work on Map Optimizations
- [x] Run Live Tests

Fikou has greatly helped with creating an important flavour aspect of
this map, Trek Uniforms on anyone who joins! See the forum thread for
more. This includes the framework for innate station traits, station
traits loaded as long as it's in a map's json

Here's the forum dev thread there are screenshots there.
https://tgstation13.org/phpBB/viewtopic.php?p=657252#p657252

### Mapping March
Ckey to receive rewards: Cheshify

## Why It's Good For The Game
So, this is the North Star. An effort taking multiple mappers and of 9~
months of hard work. This map was not initially designed for TGstation,
but always designed for TGstation code. The process of retooling the map
for TGstation was an absolute joy and I feel like the map definitely has
it's niche as a massive and unique experience for it's players.

I adore this map, it's gorgeous, has a unique aesthetic, and a number of
very funny interactions with multi-Z. The PR comes packed with unique
mechanics for future mappers (innate station traits!), a number of
map-fitting shuttles, and a fun spacefaring uniform gimmick for the
crew.

**This is my second attempt at bringing this map into rotation. It was
initially closed due to concerns about maptick and performance, as I
wasn't willing to push for a map to be added to the repository if it
didn't function to my own standards. I've been informed by a number of
coders far better than I that optimizations are arriving and enroute, so
I think it's time to dust her off and set sail for another journey.**

**Quick Disclaimer: Due to some design decisions disagreed upon by the
headcoder team and myself, the map will not be featuring unique
roundstart uniforms, and despite my design intentions, the innate
station trait features will be shelved for now.**

## Changelog
🆑 Cheshify, Fikou, Blue-Berry, Zytolg, InfiniteGalaxies, Striders,
Sylphet, Riggle, Soal, Andry, Crit, Deranging, and Pumpkin0.
add: Nanotrasen's Newest Exploratory Vessel is now available! Meet the
North Star!
add: More landmines, and a landmine random spawner.
add: energy barriers now have a regenerative subtype, fit for permanent
installations.
code: Raised the number of possible level render to 4, check your
preferences if needed to be reduced.
/🆑

---------

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

* The North Star Expeditionary Vessel - A Second Wind

---------

Co-authored-by: Cheshify <73589390+Cheshify@users.noreply.github.com>
Co-authored-by: Fikou <23585223+Fikou@ users.noreply.github.com>
Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>
Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com>
2023-04-15 00:00:17 +01:00
SkyratBot
327ebcb31c [MIRROR] Reworks burning objects to be a component [MDB IGNORE] (#20543)
* Reworks burning objects to be a component (#74688)

## About The Pull Request

Title.

## Why It's Good For The Game

Simply put, allows for atoms which are not /obj but use atom_integrity
to burn up too, which is nice and good.
But also, it allows for neat behavior like burning particle effects
(only structures use that right now to spawn smoke)

![image](https://user-images.githubusercontent.com/82850673/231595051-2a8d0574-33cc-4cd9-9d61-65566decf4ef.png)

## Changelog

🆑
add: Burning structures spawn smoke particles. Sick.
/🆑

---------

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

* Reworks burning objects to be a component

* modular

---------

Co-authored-by: ChungusGamer666 <82850673+ChungusGamer666@users.noreply.github.com>
Co-authored-by: MrMelbert <51863163+MrMelbert@ users.noreply.github.com>
Co-authored-by: Tom <8881105+tf-4@users.noreply.github.com>
2023-04-14 23:44:14 +01:00
SkyratBot
82f5bf7af2 [MIRROR] Fixes omen component door crushing failing, fixes tilted vendors double dipping on omen people [MDB IGNORE] (#20540)
* Fixes omen component door crushing failing, fixes tilted vendors double dipping on omen people (#74692)

## About The Pull Request

- Fixed door crush always failing.
- It passed `forced = TRUE` and not `force_crush = TRUE`, so it just did
a limp close -> re-open. Fixed that

- Fixed tilted vendor double dip
- It checked for tiltable but not already tilted, meaning you can get
crushed -> move -> get crushed by the same vendor. Fixes that

## Why It's Good For The Game

Curses

## Changelog

🆑 Melbert
fix: Omen Component door crush works
fix: Omen Component vendors will no longer double dip (double tip)
/🆑

* Fixes omen component door crushing failing, fixes tilted vendors double dipping on omen people

---------

Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
2023-04-13 22:13:16 -07:00
SkyratBot
e8ae838401 [MIRROR] March into Mapness - The abandoned Mime Outpost [MDB IGNORE] (#20523)
* March into Mapness - The abandoned Mime Outpost

* Update spaceruinblacklist.txt

---------

Co-authored-by: kinnebian <75904284+kinneb@users.noreply.github.com>
Co-authored-by: Jolly <70232195+Jolly-66@users.noreply.github.com>
2023-04-13 23:07:04 +00:00
SkyratBot
451b34e7e0 [MIRROR] Fixes two bugs with removing cards from a tgc deck. [MDB IGNORE] (#20526)
* Fixes two bugs with removing cards from a tgc deck. (#74658)

## About The Pull Request

Fixes: #72697

Fixes transferring cards to a binder resulting in zero card decks.
Fixes transferring cards to the floor not working at all.
## Why It's Good For The Game

Bugfixes!
## Changelog
🆑
fix: Removing cards from TGC decks by pouring them on the floor/into
binders should now function correctly.
/🆑

* Fixes two bugs with removing cards from a tgc deck.

---------

Co-authored-by: NamelessFairy <40036527+NamelessFairy@users.noreply.github.com>
2023-04-12 21:37:10 -07:00
SkyratBot
9a594755f3 [MIRROR] Renames delta time to be a more obvious name [MDB IGNORE] (#20507)
* Renames delta time to be a more obvious name

* updates to our code

---------

Co-authored-by: oranges <email@oranges.net.nz>
Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com>
2023-04-12 20:45:43 +01:00
SkyratBot
3a5a1d4058 [MIRROR] Imports and Contraband: Different! Cargo crates without locks! MEAT! [MDB IGNORE] (#20423)
* Imports and Contraband: Different! Cargo crates without locks! MEAT!

* helping make 20423 a little more mergeable (commits to a nonmaster branch) (#20434)

* regal condor my beloved

* damn ok

---------

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

* [merges to pr 20423, get this first] more nitpicks in regards to the imports pr (#20497)

missed mirror and a nitpick i forgot

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

---------

Co-authored-by: necromanceranne <40847847+necromanceranne@users.noreply.github.com>
Co-authored-by: Hatterhat <31829017+Hatterhat@users.noreply.github.com>
Co-authored-by: Hatterhat <Hatterhat@users.noreply.github.com>
Co-authored-by: Paxilmaniac <paxilmaniac@gmail.com>
Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com>
2023-04-12 20:03:30 +01:00
SkyratBot
fe8fc4d010 [MIRROR] Split weapons_and_items.dmi icons into their own categories [MDB IGNORE] (#20360)
* Split weapons_and_items.dmi icons into their own categories

* update modular

* I hate the dme

* random ass define removal fix

* missing icons fix

---------

Co-authored-by: Tim <timothymtorres@gmail.com>
Co-authored-by: Tom <8881105+tf-4@users.noreply.github.com>
Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com>
2023-04-12 19:53:43 +01:00
SkyratBot
ba88487b5c [MIRROR] Labels security equipment as being lethal, nonlethal, less-than-lethal or highly destructive. [MDB IGNORE] (#20487)
* Labels security equipment as being lethal, nonlethal, less-than-lethal or highly destructive.

* skyrat edits

---------

Co-authored-by: necromanceranne <40847847+necromanceranne@users.noreply.github.com>
Co-authored-by: lessthnthree <three@lessthanthree.dk>
2023-04-11 20:07:06 -07:00
SkyratBot
93a8095c08 [MIRROR] New inhand icons for light tubes, makes latex balloons craftable, and various other fixes/improvements [MDB IGNORE] (#20462)
* New inhand icons for light tubes, makes latex balloons craftable, and various other fixes/improvements

* resolve conflict

* Update VoidRaptor.dmm

---------

Co-authored-by: Bloop <vinylspiders@gmail.com>
Co-authored-by: lessthnthree <three@lessthanthree.dk>
2023-04-10 18:37:55 -07:00
SkyratBot
8b7ebae0b7 [MIRROR] Material Container screentips [MDB IGNORE] (#20472)
* Material Container screentips (#74626)

## About The Pull Request

The material_container component now also grants whatever it is added to
a simple screentip of "Insert" on items that it can accept, if it is a
material container that can accept held items.

## Why It's Good For The Game

Now when a traitor feeds their 13 TC revolver into the autolathe they
will see a screentip for a few blissful seconds before pressing left
click anyway and sending an ahelp begging for their revolver back.

## Changelog

🆑
qol: material components (such as autolathes) have contextual screentips
if you can put an item inside of it
/🆑

* Material Container screentips

---------

Co-authored-by: Sol N <116288367+flowercuco@users.noreply.github.com>
2023-04-10 18:00:35 -07:00
SkyratBot
470baf671d [MIRROR] Reduce carp migration devastation [MDB IGNORE] (#20445)
* Reduce carp migration devastation (#74608)

## About The Pull Request

I'm not totally satisfied with the amount of random destruction caused
by space carp wandering around, they should certainly be dangerous and
annoying but the random nature of their spawning and pathfinding means
that they would trap themselves in random rooms and then smash all of
the machinery in there.
Because they could attack any dense object they perceived as being in
their way that could result in venting random gas canisters, breaking
terminals, or I even once saw them destroy the supermatter cooling loop
by eating the thermomachines.
While the latter is pretty funny, arbitrary destruction of machines
simply caused because a fish teleported into a room without you knowing
isn't really very engaging and doesn't create very interesting stories.
This ultimately isn't meant to be a heavily destructive event and its
probability to run isn't tuned as if it is.

So, a couple of changes:

I reduced both the range and cooldown of the carp teleporting ability.
This means that AI carp can use it to pathfind past obstacles pretty
reliably and don't spend so much time smashing things, and also reduces
the chances of them getting the drop on you from a location you can't
see.
I also added a short click cooldown to carp travelling through other
carp rifts so people being teleported _to_ have more of an advantage
over people ambushing them (this was already true for the carp creating
the rift).

Additionally I added an optional whitelist to the "attack obstacles to
your pathfinding" AI script, and heavily culled the kind of obstacles
that carp will attack to be ones which are mostly replaceable. They will
still cause a mess and might even vent a room, but they won't smash
vital infrastructure.

Finally I replaced a couple of instances of `get_ranged_target_turf`
with `get_ranged_target_turf_direct` for better precision, and player
carp using the ability can now just click anywhere on the screen and it
will jaunt in that rough direction. With the reduced range, having to
click within its radius was pretty annoying.

With these changes I ran the event 10 times in a row on kilo and then
watched JoJo's bizzarre adventure for 90 minutes and when I came back
the level of destruction seemed pretty reasonable (aside from the big
hole where one of them ran into the supermatter and delaminated it, but
if there were players around that wouldn't happen).

## Why It's Good For The Game

This event was still just a little bit _too_ annoying.
If something destroys important machines it should have happened on
purpose via an event which was supposed to do that, rather than through
chance. Or preferably just be player-driven.

## Changelog

🆑
balance: Carp can't teleport as far, but can do it more frequently.
People who piggyback through their rifts will be blocked from attacking
for a short duration (the same as the normal attack cooldown).
balance: AI controlled carp will now be more selective about which
objects they smash. Player controlled carp (or carp directly instructed
to attack objects by people who have tamed them) can still attack
whatever they like.
/🆑

* Reduce carp migration devastation

---------

Co-authored-by: Jacquerel <hnevard@gmail.com>
2023-04-09 19:11:58 -07:00
SkyratBot
21a96d43ce [MIRROR] Modifies spectral instruments to make retaliation more viable. [MDB IGNORE] (#20443)
* Modifies spectral instruments to make retaliation more viable.  (#74599)

## About The Pull Request

Reduces the damage dealt by the spectral trombone, saxophone and trumpet
and adds a message warning of the change they cause

## Why It's Good For The Game

In their current state the spectral instruments transform people into 4
hits, the first two hits dealing enough stam damage that it slows to
point where escape isn't possible.
Since it's also rare most people don't know of it'll transform you into
a skeleton
In order to allow for more viable retaliation against the transformation
into a skeleton this PR reduces the stamina damage dealt and prints a
message for the target that hints them towards the transformation.

## Changelog

:cl:Somepan
add: Added a message upon being hit by any spectral instruments
balance: Reduced the stamina damage dealt by spectral instruments from
25 to 18 making it transform after 6 hits instead of 4
/🆑

* Modifies spectral instruments to make retaliation more viable.

---------

Co-authored-by: Pinkufeck <63017503+Pinkufeck@users.noreply.github.com>
2023-04-09 19:09:50 -07:00
SkyratBot
fc5d5a9fe3 [MIRROR] Componentizes loomability [MDB IGNORE] (#20424)
* Componentizes loomability (#74552)

## About The Pull Request

As shrimple as the title might imply, the ability for an item to be
processed in a loom is now a component.

Behavior on looming cotton, durathread, and wool, should all be the
exact same in terms of cost, time, results, etc.
## Why It's Good For The Game

If, for any reason, someone might want to extend the behavior of "this
thing can be loomed" to other items, it can be done.
## Changelog
🆑
code: The ability for objects to be loomed is now a component, with all
of the looming behavior moved off of the structure and into said
component. The actual behavior for looming cotton (clicking on a loom
with cotton) is completely unchanged.
/🆑

---------

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

* Componentizes loomability

---------

Co-authored-by: Paxilmaniac <82386923+Paxilmaniac@users.noreply.github.com>
Co-authored-by: Zephyr <12817816+ZephyrTFA@ users.noreply.github.com>
2023-04-09 02:29:51 +01:00
SkyratBot
a560da119f [MIRROR] [Ready] New Cosmic Heretic Path DLC [MDB IGNORE] (#20416)
[Ready] New Cosmic Heretic Path DLC

Co-authored-by: Comxy <tijntensen@gmail.com>
2023-04-08 19:10:34 +01:00
SkyratBot
749d62c1e3 [MIRROR] makes cursed katana combos into a generic component [MDB IGNORE] (#20419)
* makes cursed katana combos into a generic component (#74543)

## About The Pull Request
what the title says
also the katana's dark cloak move now has some vfx cause i figured why
not

## Why It's Good For The Game
this means anyone can give any weapon combos :D

## Changelog

* makes cursed katana combos into a generic component

---------

Co-authored-by: Fikou <23585223+Fikou@users.noreply.github.com>
2023-04-08 18:50:43 +01:00
SkyratBot
f393dfe8f9 [MIRROR] Fixes Ceiling Generation for Lavaland Icemoon Ruin - Whoops [MDB IGNORE] (#20417)
* Fixes Ceiling Generation for Lavaland Icemoon Ruin - Whoops (#74567)

## About The Pull Request

Forgot to do this in #74410. It's **not** the reason why we see active
turfs on icebox station though, because this is just closed turfs. The
active turfs never spawned as a result of this, they only spawn as a
result of the open turfs of the ruin mixing with chasm air. The ceiling
looks a lot better now though.
## Why It's Good For The Game

Should have always been like this.
## Changelog
doesn't really matter.

* Fixes Ceiling Generation for Lavaland Icemoon Ruin - Whoops

---------

Co-authored-by: san7890 <the@san7890.com>
2023-04-08 18:46:50 +01:00
SkyratBot
6f3befe233 [MIRROR] Reagent soup / Soup rework / Stoves - A kitchen expansion [MDB IGNORE] (#20410)
* Reagent soup / Soup rework / Stoves - A kitchen expansion

* fixes that stuff

* puts the range stove on maps that sohuld have it

* fixes some paths that don't exist anymore

---------

Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
Co-authored-by: Paxilmaniac <paxilmaniac@gmail.com>
2023-04-08 13:30:41 -04:00
SkyratBot
c23243d8fa [MIRROR] The SYN-C Brutus, a Derelict Syndicate Corvette [MDB IGNORE] (#20404)
* The SYN-C Brutus, a Derelict Syndicate Corvette

* fixes that bit

---------

Co-authored-by: massaheartsu <128642031+massaheartsu@users.noreply.github.com>
Co-authored-by: Paxilmaniac <paxilmaniac@gmail.com>
2023-04-08 13:03:41 -04:00
SkyratBot
a60c7dcaa4 [MIRROR] Fire and water particle effects for mobs (sick) [MDB IGNORE] (#20409)
* Fire and water particle effects for mobs (sick) (#74555)

## About The Pull Request

Mobs on fire and wet mobs get cool particle effects

## Why It's Good For The Game

https://user-images.githubusercontent.com/82850673/230459326-184b5553-17db-49df-997f-8db4c87df601.mp4
fire particles (big fire)
small fire just reduces the spawn rate of particles to 20% of this

https://user-images.githubusercontent.com/82850673/230468680-b831e557-bb0a-4489-8aef-4fefdfc14e43.mp4
wet particles

sick

## Changelog

🆑
add: Mobs on fire get particle effects (it looks sick)
add: Wet mobs get particle effects (it looks sick)
/🆑

* Fire and water particle effects for mobs (sick)

---------

Co-authored-by: ChungusGamer666 <82850673+ChungusGamer666@users.noreply.github.com>
2023-04-07 19:39:29 -07:00
SkyratBot
137d213eb1 [MIRROR] [Space Ruin] - The outlet [MDB IGNORE] (#20382)
[Space Ruin] - The outlet

Co-authored-by: Donglesplonge <120208006+Donglesplonge@users.noreply.github.com>
2023-04-08 01:38:50 +01:00
SkyratBot
8918605028 [MIRROR] Adds new space ruin, "Botanical Haven" [MDB IGNORE] (#20385)
* Adds new space ruin, "Botanical Haven" (#74331)

* Adds new space ruin, "Botanical Haven"

---------

Co-authored-by: Ical <86125936+Ical92@users.noreply.github.com>
2023-04-08 01:38:34 +01:00
SkyratBot
92a63992ef [MIRROR] Gives fountain ruins unique ids so the lavaland one will spawn [MDB IGNORE] (#20391)
* Gives fountain ruins unique ids so the lavaland one will spawn (#74419)

## About The Pull Request
Come ON man

## Changelog
🆑
fix: The fountain ruin will now properly spawn on lavaland
/🆑

* Gives fountain ruins unique ids so the lavaland one will spawn

---------

Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
2023-04-07 16:14:39 -07:00
SkyratBot
60f860f607 [MIRROR] Fixes the supermatter not dusting you when you fall on top of it from a z-level [MDB IGNORE] (#20381)
* Fixes the supermatter not dusting you when you fall on top of it from a z-level (#74535)

## About The Pull Request

fixes SM not dusting you if you fall on top of it from a z level
literally nobody tested the code lmao

## Why It's Good For The Game

bug bad

## Changelog
🆑
fix: SM now dusts you if you fall on top of it from another Z level
/🆑

* Fixes the supermatter not dusting you when you fall on top of it from a z-level

---------

Co-authored-by: jimmyl <70376633+mc-oofert@users.noreply.github.com>
2023-04-06 16:14:50 -07:00
SkyratBot
132e5eccf5 [MIRROR] Lavaland Monster Sprite Update [MDB IGNORE] (#20364)
* Lavaland Monster Sprite Update (#74299)

Updates most Lavaland mob sprites, merges some icon files and adjusts
the pathing.
## About The Pull Request

Updates Most Lavaland Mob Sprites with work provided by Sheets.
Merges, splits, and moves a few icon files and icons to adjust for the
new icons.
Repaths the dmi locations and pixel shifts for the adjusted sprites.

Examples:

![image](https://user-images.githubusercontent.com/28636915/228048074-2971537a-04b9-435c-b323-b5717ca20bdc.png)

![image](https://user-images.githubusercontent.com/28636915/228048092-8570a869-41d1-4229-971b-da96d852d397.png)

![image](https://user-images.githubusercontent.com/28636915/228048113-28809a4f-07cf-4487-a70e-b1e348c3affc.png)

## Why It's Good For The Game

Better quality sprites are better to look at.
Putting sprites that are the same type in the same file is much saner.

## Changelog
🆑
imageadd: added new lavaland sprites, moved some sprites to a new
location, adjusted pixel shift for the updated sprites, adjusted the
name of some sprites.
/🆑

---------

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

* Lavaland Monster Sprite Update

---------

Co-authored-by: Mey-Ha-Zah <tomboxallghss@gmail.com>
Co-authored-by: Fikou <23585223+Fikou@ users.noreply.github.com>
2023-04-06 02:08:39 +01:00
SkyratBot
e7a6f94460 [MIRROR] Moves revolution code of out of flash code, fixes April Fool conversion forcesay never working in any cirumstances [MDB IGNORE] (#20358)
* Moves revolution code of out of flash code, fixes April Fool conversion forcesay never working in any cirumstances (#74411)

## About The Pull Request

- Signallizes head revolutionary flash conversion code, moving it out of
core flash code.
- Removes "tacticool" flashing from head revs, but they can still
convert from any direction

- Fixes April Fools "You son of a bitch! I'm in" force say never
working.
   - Revs are muted on conversion so they couldn't talk.
       - Fixed by only muting revs on non-holidays
   - Cultists are unconscious on conversion so they couldn't talk
       - Fixed by only unconscious-ing cultists on non-holidays
- Brainwash victims are more often than not unconscious / asleep so they
couldn't talk
       - Just left this one.

- Reduced the chance of them occurring and limits it to April Fools only
- A 1% chance of the force says ocurring means they will happen pretty
much once a week, given multiple rev / cult rounds happen every week and
on average like, 20 people are converted. A little absurd, it's good
that it never worked?

## Why It's Good For The Game

Antag code in core item code is bad

It's funny this meme has existed for like 2, 3 years now? No one's
tested it, it's never worked

## Changelog

🆑 Melbert
refactor: Removes Rev code from core flash code
fix: Getting converted on April Fools now triggers the meme force say as
always intended
del: The meme force say can no longer trigger on any day (it didn't work
before anyways)
/🆑

* Moves revolution code of out of flash code, fixes April Fool conversion forcesay never working in any cirumstances

---------

Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
2023-04-06 02:07:43 +01:00
SkyratBot
638cbf8a8e [MIRROR] Replaceable Traitor Uplinks [MDB IGNORE] (#20350)
* Replaceable Traitor Uplinks

* skyrat edits

---------

Co-authored-by: Sol N <116288367+flowercuco@users.noreply.github.com>
Co-authored-by: lessthnthree <three@lessthanthree.dk>
2023-04-06 02:06:22 +01:00
Zergspower
541a557c6e [Missed Mirror] Electrified tram plate #74334 (#20354)
Electrified tram plate (#74334)

A new addition for the bad luck smite/cursed trait. A chance of getting
an electric shock when crossing the tram rails.

While it adds no additional danger for normal crew, if you have the bad
luck smite or cursed trait you may be in for a shocking surprise!

Co-authored-by: lessthanthree <83487515+lessthnthree@users.noreply.github.com>
2023-04-05 13:29:39 -07:00
SkyratBot
2090bf4df3 [MIRROR] timestop the SM [MDB IGNORE] (#20352)
* timestop the SM (#74302)

## About The Pull Request

Allows the timestop effects to freeze the Supermatter processing so that
engineers might be able to save it this time
## Why It's Good For The Game

Both wizards and science nerds are able to stop the SM seconds from
meltdown so that engies can figure out what's the right pipe to place to
prevent a destruction of property.
## Changelog
🆑
add: Timestop blocks the SM from processing (can't be healed, doesn't
output gases but can still take damage)
/🆑

* timestop the SM

---------

Co-authored-by: Ghilker <42839747+Ghilker@users.noreply.github.com>
2023-04-05 11:32:12 -07:00
SkyratBot
5dbfe110ff [MIRROR] Abandoned Interdyne research base [MDB IGNORE] (#20341)
Abandoned Interdyne research base

Co-authored-by: DaydreamIQ <62606051+DaydreamIQ@users.noreply.github.com>
2023-04-05 08:37:46 -04:00
SkyratBot
8cbf6c3b9f [MIRROR] Adds tele access to the QM [MDB IGNORE] (#20329)
* Adds tele access to the QM (#74480)

## About The Pull Request

https://github.com/tgstation/tgstation/pull/54560 gave all command staff
access to the Teleporter room on lowpop, however this was forgotten
about for the QM when they were turned into a head of staff.

I also removed a QM-access check for budget examining since the QM now
has Command access instead.

## Why It's Good For The Game

Better consistency with what access to expect when playing as Command.
It also was bugging me a little bit.

## Changelog

🆑
fix: QM's now get teleporter access on lowpop, like every other Command
does.
/🆑

* Adds tele access to the QM

---------

Co-authored-by: John Willard <53777086+JohnFulpWillard@users.noreply.github.com>
2023-04-04 18:59:11 -07:00
SkyratBot
fb1342d649 [MIRROR] Removes all but the barebones timers for runechat [MDB IGNORE] (#20331)
* Removes all but the barebones timers for runechat (#74428)

## About The Pull Request

Instead of using timers to trigger the fadeout, we use animate()
We start by queuing up all our alpha fades, then if we are shortened, we
calculate the alpha we should be at, set our alpha to that, then animate
from there to 0

This requires ANIMATION_PARALLEL on the pixel offsets to ensure they
don't reset the alpha animation, and it does mean that a second alpha
animate could reset the pixels, but that's a chance I'm willing to take.

The timer work here was almost all of the cost, this should reduce the
overhead of this proc signficantly, making runechat more fit for use
under high stress.

I have got it to end slightly early, but it's very minor and I've only
seen it once, so yaknow, good enough.

## Why It's Good For The Game

Speeeed

## Changelog
🆑
refactor: runechat should be a lot cheaper on the server. I've changed
how it functions, if it behaves weird yell at me please don't just
ignore it
/🆑

* Removes all but the barebones timers for runechat

---------

Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
2023-04-04 18:52:19 -07:00
SkyratBot
0207a7c286 [MIRROR] Removes dead clotting once more [MDB IGNORE] (#20318)
* Removes dead clotting once more (#74412)

## About The Pull Request

It's very likely that wound clotting while dead was in fact broken all
the way until #66037 was merged.

Why do I think that? Well, if you've played medical for a long time, you
may have noticed that you haven't seen a single dead body with slash
wounds on it within the last, well, almost a year now. Why? Because
#66037 updated the dead clotting code to use the proper proc, very
likely fixing it in the process.

Turns out, dead clotting isn't actually that fun. I personally enjoyed
fixing people's wounds back when they didn't magically disappear while
you're dead. It's also a snowflake since it only applies to slash wounds
and nothing else.
## Why It's Good For The Game

Removing some snowflake code that's explained nowhere is pretty good.

It also happens to be unrealistic, not to mention the fact it removes
from the fun of playing medical.
## Changelog
🆑
balance: Slash wounds no longer clot while dead.
/🆑

* Removes dead clotting once more

* Update slash.dm

---------

Co-authored-by: RikuTheKiller <88713943+RikuTheKiller@users.noreply.github.com>
Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com>
2023-04-04 18:18:34 +01:00
SkyratBot
c79bd4f13b [MIRROR] Adds Chuunibyou Spell + Granter [MDB IGNORE] (#20299)
* Adds Chuunibyou Spell + Granter

* aazaasdaw

---------

Co-authored-by: tralezab <40974010+tralezab@users.noreply.github.com>
Co-authored-by: John Doe <gamingskeleton3@gmail.com>
Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com>
2023-04-04 16:34:11 +01:00
SkyratBot
ccb8a92cc9 [MIRROR] Updates paper biscuits and the paper cutter [MDB IGNORE] (#20312)
* Updates paper biscuits and the paper cutter (#74473)

## About The Pull Request

Well this started as a PR updating some of the spelling and grammar on
the biscuits... though spilled out a little into other aspects of the
relevant code.
There are a few things I've done here.

**Paper biscuits:**

- Updated spelling and grammar for paper biscuits. Confidental ->
confidential, that sort of thing.
- A little reorganisation and cleanup of the code itself.
- Preset slips are now generated on init on the parent from a var,
rather than each having its own init proc.
- Early returns, clearer vars, etc

**Paper Cutters**
Ended up doing more here, even though it wasn't the original reason I
started looking at this code.

- Added one (1) paper cutter blade to the paper cutters cargo crate.
Raised the price a little. This is just a reskinned hatchet, so I don't
think it's much of a balance concern.
- Clarifies and docs vars
- Cleans up refs on destroy
- Many `to_chat`s to `balloon_alert`s
- Removed single-letter vars
- Cancelled attack chains when trying to actually use the cutter. You
now pick it up either by having the blade secured and no paper inside,
or by dragging it into your hand.

## Changelog
🆑
spellcheck: Paper biscuits now have more proper spelling and grammar
qol: You now get one spare paper cutter blade in the paper cutter cargo
crate.
tweak: You now use right click to cut paper with a paper cutter
fix: You can now remove paper from a paper cutter if you change your
mind.
/🆑

---------

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

* Updates paper biscuits and the paper cutter

---------

Co-authored-by: Tom <8881105+tf-4@users.noreply.github.com>
Co-authored-by: san7890 <the@ san7890.com>
2023-04-04 04:45:59 +01:00
SkyratBot
6e6c3c2492 [MIRROR] March Into Mapness: Transit Booth [MDB IGNORE] (#20311)
* March Into Mapness: Transit Booth (#74129)

* March Into Mapness: Transit Booth

---------

Co-authored-by: Zepurr <34726343+Hermod132@users.noreply.github.com>
2023-04-04 04:45:51 +01:00
SkyratBot
a078fe797b [MIRROR] Cleans up marisa shoes GAGS [MDB IGNORE] (#20306)
* Cleans up marisa shoes GAGS (#74451)

## About The Pull Request

The marisa shoes were building their icon using greyscale config for
their normal icons, but the worn ones were for some reason using a
`worn_icon_state` "marisa" that had its own full sprite.

I removed the sprite and added an overlay instead for the one part of
the shoes that differs from base sneakers.

Cleaned up the weirdness, now it uses the sneakers base config to build
its icon like all the other sneakers.

## Why It's Good For The Game

Clearer code, less weirdness. Icons created using GAGS are consistent
now.

<details>
<summary>The default colors on a mob still look exactly the same as the
old icon, removing the need for it</summary>

![image](https://user-images.githubusercontent.com/13398309/229326885-142b82a3-b93c-4514-8518-5cee9255d7ad.png)

</details>

<details>
<summary>Now worn icons get set up correctly, where the yellow bit is
uncolored</summary>

![image](https://user-images.githubusercontent.com/13398309/229327106-422bdbe8-7749-442d-810c-3f35f4410327.png)
</details>

## Changelog

🆑
fix: marisa shoes will now build its worn icon using the greyscale
config like sneakers do
/🆑

* Cleans up marisa shoes GAGS

---------

Co-authored-by: Bloop <vinylspiders@gmail.com>
2023-04-04 04:45:34 +01:00
SkyratBot
04e3e4a2ff [MIRROR] March into Mapness: Space Ghost Restaurant [MDB IGNORE] (#20290)
March into Mapness:  Space Ghost Restaurant

Co-authored-by: Profakos <profakos@gmail.com>
2023-04-03 04:45:46 +01:00
SkyratBot
22bb74575f [MIRROR] March Into Mapness: Anomaly Research Ruin [MDB IGNORE] (#20261)
* March Into Mapness: Anomaly Research Ruin (#74110)

## About The Pull Request
Adds a new ruin: Anomaly Research Center!
Researcher Anna Molly disappeared along with 20 anomaly cores, where
could she have gone?

![image](https://user-images.githubusercontent.com/7501474/228217881-6b510347-d37f-4713-841c-e2280b92f69c.png)

<details>
  <summary>Pictures</summary>

(a bit outdated but not that much)

![image](https://user-images.githubusercontent.com/7501474/226172256-1d29257e-0914-48da-b199-8ecb3d0b8d99.png)

![image](https://user-images.githubusercontent.com/7501474/226172318-f98d7402-0b3e-4797-b788-2085bfc6ac46.png)

![image](https://user-images.githubusercontent.com/7501474/226172341-b70ae4d6-c1e2-4cf7-8667-c64ac99252cf.png)

![image](https://user-images.githubusercontent.com/7501474/226172364-c7b4c78f-4ddd-4ded-8ca2-92cb74e05d86.png)

![image](https://user-images.githubusercontent.com/7501474/226172378-8cf579b3-c081-436b-8121-ac6e080d7af0.png)

![image](https://user-images.githubusercontent.com/7501474/226172387-ef67e32f-adb1-4d68-8e6a-a0beb7f0435d.png)

![image](https://user-images.githubusercontent.com/7501474/226172406-d735ce68-2bd6-4218-acc3-7efa0acdca06.png)

![image](https://user-images.githubusercontent.com/7501474/226172413-03c9bff7-2d96-4f51-be3a-ea738f92c04f.png)

![image](https://user-images.githubusercontent.com/7501474/226172448-ea19ced1-6f34-4cc4-ac98-6dbfd1481847.png)

![image](https://user-images.githubusercontent.com/7501474/226172454-a8df6a4d-7a14-4942-ab71-9baa03a948fd.png)
</details>

<details>
  <summary>Loot and hazards</summary>

**Loot**

- (1) Raw anomaly core
- NO ANOMALY CORES
- Empty anomaly armor, empty bag of holding
- Bunch of anomaly neutralizers
- 5u of wittel (guarded by anomaly)
- (5) New anomaly releaser, use on an anomaly core to release and
stabilize the anomaly, removing the decay timer

**Hazards**
Area is guarded with "hollow" anomalies, stable and coreless (flux,
bluespace, hallucination, delimber)
They cannot be signalled, but the anomaly neutralizes will make them go
away

BEEEG ANOMALIE: Spawns with a contained supermassive anomaly. There's
four possible big anomalies that can spawn:
- Mega Bluespace: Has a longer reach and can teleport further. On touch,
teleports you all over space for 10 seconds
- Mega gravity: Distorts the area around it, as strong as the rare
gravity anomaly, but with extreme moveforce
- Mega Pyro: Creates more plasma, turns the tile it's on into lava,
dusts on touch
- Mega Flux: Extra damage, dusts on touch, shoots lightning

</details>

### Mapping March
Ckey to receive rewards: timegreen

## Why It's Good For The Game
I think we're overdue for an anomaly ruin. The ruin has some unique loot
that could be really fun, but not devastating, to play around with on
the station. The mega-anomaly is also pretty cool.

## Changelog
🆑
add: Researcher Anna Nomally has disappeared into space, carrying 20
anomaly cores. What could she be up to?
/🆑

---------

Co-authored-by: Sealed101 <75863639+Sealed101@ users.noreply.github.com>

* March Into Mapness: Anomaly Research Ruin

---------

Co-authored-by: Time-Green <timkoster1@hotmail.com>
Co-authored-by: Sealed101 <75863639+Sealed101@ users.noreply.github.com>
2023-04-02 03:32:28 +01:00
SkyratBot
c267799416 [MIRROR] Chasm Hell On Icebox - 300 Active Turfs on Prod Moment [MDB IGNORE] (#20260)
* Chasm Hell On Icebox - 300 Active Turfs on Prod Moment (#74410)

## About The Pull Request

Spontaneous regressions introduced by #74359
(1e58c1875d).
```txt
 - Z-Level 2 has 150 active turf(s).
 - Z-Level 3 has 150 active turf(s).
 - Z-Level trait Ice Ruins Underground has 300 active turf(s).
 - Z-Level trait Mining has 300 active turf(s).
 - Z-Level trait Station has 300 active turf(s).
 - End of active turf list.
 ```

![image](https://user-images.githubusercontent.com/34697715/229213138-5a6a7a4f-edec-47ab-8def-ee4e4bddfe61.png)

Basically the lavaland ruin sucks dogshit and I had to do a lot of stuff to account for everything failing. There was even a moment where we were adding something to `flags_1` instead of `turf_flags` and that was also really bad to figure out.

![image](https://user-images.githubusercontent.com/34697715/229213428-63bb1f6e-6f88-4604-a3c6-e08e20cbfa7a.png)

i also had to add orange genturfs because it was really getting bad with all of the assertions we had to keep making, especially since stuff like this could also show up:

![image](https://user-images.githubusercontent.com/34697715/229213562-4a145453-5f90-4d05-b8cc-5c1beec2b0dd.png)

That's the prison in the red box, those are active turfs because a chasm scraped it away.

Sorry if this is hard to follow but I promise you everything in this is essential. I wish we didn't have to rely on turf flags as much as we do but this is a fix PR, not a refactor.
## Why It's Good For The Game

Even one active turf on IceBox ate up _three_ seconds of SSair's initialization every single time it was really fucking bad.

We haven't had to deal with chasms for about two years so there's a lot of mapping assertions we made since they just weren't a thing, but now they're back so lets do it properly.
## Changelog
🆑
fix: The prison on IceBox should no longer leak air as often.
/🆑

I have compiled this map about 30 times until active turfs stopped fucking happening and now I am content. This likely doesn't fix _everything_ because some stuff can still be hidden to me, and we still have PRs that need to be merged to reduce the amount of noise we're getting on prod.

* Chasm Hell On Icebox - 300 Active Turfs on Prod Moment

---------

Co-authored-by: san7890 <the@san7890.com>
2023-04-02 03:31:56 +01:00
SkyratBot
d9dfd52908 [MIRROR] OOC-ifies the Bluespace Tag [MDB IGNORE] (#20254)
* OOC-ifies the Bluespace Tag

* Update weapon_description.dm

---------

Co-authored-by: EOBGames <58124831+EOBGames@users.noreply.github.com>
Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com>
2023-04-01 22:04:37 +01:00
SkyratBot
90e8f5f70f [MIRROR] "Biscuit" cards, and also now slip papers are actually paper! [MDB IGNORE] (#20240)
* "Biscuit" cards, and also now slip papers are actually paper! (#74329)

## About The Pull Request
**This is not a literal biscuit which you eat. "Biscuit" is just a
nickname of this kind of snap-cards.**
Slip paper is now actually paper, before that, it was just literally
nothing, an object which does nothing. Because of that, the paper cutter
was useless as well, as it turned normal paper into useless paper slips.
Because of this now paper cutters are placed at:

- Bridge
- HoP office
- Warden office
- Cargo

Also adds biscuit cards. If you have no idea what it is, it's a kind of
card placed around a piece of paper usually to conceal some document and
it can be opened by cracking it with a crunchy sound (that's why it's
named a biscuit). Those are usually only opened in certain situations or
emergencies (The most famous example is the US president's nuclear
biscuit, which contains nuclear codes)

There are 2 biscuits: Normal and Confidential.
Normal is a plain biscuit with nothing really special, can be coloured
if you want as it's white.

![image](https://user-images.githubusercontent.com/42353186/229195802-4ac5ad96-6083-47dc-9ccd-13d132f690bf.png)

The confidential biscuit is blue and has "NT" on it.

![image](https://user-images.githubusercontent.com/42353186/229195753-207d64f1-1f17-418e-a01a-8bfa2c4abc51.png)

There is a not-sealed biscuit you can print in autolathe, it starts open
so you can put paper in and seal later making it a normal crackable one.

Now spare ID safe code automatically spawns in a confidential biscuit in
a new paper slip subtype - corporate slip paper. It's a plastic card
which is sturdier than the normal paper clip.

![image](https://user-images.githubusercontent.com/42353186/229195696-07075f78-c736-43a9-bd14-5cf9ca36ddc9.png)

You can also create the corporate paper slip paper using - normal paper
slip, plastic, and captain rubber stamp (making this paper having a rare
status)

![image](https://user-images.githubusercontent.com/42353186/229195599-75807483-02f9-44cb-ae24-d3388b509ccd.png)

![image](https://user-images.githubusercontent.com/42353186/229195610-5a264ed4-8b04-4452-9032-5755e2419423.png)

## Why It's Good For The Game
Paper slips being not paper is stupid and has no point in being that
way. This also made the paper cutter useless; hence, it was never placed
on any map (and never used).
This PR makes it paper, so it's usable when crew members need a paper
slip instead of a full-size sheet.

Placing paper cutters around the station makes it so the crew can
produce paper slips when they need them, this also gives it finally a
use and place on the station.

The 'biscuits' are cool and give more flavour to the spare ID safe
codes, as well as to other documents people might put in future PRs.
This also makes those paranoid captains which are scared of their spare
ID safe code being stolen and read can sleep tight, as now if someone
opens it up it's really obvious. Now also you can really make sure if
that head is lying about "not touching the spare ID", _but not as anyone
cares really._

**Okay, it's draft for now just so I can add some new things, and fix
the dupe bug:**

- [x] Being able to fax the paper biscuits
- [x] Make it impossible to cut paper slips into paper slips
- [x] Make corporate paper slips craftable or printable
- [x] Make confidential biscuits craftable or printable
- [x] Make paper cutters orderable at the cargo

_CRUNCH_
## Changelog
🆑 DrDiasyl aka DrTuxedo#0931
add: Added 'biscuit' cards! They can contain documents and can only be
accessed by cracking them open, you can't close them back. Nanotrasen
now stores spare ID safe codes in them.
add: Placed paper cutters around the station. They're in Bridge, HoP
office, Warden office, and Cargo.
add: Now you can order paper cutters at cargo.
fix: Now the paper slip is actually paper.
imageadd: The paper slips sprite was slightly tweaked to have text lay
more logically, added the corporate paper slip.
/🆑

---------

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

* "Biscuit" cards, and also now slip papers are actually paper!

---------

Co-authored-by: DrTuxedo <42353186+DrDiasyl@users.noreply.github.com>
Co-authored-by: san7890 <the@ san7890.com>
Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com>
2023-04-01 21:19:17 +01:00
SkyratBot
be0e290f94 [MIRROR] Adds pillow bonus for sleeping. [MDB IGNORE] (#20241)
* Adds pillow bonus for sleeping. (#74349)

## About The Pull Request
There is bedsheet bonus, but no pillow bonus.
## Why It's Good For The Game
Healthy sleep.
## Changelog
🆑
add: Sleeping with a pillow restores more health.
/🆑

---------

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

* Adds pillow bonus for sleeping.

---------

Co-authored-by: Helg2 <93882977+Helg2@users.noreply.github.com>
Co-authored-by: MrMelbert <51863163+MrMelbert@ users.noreply.github.com>
2023-04-01 21:11:46 +01:00
SkyratBot
ec67ffb340 [MIRROR] Properly accounts for byond tick fuckery in runechat code [MDB IGNORE] (#20237)
* Properly accounts for byond tick fuckery in runechat code (#74388)

## About The Pull Request

Ok so like, the agreed upon assumption for "verb like code" (stuff that
triggers when a client sents a network packet to the server), is it runs
in verb time, that sliver of time between maptick and the start of the
next tick.
We thought MeasureText worked like this. It doesn't.

It will, occasionally, resume not during verb time but as a sleeping
proc, at the start of the next tick.
Before the MC has started working.
This appears to only happen when the tick is already overloaded.

Unfortunately, it doesn't invoke after all sleeping procs as we were
lead to believe, but just like, like any sleeping proc.

This means it fights with the mc for cpu time, and doesn't respect the
TICK_CHECK macro we use to ensure this situation doesn't happen.

SOOO lets use a var off the MC instead, tracking when it last fired.
We can use this in companion with TICK_CHECK to ensure verbs schedule
properly if they invoke before the MC runs.

Hopefully this should fix 0 cpu when running at highpop

Thanks to Kylerace and MrStonedOne for suffering together with me on
this, I hate this engine.

* Properly accounts for byond tick fuckery in runechat code

---------

Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
2023-04-01 21:11:04 +01:00
SkyratBot
b6601a2405 [MIRROR] March into Mapness: Meateor [MDB IGNORE] (#20233)
* March into Mapness: Meateor (#74070)

* March into Mapness: Meateor

---------

Co-authored-by: Jacquerel <hnevard@gmail.com>
2023-04-01 05:39:55 -04:00