Commit Graph

892 Commits

Author SHA1 Message Date
SkyratBot
c70043425f [MIRROR] Metastation Medbay Lighting Tweaks [MDB IGNORE] (#22668)
* Metastation Medbay Lighting Tweaks (#77012)

## About The Pull Request

Adjusts some of the lights in metastation medbay to improve overall
theming of specific rooms.
Rooms changed:
- Morgue
- Medbay Hallway
- Cold Storage
- Chem Storage
- Break Room
- Clinic
- Primary Surgical Theatre
- Psychiatrists Office

This makes use of a new preset, Dim Cold Lights, and also implements a
Dim Warm Light counterpart.
## Why It's Good For The Game

More presets for mappers to use for lights, and subtle changes to the
lights in medbay to make each light feel more impactful, darkening the
rooms more when lights break and improving the overall theme of specific
rooms via the use of color temperature and intensity.
## Changelog
:cl:Senefi
add: Some Metastation Medbay lights have been moved and adjusted.
/🆑

* Metastation Medbay Lighting Tweaks

---------

Co-authored-by: Senefi <20830349+Peliex@users.noreply.github.com>
2023-07-25 02:25:05 -04:00
SkyratBot
38dc811b6b [MIRROR] NEW STATION TRAIT: Radioactive Nebula [MDB IGNORE] (#22614)
* NEW STATION TRAIT: Radioactive Nebula

* Update job_boxes.dm

* Increase the intensity increment time so that shields will last longer

---------

Co-authored-by: Time-Green <7501474+Time-Green@users.noreply.github.com>
Co-authored-by: Bloop <13398309+vinylspiders@users.noreply.github.com>
2023-07-24 02:07:40 -04:00
SkyratBot
8fba8b0690 [MIRROR] Ice Cream Vat QoL: Elevated surface, placing in hands, not using usr [MDB IGNORE] (#22656)
* Ice Cream Vat QoL: Elevated surface, placing in hands, not using usr (#76959)

## About The Pull Request
- Ice cream vats now count as elevated surfaces for preventing germs
from getting on your ice cream cones.
- Ice cream vats now try to dispense cones into your hands first, and
defaulting to regular placement afterwards.
- Put-in-hands behavior for germ-sensitive items has been changed;
instead of looking solely for tables, it checks for any suitably
elevated surface to put things on, which now includes icecream vats.
- Ice cream vats' HTML no longer uses usr. Not player-facing, simple
find-replace. Probably doesn't qualify as code improvement.

Anyways, shoutout to ice cream vats' HTML still using usr. Not sure if
what I did to the put-in-hand code is too expensive or not, but it
should be fine.

## Why It's Good For The Game
It's probably a good thing for ice cream to not fall onto the floor and
become dirty upon being dispensed.
## Changelog

🆑
qol: Ice cream vats now count as elevated surfaces for preventing germs
from getting onto germ-sensitive items (food).
qol: Ice cream vats now dispense cones into your hands first, if
possible.
fix: Germ-sensitive items that fail to be placed in-hand now check for
all elevated surfaces, not just tables.
/🆑

---------

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

* Ice Cream Vat QoL: Elevated surface, placing in hands, not using usr

---------

Co-authored-by: Hatterhat <31829017+Hatterhat@users.noreply.github.com>
Co-authored-by: Hatterhat <Hatterhat@ users.noreply.github.com>
2023-07-24 01:53:30 -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
81a8bc4acc [MIRROR] The Leaning Update (and Density Refractor) [MDB IGNORE] (#22606)
* The Leaning Update (and Density Refractor)

* Merge conflicts

---------

Co-authored-by: itseasytosee <55666666+itseasytosee@users.noreply.github.com>
Co-authored-by: Giz <13398309+vinylspiders@users.noreply.github.com>
2023-07-22 22:39:10 -04:00
SkyratBot
08c90f2116 [MIRROR] [MDB IGNORE] Angled Lights & Lighting Prototyping Tool [MDB IGNORE] (#22582)
* [MDB IGNORE] Angled Lights & Lighting Prototyping Tool  (#74365)

## About The Pull Request

Hello friends, I've been on a bit of a lighting kick recently, and I
decided I clearly do not have enough things to work on as it is.
This pr adds angle support to static lights, and a concepting/debug tool
for playing with lights on a map.

Let's start from first principles yeah?

### Why Angled Lights?

Mappers, since they can't actually see a light's effect in editor, tend
to go off gut.
That gut is based more off what "makes sense" then how things actually
work
This means they'll overplace light sources, and also they tend to treat
lights, particularly light "bars" (the bigger ones) as directional.
So you'll have two lights on either sides of a pillar, lights inside a
room with lights outside pointing out, etc.

![image](https://user-images.githubusercontent.com/58055496/228785032-63b86120-ea4c-4e52-b4e8-40a4b61e5bbc.png)

This has annoying side effects. A lot of our map is overlit, to the
point that knocking out a light does.... pretty much nothing.
I find this sad, and would like to work to prevent it. I think dark and
dim, while it does not suit the normal game, is amazing for vibes, and I
want it to be easier to see that.

Angled lights bring how lights work more in line with how mappers expect
lights work, and avoids bleedover into rooms that shouldn't be bled
into, working towards that goal of mine.

### How Angled Lights?

This is more complex then you'd first think so we'll go step by step

![image](https://user-images.githubusercontent.com/58055496/228786117-d937b408-9bc2-4066-9aee-aae21b047151.png)

Oh before we start, some catchup from the last time I touched lighting
code.
Instead of doing a lighting falloff calculation for each lighting corner
(a block that represents the resolution of our lights) in view we
instead generate cached lightsheets. These precalculate and store all
possible falloffs for x and y distances from a source.

This is very useful for angle work, since it makes it almost totally
free.

Atoms get 2 new values. light_angle and light_dir
Light angle is the angle the light uses, and light_dir is a cardinal
direction it displays in

We take these values, and inside sheetbuilding do some optional angle
work. getting the center angle, the angle of a pair of coords, and then
the delta between them.
This is then multiplied against the standard falloff formula, and job
done.

We do need some extra fenangling to make this all work nicely tho.

We currently use a pixel turf var stored on the light source to do
distance calculations.
This is the turf we pretend the light source is on for visuals, most
often used to make wall lights work nice.
The trouble is it's not very granular, and doesn't always have the
effect you might want.

So, instead of generating and storing a pixel turf to do our distance
calculations against, we store x and y offset variables.
We use them to expand our working range and sheet size to ensure things
visually make sense, and then offset any positions by them.

I've added a way for sources to have opinions on their offsets too, and
am using them for wall lights.
This ensures the angle calculations don't make the wall behind a light
fulldark, which would be silly.

### Debug Tool?

In the interest of helping with that core problem, lights being complex
to display, I've added a prototyping tool to the game.
It's locked behind mapping verbs, and works about like this.

Once the verb is activated, it iterates over all the sources in the
world (except turfs because those are kinda silly), outlining and
"freezing" them, preventing any future changes.
Then, it adds 3 buttons to the owners of a light source.

![image](https://user-images.githubusercontent.com/58055496/228776539-4b1d82af-1244-4ed6-8754-7f07e3e47cda.png)
The first button toggles the light on and off, as desired.
The third allows you to move the source around, with a little targeting
icon replacing your mouse
The second tho, that's more interesting.

The second button opens a debug menu for that light

![image](https://user-images.githubusercontent.com/58055496/228777811-ae620588-f08a-4b50-93a0-beea593aea77.png)
There's a lot here, let's go through it.

Bit on the left is a list of templates, which allow you to sample
existing light types (No I have no idea why the background is fullwhite,
need to work on that pre merge)
You can choose one by clicking it, and hitting the upload button.

This replaces your existing lighting values with the template's,
alongside replacing its icon and icon state so it looks right.
There are three types as of now, mostly for categorization. Bar, which
are the larger typically stronger lights, Bulb, which are well, bulbs,
and Misc which could be expanded, but currently just contains floor
lights.

Alongside that you can manually edit the power, range, color and angle
of the focused light.
I also have support for changing the direction of the light source,
since anything that uses directional lighting would also tie light dir
to it.
This isn't *always* done tho, so I should maybe find a way to edit light
dir too.

My hope is this tool will allow for better concepting of a room's
lights, and easier changing of individual object's light values to suit
the right visuals.

### Lemon No Why What

Ok so I applied angle lights to bars and bulbs, which means I am
changing the lighting of pretty much every map in the codebase.
I'm gonna uh, go check my work.

Alongside this I intend to give lighting some depth. So if there's room
to make a space warmer, or highlight light colors from other sources, I
will do that.

(Images as examples)

![image](https://user-images.githubusercontent.com/58055496/228786801-111b6493-c040-4199-ab99-ac1c914d034c.png)

I also want to work on that other goal of mine, making breaking lights
matter. So I'll be doing what I can to ensure you only need to break one
light to make a meaningful change in the scene.

This is semi complicated by one light source not ever actually reaching
fullbright on its own, but we do what we must because we can.

![image](https://user-images.githubusercontent.com/58055496/228786483-b7ad6ecd-874f-4d90-b5ca-6ef78cb70d2b.png)

I'm as I hope you know biased towards darker spaces, I think contrast
has vibes.
In particular I do not think strong lights really suit maintenance.

Most of what is used there are bulbs, so I'm planning on replacing most
uses with low power bulbs, to keep light impacts to rooms, alongside
reducing the amount of lights placed in the main tunnels

![image](https://user-images.githubusercontent.com/58055496/228786594-c6d7610c-611e-478b-bcba-173ebf4c4b12.png)

**If you take issue with this methodology please do so NOW**, I don't
want to have to do another pass over things.
Oh also I'm saving station maps for last since ruins are less likely to
get touched in mapping march and all.

### Misc + Finishing Thoughts

Light templates support mirroring vars off typepaths using a subtype,
which means all the templates added here do not require updating if the
source type changes somehow. I'd like to expand the template list at
some point, perhaps in future.

I've opened this as a draft to make my intentions to make my changes to
lights known, and to serve as motivation for all the map changes I need
to do.

### Farish Future

I'm unhappy with how we currently configure lights. I would like a
system that more directly matches the idea of drawing falloff curves,
along with allowing for different falloffs for different colors,
alongside extending the idea to angle falloff.
This would make out of engine lighting easier, allow for nicer looking
lights (red to pink, blue to purple, etc), and improve accessibility by
artists.

This is slightly far off, because I have other obligations and it's
kinda complicated, but I'd like to mention it cause it's one of my many
pipedreams.

## Changelog
🆑
add: Added angle lighting, applies it to most wall lights!
add: Adds a lighting prototyping tool, mappers go try it out (it's
locked behind the mapping verb)
/🆑

---------

Co-authored-by: MMMiracles <lolaccount1@ hotmail.com>

* [MDB IGNORE] Angled Lights & Lighting Prototyping Tool

* Update north_star.dmm

* Revert "Update north_star.dmm"

This reverts commit bb5b8b5a549f7edc3e23a369a147ed96bab41991.

* Updatepaths

* Update nukie_base.dmm

* Newer version of northstar with the penguins

* Update northstar_cryo.dmm

---------

Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
Co-authored-by: MMMiracles <lolaccount1@ hotmail.com>
Co-authored-by: lessthanthree <83487515+lessthnthree@users.noreply.github.com>
Co-authored-by: Giz <13398309+vinylspiders@users.noreply.github.com>
2023-07-21 00:43:21 -04:00
SkyratBot
8f6dd1c466 [MIRROR] Adds in the smoothbore disablers. [MDB IGNORE] (#22528)
* Adds in the smoothbore disablers.

* Resolve merge conflicts + ammo HUD stuff

* No better way to do this than a skyrat edit since the proc sleeps

* Fixes a changed path

---------

Co-authored-by: CRITAWAKETS <sebastienracicot@hotmail.com>
Co-authored-by: Giz <13398309+vinylspiders@users.noreply.github.com>
2023-07-19 00:13:46 -04:00
SkyratBot
2d668fb9dc [MIRROR] Fixes ethereals' hair. Separates fixed hair color from the 'fixed_mut_color' var [MDB IGNORE] (#22573)
* Fixes ethereals' hair. Separates fixed hair color from the 'fixed_mut_color' var (#76930)

The series of "species nuking" prs made it so that the `fixed_mut_color`
also applies to hair. The problem with that is you may not want that in
some cases. It also introduced a bug where that var prevents ethereals'
hair from changing colors when they die.

So I have moved hair out of the things that gets `FIXED_MUT_COLOR` trait
applied to it in favor of its own thing.

`FIXED_HAIR_COLOR` trait is now used for ethereals to get a fixed hair
color.

Ethereals' hair should go out now when they die again, and it comes back on when they are revived.

* Fixes ethereals' hair. Separates fixed hair color from the 'fixed_mut_color' var

---------

Co-authored-by: Bloop <13398309+vinylspiders@users.noreply.github.com>
2023-07-18 19:18:06 -04:00
SkyratBot
cac04b48c4 [MIRROR] Creates an ambience global list for icebox and adds 10 new tracks to the exterior! (THANK YOU JOHN WILLARD!) [MDB IGNORE] (#22569)
* Creates an ambience global list for icebox and adds 10 new tracks to the exterior! (THANK YOU JOHN WILLARD!) (#76905)

## About The Pull Request

Creates an ambience global list for icebox and adds ten new tracks to
the exterior. Among the tracks are 5 instrumental stings, 4 microsong
melodies, and 1 thematic song.

HUGE thanks to John Willard for managing the coding aspect of this. All
the music is my creation, but without him, it'd just be sitting on my
hard drive. Love the guy.

## Why It's Good For The Game

Differentiates lavaland and icebox stylistically in their tones, key,
and musical instrumentation. Makes the world feel more alive!
If you want to add more ambient tracks for the zone, all of the tracks
come in the following keys:
G# HARMONIC MINOR
G# NATURAL MINOR
Db NATURAL MINOR

## Changelog

🆑
add: Ambient tracks for icebox.
add: Independent global_list for icebox.
/🆑

---------

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

* Creates an ambience global list for icebox and adds 10 new tracks to the exterior! (THANK YOU JOHN WILLARD!)

---------

Co-authored-by: RICK IM RI <77305289+tommysalami3@users.noreply.github.com>
Co-authored-by: JohnFulpWillard <53777086+JohnFulpWillard@ users.noreply.github.com>
2023-07-18 18:39:41 -04:00
GoldenAlpharex
e5f29e7999 [MIRROR] SPECIES NUKING 2023 EXTRA: Makes skin tones a trait instead of a species variable [MDB IGNORE] (#22571)
* SPECIES NUKING 2023 EXTRA: Makes skin tones a trait instead of a species variable (#76410)

very similar to https://github.com/tgstation/tgstation/pull/76297, much
simpler though
removes the uses_skintones variable for similar reasons

Species variables are less useful and modular than traits.
If for some reason we ever add a mechanic that for some reason makes
your character use skin tones instead of whatever their original color
is, it will be much simpler to be handled.

not player facing

* Fixes all of the remaining issues

---------

Co-authored-by: ChungusGamer666 <82850673+ChungusGamer666@users.noreply.github.com>
2023-07-18 18:38:59 -04:00
SkyratBot
49f61b14a9 [MIRROR] make the pinguen a basic animal [MDB IGNORE] (#22568)
* makes the pinguin a basic animal (#76790)

## About The Pull Request
the penguin now is a basic animal and also now he can go and layed
penguin eggs to make penguin babys also the baby have a new behavier he
will now go and looked for his mom and when he found his mom he will
went to her and be happy when he close to his mom or if he mom is died
he will went to her body and he will be sad and also i putted this
behavier in the baby chicken. also now the pinguen mom will go and
looked for her eggs and when she find a egg she will putted it in the
middile of her legs and walked with it
![penguin with a
eggs](https://github.com/tgstation/tgstation/assets/138636438/e5f3d741-edc0-438f-b1b3-9e4ed2280532)

## Why It's Good For The Game
the pinguen now is a advance ai
## Changelog
the pinguen now have a more advance

🆑
refactor: the penguin is a basic animal
add: the penguin now layed eggs
add: the penguin and the chicken babys will go look for adult penguin or
chicken and be happy when he is near the adult
/🆑

* make the pinguen a basic animal

---------

Co-authored-by: Ben10Omintrix <138636438+Ben10Omintrix@users.noreply.github.com>
2023-07-18 17:00:04 -04:00
SkyratBot
9d449629db [MIRROR] Ethereal Pirates (Re-pr) [MDB IGNORE] (#22298)
* Ethereal Pirates (Re-pr) (#76554)

Other pr had some weird check failure, making a new pr to see if it
fixes it.

## About The Pull Request
After he ended up finishing his pirate pr before I could, SethLafuente
graciously offered to let me roll my in-progress pirate pr into his
overall pirate expansion project.

This pr essentially adds a new faction of pirates, along with a new
subspecies of Ethereals a-la silverscales.

- The Lustrous:

A unique subspecies of Ethereal, with years of exposure to bluespace
dust mutating them into crystalline abominations sporting a new pointy
head, pressure resistance, and a permanent bluespace prophet brain
trauma. They're still as fragile as ever, but far more capable of
getting in and out of sticky situations.

- Geode Pirates:

A hollowed out asteroid manned by three Lustrous, equipped with
switchblades, traitor PKAs, jump boots, two teleporting turrets, and an
upgradable bluespace launchpad.

However, they lack proper armor and ship defenses, forcing them to adopt
a coordinated hit-and-run playstyle.

![asteroid](https://github.com/tgstation/tgstation/assets/63932673/1ab420fd-4bf3-4a54-94be-fde73cf66edf)

![shuttle](https://github.com/tgstation/tgstation/assets/63932673/00574b29-54be-4efb-b6d6-0085c3bc5cfb)

![piratas](https://github.com/tgstation/tgstation/assets/63932673/d1586a30-a1e5-42e0-b16b-9793db1340ad)
## Why It's Good For The Game

When I started working on this project, I wanted to implement this
faction to cover for the loss of psykers and as a means of creating a
"rock-paper-scissors" system to how standard pirate playstyles would
work; with default pirates being offensive, Silverscales defensive, and
Lustrous mobile.

With Seth's pr, things are a little different now, but I still believe a
glass cannon mobility-focused pirate faction would be a welcome addition
to the pirate roster.
## Changelog
🆑
add: Adds the Lustrous, ethereal pirates in a big bluespace geode!
sound: Unique scream sound for the Lustrous species.
image: Unique head icon for the Lustrous species.
/🆑

---------

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

* Ethereal Pirates (Re-pr)

* Fixes some merge whackiness

---------

Co-authored-by: Toastgoats <63932673+Toastgoats@users.noreply.github.com>
Co-authored-by: MrMelbert <51863163+MrMelbert@ users.noreply.github.com>
Co-authored-by: Jacquerel <hnevard@ gmail.com>
Co-authored-by: Giz <vinylspiders@gmail.com>
2023-07-16 23:06:18 -04:00
SkyratBot
5950d1b15d [MIRROR] You can opt out of heretic rolls for the rest of the round [MDB IGNORE] (#22505)
* You can opt out of heretic rolls for the rest of the round

* Update poll_ignore.dm

---------

Co-authored-by: necromanceranne <40847847+necromanceranne@users.noreply.github.com>
Co-authored-by: Bloop <vinylspiders@gmail.com>
2023-07-16 23:05:41 -04:00
GoldenAlpharex
4aec91cc06 [MANUAL MIRROR] Fixes carbon bodytypes not always being synchronized with bodyparts + Fixes dumb usage of TRAIT_LIVERLESS_METABOLISM i caused [MDB IGNORE] (#22519)
* Fixes carbon bodytypes not always being synchronized with bodyparts (#76522)

Fixes https://github.com/tgstation/tgstation/issues/76481
TLDR /mob/living/carbon/human/species subtypes were NOT updating their
bodytypes on spawn due to absurd and wacky carbon bodypart creation code
that meant try_attach_limb() never got called (What the FUCK?)

* Fixes CI too

* [NO GBP] Fixes dumb usage of TRAIT_LIVERLESS_METABOLISM i caused (#76500)

## About The Pull Request

TRAIT_LIVERLESS_METABOLISM should do what it implies, and make you
always metabolize as if you were liverless.
This was a stupid mistake on my part because I wasn't aware
TRAIT_STABLELIVER was a thing.

## Why It's Good For The Game

TRAIT_LIVERLESS_METABOLISM and TRAIT_STABLELIVER should not behave the
exact same.

## Changelog

Not quite player facing.

* I fucking swear I fixed this before

---------

Co-authored-by: ChungusGamer666 <82850673+ChungusGamer666@users.noreply.github.com>
2023-07-16 20:33:33 -04:00
SkyratBot
0a03e8a2a7 [MIRROR] Machine list is now stored in SSmachines | Remove excessive use of global lists for specific machine types [MDB IGNORE] (#22481)
* Machine list is now stored in SSmachines | Remove excessive use of global lists for specific machine types

* Resolve merge conflicts

* Modular adjustments

* destroy this double return on destroy

---------

Co-authored-by: Zephyr <12817816+ZephyrTFA@users.noreply.github.com>
Co-authored-by: Giz <vinylspiders@gmail.com>
2023-07-15 22:51:23 -04:00
SkyratBot
6b69b10361 [MIRROR] Bots no longer require PAIs to become sapient [MDB IGNORE] (#22361)
* Bots no longer require PAIs to become sapient

* Fixes merge conflicts

---------

Co-authored-by: Jacquerel <hnevard@gmail.com>
Co-authored-by: Pinta <68373373+softcerv@users.noreply.github.com>
Co-authored-by: Giz <vinylspiders@gmail.com>
2023-07-15 20:17:22 -04:00
Bloop
a6dc498a14 [MISSED MIRROR] Alcoholic quirk (#76510) (#22464)
Alcoholic quirk (#76510)

So you're telling me we have a smoker quirk and we DON'T have an
alcoholic quirk?
What a travesty! Time to fix that.

This quirk is essentially equivalent to smoker, but instead of a
favorite brand you get a favorite *brandy* (as in, favorite type of
booze).

![image](https://github.com/tgstation/tgstation/assets/82850673/f3883f76-414a-48a8-8f69-76f1bc01d020)

More quirk variety with decent roleplay value.
What will we do with a drunken sailor?

🆑
add: Added Alcoholic as a negative quirk.
/🆑

---------

Co-authored-by: ChungusGamer666 <82850673+ChungusGamer666@users.noreply.github.com>
Co-authored-by: san7890 <the@san7890.com>
2023-07-15 19:27:24 -04:00
Zergspower
bb3d041572 [Manual Mirror Fix] Removes shitty "status" variable on organs, makes them use organ_flag (#22480)
* Removes shitty "status" variable on organs, makes them use organ_flags instead (#76350)

Title.

Seriously this shit pisses me off, why are ORGAN_SYNTHETIC and
ORGAN_ROBOTIC two different things?

not applicable unless i fucked up

---------

Co-authored-by: Time-Green <7501474+Time-Green@users.noreply.github.com>

* Modulars

* Some merge skew

* More diffs

---------

Co-authored-by: ChungusGamer666 <82850673+ChungusGamer666@users.noreply.github.com>
Co-authored-by: Time-Green <7501474+Time-Green@users.noreply.github.com>
Co-authored-by: Giz <vinylspiders@gmail.com>
2023-07-15 17:27:49 -04:00
GoldenAlpharex
7a827df807 [MIRROR] SPECIES NUKING 2023: Nukes species_traits, good night sweet prince [MDB IGNORE] (#22458)
* SPECIES NUKING 2023: Nukes species_traits, good night sweet prince (#76297)

IT'S OVER.

Species traits are a relic of a time before the trait system was added
to generalize this kind of behavior.
They are clunky and overall less useful than inherent_traits -
Converting these makes it easier to make these behaviors modular and
usable not only by species.

🆑
refactor: A significant species refactor happened, report any issues on
the github.
/🆑

---------

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

* Makes it all work

* Fix widespread vampirism (#76414)

## About The Pull Request

Removing code you think is not necessary but is actually is always a
recipe for disaster (#76297)


![image](https://github.com/tgstation/tgstation/assets/51863163/8ea9fdcc-2f95-47d4-a00f-cc8ebeb319f9)

## Changelog

🆑 Melbert
fix: Fix everyone being vampires
/🆑

* Whoops, missed one!

---------

Co-authored-by: ChungusGamer666 <82850673+ChungusGamer666@users.noreply.github.com>
Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
2023-07-14 21:38:54 -04:00
SkyratBot
b6f130d011 [MIRROR] SPECIES NUKING 2023: Makes tongues handle liked/disliked food instead of species datum [MDB IGNORE] (#22066)
* SPECIES NUKING 2023: Makes tongues handle liked/disliked food instead of species datum

* Fixes all of the left-over issues

* https://github.com/Skyrat-SS13/Skyrat-tg/pull/22137

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

* Applies https://github.com/Skyrat-SS13/Skyrat-tg/pull/22251

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

---------

Co-authored-by: ChungusGamer666 <82850673+ChungusGamer666@users.noreply.github.com>
Co-authored-by: GoldenAlpharex <jerego1234@hotmail.com>
2023-07-14 16:54:10 -04:00
SkyratBot
e3cd27ab6d [MIRROR] The Laser Musket (2023) (Settlement Helper Edition) [MDB IGNORE] (#22156)
* The Laser Musket (2023) (Settlement Helper Edition) (#76231)

## About The Pull Request
This adds a craftable laser musket to the game. It's slow and unwieldy,
but consistent! I'd be happy to tweak the numbers if it's too good/bad.

This PR also adds an independent militia ERT, who travels the spinward
sector to help defend stations!

TO DO LIST:

- [x] Finish worn sprites
- [x] Add a crafting recipe on par with the pipegun
- [x] Add bayonets
- [x] Separate charging into two stages and REDO THE AUDIO AAAA
- [x] Clean up code (Needs review, totally)

Scrapped:

- Possibly add overcharge mechanic (This is just beyond my skill level
for now)
- Find a unique sound for the weapon firing (We have a unique
projectile, and I can't a sound that fits more than the laser gun one)

![image](https://github.com/tgstation/tgstation/assets/73589390/40ee8f1d-5c1f-4638-af70-ff1215b85c9e)

![1211
(1)](https://github.com/tgstation/tgstation/assets/73589390/1a4b9856-a878-4500-96ce-4fd83587fa81)

![musket (2) (2)
(2)](https://github.com/tgstation/tgstation/assets/73589390/2ebdc2ed-6f78-4761-9deb-a1b2d337a02d)

![aaaa1
(1)](https://github.com/tgstation/tgstation/assets/73589390/6076edd3-97c9-41ec-a67a-90717f97eab0)

![image](https://github.com/tgstation/tgstation/assets/73589390/c47e44bd-3f4b-44b3-aaa5-9b1c25a72cad)

Inhands by RedSentry27
Suit sprite by Kinnebian
Prime Laser Musket sprites by RedSentry27

Balance Considerations (ew):
25 damage (30 on prime)
Normal wound
40 Stamina damage (45 on prime)
Weak to armour (prime not weak to armor)
2 second charge time, needs to be charged twice
No overcharge
Requires two hands to hold (like a chainsaw)

Crafting Recipe:
One rifle stock
Fifteen Cable Coils
Four Iron Rods
One micro laser
One capacitor
One pair of prescription glasses
One drinking glass
Craft for 10 seconds with a wirecutter and screwdriver

Prime crafting recipe: (REQUIRES READING MAINTENANCE LOOT: "journal of a
space ranger")
One laser musket
Fifteen cable coils
Five silver
One water recycler
Fifteen units of nuka cola
Craft for 30 seconds with a screwdriver while wearing cowboy boots and a
cowboy hat
## Why It's Good For The Game
The idea of assistants and revs forming firing lines in the halls to
shoot eachother sounds hilarious. Besides, we need a parallel to the
pipegun, and this is the funniest way to do so.
## Changelog
🆑 Cheshify, Kinnebian, and RedSentry27
add: Maintenance engineers have sent out blueprints across the sector
for a new laser musket.
admin: A new energy-gun toting ERT is available to send to the crew.

---------

Co-authored-by: carlarctg <53100513+carlarctg@ users.noreply.github.com>

* The Laser Musket (2023) (Settlement Helper Edition)

* Update guns.dm

* Update guns.dm

* Fixes vox/teshari greyscale config paths

---------

Co-authored-by: Cheshify <73589390+Cheshify@users.noreply.github.com>
Co-authored-by: carlarctg <53100513+carlarctg@ users.noreply.github.com>
Co-authored-by: Pinta <68373373+softcerv@users.noreply.github.com>
Co-authored-by: Bloop <vinylspiders@gmail.com>
2023-07-14 15:21:42 -04:00
Bloop
4537b1e980 [MISSED MIRROR] New space ambient track (#76547) (#22449)
New space ambient track (#76547)

## About The Pull Request

Adds a new space ambient track made by me to the game, supposed to be a
bit scarier than the others that were recently added as I feel that
they're a bit too happy (not to diss I really like them), also cleaned
up a bit of ambience.dm as the medical portion of it didn't follow the
same rules as the other ones. also also this will only be used for
tgstation so license wise I think this is CC BY-SA 3.0 but I'm not sure
so correct me if I'm wrong, also this is my first PR so yeah. Here's a
link to listen to the track https://voca.ro/18WvrGORDDdR

## Why It's Good For The Game

Variety is the spice of life.

## Changelog

🆑
sound: A new ambient track will now play in space
/🆑

Co-authored-by: atlasle <132299254+atlasle@users.noreply.github.com>
2023-07-14 13:11:28 -04:00
SkyratBot
ae36263265 [MIRROR] Bilingual can now choose their language [MDB IGNORE] (#22296)
* Bilingual can now choose their language

* Fix a merge error, removes a skyrat edit in favor of modular override

* uh what

* Moves the setup of GLOB.all_languages back into the subsystem + makes it load before SSAssets

---------

Co-authored-by: John Willard <53777086+JohnFulpWillard@users.noreply.github.com>
Co-authored-by: Giz <vinylspiders@gmail.com>
2023-07-13 14:26:00 -04:00
SkyratBot
a91fa63b08 [MIRROR] Plasmaman Clown's clothes is now swabable. [MDB IGNORE] (#22415)
* Plasmaman Clown's clothes is now swabable. (#76758)

## About The Pull Request
Added swabable component to plasmaclown's cloth so you can get clown
microbes from it. Copypasted all parameters so its discussable.
Also added plasmaclown's helmet and gloves to the list of phobia. It
already has envirosuit so why wouldn't it have helmet and gloves?
## Why It's Good For The Game
More clownsteins.
## Changelog
🆑
add: You can now swab plasmaman clown clothes to get clown microbes.
add: Clown phobia makes you fear plasmaman clown's gloves and helmet.
/🆑

* Plasmaman Clown's clothes is now swabable.

---------

Co-authored-by: Helg2 <93882977+Helg2@users.noreply.github.com>
2023-07-12 21:32:55 -04:00
SkyratBot
e5db7ba5bb [MIRROR] Fixes few phobias not being scared of mobs. [MDB IGNORE] (#22335)
* Fixes few phobias not being scared of mobs. (#76659)

## About The Pull Request
Closes https://github.com/tgstation/tgstation/issues/76645
## Why It's Good For The Game
More reasons to ghost
## Changelog
🆑
fix: snakes, security, spiders and skeletons phobias now properly react
on mobs
/🆑

* Fixes few phobias not being scared of mobs.

---------

Co-authored-by: Helg2 <93882977+Helg2@users.noreply.github.com>
2023-07-12 02:09:18 -04:00
SkyratBot
15dee9b93f [MIRROR] Destroying the greentext item properly restores players' colors [MDB IGNORE] (#22359)
* Destroying the greentext item properly restores players' colors (#76642)

## About The Pull Request
Title. Colors appear to always be stored in lowercase, so the check
against uppercase text was missing it. Also changed the added colors to
lowercase for consistency.
Though comparing colors like this in the first place feels a bit hacky,
so I'm open to other suggestions
## Why It's Good For The Game
Fix bugs!
## Changelog
🆑
fix: Destroying the fabled "green text" now properly releases its
victims from their curse.
/🆑

* Destroying the greentext item properly restores players' colors

---------

Co-authored-by: FlufflesTheDog <piecopresident@gmail.com>
2023-07-11 12:56:41 -05:00
SkyratBot
ab4cc06c55 [MIRROR] Coroner Update: Pickle-Eating Morbid Weirdo Obsessed with Death and Perfectionism [MDB IGNORE] (#22155)
* Coroner Update: Pickle-Eating Morbid Weirdo Obsessed with Death and Perfectionism

* skyrat edits

---------

Co-authored-by: necromanceranne <40847847+necromanceranne@users.noreply.github.com>
Co-authored-by: lessthanthree <83487515+lessthnthree@users.noreply.github.com>
2023-07-09 12:05:05 -07:00
SkyratBot
7a504490f0 [MIRROR] SPECIES NUKING 2023: Refactors a bunch of species traits into flags for the head bodypart [MDB IGNORE] (#21991)
* SPECIES NUKING 2023: Refactors a bunch of species traits into flags for the head bodypart

* Makes it all compile, for now

* Fixes eye emissives not working right.

* Fixes the plasmaman head (oof conflicts)

* Fixes the screenshot tests

---------

Co-authored-by: ChungusGamer666 <82850673+ChungusGamer666@users.noreply.github.com>
Co-authored-by: GoldenAlpharex <jerego1234@hotmail.com>
2023-07-08 15:25:17 -04:00
SkyratBot
02e36ec18e [MIRROR] Expanding the Experimental MODsuit Bepis Node with three new modules. [MDB IGNORE] (#21851)
* Expanding the Experimental MODsuit Bepis Node with three new modules. (#75801)

## About The Pull Request
So, I've had this idea to make a contribution to the Bepis feature with
some modsuit stuff. The gimmicky stuff is ok and a good way to even out
the better content since it has game of chance design it has (you can
find those disks in space anyway so...). However, the Experimental
MODsuit node feels very underwhelming right now, compared to how big
that feature is.

This PR adds three MOD modules to the Experimental MODsuit node, plus
two more:
- Magneto Charger: While the Modsuit is activated, each step the user
takes will charge the installed power cell by a tiny bit, enough to
sustain a standard modsuit of generic slow speed with only a few, easy
modules installed. It won't work in zero G, while flying, pulled by
someone else, on a conveyor belt, riding a vehicle or crawling on the
floor, though.
- Recycler: It collects (most) garbage and casings off the ground and
recycles them into material sheets that can be dispensed on an adjacent
location or storage with with Middle Mouse Button. Doesn't clean debris,
and scuffed because most trash doesn't yield material anyway.
- - It also has two subtypes, unbound from the node: one that dispenses
riot foam darts and can be found on the black market, and another that
dispenses the more innocuous foam darts, rarely found in maints.
- Shooting Assistant: A configurable module. On Stormtrooper mode, it
will give the user a faster fire rate (the double tap trait) at the cost
of accuracy. On Sharpshooter mode, it will improve the user accuracy and
make their shots ricochet against walls at least once (if the hit atom
allows that, that is, e.g. lasers don't ricochet against iron walls), at
the cost of movement speed. Both modes also prevent the user from dual
wielding guns.

To make the Stormtrooper mode stackable with the poor aim quirk and
refrain from making a new trait for the sharpshooter mode, the gun
spread code in gun.dm has also received a little refactor and cleanup.
Also, it's been tested.

## Why It's Good For The Game
The Experimental MODsuit node is quite shabby and could use something
extra to make it more appealing to MODsuit enjoyers.

Also doubles down as a small addition to the black market and maint
loot, and code cleanup, since gun code gives off some garbled vibes.

## Changelog

🆑
add: Expanded the Experimental MODsuit Bepis node with three new
modules: Magneto Charger, Recycler and Shooting Assistant.
add: Added a Riot Foam Recycler module to the black market, as well a
more innocuous version as maint loot.
/🆑

* Expanding the Experimental MODsuit Bepis Node with three new modules.

* update modular, I hate this file btw

---------

Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
Co-authored-by: Tom <8881105+tf-4@users.noreply.github.com>
2023-07-01 14:21:47 -04: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
SkyratBot
999afaef4d [MIRROR] Add a new ambient track to space [MDB IGNORE] (#22078)
* Add a new ambient track to space (#76320)

## About The Pull Request
Adds in a new ambient track for space exploration! The track is
hand-produced by myself, designed to evoke a more ethereal feel from the
listener.
The filename is intentionally not the track's actual name, an attempt to
somewhat standardize sound file names so we know their use-case without
digging for the filename in code. The original track name and author is
also intentionally embedded in the metadata, in an attempt to ensure the
history of sounds is able to be documented.

At the request of comments, [here's a link to listen to the track
without downloading.](https://voca.ro/1c5Mjlu1N5iz)
## Why It's Good For The Game
A new ambient track never hurt nobody! Really though, it helps to break
up the monotony of having five tracks for space exploration, even if it
is just a short clip of something new. Hearing title3.ogg for the
fifteenth time gets a little old, honestly.
## Changelog
🆑
sound: One (1) new space ambience track has been added. Good luck and
godspeed.
/🆑

Co-authored-by: Gear <gear@ gear.is>

* Add a new ambient track to space

---------

Co-authored-by: Gear <9438930+the-og-gear@users.noreply.github.com>
Co-authored-by: Gear <gear@ gear.is>
2023-06-27 20:44:49 -07:00
SkyratBot
27ef64f290 [MIRROR] Add UI preference menus for AI hologram and status displays [MDB IGNORE] (#22007)
* Add UI preference menus for AI hologram and status displays (#75740)

This adds two new dropdown menus for AI preferences with holograms and
status displays. It also sets these preferences if admins transform a
player into an AI.

* Add UI preference menus for AI hologram and status displays

---------

Co-authored-by: Tim <timothymtorres@gmail.com>
2023-06-23 14:37:52 +02:00
SkyratBot
76e3348760 [MIRROR] Replaces the Reaper Scythe with the Vorpal Scythe (also the Morbid trait) [MDB IGNORE] (#21958)
* Replaces the Reaper Scythe with the Vorpal Scythe (also the Morbid trait)

* fix

---------

Co-authored-by: necromanceranne <40847847+necromanceranne@users.noreply.github.com>
Co-authored-by: ghost sheep <sheepwiththemask@gmail.com>
2023-06-22 20:21:36 +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
7537ed425e [MIRROR] Assistants get a liver trait + Officer's sabre banes against them [MDB IGNORE] (#21763)
* Assistants get a liver trait + Officer's sabre banes against them (#75933)

## About The Pull Request

Assistants get a new liver trait, maintenance metabolism. This trait
only lets them process maintenance drugs, grey bull, and pump-up for 20%
more time and gives them a probably-positive 2 minute moodlet when
ingesting these.

The officer's sabre has gained a small amount of bloodthrist for
assistants!

Fixed liver masters being unable to inspect the liver of scientists.

## Why It's Good For The Game

> Assistants get a new liver trait, maintenance metabolism. This trait
only lets them process maintenance drugs, grey bull, and pump-up for 20%
more time and gives them a probably-positive 2 minute moodlet when
ingesting these.

This trait is pretty much entirely here for the actual
liver-identification of assistants the sabre uses, though I didn't want
to just add an empty trait so I gave it the above effects as pretty damn
harmless effects. I'm sure the maints will dislike even this so I'm open
to anything.

> The officer's sabre has gained a small amount of bloodthirst for
assistants! Or at least their livers.

I find the concept of the sabre having a bane against assistants
amusing, and it wouldn't hurt to give them something that may help
against tiders. As a smidgen of fairness, the detection is tied to the
liver - if they want to take less damage they can have it replaced,
though the captain can also help with that by disemboweling organs. The
liver being used for something that isn't reagents processing might be a
bit controversial, but like I said, I'd rather have that than have it
permanently, intrinsically tied to a job.

> Fixed liver masters being unable to inspect the liver of scientists.

Ballmer metabolism quacks like a duck, traits like a duck, and thus
should be able to be duck inspected by the duck master, since there is
no practical difference between it and other 'official' metabolisms.

## Changelog

🆑
add: Assistants get a new liver trait, maintenance metabolism. This
trait only lets them process maintenance drugs, grey bull, and pump-up
for 20% more time and gives them a probably-positive 2 minute moodlet
when ingesting these.
add: The officer's sabre has gained a small amount of bloodthrist for
assistants!
fix: Fixed liver masters being unable to inspect the liver of
scientists.
/🆑

---------

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

* Assistants get a liver trait + Officer's sabre banes against them

---------

Co-authored-by: carlarctg <53100513+carlarctg@users.noreply.github.com>
Co-authored-by: san7890 <the@ san7890.com>
2023-06-10 19:43:38 -07:00
SkyratBot
5ad990e2bc [MIRROR] Yeets a duplicate ambience .ogg [MDB IGNORE] (#21734)
* Yeets a duplicate ambience .ogg (#75909)

## About The Pull Request
Removed `ambigen2.ogg` and renamed all the generic ambience sounds after
`ambigen1.ogg` to account the fact we have one less generic ambience
sound file now.

## Why It's Good For The Game
This will close #75010

## Changelog
N/A, it wasn't even used in the code.

* Yeets a duplicate ambience .ogg

---------

Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
2023-06-10 10:56:26 -04:00
SkyratBot
19d04376e6 [MIRROR] Refactors chicks into basic mobs [MDB IGNORE] (#21602)
* Refactors chicks into basic mobs (#75663)

## About The Pull Request

On the tin. They have pretty much nothing in common with chickens, so no
subtyping. They are in the same folder to keep that whole thing tidy,
though.

Also includes fixes to `growth_and_differentiation` element that I made
for spiderlings, since some stuff was yorked without me realizing. It
pretty much worked flawlessly for these chicks otherwise though. It all
works fine now.
## Why It's Good For The Game

More verbose naming scheme (instead of "holo", we get "permanent"
chicks), smarter AI for chicks, knocks them off the list, etc. etc.

One thing that I wanted to do was to have chicks recognize their mother
(if they had one), but that would be way out of scope for this simple
port PR. I'll dwell on adding something cool for that in the future.
## Changelog
🆑
refactor: Chicks are now a bit smarter, be careful not to squish them!
/🆑

Let me know if the whole "COMPONENT_KILL" thing is cringe, I couldn't
figure out a better way to do it without abusing `GetComponent()` to
`qdel()` it that way.

* Refactors chicks into basic mobs

* fix

---------

Co-authored-by: san7890 <the@san7890.com>
Co-authored-by: ghost sheep <sheepwiththemask@gmail.com>
2023-06-07 13:58:53 +00:00
SkyratBot
524bbc8090 [MIRROR] Add glasses and icons to preference menu for nearsighted [MDB IGNORE] (#21563)
* Add glasses and icons to preference menu for nearsighted

* fix

* forgot modular edit

---------

Co-authored-by: Tim <timothymtorres@gmail.com>
Co-authored-by: ghost sheep <sheepwiththemask@gmail.com>
2023-06-07 12:56:57 +00:00
SkyratBot
3f2ac436de [MIRROR] Spess army knife [MDB IGNORE] (#21520)
* Spess army knife

* Mirror!

---------

Co-authored-by: Andrew <mt.forspam@gmail.com>
Co-authored-by: Funce <funce.973@gmail.com>
2023-06-01 16:25:23 -07:00
SkyratBot
59569cbc44 [MIRROR] Abductors can now use batons in general. (not just their specialized baton) [MDB IGNORE] (#21564)
* Abductors can now use batons in general. (not just their specialized baton) (#75561)

## About The Pull Request
Abductors can now use any baton instead of just their special baton.
## Why It's Good For The Game
Abductors are a bit fucked if they lose their baton and are unable to
buy one from their shop. Sure they can just use flashes or maint-fu but
those methods are hard and or unreliable. (if they manage to lose their
baton, they probably aren't that robust anyways). This PR gives more
leeway if you fuck up as an abductor.
## Changelog
🆑
balance: The mothership which abductors came from has worked very hard
to train their field agents how to use batons from their specimen's
habitat
/🆑

---------

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

* Abductors can now use batons in general. (not just their specialized baton)

---------

Co-authored-by: Singul0 <127663818+Singul0@users.noreply.github.com>
Co-authored-by: san7890 <the@ san7890.com>
2023-05-31 17:56:27 -04:00
SkyratBot
d52445f5df [MIRROR] Turns Chickens into Basic Mobs [MDB IGNORE] (#21414)
* Turns Chickens into Basic Mobs (#75592)

* Turns Chickens into Basic Mobs

* modular

* Update VoidRaptor.dmm

---------

Co-authored-by: san7890 <the@san7890.com>
Co-authored-by: Tom <8881105+tf-4@users.noreply.github.com>
Co-authored-by: lessthanthree <83487515+lessthnthree@users.noreply.github.com>
Co-authored-by: Jolly-66 <70232195+Jolly-66@users.noreply.github.com>
2023-05-28 23:42:43 +00:00
SkyratBot
649c250702 [MIRROR] JSON Logging Take Two [MDB IGNORE] (#21329)
* JSON Logging Take Two

* Fixes the conflicts and makes our logs all comply with the new logging framework, hopefully.

---------

Co-authored-by: Zephyr <12817816+ZephyrTFA@users.noreply.github.com>
Co-authored-by: GoldenAlpharex <jerego1234@hotmail.com>
2023-05-28 18:10:07 -04:00
SkyratBot
86092e0f55 [MIRROR] Removes obsolete obj_flags flag [MDB IGNORE] (#21418)
* Removes obsolete obj_flags flag (#75356)

This flag is literally only used in two objects in the game and
seemingly does nothing

* Removes obsolete obj_flags flag

---------

Co-authored-by: ChungusGamer666 <82850673+ChungusGamer666@users.noreply.github.com>
2023-05-25 23:12:12 +01:00
SkyratBot
98cbe7bc1c [MIRROR] Converts butterflies to basic mobs and adds them to cytology [MDB IGNORE] (#21355)
* Converts butterflies to basic mobs and adds them to cytology (#75582)

## About The Pull Request

Converts butterflies into basic mobs.
Also a little list organisation.

<details>
<summary>Yep, those are some butterflies alright</summary>

![image](https://github.com/Skyrat-SS13/Skyrat-tg/assets/8881105/d9e3a14e-e0a5-4275-b440-af0a56e7b8fe)

</details>

## Changelog
🆑
refactor: Converted butterflies to the basic mob system
add: Butterflies can now be grown in cytology
/🆑

* Converts butterflies to basic mobs and adds them to cytology

* updatepaths

---------

Co-authored-by: Tom <8881105+tf-4@users.noreply.github.com>
Co-authored-by: Jolly-66 <70232195+Jolly-66@users.noreply.github.com>
2023-05-23 16:36:53 +00:00
SkyratBot
29cf77f8b8 [MIRROR] Converts Lizards to Basic Mobs [MDB IGNORE] (#21291)
* Converts Lizards to Basic Mobs (#75515)

This was pretty simple since they didn't have too much custom behavior,
and whatever they did have already had AI behavior. I got really burned
out the last two times I wrote intricate AI action/decision behaviors so
I'm just taking it light and doing the bare minimum.

one day our shackles will be free of the simple animal scourge. they're
also a bit more intelligent, and i daresay a bit cuter too now.

also that lizard gib animation has been sitting there for god knows how
long completely unseen, so let's actually hook it into the mob.

* Converts Lizards to Basic Mobs

* update modular

* TEGU

* me when I update  Maps

---------

Co-authored-by: san7890 <the@san7890.com>
Co-authored-by: Tom <8881105+tf-4@users.noreply.github.com>
Co-authored-by: lessthanthree <83487515+lessthnthree@users.noreply.github.com>
2023-05-21 20:32:43 +01:00
SkyratBot
acd25a0934 [MIRROR] Adds a blacklist for putting guns in turrets [MDB IGNORE] (#21286)
* Adds a blacklist for putting guns in turrets

* Update code/game/machinery/porta_turret/portable_turret_construct.dm

Co-authored-by: Pinta <68373373+softcerv@users.noreply.github.com>

---------

Co-authored-by: Thunder12345 <Thunder12345@users.noreply.github.com>
Co-authored-by: Tom <8881105+tf-4@users.noreply.github.com>
Co-authored-by: Pinta <68373373+softcerv@users.noreply.github.com>
2023-05-20 21:47:51 +00:00
SkyratBot
9f3909a809 [MIRROR] Blobs and Kudzu are killed by chasms. [MDB IGNORE] (#21252)
* Blobs and Kudzu are killed by chasms. (#75469)

## About The Pull Request

Fixes #75451
Originally I just whitelisted them because they're structures that are
supported by their surroundings... but there's still the theoretical
scenario where it has expanded over a reasonably large chasm and then
becomes almost impossible to remove because you can't easily get at the
ones in the middle, and it would be "levitating" after you cut off
everything around the edge.

So instead this adds a trait which restores the original behaviour of
chasms where they delete stuff which falls into them and applies it to
Blobs and Kudzu.

## Why It's Good For The Game

It's a very niche scenario but "expanding structure falls into abstract
chasm storage" causes issues where it potentially keeps processing in
there and there isn't much you can do about it.
Maybe there's other stuff that commonly falls into chasms we'll decide
that we want to delete instead of keeping in pools now that you can just
slap a trait onto something to do it, future consideration.

## Changelog

🆑
fix: Blob and Kudzu tiles which expand into chasms will now be correctly
destroyed by the chasm.
/🆑

* Blobs and Kudzu are killed by chasms.

---------

Co-authored-by: Jacquerel <hnevard@gmail.com>
2023-05-18 18:59:37 +02:00
SkyratBot
2fd779d372 [MIRROR] Spiderlings can cross webs [MDB IGNORE] (#21160)
* Spiderlings can cross webs (#75404)

## About The Pull Request

Reliable web traversal is now governed by a trait instead of a type
check.
Spiderlings have that trait.

## Why It's Good For The Game

Spiderlings are spiders and shouldn't get stuck in webs.
Turning this into a trait means that we can make more things apply the
trait in future if we want, without having to expand a list of allowed
mobs.

## Changelog

🆑
fix: Spiderlings no longer get stuck in webs
/🆑

* Spiderlings can cross webs

---------

Co-authored-by: Jacquerel <hnevard@gmail.com>
2023-05-14 22:28:58 -07:00
SkyratBot
d6fae17d7c [MIRROR] New space ambience track + fixes space ambience cutting itself off [MDB IGNORE] (#21176)
* New space ambience track + fixes space ambience cutting itself off (#75379)

Ambience tracks, very important for setting the tone for
space exploration. Some sentiment was spreading around that they were a
bit repetitive, so I made [a new one](https://vocaroo.com/1h3hx83xlbjS).
Turns out the more likely reason was that space was using the default
min/max random cooldown of 30/60 seconds, so only one of the prior
tracks could possibly finish(usually not) before it would be cut off to
play another track(sometimes the same track)
I've set the minimum cooldown to 195 seconds, which is the length of
ambispace.ogg, the longest track in the space ambience index. This means
that the rest of the tracks will be followed by 1-2 minutes of silence.

* New space ambience track + fixes space ambience cutting itself off

---------

Co-authored-by: Capsandi <38051413+Capsandi@users.noreply.github.com>
2023-05-14 20:57:43 -07:00
Gandalf
f2b328e14a Post Mirror Grounding (#21034)
* PT1 MAP RESET

* Lints

* [MDB Ignore] Adds a unit test for typepaths that are required to be mapped onto each station map (#74985)

Inspired by #74967 and #68459 , and the fact that Tramstation regresses
very often -

Adds a unit test, `required_map_items`, which ensures that certain
typepaths which should definitely be mapped onto every map is mapped
onto every map

It can also be used to ensure that items which should not be mapped in
multiple times are not, among other things.

I included a few examples -
- Min 1, max inf of each head of staff stamps
- Min 1, max 1 departmental order consoles
- Min 1, max inf comms console
- Min 1, max 1 Pun Pun
- Min 1, max 1 Poly
- Min 1, max 1 Ian

If, in the future, a mapper decides they (for some reason) do not want a
certain previously-required item on their map, the test can be adjusted
such that it allows excluding or something, but currently it should be
for items which require conscious thought about.

I attempted to make this a linter before realizing two things
1. Someone might make a spawner which spawns the items, or they might
get placed in a locker, in any case this accounts for everything on init
2. Linters run on every map, non-station maps included

So I went with a test

Why is it always the CMO stamp?

Not necessary (unless I find a map missing something, then this will be
updated)

* yay

* Update VoidRaptor.dmm

* Update blackmesa.dmm

* wew

* New sand and water sprites (ported from Bay) (#75254)

* e

* Update AntagInfoClock.tsx

* Update LimbsPage.tsx

* Update area_spawn_entries.dm

* Update LimbsPage.tsx

---------

Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
2023-05-10 01:24:11 +00:00