Commit Graph

5300 Commits

Author SHA1 Message Date
Errant c82d531a8f
Admin Overlay stacking and ghost hiding (#35622)
* ghostbuster mouse and overlay stacks

* variable adjustment

* use map coords for distance check

* vertical stack ordering, and cvars

* skreee

* fix stack merge 'sidedness' issue

* overlays no longer try to stack to overlays at the wrong coordinates

* options slider for stack merge distance

* admin option sliders for ghost fade/hide

* Update AdminOptionsTab.xaml.cs

---------

Co-authored-by: ScarKy0 <scarky0@onet.eu>
2025-03-25 21:15:22 +01:00
Errant 72141abf8a
Admin playerlist antag presentation rework (#35538)
* refactor(src): Minor refactor of Draw in "AdminNameOverlay. And new info about playtime player

* fix(src): Add configure classic admin owerlay

* fix

* antag status indication rework

* the cvars are free, you can just take them

* update playerlist on cvar change

* more overlay options

* tweak(src): Use _antagLabelClassic and tweak style

* tweak(src): Add config display overlay for startingJob and playTime

* tweak(src): Vector2 is replaced by var

* tweak(src): return to the end of the list

* add new option checkboxes

* passing ConfigurationManager through constructor, some format changes

* made sorting values more futureproof

* comments

* labels

* no point commenting this out when the overlay stack PR will uncomment it again anyway

* sorting prototype

* localize symbols because why not

* symmetry

* Revert "localize symbols because why not"

This reverts commit 922d4030300285a45777d62fcfd9c74b25fe7a60.

* layout and formatting stuff

* fix errant space

---------

Co-authored-by: Schrödinger <132720404+Schrodinger71@users.noreply.github.com>
2025-03-25 17:03:59 +01:00
Tayrtahn 0096dedb18
Fix error when disconnecting the client while a projectile is embedded (#36048)
* Add test for disconnecting the client while a projectile is embedded

* Add check for non-terminating grid or map

* Add test that an embeddable detaches when the target is deleted.

* Remove Explicit tag from TestDisconnectWhileEmbedded
2025-03-25 01:16:13 +01:00
Partmedia 37c88debb5
Fix comment (#36054) 2025-03-24 20:47:48 +01:00
metalgearsloth 4f23016c72
Fix TrayScannerUser (#35959)
* Fix TrayScannerUser

* Ignore

* Update Content.Shared/SubFloor/TrayScannerUserComponent.cs

---------

Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
2025-03-24 16:35:22 +01:00
SlamBamActionman 71ae9257f7
Remove serverside StandingStateSystem (#35999)
Refactor system
2025-03-22 16:00:21 +11:00
Killerqu00 dacf0d915c
Hover examine buttons (#35206)
* hover examine verbs (not aligned to the left yet)

* handle click hovers and align them to the left

* revert contrabandsystem changes (this is for another PR)

* add support for markup tags
2025-03-22 13:22:01 +11:00
beck-thompson 97d0f14dae
Predict pipe anchoring and unanchroing (#35977)
* yay prediction

* Added cool popups

* bruh

* this is better!
2025-03-21 12:43:35 +03:00
SlamBamActionman 85a6ac90ba
Add stamina and mob damage playtest modifiers (#35599)
* Add stamina and mob damage playtest modifiers

* Fix typo

* Add FTL

* Review fixes

* Update Content.Shared/Mobs/Systems/MobStateSystem.Subscribers.cs

---------

Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
2025-03-21 00:01:35 +01:00
Tayrtahn 8da4f9765e
Fix erased paper sprites looking written (#35967) 2025-03-20 22:01:57 +01:00
Tayrtahn b780b74bbd
Validate some SpeciesPrototype fields (#35965)
* Convert SpeciesPrototype strings to ProtoIds

* Simplify protoman indexing calls
2025-03-20 21:15:30 +01:00
SlamBamActionman 43d08100b9
"New player" admin logging improvements (#35961)
* Initial commit

* Adjust a whoooole bunch of logs

* Also spears

* Track going crit

* Review fix

* Review fixes
2025-03-20 20:56:51 +01:00
metalgearsloth 9292e3a43c
Sloth's subfloor vismask adventure (#35347)
* Add a subfloor vismask

Significantly cuts down on sent entity count.

* More optimisations

* Fix command

* Fixes

* namespace cleanup

* Review

* Vismasks

* Content update

* Bandaid

* awewa

* Revert these

* reh

* Update Content.Shared/SubFloor/TrayScannerComponent.cs

---------

Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
2025-03-21 00:57:04 +11:00
paige404 2e7f01b99e
Fix broken layer hiding on clothes with multiple equipment slots (#34080)
* Fix broken layer hiding on clothes with multiple equipment slots

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

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

* Fix the delayed snout bug

* Misc cleanup

* Make `bool permanent` implicit from SlotFlags

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

* Split into separate system

Too much pasta

* Remove (hopefully unnecessary) refresh

* Fisk mask networking

AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA

* Keep old behaviour, use clearer names?

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

* english

* Separate slot name & flag

* dirty = true

* fix comment

* Improved SetLayerVisibility with dirtying logic suggested by @ElectroJr

* Only set mask toggled if DisableOnFold is true

* FoldableClothingSystem fixes

* fix bandana state

* Better comment

---------

Co-authored-by: ElectroJr <leonsfriedrich@gmail.com>
2025-03-21 00:30:47 +11:00
Ed 52a145f7f1
Support separate displacement maps for left and right hand (#35820)
* Update HandsSystem.cs

* Update HandsComponent.cs
2025-03-20 00:06:55 -07:00
Errant ba56fe8ebc
fix uncuff popups (#35743)
* fix uncuff popups

* them too
2025-03-19 19:15:44 -07:00
Tayrtahn e2097d473c
Fix strip menu revealing true identity (#35862)
* Fix strip menu revealing true identity

* Ghosts don't see through identity
2025-03-20 02:44:01 +01:00
Tayrtahn 86aa82f2b6
Cleanup: Remove redundant prototype name specifications (#35793)
* Remove redundant prototype name specifications

* These can stay
2025-03-19 19:30:31 +01:00
slarticodefast 6c46fe5307
Paradox Clones receive the implants the original has (#35906)
* copy implants to paradox clones

* Minor fixes

---------

Co-authored-by: beck-thompson <beck314159@hotmail.com>
2025-03-17 22:21:56 -07:00
beck-thompson 15a5cebdcd
Chameleon vests now act like winter coats (#34929)
First commit
2025-03-17 19:39:04 +01:00
MilenVolf f8ccff1363
Localize criminal records reason placeholder dataset (#35810)
* Localize criminal records reason placeholder dataset

* Forgor
2025-03-16 19:43:37 -04:00
slarticodefast 197ee78bfa
make paradox clone receive the original's objectives (#35829)
* make paradox clone receive the original's objectives

* remove redundant indexing

* Minor comment change

* fix ninja objectives

---------

Co-authored-by: beck-thompson <beck314159@hotmail.com>
2025-03-16 15:24:47 -07:00
slarticodefast d8ed9fe152
Paradox clones get all storage items the original has. (#35838)
* recursive storage copying

* include slime storage

* future proofing

* remove survival box
2025-03-16 15:02:19 -07:00
Tayrtahn 04b9088c85
Add viewer parameter to Identity.Entity (#35861)
* Add viewer parameter to Identity.Entity

* Docs
2025-03-16 14:07:46 -07:00
pathetic meowmeow 4576555e5b
NanoTask (#34095) 2025-03-15 09:24:23 -07:00
K-Dynamic 2fe53c3722
Reduce base electrocution stun time from 8 to 5 seconds (#34578)
* reduce shock time from 8 to 3 seconds

* shocktime 5 second, 1.25 mv time multiplier, 1.5 hv time mulitplier
2025-03-15 16:57:35 +01:00
Tayrtahn 23d7cd0a29
Fix thrown item prediction weirdness (#35843)
Don't predict thrown item landing/stopping
2025-03-15 17:06:00 +11:00
Quantum-cross fd59427cb5
Corrupt borg speech if they are damaged or low power (#35318)
* - Corrupt borg speech the more damaged they are
- Corrupt long borg messages if battery is low or empty

* twiddle values

* Remove RNG based loop, hardcode repeating values for p=0.25 up to 10 repeats.

* Make sure that DamagedSiliconAccentSystem is AFTER ReplacementAccentSystem

* add missing base initializer call

* use Entity<T> pattern for event listener and clarify default values

* Move corruption parameters to datafields

* Add datafields to enable and disable the two types of corruption, and add datafields to override damage values and charge levels to support entities that don't have damageable components or power cells.

* Use nullables for override values

* Move DamagedSiliconAccentComponent to Shared and make it networked

* Add DamagedSiliconAccent to cloning whitelist
2025-03-15 02:31:09 +11:00
slarticodefast bce9b4b05b
Paradox Clone (#35794)
* polymorph fixes

* paradox clone

* forensics cleanup

* bump doors

* 4

* attribution

* polymorphn't

* clean up objectives

* Update Resources/ServerInfo/Guidebook/Antagonist/MinorAntagonists.xml

* review

* add virtual items to blacklist

* allow them to roll sleeper agent
2025-03-13 10:09:07 -07:00
Plykiya 96501f4966
Adds popup when firing gun while gun has no ammo (#34816)
* Adds popup when firing gun while gun has no ammo

* simplify

---------

Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
2025-03-13 10:21:24 +03:00
Łukasz Lindert 8f81e55711
Cryo and grinder cleanup (#34842)
* cryopod and grinder cleanup

* lower case name

* 4 spaces

* prototype clean

* looks like there is some kind of test that prevents removing this

* grinder too

* both should be empty

* cleanup
2025-03-13 01:44:05 +03:00
ninruB b7759cccbd
Fix anomaly doublelogging (#34297)
cull doublelogging
2025-03-13 01:39:42 +03:00
slarticodefast d8ac1524ef
polymorph popup fixes (#35796)
polymorph fixes
2025-03-12 19:48:45 +01:00
SlamBamActionman 2ff59f153e
Add support for antag-before-job selection (#35789)
* Add support for antag-before-job selection

* Include logging
2025-03-12 16:48:39 +01:00
ScarKy0 4d98b9d621
Removable mindshields and revolutionary tweaks. (#35769)
* I fucking hate revs

* Update preset-revolutionary.ftl

* fixy fix
2025-03-11 10:41:13 +01:00
Winkarst 8d93eebceb
Cleanup: Fix ``PaperWriteEvent`` in ``PaperSystem`` (#35763)
* Cleanup + fix

* Revert
2025-03-10 15:52:57 +01:00
metalgearsloth 75a7407e33
Predict some power PowerReceiver stuff (#33834)
* Predict some power PowerReceiver stuff

Need it for some atmos device prediction.

* Also this
2025-03-10 13:00:49 +11:00
Milon 8e10ff1f08
fix UpdateBankAccount (#35749)
* trolled

* fun

* fuck me
2025-03-09 21:50:24 +01:00
slarticodefast 7a6b947e60
Steal the mail thieving objective (#35746)
* mail theft

* networked
2025-03-09 20:41:53 +01:00
MilenVolf bcf3390c88
Remove unneeded Loc.GetString (#35739) 2025-03-09 11:06:11 +01:00
ScarKy0 9d7cf27469
Remove a bonus Loc.GetString (#35731)
oops
2025-03-08 23:30:48 +01:00
ScarKy0 e57325b797
Fixed delivery popups (#35724)
* :)

* cool stuff
2025-03-08 22:08:41 +01:00
slarticodefast 4735097385
Fix integration tests (#35727)
* test

* fix names

* fix more
2025-03-08 20:38:18 +01:00
MilenVolf 1abd2d3a08
Localize all dataset names (#32893)
* Use `LocalizedDatasetPrototype` instead of `DatasetPrototype` in `RoleLoadoutPrototype`

* Localize ai names

* Replace to `LocalizedDatasetPrototype` in `NamingSystem`

* Localize arachnid first and last names

* Localize atv names

* Localize autoborg names

* Forgot to change type to localizedDataset

* Localize borer names

* Localize borg names

* Localize cargo shuttle names

* Localize clown names

* Localize death_commando names

* Localize diona names

* Localize fake_human names

* Localize first and last names

* Localize first male and female names

* Localize fortunes descriptions

* Forgot about equal sign

* Localize golem names

* Localize hologram names

* Localize military names

* Localize moth first male and female names

* Localize moth last names

* Fix autoborg name error

* Localize mushman first and last names

* Localize ninja names

* Localize operation names

* Localize regalrat names

* Fix mushman_first

* Forgot about `Loc.GetString`

* Move comments into comment section & fix names

* Localize reptilian male and female names

* Localize revenant names

* Fix locale word order in operation

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

* Localize skeleton_first names

* Localize syndicate names

* Localize vox names

* Localize wizard first and last names

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

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

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

* I hate those mothname comments

* Combine name datasets prototypes

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

* Remove ftl files

* Get every dataset yml back

* Remove changes for planets. Move it in another PR

* Revert these changes (Moved to another PR)

* How

* Apply suggested changes
2025-03-08 20:04:26 +01:00
metalgearsloth f51b9bc86e
Add sun shadows (planet lighting stage 2) (#35145)
* Implements a Dynamic Lighting System on maps.

* Edit: the night should be a little bit brighter and blue now.

* Major edit: everything must be done on the client side now, with certain datafield replicated.
Changes were outlined in the salvage to accommodate the new lighting system.

* Edit: The offset is now serverside, this makes the time accurate in all situations.

* Removing ununsed import

* Minor tweaks

* Tweak in time precision

* Minor tweak + Unused import removed

* Edit: apparently RealTime is better for what I'm looking for

* Fix: Now the time is calculated correctly.

* Minor tweaks

* Adds condition for when the light should be updated

* Add planet lighting

* she

* close-ish

* c

* bittersweat

* Fixes

* Revert "Merge branch '22719' into 2024-09-29-planet-lighting"

This reverts commit 9f2785bb16aee47d794aa3eed8ae15004f97fc35, reversing
changes made to 19649c07a5fb625423e08fc18d91c9cb101daa86.

* Europa and day-night

* weh

* rooves working

* Clean

* Remove Europa

* Fixes

* fix

* Update

* Fix caves

* Update for engine

* Add sun shadows (planet lighting v2)

For now mostly targeting walls and having the shadows change over time. Got the basic proof-of-concept working just needs a hell of a lot of polish.

* Documentation

* a

* Fixes

* Move blur to an overlay

* Slughands

* Fixes

* Apply RoofOverlay per-grid not per-map

* Fix light render scales

* sangas

* Juice it a bit

* Better angle

* Fixes

* Add color support

* Rounding bandaid

* Wehs

* Better

* Remember I forgot to do this when writing docs

---------

Co-authored-by: DoutorWhite <thedoctorwhite@gmail.com>
2025-03-08 16:07:42 +11:00
ScarKy0 3281f408eb
Cargo Mail System (#35429)
* shitcode init

* biocoding, SpawnTableOnUse, Moving shit to shared

* server :(

* fixes

* ok works

* Discard changes to Content.Shared/Interaction/Events/GettingUsedAttemptEvent.cs

* Discard changes to Content.Shared/Forensics/Components/FingerprintMaskComponent.cs

* Discard changes to Content.Shared/Forensics/Components/FingerprintComponent.cs

* Discard changes to Content.Server/Forensics/Systems/ForensicsSystem.cs

* Discard changes to Content.Server/StationRecords/Systems/StationRecordsSystem.cs

* Discard changes to Content.Server/Storage/EntitySystems/SpawnItemsOnUseSystem.cs

* Discard changes to Content.Shared/Interaction/Events/GettingUsedAttemptEvent.cs

* big stuff

* preperation

* temperory spawning thing for testing

* Update CargoDeliveryDataComponent.cs

* kinda proper spawning idk god save me

* cleanup (kinda)

* preparation 2.0

* stuff i think

* entity table work

* renames

* spawn ratio based on players

* comment

* letter tables

* more spam

* package tables

* comment

* biocodedn't

* builds correctly

* cleaning

* Update deliveries_tables.yml

* labels

* package sprites

* mail teleporter

* revert testing value

* fix test

* fix other test

* i love tests

* mail teleporter enabled by default

* random cooldowns

* fixtures

* Discard changes to Content.Shared/FingerprintReader/FingerprintReaderComponent.cs

* Discard changes to Content.Shared/FingerprintReader/FingerprintReaderSystem.cs

* Discard changes to Content.Shared/Interaction/Events/GettingUsedAttemptEvent.cs

* Discard changes to Resources/Locale/en-US/fingerprint-reader/fingerprint-reader.ftl

* clean

* fuck paper scrap

* oops

* fuck SpawnTableOnUse

* mail teleporter board in QM locker + addressed review

* oops

* clean

* sound on delivery spawn

* address review

* partial review address

* partial review addressing

* addressing partial review

* pratarial revivew address

* misprediction hell

* stuff

* more stuff

* unrelated

* TODO

* link

* partial review

* DirtyField

---------

Co-authored-by: Milon <milonpl.git@proton.me>
2025-03-07 14:51:08 +01:00
SlamBamActionman 27cfc0939c
Add undergarments & "Censor Nudity" toggle to options (#33185)
* Initial commit

* Attribution

* Review changes

* Added comment for upstream
2025-03-05 10:14:01 +01:00
Killerqu00 2d32e08bee
CVar - Toggle display of round-end greentext (#35651)
* hide greentext if cvar false

* change IFs around a lil

* reviews
2025-03-04 08:59:44 -08:00
Tayrtahn 50f7846bb1
Delete SolutionContainerVisualsComponent.InitialName (#35654) 2025-03-03 23:58:04 +01:00
Coolsurf6 913894a041
Changed Damage Overlay to check Burn Damage (#34535)
* updated BruteLevel to be PainLevel with burn damage checks in DamageOverlayUiController.cs

* dehardcoded pain level by adding damage groups to paindamagegroups to affect

* re-added the name for painDamageGroups

* fixed overlay default and added minimum limit to component check first

* renamed to PainDamageGroups and removed obsolete tag
2025-03-03 12:11:58 +01:00