Commit Graph
5234 Commits
Author SHA1 Message Date
4186c8caa2 Weather entities (#41427)
* weather status effect entities

* proto port + fixes

* Update weather.yml

* fix visuals

* Update SharedWeatherSystem.cs

* Update SharedWeatherSystem.cs

* Update WeatherSystem.cs

* Thanks Slarti, thats a much better

* Update WeatherSystem.cs

* Update StencilOverlay.Weather.cs

* Update Content.Client/Overlays/StencilOverlay.Weather.cs

Co-authored-by: Pok <113675512+Pok27@users.noreply.github.com>

* Update Content.Shared/StatusEffectNew/Components/StatusEffectComponent.cs

Co-authored-by: Pok <113675512+Pok27@users.noreply.github.com>

* Update Content.Client/Overlays/StencilOverlay.Weather.cs

Co-authored-by: Pok <113675512+Pok27@users.noreply.github.com>

* Revise weather command help descriptions

Updated weather command help texts for clarity.

* Merge branch 'master' into ed-14-11-2025-weather-entities

* Tayrtahn review apply

* fixes and cleanup

---------

Co-authored-by: Pok <113675512+Pok27@users.noreply.github.com>
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
2026-06-29 12:44:02 +02:00
pathetic meowmeow f889c9f817 Initial decoupling pass on Damageable (#43103)
* Initial decoupling pass on Damageable

* ope

* e

* mroaw

* ok sure on the medibot thing

* no medibot bounds

* okidooks

* arcryox era

* cryox moment
2026-06-29 12:44:01 +02:00
neomoth d4ef9dc0c6 Small tippy fix + msg toolshed additions (#43082)
* why is this not how it worked already fml

* better tippy checking
2026-06-29 12:44:01 +02:00
Shegare b28568d2da HTNComponent from SharedNPCSystem (#42750)
* init

* move system

* doc
2026-06-29 12:44:01 +02:00
Pok 74c336597d Support for melee weapon user overrides (#39633)
* redefining-using-melee-weapons

* animation bug fix

* review

* fix merge
2026-06-29 12:44:00 +02:00
B_Kirill c845c99680 Fix AtmosDebugOverlay being always active (#43073)
* Fix AtmosDebugOverlay being always active

* review
2026-06-29 12:44:00 +02:00
Patrik Caes-Sayrs 3b9db7359b Fixed redundant bar sign windows (#42960)
Fixed redundant bar signs

* Fixes the extra bar sign popups bug introduced in #42364
by making BarSignBUI use CreateWindow

* Fixes bar signs placed from Entity Spawn Window
2026-06-29 12:43:56 +02:00
pathetic meowmeow 662e9883a4 Make DamageSpecifier serializable (#43049)
* pt1 damageable refactor

* fixes

* thusd unused

* sparse damagespecifiers

* fix thongs

* aaaaaa

* fix tests

* de-crash
2026-06-29 12:43:56 +02:00
korczoczek 6e91ec0e36 Fix repeated Localization warnings when viewing the Power Monitoring Console (#43037)
no double work
2026-06-29 12:43:55 +02:00
Moony f421221a00 Non-obsoletion warnings as errors in Release. (#42983)
* Non-obsoletion warnings as errors in Release.

* Add two other obsoletions related to collection expressions.
These are not present in the codebase, but may become so in the future.

* Exempt NU1903 so the project can't mysteriously stop building.

* Fix some FULL_RELEASE mistakes.

* diff fix

* Resharper caught this one. Note to self: Wire up resharper to CI in another PR.
2026-06-29 12:43:54 +02:00
slarticodefastandScarKy0 31d6da207a Show fuckrules usage to admins (#42988)
* fuck rules

* extreme

* update comment

---------

Co-authored-by: ScarKy0 <scarky0@onet.eu>
2026-06-29 12:43:53 +02:00
Princess CheeseballsandPrincess Cheeseballs 89f1f96f6d Fix Flares dying after 10 seconds. (#42765)
asdas

Co-authored-by: Princess Cheeseballs <66055347+Pronana@users.noreply.github.com>
2026-06-29 12:43:52 +02:00
B_Kirill 4db7a5eb52 Cleanup warnings: CS0114, CS0414, CS9107 (#42859)
* Cleanup warnings: CS0114, CS0414, CS9107

* I shouldn't trust IDE autocorrection
2026-06-29 12:43:51 +02:00
Coryler 84bf9e4e87 Moved DV Traits into the right file 2026-06-29 12:43:50 +02:00
portfiend f279c9abeb Split HumanoidProfileEditor.xaml.cs into separate files (#42715)
* separate humanoid profile editor into different files

* move this to the rest of the fields
2026-06-29 12:43:50 +02:00
InsoPLandArtisticRoomba 43e8ac5dde Thermal vision overlay for admins (#42812)
* revert of the revert

* tests

* changes

* more fun

* test

* ccvvvar

* works but bad

* now its better

* more fixes

* more cleanup

* cleaning

* last fixes before move to glasses activ

* x

* glasses only

* working

* fix toolbox

* cleanup

* ThermalByte added

* small fix

* small optimalisations

* float bux fix

* comments add

* more comments

* more comments

* last fix

* revert cvar delete

* wrong blue shades

* cvar refactor

* Update Content.Shared/Atmos/EntitySystems/SharedGasTileOverlaySystem.cs

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

* Update Content.Client/Atmos/Overlays/GasTileDangerousTemperatureOverlay.cs

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

* tweak to TryGetTemperature comment

* Factors are now const

* renames

* Interface for ThermalByte

* admin button

* cleanup

* sandoboxenabled

---------

Co-authored-by: ArtisticRoomba <145879011+ArtisticRoomba@users.noreply.github.com>
2026-06-29 12:43:50 +02:00
pathetic meowmeow ee17a544d2 Documents all the public APIs for Nubody & markings code (#42857) 2026-06-29 12:43:49 +02:00
InsoPLandArtisticRoomba 0ccccc8227 Optical thermal scanner implementation (#42613)
* revert of the revert

* tests

* changes

* more fun

* test

* ccvvvar

* works but bad

* now its better

* more fixes

* more cleanup

* cleaning

* last fixes before move to glasses activ

* x

* glasses only

* working

* fix toolbox

* cleanup

* ThermalByte added

* small fix

* small optimalisations

* float bux fix

* comments add

* more comments

* more comments

* last fix

* revert cvar delete

* wrong blue shades

* cvar refactor

* Update Content.Shared/Atmos/EntitySystems/SharedGasTileOverlaySystem.cs

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

* Update Content.Client/Atmos/Overlays/GasTileDangerousTemperatureOverlay.cs

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

* tweak to TryGetTemperature comment

* Factors are now const

* renames

* Interface for ThermalByte

* tile color  vaccum and more comments

* saving yeeted

* integration test

* rename and cleanup

* fix

* cleanup

* switch

* UT fix (hopefully)

* small bug+ rename

* vaccum limit  + space is now invalid

* typo

* typo

* fix

* cleanup

---------

Co-authored-by: ArtisticRoomba <145879011+ArtisticRoomba@users.noreply.github.com>
2026-06-29 12:43:48 +02:00
pathetic meowmeow 1edf6bdf27 Only rebuild organ markings when sex or group has changed (#42782) 2026-06-29 12:43:47 +02:00
pathetic meowmeow 429b710875 Fix markings colour setting (#42771) 2026-06-29 12:43:46 +02:00
pathetic meowmeowandPrincess Cheeseballs 05f04b9189 Clean up Marking data structure, add tests for Zombie transformation (#42756)
* Clean up Marking data structure, add tests for Zombie transformation

* empty

* AAAAAAAAAAAAAAAA

---------

Co-authored-by: Princess Cheeseballs <66055347+Pronana@users.noreply.github.com>
2026-06-29 12:43:46 +02:00
Absotively 3d9c2bc891 Gas device power switches use switch buttons (#42619)
* Switch button for gas filter power

* Switch button for gas mixer power

* Switch button for gas pump power

* Switch button for thermomachine power

* Switch button for space heater power

* Remove redundant switch labels
2026-06-29 12:43:45 +02:00
Samuka 2ca299985c Sent fax now tells where it was sent from (#41108)
* Make fax tell where the fax is from

* make the line shorter

* localization

* fix fax machine not knowing where the fax is from

* fix popup saying PeerSelector

* name is now get from the known fax list

* shorter to fit in more papers

* send the sender not the destination

* add time to info displayed

* nuke [ViewVariables(VVAccess.ReadWrite)]

* update submodule

* use RoundDuration() instead

* ops, this was needed
2026-06-29 12:43:45 +02:00
SlamBamActionmanandslarticodefast 53fcd12147 Add Cyborg crew indicator (#37038)
* Initial commit

* Include uncertain crew and make it work for AI

* Add new definition to Silicon Rules 8

* Update based on review

* Remove Cluwne from job list

* ProtoIdify

* Update and also make monkey/corgi show IDs

* Remove unnecessary property

* Remove redundant code

* Carrrrd

* cleanup

* Nicer code

* Update to fix the spawn bug + agent ID

* Fix new icons

---------

Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
2026-06-29 12:43:44 +02:00
pathetic meowmeow b81a0c7a85 Drop ICharacterProfile/ICharacterAppearance interfaces (#42661) 2026-06-29 12:43:42 +02:00
abb13de3dd Move character preview handling into a specialized control (#41252)
* Move character preview handling into a specialized control

Co-authored-by: Quantum-cross <7065792+Quantum-cross@users.noreply.github.com>

* Restore job name that I accidentally removed from character picker buttons

* Just resolve dependencies the standard way

---------

Co-authored-by: Quantum-cross <7065792+Quantum-cross@users.noreply.github.com>
Co-authored-by: Janet Blackquill <uhhadd@gmail.com>
2026-06-29 12:43:42 +02:00
Winkarst-cpu 8028412480 Fix: Make vote call button toggable (#42450)
Fix
2026-06-29 12:43:42 +02:00
B_Kirill a9e654b9cb Improve sandbox window toggle buttons state handling (#42281) 2026-06-29 12:43:41 +02:00
SlamBamActionman ddeea645ef Add an option for hold-to-attack in settings (#42596)
* Initial commit

* Separate ranged and melee

* Move to controls tab
2026-06-29 12:43:40 +02:00
B_Kirill e9f5ae611b Cleanup warnings: CS0168, CS0414, CS8321 (#42623) 2026-06-29 12:43:39 +02:00
Princess Cheeseballs c770d631f7 Tweak Traitor Uplink - The Rest of the Uplink (#42582)
* jaws of death

* I hate YAML

* open the gate

* I forgot about this one

* I forgor

* Fix croissant

* this didn't work actually rip

* made lights look better and undo on the boxing gloves

* small change

* Update Resources/Prototypes/Entities/Clothing/Hands/gloves.yml

Co-authored-by: IProduceWidgets <107586145+IProduceWidgets@users.noreply.github.com>

* baguette contraband, eat your evidence.

* suffix

---------

Co-authored-by: Princess Cheeseballs <66055347+Pronana@users.noreply.github.com>
Co-authored-by: IProduceWidgets <107586145+IProduceWidgets@users.noreply.github.com>

# Conflicts:
#	Resources/Prototypes/Catalog/uplink_catalog.yml
2026-06-29 12:43:39 +02:00
Pieter-Jan Briers 7419408ec5 Ban database refactor (#42495)
* Ban DB refactor seems to work at a basic level for PostgreSQL

* New ban creation API

Supports all the new functionality (multiple players/addresses/hwids/roles/rounds per ban).

* Make the migration irreversible

* Re-implement ban notifications

The server ID check is no longer done as admins may want to place bans spanning multiple rounds irrelevant of the source server.

* Fix some split query warnings

* Implement migration on SQLite

* More comments

* Remove required from ban reason

SS14.Admin changes would like this

* More missing AsSplitQuery() calls

* Fix missing ban type filter

* Fix old CreateServerBan API with permanent time

* Fix department and role ban commands with permanent time

* Re-add banhits navigation property

Dropped this on accident, SS14.Admin needs it.

* More ban API fixes.

* Don't fetch ban exemption info for role bans

Not relevant, reduces query performance

* Regenerate migrations

* Fix adminnotes command for players that never connected

Would blow up handling null player records. Not a new bug introduced by the refactor, but I ran into it.

* Great shame... I accidentally committed submodule update...

* Update GDPR scripts

* Fix sandbox violation

* Fix bans with duplicate info causing DB exceptions

Most notably happened with role bans, as multiple departments may include the same role.
2026-06-29 12:43:39 +02:00
pathetic meowmeow 17d3e83d5a Replace metabolism groups with metabolism stages (#42172)
* Replace metabolism groups with metabolism stages

* return to return

* killed

* yaml linted

* yaml linted again

* margarine

* bugfixes and balancing tweaks

# Conflicts:
#	Content.Shared/Metabolism/MetabolizerSystem.cs
2026-06-29 12:43:39 +02:00
B_Kirill edde782dae Fix construction ghost sprite offset (#42193) 2026-06-29 12:43:38 +02:00
Julian Giebel 0ce9663ddd Add feedback popups (#41352)
* Commit

* add the form post

* dv

* fixes

* Change wording

* Address review

* wording change

* Added some stuff

* New format

* bruh

* thanks perry!

* yes

* More fixes!

* typo

* Add a command to show the list, improve the UI slightly, split up command names

* Fix UI controller

* Add better comment

* Get rid of weird recursive thing

* Cleanup

* Work on moving feedback popups out of simulation

* Move round end screen subscription to feedback ui controller

* Finish moving feedback popups out of simulation

* Fix _ as parameter

* Clean up FeedbackPopupUIController

* Clean up commands

* Fix prototype yaml

* Fix openfeedbackpopup command description

* Update Resources/Locale/en-US/feedbackpopup/feedbackpopup.ftl

Co-authored-by: Simon <63975668+Simyon264@users.noreply.github.com>

* Apply suggestions from code review

Co-authored-by: Simon <63975668+Simyon264@users.noreply.github.com>

* Address reviews

* Address reviews

* Fix FeedbackPopupPrototype.cs using empty string instead of string.empty

* Address some more of the reviews, style nano is still trolling sadly

* Fix feedback popup styling

* Fix PopupPrototype ID field not having a setter

* Address reviews

* Add label when no feedback entries are present

Change link button to not show when no link is set

---------

Co-authored-by: beck-thompson <beck314159@hotmail.com>
Co-authored-by: SlamBamActionman <slambamactionman@gmail.com>
Co-authored-by: Simon <63975668+Simyon264@users.noreply.github.com>

# Conflicts:
#	Content.Client/Stylesheets/StyleNano.cs
2026-06-29 12:43:38 +02:00
deathride58andPrincess Cheeseballs e5f734769f Grappling rework - Grappling hooks are now physics-driven (#42409)
* Grappling rework - Grappling hooks are now physics-based

* still have no idea wtf is going on with portals but fixed a few bugs + cleanup

* bonus fixes + prep for optional-but-recommended engine PR

* dropkicking a stray comment outta here

* makes the impulses actually take into account the fucking relays, makes reeling cancel if the rope's already too short, and tweaks values

* reviews + cleanup + makes ungrapple behavior a bit more consistent
joint removal was removed from ungrapple because it mispredicts either way, and breaks grappling hooks attached to the grappling gun (always good to leave possibilities like that open)

* adds a hack to work around grids not caring about waking cross-grid joints

* makes use of dirtyfield(), defenestrates magic number

* y'know it'd probably be better if we were like actually awake before we made commits

* null-coalesce instead of if statement

* two changes

* dont datafield and fix up for sound overrides

---------

Co-authored-by: Princess Cheeseballs <66055347+Pronana@users.noreply.github.com>
2026-06-29 12:43:38 +02:00
pathetic meowmeowandPrincess Cheeseballs a5149c759e Simplify hands UI code (#42534)
* Simplify hands UI code

* i remembered about SortedHands in the component

* minor cleanup

---------

Co-authored-by: Princess Cheeseballs <66055347+Pronana@users.noreply.github.com>
2026-06-29 12:43:38 +02:00
MinervaandJanet Blackquill bcaf0e46d2 Makes defib cabinets constructable and deconstructable (#42571)
* Makes defib cabinets constructable and deconstructable

* fix crash on master

---------

Co-authored-by: Janet Blackquill <uhhadd@gmail.com>
2026-06-29 12:43:38 +02:00
eoineoineoinandJanet Blackquill 8ae4611855 Character editor style fixes (#41278)
* Restore pre-StyleNano element height

* Add style for HelpButton to sheetlet

---------

Co-authored-by: Janet Blackquill <uhhadd@gmail.com>
2026-06-29 12:43:38 +02:00
SabreMLandJanet Blackquill 64d3b0638f Colour picker, palettes, & other spraypainter stuff (#41943)
* The stuff

* Valid check

* Spraypaintable decals don't actually seem to use `ZIndex`

* Don't need this

* datafield fix and button swap

---------

Co-authored-by: Janet Blackquill <uhhadd@gmail.com>
2026-06-29 12:43:37 +02:00
Absotively 27083f246e SwitchButton (#39161)
* Initial toggle switch styling

* tweak toggle switch textures

* Simplify toggle SVG images a bit

* Better name for switch button

* Update CheckButtons that were already just regular buttons

* Match checkbox/text field outline colour instead of slider outline colour

* Use switch button for APC power

* Update switch button styling; add separate style for power buttons

* Use new switch button in midi channels menu

* Add spacer

* adjust switch button icon proportions, position

* Add disabled toggle switch styles, use improved pressed style setup, make APC breaker state visible to all

* Use Janet Blackquill's icon design; remove StyleClassPowerSwitchButton. Co-authored-by: Janet Blackquill <uhhadd@gmail.com>

* Style switch children directly instead of with propagated styles

* Add attributions file

* Turns out source is a required field

* Move SwitchButton out of engine

* Move styles to sheetlet

* Make workaround for child controls not updating work in content

* Icon layers

* Set up ISwitchButtonConfig

* Fix disabled switch label font color

* Don't redefine base pseudostyles

* Use pseudoclass helpers for better readability

* Use margin instead of padding element

* Remove unused using statements

* Remove extra image file

* Update attributions for changed files
2026-06-29 12:43:37 +02:00
e955bb449f Cargo console rework (retry) (#34052)
* Cargo console upgraded

* add comment of hardcode

* Update Resources/Locale/en-US/cargo/cargo-console-component.ftl

Co-authored-by: Thomas <87614336+Aeshus@users.noreply.github.com>

* Update Content.Client/Cargo/UI/CargoConsoleMenu.xaml.cs

Co-authored-by: Thomas <87614336+Aeshus@users.noreply.github.com>

* Update Content.Client/Cargo/UI/CargoConsoleOrderMenu.xaml

Co-authored-by: Thomas <87614336+Aeshus@users.noreply.github.com>

* Some small technical improvements

* More indent

* Fix unknown requester name

* whitespace cleanup

* Small improvement

* Add order price to the title

* Fix build errors

* Port new slip system

* Remove unused loc

* Some required changes

* Add stride

* minor code style + update to sheetlets

---------

Co-authored-by: VideoKompany <135313844+VlaDOS1408@users.noreply.github.com>
Co-authored-by: Thomas <87614336+Aeshus@users.noreply.github.com>
Co-authored-by: Janet Blackquill <uhhadd@gmail.com>
2026-06-29 12:43:37 +02:00
pathetic meowmeow 9612ca3ab9 Ensure cat ears & tails cannot be selected by players (#42579)
Ensure cat ears & tails cannot be selected.
2026-06-29 12:43:37 +02:00
ArtisticRoomba 11dc186941 Power Consumers Rebalance: Simple Dynamic Power Loading (#41961)
* initial commit

* misc additions and fixes

* final tests and additions

* cleanup 1

* fix tests and add a test

* fix tests AGAIN

* abject horror and misery

* cleanup

* cleanup 2

* address some issues
2026-06-29 12:43:37 +02:00
pathetic meowmeowandPrincess Cheeseballs b4e20b6d6d Fix hideable humanoid layers (#42553)
* Fix hideable humanoid layers

* test maintenance coin

* clean return

* voxes can no longer have human beards

* voxes fixes

* voxing out

---------

Co-authored-by: Princess Cheeseballs <66055347+Pronana@users.noreply.github.com>
2026-06-29 12:43:37 +02:00
B_Kirill 594d3b780f Fix MagicMirror UI (#42544) 2026-06-29 12:43:36 +02:00
pathetic meowmeow c57721eca5 Visual nubody (humanoid appearance refactor) (#42476)
* initial visual nubody

* oops overlay

* im so pheeming rn

* conversion...

* tests

* comeback of the underwear

* oops eyes

* blabbl

* zeds

* yaml linted

* search and visible count constraints

* reordering

* preserve previously selected markings colors

* fix test

* some ui niceties

* ordering

* make DB changes backwards-compatible/downgrade-friendly

* fix things again

* fix migration

* vulpkanin markings limit increase

* wrapping

* code cleanup and more code cleanup and more code cleanup and more code cleanup and

* fix slop ports

* better sampling API

* make filter work + use the method i made for its intended purpose

* fix test fails real quick

* magic mirror cleanup, remove TODO

* don't 0-init the organ profile data

* remove deltastates

---------

Co-authored-by: Princess Cheeseballs <66055347+Pronana@users.noreply.github.com>

# Conflicts:
#	Content.Server/Humanoid/Components/RandomHumanoidAppearanceComponent.cs
#	Content.Server/Humanoid/Systems/RandomHumanoidAppearanceSystem.cs

# Conflicts:
#	Resources/Prototypes/Species/diona.yml

# Conflicts:
#	Content.Server/Zombies/ZombieSystem.Transform.cs
2026-06-29 12:43:35 +02:00
eoineoineoin 350046f1b3 Rename "Inset" style, implement in sheetlets (#41975)
* Rename "Inset" style, implement in sheetlets

* Remove from StyleNano
2026-06-29 12:43:35 +02:00
pathetic meowmeow 490994ea01 Nubody (#42419)
* Nubody

* fix test fails

* gibbing

* lung test returns

* doc comment

* hand organ test

* giblet test

* yaml formatting

* returning

* relocate

* trimming

* re-smite

* oops thusd tweak

* arachnids have slower metabolism i guess

* never mind the old behaviour is bad actually

* rider whyyy

* style changes and allat

* fix collision

---------

Co-authored-by: Princess Cheeseballs <66055347+Pronana@users.noreply.github.com>

# Conflicts:
#	Resources/Prototypes/Entities/Mobs/Species/diona.yml

# Conflicts:
#	Resources/Prototypes/Body/species_base.yml

# Conflicts:
#	Resources/Prototypes/Entities/Mobs/Species/moth.yml

# Conflicts:
#	Resources/Prototypes/Entities/Mobs/NPCs/animals.yml
#	Resources/Prototypes/Entities/Mobs/NPCs/regalrat.yml
#	Resources/Prototypes/Entities/Mobs/NPCs/slimes.yml
2026-06-29 12:43:27 +02:00
pathetic meowmeow c7c6f1a67a Add nodecrawling, implement ventcrawl with it (#5830)
* node crawling movement

* more node crawling

* quality assurance

* do-after it

* i'm ratted king

* we don't need to serialize node stuff

* rename and ser/de fix

* review fixes
2026-06-29 00:54:08 +00:00