28 Commits

Author SHA1 Message Date
Spatison
011baeb64c Исправление шрифта универсального языка (#909)
fix
2025-12-25 10:42:11 +07:00
Kutosss
e818505435 Небольшие правки в связи с апстримом (#693)
* шрифты

* блоб переводы

* руководство

* Update game-presets.ftl

* Delete Resources/Locale/ru-RU/_Goobstation/blob/admin.ftl

* фикс

* фикс

* ревью

* Update Resources/Prototypes/Language/Species-Specific/diona.yml

Co-authored-by: Spatison <137375981+Spatison@users.noreply.github.com>

* Apply suggestions from code review

Co-authored-by: Spatison <137375981+Spatison@users.noreply.github.com>

---------

Co-authored-by: Spatison <137375981+Spatison@users.noreply.github.com>
2025-07-24 00:24:00 +10:00
Lumminal
16ea61f52f Shadowling Antagonist (SS13 Port and Remake) (#2207)
<!--
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]?
-->

Ports Shadowlings from SS13 to SS14 with a remake to make them fun to
play.

Minimal Design Doc (not up-to-date, read comments in this repo for
updates):

https://github.com/Lumminal/SS14-Design-Docs-Lumminal/blob/main/Shadowling.md

---

- Abilities
  - [X] Hatch
  - [x] Glare
  - [X] Enthrall
  - [x] Veil
  - [x] Shadow Walk
  - [x] Icy Veins
  - [x] Collective Mind
  - [x] Rapid Re-Hatch
  - [x] Destroy Engines
  - [x] Sonic Screech
  - [x] Blindness Smoke
  - [x] Null Charge
  - [x] Black Recuperation
  - [x] Empowered Enthrall
  - [x] Nox Imperii
  - [x] Ascension
  - [x] Annihilate
  - [x] Hypnosis
  - [x] Plane-Shift
  - [x] Lighting Storm
  - [x] Ascendant Broadcast
- Antags
  - [X] Thrall
      - [x] Guise
      - [x] Thrall Darksight
  - [x] Lesser Shadowling
- Passive
  - [x] Light Resistance Scaling
  - [x] Shadowmind
  - [x] Damage on Light
- Other
  - [x] Sounds
  - [x] Sprites
  - [x] Psionic Interactions
  - [x] Handle Edge Cases
---

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

https://www.youtube.com/watch?v=H-Ee5wuRINc

</p>
</details>

---

🆑
- add: The shadows have awakened, and their ascendance is soon to
follow. Do not enter maints.

---------

Signed-off-by: Lumminal <81829924+Lumminal@users.noreply.github.com>
2025-07-20 12:05:11 +10:00
Kyoth25f
ed2301f840 Port Blob (#2441)
Ports Blob from https://github.com/Goob-Station/Goob-Station/pull/975
that was ported from https://github.com/Rxup/space-station-14.

Credit to VigersRay for original code, Roudenn and Rxup for maintaining
and jorgun for the Goob port.

---

- [X] Port https://github.com/Goob-Station/Goob-Station/pull/975;
- [X] Port https://github.com/Goob-Station/Goob-Station/pull/1209;
- [X] Port Blob related code from
https://github.com/Goob-Station/Goob-Station/pull/1262;
- [X] Port Blob related code from
https://github.com/Goob-Station/Goob-Station/pull/1340;
- [X] Port https://github.com/Goob-Station/Goob-Station/pull/1408;
- [X] Port https://github.com/Goob-Station/Goob-Station/pull/1419;
- [X] Port https://github.com/Goob-Station/Goob-Station/pull/1440;
- [X] Port https://github.com/Goob-Station/Goob-Station/pull/1817;
- [X] Port https://github.com/Goob-Station/Goob-Station/pull/2077;
- [ ] ~Port https://github.com/Goob-Station/Goob-Station/pull/1916~;
- [ ] ~Port https://github.com/Goob-Station/Goob-Station/pull/1917~;
- [X] Port https://github.com/Goob-Station/Goob-Station/pull/2077;
- [X] Port https://github.com/Goob-Station/Goob-Station/pull/2092;
- [X] Port https://github.com/Goob-Station/Goob-Station/pull/2546;
- [X] Port https://github.com/Rxup/space-station-14/pull/963;
- [X] Port https://github.com/Rxup/space-station-14/pull/998;
- [ ] ~Port https://github.com/Goob-Station/Goob-Station/pull/2563~.

- [X] Enable Blob and Blob gamemode;
- [X] Add `StationGlobConfig` to all stations;
- [X] Use `AnnouncerSystem` in `BlobRuleSystem.cs`;
- [X] Blob language and Hivemind (from
https://github.com/Rxup/space-station-14/pull/176);
- [x] Change CVars location;
- [X] Add media.

---

<details><summary><h1>Media</h1></summary>
<p>
https://youtu.be/-WtMQwRcmrU?si=su3An6RtiCTZg-DV
</p>
</details>

---

🆑 VigersRay, Roudenn, Rxup, vladospupuos, fishbait and Kyoth25f
- add: Added a new antagonist: Blob

---------

Co-authored-by: fishbait <gnesse@gmail.com>
Co-authored-by: Fishbait <Fishbait@git.ml>
Co-authored-by: Aiden <aiden@djkraz.com>
Co-authored-by: beck-thompson <107373427+beck-thompson@users.noreply.github.com>
Co-authored-by: lanse12 <cloudability.ez@gmail.com>
Co-authored-by: BombasterDS <deniskaporoshok@gmail.com>
Co-authored-by: Aviu00 <93730715+Aviu00@users.noreply.github.com>
Co-authored-by: Piras314 <p1r4s@proton.me>
Co-authored-by: shibe <95730644+shibechef@users.noreply.github.com>
Co-authored-by: Ilya246 <57039557+Ilya246@users.noreply.github.com>
Co-authored-by: JohnOakman <sremy2012@hotmail.fr>
Co-authored-by: Fat Engineer Gaming <159075414+Fat-Engineer-Gaming@users.noreply.github.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Rouden <149893554+Roudenn@users.noreply.github.com>
2025-07-12 12:20:25 +10:00
Kai5
33ad7a8b34 [Tweak] Шрифт абдукторов (#482)
Шрифт
2025-05-02 14:10:59 +03:00
Remuchi
1e363c7346 Revert "Merge pull request #462 from WWhiteDreamProject/revert-460-upstream"
This reverts commit 092dba42e5, reversing
changes made to e6315c2320.
2025-04-20 11:15:45 +07:00
DVONIKS
6c19771020 Revert "Upstream 04.04-18.04" 2025-04-20 06:34:09 +03:00
dootythefrooty
717f8404f0 Abductor Port (#2234)
<!--
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]?
-->

Ports the lone abductor and possibly(?) the duo abductors.

---

# 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] Figure out why abductors aren't spawning as the abductor race.
- [X] Make sure it's not a buggy mess.

---

<!--
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/81292bde-ad96-4d08-a30e-87c9bc2df8aa)
</p>
</details>

---
# Credits
Thank to [Starlight ](https://discord.com/invite/wAyQKB78fH)for the
original version!
Darkrell, Rinary, and Landosaur made the funny little guys.

![image](https://github.com/user-attachments/assets/1c62afe9-7fb9-458e-bc61-5745ba3a2a6b)

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

🆑 Darkrell, Rinary, Landosaur
- add: The Abductors are here to replace your organs. Gleep Glorp!

---------

Co-authored-by: gluesniffler <159397573+gluesniffler@users.noreply.github.com>
Co-authored-by: Solstice <solsticeofthewinter@gmail.com>
Co-authored-by: SX_7 <sn1.test.preria.2002@gmail.com>
Co-authored-by: Theodore Lukin <66275205+pheenty@users.noreply.github.com>
Co-authored-by: Piras314 <p1r4s@proton.me>
Co-authored-by: Ilya246 <57039557+ilya246@users.noreply.github.com>

(cherry picked from commit ea9f1526868289d20832989cb02f79c76c240918)
2025-04-19 01:45:58 +03:00
RocketBoss360
e652a69568 Maint Drone Language (#2208)
<!--
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]?
-->

Allowes drones to speak to one another with "Drone" Moreover they now
understand but cannot speak TauCeti!

---

# 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] make drone lang
- [x] allow drones to speak dronelang
- [x] make drones beep when speaking

---

<!--
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/362fc2a0-3129-4b29-a665-190bb9ff74fa)

![image](https://github.com/user-attachments/assets/d73aa911-8616-4120-afdc-f5e7b437239c)

</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: Maint drones can now speak to other maint drones via the Drone
language!

---------

Signed-off-by: RocketBoss360 <rocketboss360@gmail.com>
(cherry picked from commit 69b9710e7757b3fe2fff76e890915a35806f97f8)
2025-04-18 18:40:36 +03:00
Rocket
4e45e2a8a9 Fix localization
(cherry picked from commit 8c23362254b2c46d7a31ce845a0d5a6b233fb991)
2025-03-29 16:33:43 +03:00
Rocket
39e3aee1bc 1 comment changed
(cherry picked from commit 01d03dcbd706fe91cc36a256e47ce0fcd09d1b81)
2025-03-29 16:33:34 +03:00
Rocket
5b4f346ed0 Fix Verb labels
(cherry picked from commit 190faffce4e5c93e30d53cc3af060ed76482c6ca)
2025-03-29 16:33:28 +03:00
Rocket
a7cc8f5e2e Xenoglossy language tweaks
(cherry picked from commit 2ebd2a27f7f61000b38dd81f48ef84087d2f9972)
2025-03-29 16:33:21 +03:00
Timfa
e328eee30d Novu-Nederic Language (#1952)
beste land

<!--
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]?
-->

Once the language of seafarers and merchants, now the voice of spacers,
terraformers, and pioneers. Spoken in the New-Netherlands, this direct
and pragmatic trade language carries the sharp consonants and clipped
vowels of its old-world roots.
Built on centuries of seafaring, land reclamation, and commerce, it
thrives among those who shape entire worlds — just as their ancestors
shaped the land from the sea.

---

# 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] Bitterbal eten

---

# 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 Novu-Nederic language (incl. trait)

(cherry picked from commit e80684451186b99bf38538393b1e5b9f106ebb3b)
2025-03-21 16:44:12 +03: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
sleepyyapril
4370ff6611 Chitinid (From Delta-V) (#1644)
port https://github.com/DeltaV-Station/Delta-v/pull/2707 (with
permission)

🆑 ElusiveCoin
- add: Added a new species, the Chitinid.

---------

Signed-off-by: sleepyyapril <123355664+sleepyyapril@users.noreply.github.com>
Co-authored-by: ElusiveCoin <elusivecoin@gmail.com>
Co-authored-by: rosieposie <52761126+rosieposieeee@users.noreply.github.com>
Co-authored-by: Delta-V bot <135767721+DeltaV-Bot@users.noreply.github.com>
Co-authored-by: Nemanja <98561806+EmoGarbage404@users.noreply.github.com>
Co-authored-by: VMSolidus <evilexecutive@gmail.com>
(cherry picked from commit ce310bb7158acf0c9c2eef00a19d9ac58f8fa08d)
2025-01-29 20:10:28 +03:00
Spatison
0e0ffb6d14 Upstream (#142)
* Fix Power Attacks Being Faster Than Left Clicks (#1252)

# Description

This fixes some stupid math. Power attacks are now correctly slower than
left clicks. Previously they were faster.

# Changelog

🆑
- fix: Power Attacks now correctly apply a penalty on swing speed, and
are no longer faster than left clicking.

(cherry picked from commit 049a995f64c42734e5286229b524161a730aaea9)

* Automatic Changelog Update (#1252)

(cherry picked from commit 8a88bfd11f1384fa2fb01fd7ace6477202a68499)

* Tweak Wizden Trait Descriptions (#1260)

# Description
Converted the descriptions of most wizden traits to a more formal and
roleplay-oriented style, also clarifying some aspects of other traits in
the process.

---

TODO:
- [ ] Test this

---

# Changelog
🆑
- tweak: Tweaked the descriptions of most Wizden traits to be more vivid
and descriptive.

---------

Signed-off-by: Mnemotechnican <69920617+Mnemotechnician@users.noreply.github.com>
(cherry picked from commit 411cb213ac9ab2e6a0b790e72b25a142a4945217)

* More Trait Functions (PushMarkup & AddArmor) (#1253)

# Description

This PR effectively "Reworks" several of the Bionic Traits through use
of new modular TraitFunctions. These being,

**TraitPushDescription**: Ensures that an entity has the new
ExtendDescriptionComponent, then writes to said component.
ExtendDescriptionComponent serves as a new highly modular "One stop
shop" for any system wanting to add text to the shift-click examine
window. It even accepts arguments for text color, font size, and whether
or not a person must be standing within touching distance to "See" the
provided texts. It accepts arbitrarily any number of descriptions.

**TraitAddArmor**: This takes advantage of a new functionality for the
DamageableSystem, whereby entities are able to have more than one
DamageModifierSet. This allows arbitrarily any number of traits to add
as many modifier sets as desired, without fear of any compatibility
issues. These can be both negative and positive, and as Skubman has
pointed out, this can also be used to create negative traits that make a
character more vulnerable to a given damage type!

Additionally, most of the Bionics Traits have been reworked. CyberEyes
has been split into two modules, one for the base implant, and one for
the Flash Protection. Dermal Armor has been reworked using
TraitAddArmor, so that it no longer replaces your original modifier set,
and instead stacks multiplicatively with whatever your original species
modifier set was. Thus, it can now be taken by any species.

# TODO

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

TraitPushDescription

![image](https://github.com/user-attachments/assets/4661671a-6f20-4cb1-9fad-41c36f7ad79e)

TraitAddArmor

![image](https://github.com/user-attachments/assets/bbc823e1-73bf-471d-b5f6-ef8cdf35c746)

</p>
</details>

# Changelog

🆑
- add: Five new functions for the Trait System, AddArmor,
PushDescription, ModifyMobThresholds, AddSolutionContainer, and
ModifyStamina.
- tweak: CyberEyes Basic System has been split, now Flash Protection is
a separate module.
- add: Dermal Armor no longer replaces your original species damage
resistances. It now stacks multiplicatively with your original
resistances.
- tweak: Dermal Armor can now be taken by any species, not just Humans.
- add: Dermal Armor, and Bionic Arms can now be revealed by a close
examination. Shift click on someone within touching distance will reveal
if they have these "Obvious" cyberware.

---------

Signed-off-by: VMSolidus <evilexecutive@gmail.com>
Co-authored-by: Remuchi <72476615+Remuchi@users.noreply.github.com>
(cherry picked from commit 29d2cb1ed85ab089d83c702f7405e938a0d9374c)

* Automatic Changelog Update (#1260)

(cherry picked from commit 8d54aa2fffdd3726e948d6d228287b01c0a81413)

* Feat: Anomaly Scanner Data Copying (#1250)

# Description
Makes it so that using one anomaly scanner on another transfers the
anomaly data onto the used scanner.

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

![image](https://github.com/user-attachments/assets/b212e6e8-58a3-4a64-a216-3ba496a81d4a)

</p>
</details>

# Changelog
🆑
- add: You can now touch one anomaly scanner with another to copy the
anomaly scan data from it.

(cherry picked from commit 0574be444b90137808c07f85e10b59c464f054cf)

* Automatic Changelog Update (#1253)

(cherry picked from commit 6fa8d6817fa81e6d6d20b61f5ec4b7b96fdb185b)

* Automatic Changelog Update (#1250)

(cherry picked from commit 1b5704535ce42041c068d201cdb447af42004c20)

* Rename "Pierce" Typo to "Piercing" (#1267)

# Description

Oops. Some files refer to the non-existent **Pierce** damage type when
the proper name is **Piercing**.

# Changelog

🆑 Skubman
- fix: Piercing damage can now dismember body parts, just like Blunt and
Slash damage.

(cherry picked from commit 992b2e486855cea6646cf5d4af51ca8cbf61b29d)

* Buff Medical Due to Shitmed Changes Cherry-Pick (#1259)

<!--
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]?
-->

+ Buffed applicable medication heal values.
+ Buffed applicable medication stack sizes.
+ Slightly buffed dylovene, burn, and brute chems.
+ Buffed applicable medication doAfter delay from 3s to 2s.

---

## Why / Balance
<!-- Discuss how this would affect game balance or explain why it was
changed. Link any relevant discussions or issues. -->
This change was made with the advent of the new Limb Damage system. This
PR seeks to achieve making SS14 Medical more equivalent to SS13 Medical
when it comes to healing damage values.

This was done as Bruise Packs and Ointment only heal 5 Brute or 5 Burn
respectively when applied to a limb. When each limb has a 100 Crit
threshold, this can make it extremely hard even with surgery to heal
limbs in the absence of Chemicals.

Furthermore on higher pop, this will lead to people burning through
applicable meds even faster than before Limb Damage was implemented. It
would take 34 bruise packs to heal someone with 170 Blunt spread out
across their limbs, with this change it would reduce that to 12 bruise
packs.

Full list of numerical val changes:
 - Healing component doAfter Delay reduced. was 3s, now its 2s.
 - Applicable medical items now have a max stack size of 15 (was 10).
- Ointment heals 15 of each burn type, 10 caustic (was 5 of each burn
type, 1.5 caustic)
 - Mesh now heals 20 of each burn type (was 10 of each burn type).
- Bruise Packs now heal 15 of each brute type (was 5 of each brute type)
 - Sutures now heal 20 of each brute type (was 10 of each brute type)
- Bloodpacks now heal 2.5 Bloodloss & restore 10% bloodlevel (was .5
Bloodloss and 5%)
 - Gauzes now heal 15 Slash and 20 Pierce (was 5 Slash and 10 Pierce)
 - Dylovene now heals 1.5 Poison per .5u (was 1 Poison per .5u)
 - Bicaridine now heals 2.5 Brute per .5u (Was 2 Brute per .5u)
 - Dermaline now heals 2 Burn per .5u (was 1.5 Burn per .5u)
- Epinephrine now heals 1 Burn & 1 Brute per .5u (was .5 for each per
.5u)
 - Kelotane now heals .5 Burn per .5u (was .33 Burn per .5u)
- Omnizine now heals 3 Burn, Toxin, Airloss, and Brute per .5u (was 2
per .5u)
- Lacerinol now heals 4 Slash per .5u (was 3 per .5u)
- Bruizine now heals 4 Blunt per .5u (was 3.5 per .5u)

# 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] Cherry-pick Medical changes merged in Goobstation

---

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

 ## Breaking changes
<!-- List any breaking changes, including namespaces, public
class/method/field changes, prototype renames; and provide instructions
for fixing them.
This will be posted in #codebase-changes. -->
Should values be overtuned, they can be reduced in a future PR or before
this PR is merged.

**Changelog**
<!-- Add a Changelog entry to make players aware of new features or
changes that could affect gameplay.
Make sure to read the guidelines and take this Changelog template out of
the comment block in order for it to show up.
Changelog must have a 🆑 symbol, so the bot recognizes the changes and
adds them to the game's changelog. -->
🆑
- tweak: Increased applicable medication heal values.
- tweak: Increased stack size of applicable medications.
- tweak: Slightly increased dylovene, burn, and brute chemicals heal
values.
- tweak: Decreased Medical item application time from 3s to 2s

---------

Signed-off-by: sleepyyapril <123355664+sleepyyapril@users.noreply.github.com>
Signed-off-by: Tmanzxd <164098915+Tmanzxd@users.noreply.github.com>
Co-authored-by: sleepyyapril <123355664+sleepyyapril@users.noreply.github.com>
(cherry picked from commit b431d24f86f94433ea0c53982db83e40ef1d3f2c)

* Automatic Changelog Update (#1267)

(cherry picked from commit 02dd8ab06333a5b2dabe03845bfd6719ca09ef48)

* Automatic Changelog Update (#1259)

(cherry picked from commit 09d59007d4c55ee9f7daa0f56cae672c51951843)

* The Blood Cult (#1001)

<!--
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 a new game mode - The Blood Cult.
Hail to Nar'Sie!

---

# TODO

- [x] Gamemode
- [x] Roles
- [x] Runes
- [x] Constructs
- [x] Structures
  - [x] Forge
  - [x] Archives
  - [x] Altar
  - [x] Pylon
    - [x] Structure
    - [x] Placement System
  - [x] Airlocks
    - [x] Repulsor system
  - [x] Construction system
- [x] Items
  - [x] Eldritch Whetstone
  - [x] Construct Shell
  - [x] Mirror Shield
  - [x] True Nar'sian Hardened Armor
  - [x] Flagellant's Robe
  - [x] Eldritch Longsword
  - [x] Zealot's Blindfold
    - [ ] Night vision system
  - [x] Shuttle Curse
  - [x] Veil Shifter
  - [x] Void Torch
 - [x] Reagents
   - [x] Holy Water
- [ ] Actions
  - [x] Cult Magic
    - [x] Stun
    - [x] Teleport
    - [x] Electromagnetic Pulse
    - [x] Shadow Shackles
    - [x] Twisted Construction
    - [x] Summon Combat Equipment
    - [x] Summon Ritual Dagger
    - [x] Blood Rites
  - [ ] Cult Leader Magic
    - [ ] Final Reckoning
    - [ ] Mark Target
    - [ ] Eldritch Pulse
  - [ ] Construct's Magic
    - [ ] Artificer
      - [ ] Summon Cult Floor
      - [ ] Summon Cult Wall
      - [ ] Greater Conjuration
      - [ ] Summon Soulstone
    - [ ] Wraith
      - [ ] Phase Shift
    - [ ] Juggernaut
      - [ ] Shield
      - [ ] Gauntlet Echo
- [x] Cult leader selection system
- [ ] Rending/Apocalypse rune placement markers
EXTRA:
- [ ] Spirit Realm rune
- [x] Eldritch language
- [ ] Conceal magic
- [ ] Ru locale
---

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

![Example Media Embed](https://example.com/thisimageisntreal.png)

</p>
</details>

---

# Changelog

🆑
- add: Added Blood Cult Gamemode.

---------

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

(cherry picked from commit 150020866ddd383f297dfccd7717017c23222d82)

* fix

* Automatic Changelog Update (#1001)

(cherry picked from commit a179e186fa812e5dbce34983e11ef7af56ccdcf4)

* Engine Update v237.2.0 (#1270)

<!--
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]?
-->

Updates to engine version v237.2.0.
Fixes disposals systems breaking and not using the proper direction.

---------

Co-authored-by: sleepyyapril <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>
(cherry picked from commit dcc1c38fb729b00fdb15b79b38372f3e1e8bc951)

* [QoL] Show Oni Damage Bonus In Damage Examine (#1268)

# Description

Examining an item's damage values as an Oni now calculates your bonus
damage, and it also works with all of the Oni combat traits.

## Technical details

`OniSystem`, instead of adding melee damage through `MeleeHitEvent`, now
adds damage through `GetMeleeDamageEvent`, the same event that examining
melee weapon damage raises through `GetDamage`.

## Media

**Normal damage values**

<img
src="https://github.com/user-attachments/assets/9de255ef-29e6-4119-93cc-356349812a6f"
width=300px>

**Oni damage values**

<img
src="https://github.com/user-attachments/assets/18d44aaf-5a70-4ba9-a8c8-be29e92d7267"
width=300px>

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

🆑 Skubman
- tweak: As an Oni, examining the damage values of weapons now takes
into account the melee damage bonus from your species or trait.

(cherry picked from commit 613e7937392d5d4fd9bf906f571adc237c706367)

* Automatic Changelog Update (#1268)

(cherry picked from commit 5fe4b1e94b987f787807cc10df06f667b87d124e)

* Loadouts V4 (#1164)

# Description

# TODO

- [x] Custom name/desc/color tint, toggleable individually per-loadout
	- [x] Fix them not changing correctly between profiles in-editor
	- [x] Preview colors in the lobby
- [x] Allow the users to null the color themselves (and default it to
such)
	- [x] Pick what should be allowed to be recolored
- [x] Guidebook links
	- [x] Make an example
- [x] Special components for loadouts
- [x] Heirlooms
	- [x] Pick what should have heirlooms
- [x] Decimate lag
- [x] Fix live character preview
- Maybe do characters per job
  - Rethink unusable

---

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

<!--
![image](https://github.com/user-attachments/assets/cce7dcf3-eeb6-4998-ae88-6373db8cb93f)
-->

https://github.com/user-attachments/assets/bcf61517-6b64-40d2-b299-7462e2469fe2

</p>
</details>

---

# Changelog

🆑
- add: Players can set custom names, descriptions, and color tints for
their loadout items
- add: Certain loadouts may have Guidebook pages shown in the editor
- add: Players can pick a list of loadout items to have one randomly be
their family heirloom for a mood bonus or deficit if they are carrying
it
- fix: Loadouts have almost as little lag as possible (hopefully none)
- fix: Everything properly updates your character editor's live preview

---------

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

(cherry picked from commit f0463062812428625da9e8adad60c8a567fdacbe)

* Automatic Changelog Update (#1164)

(cherry picked from commit 57917a746f514aba3f142d870a9280c9b1eb9a4f)

* [Fix] Added Robust.Xaml to the Project Solution (#1266)

Mirrors https://github.com/space-wizards/space-station-14/pull/31573

Signed-off-by: Remuchi <RemuchiOfficial@gmail.com>
(cherry picked from commit 1d65d548e69862295926fb08aee962d8fbd0b5c4)

* Update Credits (#1274)

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>
(cherry picked from commit 39f4ad8a8884bc5bb9e64530b1a708ea41b4de32)

* Fixes Make Cultist Admin Verb to Act on Target Not Self (#1289)

There's a small error on the admin verb for blood cultists which made
the verb only work on self. This fixes it.

(cherry picked from commit 6c2b2a8a4ab7c7b0c5e18d796ccd94d09b087509)

* IPC Instrument Menu Fix (#1287)

<!--
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]?
-->

Fixes IPCs being unable to use the midi menu.

---

# 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: Fixed IPCs being unable to use the midi menu.

(cherry picked from commit f133b9b7cf175815a3c6de59d541e12f0fc60790)

* Automatic Changelog Update (#1287)

(cherry picked from commit 92a6e099fca1581ea8a0cfd16bf7f13ae8d1108a)

* Change Target Doll Icon For Ashen Theme (#1282)

# Description

![target_doll](https://github.com/user-attachments/assets/1fdcd665-251f-4a3f-b80e-e11b77f13eef)

(cherry picked from commit 327247585612d9d65e20b8b856864701ceb1c933)

* Fix Applicable Medication Stack Bug (#1278)

<!-- Guidelines:
https://docs.spacestation14.io/en/getting-started/pr-guideline -->

## About the PR
<!-- What did you change? -->
- Fixed a bug where applicable medication stacks would revert back to 10
after 1 use.

## Why / Balance
<!-- Discuss how this would affect game balance or explain why it was
changed. Link any relevant discussions or issues. -->
- Did you know maxstacks were stored in a separate YML? Me neither,
until now.

**Changelog**
<!-- Add a Changelog entry to make players aware of new features or
changes that could affect gameplay.
Make sure to read the guidelines and take this Changelog template out of
the comment block in order for it to show up.
Changelog must have a 🆑 symbol, so the bot recognizes the changes and
adds them to the game's changelog. -->
<!--
-->
🆑
- fix: Fixed a bug where applicable medication stacks would revert back
to 10 after 1 use from full.

Signed-off-by: Tmanzxd <164098915+Tmanzxd@users.noreply.github.com>
(cherry picked from commit d4879f9129ae484f24f57eb642cc7d600f2323e0)

* Automatic Changelog Update (#1278)

(cherry picked from commit 8d485e8c0d4e3932835aeed210388e85988a0213)

* Re-Enable Language Color and Font (#1294)

# Description

Re-enables language font and colors showing up in chat messages. The
language font/colors were bugged after adding language names in chat
(https://github.com/Simple-Station/Einstein-Engines/pull/1165)

I also overhauled the format for chat messages to be more aesthetically
pleasing, and made sure chat bubbles use the language color/font.

## Media

**Nekomimetic**

![image](https://github.com/user-attachments/assets/4cb88d7b-7466-42ed-bf2d-b68c68edb62c)

![image](https://github.com/user-attachments/assets/adec7fd7-0a84-4e21-9eff-c1a387e2d529)

**Bubblish**

![image](https://github.com/user-attachments/assets/c49f5573-ac96-4375-a584-e8b2cc6f5fee)

![image](https://github.com/user-attachments/assets/c739c249-9d1e-453e-9e92-3f7ef24a4d61)

**Tau-Ceti Basic (Default Language)**

![image](https://github.com/user-attachments/assets/e6660039-ac2f-449b-96e0-44e0142d3715)

![image](https://github.com/user-attachments/assets/2baec2ca-975d-4111-85b0-3b2056fdd7f7)

**Rootspeak**

![image](https://github.com/user-attachments/assets/99d94f8d-9a1c-4be9-8c98-b42c9c7cffd7)

![image](https://github.com/user-attachments/assets/c20b4621-1ca7-42f5-a22a-82c9a4d1dddf)

## Changelog

🆑 Skubman
- fix: Language colors and fonts will show up in text messages again,
both on in-person messages and on the radio.
- tweak: The text on chat bubbles now uses the color and font of the
language being spoken.
- tweak: The language prefix before the name on chat messages now uses
the language's color.

(cherry picked from commit 1a9763528a9b15f11f474a2fa7ecfdde98aa9a15)

* Automatic Changelog Update (#1294)

(cherry picked from commit 7d802e35dc45c37016681c3a009bdaebe2707178)

* Shitmed Update 2 - [Insert Snarky Remark] (#1271)

# Description

![image](https://github.com/user-attachments/assets/b10f1e33-94fb-4ded-a644-b9945b58dbc5)

Honey wake up, another shitmed PR with 5 features and a trillion bugs! I
love bloat.

---

# Known Bugs
- A lot of shit with changelings lol
- Markings suddenly disappear from your entity apparently at random.
Wizden exclusive issue as of now.
- Fire heretics explode when ascending due to part damage shitcode
(sorry)
- Some exceptions/null point references at round end, tentatively
related to salvage corpses.
- Slots having wonky behavior due to not being networked. More of a
broad issue with how I implemented them initially.
- Arachne are FUCKED with surgery, I was incredibly tempted to set them
to roundstart: false, but I'll try to hotfix it this week.

---

# Changelog

🆑 Mocho, Deltanedas
- add: Ported Ghetto Surgery from Deltanedas!
- add: Ported fishops organs from Deltanedas!
- add: Added different step durations to each surgery step.
- add: Added a T2 research for advanced surgical tools
- add: Added a T3 research for an omnitool for surgery.
- add: Added Surgical and Advanced Surgical modules for Mediborgs
- add: Mediborgs can now perform surgery!
- add: Added lobotomies as an operation. Godspeed you psychopaths.
- add: Added cybernetic arms, legs and eyes.
- add: Added EMP weaknesses to all cybernetic parts (the day of
reckoning will come for IPCs soon)
- add: Losing your eyes now blinds you.
- fix: Fixed a few species that did not inherit from BasePart's, thus
taking damage types they shouldn't on their limbs.
- fix: Fixed harpy lungs not being usable in surgeries.
- fix: Fixed biosynthetic and other printable parts not allowing you to
attach body parts to them.
- fix: Fixed fire being able to destroy your chest.
- fix: Fixed entities being able to take over your body by just
inserting a brain or another head on top of you.
- fix: Fixed some shitcode that didnt let rejuvenate or godmode work
properly.
- fix: Fixed bionic arm, and cybernetic eyes traits not working properly
due to shitty networking.
- tweak: Increased tend wounds's speed by double, and bumped up the
values on its calculations. DEATH TO TOPICALS, LEAVE THOSE TO TIDERS.
- tweak: Beheading an entity now doesnt let it move, speak, and forces
it to the ground immediately (literally 1984!!11!!)
- tweak: Changed sprites on most surgical tools to now use /tg/ sprites.
- tweak: Unbound shitmed targeting doll keybinds by default (did you
know we have those).

---------

Signed-off-by: gluesniffler <159397573+gluesniffler@users.noreply.github.com>
Co-authored-by: FoxxoTrystan <45297731+FoxxoTrystan@users.noreply.github.com>
Co-authored-by: goet <6637097+goet@users.noreply.github.com>
Co-authored-by: Saphire Lattice <lattice@saphi.re>

(cherry picked from commit 2eafa0d47e7b9a3270ae797f82dd7b1772dffb15)

* Admin Tooling Cherry Picks (#1290)

<!--
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]?
-->

Link to every PR I cherry-picked:
1. https://github.com/new-frontiers-14/frontier-station-14/pull/2283
2. https://github.com/space-wizards/space-station-14/pull/29219
3. https://github.com/space-wizards/space-station-14/pull/30075
4. https://github.com/space-wizards/space-station-14/pull/28639
5. https://github.com/space-wizards/space-station-14/pull/32527
6. https://github.com/space-wizards/space-station-14/pull/28030
7. https://github.com/space-wizards/space-station-14/pull/28178

The main purpose of this PR is the first cherry-picked PR. It adds the
ability for admins to reply to ahelps via discord using an HTTP POST
request. See all relevant details in the initial PR by Myzumi.

---------

Co-authored-by: Myzumi <34660019+Myzumi@users.noreply.github.com>
Co-authored-by: Whatstone <166147148+whatston3@users.noreply.github.com>
Co-authored-by: Whatstone <whatston3@gmail.com>
Co-authored-by: Pieter-Jan Briers <pieterjan.briers+git@gmail.com>
Co-authored-by: to4no_fix <156101927+chavonadelal@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: metalgearsloth <comedian_vs_clown@hotmail.com>
Co-authored-by: Leon Friedrich <60421075+ElectroJr@users.noreply.github.com>
Co-authored-by: ShadowCommander <10494922+ShadowCommander@users.noreply.github.com>

(cherry picked from commit b8e75dae0e25301da4ffdd1f6ca5b4aebdf5a2b8)

* Automatic Changelog Update (#1271)

(cherry picked from commit d58d397a69fc2bb5b2bbce9280a978d5d899bba0)

* More Loadout Equipment (#1281)

# Description

This PR adds a bunch more equipment selections for Engineering loadouts,
plus Suit/Skirt selections for the jobs that were missing it.

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

![image](https://github.com/user-attachments/assets/031224b4-e348-4030-9ea4-7f2dbc64c87d)

</p>
</details>

# Changelog

🆑
- add: All engineering roles have had their equipment loadouts
significantly expanded upon. Engineers can now buy construction
materials with their loadout points.
- fix: All engineering jobs now have their Suit/Skirt selection via
loadouts.
- add: Salvage techs can now select from a variety of knife options to
start their spess adventures with.
- add: Epistemics staff now have *some* equipment selection options that
they share. More to come when I finish making the Potentiometer.

(cherry picked from commit 0bd9a9ea81c2e6e9ef775a131b547b8b861548b1)

* Automatic Changelog Update (#1281)

(cherry picked from commit c7f1b4fa3c57f3650154150e1c30ce28e3302230)

* Dynamic Hostname System (#1296)

<!--
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]?
-->

Change your hostname whenever map, preset, or runlevel changes!

Variables given on all hostname locale strings:
- {$mapName} - The name of the current map.
- {$preset} - The name of the current preset.
- {$originalHostname} - What you originally had game.hostname set to,
before updating.

---

<!--
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/97cba40b-5ceb-40f8-91e4-93450cd22b78)

![image](https://github.com/user-attachments/assets/2cf27e65-b493-4916-bedd-aa69eaa0135b)

![image](https://github.com/user-attachments/assets/234f5be0-7a8c-41e1-abdf-10e9c6700a90)

![image](https://github.com/user-attachments/assets/522525d6-fb23-45b9-b559-deffb3f37a58)

</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
-->
nah

(cherry picked from commit de98c2aec2c072abeb6c81c74b830d72e29ba0c8)

* Religious Headgear For Character Customization (#1297)

# Description

This PR adds a few articles of various kinds of religious headgear to
loadouts, namely a Hijab, Turban, and Kippah. All 3 are whitescale items
that are set as colorable, allowing players to make them whatever color
is desired.

Farida can finally have the pink Hijab she was always supposed to have.

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

![image](https://github.com/user-attachments/assets/35fca330-98ba-439b-8e23-eec917b0d30c)

</p>
</details>

# Changelog

🆑
- add: Added various articles of religious headgear to loadouts, such as
Hijab, Kippah, and Turban. All of these are set to allow custom colors.

(cherry picked from commit e46a8636eb235e627023cdd3d42428b34c134353)

* Automatic Changelog Update (#1297)

(cherry picked from commit 56be69053045a2d2184c975c2325889df69838e0)

* Don't Require Running in Release to Test Mood (#1257)

(cherry picked from commit f2871885b6dd13b418dfd7ff55ffe0559a4f7044)

* Update Credits (#1300)

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>
(cherry picked from commit 9ef825252a0dc0054b1ba9626e7283d296150f3b)

* Start of Lore Documents

(cherry picked from commit dfb12e53abf1ef5d767240a19b28ba12dd35ef9b)

* Finally Done

(cherry picked from commit 2a8bf58dfc61f24796a55940e4a7ab6be3ced3ec)

* Automatic Changelog Update (#1298)

(cherry picked from commit 8a368bbdce5dd05adae998ec55f15fd5ff04b52f)

* Fashion Update: Earrings & Makeup (#1299)

# Description

Adds **38** new earrings, **31** new face markings, and **16**
bracelet/watch markings, based from Aurorastation cosmetics. Each
earring, bracelet, and watch marking is applied to just one side of the
body, allowing for greater customizability and mixing-and-matching
markings.

Most notably, the new face markings unlock **full customization of every
pixel** in the 5x4 pixel space of the face. Examples of this are shown
below.

Arachne now have access to **more than a hundred** markings above the
leg, after not having any markings in their 2 years of existence.

## Media

### Pauline

<img height=270px
src="https://github.com/user-attachments/assets/8316effb-34b3-4fa1-a80f-af2a3cd670c2">
<img height=270px
src="https://github.com/user-attachments/assets/be75770a-c5bb-46a7-afb4-2ec54bd5a5e5">

**Head (Side):** Drop Earrings (Left), Drop Earrings (Right)
**Left Hand:** Left Bracelet

### Red and Blue

<img height=270px
src="https://github.com/user-attachments/assets/8c1356fc-6eaa-484f-afb6-5ace7f45d895">

**Head:** Cheek Spot (Left), Eye Corner (Left), Cheek Spot (Right), Eye
Corner (Right)
**Head (Side):** Double Gemstone Earrings (Left), Double Gemstone
Earrings (Right)
**Left Hand:** Left Watch (Colorable)
**Left Arm:** Left Arm Bracelet
**Right Hand:** Right Watch (Colorable)
**Right Arm:** Right Arm Bracelet

### Pink

<img height=270px
src="https://github.com/user-attachments/assets/ae376cc3-7cd5-4e91-a3a0-ebe48202f5e6">

**Head (Side):** Hoop Earrings (Left), Double Gemstone Earrings (Right)
**Left Hand:** Left Bracelet
**Left Arm:** Left Arm Bracelet
**Right Hand:** Right Bracelet
**Right Arm:** Right Arm Bracelet

### Psychic

<img height=270px
src="https://github.com/user-attachments/assets/eaa8069a-2e51-4456-a315-414aa64cd41a">

**Head:** Bindi, Full Blush
**Head (Side):** Long Crystal Earrings (Left), Long Crystal Earrings
(Right)
**Left Hand:** Left Bracelet
**Right Hand:** Right Bracelet
**Right Arm:** Right Arm Bracelet

### Cyclops

<img height=270px
src="https://github.com/user-attachments/assets/55e67db9-0aa4-488d-a25b-32e8fd92044b">

**Head [Eyes]:** Bindi, Glabella, Nose Tape
**Head [Cover for mouth area]:** Lip Corner (Left), Lip Corner (Right),
Cheek Spot (Left), Cheek Spot (Right), Lips
**Head (Side):** Cross Earrings (Left), Cross Earrings (Right)

### 😂

<img height=270px
src="https://github.com/user-attachments/assets/4001b95a-60e1-431c-8463-1e2904cf767a">

### Arachne

![image](https://github.com/user-attachments/assets/b9935347-8977-4424-9b9b-b08aecb458b2)

**Head:** Left Arachne Eye, Right Arachne Eye, Lips, Neck Cover (Slim
Thick)
**Head (Side):** Long Crystal Earrings (Left), Long Crystal Earrings
(Right)
**Left Arm:** Left Robotic Arm from Hesphiastos Industries
**Left Hand:** Left Robotic Arm from Bishop Cybernetics
**Right Arm:** Right Arm Bracelet
**Right Hand:** Right Watch (Colorable), Right Nail Polish

## Technical Details

I did a quick fix in
[MarkingsSet.cs](https://github.com/Simple-Station/Einstein-Engines/compare/master...angelofallars:Einstein-Engines:fashion-update-markings?expand=1#diff-54373833c74b35579f9b3293d5bb0c17eda0d214c11f27dcb40c334ef8c6b513)
to handle a list index out of bounds error where the number of default
markings was lower than the maximum allowed markings, like with Onis who
have a default horn but can wear 2 earrings.

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

🆑 Skubman
- add: 80+ new markings have arrived, including earrings, makeup,
bracelets, and watches. Sashay over to Character Setup to personalize
your character like never before!
- add: The Arachne species can now select markings above the leg,
including cybernetics, makeup, tattoos, noses, earrings, heterochromia,
bracelets, gauze, and more!
- tweak: The available points for Head (Side), Left Hand, and Right Hand
markings have been increased for most species to support the new
markings.
- tweak: The Nail Polish markings have been moved from the Overlay
category to the Left Hand and Right Hand categories.

(cherry picked from commit 932f9e31eab9b2c11c4429b7c9c36effc327e733)

* Automatic Changelog Update (#1299)

(cherry picked from commit b05ab8e0d1e8aa043a60ca96843061f4778136e6)

* ♂️ Add Male Arachne (#1301)

# Description

Adds the ability for Arachne to be male.

Also in this I added chest/arm Arachnid markings for Arachne to use. I
enabled footstep sounds for Arachne since it doesn't seem that they were
intended to have silent footsteps.

## Media

<img height=160px
src="https://github.com/user-attachments/assets/04e3b066-e75c-4ee7-bfd6-762c2defcaf8">

<img height=160px
src="https://github.com/user-attachments/assets/d4582c12-72d8-413f-92e6-145cb90c76c3">

## Changelog

🆑 Skubman
- add: Arachne can now be Male instead of only being Female. They can
now also wear Facial Hair.
- add: Arachne can use Arachnid chest and arm markings.
- fix: Arachne will now have footstep sounds instead of being quiet when
moving.

(cherry picked from commit 1bab6b8844c679897b3a695b363620589292d783)

* Automatic Changelog Update (#1301)

(cherry picked from commit 5476ee090bd735d7791b4ae7f1e8aeea674cd55a)

* Add Localization for Senior Physician and Senior Engineer (#1302)

<!--
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]?
-->

Adds localization for the Senior Engineer and Senior Physician roles
that were recently enabled.

---

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

n/a

---

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

![Snímka obrazovky 2024-12-01
164702](https://github.com/user-attachments/assets/ca69e08d-5adb-4e71-aeda-5969d595e429)
![Snímka obrazovky 2024-12-01
165626](https://github.com/user-attachments/assets/18289899-2314-4d21-9b09-9e3e3415a6e0)

</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
-->

🆑 zelezniciar
- fix: Fixed Senior Engineer and Physician names not appearing correctly

(cherry picked from commit 4bf762411e866952c0257ce7d255b2610d7a3a21)

* Automatic Changelog Update (#1302)

(cherry picked from commit 9169818f60ef0cf156bb1b095d66e5e9d0b4575b)

* Make Cultist Constructs Speak Eldritch (#1303)

# Description

Fixes cultist constructs only speaking Universal and not being able to
understand anyone else due to a missing `LanguageKnowledgeComponent`.

## Changelog

🆑 Skubman
- tweak: Cultist constructs and soul shards now speak Tau-Ceti Basic and
Eldritch.

Co-authored-by: sleepyyapril <123355664+sleepyyapril@users.noreply.github.com>
(cherry picked from commit 8573914e8b6183197abc250d3e8f3c186194b0a6)

* Automatic Changelog Update (#1303)

(cherry picked from commit 114ecde8384ae3d98350aa80d38b96766dc49cfa)

* Fix Lobotomy (#1306)

# Description

Fixes several bugs in the lobotomy procedure.

The lobotomy effect is now stored in the brain instead of the body, so
transferring a lobotomized brain will still give the lobotomy effects,
and a brain transplant to a body where a lobotomy occurred no longer
applies the lobotomy effects. The "Mend brain tissue" procedure to
reverse a lobotomy has been unlocked after a bug prevented it from
showing in the surgery UI.

Lobotomies now add the `ClumsyComponent`, which makes the lobotomized
target as clumsy as clowns.

## Technical Details

This deletes
[SurgeryComponentConditionComponent.cs](https://github.com/Simple-Station/Einstein-Engines/compare/master...angelofallars:Einstein-Engines:fix-lobotomy?expand=1#diff-3786e2be1879fd877a8b501352bbd92baa3a17aecfa4a62827ad41497deb0fd7)
which was only used for the lobotomy procedures (incorrectly, it was
checking for `OhioAccentComponent` in the body part) in favor of
[SurgeryPartComponentConditionComponent.cs](https://github.com/Simple-Station/Einstein-Engines/compare/master...angelofallars:Einstein-Engines:fix-lobotomy?expand=1#diff-7e180742b3a6f00b9f867d3ee4e8891dd00587dc4a2da8ad5e199180a387d18d)
and
[SurgeryBodyComponentConditionComponent.cs](https://github.com/Simple-Station/Einstein-Engines/compare/master...angelofallars:Einstein-Engines:fix-lobotomy?expand=1#diff-249e5a937ba929ffc76f85e8a43f17918afc9ba866e81f4ea4eba2c90fd0c408).

These two components are currently unused as the lobotomy procedures use
a new condition component checking for the brain's
`OrganComponent.OnAdd` field, but they provide a way to check for
components on the body part and on the body, respectively.

## Media

**Lobotomy**

![image](https://github.com/user-attachments/assets/4deb80a8-30d1-4a01-9caa-bc288a88ba95)

**Mend brain tissue**

![image](https://github.com/user-attachments/assets/44403092-cac1-4d12-bd25-ebb7f3f1bc53)

**Remove organ step picture**

![image](https://github.com/user-attachments/assets/85d6960a-1f54-4525-ad53-84b039c91fda)

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

🆑 Skubman
- add: The lobotomy procedure makes the target clumsy like the clown.
This makes them bonk when climbing tables and makes guns they're
shooting blow up on their face.
- tweak: The lobotomy step now requires a scalpel instead of a drill.
- fix: Enabled the "Mend brain tissue" surgical procedure on a
lobotomized target.
- fix: The lobotomized effect is now stored in the brain instead of the
body. The same brain stays lobotomized throughout brain transplants, and
transferring a normal brain to a body where a lobotomy occurred no
longer applies the lobotomized effect.
- fix: The lobotomy procedure now shows the proper popup during the
lobotomization step.
- fix: Removed the ability to perform lobotomies on bodies without a
brain.
- fix: The "Remove organ" surgery step on the UI now properly shows the
retractor sprite instead of the hemostat.

---------

Co-authored-by: sleepyyapril <123355664+sleepyyapril@users.noreply.github.com>
(cherry picked from commit 1895f3addc871e3ad18845c22c61f422f9807107)

* Automatic Changelog Update (#1306)

(cherry picked from commit 71c641283a13fc79c68f8ad23fa1397052b7e74b)

* You Can Now Drag People Into Deep Friers (#1279)

<!--
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]?
-->

You can now drag entities like people into deep fryers. Yes, this will
cook them. Yes, you can cannibalize your own dead crew.

---

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

- [ ] Add a doafter
- [ ] Add a popup warning everyone of what you've done

---

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

obs is broken part 295

</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: You can now shove people into deep fryers by drag-dropping them
onto it.

---------

Signed-off-by: Eris <erisfiregamer1@gmail.com>
Co-authored-by: VMSolidus <evilexecutive@gmail.com>
Co-authored-by: sleepyyapril <123355664+sleepyyapril@users.noreply.github.com>
(cherry picked from commit 82b2b28f3ee0f534b7f32fe54a70ba58d9ebbe1c)

* Automatic Changelog Update (#1279)

(cherry picked from commit cbc76ef649396a827a6c3b38b83c4a20f1affc7b)

* Revert "Emp Flashlight (#5)"

This reverts commit 932f1f6c

* Emp Flashlight (#5) (#1189)

# Description

Ports https://github.com/WWhiteDreamProject/wwdpublic/pull/5

# Changelog

🆑
- add: Added the EMP Flashlight to Syndicate Uplinks.

---------

Co-authored-by: Ivan <126400932+HellCatten@users.noreply.github.com>

(cherry picked from commit 7c0c16e3f2c07bad045c09e13a95855c356024ac)

* Automatic Changelog Update (#1189)

(cherry picked from commit 7beea8901ceea287918f35bd33f8d9445582427a)

* Add Europa Map to Rotation (#1152)

<!--
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 PR adds an old map to rotation called "Europa", originally a
planetary map, but due to several problems it was not able to be played,
I updated a good part of the map adding things necessary to be able to
be played in the EE code, using the same idea To make the Glacier map a
"planet", I created a parallax using the desert texture for the map and
set the atmosphere on the outer side to a temperature of 356.2 K (83 C)
with a high presence of CO2

---

# 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] Rework eng
   - [x] add Super Matter engine
   - [x] better layout

- [x] Rework Epi
  - [x] Better layout
  - [x] missing content

- [x] Minor fixes on the map

- [x] test the map
- [x] add image

---

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

![Europa-0](https://github.com/user-attachments/assets/12839795-60cd-44a2-adab-00d4f68b7ce3)

</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 a new map called "Europa" to rotation

---------

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

(cherry picked from commit 831a7b3092aaab0ef130072a8dfde5354d7809df)

* Automatic Changelog Update (#1152)

(cherry picked from commit b1c3703cdec223ba10aa8e46d28c88694f97450c)

* Update medicine.yml (#1210)

Merges the med doc by floof.
At least one original change by XavierSomething (will update when other
PRs are found)

https://github.com/Fansana/floofstation1/pull/222

---------

Signed-off-by: VMSolidus <evilexecutive@gmail.com>
Co-authored-by: VMSolidus <evilexecutive@gmail.com>
Co-authored-by: FoxxoTrystan <45297731+FoxxoTrystan@users.noreply.github.com>
(cherry picked from commit c22325983ecd0a90b8a042585d20568030d69aaf)

* Atmospheric Alerts Computer Upgrades (#1313)

<!--
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 PR upgrades the capabilities of the Atmospheric Alerts Computer by
displaying colored zones on the station map corresponding to air alarm
status.

Additionally, it makes the Atmospheric Alerts Computer board obtainable
in a Circuit Imprinter once Epi has researched "Atmospheric
Technologies".

This is a port of [Wizden
#31910](https://github.com/space-wizards/space-station-14/pull/31910) by
@chromiumboy

---

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

n/a

---

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

![Snímka obrazovky 2024-12-04
131829](https://github.com/user-attachments/assets/598fcfb4-2983-431e-8192-248880cba1b2)
![Snímka obrazovky 2024-12-04
134819](https://github.com/user-attachments/assets/2eb39995-f9fe-4f11-a01e-a457d3487231)

</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
-->

🆑 zelezniciar
- tweak: Atmospheric Alerts Computer now displays colored zones
corresponding to air alarm status on the station map
- fix: Atmospheric Alerts Computer board is printable in a circuit
imprinter

---------

Co-authored-by: chromiumboy <50505512+chromiumboy@users.noreply.github.com>
(cherry picked from commit e2ee77db5c7dd20958fa246c893d44b767826868)

* Automatic Changelog Update (#1313)

(cherry picked from commit 6c9270d0cf4526bd632d9d975eaa98c9d6767513)

* More Bug Fixes (#1311)

<!--
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]?
-->

[Mice pickup
fixed!](https://github.com/space-wizards/space-station-14/pull/33602)
[Mobs can no longer spill
jugs](https://github.com/space-wizards/space-station-14/pull/33602)
Rest in changelog.

# Changelog
🆑
- fix: You can pick up mobs again with left click.
- fix: No more mob jug spill, including you revenants.
- fix: Set the Gloves of the North Star to the proper attack speed.
- fix: Medibots will no longer try to heal borgs.

---------

Co-authored-by: MilenVolf <63782763+MilenVolf@users.noreply.github.com>
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>

(cherry picked from commit 978173efd5f6e7a7cd9f5a52234291e29ed862dc)

* Automatic Changelog Update (#1311)

(cherry picked from commit 1b156683af55eb6e4fef1f1be46f69ff6b258856)

* ChemMaster Sorting (#1310)

<!--
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]?
-->

[Ports this Frontier
PR.](https://github.com/new-frontiers-14/frontier-station-14/pull/2498#issuecomment-2513268858)

---

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

🆑 DmitriTheDemon
- tweak: The ChemMaster is now sorted.

---------

Signed-off-by: Remuchi <72476615+Remuchi@users.noreply.github.com>
Co-authored-by: Dmitri <reznoriam@gmail.com>
Co-authored-by: Whatstone <166147148+whatston3@users.noreply.github.com>
Co-authored-by: Remuchi <72476615+Remuchi@users.noreply.github.com>
(cherry picked from commit 32e17a621bc78ba70b330036bb5ba2fd371286e0)

* Automatic Changelog Update (#1310)

(cherry picked from commit 01a13e3c9f0beaa595b03acd0e50af4cb6de40bf)

* Port Shipyards (#1314)

# Description

I needed this extremely badly.

# TODO

- [x] Move all of this out of the DeltaV folders.

# Changelog

🆑
- add: Added Shipyards.

---------

Signed-off-by: deltanedas <39013340+deltanedas@users.noreply.github.com>
Co-authored-by: deltanedas <39013340+deltanedas@users.noreply.github.com>
Co-authored-by: Null <56081759+NullWanderer@users.noreply.github.com>
Co-authored-by: Milon <milonpl.git@proton.me>
Co-authored-by: Plykiya <58439124+plykiya@users.noreply.github.com>
Co-authored-by: plykiya <plykiya@protonmail.com>
Co-authored-by: Ed <96445749+TheShuEd@users.noreply.github.com>
Co-authored-by: Radezolid <snappednexus@gmail.com>
Co-authored-by: sleepyyapril <123355664+sleepyyapril@users.noreply.github.com>

(cherry picked from commit d69b516ce2fe3f8da65db745f1157ae259f60e96)

* Automatic Changelog Update (#1314)

(cherry picked from commit 36cd6ca4706196e9c3097efcff3443bc30896c19)

* Port UserActivateInWorldEvent and BypassInteractionChecksComponent (#1295)

<!--
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]?
-->

See https://github.com/space-wizards/space-station-14/pull/28393 and
https://github.com/space-wizards/space-station-14/pull/28236 for
breaking changes and extra information
Works perfectly on a downstream of EE. Changes in third commit have been
tested with doors.

---

# 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
-->
nuh uh

---------

Signed-off-by: sleepyyapril <123355664+sleepyyapril@users.noreply.github.com>
Co-authored-by: Nemanja <98561806+EmoGarbage404@users.noreply.github.com>
Co-authored-by: DrSmugleaf <10968691+DrSmugleaf@users.noreply.github.com>

(cherry picked from commit 1016a0809c6636147647347e9736846cf0536e68)

* Inverts the Check for Material Whitelist in CanChangeMaterialAmount (#1320)

This change was actually suggested by April, I'm not the author.

It fixes Pacman generators and god knows what else.

Prior to the change you could insert steel in it, or just the wrong kind
of fuel.

Since you could only load the wrong kind of fuel the generators were not
working at all.

<!--
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]?
-->

Description.

---

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

---

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

Ejecting steel from a pacman gen

![image](https://github.com/user-attachments/assets/28771e24-4c46-48f1-94dc-c3db03b059a6)

Them working after the fix.

![image](https://github.com/user-attachments/assets/cce907b2-097c-4d4a-837a-606e3c19b5b9)

</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
-->

Co-authored-by: sleepyyapril <123355664+sleepyyapril@users.noreply.github.com>
(cherry picked from commit 54d15c03617c5c33b3804ad233e6dc6d7444080d)

* Build Your Own TEG! (#1316)

<!--
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 PR adds the option of constructing a Thermoelectric Generator (TEG)
from scratch, by adding flatpacks for the TEG Center and TEG Circulator,
as well as a crate that can be ordered from logistics that contains the
flatpacks.

The aim is to give engineering crews the ability to add a TEG to
stations that might lack one, as a "fun" engineering project that can be
pursued on shift. This capability already exists for the Singularity
Engine and Tesla Engines.

The cost of the TEG Construction Kit is set at 8000 spesos, but this can
be changed for balance reasons.

Note: Kit may contain small parts not suitable for children under 3
years old. Some assembly required.

---

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

n/a

---

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

![Snímka obrazovky 2024-12-05
202816](https://github.com/user-attachments/assets/6c6c9f0d-89b2-4558-aa13-ca1c5bbca58d)
![Snímka obrazovky 2024-12-05
203211](https://github.com/user-attachments/assets/69227645-1382-45f0-848b-96b45e6da92f)

</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
-->

🆑 zelezniciar
- add: TEG components now be ordered from Logistics and assembled on
station.

(cherry picked from commit f1b8f960f7aa9f29e638cb794d6f2639b63225e8)

* Automatic Changelog Update (#1316)

(cherry picked from commit 3d2cdd73bfd52e89ae9c11d60cba5c801bf68c8e)

* Several Small Map Fixes to Europa (#1319)

<!--
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]?
-->

Description.

---

# 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] Lack of radiator underneath the SM crystal
- [x] Wrong kind of vent and lack of connectors at the gas chambers
- [x] Inverts one of the connector pumps in the SM's closed loop
- [x] Adds a decal to this inverted pump which was missing
- [x] Lack of Mv wire under a APC on a hallway at the north side
- [x] Lack of Hv wire connection to a substation in the bridge which
powers the bridge and the bar area
- [x] Switches a medical records computer in medbay to a crew monitoring
one
- [x] Adds an autolathe to cargo
- [x] Protrudes the cargo dock which was too tight to fit the shuttle

---

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

Previous docking issue:

![image](https://github.com/user-attachments/assets/30ce4994-8294-40ff-8919-47fa28224dea)

Change in cargo dock design

![2024-12-06_09-25](https://github.com/user-attachments/assets/f968d153-28fe-4007-9b47-d8e36522cfc2)

Crew monitoring replacing medical records

![image](https://github.com/user-attachments/assets/719df986-fe72-4e6b-9263-9aa18b8c2237)

Autolathe added to cargo

![2024-12-06_09-19](https://github.com/user-attachments/assets/4d527179-2242-4d05-a229-d0fcc0aed360)

<h2>Atmos/SM/Wiring changes:</h2>

Added missing Hv connection to a substation in the bridge

![image](https://github.com/user-attachments/assets/0449cf0a-83f4-4ae5-a7cf-49e2f55a5197)

Added one missing Mv wire to this APC

![image](https://github.com/user-attachments/assets/79e939ed-1082-46e2-b572-2f5a31affa7c)

Changed regular vents into passive vents, added connector slot and
attached canisters to it

![image](https://github.com/user-attachments/assets/e8a9c686-f97e-46c3-a9e9-6b1da6776ba3)

Radiator added to SM

![2024-12-06_08-51](https://github.com/user-attachments/assets/e30549dc-1ea3-40d3-b12e-168497e9f19b)

These two pumps in the SM which were redundant, also one of them were
missing decal to the same tile

![image](https://github.com/user-attachments/assets/66e4dcdf-6b8c-4778-910e-288dcc8168ef)

Showing the changed pump after being inverted

![image](https://github.com/user-attachments/assets/ea571ad3-c6aa-4424-ae74-11319ac0f551)

---

Recenter changes:

There were three APC in cargo and north of in which one was connected
with cargo's APC for no apparent reason and the other was missing wires
entirely. I've put the one missing wires to work in the Lv wiring around
it and cut the Lv wires were it seemed appropriate to prevent connecting
multiple APCs with Lv for no reason.

![image](https://github.com/user-attachments/assets/b7a3f1e4-5d1e-48a8-8d54-31efecb9c691)

![image](https://github.com/user-attachments/assets/669d6827-510c-475a-9039-878fbc221faf)
Excess lamps not included in the change

![image](https://github.com/user-attachments/assets/6f1bb7fc-3b5c-4f76-96da-1e362a0c3921)

![image](https://github.com/user-attachments/assets/3e25bd5b-02ff-438a-89da-91310ca3e473)

![image](https://github.com/user-attachments/assets/f2a7990d-f09f-4c44-b68b-830305743c8f)

![image](https://github.com/user-attachments/assets/953948fe-6b3b-48fb-a18f-4a1b2541ccaf)

</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
-->

🆑
- fix: Several small fixes to Europa map, namely to cargo dock, SM and
atmos piping and wires, adds autolathe to cargo and crew monitor to med

(cherry picked from commit 50eb2173c25073d8bed2aaf3dc5a8e4db44a261d)

* Automatic Changelog Update (#1319)

(cherry picked from commit f4152a5597156c58731308e0ef0869862035dce2)

* Fix Rules (#1321)

# Description

The latest update killed our generic rules, and made them not work
anymore. This PR brings them back.

![image](https://github.com/user-attachments/assets/2c7c7a64-3f06-4635-afe4-e6e941a374b7)

# Changelog

🆑
- fix: Server rules work again.

(cherry picked from commit 06a8cee785e74db4c820d072aa3fdafcf2e4c403)

* Automatic Changelog Update (#1321)

(cherry picked from commit 9989c4d3d2214b22f90045c15e32b04f93adb3b0)

* fix

* 237.2.0

* fix

* 237.2.0

* Uplink: Remove Deception Category (#1309)

<!--
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]?
-->

[Ports this downstream
PR.](https://github.com/Fansana/floofstation1/pull/315)

---

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

🆑 fenndragon
- tweak: Moved the uplink deception category into utility.

---------

Co-authored-by: fenndragon <fenndragon@gmail.com>
(cherry picked from commit ec650c49cf9aa00ef94a8ef6fd122e9f2906f98b)

* Automatic Changelog Update (#1309)

(cherry picked from commit 5d64873978b40fc03108674d9554e0cf11e4b454)

* [Feat] Bring Back Die Glorious Death, Hijack And Ian's Meat Traitor Objectives (#1323)

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

---

# 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: Reintroduced 3 traitors objectives: steal Ian's meat, Die
Glorious Death and Hijack Evacuation Shuttle

Signed-off-by: Remuchi <RemuchiOfficial@gmail.com>
(cherry picked from commit 0c60671d98a565cbc81daed2df438853fc03c5bb)

* Automatic Changelog Update (#1307)

(cherry picked from commit 33f80d679da22d870fb5e7d0beddfd67366b77a4)

* Automatic Changelog Update (#1323)

(cherry picked from commit 3ae43708cadfc9e1ab1b3ef1b4f8bc7144017065)

* The Throwing Update (#1307)

# Description

Turns a plethora of items into throwing weapons that deal damage when
thrown. Throwing weapons cost stamina to throw.

## Technical/Balance Details

To make a melee weapon also a throwing weapon, just add `- type:
DamageOtherOnHit`, and it will automatically inherit the damage from a
light melee attack and the melee sound effect as the thrown hit sound
effect. You can set a custom damage value with the `damage` field
(necessary when the item is not a `MeleeWeapon`) and stamina cost with
`staminaCost`.

To make the throwing weapon embed and deal damage over time when
embedded, add `- type: EmbeddableProjectile` and `- type:
EmbedPassiveDamage`. By default, the embed damage per second is 5% of
the throwing damage, but it can be modified on `EmbedPassiveDamage` with
`throwingDamageMultiplier`.

The default stamina cost for throwing is 3.5 stamina. The baseline cost
for almost all DoT embeddables is 5 stamina, because of the extra damage
the DoT brings.

When a thrown item hits a target with body parts, it will randomly
select a body part and only deal throwing damage to that body part. It
will also embed to the same body part and only deal passive embed damage
to it.

## TODO

The unchecked checkmarks are best addressed in another PR but they will
stay here for now.

<details><summary>Show Todo</summary>

- [ ] Deal with prediction issue on embeddable projectile removal
- [ ] This happens even before this PR so not really a big issue, maybe
in a separate PR
- [x] Add embeddable damage numbers to embeddables
- [x] Fix throwing angle for surgery tools after the surgical tools
sprite update
- [ ] Try to make the throw knockback function as if it hit a wall
- [x] Esword/desword/e-dagger toggle embed damage
- [x] Don't start passive embed damage if EmbedPassiveDamageComponent
has no damage
- [x] Make DamageOtherOnHit.Damage not nullable
- [x] Throwing damage only to a specific body part

### Traits

- [ ] **Enraged Throw** (Oni)
  - [ ] Oni/trait damage bonus applied to throwing weapon too
- [ ] Can throw carried bodies, which will do a MassContest between the
thrown body and the hit body to determine blunt damage, and stun
duration for each party
  - [ ] 15% resistance to thrown/embed damage
- This helps when their enemy uses the items they throw against them.

- [ ] **Sharpthrower** (Human)
  - [ ] 10% more Brute thrown damage
  - [ ] 50% chance of throw hitting targetted body part
  - [ ] 40% throwing stamina cost reduction
  - [ ] 15% resistance to thrown/embed damage

### Embeds

- [x] Adjust embed damage per second to be like /tg/ (in /tg/ spear has
around ~1.2 embed DPS, adjust for ~45% embed chance since we're not
implementing embed chance and its 0.54)
- [ ] Merge EmbeddableProjectileComponent and
EmbeddablePassiveDamageComponent
- [ ] Split SharedProjectileSystem into EmbeddableProjectileSystem
- [x] Embed to a specific body part and deal damage only to that part,
for now can randomly select body parts on embed
- [ ] ~~Normal passive damage becomes x0.2 when lying down~~
- [ ] Increased damage when moving, more bonus damage for running
(Jostle DPS on /tg/ is 0.2 running and 0.1 when walking/crawling)
- [x] All embeddables have a fall out time (30 or 45 secs)
- [ ] - [x] On damage examine, can see that an object is embeddable "It
can embed on a target if thrown."
- [ ] Negative moodlet for attached harmful embeddables
- [ ] On health examine target with embeds, can see embedded objects "He
has a spear embedded in his left arm."
- [x] On examine item that is embedded, can see to which body part the
item is embedded "The spear is embedded on Urist McHands's left arm."
- [ ] An embeddable removed outside of surgery deals a lot of damage (x2
thrown damage)
- [ ] Lying down prevents natural falling out and thus the damage with
non-surgical removal
- [ ] Surgical procedure on a body part to remove all embeds on it,
using hemostat for removal
- [x] Allow anyone to remove embedded cultist weapons even if they're
not a cultist

</details>

## Media

**Throwing Toolbox Tools**

https://github.com/user-attachments/assets/4e20568f-adf0-4be8-ac38-fc6b21fed03c

**Examine**

![image](https://github.com/user-attachments/assets/ef95e653-1491-4d9b-8f84-785c3df22763)

**Examine After Embedding**

![image](https://github.com/user-attachments/assets/edc79c8f-db23-4bd3-9fa7-3b47f79c5881)

## Changelog

🆑 Skubman
- add: The Throwing Update is here. You can throw most melee weapons at
the cost of stamina to deal damage from afar.
- add: Dozens of throwable weapons, mainly sharp weapons will now embed
on throw and deal damage every second until they're manually removed or
naturally fall off after some time.
- add: Examining the damage values of an item now shows its throwing
damage, throwing stamina cost, whether or not it embeds on a throw, and
if the embed deals damage over time.
- add: Examining an embedded item now shows what body part it's embedded
in.
- tweak: The traits High Adrenaline, Adrenal Dysfunction, Masochism and
Low Pain Tolerance now affect throwing attacks just like melee attacks.
- tweak: The default time to remove embedded items has been increased
from 3 to 5 seconds, and both the remover and the target with the
embedded item need to stand still during the removal.
- tweak: The time to pry up a floor tile with a crowbar and other tools
has been decreased from 1 second to 0.5 seconds. The throwing damage of
floor tiles has been increased. Go figure.
- fix: Attempting to throw a Blood Cultist item without being a cultist
will stun you and drop the item you're holding properly.

---------

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

(cherry picked from commit c40af73e43c394edb1e96f2bfcc278ca0d54f94e)

* fix

* Automatic Changelog Update (#1307)

(cherry picked from commit 33f80d679da22d870fb5e7d0beddfd67366b77a4)

* Replace Direct Uses of GameTicker Dictionary with `TryGetValue` (#33222) (#1329)

Cherry picks "Fix station events schedulers, antag selection and
possibly other systems acting weird in a rare scenario."
# Description

This is being PRed mostly as a fix to an issue which caused the round to
fail to start due to an error in antag selection, which did happen in
Thief antags and may also happen with Bloodcult gamemode.

Double posting from discord:
> It fixed issues caused with antag selection at roundstart which
affected roundstart Thief selection.
>
> Since cultists are also selected exactly at roundstart - unlike
traitors for instance, I think this might help with cultists too.
>
> I tried to force start bloodcult gamemode in the past and it failed to
start but I since I had tracebacks disabled trying to improve
performance I'm not sure this was the cause.
>

Credits to April for pointing this out for me after I commented on the
issue.

----

This cherry picks 79ff990ddf7c7af40f70bcc7ba2d3220730852ab removing
changes which change methods which do not exist yet on our side.

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

Co-authored-by: faint <46868845+ficcialfaint@users.noreply.github.com>
(cherry picked from commit 8216a6e60b114a65fb4662587e6e6f2e38dd242f)

* Fix Debug Assert. (#1325)

nothin' crazy, just annoying.

(cherry picked from commit ca7e5768be4350d13a0541005ad795b9fb17c2a7)

* Fix Melee Weapon Attack Speed (#1330)

Description.

Melee weapons got swapped from attacks/second to second/attack but the
actual attack rate value didn't get changed so weapons got all jumbled.
I'm pretty sure I got them all but I might've missed a few in weird
folders

🆑
- fix: Fixed melee weapons.

---------

Signed-off-by: dge21 <129136517+dge21@users.noreply.github.com>
Co-authored-by: sleepyyapril <123355664+sleepyyapril@users.noreply.github.com>
Co-authored-by: VMSolidus <evilexecutive@gmail.com>

(cherry picked from commit f9133933e72bb9c3f7b5d130fc3c3ceb4358b9cd)

* Automatic Changelog Update (#1330)

(cherry picked from commit 1592c0e225593707d03626f24e009ad089631e49)

* CVar CharacterRequirement (#1322)

<!--
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 takes in one CVar and one required value and simply checks if the
CVar's value as a string is equal to the required value. I could make it
use a list of them, but I really didn't think it was needed considering
CharacterAndLogic.

I also cleaned up CharacterRequirements.Profile.cs a bit.

---------

Signed-off-by: sleepyyapril <123355664+sleepyyapril@users.noreply.github.com>
Co-authored-by: VMSolidus <evilexecutive@gmail.com>
Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com>
(cherry picked from commit 34209e69c0251e279a7090bbd097825ffae70fde)

* Update Credits (#1326)

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>
Co-authored-by: sleepyyapril <123355664+sleepyyapril@users.noreply.github.com>
(cherry picked from commit 49b9c34f66528c92303fb3bf6dd8f8db55c435b6)

* Back Out "Flash Now Flashes Black Instead of White. (#14642)" (#1331)

Original commit changeset: c3dcc7a124

# Description

Dark flash is cowardly. Billions must be flashbanged irl

# Changelog

🆑
- tweak: Flashes are bright again!

(cherry picked from commit 6b1feac3b12fecb33cfb7e30354347e8443b9c41)

* Automatic Changelog Update (#1331)

(cherry picked from commit 48951ffc83393b6d0d007283206efc8af678c92a)

* Nix housekeeping

(cherry picked from commit 142ff101a3e7794250bd91422db7c3dbabcf1161)

* Port N14 Mapper Assets (#1315)

# Description

By request from Old Dance Jacket, who wanted to be able to use N14
Mapping Assets in SS14. We should probably trim this list down for what
assets aren't actually needed (Any asset that is 100% unique to Fallout
for instance)

# Changelog

🆑
- add: Added a large number of mapping assets from Nuclear14

(cherry picked from commit 3e9387686105cc7a0928e65682b8075f7e7737f4)

* Automatic Changelog Update (#1315)

(cherry picked from commit b4e9e44b0e2641fc5ea7936d9cdb5c156d3a2d39)

* Billions Must Flip (#1318)

# Description

Billions must flip.

https://github.com/Goob-Station/Goob-Station/pull/828
https://github.com/Goob-Station/Goob-Station/pull/832

# Changelog

🆑
- add: Spin, flip, and jump emotes have been added.

---------

Signed-off-by: sleepyyapril <123355664+sleepyyapril@users.noreply.github.com>
Co-authored-by: username <113782077+whateverusername0@users.noreply.github.com>
Co-authored-by: router <messagebus@vk.com>
(cherry picked from commit 0ed26cebf3e82c3aeb3d5d5096a3be6750cf1e77)

* Automatic Changelog Update (#1318)

(cherry picked from commit 39d250fb74e5da7d87fae08c662cd88f914d2df6)

* Re-Enable Clown/Mime Hardsuit and Clown Snoring (#1324)

# Description

Reverses one of the countless content removals from the old codebase EE
was based on by adding back the Clown hardsuit and Mime hardsuit as
craftable items. Also re-enables the unique clown snoring sound.

## Media

**Hardsuits (renamed to Vacsuit)**

<img width=400px
src="https://github.com/user-attachments/assets/92f77ef3-3380-4b98-a099-7ed28e260de2">

<br>

<img width=400px
src="https://github.com/user-attachments/assets/7940d34c-0e7c-4979-bd95-3992e3d79e98">

**Honk Mimimimi**

https://github.com/user-attachments/assets/2d8af9a6-d17d-4a94-9f59-7b3aafd987a2

## Changelog

🆑 Skubman
- fix: Fixed an issue where players could not craft clown hardsuits and
mime hardsuits on the crafting menu.
- fix: Fixed an issue where clowns did not have their signature silly
snore sound when sleeping.

---------

Co-authored-by: sleepyyapril <123355664+sleepyyapril@users.noreply.github.com>
(cherry picked from commit 946b7664763b8b823215a710743d74b4b0dd6a79)

* Automatic Changelog Update (#1324)

(cherry picked from commit 48d63bacf6bd665c8ff98e33d5da3a0e1e4ffb52)

* Blood Cult DLC 1: Make It an Actually Playable Game (Mode) (#1276)

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

You don't actually have to pay for it, y'know?
---

# 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] Fix bugs from discord thread.

---

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

![Example Media Embed](https://example.com/thisimageisntreal.png)

</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: In-game guide book to kickstart your sinister activities.
- add: Constructs now have abilities.
- add: Rending rune and apocalypse rune now should only be placed in the
specific spots on maps. Needs to be mapped.
- add: Veil Shifter now displays how much charges it has when examining.
- add: Cult runes now have descriptions. Also stating how much invokers
required for each rune.
- add: Blood rites can now be dropped&deleted.
- add: Blood rites now suck... blood in 0.5 tiles radius.
- remove: Non-cultists can no longer examine runes.
- fix: Fixed Cult Objective Target selection. You can (and should)
sacrifice your own people now.
- fix: Non cultists can no longer use veil shifter.
- fix: Teleport spell is no more a cheap rip-off and now actually
teleports.
- fix: Timed Factories can't no more produce infinite number of
entities.
- fix: Offering rune should now properly convert someone.
- fix: Sacrificing body with mind now properly transfers their mind to
soul shard.
- fix: Shadow Shackles now cuffs the target instead of the caster
(lmao).

---------

Signed-off-by: Remuchi <RemuchiOfficial@gmail.com>
Signed-off-by: Remuchi <72476615+Remuchi@users.noreply.github.com>
Co-authored-by: Raphael Bertoche <bertocheraphael@gmail.com>
Co-authored-by: VMSolidus <evilexecutive@gmail.com>

(cherry picked from commit 975c673d41f7379975e3d9bed07d29a33371b39a)

* Automatic Changelog Update (#1276)

(cherry picked from commit 149afb608d2f84f4bd8c48443374ba7b9d72ff34)

* Automatic Changelog Update (#1335)

(cherry picked from commit 478e159fb76c497423e370bd583958295bbbb443)

* RobustToolbox

* fix: stun

* fix: stun

---------

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: Skubman <ba.fallaria@gmail.com>
Co-authored-by: Tmanzxd <164098915+Tmanzxd@users.noreply.github.com>
Co-authored-by: Remuchi <72476615+remuchi@users.noreply.github.com>
Co-authored-by: sleepyyapril <123355664+sleepyyapril@users.noreply.github.com>
Co-authored-by: DEATHB4DEFEAT <77995199+deathb4defeat@users.noreply.github.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Raphael Bertoche <rbertoche@cpti.cetuc.puc-rio.br>
Co-authored-by: DocNITE <docnite0530@gmail.com>
Co-authored-by: gluesniffler <159397573+gluesniffler@users.noreply.github.com>
Co-authored-by: zelezniciar1 <39102800+zelezniciar1@users.noreply.github.com>
Co-authored-by: Eris <erisfiregamer1@gmail.com>
Co-authored-by: Ichaie <167008606+ichaie@users.noreply.github.com>
Co-authored-by: Emily Smith <41290202+Suraru@users.noreply.github.com>
Co-authored-by: Raphael Bertoche <bertocheraphael@gmail.com>
Co-authored-by: dge21 <129136517+dge21@users.noreply.github.com>
Co-authored-by: stellar-novas <stellar_novas@riseup.net>
2024-12-14 10:41:27 +02:00
Spatison
a2557f75a6 Upstream (#129) 2024-11-21 17:49:04 +07:00
VMSolidus
d30b987f93 Unathi Lore Update (#1008)
# Description

This PR updates the Localizations relevant to the Reptilian species by
significantly expanding upon them as Unathi, which is how they are
typically referred to as in both /tg/station and Baystation12 derived
codebases in SS13. I have added a new "Rare" language taken from Aurora,
called Azaziba, which can only be taken by Unathi as a bonus language
trait.

Translators for this new language Azaziba are intentionally not
obtainable ingame except as spawned by Admins. This is a "Rare"
language, and shouldn't be accessible to players outside of Unathi
obtaining the trait.

The biggest change in this update however is a massive expansion upon
the Unathi Guidebook entry, providing a significant volume of Lore,
which is largely taken(with slight modifications) from
https://wiki.aurorastation.org/index.php?title=Unathi (Which, I can do
this since their wiki has a Creative Commons license). This is probably
the best way to get good quality lore for them, other than by writing it
myself.

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


![image](https://github.com/user-attachments/assets/842d9c40-3cf3-41ab-a9fe-f0aac81c1bce)


![image](https://github.com/user-attachments/assets/f1ef8090-97a4-46f9-8548-9389606d4e3b)


![image](https://github.com/user-attachments/assets/870ab41c-fe00-45cf-8440-51cfe3f0b164)


![image](https://github.com/user-attachments/assets/09a8548a-cb98-4158-b0a8-e641078ecf80)

</p>
</details>

# Changelog

🆑
- add: Localizations for Reptilians that acknowledge them now as Unathi.
- add: Azaziba has been added as a new "Rare" language that can only be
taken by Unathi. Translators between Azaziba and Tau-Ceti Basic do not
exist, please do not make them.
- add: SIGNIFICANTLY expanded upon the Guidebook for Unathi by including
a large volume of lore taken from the Aurora Station Wiki.
2024-10-19 13:36:25 +07:00
VMSolidus
34f0316d74 Harpy Language! (#968)
# Description

This PR adds a new Language specific to the Harpy species, which is
composed of syllable charts taken from Polish, Serbian, Greek, and
Turkish. It uses Cambria as its font, which is modestly different from
the standard font, but still reasonably readable. This also adds a
Language menu trait that allows people to buy the language with a trait
point.

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


![image](https://github.com/user-attachments/assets/929a5110-2339-4410-a97d-9f1bcf537e7b)

</p>
</details>

# Changelog

🆑
- add: Harpies now have their own species-specific language, called
Valyrian Standard
- add: Valyrian Standard can now be bought as an extra language in the
Traits menu.

---------

Signed-off-by: VMSolidus <evilexecutive@gmail.com>
Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com>
2024-10-19 13:22:38 +07:00
VMSolidus
bac1956387 Basic Language Menu (#936)
# Description

This is a very _early_ take on a Language menu, making use of the new
CharacterItemGroups functionality, as well as functionality added to the
trait system that allows it to add and remove languages directly. This
PR adds in the languages Tau-Cetic Basic(taking the place of Galactic
Common), Tradeband, Freespeak, Elyran Standard, and Sol Common(I'm
replacing the extremely basic bastardized Sol Common we had before with
the fully realized version of it from Bay12).

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


![image](https://github.com/user-attachments/assets/68d054b6-975b-42db-b039-d517e337ace3)

</p>
</details>

# Changelog

🆑
- add: A basic Languages menu has been added into the Traits tab. 
- add: Tau-Ceti Basic, Tradeband, Freespeak, Elyran Standard, Sol
Common, and Sign Language have been added to the Languages tab.
2024-10-19 13:13:34 +07:00
Mnemotechnican
b15d096a3e Minor Language Fixes (#618)
# Description
Fixes:
- Whisper not undergoing readability obfuscation when out of range
- Handheld translators ignoring language knowledge requirements
- Several animals not having defined languages
- Computers not having languages (this primarily affects the RnD console
and in the future the cargo request console which send radio messages)
- Some languages lacking brightness and thus being hard to read

Also makes language colors from language markers use alpha blending
instead of overriding the original color. The change is subtle, kinda
hard to make it noticable without defeating the original purpose...

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

Example of the new colors


![image](https://github.com/user-attachments/assets/291c1a6d-829b-43ec-afb7-5c902a1e4aff)

</p></details>

---

# Changelog
🆑
- fix: Whisper can no longer be heard clearly outside the intended
range.
- fix: Translators can no longer be used without knowing the languages
they require.
- fix: Computers (primarily RnD console) now speak GC by default instead
of Universal.
- tweak: Readjusted colors of all languages to make them easier to read.
2024-07-31 16:57:25 -07:00
Mnemotechnican
92dcd724d4 Refactor Sign Languages and Language Markers (#575)
# Description
This refactors #510 and #553. #553 specifically was reverted and
re-implemented from scratch. As a consequence to all of this, the chat
system was refactored a bit too, hopefully for the best.

Changes:
- InGameICChatType, InGameOOCChatType, ChatTransmitRange were all moved
to shared and made serializable
- Added a method to wrap whisper messages to reduce code duplication in
chat system
- Both WrapPublicMethod and WrapWhisperMessage call the same generic
WrapMessage method, which allows to add speech verbs to whispers and
more. That method is also fully responsible for adding language markers
and deducing speech verbs now.
- Everything related to speech was moved out of LanguagePrototype and
into SpeechOverrideInfo. LanguagePrototype now holds an instance of
that.
- Added AllowRadio, RequireSpeech, ChatTypeOverride,
SpeechVerbOverrides, MessageWrapOverrides to SpeechOverrideInfo, all of
which are used in implementing the sign language.
- Suffered a lot

# TODO
- [X] Cry
- [X] Fix the sign language not displaying properly over the character.
- [X] Find a way to circumvent being unable to speak??

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


![image](https://github.com/user-attachments/assets/845ec5d3-20aa-4786-bdc8-c39c80e0a4a3)

See below

</p></details>

# Changelog
No cl no fun

---------

Signed-off-by: Mnemotechnican <69920617+Mnemotechnician@users.noreply.github.com>
Co-authored-by: Danger Revolution! <142105406+DangerRevolution@users.noreply.github.com>
2024-07-26 13:11:42 -07:00
FoxxoTrystan
61719b756b Sign Languages! (#553)
<!--
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]?
-->

Gives a new way to speak, Sign Languages using the Language system by
only adding a nullable variable.
Sign Language uses the default Emote system, meaning its will not get
picked up by Radio or others devices or get blocked by accents.

When a Sign Language is on, "Say/Whisper" will talk in Sign Language,
Emote will still act like normal emotes.

The Glorious Sign Language has arrived... and there can be more then
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>


![image](https://github.com/user-attachments/assets/ac0c1a57-da49-4419-bb75-da0a308eee7d)

![image](https://github.com/user-attachments/assets/0739a740-4adf-4ba1-a852-0a382a534d8d)

</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
-->

🆑 FoxxoTrystan
- add: Added the ability to speak with Sign Language.
2024-07-19 18:20:30 +01:00
FoxxoTrystan
849b33047c Languages Markers (#510)
<!--
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]?
-->

Require #459 

Add 3 optional settings for LanguagePrototypes to play with richtext
tags to they could be reconized as Makings

color - Set a specefic color to the text.
fontId - Set a font to the text by using the Id.
fontSize - Set the size of the text

All 3 are optional if not set message will be handeled like normal.

This should be mostly used to know what language your currently speaking
and assist with markings.
Take note those changes happent only in the TextBox chat, bubblechat is
left unchanged.

---

# 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] Add Markings
- [x] Add Fonts

---

<!--
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/Simple-Station/Einstein-Engines/assets/45297731/10c3956b-c964-41af-ba0e-37ad1be8119e)

![image](https://github.com/Simple-Station/Einstein-Engines/assets/45297731/4377bdd8-a52e-4b62-bd70-fa9ba36c8d8b)

</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
-->

🆑 FoxxoTrystan
- add: Languages are now marked in the chat!

---------

Signed-off-by: Mnemotechnican <69920617+Mnemotechnician@users.noreply.github.com>
Signed-off-by: FoxxoTrystan <45297731+FoxxoTrystan@users.noreply.github.com>
Co-authored-by: fox <daytimer253@gmail.com>
Co-authored-by: Mnemotechnican <69920617+Mnemotechnician@users.noreply.github.com>
2024-07-09 20:01:38 +01:00
Mnemotechnican
9d5f3b65df Refactor the Language System (#459)
# Description
The language PR was merged early and OH GOD I ALREADY REGRET IT

This PR is intended to provide the missing refactors and address the
issues that were missed due to the early merge.

---

# TODO
- [X] Introduced a polymorphic obfuscation property to the
LanguagePrototype - now it supports more than just 2 hardcoded methods,
and each method can be configured per-language. Currently there are 3
obfuscation methods: replacement (same as replacement accent),
obuscation by syllables and obfuscation by phrases.
- [X] Refactored the existing obfuscation methods to not be a big
hardcoded mess.
- [X] Updated the existing languages accordingly: animalistic languages
are now less of an unreadable mess and include less syllables. Certain
languages like binary and snake seriously benefit from that.
- [X] Refactored the existing commands in response to the
never-addressed review (it got lost among hundreds of others)
- [X] Refactored the commands to be more user-friendly (you can now use
the number of the language in saylang and languageselect which can allow
using keybinds to switch between languages)
- [X] Moved a lot of obfuscation-related stuff from server to shared.
The actual obfuscation process, however, is still done on the server.
That may or may not be subject to change, too.
- [X] Refactored the entire process of resolution of entities'
languages. Instead of raising an event every time it's required to learn
what languages an entity knows, the lists of ALL languages available to
the entity (including via translators) is stored in
LanguageSpeakerComponent and only updated when necessary (e.g. when a
translator gets toggled). The list of languages the entity knows on its
own is now stored in LanguageKnowledgeComponent.
- [X] Made handheld translators automatically change your current
language when activated.
- [X] Rewrote the translator implanter system, now using the real
implants and implanters
- [ ] Rebalance science stuff (translators are incredibly expensive for
what they're worth)
- [ ] Uhhh stuff

---

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

N/A for now

</p>
</details>

---

# Changelog

🆑
- tweak: Translator implants are now proper implants that can be
removed.
- tweak: Animalistic languages should now look less messy.
- fix: Hopefully fixed language menu desync and other issues.

---------

Signed-off-by: Mnemotechnican <69920617+Mnemotechnician@users.noreply.github.com>
2024-07-05 19:49:47 -04:00
FoxxoTrystan
82edb60ac6 Languages (#43)
Resolves https://github.com/Simple-Station/Einstein-Engines/issues/37

# Description

This PR adds languages. Every entity who can speak now speaks a specific
language (or Universal, for entities that are not supposed to speak,
which is understood by everyone). Other entities who do not understand
this language will see gibberish (it's possible to learn how certain
induvidual words are spelled. But the spelling changes between rounds).
This means that certain creatures, like xenos, cats, vulps, can
communicate within their species in their own languages. Similarly, it
means that xenos, cats and other things cannot understand GalacticCommon
speakers without a translator or cognization.

An entity may be able to speak multiple languages, or understand a
language but be unable to speak it.

Thi PR was orignally made for Frontier but is now being ported and will
be maintain here.
Orignal PR:
https://github.com/new-frontiers-14/frontier-station-14/pull/671

This PR was made orignally by Mnemotechnician and FoxxoTrystan.

---

# TODO

- [x] Language System. (Check Frontier PR for all the compleated todo
list)
- [x] Port PR from Frontier.
- [x] QOL Changes.
- [x] Missing Default Languages. (Missing default langauges for some
roundstart species)
- [x] Animals Languages.

---

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


![image](https://github.com/Simple-Station/Einstein-Engines/assets/45297731/fc43efd9-612e-4a6d-8ed6-90a26d315c6f)

![image](https://github.com/Simple-Station/Einstein-Engines/assets/45297731/b86616a3-d5fb-408d-865e-90d09096b6d7)

![image](https://github.com/Simple-Station/Einstein-Engines/assets/45297731/ab1e8581-522d-4e7e-95e8-f62575bc5039)

</p>
</details>

---

# Changelog

🆑 FoxxoTrystan / Mnemotechnician
- add: All species can now bring their own cultures and languages

---------

Signed-off-by: Mnemotechnican <69920617+Mnemotechnician@users.noreply.github.com>
Signed-off-by: FoxxoTrystan <45297731+FoxxoTrystan@users.noreply.github.com>
Co-authored-by: fox <daytimer253@gmail.com>
Co-authored-by: Mnemotechnican <69920617+Mnemotechnician@users.noreply.github.com>
Co-authored-by: Pspritechologist <81725545+Pspritechologist@users.noreply.github.com>
Co-authored-by: Lincoln McQueen <lincoln.mcqueen@gmail.com>
Co-authored-by: Arkyfloof <Marvinlinke08@gmail.com>
Co-authored-by: reese1243 <ber23027@byui.edu>
Co-authored-by: VMSolidus <evilexecutive@gmail.com>
Co-authored-by: Eagle-0 <114363363+Eagle-0@users.noreply.github.com>
Co-authored-by: BlitzDev <145472107+Reese1243@users.noreply.github.com>
Co-authored-by: Arkyfloof <161242062+Arkyfloof@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>
2024-06-10 16:48:48 -04:00