Commit Graph

8737 Commits

Author SHA1 Message Date
chromiumboy dfd3e36a0a
Sentry turrets - Part 4: The sentry turret and its primary systems (#35123)
* Initial commit

* Removed mention of StationAiTurretComponent (for now)

* Prep for moving out of draft

* Fixing merge conflict

* Re-added new net frequencies to AI turrets

* Removed turret control content

* Removed unintended change

* Final tweaks

* Fixed incorrect file name

* Improvement to fire mode handling

* Addressed review comments

* Updated how turret wire panel auto-closing is handled

* Ranged NPCs no longer waste shots on stunned targets

* Fixed bug in tracking broken state

* Addressed review comments

* Bug fix

* Removed unnecessary event call
2025-03-29 12:55:58 -05:00
Milon 92a3fd99ca
Fix gas pressure pump prediction (#35865)
* ACTUALLY predict gas pumps

* generic fake

* aaaaaaaaaaaaa
2025-03-28 10:42:16 +11:00
metalgearsloth 948588399c
Mob movement rewrite (#35931)
* Conveyor optimisations

- Optimise movement for moving stuff. Better flags + less resolves + slapped parallelrobustjob on it.
- Sleeping for entities getting conveyed into walls.

* Blocker version

* Finish

* Final

* Fix conveyor power mispredict

* Bagel save

* Revert "Bagel save"

This reverts commit 1b93fda81fb852d89b89b0beae0b80f8a61165f2.

* Conveyor resave

* Fix prediction

* Mob movement rewrite

* Bandaid

* Working version

* Tentatively working

* Friction to fix cornering

* More fixes

* Revert bagel

* Revert this

* a

* Reviewed

* Funky re-save

* Fix velocity

* Table fix

* Review

* a
2025-03-28 09:29:02 +11:00
slarticodefast 7c44038f63
Add paradox clone to admin antag control (#36105)
* make paradox clone receive the original's objectives

* antag control verb

* rename verb
2025-03-27 10:04:25 -07:00
Tayrtahn bf17f85ced
Cleanup AdminVerbSystem (#36099)
* Fix 3 warnings in AdminVerbSystem.Tools

* Fix 3 warnings in AdminVerbSystem.Smites

* Use SetMapCoordinates directly
2025-03-26 19:36:29 +01:00
slarticodefast c8494dd5c9
Improve paradox clone item copying (#35993)
* even better item copying for the paradox clone

* copy paper

* fix

* blacklist implanter

* string.Empty

---------

Co-authored-by: ScarKy0 <scarky0@onet.eu>
2025-03-26 17:13:02 +01:00
slarticodefast f838e6730d
Fix faction icons for paradox clones (#35910)
* fix nukie icon

* add revs to cloning pod again
2025-03-26 16:34:17 +01:00
slarticodefast 9ff43f344e
Show paradox clones in deadchat (#35940)
show clones in deadchat
2025-03-26 16:30:14 +01:00
Tayrtahn 9b28aedbc5
Cleanup TabletopSystem.Map (#36097)
* Add SharedMapSystem dependency

* IMapManager.MapExists -> SharedMapSystem.MapExists

* IMapManager.CreateMap & IMapManager.GetMapEntityId -> SharedMapSystem.CreateMap

* IMapManager.DeleteMap -> SharedMapSystem.DeleteMap

* Remove IMapManager dependency
2025-03-26 15:17:28 +01:00
Milon b97de9d603
add predicted popups with PVS filtering (#36092)
add
2025-03-26 12:45:29 +01:00
Errant 2f30fe3ceb
adminnotes command cleanup (#36086)
localize adminnotes command, autocomplete
2025-03-25 22:42:17 -07:00
Tayrtahn 462519b7da
Cleanup WarpCommand (#36088)
* EntityCoordinates.GetGridUid -> SharedTransformSystem.GetGrid

* EntityCoordinates.GetMapId -> SharedTransformSystem.GetMapId

* Hey look, there's been a bug here this whole time

* TransformComponent.Coordinates.set -> SharedTransformSystem.SetCoordinates

* Now actually working!

* Formatting why not

* Remove unneeded GetComponent
2025-03-26 03:17:46 +01:00
Tayrtahn 7270988961
Cleanup BiomeSystem.Commands (#36084)
* _mapManager.GetMapEntityId -> _mapSystem.GetMapOrInvalid

* _mapManager.MapExists -> _mapSystem.MapExists

* Unused using
2025-03-25 23:30:06 +01:00
Tayrtahn 1364bfd422
Cleanup SpecialRespawnSystem (#36087)
* grid.TileIndicesFor -> _map.TileIndicesFor

* coords.ToMap -> _transform.ToMapCoordinates

* grid.TryGetTileRef -> _map.TryGetTileRef

* grid.GridTileToWorldPos -> _map.GridTileToWorldPos

* grid.WorldToTile -> _map.WorldToTile

* grid.GridTileToLocal -> _map.GridTileToLocal

* Formatting why not
2025-03-25 23:16:48 +01:00
Tayrtahn 8dfa2e8f95
Cleanup PathfindingSystem (#36083)
* EntityCoordinates.GetMapUid -> SharedTransformSystem.GetMap

* EntityCoordinates.GetGridUid -> SharedTransformSystem.GetGrid

* EntityCoordinates.ToMapPos -> SharedTransformSystem.ToMapCoordinates().Position

* Formatting why not
2025-03-25 21:51:11 +01:00
ScarKy0 c3d0b93ddf
Fix admin "Spawn here" verb (#36080)
* init

* review

* review

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

---------

Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
2025-03-25 19:40:54 +01:00
Pieter-Jan Briers 290bffceec
Make pow3r validation logic available on release (#36075)
I want to run this on live servers. It's behind a power_validate command, it still doesn't automatically get ran outside debug otherwise.
2025-03-25 10:02:39 -07: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 67b76d81e5
Fix SpeakOnTrigger not working for messages starting with '.' (#36053) 2025-03-24 11:19:29 -07:00
metalgearsloth a9a6b98f99
Fix alerts mispredict + log spam (#36004)
tstalker alerted me to it and noticed the classic case of shallow copies.
2025-03-22 12:41:16 +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
SlamBamActionman 6856440084
Add antag notice to admin chat alerts (#35994)
Add antag notice to admin chat pop-ups
2025-03-22 00:21:32 +01: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
slarticodefast 4d50a5a903
Fix thermal regulation (#35971) 2025-03-20 23:40:31 +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
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
SlamBamActionman 1d4ff1b0d1
Metagame improvements to antag-before-job selection system (#35830)
* Initial commit

* Update the selection to only count for people who have one of the preferences assigned; latejoin on delay no longer applies pre-selection.
2025-03-19 18:28:25 +01:00
Tayrtahn 398d92a064
Fix artifacts swapping places with ghosts (#35074)
* Prevent artifacts swapping position with ghosts

* Filter for MobStateComponent instead

* Update Content.Server/Xenoarchaeology/XenoArtifacts/Effects/Systems/PortalArtifactSystem.cs

* bluh
2025-03-19 12:11:53 -04:00
Tayrtahn e76b81d291
Remove non-networked Dirty call in GuardianSystem (#35916) 2025-03-18 21:37:14 -04:00
slarticodefast 943d703685
Paradox Clones spawn with their suit sensors off (#35909)
* sensors off

* remove import

* Update Content.Server/Medical/SuitSensors/SuitSensorSystem.cs

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

---------

Co-authored-by: Tayrtahn <tayrtahn@gmail.com>
2025-03-18 16:07:06 -04: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
slarticodefast 08cd8d0543
Merge stable into master (#35883) 2025-03-17 01:03:47 +01:00
slarticodefast e4864ac423
Hotfix: Fix AntagRandomSpawn location preview (#35864)
fix AntagRandomSpawn location preview
2025-03-17 00:50:23 +01: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 6ee3ae80a5
Fix salvage sites ejecting borg brains when they despawn (#35855)
* Fix salvage sites ejecting borg brains when they despawn

* Extra check in while loop

* Move mobStateQuery to InitializeMagnet
2025-03-16 19:15:39 +01:00
pathetic meowmeow 4576555e5b
NanoTask (#34095) 2025-03-15 09:24:23 -07: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
SlamBamActionman 1945c7d7c6
Improvements to antag-before-job selection system (#35822)
* Fix the latejoin-antag-deficit bug, add datafield, add logging

* Fix multiple roles being made for single-role defs,
2025-03-13 19:07:52 +01: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
slarticodefast 48a4aa3929
Cleanup Objective files, add PickSpecificPersonComponent (#35802)
* cleanup objectives

* remove unrelated access restriction

* review
2025-03-13 01:41:50 +01:00
slarticodefast d8ac1524ef
polymorph popup fixes (#35796)
polymorph fixes
2025-03-12 19:48:45 +01:00
slarticodefast 45e5fbfcdf
forensics cleanup (#35795) 2025-03-12 18:57:06 +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
MilenVolf 5db89ab7e9
Localize rat king commands datasets (#35780) 2025-03-11 22:49:32 -07:00
Errant 3d898ed25a
Roleban command error handling (#35784)
roleban command jobid fail handling
2025-03-11 22:41:01 -07:00
slarticodefast 175f5e6c2f
TriggerSystem improvements (#35762)
* desynchronizer real

* yaml stuff from slarti branch

* C# stuff

* oops

* fix triggers

* atomize PR

---------

Co-authored-by: Flareguy <woaj9999@outlook.com>
2025-03-11 22:31:33 -07:00