101 Commits

Author SHA1 Message Date
Coolsurf6
a4189d8de8 Added Pain Numbness Trait (#34538)
* added pain-numbness component and system

* added numb as a trait that pulls the pain numbness component

* removed new event as mob threshold event as already being fired

* checked for MobThresholdsComponent first before running VerifyThresholds

* refacted force say to using LocalizedDatasetPrototype and added numb messages

* added severity check alert

* added comment for BeforeForceSayEvent

* removed space formatting

* changed Cancelled to CancelUpdate, fixed spacing and added two more damage-force-say-numb

* changed prefix damage-force-say-numb to 5 (whoops)

(cherry picked from commit 012c8355594823bc327fc42693a43a7c00f0caf9)
2026-02-13 17:48:10 +03:00
vanx
0ce092de86 More Locale (#965)
* lo KAL e

* фикс дубле

---------

Co-authored-by: vanx <vanxxxx@discord>
2025-12-28 01:39:55 +03:00
MilenVolf
30fc18f5c5 Localize criminal records reason placeholder dataset (#35810)
* Localize criminal records reason placeholder dataset

* Forgor

(cherry picked from commit f8ccff1363c95168db7e4e4b84de6486741c3c03)
2025-10-04 12:51:29 +03:00
Tayrtahn
f32ec0be0d Convert story generation to use LocalizedDatasets (#28402)
Converted story generation to use LocalizedDatasets

(cherry picked from commit d6f1f0ac1cba76e469848026359e24eede7d5602)
2025-09-27 13:54:05 +03:00
Tayrtahn
4be32f04b9 Let ghosts sometimes make certain devices say creepy things (#34368)
* Add SpookySpeaker component/system

* Shuffle Boo action targets before trying to activate them

* Add SpookySpeaker to vending machines

* Fix chatcode eating messages starting with "..."

* Add SpookySpeaker to recycler

* Oops

* Decrease speak probability for vending machines

* Add spooky speaker to arcade machines

(cherry picked from commit c6e4d198833ca5c69821a1d4b8108c2a2d94f1d0)
2025-09-20 20:33:30 +03:00
nekosich
c3a5374c64 Фикс дизарма и неизвестного типа урона + фикс локализации стульев + немного перевода (#773)
* damage-fix+few-datasets

* disarm-fix

дизарм снова работает

* disarm-fix-2

* Update weapon-module.ftl

* Update damage-examine.ftl

* small-translation-fix

* chair-fix
2025-08-19 10:27:56 +03:00
nekosich
db6dc5b4e0 Перевод Советов (#686)
* tips-translation

* Update tips.yml

* fix-for-upstream

---------

Co-authored-by: nekosich <80796749+tripsov@users.noreply.github.com>
2025-07-23 16:38:12 +10:00
MilenVolf
8643496b9a Localize planet dataset names (#33398)
* Localize planet names (borer)

* DatasetPrototype -> LocalizedDatasetPrototype

* Apply requested changes

(cherry picked from commit 2002de9bb01e53e70b00fea5b3f4ffeed55a3cfa)
Signed-off-by: Spatison <137375981+Spatison@users.noreply.github.com>
2025-07-20 15:06:47 +10:00
K-Dynamic
0384fa5185 Electrified doors/windoors now spark, new tips to deal with doors without access or when electrified (#34502)
* new tips to open doors (throwing PDA/ID, dragging body)

* electrified door sprite for players

* tooltip to reset AI electrified doors

* windoor electrified sprite

* highsec electrified visual

* increase tip dataset to 138

* corrected square bracket convention in this commit

* removed door corpse tip from prior commit

(cherry picked from commit 24219cb97b243e96fd5155a155f2819729e2a470)
2025-07-20 14:18:34 +10:00
Ed
4ff8981876 Localize tips (#28285)
* localize tip

* localizzedDataset

(cherry picked from commit a1bcaf58973d1b15ced827ee50bae724339d1ec0)
2025-07-20 14:18:31 +10:00
strO0pwafel
01abca655d more consistent CentComm naming (#29217)
* first-commit

* second commit

* i think i get git kinda maybe

* all of resources i think

* last easy changes

* oops

* Update Resources/Prototypes/Entities/Clothing/Head/hoods.yml

---------

Co-authored-by: stroopwafel <j.o.luijkx@student.tudelft.nl>
Co-authored-by: Plykiya <58439124+Plykiya@users.noreply.github.com>
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>

(cherry picked from commit 35819e4ba5b600430d35301275132c36a8a2fd97)
2025-07-16 14:48:36 +10:00
TurboTracker
126650de01 comment out Exterminator reference in Ion Laws (#29628)
1984'ed via pull/26978 but was likely missed.

(cherry picked from commit 40394886546276a30596ddc992551182a3881511)
2025-07-15 11:59:41 +10:00
Tayrtahn
52c205dd0b Random book story generator refactor (#28082)
* Randomized book overhaul

* Fix prototype names

* Improved setting paper content

* Praise Ratvar

(cherry picked from commit bad3bb4a89736b7b8b343dc14e0d0259ab7e45a1)
2025-07-12 01:13:21 +10:00
EctoplasmIsGood
84bb1e8793 Disable/Migrate Grappling Gun, Tether Gun, and Force Gun. (#2328)
<!--
This is a semi-strict format, you can add/remove sections as needed but
the order/format should be kept the same
Remove these comments before submitting
-->

# Description

<!--
Explain this PR in as much detail as applicable

Some example prompts to consider:
How might this affect the game? The codebase?
What might be some alternatives to this?
How/Who does this benefit/hurt [the game/codebase]?
-->

These three items are built off of shitcode, and they like throwing
errors / causing problems, so until someone takes the time to fix them,
I'm going to be disabling them.

For safety (just incase they were mapped for some reason) Theyve also
been migrated to null

# Changelog

<!--
You can add an author after the `🆑` to change the name that appears
in the changelog (ex: `🆑 Death`)
Leaving it blank will default to your GitHub display name
This includes all available types for the changelog
-->

🆑
- remove: Disabled grappling guns, tether guns, and force guns

---------

Signed-off-by: EctoplasmIsGood <109397347+EctoplasmIsGood@users.noreply.github.com>
Co-authored-by: Your Name <EctoplasmIsGood@users.noreply.github.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

(cherry picked from commit 81b32f1bf47cad2c1ee2c24c121dd2caa96ffdfa)
2025-05-03 01:26:05 +03:00
vanx
6fc34b4de3 Russi4n Tr4itor Codewords (#244)
codewords

Co-authored-by: vanx <discord@vanxxxx>
2025-03-01 23:25:07 +07:00
SixplyDev
3bca3427ca Glass Cannon Shadowkin (#1531)
# Description

Honestly... much needed until they can get a proper rework from the
original creators. This PR nerfs them a shit ton (no more teleporting
away when you're in danger, smh) to make them more in line with the
other species so they aren't powergamer central. Additionally, brings
them more in-line with the traditional SS13 shadowkin. Shadowkins should
no longer get darkswap and such, in fact I've commented out the entire
ability until it too can get a rework.

---

# TODO

- [x] Removed DarkSwap from Shadowkin
- [x] Made shadowkins take more damage from heat, slash, and piercing
- [x]  Brought shadowkin much more in line with their SS13 counterparts
- [x] Fixed shadowkin lore, making the guidebook entry more interesting
- [x] Fixed shadowkin lore file, adding in their species lore instead of
relying on a google doc
- [x] Shadowkin can be chosen as a player species roundstart
- [x] Rework Marish to have a more fleshed out language protoype
- [ ] Make DarkSwap unable to interact with the world as a whole
- [ ] Give DarkSwap a longer cooldown
- [ ] Make DarkSwap unable to be used if stunned
- [ ] Adjust DarkSwap glimmer production
- [x] Shadowkin do not have black eyes by default
- [x] Shadowkin have the black eyes trait listed (Waveform Misalignment
equivalent)
- [x] Shadowkin can now be mystagogue, mantis, chaplain, cataloguer, and
prisoner.
- [x] Shadowkin cannot have blackeye trait for mystagogue, mantis,
chaplain, or cataloguer.
- [x] Shadowkin must have blackeye trait for prisoner.

---

# Changelog

🆑 ShirouAjisai
- add: Shadowkins can now be roundstart species again
- add: Shadowkins now have a lungs, yippee!
- add: Shadowkins now have organs with funny little descriptions
- add: Shadowkins now have a brand new and expanded list of names
- add: Shadowkins now have roundstart innate telepathy ability rather
than a whole new language for it.
- tweak: Shadowkins take more damage from heat, slash, and piercing
- tweak: Shadowkins are much more like their SS13 counterparters
- tweak: Shadowkins now have much better lore in their guidebook entry
- tweak: Shadowkins now have a more fleshed out language (to outside
observers)
- tweak: Shadowkins now can be mystagogue, mantis, chaplain, and
cataloguer
- tweak: Shadowkins must now have blackeye trait to play prisoner
- tweak: Shadowkins no longer have blackeye trait by default
- tweak: Shadowkins now take asphyxiation damage, albeit at half the
rate of others.
- tweak: Shadowkins now have a more pronounced snout.
- remove: Removed DarkSwap from Shadowkin roundstart

---------

Signed-off-by: SixplyDev <einlichen@gmail.com>
Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com>
Co-authored-by: ShirouAjisai <zaneromeave319@gmail.com>
Co-authored-by: VMSolidus <evilexecutive@gmail.com>

(cherry picked from commit 031a102e2fe8ca1533375168b3ae64f65f5e99ea)
2025-01-29 20:23:55 +03:00
Skubman
a46b4f2b5a New Species: Plasmaman (#1291)
# Description

Adds the Plasmamen as a playable species. Plasmamen are a skeletal
species who depend on Plasma to live, and oxygen is highly fatal to
them. Being exposed to oxygen will set them on fire, unless they wear
their envirosuits.

## Species Guidebook

<img width=500px
src="https://github.com/user-attachments/assets/a1ef91ef-87b2-4ae0-8b5c-922a0c34777f">
<img width=500px
src="https://github.com/user-attachments/assets/110f0fa0-7dc4-410b-a2c0-a517f0311484">

**SPECIAL:**

- Plasmamen speak the language Calcic, a language they share with
Skeletons.

## Shitmed Integration

Plasmamen are the first ever species designed with Shitmed in mind, with
one of their core mechanics (self-ignition) powered entirely by Shitmed.

Whether or not a Plasmaman ignites from oxygen exposure depends only on
their body parts. A Plasmaman with only their head exposed will not burn
as much as an entirely naked Plasmaman. You can **transfer** Plasmaman
body parts to non-Plasmamen through **surgery** so that they also ignite
from oxygen exposure. Meanwhile, a Plasmaman with a non-Plasmaman head
can expose their head without self-igniting.

https://github.com/user-attachments/assets/0aa33070-04be-4ded-b668-3afb9f4ddd7c

## Technical Details

This also cherry-picks
https://github.com/space-wizards/space-station-14/pull/28595 as a
quality-of-life feature to ensure Plasmamen keep their internals on upon
toggling their helmet with a breath mask on.

## TODO

### RELEASE-NECESSARY

<details>

- [x] Port more envirosuits / enviro helms (job-specific) and their
sprites
- [x] Remove breath masks from default plasmaman loadouts because the
envirohelms already allow them to breathe internals
- [x] Change default plasma tank to higher-capacity version
- [x] Prevent plasmamen from buying jumpsuits and helmets other than
envirosuits
- ~~[ ] **Client UI update for loadout groups min/max items and default
items**~~
- [x] Plasmaman-specific mask sprites from TG
- [x] Disable too cold alert for plasmamen
- [x] Create/port sprites for these jobs
  - [x] Courier
  - [x] Forensic Mantis
  - [x] Corpsman (Resprite security envirosuit)
  - [x] Prison Guard (Resprite security envirosuit)
- [x] Magistrate (No Paradise envirosuit so use new colorable
envirosuit)
  - [x] Blueshield (Port from Paradise and tg-ify?)
- [x] NanoTrasen Representative (No Paradise envirosuit so use new
colorable envirosuit)
- [x] Martial Artist (use new colorable envirosuit and make pure white)
  - [x] Musician (use new colorable envirosuit)
  - [x] Reporter (use new colorable envirosuit)
  - [x] Zookeeper (use new colorable envirosuit)
  - [x] Service Worker (use new colorable envirosuit)
  - [x] Gladiator
  - [x] Technical Assistant
  - [x] Medical Intern
  - [x] Acolyte / Research Assistant
  - [x] Security Cadet
  - [x] Assistant
- You know what. These intern jobs are fine. They can use their normal
equivalent's envirosuits.
  - [x] Logistics Officer (use new colorable envirosuit)
- [x] Adjust sprites to be closer to actual job
  - [x] Captain (Shift color to be closer to ss14 captain)
  - [x] ~~CMO (Remove yellow accents)~~
  - [x] Port HoP envirogloves sprite
- [x] unique sprite for self-extinguish verb
- [x] Refactor conditional gear stuff to live only in
StartingGearPrototype with `SubGear`
`List<ProtoId<StartingGearPrototype>>` field and `List<Requirement>`
field for sub-gear requirements
- [x] Add starting gear for paradox anomaly, and antags and ghost roles
  - [x] Paradox
  - [x] Nukies
  - [x] Disaster victims
  - [x] Listening post operative
- [x] Make all envirosuit helmets have a glowing (unshaded) visor
- [x] Envirosuit extinguish visuals
- [x] JobPrototype: AfterLoadoutSpecial
- [x] Set prisoner envirohelm battery to potato, command/sec/dignitary
to high-powered
  - [x] Set base envirosuit extinguishes to 4, sec 6 and command 8
- [x] Improve plasmaman organ extraction experience
  - [x] Body parts now give 1 plasma sheet each, while Torso gives 3
  - [x] Organs can be juiced to get plasma
- [x] Make envirohelm flashlights battery-powered
- [x] Plasmamen visuals
- [x] Grayscale sprites for color customization, and set default
skintone color to Plasmaman classic skintone
  - [x] Plasmaman eye organ sprite
- [x] Add basic loadouts
- [x] Add way to refill envirosuit charges (refill at medical protolathe
after some research)

</details>

### Low Importance

<details>

- [x] Envirogloves
- [ ] (SCOPE CREEP) Plasma tanks sprite (only normal emergency/extended,
rather low priority)
- [ ] (SCOPE CREEP) Modify envirosuit helmet sprites to have a
transparent visor
- [ ] Glowing eyes/mouth marking
- [x] More cargo content with plasma tanks / envirosuits
  - [x] Plasmaman survival kit like slime
  - [x] Additional plasma tanks
  - [ ] (SCOPE CREEP) Plasmaman EVA suits
- [x] ~~Add envirosuits to clothesmate~~
- [x] Add more plasma tanks to random lockers and job lockers
- [x] Turn envirosuit auto-extinguish into extinguish action
- [x] move self-extinguish verb stuff to shared for prediction of the
verb
- [x] move self-extinguisher stuff away from extinguisher namespace
- [x] unique sprite for self-extinguish icon
  - [x] ~~IDEA: purple glowy fire extinguisher ~~
- [x] on self-extinguish, check for pressure immunity OR ignite from gas
immunity properly
- [x] See envirosuit extinguish charges in examine
- [x] Milk heals on ingestion
- [x] Plasma heals on ingestion
- [x] Self-ignition doesn't occur on a stasis bed
- [x] ~~Self-ignition doesn't occur when dead~~
- [x] Guidebook entry
- [x] Make self-ignition ignore damage resistances from fire suits
- [x] ~~Make self-ignition ignore damage resistances from armor~~
- [x] ~~Unable to rot?~~
- [x] Make the envirosuit helmet toggle on for the character dummy in
lobby
- [ ] (SCOPE CREEP) One additional Plasmaman trait
- [x] ~~Showers extinguish water as well as water tiles~~
- Unnecessary as stasis beds now prevent ignition, allowing surgery on a
plasmaman on stasis beds.
- [x] Unique punch animations for Plasmafire Punch/Toxoplasmic Punch
traits
- [x] Actually remove toxoplasmic it's just slop filler tbh
- [ ] Talk sounds
  - [ ] Normal
  - [ ] Question
  - [ ] Yell
- [x] Positive moodlet for drinking milk / more positive moodlet for
drinking plasma
- [x] Increase moodlet bonus and also minimum reagent required for the
plasma/milk moodlets
- [x] Increase fire rate base stacks on ignite cause putting out your
helmet for a few secs isn't that dangerous due to the fire stacks
immediately decaying
- [x] I think halving firestack fade from -0.1 to -0.05 might work to do
the same thing too
- [ ] (SCOPE CREEP) Get bone laugh sounds from monke
'monkestation/sound/voice/laugh/skeleton/skeleton_laugh.ogg'
- [ ] (SCOPE CREEP) When EVA plasmaman suit is added, 25% caustic resist
- [x]  Envirosuit helmet
  - [x] Equivalent of 100% bio / 100% fire / 75% acid resist
- [x] Envirosuit
  - [x] Equivalent of 100% bio / 100% fire / 75% acid resist
- [x] Envirogloves
  - [x] Equivalent of 100% bio / 95% fire / 95% acid resist
- [x] Put breath mask back on
- [x] Refactor: put body parts covered data into component instead of
being hardcoded

</details>

## Media

**Custom Plasmaman Outfits**

All of these use the same **absolutely massive** [envirosuit
RSI](0c3af432df/Resources/Textures/Clothing/Uniforms/Envirosuits/color.rsi)
and [envirohelm
RSI](0c3af432df/Resources/Textures/Clothing/Head/Envirohelms/color.rsi)
to quickly create the envirosuits that didn't exist in SS13 where the
envirosuit sprites were ported.

From Left to Right: Magistrate, Prison Guard, Boxer, Reporter, Logistics
Officer

<img width=200px
src="https://github.com/user-attachments/assets/bf990841-7d9e-4f4e-abae-8f29a3980ca1">
<img width=200px
src="https://github.com/user-attachments/assets/07ca7af7-4f43-4504-9eac-4ca9188ae98e">
<img width=200px
src="https://github.com/user-attachments/assets/0d20332c-826f-4fec-8396-74e84c23b074">
<img width=200px
src="https://github.com/user-attachments/assets/1634364e-7cb3-457b-b638-e1b562b7c0c5">
<img width=200px
src="https://github.com/user-attachments/assets/c2881764-f2fa-4e40-9fbf-35d1b717c432">

**Plasmaman Melee Attack**

https://github.com/user-attachments/assets/6e694f2c-3e03-40bf-ae27-fc58a3e4cb6c

**Chat bubble**

<img width=240px
src="https://github.com/user-attachments/assets/e3c17e6d-5050-410f-a42c-339f0bfa30a1">

**Plasmaman Body**

<img width=140px
src="https://github.com/user-attachments/assets/7ed90a47-9c33-487d-bd44-c50cec9f16dd">

With different colors:

<img width=140px
src="https://github.com/user-attachments/assets/0a28068e-7392-4062-950b-f60d2602da84">
<img width=140px
src="https://github.com/user-attachments/assets/9b652311-0305-4ec0-be60-e404697617a2">

**Skeleton Language**

![image](https://github.com/user-attachments/assets/89b2b047-3bfa-4106-926e-6c412ed6e57c)

**(Bonus) Skeleton chat bubble**

<img width=240px
src="https://github.com/user-attachments/assets/a2e2be5c-f3ae-49d9-b655-8688de45b512">

**Self-Extinguish**

https://github.com/user-attachments/assets/6c68e2ef-8010-4f00-8c24-dce8a8065be8

The self-extinguish is also accessible as a verb, which also means that
others can activate your self-extinguish if they open the strip menu.

<img width=200px
src="https://github.com/user-attachments/assets/291ab86d-2250-46ec-ae0c-80084ab04407">

The self-extinguish action has different icons depending on the status
of the self extinguish.

Left to right: Ready, On Cooldown, Out Of Charges

<img
src="https://github.com/user-attachments/assets/0340de8a-9440-43b1-8bff-1c8f962faa0c">

<img
src="https://github.com/user-attachments/assets/11f73558-6dc1-444d-b2ef-2f15f55174ca">

<img
src="https://github.com/user-attachments/assets/030ed737-f178-4c60-ba0c-109659e7d9cb">

**Envirosuit Extinguisher Refill**

<img width=300px
src="https://github.com/user-attachments/assets/9379294b-e3f3-436d-81bc-2584631869ef">
<img width=300px
src="https://github.com/user-attachments/assets/807b9e9e-7b4b-4593-aa1f-d9d24ac6985c">

**Loadouts**

<img width=400px
src="https://github.com/user-attachments/assets/55713b87-29bb-41b3-b7a3-88fbc6e5e797">
<img width=400px
src="https://github.com/user-attachments/assets/ab1757fa-9b70-4a66-b5ae-20fd9cabe935">
<img width=400px
src="https://github.com/user-attachments/assets/aacc4cf7-9ce1-4099-b8c7-108bef1f3bde">
<img width=400px
src="https://github.com/user-attachments/assets/58604dc2-82ef-4d42-b9e2-639548c93f40">

**Plasma Envirosuit Crate**
<img width=400px
src="https://github.com/user-attachments/assets/fa362387-9c10-47c3-b1af-2c11e6b00163">

<img width=400px
src="https://github.com/user-attachments/assets/bf773722-9034-4469-967d-e00dbf8c77a7">

**Internals Crate (Plasma)**
<img width=400px
src="https://github.com/user-attachments/assets/fcd4ff2e-09e9-423a-9b21-96817f6042a4">

<img width=400px
src="https://github.com/user-attachments/assets/bf773722-9034-4469-967d-e00dbf8c77a7">

**Glow In The Dark**

![image](https://github.com/user-attachments/assets/9728eb33-55d5-4f82-92ac-3a7756068577)

## Changelog

🆑 Skubman
- add: The Plasmaman species has arrived! They need to breathe plasma to
live, and a special jumpsuit to prevent oxygen from igniting them. In
exchange, they deal formidable unarmed Heat damage, are never hungry nor
thirsty, and are immune to cold and radiation damage. Read more about
Plasmamen in their Guidebook entry.
- tweak: Internals are no longer toggled off if you take your helmet off
but still have a gas mask on and vice versa.
- tweak: Paradox Anomalies will now spawn with the original person's
Loadout items.
- fix: Fixed prisoners not being able to have custom Loadout names and
descriptions, and heirlooms if they didn't have a backpack when joining.

---------

Signed-off-by: Skubman <ba.fallaria@gmail.com>
Signed-off-by: VMSolidus <evilexecutive@gmail.com>
Co-authored-by: Plykiya <58439124+Plykiya@users.noreply.github.com>
Co-authored-by: VMSolidus <evilexecutive@gmail.com>

(cherry picked from commit e68e0c3f4b9cf263e07efc888b32a091df62fb51)
2025-01-29 20:19:20 +03:00
John Willis
c565776b57 Psionics Registry Computer, PsiWatch, and Epi-Glasses/Epi-HUD (#1598)
# Description
This adds the wonderful `Psionics Registry Computer` which allows you
to, just like Criminal Records, mark people that will show their icons
to other individuals wearing the appropriate gear, and will allow you to
keep track of such individuals in a similar way by making a `PsiWatch`
app that will show the reasons.

For the purposes of easement, I've left the fingerprints and DNA in
there, but individuals will not show up with it in the actual file. The
game would just crash when I removed the filters, so I left them in. The
dropdown also just looked cleaner when it was there instead of removing
it and replacing it with a label.

I've recolored the sprites for the sec-glasses and sec-HUD to make the
epi-glasses and epi-HUD using Epistemics colors.
I've recolored the sprite for the CriminalRecords computer to look
different and be cool.

---

# TODO
A list of things I've done split into categories.

### Spriting
- [x] (Recolor) Sprite the epi-glasses and epi-HUD.
- [x] Sprite the PsionicsRecords computer screen.
- [x] Sprite the Psionics Status icons.
- [x] Change the sprite for the Psionics Abusing (it is hard to tell any
difference from suspected right now).

### Records
- [x] Set up records XAML that basically duplicates the Criminal
Records.
- [x] Remove History (not necessary).
- [x] Change all the naming schema to match.
- [x] Change the categories and setup reason-requirement for each
submission type.
- [x] Change the "reason" to "psionics" so it is more intuitive.

### Computer Setup
- [x] Setup computer to show UI.
- [x] Setup system to report to report to Epistemics (Science) radio
when anything is changed.
- [x] Setup the system to only accept Epistemics (Research) access.
- [x] Setup the computer board.
- [x] Setup the sprites for the computers.

### Equipment and Icons
- [x] Create the icons and ensure the ShowPsionicsRecordIcons prototype
works.
- [x] Create the entity prototypes for the glasses and HUD in the game
to show textures.
- [x] Set it up so the glasses and HUD show the user the icons when
they're wearing them (having hard time fixing this at 06:00 in the
morning).

### PDA App
- [x] Setup the PDA app to mimic the SecWatch app as its own (PsiWatch).
- [x] Add the PDA app cartridge to Chaplain, Mantis, Cataloguer, and
Mystagogue.
- [x] Add cartridge to the Mystagogue locker (so they can give others
it).

### Loadouts
- [x] Add the epi-HUD to the Chaplain, Mantis, Cataloguer and
Mystagogue.
- [x] Add the epi-glasses to the Mystagogue.
- [x] Add the epi-glasses to Chaplain, Mantis, and Cataloguer (for 3
points).

### Mapping
- [x] Add the Psionics Registry Computer to every map.

### Miscellaneous Fixes/Changes
- [x] Make the computer only work for Chaplain (Chapel), Cataloguer
(Library), Mantis (Mantis), and Mystagogue (ResearchDirector).
- [x] Fix Chaplain PDA (did not have any programs installed
automatically, now it does).

---

# Media
I will add more media when I finish the rest. For now, it's just us.

<details><summary><h3>Registry Working</h3></summary>
<p>

https://github.com/user-attachments/assets/f534a1b6-6873-4bcd-9fe5-c7138069ecc0

</p>
</details>
<details><summary><h3>Loadouts and PsiWatch</h3></summary>
<p>

Cataloguer

![image](https://github.com/user-attachments/assets/3a5c3b2c-13e8-470f-8ea7-cff828f03e8d)
Chaplain

![image](https://github.com/user-attachments/assets/35a1255c-9447-4aeb-b200-48f2d00782e1)
Mantis

![image](https://github.com/user-attachments/assets/155ac859-10fd-4233-a84d-31f8f32b2f71)
Mystagogue

![image](https://github.com/user-attachments/assets/ddfd178f-2d79-4e1f-9226-51352eb8c0c9)

---

No Users in PsiWatch

![image](https://github.com/user-attachments/assets/63186e30-8c04-409b-8478-eb6bc9006f5f)
Suspected in PsiWatch

![image](https://github.com/user-attachments/assets/e9009714-0ed5-496f-a836-04f01f9e13e8)
Registered in PsiWatch

![image](https://github.com/user-attachments/assets/5f565ec6-4f5f-4303-89cc-f9201de01568)
Abusing in PsiWatch

![image](https://github.com/user-attachments/assets/d2f623b4-f2fa-419b-9b3e-a77001aff8ae)
PsiWatch in PDA

![image](https://github.com/user-attachments/assets/262ffd2e-f798-41db-8e45-4b64613aac0d)
Picture of the PDAs and PsiWatch Cartridge

![image](https://github.com/user-attachments/assets/ed334e8d-6236-4252-82b8-327f59609751)

---

Mystagogue Lockers with PsiWatch Cartridge

![image](https://github.com/user-attachments/assets/e56cef9c-2d9e-46bb-87ca-3e6cd2c85240)

</p>
</details>
<details><summary><h3>Mapping Locations</h3></summary>
<p>

Arena

![image](https://github.com/user-attachments/assets/b24e997d-051d-4def-a28c-dc1029566f0d)
Asterisk

![image](https://github.com/user-attachments/assets/6e2faf02-350e-4608-b629-c402d8c2a0fc)
Core

![image](https://github.com/user-attachments/assets/0d43e3a0-36c2-4c51-9745-d2a4e1d70217)
Edge

![image](https://github.com/user-attachments/assets/478180e2-e63a-4d9a-bf13-365b2648778b)
Europa

![image](https://github.com/user-attachments/assets/a385fc48-016e-40bd-8dbc-dc3904b62f05)
Gaxstation

![image](https://github.com/user-attachments/assets/207c267b-bf01-4ba5-b829-034ad26d48ef)
Glacier

![image](https://github.com/user-attachments/assets/2432840a-2ecc-4957-b82e-ed8406453fbc)
Hive

![image](https://github.com/user-attachments/assets/d03ec8a0-de82-4f0f-af90-3bb3e76c1ff7)
Lighthouse

![image](https://github.com/user-attachments/assets/3a6b8cc0-5692-4e12-a90f-8d0427469cd5)
Meta

![image](https://github.com/user-attachments/assets/c8092fd1-a2cb-4b07-966c-c13a673f16ac)
Pebble

![image](https://github.com/user-attachments/assets/084d76a1-b458-4693-a22e-3787a00f69fd)
Radstation

![image](https://github.com/user-attachments/assets/a98b48dc-70e3-429c-b2f5-99ba2a5f194a)
Saltern

![image](https://github.com/user-attachments/assets/b7e52f6f-8d55-476f-9991-de72c559fc16)
Shoukou

![image](https://github.com/user-attachments/assets/2495e13f-f07a-414d-993e-7e29e48c7f9c)
Submarine

![image](https://github.com/user-attachments/assets/08a92a84-513f-40d2-8ed3-313189805838)
Tortuga

![image](https://github.com/user-attachments/assets/0009b512-ff07-4d17-8825-71a182cb67dc)

</p>
</details>

---

# Changelog
🆑
- add: Added Psionics Registry Computer. Now you can record Psionics
users in Epistemics.
- add: Added epi-glasses and epi-HUD to see Psionics Users icons.
(Chaplain, Cataloguer, Mantis, and Mystagogue have access in loadout).
- add: Added PsiWatch. Now you can see the Psionics Records data on your
PDA!
- fix: Fixed Chaplain not having any programs in their PDA on spawn.

---------

Signed-off-by: sleepyyapril <123355664+sleepyyapril@users.noreply.github.com>
Co-authored-by: sleepyyapril <123355664+sleepyyapril@users.noreply.github.com>

(cherry picked from commit fc7ecc44a748f8ef7a4cec613033f51acf238288)
2025-01-20 21:39:09 +03:00
Spatison
c57aea11d2 fix yaml 2025-01-15 23:01:42 +03:00
Sapphire
97cac7d5fe Fix EE's Most Pressing Issue (#1399)
# Description

This one took me a few hours to get working. Truly one of the most
important PRs to ever grace this codebase :)

Solves #1286

---

<details><summary><h1>Media</h1></summary>
<p>

# Nuh uh :3

</p>
</details>

---

# Changelog

🆑
- fix: Remove a filthy, dirty, lie that has ruined the dreams of many
spessmans.

(cherry picked from commit f61b222b262086578603cf52cba5c0f501425fcd)
2025-01-14 00:17:18 +03:00
sleepyyapril
885ee5a831 Wizmerge for Station AI (#1351)
<!--
This is a semi-strict format, you can add/remove sections as needed but
the order/format should be kept the same
Remove these comments before submitting
-->

# Description

the adding AI is now up to y'all because i'm not touching loadout code
for name datasets, but it shouldn't be too bad from here

---------

Signed-off-by: sleepyyapril <123355664+sleepyyapril@users.noreply.github.com>
Signed-off-by: SolStar <44028047+ewokswagger@users.noreply.github.com>
Signed-off-by: deltanedas <39013340+deltanedas@users.noreply.github.com>
Co-authored-by: themias <89101928+themias@users.noreply.github.com>
Co-authored-by: Verm <32827189+Vermidia@users.noreply.github.com>
Co-authored-by: DrSmugleaf <10968691+DrSmugleaf@users.noreply.github.com>
Co-authored-by: Sphiral <145869023+SphiraI@users.noreply.github.com>
Co-authored-by: Ed <96445749+TheShuEd@users.noreply.github.com>
Co-authored-by: Mr. 27 <45323883+Dutch-VanDerLinde@users.noreply.github.com>
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
Co-authored-by: Alzore <140123969+Blackern5000@users.noreply.github.com>
Co-authored-by: ravage <142820619+ravage123321@users.noreply.github.com>
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
Co-authored-by: Intoxicating-Innocence <188202277+Intoxicating-Innocence@users.noreply.github.com>
Co-authored-by: Saphire <lattice@saphi.re>
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
Co-authored-by: Errant <35878406+Errant-4@users.noreply.github.com>
Co-authored-by: Tayrtahn <tayrtahn@gmail.com>
Co-authored-by: CaasGit <87243814+CaasGit@users.noreply.github.com>
Co-authored-by: BramvanZijp <56019239+BramvanZijp@users.noreply.github.com>
Co-authored-by: Boaz1111 <149967078+Boaz1111@users.noreply.github.com>
Co-authored-by: NakataRin <45946146+NakataRin@users.noreply.github.com>
Co-authored-by: Kara <lunarautomaton6@gmail.com>
Co-authored-by: Plykiya <58439124+Plykiya@users.noreply.github.com>
Co-authored-by: SlamBamActionman <slambamactionman@gmail.com>
Co-authored-by: Doomsdrayk <robotdoughnut@comcast.net>
Co-authored-by: Brandon Hu <103440971+Brandon-Huu@users.noreply.github.com>
Co-authored-by: SlamBamActionman <83650252+SlamBamActionman@users.noreply.github.com>
Co-authored-by: ElectroJr <leonsfriedrich@gmail.com>
Co-authored-by: Pieter-Jan Briers <pieterjan.briers+git@gmail.com>
Co-authored-by: DrSmugleaf <DrSmugleaf@users.noreply.github.com>
Co-authored-by: Julian Giebel <juliangiebel@live.de>
Co-authored-by: nikthechampiongr <32041239+nikthechampiongr@users.noreply.github.com>
Co-authored-by: Repo <47093363+Titian3@users.noreply.github.com>
Co-authored-by: Chief-Engineer <119664036+Chief-Engineer@users.noreply.github.com>
Co-authored-by: icekot8 <93311212+icekot8@users.noreply.github.com>
Co-authored-by: AJCM-git <60196617+AJCM-git@users.noreply.github.com>
Co-authored-by: Leon Friedrich <60421075+ElectroJr@users.noreply.github.com>
Co-authored-by: no <165581243+pissdemon@users.noreply.github.com>
Co-authored-by: Tornado Tech <54727692+Tornado-Technology@users.noreply.github.com>
Co-authored-by: osjarw <62134478+osjarw@users.noreply.github.com>
Co-authored-by: Simon <63975668+Simyon264@users.noreply.github.com>
Co-authored-by: TGRCDev <tgrc@tgrc.dev>
Co-authored-by: Milon <milonpl.git@proton.me>
Co-authored-by: deltanedas <39013340+deltanedas@users.noreply.github.com>
Co-authored-by: ShadowCommander <10494922+ShadowCommander@users.noreply.github.com>
Co-authored-by: Fildrance <fildrance@gmail.com>
Co-authored-by: pa.pecherskij <pa.pecherskij@interfax.ru>
Co-authored-by: chavonadelal <156101927+chavonadelal@users.noreply.github.com>
Co-authored-by: SolStar <44028047+ewokswagger@users.noreply.github.com>
Co-authored-by: K-Dynamic <20566341+K-Dynamic@users.noreply.github.com>
Co-authored-by: lzk <124214523+lzk228@users.noreply.github.com>
Co-authored-by: ArchRBX <5040911+ArchRBX@users.noreply.github.com>
Co-authored-by: archrbx <punk.gear5260@fastmail.com>
Co-authored-by: Radezolid <snappednexus@gmail.com>
Co-authored-by: Nemanja <98561806+EmoGarbage404@users.noreply.github.com>
Co-authored-by: EmoGarbage404 <retron404@gmail.com>
Co-authored-by: MilenVolf <63782763+MilenVolf@users.noreply.github.com>
Co-authored-by: Velcroboy <107660393+IamVelcroboy@users.noreply.github.com>
Co-authored-by: Velcroboy <velcroboy333@hotmail.com>
Co-authored-by: neuPanda <chriseparton@gmail.com>
Co-authored-by: neuPanda <spainman0@yahoo.com>
Co-authored-by: Dvir <39403717+dvir001@users.noreply.github.com>
Co-authored-by: Whatstone <whatston3@gmail.com>
Co-authored-by: VideoKompany <135313844+VlaDOS1408@users.noreply.github.com>

(cherry picked from commit 93ed70acfeda357133a701f637d3faeec02749bb)
2025-01-14 00:13:42 +03:00
Spatison
ceb71f98b5 Revert "[Port] Codeword Highlighting (#222)"
This reverts commit e169ae090e.
2025-01-13 22:13:51 +03:00
PuroSlavKing
e169ae090e [Port] Codeword Highlighting (#222)
* Add codeword highlighting (#30092)

* Added codeword highlighting

* Updated to support more codeword roles, color is set serverside

* Review feedback

* Change to a Component-based system using SessionSpecific

* Tidied up CanGetState, set Access restrictions on component

* Clean-up

* Makes the injection ignore brackets, restore some codewords, remove "Taste/Touch" from adjectives

* codewords translate

* one more

---------

Co-authored-by: SlamBamActionman <83650252+SlamBamActionman@users.noreply.github.com>
2024-12-30 11:59:59 +10:00
Spatison
af319d007c [Tweak] Ru Name (#160)
tweak: Ru name
2024-12-14 12:21:16 +07:00
Spatison
a2557f75a6 Upstream (#129) 2024-11-21 17:49:04 +07:00
DEATHB4DEFEAT
47b10a01b0 Catch-Up Cherry Pick 2 (#944)
# Description

Picked 400 commits (and skipped many, many more) from WizDen since #540.
Stopped at commit 332f54a3aebe669f6e50d26e7b047f0bdc28e0fb (Lobby
Refactor).

---

# TODO

- [x] Pick
- [x] Compile
- [x] Fix runtime errors
- [ ] Fix up humanoid profile editor
- [ ] Test everything

---

# Changelog

🆑
- add: Merged 400 WizDen PRs. Happy testing!

---------

Co-authored-by: Plykiya <58439124+Plykiya@users.noreply.github.com>
Co-authored-by: FungiFellow <151778459+FungiFellow@users.noreply.github.com>
Co-authored-by: osjarw <62134478+osjarw@users.noreply.github.com>
Co-authored-by: Ubaser <134914314+UbaserB@users.noreply.github.com>
Co-authored-by: beck-thompson <107373427+beck-thompson@users.noreply.github.com>
Co-authored-by: Leon Friedrich <60421075+ElectroJr@users.noreply.github.com>
Co-authored-by: Magnus Larsen <i.am.larsenml@gmail.com>
Co-authored-by: Hanz <41141796+Hanzdegloker@users.noreply.github.com>
Co-authored-by: Kukutis96513 <146854220+Kukutis96513@users.noreply.github.com>
Co-authored-by: potato1234_x <79580518+potato1234x@users.noreply.github.com>
Co-authored-by: Gotimanga <127038462+Gotimanga@users.noreply.github.com>
Co-authored-by: Mangohydra <156087924+Mangohydra@users.noreply.github.com>
Co-authored-by: TsjipTsjip <19798667+TsjipTsjip@users.noreply.github.com>
Co-authored-by: lzk <124214523+lzk228@users.noreply.github.com>
Co-authored-by: SlamBamActionman <83650252+SlamBamActionman@users.noreply.github.com>
Co-authored-by: Morb <14136326+Morb0@users.noreply.github.com>
Co-authored-by: MilenVolf <63782763+MilenVolf@users.noreply.github.com>
Co-authored-by: KrasnoshchekovPavel <119816022+KrasnoshchekovPavel@users.noreply.github.com>
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
Co-authored-by: Nemanja <98561806+EmoGarbage404@users.noreply.github.com>
Co-authored-by: DrSmugleaf <10968691+DrSmugleaf@users.noreply.github.com>
Co-authored-by: Ed <96445749+TheShuEd@users.noreply.github.com>
Co-authored-by: KittenColony <149278380+KittenColony@users.noreply.github.com>
Co-authored-by: ShadowCommander <shadowjjt@gmail.com>
Co-authored-by: Mr. 27 <45323883+Dutch-VanDerLinde@users.noreply.github.com>
Co-authored-by: T-Stalker <43253663+DogZeroX@users.noreply.github.com>
Co-authored-by: ERROR404 <100093430+ERORR404V1@users.noreply.github.com>
Co-authored-by: Errant <35878406+Errant-4@users.noreply.github.com>
Co-authored-by: Jezithyr <jezithyr@gmail.com>
Co-authored-by: Psychpsyo <60073468+Psychpsyo@users.noreply.github.com>
Co-authored-by: no <165581243+pissdemon@users.noreply.github.com>
Co-authored-by: K-Dynamic <20566341+K-Dynamic@users.noreply.github.com>
Co-authored-by: Ciac32 <aknoxlor@gmail.com>
Co-authored-by: deltanedas <39013340+deltanedas@users.noreply.github.com>
Co-authored-by: NotSoDana <75203942+NotSoDana@users.noreply.github.com>
Co-authored-by: Simon <63975668+Simyon264@users.noreply.github.com>
Co-authored-by: Repo <47093363+Titian3@users.noreply.github.com>
Co-authored-by: Tayrtahn <tayrtahn@gmail.com>
Co-authored-by: nao fujiwara <awkwarddryad@gmail.com>
Co-authored-by: Michael <107807667+Doc-Michael@users.noreply.github.com>
Co-authored-by: Vasilis <vasilis@pikachu.systems>
Co-authored-by: Lamrr <96937466+Lamrr@users.noreply.github.com>
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
Co-authored-by: Jay <67732946+DuskyJay@users.noreply.github.com>
Co-authored-by: Just-a-Unity-Dev <67359748+Just-a-Unity-Dev@users.noreply.github.com>
Co-authored-by: nikthechampiongr <32041239+nikthechampiongr@users.noreply.github.com>
Co-authored-by: Flareguy <78941145+Flareguy@users.noreply.github.com>
Co-authored-by: Tyzemol <85772526+Tyzemol@users.noreply.github.com>
Co-authored-by: Alzore <140123969+Blackern5000@users.noreply.github.com>
Co-authored-by: Pok <113675512+Pok27@users.noreply.github.com>
Co-authored-by: RumiTiger <154005209+RumiTiger@users.noreply.github.com>
Co-authored-by: Verm <32827189+Vermidia@users.noreply.github.com>
Co-authored-by: Pieter-Jan Briers <pieterjan.briers+git@gmail.com>
Co-authored-by: Killerqu00 <47712032+Killerqu00@users.noreply.github.com>
Co-authored-by: Ty Ashley <42426760+TyAshley@users.noreply.github.com>
Co-authored-by: exincore <me@exin.xyz>
Co-authored-by: 0x6273 <0x40@keemail.me>
Co-authored-by: Kara <lunarautomaton6@gmail.com>
Co-authored-by: Ygg01 <y.laughing.man.y@gmail.com>
Co-authored-by: Łukasz Mędrek <lukasz@lukaszm.xyz>
Co-authored-by: Hannah Giovanna Dawson <karakkaraz@gmail.com>
Co-authored-by: TurboTracker <130304754+TurboTrackerss14@users.noreply.github.com>
Co-authored-by: OnsenCapy <101037138+LGRuthes@users.noreply.github.com>
Co-authored-by: pigeonpeas <147350443+pigeonpeas@users.noreply.github.com>
Co-authored-by: Cojoke <83733158+Cojoke-dot@users.noreply.github.com>
Co-authored-by: Tornado Tech <54727692+Tornado-Technology@users.noreply.github.com>
Co-authored-by: Rio <110139251+Riolume@users.noreply.github.com>
Co-authored-by: vorkathbruh <152932728+vorkathbruh@users.noreply.github.com>
Co-authored-by: Sphiral <145869023+SphiraI@users.noreply.github.com>
Co-authored-by: PrPleGoo <PrPleGoo@users.noreply.github.com>
Co-authored-by: Moomoobeef <62638182+Moomoobeef@users.noreply.github.com>
Co-authored-by: username <113782077+whateverusername0@users.noreply.github.com>
Co-authored-by: Boaz1111 <149967078+Boaz1111@users.noreply.github.com>
Co-authored-by: Джексон Миссиссиппи <tripwiregamer@gmail.com>
Co-authored-by: Brandon Li <48413902+aspiringLich@users.noreply.github.com>
Co-authored-by: Jajsha <101492056+Zap527@users.noreply.github.com>
Co-authored-by: RiceMar1244 <138547931+RiceMar1244@users.noreply.github.com>
Co-authored-by: IProduceWidgets <107586145+IProduceWidgets@users.noreply.github.com>
Co-authored-by: youtissoum <51883137+youtissoum@users.noreply.github.com>
Co-authored-by: ike709 <ike709@users.noreply.github.com>
Co-authored-by: icekot8 <93311212+icekot8@users.noreply.github.com>
Co-authored-by: keronshb <54602815+keronshb@users.noreply.github.com>
Co-authored-by: VMSolidus <evilexecutive@gmail.com>
Co-authored-by: Geekyhobo <66805063+Geekyhobo@users.noreply.github.com>
Co-authored-by: FoxxoTrystan <45297731+FoxxoTrystan@users.noreply.github.com>
# Conflicts:
#	Content.Client/Input/ContentContexts.cs
#	Content.Client/Lobby/LobbyState.cs
#	Content.Client/Lobby/UI/HumanoidProfileEditor.xaml
#	Content.Client/Lobby/UI/LobbyGui.xaml
#	Content.Client/Lobby/UI/LobbyGui.xaml.cs
#	Content.Client/Preferences/UI/CharacterSetupGui.xaml.cs
#	Content.Client/UserInterface/Systems/MenuBar/Widgets/GameTopMenuBar.xaml
#	Content.Server/Disposal/Unit/EntitySystems/DisposalUnitSystem.cs
#	Content.Server/Fluids/EntitySystems/PuddleSystem.Spillable.cs
#	Content.Server/GameTicking/GameTicker.Spawning.cs
#	Content.Shared/Alert/AlertType.cs
#	Content.Shared/Input/ContentKeyFunctions.cs
#	Content.Shared/Preferences/HumanoidCharacterProfile.cs
#	Content.Shared/Weapons/Melee/MeleeWeaponComponent.cs
#	Resources/ConfigPresets/EinsteinEngines/default.toml
#	Resources/Prototypes/Alerts/alerts.yml
#	Resources/Prototypes/Entities/Clothing/OuterClothing/coats.yml
#	Resources/Prototypes/Entities/Clothing/OuterClothing/hardsuits.yml
#	Resources/Prototypes/Entities/Clothing/Uniforms/jumpskirts.yml
#	Resources/Prototypes/Entities/Objects/Weapons/Melee/e_sword.yml
#	Resources/Prototypes/Entities/Objects/Weapons/Melee/sword.yml
#	Resources/Prototypes/Recipes/Crafting/Graphs/improvised/makeshiftstunprod.yml
#	Resources/Prototypes/Voice/speech_emotes.yml
#	Resources/keybinds.yml
2024-10-19 14:53:37 +07:00
Remuchi
cebab3b3f6 [Upstream] Upstream. Yappie (#50)
* Fix Prize Balls' Pet Rock (#831)

# Description


This PR fixes an undetected bug in Prize Balls where an error would
occur if a prize ball tried to give out a BasePetRock.

---

No CL No Fun

Signed-off-by: ShatteredSwords <135023515+ShatteredSwords@users.noreply.github.com>
Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com>

* More/Better Tips (#844)

# Description

This PR adds several new Tips that are specific to Einstein-Engines. I
also removed some tips that are completely irrelevant to the game. These
should be as a whole, relevant only to SS14 and Einstein Engines. While
some joke tips are probably fine, they should still be game relevant.

# Changelog

🆑
- add: Several new tips have been added to the game, many of which
reference new content available on Einstein-Engines.

---------

Signed-off-by: VMSolidus <evilexecutive@gmail.com>
Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com>

* Automatic Changelog Update (#844)

# Conflicts:
#	Resources/Changelog/Changelog.yml

* Fix some Things with Interaction Verbs (#854)

# Description
Fixes:
- Interaction verbs being usable regardless of whether the user can
access the target (I checked for CanInteract but not CanAccess 😭), which
fixes #836
- Certain close-range verbs having a ridiculous 2-tile range (now it's
1.2, similarly to hugging and other things)
- Certain locale strings missing

This also separates verb checks into its own method in the interaction
verb system and adds more error messages instead of one generic "some
requirements are not met".

# Changelog
🆑
- fix: Fixed a couple issues with the new interaction verb system.

* Automatic Changelog Update (#854)

* Fix Colored Jumpskirts Actually Being Skirts (#848)

# Description

This matters for Birbs. All Colored Jumpskirts were incorrectly parented
to Jumpsuit and not Jumpskirt, meaning that Harpies couldn't wear them.
This fixes that issue.

# Changelog

🆑
- add: Due to NUMEROUS complaints, NanoTrasen has swapped the sticker
labels on all colored jumpskirts to correctly state that they are
infact, "Skirts", so now they can legally be worn by Harpies, Lamia, and
Arachne.

* Automatic Changelog Update (#848)

* Ports Trait Rebalance From Floof (#842)

# Description


This PR ports my trait balance changes from Floof. You can find the PR
for that repo at https://github.com/Fansana/floofstation1/pull/170.

---


# Changelog

🆑
- tweak: The cost of many traits have been updated
- tweak: A few traits have been tweaked

---------

Signed-off-by: ShatteredSwords <135023515+ShatteredSwords@users.noreply.github.com>
Co-authored-by: Fansana <116083121+Fansana@users.noreply.github.com>
Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com>

* Automatic Changelog Update (#842)

* Roboticist (#801)

# Description
By a (somewhat) popular request from floofstation, this adds the
roboticist job (each existing map gets 1 job slot, since robotics on
each of them is just one tiny room that's more similar to a broom closet
than a subdepartament).

The job is purely cosmetical and does not offer any new accesses since
that would require changing a lot of maps and would probably make being
a scientist in the absense of a roboticist miserable. If needed,
roboticists can always build blast doors on the entrance to robotics, as
someone has done before in my experience.

This also adds the robotics PDA, robotics ID card, robotics satchel,
backpack, and duffel (duffel icon taken from paradise station, rest of
the sprites is respective science bags recolored by me to match the
palette of the icon). This also increases the capacity of mystagogue's
science PDA box to incorporate the new PDA type.

<details><summary><h1>Media</h1></summary>
<p>


![image](https://github.com/user-attachments/assets/cb086058-8257-4281-82ad-0f59873a1308)


![image](https://github.com/user-attachments/assets/f9e9e1dd-567c-4d47-a778-5704b3a72265)


![image](https://github.com/user-attachments/assets/60bd6769-026e-4fdc-b5f3-825f99dd92a7)


![image](https://github.com/user-attachments/assets/54a27d9c-b91d-4115-b2d6-258a320d8093)


![image](https://github.com/user-attachments/assets/7168edd5-465a-49a7-99e6-5b1592beb3eb)

</p>
</details>

---

# Changelog
🆑
- add: A new Roboticist job has been added. The job does not offer any
new accesses, but lets you distinguish yourself from scientists.
Existing maps will need to be updated to support the new job.
- add: Added new PDA, ID, and bag variants for roboticists. The
mystagogue will now also find a roboticist PDA in their office.

---------

Signed-off-by: Mnemotechnican <69920617+Mnemotechnician@users.noreply.github.com>

* Automatic Changelog Update (#801)

* Loadouts V3 (#736)

# Description

Resolves #723
Resolves #708
Resolves #691
Resolves #671
Resolves #643

Adding/removing loadouts and categories (and trait stuff) will require
disconnecting and reconnecting to the server (or anything that will
reload the lobby UI) due to how I've done my caching.

---

# TODO

- [x] Test entity IDs from loadouts
- [x] Better Tab Container
	- [x] Scroll props
	- [x] Margin props
	- [x] Make vertical work
	- [x] Merge buttons
- [x] Subcategories
	- [x] Allow the same for traits (their tab is completely broken)
- [x] Give the Job Picker tab a BoxContainer
- [x] Different selected unusable color
- [x] Deselect unusable button
- Sort menu/Reverse sort direction button
- [x] Fix scroll resetting on updating
	- [x] Cache loadouts
- [x] Ensure everything that can affect reqs updates everything that
checks reqs
- [x] More Requirements
	- [x] Height
	- [x] Width
	- [x] Weight
	- [x] Gender
	- [x] Sex
	- Markings
	- [x] Logic
		- [x] And
		- [x] Or
		- [x] Xor
	- [x] Item groups
- [x] #643
- Something better than `Exclusive`
	- Allow picking slots for things to go in (hands and inventories too)
- [x] Add a background to the loadout spriteView
- [x] Get better style colors
---
- [ ] More PRs
- [ ] Remove duplicate command loadouts that are outside the command
folders/categories
	- [ ] Categorize job loadouts (By dept?)
- [ ] Fix [every
loadout](https://discord.com/channels/1218698320155906090/1218698321053356060/1279260210208440361)'s
IDs (who reviewed them??)
		- [ ] Make loadout ID migrations?

---

<details><summary><h1>Media</h1></summary>
<p>

## New loadouts/traits UI

<!--

![image](https://github.com/user-attachments/assets/3b296f66-2502-49fb-8e24-5a98117bd5e5)

![image](https://github.com/user-attachments/assets/48b1ac49-6afb-49d4-ba6e-03a2551f6dfa)

![image](https://github.com/user-attachments/assets/6c10f68c-a858-478c-a880-f1ac2cf5f033)
-->

![image](https://github.com/user-attachments/assets/9a9c3f64-6ba4-40ea-a89e-d5f57efcf7c0)

![image](https://github.com/user-attachments/assets/3b6f0a36-a474-4ca6-a7c8-90c13e3faa0b)

## NeoTabContainer allows changing the tab orientation

### https://youtu.be/krg8TJoQG3I

![image](https://github.com/user-attachments/assets/81491ad9-45bd-41ed-833e-7295a2216a04)

![image](https://github.com/user-attachments/assets/deb72919-7efe-4be9-a661-b12aa7dc6976)

</p>
</details>

---

# Changelog

🆑
- fix: The loadout/trait editors' performance has been improved by
100~1000x
- tweak: The character editor's tabs look, feel, and function much
better
- fix: Unusable loadouts/traits have an orange color when selected
- tweak: Loadout previews are now inside the button
- add: Added a button to remove any unusable loadouts (or traits) you
have selected
- add: Loadouts and traits can have subcategories, though only Command
loadouts use them at the moment
- fix: Fixed empty loadout categories not hiding
- fix: Fixed spacing on some loadout requirements' reason text
- fix: Fixed traits not updating after saving
# Conflicts:
#	Content.Shared/Customization/Systems/CharacterRequirements.Profile.cs
#	Resources/Locale/en-US/customization/character-requirements.ftl
#	Resources/Prototypes/Loadouts/Jobs/service.yml

* Automatic Changelog Update (#736)

* Fix For Discord Changelog (#869)

Signed-off-by: Evgencheg <73418250+Evgencheg@users.noreply.github.com>
Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com>

* Civilian Uniform Loadout Group (#872)

# Description

I'm going to split the other groups into their own PRs, next up is
Shoes. This PR adds all of the "Civilian" uniforms to the first of what
will be many new Loadout Groups, and now takes the opportunity to
significantly cut down on the loadout point costs of all non-job
uniforms. Now the overwhelming majority of them are 0 or 1 point, with
rare few examples being only 2 points. The tradeoff for this is that you
are limited to a single selection of civilian uniforms to take with you
to the station, presumably in addition to your job uniform as a spare
outfit, if desired.

Next up, shoes.

<details><summary><h1>Media</h1></summary>
<p>


https://github.com/user-attachments/assets/47804a59-189d-4432-bac9-0b010c50f61e

</p>
</details>

---

# Changelog

🆑
- add: The first of all new loadout groups has been added, Civilian
Uniforms. Only one civilian uniform can be selected, in exchange for...
- tweak: All non-job specific uniforms have had their points reduced
drastically, almost all of them down to 0 points, with only a tiny
handful at 2 points, and the rest as 1.

---------

Signed-off-by: VMSolidus <evilexecutive@gmail.com>
Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com>

* Shoes Loadout Group (#873)

# Description

This is the next PR after
https://github.com/Simple-Station/Einstein-Engines/pull/872
This time adding an item group for Shoes, and drastically cutting down
on the base cost of shoes to compensate.

# Changelog

🆑
- tweak: The cost of all shoes in loadouts has been reduced, in most
cases to 0.

---------

Signed-off-by: VMSolidus <evilexecutive@gmail.com>
Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com>

* Hat Loadout Group (#876)

# Description

Cheaper Hats

# Changelog

🆑
- tweak: All non-job specific headgear has been significantly reduced in
Loadout point costs, most of them to 0.

* Outerclothes Loadout Group (#877)

# Description

And now Outerwear. :)

# Changelog

🆑
- tweak: All non-job outerwear has had their Loadout point costs
significantly reduced.

* Gloves Loadout Group (#878)

# Description

Gloves Next. Woo.

# Changelog

🆑
- tweak: All gloves have had their Loadout point costs reduced, many to
0.

* Miscellaneous Item Groups (#880)

# Description

This is the last of the Loadout Item Group PRs I'm going to do for now.
This PR adds several more than the previous ones, primarily to split up
the Items tab into several distinct groups so as to push down the costs
of many items. In particular, the new groups are:

1. Smokes
2. Lighters
3. Instruments
4. Air tanks
5. Box Kits(Survival Boxes or Medkits)
6. Writables

Survival boxes sharing an Item Group with Medkits is kind of intentional
here. Both of them take up a SIGNIFICANT amount of your starting
inventory space. Now we can have free survival kits once again, but also
have as an option, where you can elect to spend some of your loadout
points to take a personal Medkit instead of a survival box. You can
think of it as an upgrade over a standard survival kit. :)

# Changelog

🆑
- tweak: Item groups for Smokes, Lighters, Instruments, Air Tanks,
SurvivalBoxes/Medkits, and Writable items have been added. All items in
these categories have received discounts to their costs, and in some
cases have become free.
# Conflicts:
#	Resources/Prototypes/Loadouts/items.yml

* Neck Loadout Group (#874)

# Description

And another one! This time Neck slot items. Sequel to
https://github.com/Simple-Station/Einstein-Engines/pull/872

# Changelog

🆑
- tweak: All neck slot Loadout items have had their costs significantly
reduced, most of them to 0.

---------

Signed-off-by: VMSolidus <evilexecutive@gmail.com>
Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com>

* Automatic Changelog Update (#872)

* Automatic Changelog Update (#874)

* Eyewear Loadout Group (#879)

# Description

Now for Eyes...
Last one to do is split apart the "Items" tab.

# Changelog

🆑
- tweak: Eyewear have had their loadout point costs significantly
reduced.

---------

Signed-off-by: VMSolidus <evilexecutive@gmail.com>
Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com>

* Masks Loadout Group (#875)

# Description

Yet another sequel to
https://github.com/Simple-Station/Einstein-Engines/pull/872
This time Masks

# Changelog

🆑
- tweak: All masks have had their loadout point costs substantially
reduced.

---------

Signed-off-by: VMSolidus <evilexecutive@gmail.com>
Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com>

* Automatic Changelog Update (#879)

* Automatic Changelog Update (#875)

* Update discord-changelog.yml (#881)

Signed-off-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com>

* Revert "[Feature] Short Construction System / Система Крафтов В Руках (#17)"

This reverts commit 5f67b5e429.

* [Feature] Shortcut Construction System (#861)

# Description

Interacting with some materials now opens up the radial menu with some
often used recipes. Port from White Dream.

---

# Why?

It looks cool I guess. Also required by Blood Cult.

---
<details><summary><h1>Media</h1></summary>
<p>


https://github.com/user-attachments/assets/8207ea19-f4a3-45e1-b6f2-c870b46b6837

</p>
</details>

---

# Changelog


🆑
- add: Interacting with some materials now opens the radial menu
containing some of the most used recipes of that material.

* Automatic Changelog Update (#861)

* fix: a few fixes

* Make Height Sliders Affect Your Bloodstream Volume (#858)

# Description
Something that just makes sense, this makes your effect character weight
affect your bloodstream volume. As a minimum size felinid you will get
33% of normal blood volume, whereas as something as huge as a lamia you
may get up to 3 times the normal blood volume.

The resulting volume of your bloodstream can be calculated as `V =
clamp(normal_volume * mass_contest ^ 0.6)` (assuming default
parameters), where mass_contest is the result of a mass contest between
your entity and the average humanoid. For average species like vulps,
this means that their bloodstream can become up to ~40% smaller than
normal (at minimum size), or up to 50% larger than normal (at maximum
size). For onis the range is shifted towards higher values, a maximum
size oni will have twice as much blood as an average human.

This has both drawbacks and advantages. For instance, having little
blood means you can bleed out easily, but at the same time it means it
will take way less blood packs/saline/iron/proteins to restore your
blood to the normal level. Opposite is also true, having more blood
means you will be harder to heal.

Also, this PR slightly refactors the HeightAdjustSystem to be more
flexible.

<details><summary><h1>Media</h1></summary>
<p>



https://github.com/user-attachments/assets/951c2391-09d8-4a4a-812b-a2394862fadd


</p>
</details>

# Changelog
🆑
- add: Your character size now affects your blood level. Smaller
characters will have less blood, and larger characters will have more.

---------

Signed-off-by: Mnemotechnican <69920617+Mnemotechnician@users.noreply.github.com>
Co-authored-by: VMSolidus <evilexecutive@gmail.com>
Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com>

* Automatic Changelog Update (#858)

* Change Slime Scream (#849)

# Description

This PR replaces slime_scream_f2.ogg with a modified version of
Voice/Human/femalescream_5.ogg. The original scream doesn't feel like it
belongs in SS14 with the other slime sounds (laugh, cry, sigh, etc).

---

# Changelog

🆑 router
- tweak: Female slimes no longer have movie screams.

* Automatic Changelog Update (#849)

# Conflicts:
#	Resources/Changelog/Changelog.yml

* Make Hugging/Petting Interactions Affect Mood (#823)

# Description
Something that was omitted in #733. Hugging and petting now give
positive moodlets.

The petting interaction was split into two: one for animals and one for
humanoids. The one for animals improves both your own mood and the mood
of the animal, whereas petting a humanoid only improves their own mood.
In addition to all that, being hugged and being pet do not stack.

<details><summary><h1>Media</h1></summary>
<p>


https://github.com/user-attachments/assets/47e8f722-44ee-4d03-a580-65a2946a1920

</p>
</details>

# Changelog
🆑
- tweak: Hugging and petting interactions now influence mood, just like
the old hugging.

---------

Signed-off-by: Mnemotechnican <69920617+Mnemotechnician@users.noreply.github.com>
Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com>

* Display Language Fonts/Colors in Chat Bubbles (#812)

# Description
4 FTL lines changed

Finally them native GC speakers will know what language to respond in
when speaking to us

<details><summary><h1>Media</h1></summary>
<p>


https://github.com/user-attachments/assets/68d1b1b2-373d-4f98-958d-3659b7cff440

</p>
</details>

# Changelog

🆑
- add: Chat bubbles now use the font & color of the language of the
message.

* TraitSystem Component Removals (Anomalous Positronics Trait) (#885)

# Description

This PR implements a new functionality for Traits, while also making
clever use of the new Loadouts Version 3.0 addition of logic gates.
Traits have been extended to now also allow for Component Removals,
ostensibly so that traits can remove species Innate traits. In theory
this could also be used to completely wipe a pre-existing component, and
then let the trait fully replace it with a new component.

To make use of this feature, I've added a new trait called Anomalous
Positronics, which allows for IPCs to "Buy off" their innate Psionic
Insulation, and thus allow them to be psionic. The previously existing
psionic traits that required you not be an IPC, now make use of new
logic gates to require that you are either not an IPC, or have the
AnomalousPositronics trait. Additionally, roundstart psion jobs, like
the Mystagogue, Mantis, Chaplain, also all now have a check for "Not
IPC, OR has AnomalousPositronics".

Finally, thanks to the logic gates, it's now possible to simultaneously
disallow the roundstart psions from buying Latent Psychic, while also
still allowing the Chaplain and Librarian to buy Natural Telepath.

# Changelog

🆑
- add: Traits now allow for full component removals, enabling traits
that directly remove innate species traits without the need to hardcode
new systems for it. Or, to allow species components to be fully removed
as preparation for being replaced with a new component.
- add: Anomalous Positronics has been added as a new trait. It removes
the psionic insulation from IPCs, allowing them to be affected by
psionics, as well as take roundstart psion jobs like the Mystagogue, and
also buying traits such as Latent Psychic.
- remove: NormalVisionComponent and NormalVisionSystem have been
removed. The NormalVision trait now uses
TraitSystem.RemoveTraitComponents to do its work.
- add: Chaplain and Cataloguer can now purchase Natural Telepath.

---------

Signed-off-by: VMSolidus <evilexecutive@gmail.com>
Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com>

* Cherry-Pick "Shrimp Mob for Metempsychosis (#862)" (#882)

# Description
Cherry-picks https://github.com/deltaV-Station/delta-v/pull/862 on
behalf of the author.

This was not tested; need someone to check if it actually works before
merging.

# Changelog
🆑
- add: A shrimp morphotype was added to the failure pool of the
metempsychotic machine.

---------

Signed-off-by: leo <136020119+leonardo-dabepis@users.noreply.github.com>
Signed-off-by: Mnemotechnican <69920617+Mnemotechnician@users.noreply.github.com>
Co-authored-by: leo <136020119+leonardo-dabepis@users.noreply.github.com>
Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com>
Co-authored-by: Null <56081759+NullWanderer@users.noreply.github.com>
Co-authored-by: VMSolidus <evilexecutive@gmail.com>

* Automatic Changelog Update (#812)

* Automatic Changelog Update (#882)

* Fix Translators Not Working Correctly Under Certain Conditions (#834)

# Description
This completely refactors the translator system, fixing various issues,
such as being unable to hold multiple translators at once normally,
entity languages not getting updated properly if a translator was
removed from it via stripping or similar, etc.

Also fixes translators being utter shitcode.

<details><summary><h1>Media</h1></summary>
<p>


https://github.com/user-attachments/assets/239f831b-7262-4980-932d-c6231dcecf72

</p>
</details>

# Changelog
🆑
- fix: Multiple issues with translators were fixed. Additionally, you
can now hold multiple handheld translators at once without issues.

* Automatic Changelog Update (#834)

* Re-Enable Recycler Gibbing (#822)

# Description

WAITER, WAITER, PLEASE FEED ME MORE FELINIDS.

# Changelog

🆑
- add: Recyclers can now once again eat people when emagged.
- add: The ability for emagged Recyclers to eat people is now controlled
by the CVar "reclaimer.allow_gibbing".
- add: Recyclers require power to eat people. No more dragging emagged
recyclers into crowds.

---------

Signed-off-by: VMSolidus <evilexecutive@gmail.com>
Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com>

* Adds a Toy Which Makes Bwoink Sound (#759)

<!--
This is a semi-strict format, you can add/remove sections as needed but
the order/format should be kept the same
Remove these comments before submitting
-->

# Description

<!--
Explain this PR in as much detail as applicable

Some example prompts to consider:
How might this affect the game? The codebase?
What might be some alternatives to this?
How/Who does this benefit/hurt [the game/codebase]?
-->

This adds a toy hammer based on the old BanHammer from ss13 which was a
joke toy that made a bwoink sound. It also had a really old description
which made minor fun of the russian translation changing it to
'bangammer' and 'reisin' which I decided to keep for the veterans.

---

<!--
This is default collapsed, readers click to expand it and see all your
media
The PR media section can get very large at times, so this is a good way
to keep it clean
The title is written using HTML tags
The title must be within the <summary> tags or you won't see it
-->

<details><summary><h1>Media</h1></summary>
<p>


![image](https://github.com/user-attachments/assets/802c1896-f175-4e39-8f2e-97f1df2e88ba)

![image](https://github.com/user-attachments/assets/39add23b-1503-41ec-b9ce-080cd5757677)


</p>
</details>

---

# Changelog

<!--
You can add an author after the `🆑` to change the name that appears
in the changelog (ex: `🆑 Death`)
Leaving it blank will default to your GitHub display name
This includes all available types for the changelog
-->

🆑
- add: Added bwoink hammer with bwoink sound

---------

Signed-off-by: VMSolidus <evilexecutive@gmail.com>
Co-authored-by: VMSolidus <evilexecutive@gmail.com>
Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com>

* Automatic Changelog Update (#822)

* AddPsionicPower Command (#807)

# Description

This PR adds a new console command for directly adding psionic powers to
an entity. Should an entity not already be psionic, this command will
additionally make them psionic.

# Changelog

🆑
- add: A new console command, AddPsionicPower has been added.

---------

Signed-off-by: VMSolidus <evilexecutive@gmail.com>
Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com>

* Automatic Changelog Update (#759)

* Automatic Changelog Update (#807)

* Fix Maps Missing Assistants (#838)

# Description

Glacier, Core, and Saltern were missing their assistant job slots(My
mistake, when the Linter said I needed to set the Overflow job, I
assumed it meant "Replace the [-1, -1] slot with the Overflow", but
apparently both are needed.

Additionally, Glacier, Core, and Saltern are now added to the Map Pool.

🆑
- add: Glacier, Core, and Saltern now have assistant job slots.
- add: Glacier, Core, and Saltern are now able to be voted on for map
selection.

* Automatic Changelog Update (#838)

* Update Clothing Assignments of Suit/Skirt (#857)

<!--
This is a semi-strict format, you can add/remove sections as needed but
the order/format should be kept the same
Remove these comments before submitting
-->

# Description

<!--
Explain this PR in as much detail as applicable

Some example prompts to consider:
How might this affect the game? The codebase?
What might be some alternatives to this?
How/Who does this benefit/hurt [the game/codebase]?
-->

Changes some outfits, notably the Operative Jumpskirt, Kimono,
Dark/Light Monastic Robes, and the Gladiator Uniform to be assigned as
skirts, rather than suits. This allows harpies to wear them. In
addition, the UnsensoredClothingSkirtBase base now possesses the
'ClothMade' tag, allowing moths to eat outfits with this base.

---

<!--
This is default collapsed, readers click to expand it and see all your
media
The PR media section can get very large at times, so this is a good way
to keep it clean
The title is written using HTML tags
The title must be within the <summary> tags or you won't see it
-->

# Changelog

<!--
You can add an author after the `🆑` to change the name that appears
in the changelog (ex: `🆑 Death`)
Leaving it blank will default to your GitHub display name
This includes all available types for the changelog
-->

🆑
- tweak: Fixes a few typos in outfit descriptions
- fix: The Kimono, Dark/Light Monastic Robes, Gladiator Uniform, and
Operative Jumpskirt should be properly considered jumpskirts, and are by
extension wearable for harpies.
- fix: Moths should be able to eat outfits with the
UnsensoredClothingSkirtBase parent.

* Americanize Contests System (#814)

# Description

I have updated the Contests System to make it safe to use by Americans.
This is accomplished by adding very helpful warning labels, as well as
restricting the Range of all its functions so that they cannot return
either a negative number, or a zero. Therefore, all Contests are now
perfectly safe to divide by.

# Changelog

🆑
- tweak: ContestsSystem(Mass Contest, Stamina Contest, Health Contest,
Mind Contest, Mood Contest, and Every Contest) have all been updated to
be safe to divide by, since it is no longer possible for them to ever
return 0. Instead they will just return
0.0000000000000000000000000000000000000000000001401298, so if you divide
by an unclamped contest, I hope you like your function randomly
returning the 32bit integer limit.
- add: Warning labels have been added to all Contests to make them
comply with the demands of the American consumer market.

* Step Trigger Minor Refactor (#884)

# Description

I made this PR in response to a bug report from Floof, where it was
discovered that a "Minimum Size Felinid or Harpy" is instantaneously
killed by mouse traps. Which confused me, because Felinids and Harpies
are intended to be immune to floor traps like landmines, glass, and
mouse traps. Then I discovered that mouse traps overwrite the step
trigger cancellation, meaning that mouse traps will just completely
ignore a Felinid/Harpy canceling the step trigger. Additionally, to my
endless frustration, the Felinid/Harpy floor trap immunity is handled by
a Tag and not a Component, which isn't really acceptable in this day and
age.

I decided to take a little bit of a different approach to this problem,
first by doing the usual code cleanup to EE standards. Then by adding a
new StepTriggerImmuneComponent. This component acts as an early-exit for
the entire StepTriggerSystem, immediately at the initial entrypoint,
during the CanTrigger bool. This component is given to Felinids and
Harpies by default, representing their "Extremely low density bodies"
having too much surface area and not enough mass to trigger floor traps.
Effectively, they are now working as originally intended, by having
immunity to setting off landmines.

Because we have a trait point system, and this is coincidentally also a
trait requested by Nuclear14, I have gone ahead and created a Trait that
gives this component to anyone willing to pay the points for it.

# Changelog

🆑
- fix: Felinids and Harpies will now correctly never set off floor
traps, such as landmines and mouse traps.
- add: Trap Avoider has been added as a new trait, allowing characters
to buy the innate ability to avoid floor traps. I would have named this
"Light Step", after the trait from Fallout that shares its name and
effect, but someone already gave that name to a different trait
entirely.

---------

Signed-off-by: VMSolidus <evilexecutive@gmail.com>
Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com>

* Automatic Changelog Update (#884)

# Conflicts:
#	Resources/Changelog/Changelog.yml

* Fix Logic Requirements Not Checking Inversion (#891)

* Split Arm And Leg Markings (#870)

# Description

It's time to finally rip off a bandaid, and cease fucking with awful
layer garbage and marking workarounds. This PR completely removes the
Arms and Legs marking categories, replacing them with:

1. Right Arm
2. Right Hand
3. Left Arm
4. Left Hand
5. Right Leg
6. Right Foot
7. Left Leg
8. Left Foot

Finally, removing harpy layer shitcode is within our grasp.

<details><summary><h1>Media</h1></summary>
<p>


![image](https://github.com/user-attachments/assets/7cb5cb2d-ec5a-4269-a29b-08eeabc5668b)


![image](https://github.com/user-attachments/assets/a5b8861d-ae25-45cb-96d7-2d4dbf17be98)

</p>
</details>

# Changelog

🆑
- add: Arm and Leg markings are now split between individual arms,
hands, legs, and feet.

* Automatic Changelog Update (#870)

* feat: перевод ченджлога

* fix: fix maid and hobo

* fix: fixed hobo and maids loadouts

---------

Signed-off-by: ShatteredSwords <135023515+ShatteredSwords@users.noreply.github.com>
Signed-off-by: VMSolidus <evilexecutive@gmail.com>
Signed-off-by: Mnemotechnican <69920617+Mnemotechnician@users.noreply.github.com>
Signed-off-by: Evgencheg <73418250+Evgencheg@users.noreply.github.com>
Signed-off-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com>
Signed-off-by: leo <136020119+leonardo-dabepis@users.noreply.github.com>
Co-authored-by: ShatteredSwords <135023515+ShatteredSwords@users.noreply.github.com>
Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com>
Co-authored-by: VMSolidus <evilexecutive@gmail.com>
Co-authored-by: SimpleStation Changelogs <SimpleStation14@users.noreply.github.com>
Co-authored-by: Mnemotechnican <69920617+Mnemotechnician@users.noreply.github.com>
Co-authored-by: Fansana <116083121+Fansana@users.noreply.github.com>
Co-authored-by: Evgencheg <73418250+Evgencheg@users.noreply.github.com>
Co-authored-by: router <messagebus@vk.com>
Co-authored-by: leo <136020119+leonardo-dabepis@users.noreply.github.com>
Co-authored-by: Null <56081759+NullWanderer@users.noreply.github.com>
Co-authored-by: Blu <79374236+BlueHNT@users.noreply.github.com>
Co-authored-by: Tirochora <leotabletdb@gmail.com>
2024-09-09 23:06:49 +07:00
Remuchi
24f26f21dd [Upstream] Апстрим фич и фиксов с Einstein Engines. (#39)
* Remove the Stupid Station Records Check From News (#739)

# Description
It was never used but caused annoyance all the time: the listening post
could never use the news console and ghosts/centcom officials/skeletons
could never publish news because of it.

(This was not tested, I recommend either waiting til I test it or making
someone else test it before merging)

# Changelog
🆑
- fix: You no longer need to have a station record to publish news.

Signed-off-by: Mnemotechnican <69920617+Mnemotechnician@users.noreply.github.com>

* Morale System (Port From White Dream) (#620)

# Description

This Feature has been graciously provided for Einstein Engines to port
from the White Dream codebase.

Mood is a system for tracking a character's current Mental State, which
fluctuates throughout the round as a result of various events that can
modify it. Each consisting of a single line event that can be trivially
inserted into any other system, and a yml configured "Moodlet", which is
applied to said character. Moodlets can be temporary or permanent, and
can also modify a characters mood in either positive or negative
directions. Things like, "Being Hungry", "Being Injured", "Petting a
cute animal", "Being Hugged", all create a Moodlet.

Mood can provide buffs or debuffs, primarily to movement speed. In fact
Mood's movement speed modifier actually completely replaces the movement
speed modifiers from Hunger & Thirst. Instead Hunger & Thirst create a
negative moodlet that persists until you eat and drink, which _can_ give
you a speed penalty. But you might for instance diminish the negative
effects by seeking out other positive sources. Or they might just get
worse, who knows what could happen?

# Media

Mood takes the form of a series of Moodlets, which modify your
character's internal Mood stat. It's kinda like a healthbar, but for
your mental state. Whenever you gain a moodlet, it appears in a popup.
White text for standard moodlets, red text for negative moodlets. By
clicking on your mood icon, text will show up displaying all of your
currently active Moodlets.

https://github.com/user-attachments/assets/3e9420bb-3a43-4d97-9127-31d704c15287

New traits!

![image](https://github.com/user-attachments/assets/4ddf968e-3dbd-44e1-a53e-79bb7b955d01)

Permission from Codeowners:
![morale code
permission](https://github.com/user-attachments/assets/c3d089fa-3e0f-4402-8757-c47e911c3554)

# TODO

- [x] Refactor the Crit Threshold modification, and Movement Speed
Modification to make it more granular.

# Changelog

🆑 VMSolidus & Skubman
- add: The Mood System has been ported from White Dream. Mood acts as a
3rd healthbar, alongside Health and Stamina, representing your
character's current mental state. Having either high or low mood can
modify certain physical attributes.
- add: Mood modifies your Critical Threshold. Your critical threshold
can be increased or decreased depending on how high or low your
character's mood is.
- add: Mood modifies your Movement Speed. Characters move faster when
they have an overall high mood, and move slower when they have a lower
mood.
- add: Saturnine and Sanguine have been added to the list of Mental
traits, both providing innate modifiers to a character's Morale.

---------

Signed-off-by: VMSolidus <evilexecutive@gmail.com>
Co-authored-by: Danger Revolution! <142105406+DangerRevolution@users.noreply.github.com>
Co-authored-by: Angelo Fallaria <ba.fallaria@gmail.com>
Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com>
# Conflicts:
#	Content.Server/GameTicking/Rules/TraitorRuleSystem.cs

* Automatic Changelog Update (#739)

# Conflicts:
#	Resources/Changelog/Changelog.yml

* Automatic Changelog Update (#620)

# Conflicts:
#	Resources/Changelog/Changelog.yml

* Psionic Refactor Version 2, Part 1 (#731)

# Description

Finally, after many long months, and this project surviving a complete
restart from square one, I have now made actual, real progress on an
actual proper "Refactor" of Psionics. This PR primarily moves ALL of the
logic for initializing Psionic Powers into highly configurable YML. The
initialization of psionics is no longer handled by components, and is
instead now handled entirely by a centralized system. To even further
cut down on component bookkeeping, nearly all logic needed for
generating Psions has been moved to the PsionicComponent. The
PotentialPsionicComponent now no longer exists.

Additionally, and although they are not currently implemented(I will do
so in the next PR after this), I have also laid the groundwork for
substantial reworks to the other aspects of Psionics. Power generation,
casting stats, feedback messages, non-action powers, and so on. It's
actually possible to now add a psionic power that does not add any
active abilities at all, rather by adding one or more components, thus
enabling purely Passive Powers. Or a combination of the two,
active-powers with a passive component.

# Media

https://github.com/user-attachments/assets/0fd6b9a4-7d84-4e6e-980a-9d7dd4264f6f

# Changelog

🆑
- add: Latent Psychic has been added as a new positive trait.
- tweak: Psionics have received a substantial refactor. While no new
powers have been added this patch, this initial refactor lays the
groundwork so that new psionic powers will be easier to create.
- tweak: Latent Psychic is now fully required to become psionic, or to
interact with Oracle.
- tweak: Psychics can now have more than one active power.
- remove: Mimes are no longer Psionic.
- tweak: Chaplain, Mantis, & Mystagogue all receive the Latent Psychic
trait for free, automatically.

---------

Signed-off-by: VMSolidus <evilexecutive@gmail.com>
Co-authored-by: Danger Revolution! <142105406+DangerRevolution@users.noreply.github.com>
Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com>
Co-authored-by: Pspritechologist <81725545+Pspritechologist@users.noreply.github.com>
# Conflicts:
#	Content.Server/Zombies/ZombieSystem.Transform.cs

* Automatic Changelog Update (#731)

* Fix Overlays (#756)

# Description

Overlays have a funny bug where the calls to update them are global.
Meaning if any single person gets a bad enough mood to greyscale
themselves, everyone globally gets greyscaled. This bug was also present
on Dogvision and Ultravision, and had the same cause. Frontier luckily
had a fix for those two, and the fix works here as well for the Mood
Overlay.

# Changelog

🆑
- fix: Fixed an issue where Overlays(Dogvision, Ultravision, Mood) would
apply globally to all entities when updating.

* Automatic Changelog Update (#756)

* Missing Psychic Trait Strings (#758)

# Description

I accidentally deleted these at some point, so here they are again.


![image](https://github.com/user-attachments/assets/c6216f11-f2bc-48a6-86ae-739de0cfe1df)

No changelog because I don't want to publicly admit the error. :)

---------

Signed-off-by: VMSolidus <evilexecutive@gmail.com>
Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com>

* Action Blacklists (#760)

# Description


![image](https://github.com/user-attachments/assets/febab792-59ca-4938-8f84-e4a94f2a5b31)

I noticed that EntityTargetAction prototypes have a Whitelist field, but
no Blacklist field. This turned out to be trivial to add, and now it's
no longer necessary for Psionic powers to hardcode in C# that they can't
affect anyone psionically insulated or Mindbroken. In total only 3
powers had this change, but new powers in the future that affect a
target can now arbitrarily blacklist any component(Most likely,
PsionicInsulation and Mindbroken. :))

All of this, just to remove 9 total lines of C# hardcoding. 

# Changelog

🆑
- add: Actions no longer need to hardcode in target blacklists, and can
now blacklist entities in YML. This is notably useful for Psionic
powers, which all share a common feature that they can't target people
with Psionic Insulation (Or have been Mindbroken).

* Automatic Changelog Update (#760)

* Psionic Powers Add Components With Arguments. (#763)

# Description

While coding another Psionic Power feature, I discovered that the
current implementation of iterating over components does not carry over
arguments for the components. So I copied over the method used by Traits
exactly-as-is, and just changed the names of the variables to
accommodate the PsionicSystem.

# Changelog

🆑
- add: PsionicPowers that add a Component now also allow for adding a
Component with Arguments. This works exactly like the trait system's
implementation of components.

* Automatic Changelog Update (#763)

* DeltaV/DS14 IPC Port (#744)

<!--
This is a semi-strict format, you can add/remove sections as needed but
the order/format should be kept the same
Remove these comments before submitting
-->

# Description

<!--
Explain this PR in as much detail as applicable

Some example prompts to consider:
How might this affect the game? The codebase?
What might be some alternatives to this?
How/Who does this benefit/hurt [the game/codebase]?
-->

Ported over IPC from DS14, with the fixes from DeltaV.

---

# TODO

<!--
A list of everything you have to do before this PR is "complete"
You probably won't have to complete everything before merging but it's
good to leave future references
-->

- [X] Port
- [ ] Check for errors (Local tests wouldn't run on this one)

---

<!--
This is default collapsed, readers click to expand it and see all your
media
The PR media section can get very large at times, so this is a good way
to keep it clean
The title is written using HTML tags
The title must be within the <summary> tags or you won't see it
-->

<details><summary><h1>Media</h1></summary>
<p>



</p>
</details>

---

# Changelog

<!--
You can add an author after the `🆑` to change the name that appears
in the changelog (ex: `🆑 Death`)
Leaving it blank will default to your GitHub display name
This includes all available types for the changelog
-->

🆑
- add: Added IPC as a playable species.

---------

Signed-off-by: Timemaster99 <57200767+Timemaster99@users.noreply.github.com>
Signed-off-by: VMSolidus <evilexecutive@gmail.com>
Co-authored-by: Daniela <43686351+Day-OS@users.noreply.github.com>
Co-authored-by: Danger Revolution! <142105406+DangerRevolution@users.noreply.github.com>
Co-authored-by: VMSolidus <evilexecutive@gmail.com>

* Automatic Changelog Update (#744)

* Update MoodSystem.cs (#761)

# Description

MoodSystem was lacking a Component Shutdown to yeet the alert, so it was
causing intermittent test fails.

---------

Signed-off-by: VMSolidus <evilexecutive@gmail.com>
Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com>

* Traits Refactor (#765)

# Description

I decided traits weren't flexible enough, so I refactored them to also
optionally add Actions(Activatable Abilities), and PsionicPowers(Going
through the PsionicAbilitiesSystem). Neither of these have any current
implementations, I'll leave that to other people. Trait Components are
by extension no longer a hard requirement, although if you add a blank
trait that adds nothing, you have only yourself to blame. But doing so
won't crash the game or throw an error anyway.

# Changelog

🆑
- add: Traits can now add Active Abilities to a character.
- add: Traits can now add Psionic Powers to a character.

* Automatic Changelog Update (#765)

* Made Stamres Show in Resistances View Take 2 (#767)

<!--
This is a semi-strict format, you can add/remove sections as needed but
the order/format should be kept the same
Remove these comments before submitting
-->

# Description

title

for some reason something went horribly wrong
[here](https://github.com/Simple-Station/Einstein-Engines/pull/766)

---

<details><summary><h1>Media</h1></summary>
<p>


![image](https://github.com/user-attachments/assets/a9e71b67-ae47-437f-a370-d25b6388d48d)

</p>
</details>

---

# Changelog

no cl no fun

---------

Co-authored-by: whateverusername0 <whateveremail>

* Minor Ifrit Health Rework (#762)

# Description
Closes #754

Ifrit is a fire spirit, he really shouldn't be taking 1.5x fire damage.
This makes sense and should help with players accidentally killing
themselves with the fire ball.
For balance, the cold damage modifier was changed to 0.5x, unsure if it
should be lower.

Minor passive regeneration has also been added, since there isn't
another way to heal other than the Mystagogue sitting there hitting them
with the book of mysteries.

# Changelog

🆑 
- tweak: Ifrit has received some damage resistance changes

---------

Signed-off-by: stellar-novas <stellar_novas@riseup.net>
Co-authored-by: VMSolidus <evilexecutive@gmail.com>

* Automatic Changelog Update (#762)

* Xenoglossy (#772)

<!--
This is a semi-strict format, you can add/remove sections as needed but
the order/format should be kept the same
Remove these comments before submitting
-->

# Description
Adds xenoglossy to the power pool. I originally planned it for
cataloguer but it looks like that doesn't exist anymore.

<!--
This is default collapsed, readers click to expand it and see all your
media
The PR media section can get very large at times, so this is a good way
to keep it clean
The title is written using HTML tags
The title must be within the <summary> tags or you won't see it
-->

# Changelog

<!--
You can add an author after the `🆑` to change the name that appears
in the changelog (ex: `🆑 Death`)
Leaving it blank will default to your GitHub display name
This includes all available types for the changelog
-->

🆑 Rane
- add: Added Xenoglossy to the psionic power pool.

---------

Signed-off-by: Danger Revolution! <142105406+DangerRevolution@users.noreply.github.com>
Co-authored-by: Danger Revolution! <142105406+DangerRevolution@users.noreply.github.com>
Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com>

* Automatic Changelog Update (#772)

* Increase Trait Point Granularity (#775)

# Description

Since we now have a LOT of Traits, and soon to be another fresh batch of
Traits coming in now that they've been refactored to offer even more
options, it's come up that Traits are kinda hard to balance with the
current combination of point costs and allotted starting points. To help
alleviate this problem, I've both doubled the point values of every
trait in the game, as well as doubled the default allotted starting
points. There is now more room to balance trait costs against each
other.

I have not however actually made use of the new range of point costs
yet, and would like to consult with other contributors and maintainers
on which traits need to be adjusted.

# TODO

- [ ] Go over trait point costs again to address balance.
- [ ] Do this again in 6 months when we have 200 traits.

# Changelog

🆑
- tweak: Trait points have been made more granular by both doubling the
available number of trait points, and increasing the base cost of all
pre-existing traits.

* Automatic Changelog Update (#775)

* Fix Heisentests (#778)

# Description

Attempt number 5000 to get the Heisentests to STOP.

---------

Signed-off-by: VMSolidus <evilexecutive@gmail.com>
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
Co-authored-by: Timemaster99 <57200767+Timemaster99@users.noreply.github.com>
Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com>

* Fix RGB Moths (#777)

# Description

Magic single line Yml Fix obtained by digging through DeltaV's Blame 
**GO!**

# Changelog

🆑
- tweak: Moths can now be colorful again.

* Automatic Changelog Update (#777)

* Remove DV AGPL License Headers (#781)

# Description

They're confusing.

Co-authored-by: Danger Revolution! <142105406+DangerRevolution@users.noreply.github.com>

* Return Of The Cataloguer (#779)

# Description

Cataloguer has returned to Epistemics as the newest 4th member of the
"Crew Aligned Wizards Club". The Cataloguer is a variation on the
Librarian role, which automatically starts with the new Xenoglossy
Psionic Power, which allows him to know and speak all languages.
Additionally, the Cataloguer is now once again a member of Epistemics
instead of Civilian, and has had Epi added to his access.

On all maps that previously did not have a Librarian spawner, one
Scientist spawner has been replaced with a Cataloguer.

# Changelog

🆑
- add: Cataloguer has been re-added to the game as a new roundstart
Psionic role. The Cataloguer is a unique role that will always start
with the Latent Psychic trait, as well as the new Xenoglossy power,
which allows him to know and speak all languages.

* Automatic Changelog Update (#779)

* Psionic Power Feedback Messages (#776)

# Description

This PR implements the previously planned feature whereby obtaining a
Psionic Power plays some form of notification to alert the player that
they have gained a new ability. Since some Psionics like Xenoglossy are
purely passive, it's very important to give an indication to players
what's going on. To that end, PsionicPowerPrototype has been expanded to
include new datafields related to Initialization Feedback. There are now
three kinds of feedback messages: Popup, Feedback, and Metapsionic.

All feedback will only play for powers obtained during the round, rather
than for entities that innately start with powers.

- Popups will appear over your character's head as a small, brief
message. These should be no more than a sentence at most.
- Feedback will appear in the Chat window as a message only visible to
the Psion themself. These can be as much as a paragraph in length.
- Metapsionic messages are coming in their own separate PR:
https://github.com/Simple-Station/Einstein-Engines/pull/774

In a separate PR, I also wish to add Audio feedback as well.

# Media

I apologize that the video has been bitcrunched to a point that the chat
window can't be read.


https://github.com/user-attachments/assets/11e30e91-8fc6-48a2-b6a5-9ecf7127065e

# Changelog

🆑
- add: Gaining a new Psionic Power can now display messages to alert the
player, both as a short popup, and optionally a lengthier message sent
to the user's Chat window.

---------

Signed-off-by: VMSolidus <evilexecutive@gmail.com>
Co-authored-by: Mnemotechnican <69920617+Mnemotechnician@users.noreply.github.com>

* Automatic Changelog Update (#776)

* Allow Playing Multiple Announcement Sounds at Once (#740)

# Description

@VMSolidus said he had issues with SuperMatter announcements not playing
correctly.

---

<details><summary><h1>Media</h1></summary>
<p>


https://github.com/user-attachments/assets/e0cbbe77-00ce-4c9e-837a-00c91fee8623

</p>
</details>

---

# Changelog

🆑
- fix: Announcements can play multiple sounds now (you can revert to the
old behavior in sound setting if you want though)

* Automatic Changelog Update (#740)

* Add Insulation to Robots (#773)

# Description

Soulless Robots didn't have PsionicInsulation, which meant they were
eligible targets for powers such as Mindswap. This is a pretty simple
fix.

# Changelog
🆑
- fix: Robots and other mechanical creatures are now correctly immune to
non-physical psionic powers.

* Implement Mind Contests (#757)

# Description

Now that the initial Psionic Refactor is out of the way, this is my
first new standalone Psionics PR, filling in the MindContest function
that was added over a month ago(but was set to always return 1f as a
placeholder).

Mind Contests are unique among the Contests System in that they do not
treat the lack of a Psionic Component as a failure condition, and
instead as a variable.

No changelog because MindContests are not currently used anywhere, all
I'm doing is adding the actual function logic.

* Added Language and Healing Components to IPC Entities (#786)

# Description

This pull request introduces two new components to the IPC entities:

1. **LanguageKnowledge**: This component allows IPCs to speak and
understand Galactic Common and RobotTalk. Previously, IPCs were limited
to Universal language, which caused communication issues with the crew.
With this addition, IPCs can now effectively communicate using the
Galactic Common and RobotTalk languages.

2. **WeldingHealable**: This component enables IPCs to heal themselves
using a welding tool. Given the nature of IPCs as robotic entities, this
feature is essential for self-maintenance and ensures they can stay
operational even after sustaining damage.

These changes aim to improve the functionality and immersion of IPCs
within the game, allowing them to better integrate and interact with
other entities while also providing them with the ability to
self-repair.

---

# TODO

- [x] Add `LanguageKnowledge` component to IPC entities to support
Galactic Common and RobotTalk.
- [x] Add `WeldingHealable` component to IPC entities for self-repair
with welding tools.

# Changelog

🆑
- add: Added the ability for IPCs to speak and understand Galactic
Common and RobotTalk languages.
- add: Enabled IPCs to heal themselves using welding tools via the
WeldingHealable component.

Signed-off-by: v0idRift <163446847+v0idRift@users.noreply.github.com>
Signed-off-by: VMSolidus <evilexecutive@gmail.com>
Co-authored-by: VMSolidus <evilexecutive@gmail.com>

* Automatic Changelog Update (#786)

* Fix supermatter.ftl (#790)

supermatter .ftl was broken, this fixes it.

<!--
This is a semi-strict format, you can add/remove sections as needed but
the order/format should be kept the same
Remove these comments before submitting
-->

# Description

<!--
Explain this PR in as much detail as applicable

Some example prompts to consider:
How might this affect the game? The codebase?
What might be some alternatives to this?
How/Who does this benefit/hurt [the game/codebase]?
-->

Easly fix the supermatter .ftl files that was not set correctly, why? i
dunno.
now its works.

---

# Changelog

<!--
You can add an author after the `🆑` to change the name that appears
in the changelog (ex: `🆑 Death`)
Leaving it blank will default to your GitHub display name
This includes all available types for the changelog
-->

🆑
- fix: Supermatter Annoncements

Signed-off-by: FoxxoTrystan <45297731+FoxxoTrystan@users.noreply.github.com>

* Automatic Changelog Update (#790)

* Fix Door Access (#798)

# Description
Somehow all the doors accesses broke. Seems somebody used the
AccessReader Component on the door instead of the door electronics. This
PR fixes all the doors that I could find that were broken.

# Changelog


🆑

- fix: Fixed most door accesses including: Lawyer, Mantis, Corpsman,
Boxer, Clown, Mime, Musician, Reporter, Library, Zookeeper, Salvage and
Psychologist.

* Automatic Changelog Update (#798)

* Cherry-Pick PR #27113 (#803)

# Description

This is a cherry-pick of
https://github.com/space-wizards/space-station-14/pull/27113
Which fixes a bug that has been reported here where the FixGridAtmos
command does not work.

# Changelog

🆑
- fix: Fixed the FixGridAtmos command.

Co-authored-by: Leon Friedrich <60421075+ElectroJr@users.noreply.github.com>

* Automatic Changelog Update (#803)

* Return Of The Pibble (#789)

# Description

This PR Rebases one of Nyanotrasen's funniest features: The Pibble.
I mean "Lab Mix", according to the description. Lab Mixes are comically
muscular dogs famous for their ability to attack and destroy Felinids,
Mailmen, and more recently Harpies. Watch out, there is also a rare
variant of Lab-Dachshund Mix, colloquially known as the "Ventbull",
which can occasionally be found roaming the station's vents. Please keep
your children, Felinids, and Birbs at a safe distance.

# Changelog

🆑
- add: Lab Mixes have been added to the game as a new random animal. Be
sure to keep Felinids and Harpies away from them.

---------

Signed-off-by: VMSolidus <evilexecutive@gmail.com>
Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com>

* Automatic Changelog Update (#789)

* Make IPC Sounds Great Again (#811)

# Description

This PR brings back Ekrixi IPC sounds, and rebases IPC sounds on top of
silicons.
Duplicate of #810 [due to](# "Due to your attempt to evade your ban, you
are banned indefinitely. You may appeal your ban, but only at least 6
months after your last ban evasion attempt, and only with a voucher of
good behavior from another SS13/SS14 server.") `master` branch skill
issues.

<details open><summary><h2>Media</h2></summary>
None
</details>

---

# Changelog

🆑 router
- add: Added more sounds to IPCs. IPCs can now also whistle, whirr,
beep, boop, ping, chime, buzz and buzz twice.
- fix: IPCs no longer have the default wilhelm sound.
- tweak: Silicon deathgasps are now darker.

* Automatic Changelog Update (#811)

* Add IPC's Missing Components (#793)

# Description

IPCs were missing Offer Item, Laying Down, and Carriable.

# Changelog

🆑
- fix: IPCs can now lay down, offer people items, and be picked up and
carried.

* Automatic Changelog Update (#793)

* Temporarily Disable Telegnosis (#795)

# Description

Telegnosis is broken, and so I'm temporarily disabling it. 

# Changelog

🆑
- fix: Temporarily disabled Telegnosis pending a lengthier update.

* Automatic Changelog Update (#795)

* IPC Missing Deathgasp (#800)

# Description

IPC were missing a deathgasp, so I wrote one for them.


![faridaiscute](https://github.com/user-attachments/assets/2e78dcc0-0163-4ec7-bf07-424dbd9d0a91)

# Changelog

🆑
- fix: IPC now have their own unique deathgasp message.

---------

Signed-off-by: VMSolidus <evilexecutive@gmail.com>

* Automatic Changelog Update (#800)

* Make Shoving and Stamina Great Again (#809)

# Description
First off, shoving was broken badly. It would roll shoving chance twice,
meaning that you had only about 6% chance to actually shove someone, and
it would only remove 6% of their stamina. Additionally, stamcrits have
always pissed me off by just how stupid they were. Also, some of the
code in the stamina system had highly misleading names, which has led
vmsolidus to implement mass contests the wrong way there.

This PR introduces changes to fix those issues:
- Shoving only rolls the shove chance once.
- Shoving deals 50 * shove chance stamina damage, as intended, without
depending on target's stamcrit threshold. In the future it should depend
on the weapon used (claws, fists, etc), but for now it's fine.
- Shoving advantage ranges were re-evaluated. Mass difference now can
give 0.5x-2x advantage, and health difference can give 0.75x - 1.25x.
Stamina difference still gives a neglectable 0.9x - 1.1x advantage.
- The stamina slowdown is now added and calculated dynamically using
MovementSpeedModifierSystem, which means the slowdown will no longer
disappear 3 seconds after receiving damage, and will not stack (however,
it now scales with stamina damage).
- When you exit stamcrit, you start at (100 - epsilon) stamina damage.
There still exists another check that prevents you from getting
re-stunned in the next ~5 seconds (maybe we should remove that too?),
but the slowdown and combat disadvantages will apply as they are
supposed to. This means you can no longer stand up after being exhausted
to the point of fainting on the ground and immediately rush back into
combat.

In addition to that, I also did the following:
- Re-added the mass contest to EscapeInventorySystem. It seems like it's
been nuked when the new mass contest system was being implemented and
never added back.
- Fixed the mass contest in carrying again

<!--
This is default collapsed, readers click to expand it and see all your
media
The PR media section can get very large at times, so this is a good way
to keep it clean
The title is written using HTML tags
The title must be within the <summary> tags or you won't see it
-->

<details><summary><h1>Media</h1></summary>
<p>



https://github.com/user-attachments/assets/076b3c3b-cdd1-4ec7-969d-2564c814a40e


</p>
</details>

---

# Changelog
🆑
- fix: Shoving once again works correctly, and mass difference matters a
lot when shoving someone.
- fix: The time it takes to escape one's hands once again depends on the
mass difference between the escapee and the holder.
- tweak: Exiting stamina crit now leaves you with 0 stamina. You can't
be immediately stunned again, but you will suffer from slowdown and
combat disadvantages!

* Automatic Changelog Update (#809)

* Thieves Outside of Traitor (#799)

# Description


Mirroring a PR from Floof that I was much too lazy to cherry-pick. This
just changes gamemodes outside of tator and rev to allow thieves if it
makes sense to.

---


# Changelog

🆑
- tweak: Thieves are now in Survival, Hellshift, and Extended.

Signed-off-by: ShatteredSwords <135023515+ShatteredSwords@users.noreply.github.com>
Co-authored-by: Danger Revolution! <142105406+DangerRevolution@users.noreply.github.com>

* Automatic Changelog Update (#799)

* Telepathy (Minor)Refactor (#819)

# Description

This PR re-introduces a feature that was present in the Psionic Refactor
version 1, that of the Natural Telepath trait. Where before Natural
Telepath was treated as an "Upgraded" version of Latent Psychic, now it
is a standalone trait that makes use of new functionality, where traits
can add psionic powers directly, as opposed to relying on just adding
components. To accomodate for this, the Telepathy functionality has been
modified such that it no longer makes the expectation that
PsionicComponent users have the ability to coherently speak
telepathically, and instead checks for a specific TelepathyComponent.
Since Telepathy is added to a Psion via their ActivePowers list, it is
also eliminated when the Psion is mindbroken.

<details><summary><h1>Media</h1></summary>
<p>


![image](https://github.com/user-attachments/assets/b017b027-d283-484e-812e-37804d839c4a)

</p>
</details>

# Changelog

🆑
- add: TelepathyComponent has been split off from the PsionicComponent,
now as it's own standalone feature.
- add: Telepathy has been added as a new Psionic Power
- add: Natural Telepath has returned from Psionic-Refactor V1, now using
new functionality from the trait system that allows traits to buy
psionic powers directly.
- add: Latent Psychics who have neither bought Natural Telepath, nor
acquired Telepathy during the round, can sometimes hear snippets of
conversation from telepathic chat.
- tweak: The cost of Latent Psychic has been reduced from 6 to 4 points,
this is to accommodate for the loss of Telepathy as a bonus feature for
all Psionics. Since Natural Telepath is a 2 point trait, this gives a
net 0 change in trait points for anyone who wishes to keep being a
roundstart Telepath.
- tweak: Psionic Mantis, Mystagogue, Chaplain, and Cataloguer are all
Naturally Telepathic, and thus get the new trait for free.

* Automatic Changelog Update (#819)

* Psionic Insulation Trait (#820)

# Description

This PR brings back the x-Waveform Misalignment trait from Psionic
Refactor version 1. There's not really much to say here. Having this
trait means that you are completely immune to most psionic powers and
effects, with the only exception of the physical effects of Elementalist
abilities. It is also an extraordinarily expensive trait, the most
expensive in the game by far.

This trait will get even more useful when Cultists, Wizards, and
Heretics are brought into the game.

# Changelog

🆑
- add: x-Waveform Misalignment has been rebased from the Psionic
Refactor v1. x-Waveform Misalignment is an extraordinarily expensive
trait that grants full immunity to nearly all psionic powers and
effects, both positive and negative.

---------

Signed-off-by: VMSolidus <evilexecutive@gmail.com>

* Automatic Changelog Update (#820)

* New Interaction System (#733)

# Description
This implements the New Interaction Verb System™©, designed to allow
defining verbs using yml and make adding new verbs way easier than it
was before. This was initially designed just to bring back generic no-op
interactions like hugging, but can now be used to create way more unique
interactions for all the different entities.

In the core of the system lies InteractionVerbPrototype. Besides
defining the obvious qualities of the verb itself, such as the name,
description, interaction constraints, it also has several important
properties:
- The requirement of the verb - what is required for the verb to show up
as "enabled" in the context menu and be allowed to be performed. There's
just one requirement slot, but using the ComplexRequirement class you
can use multiple requirements and choose whether they are combined via
boolean or, boolean and, or something in-between.
- The action of the verb - it defines its own IsAllowed (whether the
action is applicable to the target entity at all), CanPerform (called
before and after the potential do-after), which defines whether this
exact attempt at performing the action succeeds and shows a success
popup, or fails and shows a fail popup, and finally Perform, which tries
to perform the action and return a boolean result, which determines...
well, what was stated before. Similarly to requirements, there are
complex and conditional actions which can be combined into whatever
monstrousity you can imagine... In fact, it is entirely possible to
build a turing-complete programming language out of actions!
- Effects, specifically three of them: one that is shown when the
interaction performs successfully, one that is shown when it fails, and
one that is shown when the do-after for the interaction begins
succesfully (which means the first CanPerform check of the verb has
succeeded). Each one of them defines a popup (configuration for which is
stored in a different prototype) and a sound. Those are also designed to
be highly customizable: you can choose who sees the popup and where, and
more.

Verbs can be global or local. Global verbs are added to any entity
should it meet the prerequisites and pass all the necessary checks
(which are also designed to be highly configurable). Local verbs are
defined in OwnInteractionVerbsComponent and InteractionVerbsComponent of
the user and target respectfully.

At the moment of writing there are 8 built-in global verbs and 1
non-global verb, not including abstract verbs:
- 3 no-op actions that are made for RP purposes, that is looking at
someone, hugging someone, petting someone. The latter two may be later
used to modify the target's morale should the PR for it be merged.
- 2 actions related to standing: one for forcing someone down, and one
for helping them get up, waking them up and removing 2.5 seconds of stun
in addition to that (before you could click someone with empty hand to
remove 1.5 seconds of stun - I removed that in favor of the new system)
- 1 action for making someone who's laying down (on the bed or
otherwise) to sleep.
- 1 actions for falling asleep yourself (no need for bed or bag or
whatever to tell you that you can sleep - this does not provide any
healing properties or anything like that, purely an RP feature).
- 1 action for pinching yourself - made simply with the intent of
testing some possibilities of the new system, I decided to keep it
because it's a bit funny.

Local actions include:
- An action for knocking on windows, doors, windoors, computers,
machines.

More are to be added to this list as the progress continues.

# TODO
- [X] Implement the core of the system
- ~~Add more, way more actions. Possible ideas include:
[slapping/kicking someone, hugging toys/plushies, pressing random
buttons on a computer, ... ]. I could use some ideas for that.~~ -
skipping for now, we can do it in follow-up prs to clutter this one
less.
- [X] Port all InteractionPopupComponents to the new system, and remove
their old usages from non-animals.
- [X] Introduce contests and a way to configure them (could reuse
RangeSpecifier for that; certain actions such as pushing down/helping up
would benefit a lot from this).
- [X] Hide chat logs for people who cannot see the action being
performed.
- [X] Implement cooldowns
- [ ] Cleanup.

<details><summary><h1>Media</h1></summary>
<p>

Note: this video was made before a few important fixes were made.


https://github.com/user-attachments/assets/17b616dd-4bc8-4af3-916c-6a5d16c77064

Newer video - demonstrates various actions and shows that chat logs
cannot be seen if the source of the logged popup is outside the view.


https://github.com/user-attachments/assets/d6228855-fb7f-45d1-812f-56afe10f3f86

</p>
</details>

---

# Changelog
🆑
- add: A new interaction system has been implemented. The right-click
menu now provides a wide variety of different interactions with
different entities. Some old default interactions, such as hugging,
knocking, fence rattling, have also been moved to that system.

---------

Signed-off-by: Mnemotechnican <69920617+Mnemotechnician@users.noreply.github.com>

* Automatic Changelog Update (#733)

* feat: translation for new interaction system

* fix: fix interaction system changing state action to ours

* Glacier Real (#1169) (#728)

* glacier real

* troll

* atmosia tweaks

* 1 less can of plasma not too op

* replace troll generator with solar crate

* add StationSurface to glacier

* add surface map

* biome stuff upstream #28017

* unpause after loading

* fix no terrain

* comment out the surface spawning

* shipyard

* glacier justiceroid

* updateprototype and cleanup

* fix random shit

* untroll

* courier

* add to test :trollface:

* fix

* futureproofing

* hot loop inlet lmao

* tweak some pumps in atmosia

* carpy and make salv locker lighting better

* Edit lights, move salv dock, add justice maints, edit entity names for
casing consistency, other minor edits

---------

<!--
This is a semi-strict format, you can add/remove sections as needed but
the order/format should be kept the same
Remove these comments before submitting
-->

# Description

Ports Glacier from DeltaV. Justice department has been yeeted.

# Changelog

🆑
- add: Glacier Returns.

---------

Co-authored-by: deltanedas <39013340+deltanedas@users.noreply.github.com>
Co-authored-by: Velcroboy <velcroboy333@hotmail.com>

* Automatic Changelog Update (#728)

# Conflicts:
#	Resources/Changelog/Changelog.yml

* Rebase Saltern (#804)

# Description

Saltern, now featuring a full Epistemics department, and a Supermatter
engine. :)

<details><summary><h1>Media</h1></summary>
<p>


![Saltern-0](https://github.com/user-attachments/assets/10de83fa-5ddb-47fe-b62f-3441314225be)

</p>
</details>

# Changelog

🆑
- add: Saltern has been added to the map rotation. Now featuring a
compact Supermatter engine, full Epistemics department, and a
significantly expanded Chapel and Library.

* Automatic Changelog Update (#804)

* Core Supermatter (#792)

# Description

**Walks into a room**
**Slaps down CORE, but with Supermatter**
**Doesn't elaborate**
**Leaves**

<!--
This is default collapsed, readers click to expand it and see all your
media
The PR media section can get very large at times, so this is a good way
to keep it clean
The title is written using HTML tags
The title must be within the <summary> tags or you won't see it
-->

<details><summary><h1>Media</h1></summary>
<p>


![Core-0](https://github.com/user-attachments/assets/4fbb8e6d-b4b8-4c73-b048-7349711a624a)


![image](https://github.com/user-attachments/assets/d5c37ac8-e500-404e-a0ad-520a68ca6d8e)

</p>
</details>

# Changelog

🆑
- add: Core has been added to the list of maps in rotation. This time
featuring a custom Supermatter Engine

* Automatic Changelog Update (#792)

* Fix InnatePsionicPowers For Mapped Entities (#824)

# Description

InnatePsionicPowers needed to be moved from ComponentStartup to
MapInitEvent, which is a deceptively named event that ALSO functions
identically in use to ComponentStartup, except that it's safe to use for
entities that are mapped in, in addition to joining the round or being
spawned in. Whereas ComponentStartup isn't allowed to modify or add
components for any entity that is mapped(which includes Spawners
apparently).

This change allows for entities like Oracle and Sophia to make use of
InnatePsionicPowers, which is done by request from Rane, who for
mysterious reasons wishes for the two divine statues to be both
Prayable, and have the Noospheric Zap Power.

I have also verified by ingame testing that this does infact apply to
people who join after the map is initialized, as well as things
pre-existing on the map. So Oracle still gets her powers, while a
latejoining Mystagogue still gets his.

# Changelog

🆑
- fix: InnatePsionicPowers now operates on MapInitEvent instead of
ComponentStartup, meaning that it can now be safely used on entities
that are mapped in instead of spawned.
- add: Oracle and Sophia are now recognized as Divine, and as such are
creatures that can be prayed to.

* Automatic Changelog Update (#824)

* Update Credits (#837)

This is an automated Pull Request. This PR updates the GitHub
contributors in the credits section.

Co-authored-by: SimpleStation Changelogs <SimpleStation14@users.noreply.github.com>

* Disable Mood In Debug (#806)

# Description

MoodSystem has a Race Condition against DeleteAllThenGhost.

# TODO

- [ ] Run the tests 10 times in a row to see if DeleteAllThenGhost will
appear.

* Diagonal Window Smoothing (#805)

# Description

Diagonal windows weren't updated to use the new smoothing when we added
a bunch of new sprites designed around connected textures. This PR fixes
that for all diagonal windows.


![image](https://github.com/user-attachments/assets/4a54a00f-32d6-4365-ad0a-d96ecdbe6114)

# Changelog

🆑
- add: Diagonal windows now use connected textures.

---------

Signed-off-by: VMSolidus <evilexecutive@gmail.com>

* Automatic Changelog Update (#805)

* Maximize Default Description Limits (#788)

# Description

The current in game UI can reasonably support names up to 48 characters
in length, as well as descriptions up to 1024 characters long. Any
longer, and the UI requires a scroll bar. This change is present on
Cosmatic Drift, which uses the same character UI we currently have. I've
had many people requesting this change, and while I am aware that we
wish to at some point update to a new character UI(such as Parkstation's
UI), but a stopgap here is still nice, and it's just two Const
variables.

# Media


![image](https://github.com/user-attachments/assets/d68c3e05-9659-464b-8fb1-8de7e41a674b)

# Changelog

🆑
- tweak: Character names can now be up to 48 characters in length.
- tweak: Character descriptions can now be up to 1024 characters in
length. This is the maximum size descriptions can be without the menu
having a scroll bar. And while we'd like it to be bigger, we're going to
want to get a new UI for this in the future!

* Automatic Changelog Update (#788)

* Bot for Changelog (#833)

🆑
- add: Changelogs should be shown in Discord now

---------

Signed-off-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com>
Co-authored-by: TAZIKLIK <73418250+TAZIKLIK@users.noreply.github.com>
Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com>

* Update actions_changelogs_since_last_run.py (#841)

Signed-off-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com>

* Added Jukebox (#26736) (#802)

<!--

-->

# Description

<!--

-->

Adds super cool super nice Jukebox to the bar! Ran off .ogg files, can
use any royalty free song.



---
<!--
-->

<details><summary><h1>Media</h1></summary>
<p>

![Example Media on] 
![Screenshot 2024-08-26
061947](https://github.com/user-attachments/assets/352a0491-5cec-4b03-949b-8407aa858cb8)

</details>

---

# Changelog

<!--

-->

🆑 Kacey, Nova
- add: Added Jukebox with basic songs.

---------

Signed-off-by: VMSolidus <evilexecutive@gmail.com>
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
Co-authored-by: iNVERTED <alextjorgensen@gmail.com>
Co-authored-by: DJBIGYAPPA420 <antoniobryandiii@gmail.com>
Co-authored-by: VMSolidus <evilexecutive@gmail.com>

* Automatic Changelog Update (#802)

# Conflicts:
#	Resources/Changelog/Changelog.yml

* remove: wrong changelog

* remove: wrong changelog

* fix: a few more incorrect translations

* Psionic Extraplanar Creatures (#829)

# Description

Certain things in the game were intended to be classed as Psionic(And
mostly without powers), but were apparently lacking the components. To
clarify, ANYTHING that comes from an alternate layer of reality,
alternative plane of existence, extra dimensions, other universes,
bluespace, etc, is intended to have a PsionicComponent to abstract
represent their nature as a magical being of some variety. The
importance of this is largely related to the use of Metapsionics to
detect them, but also for the valid target lists for Anti-Psychic
abilities, such as the bonus damage from the Anti-Psychic Knife.

While here, I've also added the "Loto Oil Slime" from Psionic Refactor
Version 1, now that Reagent Slimes(as Extraplanar creatures brought to
this world by Liquid Anomalies) have a PsionicComponent.

needs https://github.com/Simple-Station/Einstein-Engines/pull/824

# Changelog

🆑
- add: Revenants, Reagent Slimes, and Ore Crabs are now considered to be
Psionic(But cannot gain powers randomly). This is due to their status as
"Magical And/Or Extraplanar Creatures", which makes them valid targets
for anti-psychic abilities such as the Psionic Mantis' Anti-Psychic
Knife.
- add: Some Reagent Slimes can now contain Lotophagoi Oil.

* Automatic Changelog Update (#829)

* Cloning Refactor (#735)

# Description

Since Cloning code is effectively abandonware by it's original
codeowners, and I was the last person in this entire game to update it,
I am technically the codeowner of Cloning. And by extension, it's also
my responsibility to maintain the Cloning code. I've been putting this
off for awhile due to how busy I've been with other projects, but since
I'm now waiting on all my other refactors to be reviewed, I decided to
finally sit down and comprehensively refactor Cloning.

In addition to massive substantial code cleanup(Cloning machines no
longer run on Frametime for one!), here's most of the changes.

- Cloning Pods must be powered for the entire 30 second duration of the
cloning process.
- Said "30 second duration" is no longer hardcoded. Although no methods
currently exist to reduce it. I plan on revisiting this after I bring
back Machine Upgrading.
- Cloning can now FAIL partway through. If the cloning pod is Depowered,
Unanchored, or Emagged, it will automatically swap to the "Gore" state.
- When in a Gore state, Cloning Pods will destroy the entity they were
trying to clone, replacing them with a pool of blood and ammonia that
scales with the mass of the entity that was to be cloned!
- Clones come out of the pod with a significant quantity of Cellular
damage, and are almost always in need of resuscitation. Consider using
Cryogenics to "Finish" your clones. Doxarubixadone is literally named
after this process, and is a perfectly suitable cryo chem for
resuscitating clones.

<details><summary><h1>Media</h1></summary>
<p>

New gore sprites for the Metem machine, because it can now have gore
mode.
![Metem gore
spites](https://github.com/user-attachments/assets/7cc06ce2-c8eb-413c-b996-85e555b67db3)


</p>
</details>

# Changelog

🆑
- add: Cloning & Metempsychosis Machines have been refactored!
- add: Cloning can now fail at any point during the cloning process,
turning the would-be clone into a soup of blood and ammonia.
- add: "Clone Soup" scales directly with the mass of the entity you're
attempting to clone. Fail to clone a Lamia, and you'll be greeted with
an Olympic swimming pool worth of blood when the machine opens.
- add: Cloning will fail if at any point during the procedure, the
machine is depowered, unanchored, or emagged.
- add: Clones come out of the machine with severe Cellular damage.
Consider using Doxarubixadone in a Cryo tube as an affordable means of
"Finishing" clones.
- tweak: Cloning Time is now increased proportionally if an entity being
cloned is larger than a standard human(smaller entities are unchanged)
- tweak: The cost to clone an entity can now be configured on a
per-server basis via CCVar "cloning.biomass_cost_multiplier"
- tweak: The Biomass Reclaimer can now be toggled to round-remove
ensouled bodies or not via CCVar "cloning.reclaim_souled_bodies"
- add: The effects of Metempsychosis now scale with a Psion's relevant
caster stats. More powerful psychics are more likely to get favorable
results from being forcibly reincarnated.

---------

Signed-off-by: VMSolidus <evilexecutive@gmail.com>
Co-authored-by: Pspritechologist <81725545+Pspritechologist@users.noreply.github.com>
Co-authored-by: Danger Revolution! <142105406+DangerRevolution@users.noreply.github.com>
Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com>

* Automatic Changelog Update (#735)

* Delete All Then Ghost Fault Tolerance (#787)

# Description


![image](https://github.com/user-attachments/assets/4135c3fa-d2e0-41ca-b8f4-49e149d43ef3)

I'm putting this here as an option to deal with our Heisentest problems,
by making the tests "Fault-Tolerant" wherever practical, but I don't
want this merged without Death and Psprite agreeing to this. For the
most part I believe that these tests are failing because they are
essentially checking that "Random events are not creating entities", by
creating their own enforced Race Conditions. This particular test is
repeatedly failing because the Mood System has no way of deducing that
it's in a test. Even though the alleged issue is a nothingburger.


![image](https://github.com/user-attachments/assets/777b31f1-87a7-4eee-8a62-993acb322315)

Tests absolutely shouldn't have been designed around race conditions.

# Changelog

No changelog because this isn't playerfacing.

* Update Issue Templates (#797)

# Description

<!--
Explain this PR in as much detail as applicable

Some example prompts to consider:
How might this affect the game? The codebase?
What might be some alternatives to this?
How/Who does this benefit/hurt [the game/codebase]?
-->

Rewrites the issue templates and removes the redundant security
vulnerability issue

Also, sorry Death, titles are now sentence case to maintain consistency
with the auto generated security policy one

Blame GitHub not me </3

---

<!--
This is default collapsed, readers click to expand it and see all your
media
The PR media section can get very large at times, so this is a good way
to keep it clean
The title is written using HTML tags
The title must be within the <summary> tags or you won't see it
-->

<details><summary><h1>Media</h1></summary>
<p>
Here's the old one, can't make issues on a fork so I can't show how it
looks now.

![image.png](https://github.com/user-attachments/assets/ae8319ed-b66c-4415-9f6d-1048ddc53e07)

</p>
</details>

---

# Changelog

<!--
You can add an author after the `🆑` to change the name that appears
in the changelog (ex: `🆑 Death`)
Leaving it blank will default to your GitHub display name
This includes all available types for the changelog
-->

N/A

Co-authored-by: Danger Revolution! <142105406+DangerRevolution@users.noreply.github.com>

* Add PR URL to Changelogs and Make Author a Header (#843)

🆑
- add: New changelogs should now show links to their PRs
- tweak: Changelog authors should now be a header instead of bold text
- fix: Changelogs shouldn't send random amounts of old changelogs

---------

Signed-off-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com>

* Automatic Changelog Update (#843)

* Update actions_changelogs_since_last_run.py (#846)

string didn't become int
🆑
- fix: oatnsdaoersoaetaroeoertnsirlea

Signed-off-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com>

* Psychognomy (#808)

<!--
This is a semi-strict format, you can add/remove sections as needed but
the order/format should be kept the same
Remove these comments before submitting
-->

# Description
Psychognomy is a passive power that gives you a descriptor on the origin
of a telepathic message. There's enough of them that are ambiguous
enough. I also changed Oracle and Sophia a little bit, giving them
innate psionic powers.

🆑 Rane
- add: Added Psychognomy.
- tweak: Reverted Sophia name change.
- tweak: Minor tweaks to psionic chat eligibility and formatting.
- add: Some new utility has been added to player-controlled Oracle or
Sophia. NPC functionality later :^)

---------

Signed-off-by: VMSolidus <evilexecutive@gmail.com>
Co-authored-by: VMSolidus <evilexecutive@gmail.com>

* Automatic Changelog Update (#808)

# Conflicts:
#	Resources/Changelog/Changelog.yml

---------

Signed-off-by: Mnemotechnican <69920617+Mnemotechnician@users.noreply.github.com>
Signed-off-by: VMSolidus <evilexecutive@gmail.com>
Signed-off-by: Timemaster99 <57200767+Timemaster99@users.noreply.github.com>
Signed-off-by: stellar-novas <stellar_novas@riseup.net>
Signed-off-by: Danger Revolution! <142105406+DangerRevolution@users.noreply.github.com>
Signed-off-by: v0idRift <163446847+v0idRift@users.noreply.github.com>
Signed-off-by: FoxxoTrystan <45297731+FoxxoTrystan@users.noreply.github.com>
Signed-off-by: ShatteredSwords <135023515+ShatteredSwords@users.noreply.github.com>
Signed-off-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com>
Co-authored-by: Mnemotechnican <69920617+Mnemotechnician@users.noreply.github.com>
Co-authored-by: VMSolidus <evilexecutive@gmail.com>
Co-authored-by: SimpleStation Changelogs <SimpleStation14@users.noreply.github.com>
Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com>
Co-authored-by: Timemaster99 <57200767+Timemaster99@users.noreply.github.com>
Co-authored-by: Daniela <43686351+Day-OS@users.noreply.github.com>
Co-authored-by: Danger Revolution! <142105406+DangerRevolution@users.noreply.github.com>
Co-authored-by: username <113782077+whateverusername0@users.noreply.github.com>
Co-authored-by: stellar-novas <stellar_novas@riseup.net>
Co-authored-by: Rane <60792108+Elijahrane@users.noreply.github.com>
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
Co-authored-by: v0idRift <163446847+v0idRift@users.noreply.github.com>
Co-authored-by: FoxxoTrystan <45297731+FoxxoTrystan@users.noreply.github.com>
Co-authored-by: Fansana <116083121+Fansana@users.noreply.github.com>
Co-authored-by: Leon Friedrich <60421075+ElectroJr@users.noreply.github.com>
Co-authored-by: router <messagebus@vk.com>
Co-authored-by: ShatteredSwords <135023515+ShatteredSwords@users.noreply.github.com>
Co-authored-by: deltanedas <39013340+deltanedas@users.noreply.github.com>
Co-authored-by: Velcroboy <velcroboy333@hotmail.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Evgencheg <73418250+Evgencheg@users.noreply.github.com>
Co-authored-by: TAZIKLIK <73418250+TAZIKLIK@users.noreply.github.com>
Co-authored-by: DJB1gYAPPA <whyeven42@gmail.com>
Co-authored-by: iNVERTED <alextjorgensen@gmail.com>
Co-authored-by: DJBIGYAPPA420 <antoniobryandiii@gmail.com>
Co-authored-by: Pspritechologist <81725545+Pspritechologist@users.noreply.github.com>
2024-09-06 02:58:42 +07:00
Mr. 27
c70c750e1b add ratvar to ion storm laws (#26833)
Praise Ratvar
2024-07-11 21:34:21 -07:00
Hannah Giovanna Dawson
383022f8e3 Ion Storm Laws Review (#26703)
* Ion Storm Laws Review

Have reviewed the Ion Storm law dictionary
and tidied it up.

Specifically I've tried to keep the same number
of entries in each section, or slightly
increased them, where I've removed or
altered a string.

Of note, specific colours and "rainbow" have been
removed from adjectives and replaced with words
like "Cheese-Eating", as colours are kinda boring
themselves and they've been a cause of a few
accidentally-racist laws.

* Resolve some feedback.

* Remove the pull request joke, noooooo

* Re-add big bite burgers as they are actually a thing

* Append some more suggestions
2024-07-11 21:34:21 -07:00
Ed
c09868257d Infinity books (#25840)
* setup text data

* roundstart reshuffling keywords with gibberish words

* saved data categorized

* add book with hints

* start redrawing books

* +4 book design

* +books +random visual upgrade

* finish first file

* finish lore file

* finish with books.rsi now authorbooks.rsi...

* aurora! and some fix

* nuke author books

* speelbuke update

* finish respriting work

* fix scientist guide visual

* setup datasets

* setup stupid funny random story

* restore author books, upgrade hint generation

* add variety to story generator

* add learning system

* minor textgen edit

* file restruct, hint count variation

* more restruct

* more renaming
add basis learning system logic. Spears locked for special book for test.

* nuke all systems, for splitting PR gods

* typo fix

* update migration with deleted books

* add random story books to maint

* Update construction-system.ftl

* Update Resources/Prototypes/Datasets/Names/books.yml

Co-authored-by: chromiumboy <50505512+chromiumboy@users.noreply.github.com>

* Update Resources/Prototypes/Datasets/Names/books.yml

Co-authored-by: chromiumboy <50505512+chromiumboy@users.noreply.github.com>

* Update Resources/Prototypes/Datasets/Names/books.yml

Co-authored-by: chromiumboy <50505512+chromiumboy@users.noreply.github.com>

* Update Resources/Prototypes/Datasets/Names/books.yml

Co-authored-by: chromiumboy <50505512+chromiumboy@users.noreply.github.com>

* Update Resources/Prototypes/Datasets/Names/books.yml

Co-authored-by: chromiumboy <50505512+chromiumboy@users.noreply.github.com>

* Update Resources/Prototypes/Datasets/Names/books.yml

Co-authored-by: chromiumboy <50505512+chromiumboy@users.noreply.github.com>

* Update Resources/Prototypes/Datasets/Names/books.yml

Co-authored-by: Hrosts <35345601+Hrosts@users.noreply.github.com>

* Update Resources/Prototypes/Datasets/Names/books.yml

Co-authored-by: chromiumboy <50505512+chromiumboy@users.noreply.github.com>

* Update Resources/Prototypes/Datasets/Names/books.yml

Co-authored-by: chromiumboy <50505512+chromiumboy@users.noreply.github.com>

* Update Resources/Prototypes/Datasets/Names/books.yml

Co-authored-by: chromiumboy <50505512+chromiumboy@users.noreply.github.com>

* Update Resources/Prototypes/Datasets/Names/books.yml

Co-authored-by: chromiumboy <50505512+chromiumboy@users.noreply.github.com>

* Update Resources/Prototypes/Datasets/Names/books.yml

Co-authored-by: chromiumboy <50505512+chromiumboy@users.noreply.github.com>

* typo fix

* interchangeably

* final

* Update Resources/Prototypes/Datasets/Names/books.yml

Co-authored-by: Hrosts <35345601+Hrosts@users.noreply.github.com>

* "."

* Update Content.Server/Paper/PaperRandomStorySystem.cs

Co-authored-by: Hrosts <35345601+Hrosts@users.noreply.github.com>

* Ubazer fix

* inadequate

* localized

* Update meta.json

* fuck merge conflicts

* fix jani book

---------

Co-authored-by: chromiumboy <50505512+chromiumboy@users.noreply.github.com>
Co-authored-by: Hrosts <35345601+Hrosts@users.noreply.github.com>
2024-07-11 21:19:52 -07:00
SimpleStation14
00bca74a15 Mirror: Update blood related tips! (#238)
## Mirror of PR #25809: [Update blood related
tips!](https://github.com/space-wizards/space-station-14/pull/25809)
from <img src="https://avatars.githubusercontent.com/u/10567778?v=4"
alt="space-wizards" width="22"/>
[space-wizards](https://github.com/space-wizards)/[space-station-14](https://github.com/space-wizards/space-station-14)

###### `f259f2f3a21127427ae7f026e16694fcdfe14583`

PR opened by <img
src="https://avatars.githubusercontent.com/u/121047731?v=4"
width="16"/><a href="https://github.com/QuietlyWhisper">
QuietlyWhisper</a> at 2024-03-03 17:13:30 UTC

---

PR changed 1 files with 2 additions and 2 deletions.

The PR had the following labels:
- No C#


---

<details open="true"><summary><h1>Original Body</h1></summary>

> <!-- Please read these guidelines before opening your PR:
https://docs.spacestation14.io/en/getting-started/pr-guideline -->
> <!-- The text between the arrows are comments - they will not be
visible on your PR. -->
> 
> ## About the PR
> <!-- What did you change in this PR? -->
> Wording
> 
> No cl
> 


</details>

Co-authored-by: SimpleStation14 <Unknown>
2024-05-09 01:34:02 -04:00
Skarletto
57e116fe30 Remove Grandpa from name list (#25725)
remove grandpa's fucked up bed

(cherry picked from commit 1037bfc6a0016d869359ae825e97c51bdf36ded9)
2024-03-07 01:09:16 +01:00
YuNii
4e7062fb4e Fix typos calling salvage specialists a 'salvage technician' (#25657)
fix typos calling salvage specialists a 'salvage technician

(cherry picked from commit 1c015d1fd549269eb3a475c253b1b5f96d1b5e2c)
2024-03-07 01:04:47 +01:00
lapatison
1334f981f7 Minor cookie fortune fix (#25503)
minor locale fix

(cherry picked from commit 2a5eb86e2270629752799e04f945a5ebabef460c)
2024-03-05 09:49:56 +01:00
Fluffiest Floofers
fd3492e0bb Replace the new mentions of QM (#858)
remove qm from existence

Also now we have 2 LO beret.
2024-02-21 04:29:07 +01:00
Errant
61ad8108af Vox names, species prototype cleanup, some cosmetic changes (#24994)
* voxnames

* New generator parameters, names are more readable

* bunch of missing vox stuff

* more names

* sad

(cherry picked from commit 5a9ab3b315c90ddd054f2e2524af023d909e2a9e)
2024-02-18 23:08:43 +01:00
deltanedas
965e1cae57 criminal records revival (#22510)
(cherry picked from commit 683591ab046eb720e6ccfd3d0f6e5574f5f7efbc)
2024-02-08 12:37:29 +01:00
Ubaser
cb5fb265c7 Fix tips (#23920)
(cherry picked from commit d99c56f67dd6ff977e56d76a1812c1a42b542c84)
2024-01-26 22:27:07 +01:00
Ubaser
673d3cc0e3 Update tips (#23611)
* add

* fix

(cherry picked from commit 8b107b5a9fd58d997051d610ae5f7ffa7c74a05d)
2024-01-26 22:04:07 +01:00
Tayrtahn
b818ba300d Fix tiny grammar/spelling issues (#23534)
(cherry picked from commit 2de55700948052a7bc5f0d76d938faef3c82f742)
2024-01-26 21:40:06 +01:00
LankLTE
1805610dac remove racism (#23039)
* Remove only 'species' is crew rules

* hit space one too many times

(cherry picked from commit ed997dc5beb794ef1009e75fd3a8344c045d4f37)
2024-01-22 18:38:34 +01:00
SpaceyLady
f5768ce72e Correct spelling mistakes for daily tips (#22893)
Update tips.yml

(cherry picked from commit 9103061ac0ed248526a70763d7f171b52916084d)
2024-01-22 18:27:53 +01:00
Tim Falken
11d4a399f0 Crime Assist pda program (#464)
* Completely untested first commit

* Get basic program flow working

* Add Innocent

* Add Fancy Rich Text

* Icon

Thanks, IcedQuinn!

* Add Cartridge icons

* New image from IcedQuinn

* Add explanation on what a Sophont is, to be automatically appended to any text referencing a Sophont later on

* Convert tabs to spaces

* remove [bold] tags from loc

* Make text bold again

* Alter formatting, reduce text length for sophont explanation to fit it on the screen

* Update Resources/Locale/en-US/deltav/cartridge-loader/cartridges.ftl

Co-authored-by: Colin-Tel <113523727+Colin-Tel@users.noreply.github.com>
Signed-off-by: Tim Falken <timfalken@hotmail.com>

* Add program to more PDA's

* Add a tip about the app

* Recreate flow in yaml

todo: actually load and use this yaml

* Remove the old state machine, and add configurable yaml prototypes to define pages

* Move page to its own file

---------

Signed-off-by: Tim Falken <timfalken@hotmail.com>
Co-authored-by: Colin-Tel <113523727+Colin-Tel@users.noreply.github.com>
2023-12-29 20:34:56 +01:00
Kara
a23dce4702 Rename Miasma to Ammonia (#22791)
* Rename Miasma to Ammonia

* Namespace changes

* Map change????? why
2023-12-22 23:12:06 +01:00
lzk
44e7a2621d Ert names ops (#22246)
* names

* humanoids
2023-12-16 19:47:26 +01:00
Ps3Moira
62ebf43290 Added Mouse Ops...again 🐭 (#515)
* Update RobustToolbox

* Mouse Ops

* Revert "Update RobustToolbox"

This reverts commit 0f04bb7ce0640024b8197ea2f4c75ef04f7aa9f7.
2023-12-06 17:03:07 +01:00
lzk
ab686327cc Update Operation_suffix.yml (#21882) 2023-12-02 19:05:11 +01:00
lzk
77c4dfa8ad :trollface: (#21724) 2023-11-19 22:22:01 +01:00
2013HORSEMEATSCANDAL
1d1b65024d Operations (#21154)
* Creates an operation name when Nukies spawn.

* Fixed each nukie getting a different name

* Fixed it again for real this time

* commit name

* Revert "fix (#20719)"

This reverts commit bfa301b53e1697a93e8ccff37fb254bfa0bd4d5a.

* Fixed it (for real this time it works now I swear)

* Update Content.Server/GameTicking/Rules/NukeopsRuleSystem.cs

Co-authored-by: faint <46868845+ficcialfaint@users.noreply.github.com>

* shortened variable names

* moved a method

* typo fix

* rewrote the lists in alphabetical order

---------

Co-authored-by: faint <46868845+ficcialfaint@users.noreply.github.com>
2023-11-19 22:16:37 +01:00