Commit Graph

1343 Commits

Author SHA1 Message Date
nevimer
f9e9525dc8 Merge remote-tracking branch 'skrat/master' into upstream-jul-24
# Conflicts:
#	_maps/map_files/Deltastation/DeltaStation2.dmm
#	_maps/map_files/tramstation/tramstation.dmm
2023-07-24 20:11:34 -04:00
SkyratBot
46ee262598 [MIRROR] made the bee a basic insect [MDB IGNORE] (#22652)
* made the bee a basic insect (#76971)

## About The Pull Request
the bee now a baisc insect he will now go to find his home and he will
go and pollinated the plants and helped the queen make children by
polliniting the plants and he will. the queen will leve the hive more
rarely than the normal bees so she can stay in the hive to make kids

## Why It's Good For The Game
the bee now is a basic insect so it means he have a better ai

## Changelog
🆑
balance: the bee now can fly over the machines so its easy for him to go
to the hydroponics machine
fix: player bees now will not be stuck inside the hive if he entered it,
they can now leave it
fix: fixed a har deleted when the hive is deleted all the bees still
have a refence to the hive now its fixed
fix: now when a player interacted with the bee hive the bees will now
leave the hive to defend the hive (it was glitched)
refactor: the bees now are a basic insect.
/🆑

* made the bee a basic insect

* Merge conflict

---------

Co-authored-by: Ben10Omintrix <138636438+Ben10Omintrix@users.noreply.github.com>
Co-authored-by: Giz <13398309+vinylspiders@users.noreply.github.com>
2023-07-24 01:21:59 -04:00
SkyratBot
8782f19258 [MIRROR] Stabilizes code that flicks overlays to view/all clients [MDB IGNORE] (#22601)
* Stabilizes code that flicks overlays to view/all clients (#76937)

## About The Pull Request

Rather then using images and displaying them with client.images, we can
instead simply make an object, give it the passed in image/MA's
appearance, and then vis_contents it where we want.

If you want to animate things, you can just use the atom we return from
the proc call.

This ends up costing about 25% of the best case scenario (one guy
online)
It will save more time with more users, but it also allows us to avoid
the hypersuffering that is passing GLOB.clients into the flick proc. So
I think I'm happy enough with this.

For context, here's average per call cost for flick_overlay_view() right
now.
It winds between 5e-5 and 1e-4. With these changes we should pretty
consistently hit the low end of this, because none of our work really
varies all that much.

![flick_avg](https://github.com/tgstation/tgstation/assets/58055496/3483e022-9cc5-490a-be5e-eb79f4e2110b)

(I was using sswardrobe for this, but it ends up being a lot slower so
like, why yaknow)
```
/atom/movable/flick_visual
        New: 3.65625ms
        Provide: 7.4375ms
        Qdel: 9.4375ms
        Stash: 9.46875ms
```

## Why It's Good For The Game

Using our tools should not make your code eat cpu time for no reason.
Hearers is expensive, iterating clients is expensive, let's not be
expensive.

* Stabilizes code that flicks overlays to view/all clients

* Not every client needs to see this

* and these could be using SECONDS

* grr DM

* Convert these modular files to seconds too

* Update dance_machine.dm

---------

Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
Co-authored-by: Giz <13398309+vinylspiders@users.noreply.github.com>
2023-07-20 18:59:09 -04:00
nevimer
29d9d1a49f Merge remote-tracking branch 'skrat/master' into upstream-remake-stop-commiting-to-master
# Conflicts:
#	.github/CODEOWNERS
#	code/__DEFINES/footsteps.dm
#	code/game/objects/items/spear.dm
#	code/game/objects/structures/crates_lockers/closets/secure/security.dm
#	code/modules/language/language_holder.dm
#	code/modules/mob/living/carbon/human/species_types/abductors.dm
#	code/modules/mob/living/carbon/human/species_types/ethereal.dm
#	code/modules/mob/living/carbon/human/species_types/felinid.dm
#	code/modules/mob/living/carbon/human/species_types/lizardpeople.dm
#	code/modules/mob/living/carbon/human/species_types/plasmamen.dm
#	code/modules/mob/living/simple_animal/hostile/mining_mobs/goliath.dm
#	code/modules/projectiles/ammunition/energy/laser.dm
#	modular_skyrat/modules/altborgs/code/robot_model.dm
#	modular_skyrat/modules/customization/modules/mob/living/carbon/human/species/hemophage.dm
#	modular_skyrat/modules/examinemore/code/examine_more.dm
#	modular_skyrat/modules/opposing_force/code/equipment/loadouts.dm
2023-07-19 02:18:09 -04:00
SkyratBot
2f552919c1 [MIRROR] Icons folder cleaning wave two [MDB IGNORE] (#22454)
* Icons folder cleaning wave two

* Merge conflict resolution

* Modular path hell

* hmm

* Update 2022-10.yml

* Another modular thing

---------

Co-authored-by: YesterdaysPromise <122572637+YesterdaysPromise@users.noreply.github.com>
Co-authored-by: Giz <vinylspiders@gmail.com>
2023-07-16 00:41:18 -04:00
SkyratBot
2f5c7f8389 [MIRROR] Icon folder cleaning wave one [MDB IGNORE] (#22374)
* Icon folder cleaning wave one

* Fixe a merge conflict

* Fixes some more merge conflicts

* Fixes some modular icon paths

* Fixes even more modular icon paths...

Hopefully that's the last of them

* Fixes some merge discrepencies

* More merge issues

* ok

* not ok

---------

Co-authored-by: YesterdaysPromise <122572637+YesterdaysPromise@users.noreply.github.com>
Co-authored-by: Giz <vinylspiders@gmail.com>
2023-07-13 16:24:33 -04:00
Zergspower
68a899f5bd [Manual Mirror Fix] Coroner additions and tweaks (#76534) (#22380)
* Coroner additions and tweaks (#76534)

## About The Pull Request

Serrated bone shovels can be created with any kind of shovel now, not
just a spade (???)

Serrated bone shovels can be used in place of circular saw in most
surgeries.

Added a duller (still deadly) variant of the serrated bone shovel as
coroner mail.

Autopsy scanners now act as advanced health analyzers on dead and
seemingly-dead people.

Increased the force, throwforce, and wound bonus of inert ritual knives
and scythes.

Coroner gloves can quickly apply medicine like nitrile gloves.
## Why It's Good For The Game

> Serrated bone shovels can be created with any kind of shovel now, not
just a spade (???)

Weird ass bug.

> Serrated bone shovels can be used in place of circular saw in most
surgeries.

It's serrated, it's cool, it's rare, it has a fast toolspeed.

> Added a duller (still deadly) variant of the serrated bone shovel as
coroner mail.

Very thematic for the coroner, should probably also be a heirloom item
but whatevs. Weaker so there's still a reason to seek out the OG.

> Autopsy scanners now act as advanced health analyzers on dead and
seemingly-dead people.

Scanning corpses is pretty important during surgery - it tells you how
much blood they have, organ damage, diseases... these things don't
appear in the surgical computer readout, which means the coroner has to
go out of his cave to pick up a boring light blue meatbag wound scanner.
This also incentivizes coroners to do their job by giving them something
cool that only works on dead bodies.

> Increased the force, throwforce, and wound bonus of inert ritual
knives and scythes.

These two options in the MortiDrobe are pretty frickin' badass,
especially with how SICK the Coroner looks with them, double especially
in combat.


![image](https://github.com/tgstation/tgstation/assets/53100513/98c6f8a5-3e5a-41a9-8a9c-cb6b82ecc0b8)

However, there's the large issue that as actual weapons they're really,
really weak. Not enough damage, when I use them in combat I both feel
badass but also get a nagging feeling in the back of my mind that I'm
intentionally gimping myself, and with only 10 damage I can *really*
feel it. I find it unfair that these are objectively worse than a
welding tool or even a Butcher's Cleaver when they're a lot more
involved to find, and scarce besides. These arguments apply equally to
the Wizard's ritual knife, and the scythe.

Additionally on the scythe, the crew really needs more good ghetto
weaponry that isn't the boring same ol' of baseball bats, spears,
cleavers... and making scythes useful is a great way to help bridge that
gap. They deal a satisfying amount of damage now, with the clear
downside, of course, being that they're bulky and hard to lug around.

> Coroner gloves can quickly apply medicine like nitrile gloves.

'Fast medicine' doesn't just cover sutures, it also covers medical gel.
Specifically, sterilizer gel. I find it annoying that the Coroner is
encouraged to give up his drip for the boring life-saver nitrile gloves,
because the difference in applying time really does make a difference -
it makes gel applying go from annoying to smooth, which is important
considering the whole purpose of sterilizer gel is to make surgeries go
faster. The Coroner has surgery and thus medical locker access to begin
with, so this isn't a balance problem, (and nitrile gloves are found by
the dozen anyways) especially with how rare the coroner gloves are.
## Changelog
🆑
fix: Serrated bone shovels can be created with any kind of shovel now,
not just a spade (???)
add: Serrated bone shovels can be used in place of circular saw in most
surgeries.
add: Added a duller (still deadly) variant of the serrated bone shovel
as coroner mail.
add: Autopsy scanners now act as advanced health analyzers on dead and
seemingly-dead people.
add: Increased the force, throwforce, and wound bonus of inert ritual
knives and scythes.
add: Coroner gloves can quickly apply medicine like nitrile gloves.
/🆑

* Modular Scythes

---------

Co-authored-by: carlarctg <53100513+carlarctg@users.noreply.github.com>
2023-07-11 22:07:31 -07:00
SkyratBot
1e4ecf1f66 [MIRROR] [NO GBP] Plant bags harvesting fix and other hotfixes for floor sickness [MDB IGNORE] (#22237)
* [NO GBP] Plant bags harvesting fix and other hotfixes for floor sickness (#76479)

## About The Pull Request

After #76018 people reported that you need to do an extra click when you
harvest with plant bag because harvest always dropped on top of
hydrotray instead of going into the bag.

And It looked bad when people just left their harvest on hydrotrays
without picking it up.

I reverted the change that made harvest spawn on top of hydrotrays to
address both issues.

Hydrotrays still protect from germs if the plant was harvested using
telekinesis.

Fixes #76462

Also fixes sloppy mistake in Carpellosis - I was checking whether the
target has mouth instead of owners mouth in the gnashing check.

And it makes patches not become dirty, showing warning message. They
weren't infective anyway.

## Why It's Good For The Game

Fix

## Changelog

🆑
fix: Plant bags now properly harvest items when you click on hydrotray
with it, and don't pick up anything except the harvest
fix: Carpellosis gnashing checks owner's teeth availability instead of
the target's teeth
fix: Patches don't have a message saying that they're dirty
/🆑

* [NO GBP] Plant bags harvesting fix and other hotfixes for floor sickness

---------

Co-authored-by: Andrew <mt.forspam@gmail.com>
2023-07-04 15:58:32 -07:00
INKVD
d20929e6d6 Plant dna editor revival REDUX (#244)
<!-- 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

Revival of #196 with some changes that hopefully make it pass the unit
tests.

## 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. -->

🆑
add: Plant Gene Editor readded.
/🆑

<!-- 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. -->

---------

Co-authored-by: shellspeed1 <omegashellspeed1@gmail.com>
Co-authored-by: nevimer <77420409+nevimer@users.noreply.github.com>
2023-07-01 21:53:54 -04:00
SkyratBot
d7b54593f0 [MIRROR] Triples production of rice and flour [MDB IGNORE] (#22177)
* Triples production of rice and flour (#76317)

* Triples production of rice and flour

---------

Co-authored-by: carshalash <carshalash@gmail.com>
2023-07-01 11:22:06 -07:00
SkyratBot
f485737ea1 [MIRROR] Eating from floor may cause disease [MDB IGNORE] (#22151)
* Eating from floor may cause disease

* Update turf.dm

---------

Co-authored-by: Andrew <mt.forspam@gmail.com>
Co-authored-by: lessthanthree <83487515+lessthnthree@users.noreply.github.com>
2023-07-01 01:30:17 -07:00
Nerevar
6b57e50614 Makes Podpeople Hair Recolorable 3-D: The Revenge (#19908)
* wew

* hell yes fuck yes

* Replace podhair with modular tricolor podhair

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

* help me oh my god

* we're cooking

* done

* what if i were to purchase fast food

* yeah baby

* so true bestie

* let's fucking go

* screenshot tests updated

* wew

* thanks in_phaze !

* we put our whole coderussies into this

* weird but ok

---------

Co-authored-by: Snakebittenn <12636964+Snakebittenn@users.noreply.github.com>
Co-authored-by: Penelope Haze <out.of.p.haze@proton.me>
Co-authored-by: lessthanthree <83487515+lessthnthree@users.noreply.github.com>
2023-06-28 15:59:19 -04:00
SkyratBot
0d66fb7dbc [MIRROR] Gives Holywatermelon inhand sprites [MDB IGNORE] (#21937)
* Gives Holywatermelon inhand sprites (#76054)

## About The Pull Request
Gives holymelons in hand sprites
Closes https://github.com/tgstation/tgstation/issues/75981
![New Piskel
(2)](https://github.com/tgstation/tgstation/assets/84478872/0fabe183-0571-4dcb-95cb-7d8f85f09dc4)
![New Piskel
(4)](https://github.com/tgstation/tgstation/assets/84478872/9f1f91bd-12ea-4b3d-97ff-dc702e242a1b)

![image](https://github.com/tgstation/tgstation/assets/84478872/4603c51e-56a9-4dfd-81da-3c953fe9eab5)

![image](https://github.com/tgstation/tgstation/assets/84478872/b7bfb71b-3246-4fd3-a5ce-aa822ae1ca90)

![image](https://github.com/tgstation/tgstation/assets/84478872/9f916012-ecb8-4445-9779-1063ca73f970)

![image](https://github.com/tgstation/tgstation/assets/84478872/e265a513-1cdd-47fc-969d-b008813c5c2b)

## Why It's Good For The Game
Both was in a issue report and it kind of sucks for cultists to not be
able to tell who has this item that counters every single one of their
spells
## Changelog
🆑
fix: fixes holymelons not having inhand sprites
/🆑

* Gives Holywatermelon inhand sprites

---------

Co-authored-by: Hoolny <84478872+SethLafuente@users.noreply.github.com>
2023-06-21 15:11:14 +02:00
SkyratBot
6dfe17306c [MIRROR] Pulls apart the vestiges of components still hanging onto signals [MDB IGNORE] (#21738)
* Pulls apart the vestiges of components still hanging onto signals

* update modular

---------

Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
Co-authored-by: Tom <8881105+tf-4@users.noreply.github.com>
2023-06-18 13:18:23 +00:00
SkyratBot
df7455f2a4 [MIRROR] Named barrels [MDB IGNORE] (#21850)
* Named barrels (#75976)

![dreamseeker_qLlw7wAl94](https://github.com/tgstation/tgstation/assets/3625094/747f61a0-533f-4cc2-ac61-2901d2d3afb4)

## About The Pull Request

Barrels are nice stationary reagent containers, but it's hard to use
many of them because they're non-transparent and to see the reagents
with science glasses, you need to open the lid.

Now you can name barrels to not mistake them.

## Why It's Good For The Game

You don't need to open the barrel to figure out what you're going to get
from the tap.

## Changelog

🆑
qol: You can name barrels with a pen now, changing its icon
/🆑

* Named barrels

---------

Co-authored-by: Andrew <mt.forspam@gmail.com>
2023-06-14 21:39:09 -07:00
SkyratBot
de4f2add68 [MIRROR] Mafia update: Return to body when the game ends [MDB IGNORE] (#21669)
* Mafia update: Return to body when the game ends (#75258)

## About The Pull Request

Mafia players are now sent to their last body when the Mafia game ends,
and in the meantime they have text saying why they are dead.
They can still be revived during this period, and when the game is up
they'll be forced back into their body if alive, if they are dead then
they'll just be able to re-enter their corpse as normal.

Also since I was poking around in Mafia stuff:
- I removed mafia observing because it was unused (this previously was
used to allow ghosts to see Changeling chat).
- I fixed it being a Draw when there was one Town or Changeling left.
- I fixed the role list showing some roles multiple times
- I fixed the Chaplain not being able to use their night ability (and
therefore being completely useless)
- I added prevention to prevent Admins from causing runtimes or straight
up crashing the server, with a very real chance it can happen purely by
accident, through the Admin UI.

I'm hoping to change how this actually does the job because I find it to
be very bad coding practices, but my problem is that everyone who signs
up for Mafia is a ghost, and they are added into the game through their
CLIENTS, so we don't have access on the mafia controller or the role, to
the player's previous body or mind, without this shit.

Also adds a new mafia board icon

Made by tatax and I find it fits more the theme of Mafia than the
current one.

New UI

* Mafia update: Return to body when the game ends

---------

Co-authored-by: John Willard <53777086+JohnFulpWillard@users.noreply.github.com>
2023-06-05 14:22:20 -07:00
SkyratBot
e9af1f27a9 [MIRROR] Removes a lot of boilerplate from hydroponics apply, adds a mushroom mechanic for milk as implied by comments [MDB IGNORE] (#21412)
* Removes a lot of boilerplate from hydroponics apply, adds a mushroom mechanic for milk as implied by comments (#75491)

## About The Pull Request

- Removes a ton of boilerplate from `on_hydroponics_apply`
- Replaces `chems.get_reagent_amount(type)` with `volume`. The former is
a roundabout way of accomplishing the latter, the only thing the proc
did was add un-necessary iterating and also round to the chemical
quantisiation level, which wasn't really necessary as most locations
rounded anyways.

- While doing this, I saw th is comment: `Milk is good for humans, but
bad for plants. The sugars cannot be used by plants, and the milk fat
harms growth. Not shrooms though. I can't deal with this now...` This
was super easy to just throw in so I did it.

- Additionally, I noticed Uranium and Radium had this var, `tox_damage`,
which was ... the same for both, but one used REM and one didn't, but it
shouldn't have been using REM since it was multiplied by REM in the
proc... so I removed the REM from the latter, making it doubly strong
(0.5 -> 1). I did this just because I could use it nicely for the hydro
proc but... I unno.

## Why It's Good For The Game

Makes it a bit clearer on working with hydro chems

## Changelog

🆑 Melbert
balance: Milk no longer harms the potency of mushrooms. Apparently it's
good for them?
balance: Radium now does slightly more tox damage than Uranium
code: Removed a ton of boilerplate from chem hydro interactions
/🆑

* Removes a lot of boilerplate from hydroponics apply, adds a mushroom mechanic for milk as implied by comments

---------

Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
2023-05-25 17:25:18 -07:00
SkyratBot
13970a9399 [MIRROR] honeycomb fixes [MDB IGNORE] (#21392)
* Refactors honeycomb into a food (#75551)

## About The Pull Request

Updates to honeycomb for the new reagent system

## Why It's Good For The Game

The plant bag can hold honeycomb but the all-in-one grinder does not
accept honeycomb from the plant bag, requiring manual removal and
placement into the grinder. This speeds up workflow and makes bees less
clunky and more accessible.

## Changelog

🆑
refactor: honeycomb is now edible
fix: all-in-one grinder now notifies the user when trying to dump an
empty bag
fix: all-in-one grinder now accepts honeycomb from plant bags
/🆑

* honeycomb fixes

* fixes

* almost slipped me by

---------

Co-authored-by: Oreo <20830349+Peliex@users.noreply.github.com>
Co-authored-by: ghost sheep <sheepwiththemask@gmail.com>
2023-05-24 15:38:40 +00:00
SkyratBot
3696b1eb88 [MIRROR] Converts Killer Tomatoes to Basic Mobs [MDB IGNORE] (#21301)
* Converts Killer Tomatoes to Basic Mobs

* skyrat modular changes

---------

Co-authored-by: san7890 <the@san7890.com>
Co-authored-by: lessthanthree <83487515+lessthnthree@users.noreply.github.com>
2023-05-20 23:44:02 -07:00
SkyratBot
e27eba7f66 [MIRROR] Makes fire blossoms glowy. [MDB IGNORE] (#21251)
* Makes fire blossoms glowy. (#75392)

## About The Pull Request
They have bioluminescence trait as endershrooms, but don't glow like
endershrooms.
That's how it looks when grown:

![image](https://github.com/tgstation/tgstation/assets/93882977/65aa33ba-3b8e-4ad8-a347-d44f256a15f8)
And it has a weaker light when it's harvested:

![image](https://github.com/tgstation/tgstation/assets/93882977/7c1ec59d-624d-44cc-bf42-5e850e625ba6)
## Why It's Good For The Game
It's cool.
## Changelog
🆑
add: Fire Blossoms are now glowy.
/🆑

* Makes fire blossoms glowy.

---------

Co-authored-by: Helg2 <93882977+Helg2@users.noreply.github.com>
2023-05-18 18:58:44 +02:00
Tom
8f68506ce6 Add new chems to plants that allow foam effects (#69221) (#21206)
Adds a 10% Fluorine gene to Corpseflowers, and a 5% Sulfuric Acid gene to Novaflowers

Co-authored-by: Tim <timothymtorres@gmail.com>
2023-05-15 19:35:33 -07:00
coldud13
ea8805371e [MANUAL MIRROR] Makes the juice of death berries poisonous, like poison berry's (#72443) (#21135)
Makes the juice of death berries poisonous, like poison berry's (#72443)

Found out poison berry juice existed from the wiki and code diving,
however, only poison berries juice into it. Death berries, despite their
stronger poison, juice into normal berry juice instead. This changes
that to have death berries also juice into poisoned juice.

Mostly a consistency change, it doesn't make sense for the berry with
the stronger poison to not juice into something poisonous as well, when
a berry that's less poisonous does do so. For transparency's sake, this
will make the death berry marginally stronger, as with plant traits you
can get the juiced reagent inside of a plant without juicing it.

Co-authored-by: Unit2E <41054578+Unit2E@users.noreply.github.com>
2023-05-15 14:43:03 +01:00
SkyratBot
5e9d2379bf [MIRROR] Stock Part Resprite [MDB IGNORE] (#21014)
* Stock Part Resprite

* wew

* alright

---------

Co-authored-by: Thunder12345 <Thunder12345@users.noreply.github.com>
Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com>
2023-05-09 04:10:18 +01:00
SkyratBot
c4d4e1da63 [MIRROR] Minerals have been refactored so costs and minerals in items are now in terms of mineral defines. [MDB IGNORE] (#20916)
* Minerals have been refactored so costs and minerals in items are now in terms of mineral defines.

* AI GEN RUN ONE

---------

Co-authored-by: ArcaneMusic <41715314+ArcaneMusic@users.noreply.github.com>
Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com>
2023-05-03 22:48:10 +01:00
SkyratBot
97ed91be26 [MIRROR] Auto-wiki setup for soup [MDB IGNORE] (#20851)
* Auto-wiki setup for soup (#74931)

## About The Pull Request

Sets up an auto-wiki run for Soup.

It's all in the in game cookbook, but keeping the wiki up to date is
good.

Still figuring out how auto-wiki works with the help of Smithers, so it
might need to be updated in a follow-up PR.

```
{{Autowiki/SoupRecipeTemplate
|name=Tomato Soup
|taste=tomato
|foodtypes=Vegetables, Fruits
|description=Drinking this feels like being a vampire! A tomato vampire...
|icon=soup/Tomato Soup
|requirements=50 units Water, 2 tomatos, at temperature 450K
|results=30 units Tomato Soup, 20 units Tomato Juice
}}
```

Templates:
https://tgstation13.org/wiki/Template:Autowiki/SoupRecipeTemplate
https://tgstation13.org/wiki/Template:Autowiki/SoupRecipeTableTemplate

* Auto-wiki setup for soup

---------

Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
2023-05-01 14:11:32 -07:00
SkyratBot
7028b1d32e [MIRROR] Converts Spiderlings from Structures to Basic Mobs [MDB IGNORE] (#20852)
* Converts Spiderlings from Structures to Basic Mobs (#75001)

If I could've made this more atomic, I would have in a heartbeat, trust
me.

## About The Pull Request

Hey there. People were mocking us for having spiderlings still be a
subtype of `/obj/structure`. I decided to take a lot of time to fix
that. A lot of behavior it was implementing was just pseudo-mob stuff,
so it was actually easier than it looked for the raw conversion. A lot
of the footwork on spider stuff in the basic framework was already done
previously by Jacquerel, so that was pretty nice.

However, there are two new things that weren't introduced in the code
that had to be put in.

A) A component to handle growth and differentiation into a mob. This may
have already existed, no clue. If it does (and it's NOT
evolutionary_leap), let me know.
B) AI Behavior to handle seeking out a vent, entering a vent, and then
exiting out of a different vent. I may have gone a bit wacky on the
code, but it certainly works as expected (spiderling goes in one vent,
exits the other). Let me know if you can think of a way it can be better
optimized, but it was deliberately written to be very failsafey in case
shit goes yonkers.

One fundamental difference between structure spiderlings and basic mob
spiderlings (beyond the AI and not just a random prob() check for
movement) is the fact that they had vent movement coded in... but we
_really_ don't need stuff like that for our intents and purposes. If the
range turns out to be too OP in the current framework, we can always
change it up a bit, but also there's a _lot_ of vents we can end up in
the station (my testing had one spiderling end up in the AI sat to get
obliterated).
## Why It's Good For The Game

Spiderlings aren't structures! They behave like a mob should! Players
can possess spiderlings! They work seamlessly with differentiating into
a giant spider! Better AI! More room for people to add into this very
under-utilized buggers!
## Changelog
🆑
refactor: Spiderlings are now basic mobs, report any complete
weirdness/deviation from known behavior. They should be a lot more
intelligent now though.
add: AI Spiderlings are super fragile, but they're also super fast,
especially when they get into a vent. Once they're in circulation, they
could end up everywhere! Maybe in the armory, maybe in a locked closet
in maintenance. Be sure to be vigilant and splat them whenever you can
to save the station from a whole lotta heartache!
/🆑

---------

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

* Converts Spiderlings from Structures to Basic Mobs

---------

Co-authored-by: san7890 <the@san7890.com>
Co-authored-by: MrMelbert <51863163+MrMelbert@ users.noreply.github.com>
2023-04-30 12:54:58 -07:00
SkyratBot
7ddd343a70 [MIRROR] Move dirt [MDB IGNORE] (#20848)
* You can now move dirt (#75028)

## About The Pull Request

Changed the recipe for dirt piles from 3 sandstone bricks to 3 sand.
And made the dirt pile drop these 3 sand on deconstruction instead of
just disappearing.

![dreamseeker_Lj6jELZPjb](https://user-images.githubusercontent.com/3625094/235268536-c9835fa0-ce31-4bd3-a75c-ef2f3dcc7da7.gif)

Also fixed hydrotrays resetting their water and nutriments on
construction.

## Why It's Good For The Game

You could accidentally click on the wrong mouse button and loose your
dirt pile instead of uprooting a plant.
And it didn't make sense why you would need to turn sand into bricks
before making a pile out of it.

## Changelog

🆑
qol: Dirt pile is crafted from sand instead of sandstone and drops it on
deconstruction
fix: You can't have free water and nutriments by rebuilding hydrotray
/🆑

* Move dirt

---------

Co-authored-by: Andrew <mt.forspam@gmail.com>
2023-04-30 10:56:18 +01:00
SkyratBot
dad84df983 [MIRROR] Makes a whole bunch of wooden objects flammable [MDB IGNORE] (#20670)
* Makes a whole bunch of wooden objects flammable (#74827)

## About The Pull Request

This whole PR started because I realized that baseball bats are not
actually flammable which I found weird, then I looked at a whole bunch
of other stuff that really should be flammable but also isn't.

## Why It's Good For The Game

Makes wooden objects behave slightly more consistently? Honestly, most
of these seem like oversights to me.

## Changelog

🆑
balance: The following structures are now flammable: Picture frame,
fermenting barrel, drying rack, sandals, painting frames, paintings,
spirit board, notice board, dresser, displaycase chassis, wooden
barricade
balance: The following items are now flammable: Baseball bat, rolling
pin, mortar, coffee condiments display, sandals, wooden hatchet, gohei,
popsicle stick, rifle stock
/🆑

* Makes a whole bunch of wooden objects flammable

---------

Co-authored-by: ChungusGamer666 <82850673+ChungusGamer666@users.noreply.github.com>
2023-04-21 01:42:34 +01:00
SkyratBot
92f3327227 [MIRROR] refactors poles and trees into basic mobs [MDB IGNORE] (#20649)
* refactors poles and trees into basic mobs (#74812)

## About The Pull Request
refactors poles and trees into basic mobs. If trees now see you holding
a chainsaw, hatchet, or some wood they will get angry and knock you out
for longer. Poles will run around giving some of their charge to APCs
they find along the way. i did them both in this PR coz poles were a
subtype of trees.

## Why It's Good For The Game
refactor

## Changelog
🆑
refactor: refactors trees into basic mobs
refactor: refactors poles into basic mobs
add: If trees now see you holding a chainsaw, hatchet, or some wood they
will get angry and knock you out for longer
add: Poles will run around giving some of their charge to APCs they find
along the way
fix: cells charged by the pole will now have their icon correctly
updated to reflect their charge
/🆑

---------

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

* refactors poles and trees into basic mobs

---------

Co-authored-by: SMOSMOSMOSMOSMO <95004236+SmoSmoSmoSmok@users.noreply.github.com>
Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>
2023-04-20 02:24:29 +01:00
SkyratBot
ef7ee99bc5 [MIRROR] Kills an old macro involving hydro trays [MDB IGNORE] (#20625)
* Kills an old macro involving hydro trays (#74785)

## About The Pull Request

- Axes `TRAY_NAME_UPDATE`, replaces it with `update_name`
- Unset particles in `set_seed`
- Gives trays a description (they never had one?)
- Update appearance when basin is emptied

## Why It's Good For The Game

More accurate updates when changes are done to the tray.

## Changelog

🆑 Melbert
qol: Hydroponics trays should update more snappily now
/🆑

* Kills an old macro involving hydro trays

---------

Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
2023-04-17 21:58:17 -07:00
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
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
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
8f11ad41b0 [MIRROR] Makes uprooting and digging out plants use tool_behaviour instead of just typepath of shovel. [MDB IGNORE] (#20494)
* Makes uprooting and digging out plants use tool_behaviour instead of just typepath of shovel. (#74630)

## About The Pull Request
Closes https://github.com/tgstation/tgstation/issues/74564.

You can now uproot plants with any item that has TOOL_SHOVEL flag
instead of just item/shovel. So you can use trench tool for this
purpose.
And the same with digging out plants. It was originally limited to just
spade shovel, which is rather strange considering that there is bone
shovel recipe and one of it's ingridients is spade.

Changed icon of omnitool's shovel because spade won't be the only shovel
used for uprooting plants.

Also removed a bunch of code and it didn't affect anything in my tests
so I'm assuming it was unused and completely useless.
Maybe i'm not right and it affects something tho.
## Why It's Good For The Game
Trench tool can be used as a normal shovel.
## Changelog
🆑
fix: You can now uproot and dig out plants with any shovel and not just
spade.
/🆑

* Makes uprooting and digging out plants use tool_behaviour instead of just typepath of shovel.

---------

Co-authored-by: Helg2 <93882977+Helg2@users.noreply.github.com>
2023-04-12 04:10:38 +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
e299106b73 [MIRROR] Fixes coderbus item layering [MDB IGNORE] (#20332)
* Fixes coderbus item layering (#74481)

## About The Pull Request

Pixel y offsets were causing the items to draw behind the seats, which
is cringe, and the grown items randomly offset themselves, which lead to
more shitfuck. This solves those two issues.

Yes I did add bespoke code for the snowflake reference ruin. Neener
neener.

## Why It's Good For The Game

![image](https://user-images.githubusercontent.com/58055496/229493901-6fdb5d71-3456-47dc-a042-62b5c85102e6.png)

## Changelog
🆑
fix: The coderbus passengers layer properly again
/🆑

* Fixes coderbus item layering

---------

Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
2023-04-05 08:35:54 -04:00
SkyratBot
3464b6bfb2 [MIRROR] Refactors Regenerate Organs, and a few organ helpers [MDB IGNORE] (#20094)
* Refactors Regenerate Organs, and a few organ helpers

* MERGE CONFLICTS

* GETORGANSLOT > GET_ORGAN_SLOT

* GETORGAN > get_organ_by_type

* lint repairs

* more lint

* Update tgstation.dme

* Update surgery_step.dm

---------

Co-authored-by: Zephyr <12817816+ZephyrTFA@users.noreply.github.com>
Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com>
2023-04-01 02:51:06 +01:00
Gandalf
e4b4d4d3c0 MISSED MIRROR [Lints Against Unmanaged Local Defines] (#20204)
* https://github.com/tgstation/tgstation/pull/74333

https: //github.com/tgstation/tgstation/pull/74333
Co-Authored-By: tattle <66640614+dragomagol@users.noreply.github.com>

* var stuff

Co-Authored-By: tattle <66640614+dragomagol@users.noreply.github.com>

* vars

* Update sol_fed.dm

---------

Co-authored-by: tattle <66640614+dragomagol@users.noreply.github.com>
2023-04-01 01:15:22 +01:00
SkyratBot
6d08ad8984 [MIRROR] Machines can now be pried open multiple times and maintain their initial densities [MDB IGNORE] (#20044)
* Machines can now be pried open multiple times and maintain their initial densities (#74163)

## About The Pull Request
These changes fix how machines are pried open with crowbars. Currently,
most machines can be pried open, but many of them have no method for
being closed again. This means they can be pried once, and then never
again (as their internal logic has them stuck in an "open" state).

Additionally, the densities of these machines is also inconsistent, as
density is tied to the procs for opening/closing machines (open =
non-dense, closed = dense). Thus, these new changes allow desired
densities to be passed to `open_machine()` and `close_machine()`, as
well as `default_pry_open()`, meaning that atypical machine densities
can be maintained (e.g. machines that should remain dense when open, or
non-dense when closed).

I've also added a `close_after_pry` boolean parameter to the
`default_pry_open()` proc, which determines whether to immediately close
a machine after opening it. This is useful for machines that don't
really have a use case for remaining open, often lacking a sprite to
represent this state as well.
* Note: Opening and immediately closing machines with this boolean will
still drop their contents onto the floor, but will now immediately
"close" in their logic, allowing for further prying attempts in the
future.

It's worth noting that this implements default density values for these
procs, which match the existing behavior for machines, so as to
(hopefully) not disrupt existing or expected machine behavior.

Two caveats to these changes currently exist:
1. On machines that immediately close after prying, the prying action
can now be spammed to the chat with repeated clicking. I'm uncertain if
this needs some sort of spam protection or if it's fine as is.
2. I've only been able to manually test this code. I'd love to write
unit tests for it, as it affects a lot of different machines, but don't
know where to begin with DM Unit Testing (or which files would be good
examples to reference in the code base).
* Note: I did manually test each and every machine that calls
`default_pry_open()` and they all seem to be working correctly. (Except
for `obj/machinery/plumbing/sender`, but that doesn't seem to need
prying, as it has no contents to drop, only reagents.)

As always, let me know if any improvements/changes should be made.

This closes #26833.

## Why It's Good For The Game
These changes allow crowbar prying to correctly occur multiple times on
any machine, which is intended behavior. It prevents player confusion
that could occur when a machine couldn't be pried open a second time
during a shift, even though it had previously been pried before, forcing
players to question themselves. (Are they missing something? Did they
perform the action a different way last time? Is the machine actually
still powered on instead of off? Etc.)

These changes also maintain the correct density for machines after
prying, preventing scenarios where a machine might behave differently
once it had been pried open. (An example of this was being able to walk
through a smartfridge after prying it open.) Additionally, players are
no longer required to know/use workarounds (such as machine disassembly)
to retrieve a powered-off machine's contents.

Overall, these changes improve consistency around machines, creating
more scenarios where they behave as players would expect.

## Changelog
🆑
fix: machines can now be pried open more than once.
fix: machines now have the correct density when pried open.
/🆑

---------

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

* Machines can now be pried open multiple times and maintain their initial densities

* wew

---------

Co-authored-by: Antonio Tosti <5588048+atosti@users.noreply.github.com>
Co-authored-by: san7890 <the@ san7890.com>
Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com>
2023-03-27 02:36:29 +01:00
SkyratBot
96be018eb1 [MIRROR] Refactors Suiciding Variable Into Trait [MDB IGNORE] (#20017)
* Refactors Suiciding Variable Into Trait

* suicide

* https://github.com/tgstation/tgstation/pull/72919

MISSED IRROR

* better suicide handling

---------

Co-authored-by: san7890 <the@san7890.com>
Co-authored-by: lessthnthree <three@lessthanthree.dk>
Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com>
2023-03-27 02:03:05 +01:00
SkyratBot
254092a7d5 [MIRROR] Add missing space to plant grafts [MDB IGNORE] (#19987)
* Add missing space to plant grafts (#74098)

It's now `"plant graft (Grass)"`, rather than `"plant graft(Grass)"`.

* Add missing space to plant grafts

---------

Co-authored-by: Jack Edge <yellowbounder@gmail.com>
2023-03-26 01:27:03 -07:00
SkyratBot
39049080ac [MIRROR] Fix onion slices being plural [MDB IGNORE] (#19983)
* Fix onion slices being plural (#74096)

Despite being a single onion slice in a sprite, it was entitled "onion
slices". Had to tweak the desc accordingly.

* Fix onion slices being plural

---------

Co-authored-by: Jack Edge <yellowbounder@gmail.com>
2023-03-19 19:59:53 -07:00
SkyratBot
4cd00f275a [MIRROR] Faction defines [MDB IGNORE] (#19590)
* Faction defines

* fixes

---------

Co-authored-by: Profakos <profakos@gmail.com>
Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com>
2023-03-10 04:55:18 +00:00
SkyratBot
f8f2abb11f [MIRROR] Refactor, improve, and rename canUseTopic to be can_perform_action [MDB IGNORE] (#19391)
* Refactor, improve, and rename canUseTopic to be can_perform_action

* updoot

* https://github.com/tgstation/tgstation/pull/72876

https://github.com/tgstation/tgstation/pull/72876

---------

Co-authored-by: Tim <timothymtorres@gmail.com>
Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com>
2023-03-10 04:19:25 +00:00
lessthanthree
021c9d546e [MANUAL MIRROR] Buff scythes, goats, and plantbgone vs PLANT biotypes (#19215)
Buff scythes, goats, and plantbgone vs PLANT biotypes (#72889)

This buffs scythes, goats, and plantbgone vs PLANT biotypes:

- Scythes now deal x1.5 damage to venus flytraps (3 hits to kill)
- Scythes now target the flower bud vines
- Goats now target flower bud vines and deal 15 damage to PLANT biotypes
- Goats have a eating sound whenever they bite PLANT biotypes
- Plantbgone now does 2 dmg per unit to PLANT biotypes (10 dmg per
spray)
- Plantbgone now has a 75% chance to remove weeds and deals large damage
to flower buds
- Weed control crates now come with a pair of leather gloves
- Golems are immune to thorn effects
- Any kind of thick glove material will prevent thorn effects when
attacking
- Flower buds will now take x4 damage from fire and sharp weapons
(unless they have fire trait)
- Regular scythes are now a sharp object

Also this fixes a few runtimes with spacevines and nulls. The bane
element now accepts `mob_biotypes` bitflags as an argument.

Before my changes:

- Plant-b-gone was doing 0.4 dmg per unit to PLANT biotypes (2 dmg per
spray)
- Scythes took 5 hits to kill venus flytraps
- Goats only affected podpeople
- Flower bud vines were being ignored by weed killing code
- Plantbgone only had a 50% chance to remove weeds (and this was very
inconsistent due to RNG)
- Botanical gloves and thick gloves didn't protect from thorns
- Golems were getting pierced by thorns despite having pierce immunity
- Flower buds were not taking the x4 damage like they should have been
- Regular scythes were not a sharp object, but other scythes
(chaplain's, megafauna loot) were sharp

This makes the weed killer crate more effective since people were
complaining about it being worthless vs vines and flower buds. These
changes give people more options to respond to threats vs plants.

🆑
add: Add a pair of leather gloves to weed control crate
balance: Mobs with the PLANT biotypes (venus flytraps, pod people,
killer tomatoes) are now much weaker vs scythes, goats, and plantbgone.
balance: Plantbgone is now more effective at destroying weeds.
balance: Regular scythes are now a sharp object
fix: Fixed scythes, goats, and plantbgone not affecting flower bud
vines.
fix: Thick and botanical gloves not protecting from thorns
fix: Golems not having pierce immunity from thorns
fix: Runtime where vines tried to spread into null turf
fix: Runtime where null vines that were destroyed were trying to spread
to nearby turfs
soundadd: Add eat food sound when goats eat plants
code: Improved goat targeting code
code: The bane element now accepts `mob_biotypes` bitflags as an
argument.
/🆑

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-03-03 18:37:34 +00:00
SkyratBot
c5ca08fd01 [MIRROR] Adds spaces around logical operators [MDB IGNORE] (#18776)
* Adds spaces around logical operators

* Update code/modules/admin/verbs/admingame.dm

Co-authored-by: Jeremiah <42397676+jlsnow301@users.noreply.github.com>
Co-authored-by: Tom <8881105+tf-4@users.noreply.github.com>
2023-01-21 22:16:43 -08:00
SkyratBot
902caab964 [MIRROR] Stock Part Datumization Complete [MDB IGNORE] (#18639)
* Stock Part Datumization Complete (#72559)

So i accidently reverted all my commits in #72511 when resolving a merge
conflict So ummm yeah fuck my bad anyway

Finishes what was started in #71693 and completes the
[initiative](https://github.com/tgstation/dev-cycles-initiative/issues/1)

Except for `obj/item/stock_parts/cell` and its subtypes. All machines
now use `datum/stock_part` for its requested components & component
parts

Not sure if i caught every machine & stuff in the game so merge with
caution
🆑
code: datum stock part for every obj stock part
refactor: all machines & dependent experiments to use datum stock parts
/🆑

* Fixes a teeny tiny Funce mistake :)

Co-authored-by: SyncIt21 <110812394+SyncIt21@users.noreply.github.com>
Co-authored-by: GoldenAlpharex <jerego1234@hotmail.com>
2023-01-19 17:09:19 -05:00
SkyratBot
1ba8793785 [MIRROR] Makes a few previously microwave only cooking options also doable in an oven [MDB IGNORE] (#18576)
Makes a few previously microwave only cooking options also doable in an oven (#72473)

## About The Pull Request

Make the following list of things that can only be cooked in the
microwave currently also able to be cooked in an oven:

Uncooked rice
Raw spaghetti

Wet leather (YUM!)

Aloe
Onion slices
Cheese curds
Eggs, rotten or not
Ready donk
## Why It's Good For The Game

We've already got stuff that's microwave-oven interchangeable (donk
pockets), sometimes you don't have a microwave and you're just locked
out of more than a few recipes because something that could easily be
made in an oven isn't coded to be. The simple solution is just not have
that be the case.
## Changelog
🆑
qol: A few recipes that were microwave only (like boiling rice, heating
ready donk, so on) can now also be made in an oven
/🆑

Co-authored-by: Paxilmaniac <82386923+Paxilmaniac@users.noreply.github.com>
2023-01-19 14:49:47 +13:00
SkyratBot
27492ff60d [MIRROR] Autounlock techwebs are shared between machines that use them. [MDB IGNORE] (#18734)
* Autounlock techwebs are shared between machines that use them. (#72515)

## About The Pull Request

Did you know that for every Autolathe, Limbgrower, Biogenerator, ORM,
and Smelter that was built, an entire new techweb was made? The average
round has 2 ORMs (smelters count) if not more from ORM deconstruction
objective, 2 biogenerators, several autolathes and generally 0-1
limbgrower, I think there's more techwebs being created than we need.

Creating a whole techweb was a pretty terrible way to optimize this, so
I made a global list that stores these techwebs. Created on demand,
these autounlocking techwebs now share between the machines that use
them. It also generate all hacked nodes which will be visible if the
machine is hacked, instead of 'researching' them for each hacked
individual machine.

The 'specialized' techweb subtype was removed because its sole purpose
was to allow autounlocking to be a subtype of it. Now autounlocking is
just the direct subtype. I also removed mechfab autounlocking type
because it wasn't used, mechfabs use techwebs directly.

Autolathes and Limbgrowers now locally store 'imported designs' which
are things uploaded from technology disks. Outside of this, the
autounlocking techweb subtype now stores 'hacked designs' which unlocks
when the machine is emagged.
While doing this, I saw ORMs and Biogenerators had disks you can insert
into them, but I did not find anything that can actually be uploaded to
them (I saw Alien Alloys as a possibility, but there's no such disk to
allow uploading this alloy to the machine, and I didn't think an entire
system for 1 single alloy was worth keeping around), so I removed this
unused feature from both machines.

I merged 'Hacked' and 'Emagged' categories because they served the same
purpose, 'hacked' being on hacked autolathes and 'emagged' being on
hacked (emagged) limbgrowers.

Tech disk techwebs (which is created every time a disk is made, however
I hope to change this in the future) into it's own subtype, so admins
understand where its from when looking in VV panel (because I was
confused when I saw them at first).

``autolathe_crafted`` proc was removed because it was entirely unused
too.

Now it looks like this, which I consider an improvement:

![image](https://user-images.githubusercontent.com/53777086/211052875-9215a84d-fb04-450b-a120-4d0316cec6ff.png)

## Why It's Good For The Game

We no longer initialize a brand new techweb for no reason whatsoever.
Each techweb made is making entire lists of experiments and research
papers, all of which is never to be seen in-game and is completely
useless to the player. Cutting down on these techwebs is a good first
step to this needless initializing.

## Changelog

🆑
qol: Removed the tech disk part of the ORM's UI as it was entirely
unused, now it's a little more compact with less scrolling needed.
refactor: Autolathes, Limb growers, Biogenerators, ORMs and Smelters now
share techwebs with other machines of their types, rather than all make
new techwebs each time. This means they only build their nodes once,
including hacked ones. Instead of researching nodes on hacking the
machine, they now show hacked ones depending on if it's hacked.
/🆑

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

* Autounlock techwebs are shared between machines that use them.

Co-authored-by: John Willard <53777086+JohnFulpWillard@users.noreply.github.com>
Co-authored-by: Zephyr <12817816+ZephyrTFA@ users.noreply.github.com>
2023-01-14 18:54:19 -08:00
SkyratBot
090174da7a [MIRROR] Biogen shows default reagent container icons instead of beakers [MDB IGNORE] (#18503)
* Biogen shows default reagent container icons instead of beakers (#72247)

## About The Pull Request

With the new crafting menu some reagents now have default container
assigned.
I applied these to visualize reagents in biogen UI too.

<img alt="060ybChTkI"
src="https://user-images.githubusercontent.com/3625094/209483256-e4159a05-46ae-47b8-bc42-9d003cf6c303.png">

## Why It's Good For The Game

Better representation of a reagent.

## Changelog

🆑
qol: Biogenerator shows default reagent containers instead of beakers
/🆑

* Biogen shows default reagent container icons instead of beakers

Co-authored-by: Andrew <mt.forspam@gmail.com>
Co-authored-by: Zonespace <41448081+Zonespace27@users.noreply.github.com>
2023-01-13 16:18:14 -08:00