Commit Graph

4876 Commits

Author SHA1 Message Date
SlamBamActionman
3da0b0299f Add support for contraband text to the reagent guidebook (#37113)
* Add contraband text to reagent guidebook

* Add reagent for examining

* Update Content.Client/Guidebook/Controls/GuideReagentEmbed.xaml.cs

---------

Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
2025-09-10 15:30:53 +02:00
Ser11y
a5ef016f1e Make "Confirm" in VerbMenuUIController localizable (#40248) 2025-09-10 14:08:08 +02:00
Fildrance
35d69e0f33 feat: SimpleRadial menu support for sprite-view and more extensibility (#39223) 2025-09-10 11:11:15 +03:00
Ser11y
da210e812b Make location in crew monitoring console localizable (#40247) 2025-09-09 22:11:24 +02:00
Winkarst-cpu
088fa2013d Cleanup: Remove unnecessary `IEntityManager reference from the EmotesUIController` (#40243)
Cleanup
2025-09-09 21:00:41 +02:00
Pieter-Jan Briers
0c97520276 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-09-09 18:17:56 +02:00
Hannah Giovanna Dawson
a699639834 Allow Vulps With Human Hair To Be Shaved Without Clyde Joining The Circus (#40171)
* Revert "Disable vulpkanin human hair (#40144)"

This reverts commit d02aa1a4e2.

* You can once again shave your pet Vulp

* I can see the ass, I'm safe

* Rectified docstring as I am a good person

* I am doing this instead of playing Silksong please help

* Fix forgetting to re-add shader overriding
2025-09-07 16:36:38 +02:00
Princess Cheeseballs
d488ca96b2 Alerts Cleanup and API (#39544)
* alert cleanup and API

* I expect update loops to be at the top.

* Address review

* Address review x 2

* Merg my PR

* Fix

* Update Content.Shared/Alert/AlertsSystem.cs

webedit

Co-authored-by: Perry Fraser <perryprog@users.noreply.github.com>

* FIX THAT TEST FAIL!!!!

* Me when I forget to actually give you alerts

* Hammedborgar

---------

Co-authored-by: Princess Cheeseballs <66055347+Pronana@users.noreply.github.com>
Co-authored-by: Perry Fraser <perryprog@users.noreply.github.com>
2025-09-05 12:45:48 +03:00
ScarKy0
467f19b58e Reuse lathe queue instead of redrawing (#39886)
* init

* init

* PUSH!!!

* //

* Me when the when the me when the

* review

---------

Co-authored-by: Princess Cheeseballs <66055347+Pronana@users.noreply.github.com>
2025-09-04 21:37:15 +02:00
Quantum-cross
52c903cab8 Dynamic anomaly scanner texture (#37585) 2025-09-04 22:11:03 +03:00
Winkarst-cpu
f521ec31de Fix: Ability to open AHelp in the lobby by pressing the hotkey (#39525)
* Fix

* Update
2025-09-04 16:24:53 +02:00
Quantum-cross
70ffc1eb5d Add heat distortion shader for hot gases (#39107) 2025-09-03 20:17:39 -07:00
opl-
893f4f1403 Use a fixed amount of decimal points in gas analyzer window (#40081)
This prevents the volume and temperature labels from changing width when the value lands on integer values, making the text easier to read.

Co-authored-by: opl <4833621+opl@users.noreply.github.com>
2025-09-03 22:49:50 +02:00
SlamBamActionman
e6d00428a8 Fix small issues with Text Highlighting (#38144) 2025-09-03 21:42:15 +02:00
Centronias
c709d4d55c Add CVar for disabling loadout item role timers (#36775) 2025-09-03 13:04:44 +02:00
InsoPL
831d384ff5 Texture Scaling for clothing (#39714)
scale
2025-09-01 18:31:11 +03:00
slarticodefast
86e77f05ce Predict InjectorSystem (#39976)
* predict injectors

* hide verbs if no options
2025-09-01 18:24:37 +03:00
Vasilis The Pikachu
5100068a78 Revert "Admin Log Browser Improvements (#39130)"
This reverts commit f67cebf7a4.

Per request of @Kowlin and @southbridge-fur

Check out https://github.com/space-wizards/space-station-14/issues/39960 for further information
2025-08-31 17:50:37 +02:00
Fildrance
60ea135fd3 Revert "Added button and manager for in game bug reports (Part 1)" (#39872)
Revert "Added button and manager for in game bug reports (Part 1) (#35350)"

This reverts commit a8d6dbc324.
2025-08-28 01:46:24 -07:00
Kyle Tyo
ffc7cc5e5d Combine AdminFrozenSystem in shared. (#39885)
commit
2025-08-25 15:49:27 +02:00
Whatstone
b5529ecf2b Batchable lathe jobs, editable lathe job order (#38624)
* batchable lathe jobs, editable order

* requested changes

* LatheComponent comment, menu strings
2025-08-24 17:02:47 +02:00
slarticodefast
30aa61c29c Changeling cleanup and bugfix (#39843)
* fixes and cleanup

* key
2025-08-24 15:50:19 +02:00
Kyle Tyo
a8e0001f34 Cleanup of resolves and usings. (#39865)
* commit

* commit
2025-08-24 03:29:55 +02:00
Kyle Tyo
8d3bbe2b78 Killed a resolve in ClientAdminManager (#39863)
took a resolve out back and shot it
2025-08-24 00:49:44 +02:00
slarticodefast
a13d5916bf Fix admin objects tab (#39832)
fix objects tab
2025-08-22 15:37:51 -07:00
slarticodefast
d4f96fd1c6 predict morgue and crematorium (#39293) 2025-08-21 16:49:50 -07:00
Southbridge
f67cebf7a4 Admin Log Browser Improvements (#39130) 2025-08-21 22:12:16 +02:00
slarticodefast
d286a70d47 cleanup changeling namespaces and prototypes (#39794) 2025-08-21 02:42:42 +02:00
slarticodefast
2bbff7f8c0 Cleanup subdermal implant code (#39755) 2025-08-20 13:52:03 +02:00
Winkarst-cpu
021adbe1e1 New Feature: Kitchen spike rework (#38723)
* Start

* Wow, text

* Ultra raw

* More stuff

* Wow, DOT and gibbing!!!

* More stuff

* More

* Update

* Yes

* Almost there

* Done?

* I forgot

* Update

* Update

* Update

* Update

* Update

* Update

* Update

* Update

* Update

* Beck

* Unhardcode
2025-08-19 10:56:36 -07:00
B_Kirill
438090a505 Cleanup warnings: CS0414 (#39748)
* Cleanup

* Fix
2025-08-19 09:42:54 +02:00
Princess Cheeseballs
6b73d320b9 [NEW STATUS SYSTEM] Drunkenness, Stuttering, Slurred Speech, and Bloodloss (#38678)
* The only commit that matters

* I had to stop playing with my cat to push this change

* Yaml removal

* Proper drunk status effect and remove shitcode

* Review changes

* whoops

* Whoops x2

* Update master fix merge conflicts

* Fix merge conflicts

* Dunk Component kill

* MORE RELAYS

* Holy fucking breaking changes

* Ough

* 46 file diff

* Fix bad commits

* Erm what the test fail?

* Fix those last two

* Merge conflicts

* Me when I fix the merge conflicts

---------

Co-authored-by: Princess Cheeseballs <66055347+Pronana@users.noreply.github.com>
2025-08-18 16:26:29 -04:00
slarticodefast
5a5b81f7dc Fix rebinding keys crashing the game (#39732)
fix control settings
2025-08-18 11:58:30 -07:00
SlamBamActionman
342fc84f16 Hotfix: Camera offset for "Separated Chat" HUD fix & targetting fix (#35087)
* Initial commit

* Fix everything

* Comment and remove unused dependencies

* Update comments for consistency

---------

Co-authored-by: PJB3005 <pieterjan.briers+git@gmail.com>
2025-08-18 11:22:02 -07:00
Blaine Pavlock
3e84efb051 Tabs in the Credits window only populate once (#39667)
* Tabs in the Credits window only populate once

* Changed functions to RemoveAllChildren()
2025-08-15 14:55:38 -07:00
beck-thompson
a8d6dbc324 Added button and manager for in game bug reports (Part 1) (#35350)
* Added the button and manager

* Minor cleanup

* Reigstered to the wrong thing!

* Unload UI

* Address the review

* First commit :)

* Some cleanup

* Added some comments and now the placehoder text goes away once you start typing

* Some cleanup and better test command

* Basic rate limiter class (Not finished)

* Cleanup

* Removed forgotten comment xD

* Whitespace removal

* Minor cleanup, cvar hours -> minutes

* More minor tweaks

* Don't cache timer and add examples to fields

* Added CCvar for time between bug reports

* Minor crash when restarting rounds fixed

* It compiled on my computer!

* Fix comment indents

* Remove unecessary async, removed magic strings, simplfied sawmill to not use post inject

* Make struct private

* Simplfiy TryGetLongHeader

* Changed list to enumerable

* URI cleanup

* Got rid of the queue, used a much better way!

* Made the comments a little better and fix some issues with them

* Added header consts

* Maximum reports per round is now an error message

* Time between reports is now in seconds

* Change ordering

* Change hotkey to O

* only update window when its open

* Split up validation

* address review

* Address a few issues

* inheritance fix

* API now doesn't keep track of requests, just uses the rate limited response from github

* Rough idea of how channels would work

* refactor: reorganized code, placed rate limiter into http-client-handler AND manager (usually only manager-one should work)

* cleanup

* Add user agent so api doesn't get mad

* Better error logs

* Cleanup

* It now throws!

* refactor: renaming, moved some methods, xml-doc cleanups

* refactor: BugReportWindow formatted to convention, enforced 1 updates only 1 per sec

* Add very basic licence info

* Fixed the issues!

* Set ccvar default to false

* make the button better

* fix test fail silly me

* Adress the review!

* refactor: cleanup of entry point code, binding server-side code with client-facing manager

* Resolve the other issues and cleanup and stuff smile :)

* not entity

* fixes

* Cleanup

* Cleanup

* forgor region

* fixes

* Split up function and more stuff

* Better unsubs yaygit add -A

* I pray...

* Revert "I pray..."

This reverts commit 9629fb4f1289c9009a03e4e4facd9ae975e6303e.

* I think I have to add it in the pr

* Revert "I think I have to add it in the pr"

This reverts commit e185b42f570fe5f0f51e0e44761d7938e22e67f7.

* Tweaks

* Minor tweak to permissions

---------

Co-authored-by: pa.pecherskij <pa.pecherskij@interfax.ru>
2025-08-15 09:10:38 -07:00
Nemanja
f23e8c2861 Multiantag Gamemode (#37783)
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
Co-authored-by: Southbridge <7013162+southbridge-fur@users.noreply.github.com>
Co-authored-by: ScarKy0 <106310278+ScarKy0@users.noreply.github.com>
2025-08-15 16:06:51 +02:00
deathride58
1e54f4ca5f In Memoriam - Memorializing those who've passed within the SS13+SS14 community (#39621)
In Memoriam - adds a section to the credits memorializing those who've passed
2025-08-13 21:21:36 -04:00
pathetic meowmeow
39cb27fe21 Borg hands & hand whitelisting (#38668)
* Borg hands & hand whitelisting

* yaml linted

* yaml linted (x2)

* yaml linted (x3)

* my storage tests so pass

* no need for SetCount

* ok new stuff you can get fixed too

* oops

* staque

* what if we addressed feedback

* my place so holder

* what if we addresesd feedback

* what if i did it correctly

* terminating or deleted
2025-08-12 15:21:42 -07:00
UpAndLeaves
9b6cb79fa2 Fix dock radar colours (#38942)
* Fix docking colours

* Add comments and fallback

* Better comments!
2025-08-12 13:09:00 -07:00
metalgearsloth
fd52f698c7 Predict PoweredLights (#36541)
* Move PoweredLight to shared

* Predict the rest of the owl

* reacher

* compinit & anim

* Fix names

* Revert this?

* Fix these

* chicken drummies

* deita

* Fix

* review

* fix

* fixes

* fix PVS weirdness

---------

Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
2025-08-11 23:06:28 +02:00
Samuka-C
ed6f906e6f Better robotics console (#38023) 2025-08-11 21:57:39 +03:00
kosticia
9ecb8333f2 Predict suitsensor system (#39325)
* adwadsdwasadwas

* dev

* fix

* review

* some more cleanup

---------

Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
2025-08-11 17:35:11 +02:00
Red
d7295d1ae4 Actions examine (#39558) 2025-08-11 17:52:20 +03:00
Perry Fraser
49fe34f78a fix: fix emote wheel icons (#39481) 2025-08-08 15:27:46 -04:00
Nemanja
1374ceea47 Move some Station methods into shared (#38976) 2025-08-08 11:22:34 -04:00
Perry Fraser
88a86be500 docs: update comment on config saving in tests (#39438) 2025-08-07 01:17:20 +02:00
Nemanja
66daa1e6db Fix showvalue Ui for melee weapons (#38703)
Co-authored-by: Perry Fraser <perryprog@users.noreply.github.com>
Co-authored-by: ArtisticRoomba <145879011+ArtisticRoomba@users.noreply.github.com>
2025-08-06 15:01:49 -07:00
slarticodefast
6b6bb2e319 Fix inventory flickering and missing InventoryTemplateUpdated event (#39379)
* fix flickering

* move InitClothing

* fix this
2025-08-06 22:14:28 +02:00
poklj
f76e3b63b7 Changeling devour and transform (#34002)
* Initial:

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

* I have genuinely no idea what i'm doing

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

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

- Added a placeholder transform

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

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

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

- Make Transform MOSTLY work on the LAST identity devoured.

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

* Proper tail stealing and Damage modifier attempt

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

attempt to add the Damage mitigation check

* MAJOR CLEANUP AND FIXES AUGH 3 DAYS!!!

- Nullspaced a clone of a victim

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

- fix the mispredicted doafters

- Clean up a wholelotta code

- utilize clone systems to clone appearances

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

* Examine stuff, more cleanup, Jumpsuit ripping

- make rotting prevent the action

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

- add some System stuff for pushing husked corpse inspection

- clean up more badcode

* Doing things properly, UI sorta kinda works.

- Utilize Relayed events for Devour checking

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

- Make use of the New Dynamic BUI assignment

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

* Got an entity for the Frontend transform

Issue with the looks

* Stick a camera into a fake mobs forehead

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

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

* Raaaaadiallllllls also fix protection coefficents

- Change FancyWindow to Radial

- Fix Issue where coeffeient checking was the wrong way round

* absolutely massive cleanup, no more camera in mobs

- cleaned up event variables that are not needed

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

- use a PvsOverride rather than ViewSharing

- Remove old commented out code and Lots of unused code

* Fix "Ui elements" dying  on the screen

- some minor cleanup

- don't start the entities that get cloned

* ftl, cleanup, and fixing missing transform details

- add replace functionality to TypingIndicatorSystem and
BodyEmotesSystem

- add placeholder sounds and functions to TransformBodyEmotes

- add extra Pvs handling for later use

- attributions for the funny straw sound

- Sound collections for all of the sounds

- various cleanups

* Some extra cleanup

* Fix some false assumptions about TypingIndicator

- Bubbles now transfer on spawned humans rather than used humans

- Clean up YET MORE CODE

- make it so you can't eat yourself

* Oooprs, forgot to add a Husked Corpse Loc

* Missing period in the husked corpse loc

* bad devour windup placeholder

* Husking and WIP Lungs

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

* Add finalized Sprites for actions and final meta

- add devour on and off sprites

- add transform action sprite

- Add Armblade sprite for future use

- Credit obscenelytinyshark for the sprites <3

* Remove ling lungs, Entity<> everything

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

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

* cleanup, admin logging, WIP Roles

* Admin verb, Roundstart, gamerule stuff

- add a Admin verb to make Changelingification easy!

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

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

* Armor Coefficent Check

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

* move to UnrevivableComponent instead of husked

- Move UnrevivableComponent to shared

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

- remove the check for HuskedComponent in DefibrillatorSystem

* aaaaaaa CopyComp

- Some cleanup

- make Vocal system shared

- make VocalSystem Not make more Actions than it needs

- Use some code from ChameleonProjector so we can copy components

- partially ungod method the Transform system

* Cleanup, Moving more things to CopyComp

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

- TypingIndicatorComponent also now uses CopyComp

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

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

* WIP

* Devour Windup noise, ForensicsSystem cleanup

* Revert VocalSystem Changes

- Reverted Moving VocalSystem to shared, copy comp acomplishes it

- added component.ScreamActionEntity = null; for copy comp

* cleanup unneeded comments

* revert an accidental line removal

* Remove duplicate SharedHumanoidAppearanceSystem

* Cleanup Typo's and import Forensics components for Dna

* Some more forensics calls

* cleanup use CopyComp for now until CopyComps

* CR cleanup

* Undo some SharedHumanoidAppearanceSystem changes

* Confound these spaces

* Some Copycomp stuff and fixing some PVS override

* use the proper TryCopyComps that are merged

* Change TransformMenu with RadialWithSector

* All sounds done, Fix lack of typing indicator issue

* Updated attributions to include used sound authors

* some ftl typos and mind_role text issue

* DNA, Screaming, appearance, grammar, wagging

- reduced all of the above using ApplyComponentChanges

- Issue still remains with bodyEmotes sticking around in the UI

* Fix UI stuff, partials, entprotoid, good practices

- bunch of partials added

- UI now has a predicted message

- EntProtoID in the admin verb

- RipClothing now uses Entity<ButcherableComponent>

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

- remove TransformGrammarSet

* More CR stuff and documentation

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

- Documenation everywhere

- Move DevourEvents into its own file

* Predicted sounds and fix the comp clone list

- Made all start and stop sounds shared

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

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

* Damage cap check, Identity Shutdown cleanup, cleanup

* Sound stuff (but actually this time)

* Missed documentation

* Missed Documentation and a EntProtoId

* Remove unused dependency

* Remove a nullcheck

* Some dummy minplayers

* CR - Husked now uses a rem/ensure

* Update Actions in the Prototype

* Fixup mindswap handover

- cleanup and handover PVS on mindswap

* Fixup Missing meta from accidental "Take-theirs"

* Add the Armblade to the roundstart-role

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

* missed a spot

* missed some more whitespace

* Renames

* Primary constructor and a space in these trying times

* User interface stuff for Slime transformation

* popup prediction

* Ling devour no longer makes duplicate identities

- added a key to identities to the original victim

- Add some extra clone settings

* add guard statements to OnClones

* SentOnlyToOwner additions

* fix for sound stoppage error

* Move Organ deleter into soon to be atomized husk

* clone event inventory

* mono sounds

* lower sound volume

* Fix networked sound warning

* Clone comps thing

* review

* attributions

* Fix clobbered changes

* I'm gonna weh out

- whole bunch of CR changes

* fix some very buggy git

* okay its fixed

* address most review points

* fix inventory

* we hate entityuids

* fix test and more cleanup

* move this

* fix more stuff

* fix validation and rootable

* Remove Quickswitch due to some UI quirks

* oops left out some better explanation

* remove dangling LastConsumed component fields

* fix test fail

* try this

* cleanup cloning subscriptions, add movement speed modifier

* fix slime storage

* fix cloning setting inheritance

* Add session information to transform admin logs

* slay the integration test hydra

* dwarf size

* more volume tweaks

* comments

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

* fix displancement cloning

---------

Co-authored-by: ScarKy0 <scarky0@onet.eu>
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
2025-08-06 21:55:49 +02:00