Commit Graph

70 Commits

Author SHA1 Message Date
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
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
pathetic meowmeow a1f3ca6a69 Allow cargo request computers to send orders to the primary account (#37943) 2025-08-07 01:57:30 +02:00
slarticodefast c47dd3e51b Move PriceCalculationEvent and EstimatedPriceCalculationEvent to shared (#37782)
* moce PriceCalculationEvent to shared

* Update Content.Shared/Cargo/PriceCalculationEvent.cs

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

---------

Co-authored-by: Tayrtahn <tayrtahn@gmail.com>
2025-08-05 16:21:45 +02:00
pathetic meowmeow a465f6d0a5
Revert traitor reputation (#3823) 2025-05-22 23:59:12 +01:00
Nemanja 7f7847f043 Salvage Job Board (#37549)
* Salvage Job Board

* More development

* Small boy

* Computer yaml (partial)

* UI

* Rank unlock logic

* Job label printing

* appraisal tool integration

* Jobs

* add board to QM locker

* boom!

* command desc

* mild rewording

* ackh, mein pr ist brohken
2025-05-18 18:21:06 +01:00
Tayrtahn b6844b62af Fix prototypes and datadefs so they pass analyzer checks (again) (#37485)
Fix prototypes so they pass analyzer checks (again)
2025-05-18 17:55:22 +01:00
Nemanja a791c4d415 Validate Cargo Markets (#37271)
* Validate cargo markets

* readonly market ID
2025-05-18 17:05:14 +01:00
themias e48a9668c0 Cargo request and bounty console deny sound cooldown (#37234)
* Cargo bounty console deny sound cooldown

* ordering computer cooldown

* Update Content.Shared/Cargo/Components/CargoBountyConsoleComponent.cs

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

* Update Content.Shared/Cargo/Components/CargoBountyConsoleComponent.cs

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

* Update Content.Server/Cargo/Systems/CargoSystem.Bounty.cs

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

* AutoGenerateComponentPause

---------

Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
2025-05-18 16:56:36 +01:00
deltanedas ac1b82d406
traitor reputation real (#2913)
* add reputation system

* add contracts button to PDA

* give traitors contracts

* add GetRandomObjective to SharedObjectivesSystem

* add TryRemoveObjective overload

* add everything needed for reputation store and objectives

* "ui"

* giant uplink reputation tagging

* prevent buying reputation-locked gear with uplink implant

* :trollface:

* more ui stuff

* :trollface:

* :trollface:

* remove default objectives

* :trollface:

* UI fixes

* stuff

* objective component changes

* add offerings and stuff to yml

* make some objectives work

* make rcd objective real

* more ui fix

* :trollface:

* ui usable

* bunch of low risk objectives

* syndie jail wip

* more wip

* massive amount of work

* add bad guidebooks

* prevent fultoning anchored things

* fixes

* disable claim buttons when no slots are open

* :trollface:

* :trollface:

* :trollface:

* update ui when a slot unlocks

* move rejecting to offerings, remove rescan (automatic now)

* add verb to attach fulton, fix

* dont get objective to ransom/kill someone you already ransomed

* make offering slots random + maximum count in rep level

* :trollface:

* rela

* update syndie jail

* more syndie jail update

* make marshal real

* fix

* fix power room power

* remove access from timer

* :trollface:

* engine

* allow syndicate items on syndie jail

* add ransom ui

* update map loading

* add ransom purchasing to cargo request console

* warn not error for loading

* ui fixes

* final fixy

* mg book fix

* final fixy II

* remove redundant Announcement word

* more []

* end ransom when leaving the jail

* :trollface:

* 10 tc for roundstart traitors

* make nuke core objective work for traitor

* guidebook gaming

* early merge of guidebook comments

* update bunch of objectives

* add min reputation to kill fellow traitor

* guidebook gaming

* evil

* giant stuff

* dont offer dupe objectives

* evil

* pronoun

* fix

* grr

* blacklist assist and DAGD from assist objective

* grr

* fix linter

* remove objectives from traitor rule test

* nuke disk anti-troll

* evil test

* add objectives test to find bad objective groups

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

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

* fixy

* fix

* fix stuff

* reword ransom announcement

* pro

* goida

---------

Signed-off-by: deltanedas <39013340+deltanedas@users.noreply.github.com>
Co-authored-by: deltanedas <@deltanedas:kde.org>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-05-12 17:16:22 -04:00
pathetic meowmeow 460f8bde37
Speedmerge make departmental orders consoles print slips (#3658)
* Make departmental orders consoles print slips (#36944)

* Make departmental orders consoles print slips

* feed back cycle

(cherry picked from commit cfba56c2b43347b3c31be73c1f5c7e8ffcd7469b)

* DeltaV integration for departmental orders consoles

* test fail unreal

* fix
2025-05-09 23:16:18 +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 1ebfc27635
Make funding allocation computer more configurable (#36790) (#3555)
* 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>
(cherry picked from commit 907f4b39cd40eb0ca4a555400e8088faa3d61d7d)

* It's called logistics

* dv extensions
2025-04-22 19:23:40 +00:00
pathetic meowmeow fd728fdd08
Early cherrypick of Departmental Economy (#36445) (#3458)
* Departmental Economy (#36445)

* Cargo Accounts, Request Consoles, and lock boxes

* Funding Allocation Computer

* final changes

* test fix

* remove dumb code

* ScarKy0 review

* first cour

* second cour

* Update machines.yml

* review

---------

Co-authored-by: ScarKy0 <106310278+ScarKy0@users.noreply.github.com>
Co-authored-by: Milon <milonpl.git@proton.me>
(cherry picked from commit 12b75beeab27f8905d6d3f07b7bbda2cfd859b5e)

* Fix station income instantly accumulating roundstart (#36572)

Fix station money accumulating roundstart

(cherry picked from commit ed3e4c7d4ea82f000ef963e393d01f73484417a9)

* DeltaV departmental economy

---------

Co-authored-by: Nemanja <98561806+EmoGarbage404@users.noreply.github.com>
2025-04-16 22:05:13 +00:00
Milon ffc9b44838 fix UpdateBankAccount (#35749)
* trolled

* fun

* fuck me
2025-03-23 14:01:06 +00:00
Tayrtahn 4fa80ae2d8 Fix prototypes so they pass analyzer checks (#35435) 2025-03-01 14:18:26 +00:00
BarryNorfolk 18182a7a85 Add history tab to bounty console (#33932)
* Add struct for holding historical data on cargo bounties

* Add localisation strings for bounty history

* Add new XAML entry for display bounty history

* Expand cargo bounty menu to include tabs

* Ensure station databases hold historical bounty data

* Add to the bounty history when removing one from active

* Feed bounty history into cargo's bounty system

* Move tab title setting to constructor

* Remove redundant access specifications

* Remove un-needed override

* Fixup BountyHistoryEntry backing code

* Fix formatting in CargoBountyMenu

* Reformat BountyHistoryData

* Rework TryRemoveBounty to use new Entity type

* Add Enum for showing bounty results

* Rework look and feel of History tab

* Add visible text when no bounties have been completed yet

* Remove control

* Swap default to null

* Reverse ordering of bounties so last entry comes first

* Remove redundant Visible

* Move enum docs into the enum
2025-02-14 16:09:49 +00:00
BarryNorfolk ee50aa7273
Bounty/history improvements (#2743)
* Remove redundant access specifications

* Remove un-needed override

* Fixup BountyHistoryEntry backing code

* Fix formatting in CargoBountyMenu

* Reformat BountyHistoryData

* Rework TryRemoveBounty to use new Entity type

* Add Enum for showing bounty results

* Rework look and feel of History tab

* Add visible text when no bounties have been completed yet

* Remove control

* Swap default to null

* Reverse ordering of bounties so last entry comes first
2025-01-16 20:21:13 +00:00
Dylan Hunter Whittingham c8a77a1821 Added pricegun sound (#34119)
added pricegun sound

Co-authored-by: dylanhunter <dylan2.whittingham@live.uwe.ac.uk>
2025-01-12 07:46:00 +00:00
deltanedas 7bcce16ac2
fix bounty arbitrage test (#2651)
* fix bounty arbitrage test

* fishie

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
2025-01-08 05:49:40 +00:00
BarryNorfolk 600ef0e5a6
Add history tab to bounty console (#2473)
* Add struct for holding historical data on cargo bounties

* Add localisation strings for bounty history

* Add new XAML entry for display bounty history

* Expand cargo bounty menu to include tabs

* Ensure station databases hold historical bounty data

* Add to the bounty history when removing one from active

* Feed bounty history into cargo's bounty system
2024-12-18 13:36:06 +00:00
beck-thompson b4452f8fa5 Predict appraisal tool verb! (#32496)
* First commit

* Network :(
2024-10-02 12:08:11 +01:00
deltanedas c93551dad7
upstream merge 7/9 (#1762)
* Remove always false checks (#31708)

* Remove calls to FormattedMessage obsolete methods (#31706)

* Remove FormattedMessage obsolete methods

* Oops

* remove misinformation from tip 26 (#31705)

tip 26

* Automatic changelog update

* Replace obsolete code in AnomalySystem.Generator.cs (#31718)

* replace obsolete

* weh

* Added cursor indicator for space dragon fire breath ability (#31725)

space dragon breath cursor indicator

Co-authored-by: YourUsername <you@example.com>

* Automatic changelog update

* small yml cleanup (#31720)

* Updates descriptions of station specific jobs. (#31713)

done

* Remove unused IoC dependency references. (#31704)

Remove unused IoC dependencies

* cleanup filing cabinets yml (#31211)

* partmedia ahh kommit

* ahh

* everything should be fine now

* f

* now should be good

* Update Resources/Prototypes/Entities/Structures/Storage/filing_cabinets.yml

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

* fix suffix

---------

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

* Move IgnitionEvent to shared (#30985)

* Cleanup railings yml (#31618)

* Cleanup railings

* fix line

* real fix

* Roundstart Grappling Gun (#31737)

Roundstart grappling hook

* Automatic changelog update

* Added in-hand sprite for Smile the Slime (#31731)

added smile the slime in-hand texture

Co-authored-by: YourUsername <you@example.com>

* Lite Magnet Rebalancing (#31726)

magnet rebalancing ish

* unnerf fishops

* Devmap crew monitor fix (#31677)

* Automatic changelog update

* Add ERT time stats (#31629)

* add jobs for ghost roles

* add job to ToggleableGhostRole

* typo

---------

Co-authored-by: Mota <belochuc@gmail.com>

* Automatic changelog update

* Fix CS0642 - Possible mistaken empty statement (#31740)

* Throw the book at em! The space law book now does 1 blunt projectile damage (#31387)

* you can now throw the space law book for 1 blunt damage

* made book damage a feature of all books

* Replace instances of SolutionContainerSystem with SharedSolutionContainerSystem (#30084)

* Replace instances of SolutionContainerSystem with SharedSolutionContainerSystem

* guap

* More fixes

* Wait you can do that?

---------

Co-authored-by: Pieter-Jan Briers <pieterjan.briers+git@gmail.com>

* Add Donk Co. microwave board to Combat Bakery Kit (#31239)

* Add special microwave board to Combat Bakery Kit

* use event instead of trycomp

* make the board sus

* add instructions note

* embarrassing typo

* Add functionality to Donk Co. microwave instead

* update note

* Automatic changelog update

* Actions bar dynamic resizing (#31759)

* action bar dynamic resizing

* action bar dynamic resizing for separated style

* decreased indent for separated style

---------

Co-authored-by: YourUsername <you@example.com>

* Automatic changelog update

* Fix warnings related to non-exhaustive pattern matching.  (#31763)

old man shakes fist at modern syntax

* ats update (#31766)

* ats update

* fix pipenet

* Ninja throwing star ability fix (#31684)

fixed ninja star not spawning

Co-authored-by: YourUsername <you@example.com>

* Automatic changelog update

* Remove duplicate using from FoodSystem (#31769)

* vox voices revamp (#31679)

vox voices v2

* fixed broken pipe sprites (#31773)

* Return Long2 and Long3 hairstyles  (#30963)

* Sprites

* Prototype_&_Locale

* sorted_in_alphabetical_order

* Automatic changelog update

* Added many old ion lawsets for borgs and AI. (#31664)

* Added the Commandments, Paladin, LetLive, Station Efficiency, Robocop, Overlord, Dungeon Master, Artist, Antimov and Nutimov lawsets/

* Wording

* Anti-Antimov

* Fixed fun

* Add Snails (#30765)

* add snails

* scuffix

* migrate

* mo-grate

* oopsied the ftls

* Revert "oopsied the ftls"

This reverts commit 0d3c6c17f31ec904679d6a48799cea71e77c1f99.

* the curse of staging the wrong file, resolved.

* Snoth

* fix my dumbs

* reviews 1

* anti space technology

* salt hurty

* spelling

* Its a slotherhouse out here

* sequencing

* cooked snail

* volfix

* speed reversal

* Automatic changelog update

* Remove testbed command (#31793)

* feat: now when research is unlocked in console, approver of reasearch is radio-ed too (#31170)

* feat: now when research is unlocked in console, approver of reasearch is radio-ed too

* refactor: now most of events that require actor name to be radio-ed or logged use TryGetIdentityShortInfoEvent which is subscibed by id-card system and borg system (to work for both carbon and synthetic life-forms)

* refactor: moved TryGetIdentityShortInfoEvent on id card system to shared, fixed cargo cent-com-originated orders

* remove unused check

* refactor: decoupled systems from IdCardSystem (those that are not dependent on it anymore)

* refactor: removed unuseed usings

* feat: emagged cargo/research consoles wont radio messages on buy/research confirm anymore

---------

Co-authored-by: pa.pecherskij <pa.pecherskij@interfax.ru>

* Automatic changelog update

* New chemical based artifact nodes (#30873)

* Initial pH nodes, and description changes to indicate pH

* Psychoactive and stimulant nodes, Medical foundation, bioreactive hint

* Added medical reagents to medical node. Added norepinephric acid to acidic and made up a pH

* Added pyrotechnic chem node, and corresponding hint

* spelled psychedelic correctly

* Fixed capitalisation skill issue

* fixed indentation skill issue

* fixed a further indentation skill issue

* Removed extraneous whitespace

* Replaced bioreactive with theraputic and psychoactive. Also fixed typo skill issue.

* removed unnecessary comment

* Replaced heartbreaker with THC for psychadelic

* removed artifexium from acidic

* added tran acid to acidic

* added more medical chems

* removed pH values

* removed all but medical

* Automatic changelog update

* Add Red Neck Gaiter To Secdrobe (#30106)

* Red Neck Gaiter Added to SecDrobe

* Removes Gaiter From TheaterDrobe

* Automatic changelog update

* Fixed typos (#31811)

* Automatic changelog update

* Station AI has their name displayed in announcements now. (#31802)

* Station AI has their name displayed in announcements now.

* I'm so sorry

* Corrections

* part 2

* part 3 :|

* part 4

* Whitespace

* Fixing whitespace part 1

* No more whitespace

* PLEASE NO MORE WHITESPACE

* Automatic changelog update

* Add disabled station anchors version (#31794)

* Add disabled station anchors versions

* remove this

* add structural damage taken to a lot of prototypes (#30790)

* fix

* add structural damage taken to a lot of other things

* do requested changes

* how did this happen

* Automatic changelog update

* No Mr.Snail, I expect you to die! (fix sprite) (#31834)

* No Mr.Snail, I expect you to die!

* emoting

* Allow some mobs to walk slowly (#31360)

* Allow mice to walk slowly

* add more

* Automatic changelog update

* Delete nonsense solar assembly construction through the Construction window (#31425)

* Delete construction for solar assembly, it's the way to do it

* Fix description of solar tracker electronics

* Improvements to hand labeler UI (#31833)

Give line edit focus when window is opened
No longer require pressing enter to set the text
Give feedback when user hits the maximum label length

Co-authored-by: Eoin Mcloughlin <helloworld@eoinrul.es>

* make tesla brighter (#31357)

* make tesla brighter

* radius to 10

* Automatic changelog update

* CorrectContraband levels on each type of magboots (#30960)

* Added a ClothingShoesBootsMagBase, to allow the other versions of the magboots to have their own contraband settings

* Changed Science Boots to not be contraband

* Made ClothingShoesBootsMagBase abstract

* Removed Engineering Contraband from base magboots. Now only the CE's Advanced Magboots are contraband (Grand Theft Contraband). Blood Reds are Syndie Contraband.

* Automatic changelog update

* Morgue system refactor remove unused VVs and into Entity (#31835)

* Remove unused VVs params and usings
from entityUid, MorgueComponent into Entity<MorgueComponent> ent

* remove unnecesary VVs cuz datafields add em

* Make midround zombie outbreaks much rarer (#30266)

* Remove midround zombies

* super rare, like, 1/651 chance every few minutes.

* weight to 1

---------

Co-authored-by: Ubaser <134914314+UbaserB@users.noreply.github.com>

* Automatic changelog update

* Teleporting while pulling crash fix (#31787)

teleporting while pulling crash fix

Co-authored-by: YourUsername <you@example.com>

* Automatic changelog update

* quietify stealthbox (#30741)

* Automatic changelog update

* Atmospheric alerts computer (#25938)

* Atmospheric alerts computer

* Moved components, restricted access to them

* Minor tweaks

* The screen will now turn off when the computer is not powered

* Bug fix

* Adjusted label

* Updated to latest master version

* Automatic changelog update

* Day 0 bug fix for atmos alerts computer (#31858)

Initial commit

* Basically every electronic device can now be used by the AI. (#31730)

* Basically every electronic device can now be used by the AI.

* Removed stuff that didnt make sense

* oops

* Removed access from mailing and disposal units.

* Added AI wires to a couple machines.

* cool epic stuff

* Automatic changelog update

* Fix a typo in the 10 commandments (#31856)

* feat: #26107 uplink discounts for traitors (no nukies for now) (#26297)

* feat: #26107 uplink discounts for traitors and nukies

* refactor: #26107 extracted discount label from price of StoreListingControl

* refactor: minor renaming

* refactor: parametrized adding discounts to uplink store

* fix: #26107 prevent exception on empty discountOptions

* feat: uplink now have 'Discounted' category which contains all discounted items on this session.

* after merge fixups

* rename discount categories according to common sense

* refactor: DiscountOptions is now optional (nullable) on ListingData

* add nullability check ignore for already checked listingData.DiscountOptions

* fix after merge store menu ui

* remove unused using

* final fix after merge conflicts

* [refactor]: #26107 fix variables naming in UplinkSystem

* fix: #26107 fix after merge

* refactor: #26107 now supports discountDownUntil on ListingItem, instead of % of discount

* feat: #26107 support multiple currency discount in store on side of discount message label

* refactor: #26107 extracted discounts initialization to separate system. StoreDiscountData are spread as array and not list now

* refactor: #26107 move more code from storesystem to StoreDiscountComponent

* refactor: #26107 separated StoreSystem and StoreDiscountSystem using events

* fix: #26107 placed not-nullable variable initialization in ListingData for tests

* refactor: #26107 minor renaming, xml-docs

* fix: #26107 changed most of discounts to be down to half price for balance purposes

* ids used in with discounts are now ProtoIds, dicountCategories are now prototypes, code with weights simplified

* decoupled storesystem and store discount system

* xml-docs

* refactor:  #26107 xml-doc for StoreDiscountSystem

* is now a thing (tmp)

* fix: compilation errors + StoreDiscountData.DiscountCategoryId

* refactor: rename ListingDataWithCostModifiers, fix all cost related code, enpittyfy performance, uglify uplink_catalog

* refactor: removed unused code, more StoreDiscountSystem docs, simplify code

* refactor: moved discount category logic to respective system, now creating ListingData c-tor clones all mutable fields as expected

* refactor: rename back (its not prototype)

* refactor: move ListingItemsInitializingEvent to file with handling logic

* refactor: comments for StoreBuyFinishedEvent handling, more logging

* refactor: moved StoreInitializedEvent, xml-doc

* refactor: simplify StoreDiscountSystem code  (reduce nesting) + xml-doc

* refactor: restore old listing data cost field name

* refactor: fix linter in uplink_catalog.yml

* refactor: xml-doc for ListingDataWithCostModifiers

* refactor: limit usage of ListingData in favour of ListingDataWithCostModifiers

* refactor: purged linq, removed custom datafield names, minor cleanup

* refactor: removed double-allocation on getting available listings

* refactor: StoreSystem.OnBuyRequest now uses component.FullListingsCatalog as reference point (as it was in original code)

* fix: minor discount categories on uplink items changes following design overview

* refactor: StoreBuyListingMessage now uses protoId and not whole object

* refactor: store refund and discount integration test, RefreshAllListings now translates previous cost modifiers to refreshed list, if state previous to refresh had any listing items

---------

Co-authored-by: pa.pecherskij <pa.pecherskij@interfax.ru>

* Automatic changelog update

* Fixed AI Actions (#31823)

* Updated sprites for AI HUD

* Epic test fail

* Merged AGhost actions and AI actions together again.

* Seperate comms and bugfix. Fixed broadcast.

* Automatic changelog update

* add wireless net to evac shuttles

* Automatic changelog update

* A kit to help new botanists discover chemistry (#31738)

* Add a kit for botanists to do some limited chemistry to the NutriMax. Intended to help new botanists learn in-game about chemistry.

* remove exclamation marks from names

* naming fix

* Rejected trademark application for 'Farmers Helper'.

---------

Co-authored-by: PraxisMapper <praxismapper@gmail.com>

* Automatic changelog update

* Board for the AI upload console (#31867)

board

* Automatic changelog update

* Fix typo in agri-chem manual (#31869)

* Fix typo in agri-chem manual

* Unremove my added newline

* Cleanup books.yml (#31838)

* Cleanup books.yml

* yeah

* shame

* Vox sign/N2 locker update (#31845)

* Vox sign/N2 locker update

The "vox area" sign and N2 locker sprite were both taken from /vg/station. These sprites have bad racist connotations as discussed in https://github.com/space-wizards/space-station-14/issues/31840, and do not fit our server culture.

The new N2 locker is not a taped on piece of trash. It now also has a blue stripe to mimic the regular O2 locker and make it more distinct from fire safety closets.

The new "vox area" sign sprite follows the same style as other "area indicator" signs used throughout the blue and isn't an explicit warning sign anymore. It still has "No O2" on it to fill that role though.

* emogarbage adjustments

---------

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

* Automatic changelog update

* Pizza boxes now have a chance to contain cotton pizza (#31883)

Pizza box now contains cotton pizza

Co-authored-by: Ekkosangen <9094006+XyyxShard@users.noreply.github.com>

* Automatic changelog update

* Tech Anomaly (#31764)

* A

* B

* C

* D

* Update TechAnomalySystem.cs

* idle anim

* Update meta.json

* new animation

* Automatic changelog update

* Fixed throngler name inconsistencies (#31889)

changed throngler names

* I have spent more time today cleaning up garbage than coding new shit, and I am mad (#31246)

* Fix logging of GetWebhook errors

Yeah let's just not log the error only stack trace.

* I have spent more time today cleaning up garbage than coding new shit, and I am mad

Cleans up the custom vote Discord webhook code because I *happened* to lay my eyes on how completely terrible it was and immediately found an obvious bug with it.

Also did basic QA because jesus christ: it more clearly reports pending votes, properly indicates cancelled votes, improves footer formatting, better error logging, all the usual shit.

Requires https://github.com/space-wizards/RobustToolbox/pull/5375 to avoid test failures

* Mineral Scanner (#31390)

* Mineral Scanner

* doink

* review

* sunday funday

* review and fix bugs i think?

* Update MiningOverlay.cs

* Automatic changelog update

* Fix ai upload console itemslot whitelist (#31900)

* Fix ai upload console itemslot whitelist

* aw man

* Automatic changelog update

* improved vox laugh (#31798)

vox laugh not underwater

* fix pump shotgun wielded sprite (#31885)

* fix shotgun sprite

* fix take 2

* fix: Snail event wasnt tabled (#31884)

pest events reorganized and snails spawn

* Automatic changelog update

* Force stop pulling when fall asleep (#31893)

* break pull at sleep

* TryStopPull without user

---------

Co-authored-by: YourUsername <you@example.com>

* Automatic changelog update

* Energy Shotgun Change 2 - Narrow Nerf + instances from NoSpawn --> categories: [ HideSpawnMenu ] + self recharge removed + 1 more shot + normal recharge speed (#31235)

* narrow nerf

* last instance of nospawn gone

* removes self recharge

* 8 shots, less recharge time

* Automatic changelog update

* Add justice helm (#31905)

* Add justice helm

* backslash moment

* spinny light

* remove power cell from recipe

* Automatic changelog update

* Quiver Crafting Recipe (#27198)

* Update quiver.yml

* Create quiver.yml

* Update clothing.yml

* Update pneumatic_cannon.yml

* Update pneumatic_cannon.yml

* Update pneumatic_cannon.yml

* Update pneumatic_cannon.yml

* Delete RDs binary encryption key (#31909)

Deleting binary key

Silicon supremacy!

* undelete rd key

* Automatic changelog update

* split temperature protection into heating and cooling (#30662)

* split temperature protection into heating and cooling

* fugg

* weh

* update TemperatureProtection for stuff

* Automatic changelog update

* makes the maple wing marking have a primary and a secondary color (#31691)

bogos binted

* Automatic changelog update

* Remake bottles and syringes names to use labels (#29956)

* Remake bottles and syringes names to use labels

* vial

* fix and add stuff

* Automatic changelog update

* guide on agrichem and botanicals guidebook update (#31896)

* Automatic changelog update

* Automatic changelog update

* Lost evac pod thing tiny fan (#31915)

* disaster evacpod tinyfan

* real

* :trollface:

* untroll

* Ghostrole rule updates (#29249)

* First batch of ghostrole rule updates

* Second pass

* Re-word free agent

* Apply review comments

Co-authored-by: Chief-Engineer <119664036+Chief-Engineer@users.noreply.github.com>

* You heard it here first folks

God rules are weird to write.

Co-authored-by: Chief-Engineer <119664036+Chief-Engineer@users.noreply.github.com>

* Honkbot -> Free Agent

Co-authored-by: Chief-Engineer <119664036+Chief-Engineer@users.noreply.github.com>

* Mimebot -> Free Agent

Co-authored-by: Chief-Engineer <119664036+Chief-Engineer@users.noreply.github.com>

* Jonkbot -> Free Agent

Co-authored-by: Chief-Engineer <119664036+Chief-Engineer@users.noreply.github.com>

* Softer blue

---------

Co-authored-by: Chief-Engineer <119664036+Chief-Engineer@users.noreply.github.com>

* :trollface:

* :trollface:

* :trollface:

* pro

---------

Co-authored-by: Winkarst <74284083+Winkarst-cpu@users.noreply.github.com>
Co-authored-by: Ilya246 <57039557+Ilya246@users.noreply.github.com>
Co-authored-by: PJBot <pieterjan.briers+bot@gmail.com>
Co-authored-by: Errant <35878406+Errant-4@users.noreply.github.com>
Co-authored-by: godisdeadLOL <169250097+godisdeadLOL@users.noreply.github.com>
Co-authored-by: YourUsername <you@example.com>
Co-authored-by: lzk <124214523+lzk228@users.noreply.github.com>
Co-authored-by: Boaz1111 <149967078+Boaz1111@users.noreply.github.com>
Co-authored-by: Mervill <mervills.email@gmail.com>
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
Co-authored-by: DrSmugleaf <10968691+DrSmugleaf@users.noreply.github.com>
Co-authored-by: Nemanja <98561806+EmoGarbage404@users.noreply.github.com>
Co-authored-by: deltanedas <@deltanedas:kde.org>
Co-authored-by: poeMota <142114334+poeMota@users.noreply.github.com>
Co-authored-by: Mota <belochuc@gmail.com>
Co-authored-by: Moomoobeef <62638182+Moomoobeef@users.noreply.github.com>
Co-authored-by: Cojoke <83733158+Cojoke-dot@users.noreply.github.com>
Co-authored-by: Pieter-Jan Briers <pieterjan.briers+git@gmail.com>
Co-authored-by: themias <89101928+themias@users.noreply.github.com>
Co-authored-by: Emisse <99158783+Emisse@users.noreply.github.com>
Co-authored-by: Арт <123451459+JustArt1m@users.noreply.github.com>
Co-authored-by: ScarKy0 <106310278+ScarKy0@users.noreply.github.com>
Co-authored-by: IProduceWidgets <107586145+IProduceWidgets@users.noreply.github.com>
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
Co-authored-by: Fildrance <fildrance@gmail.com>
Co-authored-by: pa.pecherskij <pa.pecherskij@interfax.ru>
Co-authored-by: Lye <128915833+Lyroth001@users.noreply.github.com>
Co-authored-by: DieselMohawk <gavin.drinka@gmail.com>
Co-authored-by: Hreno <hrenor@gmail.com>
Co-authored-by: eoineoineoin <github@eoinrul.es>
Co-authored-by: Eoin Mcloughlin <helloworld@eoinrul.es>
Co-authored-by: qwerltaz <69696513+qwerltaz@users.noreply.github.com>
Co-authored-by: Ty Ashley <42426760+TyAshley@users.noreply.github.com>
Co-authored-by: Token <esil.bektay@yandex.com>
Co-authored-by: Alzore <140123969+Blackern5000@users.noreply.github.com>
Co-authored-by: Ubaser <134914314+UbaserB@users.noreply.github.com>
Co-authored-by: chromiumboy <50505512+chromiumboy@users.noreply.github.com>
Co-authored-by: Psychpsyo <60073468+Psychpsyo@users.noreply.github.com>
Co-authored-by: drakewill-CRL <46307022+drakewill-CRL@users.noreply.github.com>
Co-authored-by: PraxisMapper <praxismapper@gmail.com>
Co-authored-by: Nim <128169402+Nimfar11@users.noreply.github.com>
Co-authored-by: Perry Fraser <perryprog@users.noreply.github.com>
Co-authored-by: EmoGarbage404 <retron404@gmail.com>
Co-authored-by: Ekkosangen <9094006+Ekkosangen@users.noreply.github.com>
Co-authored-by: Ekkosangen <9094006+XyyxShard@users.noreply.github.com>
Co-authored-by: Ed <96445749+TheShuEd@users.noreply.github.com>
Co-authored-by: Chubbicous <100180479+Chubbicous@users.noreply.github.com>
Co-authored-by: Ps3Moira <113228053+ps3moira@users.noreply.github.com>
Co-authored-by: FungiFellow <151778459+FungiFellow@users.noreply.github.com>
Co-authored-by: Futuristic-OK <141568243+Futuristic-OK@users.noreply.github.com>
Co-authored-by: Ian <ignaz.k@live.de>
Co-authored-by: TsjipTsjip <19798667+TsjipTsjip@users.noreply.github.com>
Co-authored-by: Chief-Engineer <119664036+Chief-Engineer@users.noreply.github.com>
2024-09-10 01:20:38 +10:00
metalgearsloth f8b8ec7994 Power stuff (#31314)
* Power stuff

- Add shared IsPowered
- Add shared ResolveApc
- Move PowerChangedEvent to shared for now
- Add SlimPoweredLight that actually functions how you'd expect a PoweredLight to function it id didn't have a bunch of bloat on it.

* big update

* boing
2024-08-27 01:00:42 +01:00
lzk 19f2865aed FINALLY FIX APPROVER IN CARGO INVOICE!!! (#29690)
* OH DEAR LORD I WASTED 2 HOURS ON THIS STUPID SHIT!!!

* change some logic
2024-08-09 18:12:09 +01:00
deltanedas ad00038233 make cargo balance ui updating its own component (#28295)
* add BankClientComponent and event

* query BankClient instead of hardcoded CargoOrderConsole for updating

* add BankClient to all ordering consoles

* :trollface:

* add Balance field to BankClient

* forgor

Co-authored-by: ShadowCommander <10494922+ShadowCommander@users.noreply.github.com>

* m

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
Co-authored-by: ShadowCommander <10494922+ShadowCommander@users.noreply.github.com>
2024-08-09 17:45:45 +01:00
slarticodefast d25743c22f
Cargo bounty corrections (#28255)
cargo bounty corrections
2024-06-01 17:17:29 +02:00
Nemanja bccc2bf40e
fix cargo teleporter (#27255)
* fix cargo teleporter

* don't delete orders

* basado

(cherry picked from commit 1bfc63c546617ee2e9be9960b14abf16eee19ad5)
2024-05-02 23:59:53 +02:00
icekot8 c2f49864fd
cargo console radio messages on approving (#27038)
* 1

* void --> "Unknown"

(cherry picked from commit fd109d61b88468a1b623975ce7258462fc40b7f6)
2024-04-21 22:07:14 +02:00
Killerqu00 e0333ee9de
Skipping bounties (#26537)
* add button to menu

* networking and component work

* try to add access stuff

* main functionality done

* add access lock? I think?

* remove extra line

* fix access system

* move SkipTime to StationCargoBountyDatabaseComponent

* Disable/Enable skip button based on cooldown

* remove debugging

* add access denied sound

* remove DataField tags

* dynamic timer

(cherry picked from commit fd067731b544eb219493338a8fe446c154e880f4)
2024-04-21 21:47:43 +02:00
metalgearsloth fa61952f51
Add trade stations (#23863) 2024-03-08 09:52:50 +01:00
Nemanja 7573dba496
Rip out remaining machine upgrades (#24413)
* Rip out remaining machine upgrades

* eek

(cherry picked from commit a9e89ab37221c4f5eff5a9e1d42e97c6f3e0753b)
2024-01-27 23:43:49 +01:00
Nemanja 47d24fc3e5
Fix cargo product groups (#24212)
(cherry picked from commit 21e77dffb00d631ea0e6a5c0ad55bed5dcbaa809)
2024-01-26 23:13:54 +01:00
metalgearsloth b51b6f65b5
Add ability to put spesos into cargo console (#24263)
I thought we had it already but maybe it was an unfinished pr or something.

(cherry picked from commit ad23facb7a9670bcc10e2f9e89d2e22db2052697)
2024-01-26 23:08:06 +01:00
Nemanja 30fccbbc8d
Chill bounties + fixes (#23411)
* Chill bounties + fixes

* localize

* fix arbitage

(cherry picked from commit 4662d463b8f5cbef5d93ca00b67bae6d8bf5db47)
2024-01-26 21:30:40 +01:00
DrSmugleaf 4257bd2c7e Make all prototype types partial (#21374) 2023-11-12 20:29:57 +01:00
DrSmugleaf a88e747a0b
Refactor serialization copying to use source generators (#19412) 2023-08-22 18:14:33 -07:00
metalgearsloth b0b1597aad
Fix cargo gifts (#18449)
Some of the IDs were invalid and no typeserializer.
2023-07-30 12:53:54 -06:00
Leon Friedrich 385b587cfc
Validate prototype ids in c# fields (#18224) 2023-07-30 03:34:51 +10:00
Leon Friedrich f2bfdd8e17
Remove superseded machine linking code (#18244) 2023-07-24 12:07:35 +10:00
LankLTE 1dadc70757
Buff the Cargo Telepad Delay. (#17781) 2023-07-01 12:00:33 -07:00
Nemanja 7ab5127286
Cargo Bounties (#17344)
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
2023-06-22 21:49:33 +10:00
deltanedas b9f24b2681
expedition rewards (#16972)
Co-authored-by: deltanedas <@deltanedas:kde.org>
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
2023-06-16 15:19:02 +10:00
metalgearsloth 57858f802f
Shuttle drone improvements (#16931) 2023-05-31 11:13:02 +10:00
Nemanja 252f0be372
Telepad revival (#16664) 2023-05-21 20:09:31 +10:00
metalgearsloth ae01618874
Revert "Revert "Replace `ResourcePath` with `ResPath` (#15308)" (#155… (#15566) 2023-04-20 20:16:01 +10:00
metalgearsloth acf79a8209
Revert "Replace `ResourcePath` with `ResPath` (#15308)" (#15551) 2023-04-20 11:43:54 +10:00
Ygg01 71f358a027
Replace `ResourcePath` with `ResPath` (#15308) 2023-04-19 23:39:17 +10:00
metalgearsloth 569f30b721
Cargo shuttle changes (#14363) 2023-03-23 16:10:49 +11:00
Checkraze b329abc9ee
Cargo Pallet Sale Console (#14422) 2023-03-13 16:36:35 -04:00