Commit Graph

101 Commits

Author SHA1 Message Date
āda 357c3eb1a8 Predict identity (#40185)
* crossing the pond

* share some station records

* share some criminal records

* single system

* comments

* minor touchups

* I always forget this part

* requested changes

* revert predicted spawn

* requested changes

---------

Co-authored-by: iaada <iaada@users.noreply.github.com>
2025-12-29 11:39:11 -06:00
pathetic meowmeow 3fc97344af De-enumify humanoid species skin colours (#39175)
* De-enumify humanoid species skin colours

* Change index to resolve

---------

Co-authored-by: Princess Cheeseballs <66055347+Pronana@users.noreply.github.com>
2025-12-29 11:39:07 -06:00
Pieter-Jan Briers b7f297f612 Fix usages of TryIndex() (#39124)
* Fix usages of TryIndex()

Most usages of TryIndex() were using it incorrectly. Checking whether prototype IDs specified in prototypes actually existed before using them. This is not appropriate as it's just hiding bugs that should be getting caught by the YAML linter and other tools. (#39115)

This then resulted in TryIndex() getting modified to log errors (94f98073b0), which is incorrect as it causes false-positive errors in proper uses of the API: external data validation. (#39098)

This commit goes through and checks every call site of TryIndex() to see whether they were correct. Most call sites were replaced with the new Resolve(), which is suitable for these "defensive programming" use cases.

Fixes #39115

Breaking change: while doing this I noticed IdCardComponent and related systems were erroneously using ProtoId<AccessLevelPrototype> for job prototypes. This has been corrected.

* fix tests

---------

Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
2025-12-29 11:39:03 -06:00
pootslap e6f521ea13
Change age appearance (#4783)
* Update SpeciesPrototype.cs

* Update SpeciesPrototype.cs

* Update SpeciesPrototype.cs

* added comments

hope I did it right

Signed-off-by: pootslap <211648338+pootslap@users.noreply.github.com>

---------

Signed-off-by: pootslap <211648338+pootslap@users.noreply.github.com>
2025-11-30 10:31:42 -06:00
Vape ed9560c92f
OVINIA INVASION !! (#4715)
* Ovinia Species (Straight Sheepin It) DRAFT (#490)

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

Yeah yeah yeah im sheeping my shit im straight sheeping it yeah yeah
yeah.
I'm literally making the Ovinia species, sheeps in space. oh god oh fuck
i hope i get this done.

Ovinia are basically sheep but in space! Pretty freaking cool!

Traits:
Pros:
wont trigger shards/mousetraps on step,
cold/heat threshhold resist (wool),
get hungry/thirsty 25% slower,
flammibility 75% (wool),
Take 20% less cold, shock, and heat damage (wool),

Cons:
theobromine weakness,
sleep 50% longer, (to be coded)
eat 20% slower,
take 15% more pierce/slash

---

<!--
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] Get Base Sprites in for body/tail/ears
- [x] Make Species Prototype
- [x] Make Markings Prototype
- [x] Make Body Parts Prototype
- [x] Make Entity Body Prototype
- [x] Make sure Entity Body Prototype is done right
- [x] Make Organ Prototype
- [x] Make Entity Species Prototype
- [x] Make sure Entity Species Prototype is done right
- [x] Add markings/finish Prototype
- [x] Make Sounds Prototype
- [x] Add Sounds
- [x] Make sure Baas is an emote and works
- [x] Make Mobs Player
- [x] Make sure Mobs Player Prototype is done right
- [x] Make Language Prototype
- [x] Add Displacement maps for clothing
- [x] Add swag
- [x] Add traits
- [ ] Add ovinia outerwear variants (can do later)
---

<!--
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/b000389d-55f3-4de7-84d8-058f7fa1832b)

![image](https://github.com/user-attachments/assets/ea7ca855-edc8-42a0-9a36-941ccac403a7)

![image](https://github.com/user-attachments/assets/ca0c919d-214c-4ca7-bb30-a62c009588bb)

![image](https://github.com/user-attachments/assets/7e19d12d-3e1d-41a0-992b-1785f5ea2215)

![image](https://github.com/user-attachments/assets/f08210b1-5f02-4e6f-8d46-5018fc8a918b)

![image](https://github.com/user-attachments/assets/88848e52-eb54-44dc-ad0e-bcdc7d756078)

</p>
</details>

---

<!--
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 Ovinia as a playable species!
- tweak: Moved some localization to Den specific areas
- remove: Removed all of the snacks out of gregg's cupboard

---------

Co-authored-by: Blitz <73762869+BlitzTheSquishy@users.noreply.github.com>
Co-authored-by: Rosycup <178287475+Rosycup@users.noreply.github.com>

* Sum Horns (#911)

<!-- Guidelines:
https://docs.spacestation14.io/en/getting-started/pr-guideline -->
<!-- NOTE: All code submitted to this repository is ALWAYS licensed
under the AGPL-3.0-or-later license.
The REUSE Specification headers or separate .license files indicate a
secondary license (e.g., MPL or MIT) solely to facilitate
integration for projects that do not use the AGPL license. This
secondary license does not replace the fact that AGPL-3.0-or-later
remains the primary and binding license.
Uncomment and modify the following line if you wish to change the
license from the default of AGPL.-->
<!-- What did you change? -->
This adds four new horns for Ovinia. And a snout, too. 🫡
It's MIT because I want it to be, and in case anyone needs horns for
species that are like. That high up in orientation.
<!-- Discuss how this would affect game balance or explain why it was
changed. Link any relevant discussions or issues. -->
Ovinia don't have enough horns. Ovinia also doesn't have a marking that
puts a line through the top of your face. So I fixed that in this PR.

<!-- Summary of code changes for easier review. -->
A meta JSON, an FTL file, and a bunch of images.
<!-- Attach media if the PR makes ingame changes (clothing, items,
features, etc).
Small fixes/refactors are exempt. Media may be used in SS14 progress
reports with credit. -->
Just look in files changed.
<!-- Confirm the following by placing an X in the brackets [X]: -->
- [X] I have read and am following the [Pull Request and Changelog
Guidelines](https://docs.spacestation14.com/en/general-development/codebase-info/pull-request-guidelines.html).
- [X] I have added media to this PR or it does not require an ingame
showcase.
- [X] I can confirm this PR contains no AI-generated content, and did
not use any AI-generated content.
<!-- You should understand that not following the above may get your PR
closed at maintainer’s discretion -->

**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. -->
🆑
- add: Gave ovinia a little bit more horn, and a secret snout.
<!--
🆑
- add: Added fun!
- remove: Removed fun!
- tweak: Changed fun!
- fix: Fixed fun!
-->

---------

Co-authored-by: TheDen-Bot <186991657+TheDen-Bot@users.noreply.github.com>

* Ovinia Trait Fix and Emote Adjustments (#1124)

<!-- Guidelines:
https://docs.spacestation14.io/en/getting-started/pr-guideline -->
<!-- NOTE: All code submitted to this repository is ALWAYS licensed
under the AGPL-3.0-or-later license.
The REUSE Specification headers or separate .license files indicate a
secondary license (e.g., MPL or MIT) solely to facilitate
integration for projects that do not use the AGPL license. This
secondary license does not replace the fact that AGPL-3.0-or-later
remains the primary and binding license.
Uncomment and modify the following line if you wish to change the
license from the default of AGPL.-->
<!--- LICENSE: AGPL -->
Fixed the localisation of the Baa emote. Changed Baa and Moo from the
caw icon to relevant animal icons both taken from
[[TGstation](https://github.com/tgstation/tgstation)] and modified
slightly. Fixes the ovinia trait not conferring the relevant emotes when
chosen. Fixes #775.

Fixed missing location for Baa emote.
Added relevant _Den namespace folders and attribution file for emotes.
Added two new icons to said folders.
Removed ´available: false´ from ovinia speech_emotes.yml making the
trait work as intended.

<img width="153" height="114" alt="imagen"
src="https://github.com/user-attachments/assets/2530e067-dccc-41e7-b36b-9be5594761c9"
/>

- [X] I have read and am following the [Pull Request and Changelog
Guidelines](https://docs.spacestation14.com/en/general-development/codebase-info/pull-request-guidelines.html).
- [X] I have added media to this PR or it does not require an ingame
showcase.
- [X] I can confirm this PR contains no AI-generated content, and did
not use any AI-generated content.

**Changelog**
🆑 Wheels
- add: New icons for Baa and Moo emotes
- fix: Ovinia sounds trait will now allow holders to Baa as intended
- fix: Baa emote name will name display properly when hovered over

---------

Co-authored-by: TheDen-Bot <186991657+TheDen-Bot@users.noreply.github.com>

* Ovinia Typing Sprite Fix (#1348)

<!-- Guidelines:
https://docs.spacestation14.io/en/getting-started/pr-guideline -->
<!-- NOTE: All code submitted to this repository is ALWAYS licensed
under the AGPL-3.0-or-later license.
The REUSE Specification headers or separate .license files indicate a
secondary license (e.g., MPL or MIT) solely to facilitate
integration for projects that do not use the AGPL license. This
secondary license does not replace the fact that AGPL-3.0-or-later
remains the primary and binding license.
Uncomment and modify the following line if you wish to change the
license from the default of AGPL.-->
<!--- LICENSE: AGPL -->
<!-- What did you change? -->
routed ovinia's non typing state to work
<!-- Discuss how this would affect game balance or explain why it was
changed. Link any relevant discussions or issues. -->
fixes massive error when thinkibng waht to type
<!-- Summary of code changes for easier review. -->
ough
<!-- Attach media if the PR makes ingame changes (clothing, items,
features, etc).
Small fixes/refactors are exempt. Media may be used in SS14 progress
reports with credit. -->
<img width="139" height="137" alt="image"
src="https://github.com/user-attachments/assets/25990a20-0782-46a2-b0c5-fb6f3374d7c4"
/>

<!-- Confirm the following by placing an X in the brackets [X]: -->
- [x] I have read and am following the [Pull Request and Changelog
Guidelines](https://docs.spacestation14.com/en/general-development/codebase-info/pull-request-guidelines.html).
- [x] I have added media to this PR or it does not require an ingame
showcase.
- [x] I can confirm this PR contains no AI-generated content, and did
not use any AI-generated content.
<!-- You should understand that not following the above may get your PR
closed at maintainer’s discretion -->

**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 Ovinia's idle typing sprite to not be a massive error

* continuing to go bald

* Fixing Fails with the language FTL

* Changes again to languages.ftl

* Removed Resomi Stuff from the FTL

* Fixed the language thingy once more

* Grammar and fixes

* Ovinia DeltaV adjustments

* Added AnimalFriend faction

* Switched Ovinia naming scheme to default

* Fixed YAMLLinter issues with Ovinia

* Fixed the heat damage thingy

* YAML Linter Hates me

* Testing Changes

* Update ovinia.yml

* Update ovinia.yml

* FINALLY

* Updates to Factions for the AnimalFriend Trait

* Fucking Case Sensitive

* Reviewed proposed changes to Ovinia.yml

Co-authored-by: Tobias Berger <toby@tobot.dev>
Signed-off-by: Vape <76235372+Vapetastic-Gaming@users.noreply.github.com>

* Updates

Fixed all requests besides the displacement maps. Still workin on that

* Fixes Coscult and Displacements

* misc

* Tag fixes. YAML Linter, my beloathed

* random grumbles

case sensitivity is set to high. please fix this maintainers, thanks

* BREAKTHROUGH

* Req changes

* Attributions, and New soundies

* Updaties

---------

Signed-off-by: Vape <76235372+Vapetastic-Gaming@users.noreply.github.com>
Co-authored-by: juniwoofs <jakbroeder@gmail.com>
Co-authored-by: Blitz <73762869+BlitzTheSquishy@users.noreply.github.com>
Co-authored-by: Rosycup <178287475+Rosycup@users.noreply.github.com>
Co-authored-by: Mono <182929384+Monotheonist@users.noreply.github.com>
Co-authored-by: TheDen-Bot <186991657+TheDen-Bot@users.noreply.github.com>
Co-authored-by: wheelwrightt <174839295+wheelwrightt@users.noreply.github.com>
Co-authored-by: sheepie <180479595+juniwoofs@users.noreply.github.com>
Co-authored-by: Vanessa Louwagie <vanessalouwagie@outlook.com>
Co-authored-by: Vanessa <908648+ShepardToTheStars@users.noreply.github.com>
Co-authored-by: Tobias Berger <toby@tobot.dev>
2025-11-28 08:17:45 +01:00
ScarKy0 1a7a383a24 Add SnoutCover appearance layer (#39949)
* init

* cover
2025-11-23 15:22:32 -06:00
poklj 46f1c81cd0 Changeling devour and transform (#34002)
* Initial:

Create Devour componentry, preliminary identity storage and the systems
for Devouring

* I have genuinely no idea what i'm doing

- added the radial menu, it has nothing in it.

- trying to get it to populate. the event under the event is broken,
i don't know why, but apparently it's not typed right

- Added a placeholder transform

- oh also fixed up some devour stuff and moved some things around.

* Holey moley, Transform, better devour, oh my!

- Move DnaComponent into Shared because we need it for the DNA cloning

- Make Transform MOSTLY work on the LAST identity devoured.

- Fix some issues on devour that involved prediction, canceling and
Damage exeucting (Thanks Plykiya for pointing out AttemptFrequency!)

* Proper tail stealing and Damage modifier attempt

Add check to add a wagging component on the Changeling if the victim's
species Prototype had one.

attempt to add the Damage mitigation check

* MAJOR CLEANUP AND FIXES AUGH 3 DAYS!!!

- Nullspaced a clone of a victim

- fix audio using server virtualized Pvs (i hate this)

- fix the mispredicted doafters

- Clean up a wholelotta code

- utilize clone systems to clone appearances

- Move CloneAppearance from server to shared So we can actually access
it

* Examine stuff, more cleanup, Jumpsuit ripping

- make rotting prevent the action

- Add ripping of clothing (guh why is it also server)

- add some System stuff for pushing husked corpse inspection

- clean up more badcode

* Doing things properly, UI sorta kinda works.

- Utilize Relayed events for Devour checking

- Get a UI that partially works, Says the name of identities, doesn't
show their looks

- Make use of the New Dynamic BUI assignment

- commit the sin of no client prediction cause nullspace entities aren't
networked

* Got an entity for the Frontend transform

Issue with the looks

* Stick a camera into a fake mobs forehead

- Get the UI to see the net entity in pause space by using a
ViewSubscriber to get the Pvs from the initially stored identity entity

- Remove all the other parts used to try to get this to work before hand

* Raaaaadiallllllls also fix protection coefficents

- Change FancyWindow to Radial

- Fix Issue where coeffeient checking was the wrong way round

* absolutely massive cleanup, no more camera in mobs

- cleaned up event variables that are not needed

- Removed the use of a Pause space and go back to Nullspace usage

- use a PvsOverride rather than ViewSharing

- Remove old commented out code and Lots of unused code

* Fix "Ui elements" dying  on the screen

- some minor cleanup

- don't start the entities that get cloned

* ftl, cleanup, and fixing missing transform details

- add replace functionality to TypingIndicatorSystem and
BodyEmotesSystem

- add placeholder sounds and functions to TransformBodyEmotes

- add extra Pvs handling for later use

- attributions for the funny straw sound

- Sound collections for all of the sounds

- various cleanups

* Some extra cleanup

* Fix some false assumptions about TypingIndicator

- Bubbles now transfer on spawned humans rather than used humans

- Clean up YET MORE CODE

- make it so you can't eat yourself

* Oooprs, forgot to add a Husked Corpse Loc

* Missing period in the husked corpse loc

* bad devour windup placeholder

* Husking and WIP Lungs

- Husking now will be prevented from Revival fully and will change
the appearance of players

* Add finalized Sprites for actions and final meta

- add devour on and off sprites

- add transform action sprite

- Add Armblade sprite for future use

- Credit obscenelytinyshark for the sprites <3

* Remove ling lungs, Entity<> everything

- Remove the ling lungs stuff for now... body system is overly
complicated, makes my head hurt

- Switch every method to use Entity<> from Uid, Comp format

* cleanup, admin logging, WIP Roles

* Admin verb, Roundstart, gamerule stuff

- add a Admin verb to make Changelingification easy!

- Add game rule stuff for admin verb and to tell the hapless
goober how to be a changeling... sorta

- clean up parts to make VV easy... USE THE VERB!!

* Armor Coefficent Check

- Remove bespoke changeling armor check and replace it
with a generic armor coefficient query.

* move to UnrevivableComponent instead of husked

- Move UnrevivableComponent to shared

- add Analyzable and ReasonMessage to UnrevivableComponent
to give granular control of the message and whether or not it shows up
in the analyzer

- remove the check for HuskedComponent in DefibrillatorSystem

* aaaaaaa CopyComp

- Some cleanup

- make Vocal system shared

- make VocalSystem Not make more Actions than it needs

- Use some code from ChameleonProjector so we can copy components

- partially ungod method the Transform system

* Cleanup, Moving more things to CopyComp

- TransformBodyEmotes now uses CopyComp (it's a server component so i
need to tell the server to deal with it

- TypingIndicatorComponent also now uses CopyComp

- cleaned up old, now unused "replace" methods in favor of CopyComp

- BodyEmotesSystem now has a publically accessable LoadSounds to deal
with the same problem Screaming had

* WIP

* Devour Windup noise, ForensicsSystem cleanup

* Revert VocalSystem Changes

- Reverted Moving VocalSystem to shared, copy comp acomplishes it

- added component.ScreamActionEntity = null; for copy comp

* cleanup unneeded comments

* revert an accidental line removal

* Remove duplicate SharedHumanoidAppearanceSystem

* Cleanup Typo's and import Forensics components for Dna

* Some more forensics calls

* cleanup use CopyComp for now until CopyComps

* CR cleanup

* Undo some SharedHumanoidAppearanceSystem changes

* Confound these spaces

* Some Copycomp stuff and fixing some PVS override

* use the proper TryCopyComps that are merged

* Change TransformMenu with RadialWithSector

* All sounds done, Fix lack of typing indicator issue

* Updated attributions to include used sound authors

* some ftl typos and mind_role text issue

* DNA, Screaming, appearance, grammar, wagging

- reduced all of the above using ApplyComponentChanges

- Issue still remains with bodyEmotes sticking around in the UI

* Fix UI stuff, partials, entprotoid, good practices

- bunch of partials added

- UI now has a predicted message

- EntProtoID in the admin verb

- RipClothing now uses Entity<ButcherableComponent>

- husking is now optional (off by default) for testing/till we have
hivemind/when we figure out what were doing with devour

- remove TransformGrammarSet

* More CR stuff and documentation

- Make TargetIsProtected less of a meme, with a prototype
set of DamageTypes to check

- Documenation everywhere

- Move DevourEvents into its own file

* Predicted sounds and fix the comp clone list

- Made all start and stop sounds shared

- Split out the rest of the events and UI stuff into subfiles

- Fixed some Clone comp list issues where comments had -'s causing them
to be read incorrectly

* Damage cap check, Identity Shutdown cleanup, cleanup

* Sound stuff (but actually this time)

* Missed documentation

* Missed Documentation and a EntProtoId

* Remove unused dependency

* Remove a nullcheck

* Some dummy minplayers

* CR - Husked now uses a rem/ensure

* Update Actions in the Prototype

* Fixup mindswap handover

- cleanup and handover PVS on mindswap

* Fixup Missing meta from accidental "Take-theirs"

* Add the Armblade to the roundstart-role

* Cleanup, CR (everything but the UI and renames)

* missed a spot

* missed some more whitespace

* Renames

* Primary constructor and a space in these trying times

* User interface stuff for Slime transformation

* popup prediction

* Ling devour no longer makes duplicate identities

- added a key to identities to the original victim

- Add some extra clone settings

* add guard statements to OnClones

* SentOnlyToOwner additions

* fix for sound stoppage error

* Move Organ deleter into soon to be atomized husk

* clone event inventory

* mono sounds

* lower sound volume

* Fix networked sound warning

* Clone comps thing

* review

* attributions

* Fix clobbered changes

* I'm gonna weh out

- whole bunch of CR changes

* fix some very buggy git

* okay its fixed

* address most review points

* fix inventory

* we hate entityuids

* fix test and more cleanup

* move this

* fix more stuff

* fix validation and rootable

* Remove Quickswitch due to some UI quirks

* oops left out some better explanation

* remove dangling LastConsumed component fields

* fix test fail

* try this

* cleanup cloning subscriptions, add movement speed modifier

* fix slime storage

* fix cloning setting inheritance

* Add session information to transform admin logs

* slay the integration test hydra

* dwarf size

* more volume tweaks

* comments

* improve comments and unpredict deletion due to errors when shutting down the server

* fix displancement cloning

---------

Co-authored-by: ScarKy0 <scarky0@onet.eu>
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
2025-11-23 15:22:18 -06:00
William Lemon 29e55b9464
Upstream Merge (June / July) attempt 2 electric boogaloo (#4607)
* Fix the sensor monitoring console forcing a GC every 3 seconds (#38146)

* Optimize sensor monitoring window graph drawing

* Add shared static Vector2 pool for all GraphView instances

* Address requested changes

* remove lock

* Update submodule to 264.0.0 (#38629)

* Toy/Plushie Inhands and Wearables (#38514)

* Fixed dependency injection and some other issues in a few places.

* More issue fixes

* patchfor broken NetworkConfiguratorLinkMenu (#38632)

fix

* Fix solutions flickering when transferring contents (#34838)

* Use Solution clones when applying SolutionComponent states

* Revert "Use Solution clones when applying SolutionComponent states"

This reverts commit 013fd111cf92b22562e00f98a7aaa49bc4b4ed62.

* Make Solution implement ICloneable and rename Clone method.

* Copy CanReact value when cloning a Solution

* Convert to IRobustCloneable

* Fix typos in guidebook: Buisness → Business (#38636)

* Fix typo in `MinorAntagonists.xml`

Buisness → Business

* Fix typo in `YourFirstCharacter.xml`

Buisness → Business

* Various Headphones Fixes and Tweaks (#38479)

* sprites, wearables

* neck

* icon-on sprite

* Cleanup prototype instantiation in `DamageTest` (#38639)

Cleanup prototype instantiation in DamageTest

* Cleanup prototype instantiation in `ExplosionSystem` (#38642)

Cleanup prototype instantiation in ExplosionSystem

* AddBodyPartCommand localization. (#38612)

commit

* fix ItemSlotsSystem debug assert (#38655)

* Allow the Command & Super door remotes to use the access of their user. (Re-creation of PR due to changes to game balance) (#35536)

* Added directional beacons (#38284)

* Added directional beacons

Signed-off-by: Nox38 <nebulousnox38@gmail.com>

* Fixed names

Signed-off-by: Nox38 <nebulousnox38@gmail.com>

---------

Signed-off-by: Nox38 <nebulousnox38@gmail.com>

* Power stat and nuke codes commands get some LEC love. (#38585)

* commit

* requested changes.

* Dsay Dirty and Follow commands converted to LEC and localized. (#38666)

* commit

* whoopwhoopwhoop

* Retro laser sprite fix (#38676)

* Fixed everything except the icon

Signed-off-by: Nox38 <nebulousnox38@gmail.com>

* fixed icon

Signed-off-by: Nox38 <nebulousnox38@gmail.com>

---------

Signed-off-by: Nox38 <nebulousnox38@gmail.com>

* fix water coolers (#38681)

* Monochromacy typo fix (#38686)

* fixes the typo

* Fixed cloning looking for the trait, not the component, RE https://github.com/space-wizards/space-station-14/pull/38686#issuecomment-3025093504

* Apply suggestions from code review

---------

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

* Validate `CloningSettingsPrototype`s (#38688)

* Validate CloningSettingsPrototypes

* Update Content.IntegrationTests/Tests/Cloning/CloningSettingsPrototypeTest.cs

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

* Check EventComponents too

---------

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

* Add test of objective-related console commands (#36400)

* Add test of objective add/list/remove commands

* Not sure why we're validating test prototypes, but sure

* We don't need a map

* Improvements and fixups for New Status Effect API (#38660)

* Predict healing and bloodstream (#38690)

* initial commit

* reapply 38126

* fix rootable

* someone missed an important minus sign here

* try this

* fix

* fix

* reenable crit hits

* cleanup

* fix status time dirtying

* fix

* camelCase

* Healing and bloodstream prediction fixes.

* Resolving Wizard casting recall on nuke disk making it impossible to disarm (#38661)

* Resolving Wizard Recall on Nuke disk making it impossible to disarm
- Adding a DisarmBomb case to nuke status update loop
- Changing a few methods and parameters to properly follow formatting standards
- Updating some names to follow camelCase

* Updating missed tag

* Reverting DataField change

Should prevent this preventative bugfix being a breaking change.

* Switch HSV to the default colorspace for character customization (#38434)

* Made HSV default for character editor

* Adds/fixes comments to HSV defaulting

* Added dropbox fix, potentially cursed

* Revert "Added dropbox fix, potentially cursed"

This reverts commit a709883366fbee813e839742125e70844672af29.

---------

Co-authored-by: TrixxedHeart <46364955+TrixxedBit@users.noreply.github.com>

* Fix: Don't deploy foldables when clicking on items inside containers (#38709)

* Fix

* Apply suggestions from code review

---------

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

* Pressure Relief Valve (#36708)

* initial system (this math is probably WRONG)

* General code cleanup and OnExamined support
(holy moly this code sucks)

* UICode and related events foundation
TODO:
- Actually write the XAML UI and the underlying system
- Un-shitcode the entire thing
- Actually test everything...

* Working UI code
TODO: Make predicted, as this certainly isn't predicted. Even though I said it was. It isn't.

* Remove one TODO for unshitcoding the examine code

* Add reminder
yea

* Make predicted (defenitely isn't)
(also defenitely isn't a copypaste from pressure pump code)

* It's predicted!
TODO:
- Give it snazzy predicted visuals!
- Have a different field for pressure entry, lest it gets bulldozed every UI update.

* Improve gas pressure relief valve UI
TODO: Reminder to reduce amount of dirties using deltafields

* Implement DirtyField prediction

* Entity<T> cleanup
A lot of Entity<T> conversions and lukewarm cleanup.

Also got caught copy pasting code in 4K UHD but it's not like you couldn't tell.

* More cleanup and comments

* Remove TODO comment on bulldozing window title

* """refactoring"""
- Move appearance out of shared and finally fix it. Pointless to predict appearance in this instance.
- More Entity<T> conversions because I like them.
- Move UI creation handling over entirely to the ActivatableUI system.
- Fix a hardcoded locale string (why????).

* Add visuals

* Revert debugging variable replacememt
yea

* Revert skissue

* Remove unused using directives and remove TODO

* Localize, cleanup, document

* Fix adminlogging discrepancy

* Add ability to construct, add guidebook entry

* Clear up comment

* Add guidebook tooltip to valve

* Convert GasPressureReliefValveBoundUserInterface declaration into primary constructor

* Adds more input handling and adds autofill on open

* Un-deepfry input validator shitcode
Genuinely what was I smoking

* improve visuals logic

* Refactor again
- Update math to the correct implementation
- Moved code that could be re-used in the future into a helper method under AtmosphereSystem.Gases.cs

* I'm sorry but I hate warnings

* Remove unused using directive in AtmosphereSystem.Gases.cs

* Review and cleanup

* Lukewarm UI glossup

* Maintainer for the upstream project btw

* Remove redundant state sets and messy logic

* Unduplicate valve updater code

* Redo UI (im sorry Slarti)

* run tests

* Test refactored UI messaging

* Second round of UI improvements
- God please find a way to improve this system. Feels bad.

* Update loop implementation

* Further predict UI

* Clear up SetToCurrentThreshold

* cleanup

* Update to master + pipe layers and bug fixes
want to run tests

* fixes

* Deploy rename pipebomb

* Documentation and requested changes

* Rename the method that wiggled away

* Undo rounding changes

* Fix comment

* Rename and cleanup

* Apply suggestions from code review

---------

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

* Fix TextLinkTag (#32203)

* Adjust uplink buy button to be under item icon (#38596)

* Adjusted uplink buy button to be under item icon

* Put the discount subtext under the icon

* Indent fixes, added margin

---------

Co-authored-by: TrixxedHeart <46364955+TrixxedBit@users.noreply.github.com>

* Scurrets - Audio Improvements (#38482)

* Scurret audio tuning

* Add new sfx

* Update sneezing sfx

* YAML support

* Rename a folder

* make telesci wreck easier (#37569)

rel

* Validate `ShaderPrototype` IDs (#38728)

* Convert all shader prototype string literals to protoids in overlays

* Convert more shader prototype literal strings to protoids

* Convert ValidatePrototypeId to ProtoId

* Later

* [BUGFIX] Fixed revenant malfunction ability not working properly only MediBots and Stasis bed (#38664)

* fixed

* clean up

* orks fix smart

* review fix 1

* more requested changes

* less cursed

* more descriptive description

* better wording

* Tiny Tiny Cleanup of the EyeClosingSystem. (#38734)

Update EyeClosingSystem.cs

* Fix human skin tone distribution (#38701)

* fix: Use PredictedQueueDel for gib spell (#38729)

* fix: don't default to uncharged sprite state for cells (#38730)

* Fix Hristov description - remove inaccurate technical specs (#38746)

- Removes inaccurate 'armor piercing 14.5mm shells' reference
- Replaces it with a more funny description, matching the style of the other snipers and guns
- Keeps ammunition type '.60 anti-materiel ammo' specification
- Fixes issue #38590

Co-authored-by: Arthur Fiorese de Andrade <aandrade@cmcxs.gov.br>

* feat: allow mopping evaporating puddles (#38743)

* Validate remaining `ProtoId` strings (#38747)

Validate remaining ProtoId strings

* Validate `ProtoId`s in tests (#38745)

* Convert string literals to protoids in Content.Tests

* Convert string literals to protoids or consts in Content.IntegrationTests

* Fix linter failures
Tricksy static using misled me

* Cleanup warning in StomachSystem (#38748)

you did not see this

* Vox scars (#38592)

* Added vox scars n'stuff, renamed vox_tattoos.ftl to just vox.ftl

* Revert "Added vox scars n'stuff, renamed vox_tattoos.ftl to just vox.ftl"

This reverts commit c73da55ba3b39ddf93b493aecd85604c54dd8a15.

* locale key fix

* Changed top surgery scar names to be more generalized

* Adjusted face scars

* Formatting fixes

---------

Co-authored-by: TrixxedHeart <46364955+TrixxedBit@users.noreply.github.com>

* UnlockNode command to LEC. (#38751)

* commit

* Update UnlockNodeCommand.cs

* commit

* move command locale to its own file.

* Update Content.Server/Xenoarchaeology/Artifact/UnlockNodeCommand.cs

---------

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

* Typofixes for figurine dialogue (#38737)

* Typofixes for figurine dialogue

* Forgot two

* Janitor Tool: Wire Brush (#38667)

* Wow! It's -brush-

* spacing.

* Update Resources/Prototypes/Entities/Objects/Specific/Janitorial/janitor.yml

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

* Update Resources/Prototypes/Entities/Objects/Specific/Janitorial/janitor.yml

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

* fixed changes

---------

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

* Minor escape menu UX improvements (#38650)

* fix: spellbooks can have infinite charges (#38376)

* fix: spellbooks can have infinite charges

* refactor: indicate infinite spellbook charges with null

Not sure if I like this much better...
2025-11-06 18:22:39 +00:00
slarticodefast 9535ad316b fix polymorph errors (#38409)
fix polymorph error
2025-08-07 19:16:39 +02:00
beck-thompson 051dc369d6 Revert "Randomized Markings" (#38345) 2025-08-07 18:46:07 +02:00
beck 329fd24aec Randomized Markings (#34765)
randomized markings
2025-08-07 18:44:51 +02:00
HTML/Crystal ec4cabec41
Port Harpy wing/arm layering fix, remove base female displacement map (#2917) (#3933)
* Harpy wing/arm layering fix, remove base female displacement map (#2917)

* Harpy wing fix, new janky humanoid layers

* MarkingCategories.cs: no Overlay comma.

* _DV/.../Species/harpy.yml: comment RArm

* _DV/Species/harpy.yml: comment RArmExtension base sprites

* spationaut suit fix

---------

Co-authored-by: Whatstone <166147148+whatston3@users.noreply.github.com>
2025-06-29 09:01:04 +01:00
Falcon 98d6f5d1e4
IPC Improvements + Synth Lizard (#3875)
* wip: added the synth mammal head from Iris and whitelisted a lot of extremities from more fuzzy races

* feat: ported synthliz from iris

* chore: started adding locales

* feat: ftls are going to make me loose my mind

* fix: missed an item

* fix: IPCs would always show humanoid eyes

* fix: autogenerated state values didn't work with the snout helmet

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* fix: attribution license

* fix: ignore last frame on left and right tail views

* chore: fix comment

* chore: change requests

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* chore: make additions cleaner

* chore: add missing comment

* chore: missed a comment

* Revert "chore: make additions cleaner"

This reverts commit 779c858f9c.

* refactor: removed hardcoded goidacode

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* refactor: used VisualizerSystem correctly

* refactor: Move change-able variables to private consts

* refactor: revert back to ComponentStartup, OnAppearanceChange updated too frequently

* refactor: remove protogens

* fix: integration tests

* chore: fix cr

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-06-05 21:09:23 +02:00
deltanedas 4fc95f96d8 merge master 2025-05-19 07:56:08 +01:00
slarticodefast 1b352c01a9 fix clone appearance (#37130) 2025-05-18 16:26:24 +01:00
Unkn0wn_Gh0st 2c9550dc26
Give certain species 2 chest markings (#3702)
* Human to 2 chest markings

Signed-off-by: Unkn0wn_Gh0st <shadowstalkermll@gmail.com>

* Update kitsune 2 chest marking

Signed-off-by: Unkn0wn_Gh0st <shadowstalkermll@gmail.com>

* Update felinid 2 chest marking

Signed-off-by: Unkn0wn_Gh0st <shadowstalkermll@gmail.com>

* Update harpy 2 chest marking

Signed-off-by: Unkn0wn_Gh0st <shadowstalkermll@gmail.com>

* added note

Signed-off-by: Unkn0wn_Gh0st <shadowstalkermll@gmail.com>

* woops

Signed-off-by: Unkn0wn_Gh0st <shadowstalkermll@gmail.com>

* goida

Signed-off-by: deltanedas <39013340+deltanedas@users.noreply.github.com>

* goida

Signed-off-by: deltanedas <39013340+deltanedas@users.noreply.github.com>

---------

Signed-off-by: Unkn0wn_Gh0st <shadowstalkermll@gmail.com>
Signed-off-by: deltanedas <39013340+deltanedas@users.noreply.github.com>
Co-authored-by: deltanedas <39013340+deltanedas@users.noreply.github.com>
2025-05-18 15:58:03 +01:00
SolStar d7a9aa5c16
Fix kitusne clones losing color. (#3724)
Kitusne clones retain color.
2025-05-13 04:47:10 +01:00
deltanedas 22aa10443e
upstream merge 27/04/2025 (#3596)
* Fix glass duplication with beakers (#34441)

Update chemistry.yml

Fixing glass dupe.

* Automatic changelog update

* Heterochromia for Moth (#36061)

* 1

* Fix local

* formatting

---------

Co-authored-by: Milon <milonpl.git@proton.me>

* Salvage Airlock (#36375)

* Salvage

* atmos a

* more muted colours

* Mapping Related to AI

* Fixed small naming inconsistency

* Revert "Fixed small naming inconsistency"

This reverts commit 985e1fd46a09e521c11dc345f470228e7907fbb9.

* Revert "Mapping Related to AI"

This reverts commit 5d5ae4feb819396c5c2a7413399ab5ce34f8683b.

* Revert "atmos a"

This reverts commit 529831e2584df27fa102ee1c970948fa3b6bab56.

* indent

---------

Co-authored-by: Milon <milonpl.git@proton.me>

* Automatic changelog update

* Departmental shelves whitelist expansion (Attempt №3) (#34292) (disabled)

* Expand-Shelves-Whitelist

Made departmental shelves hold a wider variety of items.

* Accidentally included "Packet" twice

* Automatic changelog update

* Replace GetEntitiesInTile with EntityLookupSystem equivalent (#36756)

* commit GET!!

* minor cleanup

* Automatic changelog update

* Unused dependency cleanup. (#36760)

* take 2! fight!!!

* final touches

* reeeeeee

* Fire protection for ERT engineering hardsuit (#34949)

* Automatic changelog update

* Nonlethal throwables crate (#35808)

* Automatic changelog update

* Use non-generic TryComp in `StationSpawningSystem` (#36769)

Use non-generic TryComp in StationSpawningSystem

* Add marker components for admin shenanigans (#36776)

* Automatic changelog update

* Restore `LimitedChargesComponent.MaxCharges` default value to 3 (#36778)

* Wizard Figure Voiceline Fix #36771 (#36779)

DA WIZARDgit add -A

* change MV cable outline (#36751)

* change MV cable outline

* zamn

* The Beverage Jug Can Now Look Open (#36070)

* GenJug-Changes

Signed-off-by: Prole <172158352+Prole0@users.noreply.github.com>

* Guh

Signed-off-by: Prole <172158352+Prole0@users.noreply.github.com>

* Support For the Rest

Signed-off-by: Prole <172158352+Prole0@users.noreply.github.com>

* New Sprites

Signed-off-by: Prole <172158352+Prole0@users.noreply.github.com>

* Newest Sprites

Signed-off-by: Prole <172158352+Prole0@users.noreply.github.com>

---------

Signed-off-by: Prole <172158352+Prole0@users.noreply.github.com>

* Pirate Gear Tweaks. (#35986)

* Tweaked pirate gear to be in-line with similar items.

* Added attribution for flashlight sprites, made hardsuits Major Contraband

* Added empty versions of the pirate revolver and flintlock.

* Test fail fix hopefully?

* Test fail fix hopefully V2.0

* Test fail fix hopefully V3.0

* Test fail fix hopefully V4.0

---------

Co-authored-by: RedBookcase <Usualmoves@gmail.com>

* Automatic changelog update

* Markings overhaul (#35938)

* markings displacement setup

* ok i got it!

* fix map updating

* remove trackingLayers

* markings clean up and modernizize

* marking disabling displacements

* markings restriction

* dehihienize

* dehihiniezize 2

* aa

* nice

* Automatic changelog update

* Resprite main altars (#35685)

* resprite main altars

* updated meta.json

* Automatic changelog update

* Adds beanies to the WinterDrobe! (#32946)

* sprites

* messing with the ymls

* new sprites

* that's a lotta yaml

* make the sprites gooder

* color adjustment

* to the winterdrobe with you

* layering fix

* Automatic changelog update

* Santa hat with a foldable beard (#36510)

* Added foldable component to santa hat

* Modified sprites, modified YAML. YAML is cursed

* Changed santa hat description to mention the beard fold

* Removed HideLayerClothing since it doesnt work

* Changed the prefix from "beard" to "nobeard" to match with the fold/unfold verb

* Credits for sprite changes

---------

Co-authored-by: Lanedon <matth.galvez@gmail>

* Automatic changelog update

* Puddle Code Slipping Cleanup (#35845)

* Init Commit

* windows yelling at me to update commit

* working commit, need prediciton and more dehardcoding

* Project 0 warnings

* Working Commit (Near Final)

* ryder got confused commit

* I love Merge Conflicts :)

* Working commit, no prediction

* Forgot the yaml changes

* Comments and typos

* Apparently while the reduced launch mult of lube was initialized it was never used so I revered back to default

* Fixed an incorrect divisor

* bit of cleanup

* Prediciton fixed, and puddles now affect all entities

* FORGOT TO RENAME A VERY IMPORTANT VARIABLE OOPS

* Really big I forgor moment

* Even bigger I forgor moment

* four more merge conflicts to fix four more oopsies

* fixed actual divide by zero moment and also im very dumb

* Even bigger I forgor moment

* four more merge conflicts to fix four more oopsies

* fixed actual divide by zero moment and also im very dumb

* Fix all test fails

* code cleanup

* Webedit whitespace

* Code cleaup

* whitespace webedit

* whitespace webedit

* whitespace webedit

* whitespace removal

* Comments and cleanup

* Re-Added 20 warnings as per Ork's request

* Cleanups

* Spacing fix

* bugfixes and cleanup

* Small bugfix

* Actually dirty the slipComp for real

* Added Friction field to Reagent Prototype per design discussion

* Sliding system is kill

* The Bartender can now make Eggnog (#34065)

* Preliminary eggnog changes (egg in shaker crashes?)

* Fixed eggnog reagent name and description

* added - to flavor

* deleted a space

* Added eggnog glass sprite

* changed fill levels to match rsi

* Added two more fill levels to eggnog

* Removed fizziness, changed physical description, and fixed rsi

---------

Co-authored-by: uhbg <29674581+uhbg@users.noreply.github.com>
Co-authored-by: Nemanja <98561806+EmoGarbage404@users.noreply.github.com>

* Automatic changelog update

* Require traitors to maroon their objective no matter what (#35825)

* jesus

* okay.

* OOPS

* ok

* ok

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

* ok

* Update Resources/Prototypes/Objectives/paradoxClone.yml

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

* Update Resources/Prototypes/Objectives/base_objectives.yml

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

* m

* ok

* ok

---------

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

* Wizard Headset (#35732)

* wizardcomms

* wizheadset

* Addressed requested changes and axed wizard channel due to redundancy.

* oops overlooked this, dont tell anyone

* another mistake fixed

* removed wiz encryption key due to redundancy

* accidentally left some punctuation in a now unrelated meta.json

* Automatic changelog update

* Remove MK ULTRA ai name (#35726)

* Remove bad AI names

* Fine, I won't try to sneak this in here.

* Reorder electronics recipe file, add filter categories (#35713)

* electronics split

* split base recipe and category

* all but machines

* machine shuffle

* reorder

* delete unused recipes

* rename cargo to supply

* git weirdness

* git weirdness 2

* Automatic changelog update

* Cleanup warnings in `SharedPortalSystem` (#36747)

* Cleanup warnings in SharedPortalSystem

* Formatting while we're here

* Replace uses of !Any() with Count == 0

* AnyEntitiesIntersecting

* Binomial Number Selector for EntityTables (#36783)

* binomial dist

* lol initialize the int tho idiot

* xml docs my forgotten

* ditto

* Add more ruins (#36785)

* Fix NRE in GasTileOverlaySystem (#36793)

* Automatic changelog update

* Add RGA/RSI to Credits (#36704)

* Add RGA and RSI to Credits

* Move to thread + add directory field

* Further Allocation Tweaks (#36800)

* init

* fix lockboxes

* Automatic changelog update

* Add the medical HUDs to medical's loadouts (except chem) (#32847)

Added the medical HUD and eyepatch to the medical (CMO, doctor, paramed and intern) loadout to let them choose between. Also gives the option for the regular glasses.

* Automatic changelog update

* new salv ruins (#36798)

* hotplate, kitcken grille bugfixes (#34776)

* commit

* cleanup

* Automatic changelog update

* Solution drag and drop now checks if container is closed and drainable (#34683)

drainable fix

* Automatic changelog update

* fix some datasets (#36806)

* Add rehydratable mop bucket cube, refactor the rehydratable yml (#34586)

* Refactor rehydratable items

* Finish main refactor

* Add mop bucket cube

* Move cube sprite and item size to RehydratableAnimalCube

* Fix sprite attribution

* Make it follow the conventions

* Refactor wrapped cube, leave MonkeyCube tag only on the cube and the Syndie Sponge

* Fix DehydratedSpaceCarp inheritance overwriting needed components

* no need for this comment

* remove whitespace

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

* indentation

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

* Restore lost description

* reorder stuff

* line

---------

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

* Automatic changelog update

* Increase thief to player ratio (#36531)

* reduce max number of traitors, increase thief to player ratio

* revert traitor max back to 8

* Automatic changelog update

* Added a semi-functional genderfluid pin. (#35854)

* Added a semi-function GenderfluidPin

* Update pins.yml

fix bug

* Fix meta.json under the newly merged "fix as you go" policy

* Update pin description

---------

Co-authored-by: ArtisticRoomba <145879011+ArtisticRoomba@users.noreply.github.com>
Co-authored-by: Nemanja <98561806+EmoGarbage404@users.noreply.github.com>

* Automatic changelog update

* Station AI Name Identifier (#36801)

init

* Automatic changelog update

* Makes EventRole Ids properly set ID names. (#28958)

* Add id binding system

* Change so it activates when added too

* Add to eventhumanoid

* Add PDA binding, try to fix some things

* Still not fixed, PDA is working right

* Move to server, add on mind instead

* Implement suggestions

* Fix things

* Finish review stuff

* Messed up cluwne

* Remove after only changing id too

---------

Co-authored-by: Nemanja <98561806+EmoGarbage404@users.noreply.github.com>

* Various sharedsystem spring cleaning (#36200)

* Various shared system warnings cleanup

* More shared system warnings cleanup

* Rearranging changes

* Using correct transform for unbuckle

* Small changes

* Revert buckle change

* Update Content.Shared/Ghost/SharedGhostSystem.cs

---------

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

* Fix some locale strings and make some code for them looks better (#32003)

* Fix a lot locale strings

add functions using
fix identity for meat spike and creaming

* comma

* fixes for fixes

* yeah

* fuck

* Automatic changelog update

* Remove non-functional ninja exemption from `SpawnAndDeleteEntityCountTest` (#36813)

Remove non-functional ninja exemption from SpawnAndDeleteEntityCountTest

* Firelock temperature and pressure warning lights (#28339)

* Add temperature and pressure lights to firelocks

* Replace sprites with new pressure and temperature light versions

* Remove obsolete deny and locked sprites

* Add SpriteSync for warning light animation synchronization

* Teal lights

* Partial animation implementation

* fixup! Teal lights

* Temperature lights

* Adjusted firelock light heights and added final warning light sprites

* Fix colors

* Testing colors

* Update light sprites

* updated sprites

---------

Co-authored-by: EmoGarbage404 <retron404@gmail.com>

* Automatic changelog update

* Fix bots parenting, emotes (#29949)

* Bots overhaul

* fix

* change speech sound to pai

* purge a lot

* i forgor :trollface:

* adjust

* that aswell

* Automatic changelog update

* Fix identity grammar (#36817)

Fix identity

* Fix Animal Versions of Captain Uniform (#36804)

* scienceevasuit

* update money uniforms

* update meta.json files and hamster hats

* revert scienceevasuit

* revert accidental prisoner eva change

* Automatic changelog update

* Fix vox hair (#36816)

* Fix vox hair

* remove CL

* Tweak Security protection values (#30212)

* Tweak Hardsuits

* HoS/Ward Coats change

* Whoopsie wrong number

god why am i doing this its 1:33 AM and i made a silly mistake...

* Adress Review

Revert Warden hardsuit slowdown to 30% again
Decreased Security hardsuit heat protection down to 20%

* Automatic changelog update

* Added more salvage ruins (#36822)

* Metal foam grenade rework, small tweaks to grenade timers (#34579)

* Automatic changelog update

* dragons can now pry doors (#36811)

* Automatic changelog update

* Make funding allocation computer more configurable (#36790)

* Make funding allocation computer more configurable

* admin logging

* unused

* ccvar enabled

---------

Co-authored-by: ScarKy0 <scarky0@onet.eu>

* Automatic changelog update

* Fingerprint taking improvements (#31864)

* now using event to check access to fingerprint

* Opps actually commiting the changes

---------

Co-authored-by: YourUsername <you@example.com>
Co-authored-by: beck-thompson <beck314159@hotmail.com>

* Banana cream pie loc improvements (#36829)

* CAPITALIZE(THE($owner))

* Rename "thrower" to "thrown"; use THE($thrown)

* "the banana cream pie" -> "a banana cream pie"

* Simplify filter

* Automatic changelog update

* Command uniform (#32103)

* Added generic command jumpskirt, jumpsuit and cap, and made them available in the HoP's clothing printer.

* fixed generic command jumpskirt and jumpsuit.

* Updated generic command jumpskirt/-suit textures, added generic command beret.

* Fixed game-breaking bug in previous commit relating to the command beret.

* altered generic command soft cap/baseball cap sprites.

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

Co-authored-by: SlamBamActionman <83650252+SlamBamActionman@users.noreply.github.com>

* Update Resources/Prototypes/Entities/Clothing/Uniforms/jumpskirts.yml

Co-authored-by: SlamBamActionman <83650252+SlamBamActionman@users.noreply.github.com>

* Update Resources/Prototypes/Entities/Clothing/Uniforms/jumpsuits.yml

Co-authored-by: SlamBamActionman <83650252+SlamBamActionman@users.noreply.github.com>

* review

* whoopsie

---------

Co-authored-by: Ed <96445749+TheShuEd@users.noreply.github.com>
Co-authored-by: SlamBamActionman <83650252+SlamBamActionman@users.noreply.github.com>
Co-authored-by: Milon <milonpl.git@proton.me>

* Automatic changelog update

* downprice many cargo orders (#32375)

* atmos repricing

* emitter crate

* materials

* lasers

* revert gun prices

* Automatic changelog update

* Ashen hud item status slot fix (#31411)

* new patchMargin variable added, horizontals fixed

* All sides now work, system is fully integarated

---------

Co-authored-by: Zachary Yona <magicalusf@gmail.com>

* Ashtray Resprite and Fix (#31643)

* The meat and potatoes

Yup

* Stupid recycler

bruh

* guh

guh

* Update MinorAntagonists.xml (#36836)

* Simulate command in minutes for real (#36808)

* 60

* Fix warning CS0414 instances (#36832)

Fix warning cs0414 instances

* Nerf Firelock electronic prices (#33469)

* Nerf Firelock electronic prices

- make firelock electronics price half of the input cost to make one
(27) rounded up

* Why does firelock make glass?

- remove the Physical composition of glass from
FirelockElectronics as the input does not contain glass
and the output cannot contain half a steel and plastic

---------

Co-authored-by: Milon <milonpl.git@proton.me>

* Automatic changelog update

* Give Admins "Tails" (#36842)

One line yaml change

* Fix construction orientation being ignored for some objects (#36488)

* fixes

* removed empty "SnapToGrid"s and parent "completed"s

* Automatic changelog update

* elemental.yml & asteroid.yml cleanup (#36448)

* Moth-pockets (#34517)

Co-authored-by: ArtisticRoomba <145879011+ArtisticRoomba@users.noreply.github.com>

* Four new food crates for the ATS (#33286)

Co-authored-by: ArtisticRoomba <145879011+ArtisticRoomba@users.noreply.github.com>

* Automatic changelog update

* Cleanup: Move folders out of bureaucracy.rsi and paper.yml (#35108)

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

* Improve LocalizedDataset test to check for low Count (#36848)

* Improve LocalizedDataset test to check for low Count

* Fix missing entries for FigurinesFootsoldier

* Add 1 dragon name (#36846)

* this is a commit you cannot skip

* why do you have to add a count why

* Remove steel sheet hull fixing (#33443)

* Remove steel sheet hull fixing

It's unintuitive that it's wasteful, there's not really any systems to NOT make it wasteful, and it's a UX trap. No this is not "noob trap", no. It's an UX issue because if hundreds of people do it over and over again without noticing anything wrong, well, something fails to properly note that there's an issue with what they are doing. Aka user experience issue. Aka not a problem with the user but the design.

Also could be a shitty doafter action that makes you wonder if something's wrong

* Why was this testing using steel of all things

* Automatic changelog update

* cleanup + add names to some entities (#36856)

* Remove redundant fields from `MovementSpeedModifierComponent` (#36859)

Delete _baseWalkSpeedVV and _baseSprintSpeedVV

* Cleanup warnings in NinjaSuitSystem (#36861)

Fix warnings in NinjaSuitSystem

* Modernize `GhostComponent` & Ghost API (#36858)

* Move CanReturnToBody to system

* Move CanGhostInteract to system

* Cleanup redundant datafields and viewvariables

* Document datafields

* Document component

* Add SetTimeOfDeath Entity<T> overload, obsolete old version

* Document public methods

* Cleanup obsoleted method calls

* Cleanup warning in `EmptyAllContainersBehaviour` (#36860)

Fix warning in EmptyAllContainersBehaviour

* Cleanup warnings in `SharedCryostorageSystem` (#36863)

Fix warnings in SharedCryostorageSystem

* Cleanup warnings in `CableSystem.Placer` (#36868)

* Fix warnings in CableSystem.Placer

* Formatting

* Cleanup warnings in `PolymorphSystem.Map` (#36869)

Fix warnings in PolymorphSystem.Map

* Cleanup warnings in `WorldgenConfigSystem` (#36864)

Fix warnings in WorldgenConfigSystem

* Move guardian sounds to component (#36870)

* Cleanup warnings in `SpawnSalvageMissionJob` (#36866)

* DoMapInitialize and SetMapPaused

* GridTileToLocal

* Formatting

* Remove unused variables

* Update Content.Server/Salvage/SpawnSalvageMissionJob.cs

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

---------

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

* Fix warnings in `ServerDbManager` (#36871)

Fix warnings in ServerDbManager

* pAI Software Catalog (#36857)

* initial commit

* add the shop and make it work

* add existing pai actions to the software shop

* added power monitor app

* killed the power and crew monitor software, too powercreepy

* fix test failures

* fix more test failures

* fix merge conflicts

* code changes to conform with review

* fix unintentional submodule update

* submodule update

* remove unused currency prototype ref

---------

Co-authored-by: archrbx <punk.gear5260@fastmail.com>

* New Salvage Ruin - Hydro Outpost (#36826)

* Automatic changelog update

* Make toy sword less obvious (#34199)

* YAML fuckery

* Remove toy_sword.rsi

Not a webedit btw

* Automatic changelog update

* Adds shorts/pants to ClothesMate vending machine (#35361)

* Clothesmate shorts

* matches price of vend to the new contents

* Moths can eat pills (#35609)

* Automatic changelog update

* Xenoborgs part 1 (#36830)

Co-authored-by: ScarKy0 <106310278+ScarKy0@users.noreply.github.com>
Co-authored-by: ArtisticRoomba <145879011+ArtisticRoomba@users.noreply.github.com>

* Updated Syndicate and Ammo Contraband (#35102)

Co-authored-by: RedBookcase <crazykid1590@gmail.com>

* Automatic changelog update

* Put items inside cakes! (#31015)

* First commit

* I'm silly

* Please be it

* Some more fixes

* Cleanup

* fine!

* removed = false

* review

---------

Co-authored-by: Milon <milonpl.git@proton.me>

* Removed syndicate surgery duffel, added advanced circular saw to Medical Doctor uplink. (#35915)

* Removed syndicate surgery duffel, added advanced circular saw to Medical Doctor uplink.

* Update Resources/Prototypes/Entities/Objects/Specific/Medical/surgery.yml

Co-authored-by: Tayrtahn <tayrtahn@gmail.com>

---------

Co-authored-by: RedBookcase <Usualmoves@gmail.com>
Co-authored-by: Tayrtahn <tayrtahn@gmail.com>

* unremove surgery duffel

* unfunny

* Automatic changelog update

* fix NoCargoOrderArbitrage fail (#36878)

whoopsie

* Cotton Grilled Cheese Sandwich (#36135)

* Working entity.

* New sprite by MadeOfHeartAndStone

* Removed deadspace, changed attribution in meta.json

* review

---------

Co-authored-by: Milon <milonpl.git@proton.me>

* Automatic changelog update

* Meat Patty (#34896)

Co-authored-by: ArtisticRoomba <145879011+ArtisticRoomba@users.noreply.github.com>

* Automatic changelog update

* Remove beaker from the MaterialArbitrageTest whitelist (#36876)

* Turnstiles (#36313)

* construction rotation fix

* Turnstiles

* renaming

* review-slarticodefast-1

* mild attempts to fix (sorry sloth)

* move some more shit

* Remove engine dependency

* grid agnostic

* remove debug string

* fix json

* Update Content.Shared/Movement/Pulling/Systems/PullingSystem.cs

Co-authored-by: ArtisticRoomba <145879011+ArtisticRoomba@users.noreply.github.com>

* Update Content.Shared/Movement/Pulling/Systems/PullingSystem.cs

Co-authored-by: ArtisticRoomba <145879011+ArtisticRoomba@users.noreply.github.com>

* remove pass delay for mispredict reasons.

* most minor of changes

* Give directional indicator on examine

---------

Co-authored-by: ArtisticRoomba <145879011+ArtisticRoomba@users.noreply.github.com>

* Automatic changelog update

* Genpop Closets & IDs (#36392)

* Genpop IDs and Lockers

* placeholder generation, no ui yet.

* UI

* Fix time offset

* fix meta.jsons

* big speller

* Scarkyo review

* Add turnstile prototypes

* make IDs recyclable

---------

Co-authored-by: ArtisticRoomba <145879011+ArtisticRoomba@users.noreply.github.com>
Co-authored-by: ScarKy0 <106310278+ScarKy0@users.noreply.github.com>

* Automatic changelog update

* Fix small misc. turnstile issues (#36893)

* Fix small misc. turnstile issues

* more missing things

* quieter

* New Spawners, Modified Spawners, new Service/Theatre Airlock, and new Colorful Light Crate (#36750)

Co-authored-by: ArtisticRoomba <145879011+ArtisticRoomba@users.noreply.github.com>

* Automatic changelog update

* Automatic changelog update

* Disable shadows for observer pointlight (#36897)

no shadows

* Fix QSI bringing people into paused maps (#36834)

* Automatic changelog update

* Fix storage ui hovering over the hotbar (#36770)

* Turnstiles lower volume + access reader (#36900)

fixes

* Fix disposal unit flush animation (#30677)

* Fix disposal unit flush animation

* Revert "Fix disposal unit flush animation"

This reverts commit a596ecfd5f5368f87ef52cfb27884a8e000185c6.

* control by setting layer visibility rather than overwriting

* restore changes

* Correct IdentityBlocker to include specific outer clothing (#33085)

* Make IdentityBlocker include outerclothing

* Modify Correct Bit

* Fix mask/eye cobo

* Automatic changelog update

* Change some posters to be rules-compliant (#32734)

* Initial commit

* Minor edit

* it's very hard to fit "disorder"

* Revert No ERP poster, fix spawner

* Attribution

* Update text

* Missed poster spawner

---------

Co-authored-by: Nemanja <98561806+EmoGarbage404@users.noreply.github.com>

* Automatic changelog update

* Cyborg Rebalance (#34186)

Co-authored-by: ArtisticRoomba <145879011+ArtisticRoomba@users.noreply.github.com>
Co-authored-by: Nemanja <98561806+EmoGarbage404@users.noreply.github.com>

* Automatic changelog update

* Reptilians Can Eat Orange Creamsicles (#36890)

* Automatic changelog update

* Add Bloodstream to Goliaths (#33305)

* Automatic changelog update

* Nerf mining hardsuit's effectiveness against bullets and bombs. (#31450)

* Automatic changelog update

* Controls page guidebook rework 2025 Q1 (#36363)

Co-authored-by: ArtisticRoomba <145879011+ArtisticRoomba@users.noreply.github.com>

* Automatic changelog update

* Lower interdyne herbals TC cost (#36841)

* Automatic changelog update

* cleanup instruments yml (#32262)

Co-authored-by: ArtisticRoomba <145879011+ArtisticRoomba@users.noreply.github.com>

* Automatic changelog update

* Automatic changelog update

* [FIX] Rubber now uneatable (#34543)

* Releasing an under-pressure lockout is now a verb (#36910)

Co-authored-by: ArtisticRoomba <145879011+ArtisticRoomba@users.noreply.github.com>

* Automatic changelog update

* fix changelog (#36915)

* Fix for ghosts being unable to follow the AI when it uses a holopad (#36355)

* Initial commit

* Added to-do

* Automatic changelog update

* Fix random maints room deleting whatever was already there (#36605)

* Fix donuts tags breaking the bounty (#36903)

* Automatic changelog update

* Make 10u of "Atomic Bomb" drink instead of 11u (#36921)

changed atomic bomb recipe

* Automatic changelog update

* PKA Modkits + Rebalance (#31247)

* Automatic changelog update

* Remove a redundant trycomp from TileAnomalySystem (#36924)

* remove a redundant check

* revert this space.

* Land mine armament (#33883)

* Land Mine is now armable, it will not explode unless armed.

* Land Mine is now armable, it will not explode unless armed.

* Explicitly have Armed as false

* SharedLandMineSystem.cs adds the "Arm"-verb in "Content.Shared" with the Arming logic being implemented in "Content.Server"

* Land Mines now blink only when armed.

* Added prediction components, moved logic to SharedLandMineSystem.cs and inherit it in client content.

* Accessing the datafield directly instead of using methods

* Mines are now armed by default with a unarmed prototype

* Land mine now shows if it is armed when examined and in range.

* Landmine is unarmed by default with an armed variant for mapping purposes.

* Removed properties that were already defined by inheritance.

* Access the bool directly from the component

* Add booleans to change if the Arm-verb is showed and if examining the mine shows the status.

* Added status message for unarmed mine, removed using PushGroup since only one string is displayed.

* Added properties to the explosive floor sign to ensure that it is armed, not showing neither status nor arm-verb.

* The prototypes work now as before with added unarmed versions. Sprite is now only one toggable layer.

* Make the craftable land mine unarmed.

* Refactored the arming mechanic into own component and system.

* Reverted the explosive wet floor sign to previous prototype and added the Armable component and ItemToggle to the landmines.

* Moved the examination strings from land-mines.ftl to armable.ftl.

* Removed unused property.

* Formatting and fixing imports

* Added prefixes to the ftl naming. Moved LocId from system to component

* Added documentation. Moved check for armable to HandleStepTriggerAttempt.
Moved the LocId to component.

* Removed the TryArming method. Added documentation.

* Removed unnecessary TryComp

* Simplified the logic for the trigger attempt

* HasComp instead of TryComp on logic

* EmoGarbage Review

---------

Co-authored-by: Franz - Josef Björck <kaiserbirch@proton.me>
Co-authored-by: EmoGarbage404 <retron404@gmail.com>

* Add Cotton Burgers (#36405)

* Adds cotton burgers

* Rephrased copyright

* Added an extra comment

* Adds CottonBurger to tags.yml, Not sure if i am supposed to do this or not.

* Reordered Cotton bun YAML, and fixed overwritten tags

* Merge issue fix?

* Add experiment plushie and remove rubber chicken from cotton burgers

* Minor comment change

---------

Co-authored-by: beck-thompson <beck314159@hotmail.com>

* hide light-switches from build menu (#34664)

* Automatic changelog update

* Fixed stinger grenade lag spikes (#36641)

* Fixed stinger lag spikes

* Simplify nullable checks

* More cleanup of projectile grenades

* Remove null default from ShootProjectile

* Sheet-meister 2000 Cloth recipe (#32676)

* Sheet-meister 2000 can now make rolls of cloth

* Small Cleanup

* resolve conflicts

---------

Co-authored-by: ArtisticRoomba <145879011+ArtisticRoomba@users.noreply.github.com>

* Automatic changelog update

* Clear MIDI masters properly to avoid replay freezes (#36809)

While trying to play a replay I noticed that the replay would freeze
when seeking in some cases. After some debugging, I discovered that two
MIDI renderers had each other as master, which caused an infinite loop
processing MIDI events.

I'm not entirely sure of the sequence of events that leads to this
during replay playback, but I did notice that MIDI render masters are
never set to null. This is in the best case just a memory leak, in the
worst case probably the source of the bug, so... I fixed that.

* Changed soundGunshot for Pulse Pistol and Pulse Carbine from laser_cannon to laser3 (#36952)

* Automatic changelog update

* The Atmos A Airlock (#36376)

* airlocks

* Update meta.json

Added my modification in the meta

* Changed the storage sizes of different swords. (#36564)

Co-authored-by: RedBookcase <Usualmoves@gmail.com>

* Automatic changelog update

* Fix autorecharge (#36955)

* Fix inflatable barriers finishing instantly if canceled! (#36937)

Fix

* Automatic changelog update

* Only sec glasses can show contraband: second attempt (#36412)

* Add base code for cheking contraband in hud

* Fix missing using in InventorySystem.Relay

* Fix errors and update HUD yml

* Add show contraband with component on entity

* fix component description

* Update Content.Shared/Contraband/ShowContrabandDetailsComponent.cs

Co-authored-by: ArtisticRoomba <145879011+ArtisticRoomba@users.noreply.github.com>

* Update "if" for check if ent hasComp in contrabandSystem

* Remove << InventorySystem.Relay.cs

* Update Content.Shared/Contraband/ShowContrabandDetailsComponent.cs

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

* Update Content.Shared/CCVar/CCVars.Game.cs

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

* Fix partial class ShowContrabandSystem

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

* Update Content.Shared/Contraband/ShowContrabandDetailsComponent.cs

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

* Update Content.Shared/Inventory/InventorySystem.Relay.cs

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

* Some update ShowContrabandSystem

* Try with record struct

* back again ti default class with EntityEventArgs

* Remove EntityEventArgs

* Finally use record struct

---------

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

* Automatic changelog update

* Resolve a warning in SharedAnomalySystem and quell some linter whining. (#36939)

* resolve a warning and deal with some linter whining.

* Update Content.Shared/Anomaly/SharedAnomalySystem.cs

---------

Co-authored-by: Nemanja <98561806+EmoGarbage404@users.noreply.github.com>

* Automatic changelog update

* Truncate lathe announcement lists (#36945)

* Automatic changelog update

* Descriptions for .30 Rifle (#36958)

Initial commit

* CMO Hardsuit: Zombification Resistance tweak (#36957)

initial commit

* Automatic changelog update

* Adds Parcel Wrap (#34471)

* Parcel Wrap

* fix TG sprite licenses
update attribution on modified `unwrapped` sprite to better conform to CC's guidance

* ContainerContainer test failure fix

* Just easy changes for now.

* Imagine building your code before pushing it for review

* The rest of the PR comments

* PR comments

* more comments + cargo orderability

* whitespace: deduplicated.

* use limitedcharges
replace mostly-duped client/server with if(onserver)

* cabinet perspective sprites

* web edit detected

fite me

* @ps3moira 's new sprites for me :)

* add a touch of attribution

* EmoGarbage Review

* Merge with master

* Merge with master

---------

Co-authored-by: EmoGarbage404 <retron404@gmail.com>

* Automatic changelog update

* Ammo Mag + Speedloader Inhand Sprites (#34235)

* Added inhand visuals to (most) ammo magazines and speedloaders

* whoops mixed up a single inhand on the rifle mag

* Didn't realize rubber ammo got removed.

* added attributions

* adjusted inhand visuals to account for magazine types

* missed one 👁️👁️

---------

Co-authored-by: EmoGarbage404 <retron404@gmail.com>

* Automatic changelog update

* New Science Biosuit Locker Sprite (#36929)

* first commit, slightly broken

* fixed meta json

* reverse accidental cmo inclusion

* Automatic changelog update

* Remove legacy cargo shuttle code/prototypes (#36967)

* Automatic changelog update

* Paramedic suits adjustments (#36707)

* Changes

* meta

* Battery (SMES/substation) interface (#36386)

* Add ENERGYWATTHOURS() loc function

Takes in joules (energy), displays as watt-hours.

* Add simple OnOffButton control

* Re-add Inset style class

This was sloppily removed at some point?? Whatever, I need it.

* Add helper functions for setting title/guidebook IDs on FancyWindow

Reagent dispenser uses these, more in the next commits.

* Add BuiPredictionState helper

This enables me to implement coarse prediction manually in the battery UI.

Basically it's a local buffer of predicted inputs that can easily be replayed against future BUI states from the server.

* Add input coalescing infrastructure

I ran into the following problem: Robust's Slider control absolutely *spams* input events, to such a degree that it actually causes issues for the networking layer if directly passed through. For something like a slider, we just need to send the most recent value.

There is no good way for us to handle this in the control itself, as it *really* needs to happen in PreEngine. For simplicity reasons (for BUIs) I came to the conclusion it's best if it's there, as it's *before* any new states from the server can be applied. We can't just do this in Update() or something on the control as the timing just doesn't line up.

I made a content system, BuiPreTickUpdateSystem, that runs in the ModRunLevel.PreEngine phase to achieve this. It runs a method on a new IBuiPreTickUpdate interface on all open BUIs. They can then implement their own coalescing logic.

In the simplest case, this coalescing logic can just be "save the last value, and if we have any new value since the last update, send an input event." This is what the new InputCoalescer<T> type is for.

Adding new coalescing logic should be possible in the future, of course. It's all just small helpers.

* Battery interface

This adds a proper interface to batteries (SMES/substation). Players can turn IO on and off, and they can change charge and discharge rate. There's also a ton of numbers and stuff. It looks great.

This actually enables charge and discharge rates to be changed for these devices. The settings for both have been set between 5kW and 150kW.

* Oops, forgot to remove these style class defs.

* Automatic changelog update

* Use RMC mob collision values (#36851)

Use RMC movement values

General feedback was it's too slow to push through people but this still prevents stacking so.

* Automatic changelog update

* early merge fix AAAAAA validcheck

* Cherry Pick Round-start Solar Variation (#36825)

* Roundstart Variation for Solar Panels (#86)

* Added roundstart variation for solar panels

* Removed HV cable spawner since i don't want to bother with mapping them

* Solar Panel Variation Pass Fix (#96)

Added a second variation pass for regular solar assemblies, since otherwise they would spawn both it and the broken variety

* Reorganized everything to no longer be in the _Moffstation subdirectory

* Removed a forgotten tag for Moffstation

* Removed the moffstation namespace settings

* Update Content.Server/GameTicking/Rules/VariationPass/Components/SolarPanelReplaceVariationPassComponent.cs

Co-authored-by: Tayrtahn <tayrtahn@gmail.com>

* Update Content.Server/GameTicking/Rules/VariationPass/Components/ReplacementMarkers/SolarPanelReplacementMarkerComponent.cs

Co-authored-by: Tayrtahn <tayrtahn@gmail.com>

---------

Co-authored-by: Tayrtahn <tayrtahn@gmail.com>

* disable solar panel variation

* put surgery borg module icons in _Shitmed

* the big fix

* abstract the right recipe

* goida

* no milk

* update coscult code

* update coscult objectives

* migrate SignCansScience away

* goida

* update engine maybe fix test

* GET OUT OF MY HEAD

* i give up

---------

Signed-off-by: Prole <172158352+Prole0@users.noreply.github.com>
Co-authored-by: Alice4267 <psycopompass14@gmail.com>
Co-authored-by: PJBot <pieterjan.briers+bot@gmail.com>
Co-authored-by: Pgriha <133212269+Pgriha@users.noreply.github.com>
Co-authored-by: Milon <milonpl.git@proton.me>
Co-authored-by: TakoDragon <69509841+BackeTako@users.noreply.github.com>
Co-authored-by: Hyper B <137433177+HyperB1@users.noreply.github.com>
Co-authored-by: Kyle Tyo <36606155+VerinSenpai@users.noreply.github.com>
Co-authored-by: K-Dynamic <20566341+K-Dynamic@users.noreply.github.com>
Co-authored-by: Tayrtahn <tayrtahn@gmail.com>
Co-authored-by: YoungThug <ramialanbagy@gmail.com>
Co-authored-by: lzk <124214523+lzk228@users.noreply.github.com>
Co-authored-by: Prole <172158352+Prole0@users.noreply.github.com>
Co-authored-by: RedBookcase <crazykid1590@gmail.com>
Co-authored-by: RedBookcase <Usualmoves@gmail.com>
Co-authored-by: Ed <96445749+TheShuEd@users.noreply.github.com>
Co-authored-by: Booblesnoot42 <108703193+Booblesnoot42@users.noreply.github.com>
Co-authored-by: UBlueberry <161545003+UBlueberry@users.noreply.github.com>
Co-authored-by: Banedon <15725971+Lanedon@users.noreply.github.com>
Co-authored-by: Lanedon <matth.galvez@gmail>
Co-authored-by: Princess Cheeseballs <66055347+Pronana@users.noreply.github.com>
Co-authored-by: uhbg <uhbg@users.noreply.github.com>
Co-authored-by: uhbg <29674581+uhbg@users.noreply.github.com>
Co-authored-by: Nemanja <98561806+EmoGarbage404@users.noreply.github.com>
Co-authored-by: Jackson Langley <tripwiregamer@gmail.com>
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
Co-authored-by: Entvari <195642967+Entvari@users.noreply.github.com>
Co-authored-by: dffdff2423 <dffdff2423@gmail.com>
Co-authored-by: āda <ss.adasts@gmail.com>
Co-authored-by: IProduceWidgets <107586145+IProduceWidgets@users.noreply.github.com>
Co-authored-by: Spessmann <156740760+Spessmann@users.noreply.github.com>
Co-authored-by: Leon Friedrich <60421075+ElectroJr@users.noreply.github.com>
Co-authored-by: Thomas <87614336+Aeshus@users.noreply.github.com>
Co-authored-by: ScarKy0 <106310278+ScarKy0@users.noreply.github.com>
Co-authored-by: Phooooooooooooooooooooooooooooooosphate <184853112+Phooooooooooooooooooooooooooooooosphate@users.noreply.github.com>
Co-authored-by: TytosB <54259736+TytosB@users.noreply.github.com>
Co-authored-by: Łukasz Lindert <lukasz.lindert@protonmail.com>
Co-authored-by: Hrosts <35345601+Hrosts@users.noreply.github.com>
Co-authored-by: T <theo75cg@gmail.com>
Co-authored-by: ArtisticRoomba <145879011+ArtisticRoomba@users.noreply.github.com>
Co-authored-by: Verm <32827189+Vermidia@users.noreply.github.com>
Co-authored-by: J <billsmith116@gmail.com>
Co-authored-by: ShadowCommander <10494922+ShadowCommander@users.noreply.github.com>
Co-authored-by: EmoGarbage404 <retron404@gmail.com>
Co-authored-by: Ghagliiarghii <68826635+Ghagliiarghii@users.noreply.github.com>
Co-authored-by: Michael <107807667+Doc-Michael@users.noreply.github.com>
Co-authored-by: mubururu_ <139181059+muburu@users.noreply.github.com>
Co-authored-by: pathetic meowmeow <uhhadd@gmail.com>
Co-authored-by: ScarKy0 <scarky0@onet.eu>
Co-authored-by: godisdeadLOL <169250097+godisdeadLOL@users.noreply.github.com>
Co-authored-by: YourUsername <you@example.com>
Co-authored-by: beck-thompson <beck314159@hotmail.com>
Co-authored-by: Golden Can <greentopcan@gmail.com>
Co-authored-by: SlamBamActionman <83650252+SlamBamActionman@users.noreply.github.com>
Co-authored-by: Ilya246 <57039557+Ilya246@users.noreply.github.com>
Co-authored-by: Zachary Yona <58833995+Magicalus@users.noreply.github.com>
Co-authored-by: Zachary Yona <magicalusf@gmail.com>
Co-authored-by: Hanz <41141796+Hanzdegloker@users.noreply.github.com>
Co-authored-by: catlord <catlord0009@gmail.com>
Co-authored-by: poklj <compgeek223@gmail.com>
Co-authored-by: Vladislav Suchkov <20380250+murolem@users.noreply.github.com>
Co-authored-by: kosticia <kosticia46@gmail.com>
Co-authored-by: Smith <182301147+AgentSmithRadio@users.noreply.github.com>
Co-authored-by: Winkarst <74284083+Winkarst-cpu@users.noreply.github.com>
Co-authored-by: T-Stalker <43253663+DogZeroX@users.noreply.github.com>
Co-authored-by: Saphire Lattice <lattice@saphi.re>
Co-authored-by: ArchRBX <5040911+ArchRBX@users.noreply.github.com>
Co-authored-by: archrbx <punk.gear5260@fastmail.com>
Co-authored-by: Southbridge <7013162+southbridge-fur@users.noreply.github.com>
Co-authored-by: No Elka <125199100+NoElkaTheGod@users.noreply.github.com>
Co-authored-by: PotRoastPiggy <121025443+PotRoastPiggy@users.noreply.github.com>
Co-authored-by: Samuka-C <47865393+Samuka-C@users.noreply.github.com>
Co-authored-by: Coolsurf6 <coolsurf24@yahoo.com.au>
Co-authored-by: beck-thompson <107373427+beck-thompson@users.noreply.github.com>
Co-authored-by: deltanedas <@deltanedas:kde.org>
Co-authored-by: SG6732 <151011904+SG6732@users.noreply.github.com>
Co-authored-by: themias <89101928+themias@users.noreply.github.com>
Co-authored-by: Preston Smith <92108534+thetolbean@users.noreply.github.com>
Co-authored-by: Nox <nebulousnox38@gmail.com>
Co-authored-by: Victor Shen <71985089+Vexerot@users.noreply.github.com>
Co-authored-by: Alzore <140123969+Blackern5000@users.noreply.github.com>
Co-authored-by: Kresny <krzeszny@gmail.com>
Co-authored-by: chromiumboy <50505512+chromiumboy@users.noreply.github.com>
Co-authored-by: Radezolid <snappednexus@gmail.com>
Co-authored-by: Kiri1674 <107365596+Kiri-Yoshikage@users.noreply.github.com>
Co-authored-by: kaiserbirch <150971100+kaiserbirch@users.noreply.github.com>
Co-authored-by: Franz - Josef Björck <kaiserbirch@proton.me>
Co-authored-by: Wolfkey-SomeoneElseTookMyUsername <wolfkey75@gmail.com>
Co-authored-by: TGRCDev <tgrc@tgrc.dev>
Co-authored-by: OnyxTheBrave <131422822+OnyxTheBrave@users.noreply.github.com>
Co-authored-by: Pieter-Jan Briers <pieterjan.briers+git@gmail.com>
Co-authored-by: SyaoranFox <99053675+SyaoranFox@users.noreply.github.com>
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
Co-authored-by: qrwas <aleksandr.vernigora93@gmail.com>
Co-authored-by: UpAndLeaves <92269094+Alpha-Two@users.noreply.github.com>
Co-authored-by: Centronias <me@centronias.com>
Co-authored-by: Tiniest Shark <head.rebel@yahoo.com>
Co-authored-by: KingFroozy <140668342+KingFroozy@users.noreply.github.com>
2025-05-06 19:35:03 -04:00
pathetic meowmeow 578dcd0c68
Allow players to print IPC/FBP chasses (#3418)
Allow players to print IPC chasses
2025-04-13 11:27:41 +01:00
Lyndomen 05ea147e44
reign in heights a bit (#3321)
reign in heights
2025-03-26 20:36:22 +00:00
Tayrtahn c0c525278e Validate some SpeciesPrototype fields (#35965)
* Convert SpeciesPrototype strings to ProtoIds

* Simplify protoman indexing calls
2025-03-23 16:17:17 +00:00
paige404 b0cf069a32 Fix broken layer hiding on clothes with multiple equipment slots (#34080)
* Fix broken layer hiding on clothes with multiple equipment slots

* Refactor ToggleVisualLayers, HideLayerClothingComponent, and ClothingComponent to allow more
precise layer hide behavior and more CPU efficient layer toggling.

* Adjust HumanoidAppearaceSystem to track which slots are hiding a given layer (e.g. gas mask and welding mask)
Add documentation
Change gas masks to use the new HideLayerClothingComponent structure as an example of its usage

* Fix the delayed snout bug

* Misc cleanup

* Make `bool permanent` implicit from SlotFlags

any non-permanent visibility toggle with `SlotFlags.None` isn't supported with how its set up. And similarly, the slot flags argument does nothing if permanent = true. So IMO it makes more sense to infer it from a nullable arg.

* Split into separate system

Too much pasta

* Remove (hopefully unnecessary) refresh

* Fisk mask networking

AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA

* Keep old behaviour, use clearer names?

I'm just guessing at what this was meant to do

* english

* Separate slot name & flag

* dirty = true

* fix comment

* Improved SetLayerVisibility with dirtying logic suggested by @ElectroJr

* Only set mask toggled if DisableOnFold is true

* FoldableClothingSystem fixes

* fix bandana state

* Better comment

---------

Co-authored-by: ElectroJr <leonsfriedrich@gmail.com>
2025-03-23 16:14:04 +00:00
Tayrtahn b1c9241e1f Cleanup: Remove redundant prototype name specifications (#35793)
* Remove redundant prototype name specifications

* These can stay
2025-03-23 15:57:26 +00:00
deltanedas dacdbc40a7 merge master 2025-03-11 22:09:45 +00:00
Lyndomen f024f46b0b
Port Height & Records Computer from Cosmatic Drift (#2236)
* Port character records from CD

* Make species' base scales respected by CD heights

* Hide the height editor in the humanoid profile editor

---------

Co-authored-by: Janet Blackquill <uhhadd@gmail.com>
2025-03-11 15:34:45 +00:00
MilenVolf eeb2854dec Remove unneeded Loc.GetString (#35739) 2025-03-09 23:28:29 +00:00
slarticodefast 6919f74b33 Fix integration tests (#35727)
* test

* fix names

* fix more
2025-03-09 23:27:34 +00:00
MilenVolf 70a8ec77f0 Localize all dataset names (#32893)
* Use `LocalizedDatasetPrototype` instead of `DatasetPrototype` in `RoleLoadoutPrototype`

* Localize ai names

* Replace to `LocalizedDatasetPrototype` in `NamingSystem`

* Localize arachnid first and last names

* Localize atv names

* Localize autoborg names

* Forgot to change type to localizedDataset

* Localize borer names

* Localize borg names

* Localize cargo shuttle names

* Localize clown names

* Localize death_commando names

* Localize diona names

* Localize fake_human names

* Localize first and last names

* Localize first male and female names

* Localize fortunes descriptions

* Forgot about equal sign

* Localize golem names

* Localize hologram names

* Localize military names

* Localize moth first male and female names

* Localize moth last names

* Fix autoborg name error

* Localize mushman first and last names

* Localize ninja names

* Localize operation names

* Localize regalrat names

* Fix mushman_first

* Forgot about `Loc.GetString`

* Move comments into comment section & fix names

* Localize reptilian male and female names

* Localize revenant names

* Fix locale word order in operation

* Localize rollie (btw it was never used and was added as "for the futuгe" long time ago)

* Localize skeleton_first names

* Localize syndicate names

* Localize vox names

* Localize wizard first and last names

* `{owner}-name-dataset` -> `names-{owner}-dataset`

* Change `DatasetPrototype` to `LocalizedDatasetPrototype` and make sure it works properly

GetFTLName is no more the static method, we need it to be able to use `Loc.GetString`

* I hate those mothname comments

* Combine name datasets prototypes

* Move every ftl from` /en-US/names` to ` /en-US/datasets/names`

* Remove ftl files

* Get every dataset yml back

* Remove changes for planets. Move it in another PR

* Revert these changes (Moved to another PR)

* How

* Apply suggested changes
2025-03-09 23:27:34 +00:00
SlamBamActionman 48b7cd8d39 Add undergarments & "Censor Nudity" toggle to options (#33185)
* Initial commit

* Attribution

* Review changes

* Added comment for upstream
2025-03-09 22:34:51 +00:00
deltanedas 9a82e8cee5 nuke metempsychosis 2025-03-09 21:02:29 +00:00
slarticodefast ff5849e487 Cloning Refactor and bugfixes (#35555)
* cloning refactor

* cleanup and fixes

* don't pick from 0

* give dwarves the correct species

* fix dna and bloodstream reagent data cloning

* don't copy helmets

* be less redundant
2025-03-09 21:02:24 +00:00
Tayrtahn 4fa80ae2d8 Fix prototypes so they pass analyzer checks (#35435) 2025-03-01 14:18:26 +00:00
Zachary Higgs a27ed9f5d9 Move CloneAppearance to Shared (#35017)
* Move CloneAppearance

- Move CloneAppearance from HumanoidAppearanceSystem
to SharedHumanoidAppearanceSystem

* CR - Fix the sins of the past
2025-02-14 16:10:00 +00:00
iesteed 021dc93627 ports most IPC code 2025-01-24 21:08:31 -05:00
Michelle Szinger 97492b38f5
Port undergarments from ImpStation (#2719)
All races available in the character creator may wear undergarments.
Also lets slimefolk wear chest tattoos.
2025-01-14 02:56:24 -03:00
deltanedas 9ece272884 merge master 2025-01-01 09:14:40 +00:00
deltanedas ec94579ebc
the great namespace refactor (#2574)
* refactor DeltaV/deltav resources to _DV

* change DeltaV namespaces to _DV

* add space before all DeltaV comments

* update xamls

* fix and move arena parallax to _DV

* more fix

* refactor even more stuff

* fix the grid fills

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
2025-01-01 07:50:34 +00:00
gluesniffler 57f6d340e7 Minor Shitmed Bugfixes 2 (#1038)
* full fucking send

* ope forgot to remove the EE scripts

* fix test

* fix shitcode fail

* DELTA THAT VALUE IS NULLABLE

* whoopsie daysie

* fixed???

* chat is this real

* bugfixes

* more bugfixes

* goobmed

* Savepoint

* fixed yet more crap

* ymlops

* tests

* shitcode

* Update duffelbag.yml

* shoes fixed???

* bruhhhhhhhhhhhhh
2024-12-27 17:17:07 +00:00
gluesniffler da885d8854 Shitmed (#869)
* full fucking send

* ope forgot to remove the EE scripts

* fix test

* fix shitcode fail
2024-12-27 16:47:20 +00:00
portfiend 690cbe995a
Rodentia Species (#1511)
* add: basic rodent species

* add: rodentia base sprites

* add: basic rodent hand/foot markings

* add: ears i got em

* add: tail markings

* add: big ears

by request

* tweak: default markings, coloration

everything uses skin color by default when added except for these new "default" markings which use tattoo

* add: the rest of the basic body part markings

* add: snout textures

* add: pattern markings

* add: cheek detail

* add: sex variations for chest marking

* add: give rodentia the generic markings

* add: rodentia names

* add: damage, voice, mass, emotes to rodentia

* add: rummager ability for rodentia

* remove: temperature protection from rodentia

* add: some makeup markings for rodentia

* add: include rodentia in misc pools

* add: rodentia guidebook entries

* tweak: adjust rodentia marking points

* add: rodentia pie sprite

* tweak desc

* tweak: change rodentia name scheme

* tweak: adjust damage modifiers for rodentia

* add: rodentia always trigger mouse traps

* tweak: rodentia have unique speech verbs

* tweak: change rodentia inventory shape

* tweak: rodentia take more phys dmg overall

* tweak: made rodentia hungry

* add: mouth storage component on rodents

* add: server mouthstoragesystem

* add: force-dump mouth storage on trip

hmm the networking on this is a little ehh. but watever

* add: rodentia drop mouth items on damage

* add: blocked interactions if mouth is full

* fix: corrected accent oops

* tweak: tense

* fuck this import in particular

* tweak: spit damage threshold

* fix: no redundant open actions

* refactor: move this action into the types file

* add: rodentia get ability to hide under tables etc.

* tweak: change rodentia action icons

* refactor: im renaming this component and system lol

* refactor: rename this event too

i was gonna refactor the whole system to be more like climbing, but the climbing system is convoluted so im just gonna do this and put it aside

* tweak: fix the mouth storage icon
the number covers it

* tweak: check if colliding with table before un-sneaking

* fix: crawl action cooldown and popup text

* add: slowdown to sneak ability

* refactor: fix this namespace

* tweak: rummageable objects now use a cooldown

* fix: newlines

* Apply suggestions from code review

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

* Apply suggestions from code review

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

* fix: collision group variavbles

* add: proper "full body" sprite

* add: move blaze to head folder, "round face" marking

* add: whisker markings

* tweal: rodentia are 50% -> 33% hungrier

1.5x seemed excessive

* refactor(mouthStorage): move OnExamined from server to shared

* refactor(mousetrap): use HasComp

* refactor(mouthStorage): use a public api instead of event here

* refactor(yml): KILL REPETITION

* refactor(parts/rodentia): KILL REPETITION

---------

Signed-off-by: portfiend <109661617+portfiend@users.noreply.github.com>
Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com>
2024-09-07 23:04:34 -03:00
Rouge2t7 f02119b0d1 Long human ears (#30490)
Long human ears colour fix. Shortcut removed.
2024-08-27 00:32:30 +01:00
Verm fe3892977d
Randomizes more humanoid appearances (#27997) 2024-06-01 18:00:15 +02:00
metalgearsloth 25ce6c531b
Lobby refactor + species loadouts support (#27576)
* Vox stuff

* Species loadouts and lobby refactor

The control flow for lobby is all over the shop so I pulled it all up from the individual controls so now they handle the bare minimum required and LobbyUIController handles the rest.

* a

* Bulk changes

* a

* weh

* Character import / export

* finalise

* woops this stuff too

* Also datafield exporting

* comments

* Review
2024-05-18 13:55:56 +02:00
Nemanja 3055d7bac5
Mega Antag Refactor (#25786)
* Mega Antag Refactor

* last minute delta save

* more workshopping

* more shit

* ok tested this for once

* okkkkk sure

* generic delays for starting rules

* well darn

* nukies partially

* ouagh

* ballin' faded and smonkin wed

* obliterated the diff

* Spread my arms and soak up congratulations

* I've got plenty of love, but nothing to show for it

* but there’s too much sunlight
Shining on my laptop monitor, so I
Can’t see anything with any amount of clarity

* ok this junk

* OOK!

* fubar

* most of sloth's review

* oh boy

* eek

* hell yea!

* ASDFJASDJFvsakcvjkzjnhhhyh
2024-05-15 19:48:32 +02:00
null 8db7894d51
Merge remote-tracking branch 'refs/remotes/upstream/master' into 2024/04/21-loadouts 2024-05-07 22:52:49 +02:00
null a2ac3f6bac
Merge remote-tracking branch 'refs/remotes/upstream/master' into 2024/05/02-Merge-master
# Conflicts:
#	Content.Server/Nyanotrasen/Carrying/CarryingSystem.cs
#	Content.Server/Pinpointer/NavMapSystem.cs
#	Content.Server/Power/EntitySystems/PowerMonitoringConsoleSystem.cs
#	Content.Shared/Tag/TagSystem.cs
#	Resources/Prototypes/Entities/Clothing/Uniforms/specific.yml
2024-05-07 04:53:36 +02:00
Azzy 7c4d38b804
Merge branch 'master' into 2024/04/21-loadouts 2024-05-06 14:08:45 -05:00
Null 8f9113b766
Increase moth color blending strength by 25% and replace color blending with the intended helper function
* Replace weird lerping with intended function

* Increase effect strength by 25%

---------

Co-authored-by: Azzy <azzydev@icloud.com>
2024-05-06 15:27:26 +00:00
Errant 1e2f97dc21
Vox sprite rework (#26985)
weh

(cherry picked from commit 257b04d27793b8c8853af57a9f53d361062d5d61)
2024-05-03 00:29:32 +02:00
NullWanderer 74002a1c4e
Merge remote-tracking branch 'refs/remotes/upstream/master' into 2024/04/21-loadouts
# Conflicts:
#	Content.Server/IoC/ServerContentIoC.cs
#	Resources/Prototypes/Roles/Jobs/Medical/chemist.yml
2024-04-22 19:41:29 +02:00