Commit Graph

1294 Commits

Author SHA1 Message Date
Vanessa a14f75c281
Merge pull request #6132 from DeltaV-Station/nanite-applicator
Examine Damage on Structure/Machine, Nanite Applicators
2026-07-06 15:08:03 -05:00
Vanessa a9574aa940 Tests 2026-07-06 09:59:16 -05:00
Vanessa 8f8f1dd001
Convert Round to Survival when Major Antag Fails (#6127)
* Changed up shuttle calls to make the round convert to survival.

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

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

* Added CosCult state checking.

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

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

* typo

* Fix nuke ops test

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2026-07-05 13:53:02 -04:00
Coryler 5192d4ab03 Spider Leg to Arachnid Leg 2026-06-29 12:44:21 +02:00
Coryler 63d7c592a1 PR Review fulfillments 2026-06-29 12:44:21 +02:00
Coryler 61b980c6e5 Attempt to make the Test work 2026-06-29 12:44:21 +02:00
Coryler e3d0afccf7 Fix Build Errors and Test Build Errors mentioned in Review 2026-06-29 12:44:21 +02:00
Coryler f8979bbeda Change _DV Tests to new ones 2026-06-29 12:44:21 +02:00
Coryler 025991f019 Change HumanoidLayer Test to our Markings 2026-06-29 12:44:19 +02:00
Coryler f18f591c11 Guide Entry Test skip 2026-06-29 12:44:19 +02:00
Coryler 2628cd07dd Comment out Holo Test, needs one written by us 2026-06-29 12:44:19 +02:00
Coryler 0187242d9d Test missing new 2026-06-29 12:44:18 +02:00
Moony 6656adc083 Gametest Part 2: Preliminary refactor every test to use GameTest as the framework. (#43207)
* Pass 1.

* i'm FREE

* Prevent hangups.

* okay fine here's an attribute for settings, will polish later and prolly remove the overridable thing.

* sigh.

* fix singular trigger bug so LatheTest doesn't flake.

* Remove SystemAttribute usage.

* Poke

* I used the shotgun. You know why? Cause the shot gun doesn’t miss, and unlike the shitty hybrid taser it stops a criminal in their tracks in two hits. Bang, bang, and they’re fucking done. I use four shots just to make damn sure. Because, once again, I’m not there to coddle a buncha criminal scum sucking f------, I’m there to 1) Survive the fucking round. 2) Guard the armory. So you can absolutely get fucked. If I get unbanned, which I won’t, you can guarantee I will continue to use the shotgun to apprehend criminals. Because it’s quick, clean and effective as fuck. Why in the seven hells would I fuck around with the disabler shots, which take half a clip just to bring someone down, or with the tazer bolts which are slow as balls, impossible to aim and do about next to jack shit, fuck all. The shotgun is the superior law enforcement weapon. Because it stops crime. And it stops crime by reducing the number of criminals roaming the fucking halls.

* Change the faulty store test into two tests, one of which is ignored for failing.
2026-06-29 12:44:18 +02:00
Tayrtahn 799dc60fd2 Fix `TrackingIssueAttribute` blocking orgs/repos containing numbers (#43369)
Fix TrackingIssueAttribute blocking orgs/repos containing numbers
2026-06-29 12:44:16 +02:00
slarticodefast 79e519696b cleanup GasPrototype and some other atmos code (#43318)
* cleanup

* fix some localizations

* fix typo

* review and test fix

* rename

* minus one

---------

Co-authored-by: ArtisticRoomba <145879011+ArtisticRoomba@users.noreply.github.com>
2026-06-29 12:44:16 +02:00
Moony 3c48c0129f GameTest part 1 (#43182)
* Ports much of GameTest, minus all the WIP stuff.

* remark.

* EnsureCVar now adds test properties.

* Some cleanup and functionality.

* Ignore broken test. Needs fixed eventually. Also explicit context config.

* TrackingIssue attribute.

* oops

* Pair config attribute.

* Remove SystemAttribute in favor of using the EntitySystemManager dependency collection.

* Ensure idleness.

* More tests for tests.

* More specific failure catching tests.

* Reverse attribute resolution order so suite-wide attributes happen first.

* Get rid of AffectedProperties again because I need to refactor PoolSettings for that.

* Poke

* Final cleanup pass.

* Update Content.IntegrationTests/Fixtures/Attributes/RunOnSideAttribute.cs

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

* Update Content.IntegrationTests/Fixtures/Attributes/Side.cs

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

* Update Content.IntegrationTests/NUnit/Utilities/ITestExtensions.cs

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

* Fixes.

* shut up nunit.

* Make TrackingIssue a bit strict on purpose, so people don't put junk here.

* Update Content.IntegrationTests/Tests/GameTestTests/DisconnectedDependencyTest.cs

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

* Address.

---------

Co-authored-by: Tayrtahn <tayrtahn@gmail.com>
2026-06-29 12:44:15 +02:00
Moony b6d8de1258 Add test result archiving to our test actions + Test fixes (#43175)
* Add test result archiving to our test actions.

* heck.

* Don't waste tremendous amounts of storage.

* Fix ReagentDataTest.

* Reduce retention and increase compression on integration output.

* Back to 7 days, depend on RT instead.

* Poke.

* Fix linter.

* til.

* Actually send YAMLLinter's pair messages into the void.
2026-06-29 12:44:10 +02:00
Coryler 75c59ba997 Change PostMapInit Path to our actual maps 2026-06-29 12:44:09 +02:00
Coryler 17e5bb87ab Fix Build Errors 2026-06-29 12:44:07 +02:00
Kyle Tyo 6f6483f543 Fix bug blocking character saves for species without hair. (#43170)
* Update ServerDbBase.cs

* Update ServerDbBase.cs

* Update ServerDbSqliteTests.cs

* :grumble grumble grumble:

* tests

* Update ServerDbSqliteTests.cs

* commit

* forgot this.

* relocation.

* nope, not doing that lmao

* Update ServerDbSqliteTests.cs

* test rerun

* GAAAAAA

* Update ServerDbSqliteTests.cs

* Update ServerDbSqliteTests.cs

* Update ServerDbSqliteTests.cs

* GAAAAAA

* go fish
2026-06-29 12:44:06 +02:00
Centronias a667530e18 Single item cargo orders are delivered in Parcel Wrap instead of crates (#40834)
* - rework a bunch of cargo orders to not send a crate with just one thing
  - instead sends the item, wrapped
- add ability for cargo orders to wrap the item ordered in parcel wrap
- cargo order name and descriptions are now localization strings, but still 99.99% of the time just get that info from the entity they're spawning
- small refactor to how cargo orders move around in cargo code so that the actual order proto is kept around longer
- small rework to certain restock cargo orders to halve the cost and number of items received in one order

* oop

* Suffering

* Arbitrary containers for cargo products

* I ran the tests locally and they passed, github please rerun :)

* massage Slarti's work into this.
Mainly by taking the API wrapping ability out back with the rifle q-q

* testfail fake

* wow `_applyingState` is useful, I wonder where I should've been using that in other PRs before :^)

* pr comments

* tfw the hook doesn't update the submodule

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

Co-authored-by: āda <ss.adasts@gmail.com>

* PR comments

* fixies

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

* Update Content.Shared/ParcelWrap/Systems/ParcelWrappingSystem.WrappedParcel.cs

* fix wrapped parcel entity name + audio

* Actually read PR comments

* Apply suggestions from code review

Co-authored-by: ScarKy0 <106310278+ScarKy0@users.noreply.github.com>

---------

Co-authored-by: āda <ss.adasts@gmail.com>
Co-authored-by: ScarKy0 <106310278+ScarKy0@users.noreply.github.com>
2026-06-29 12:44:06 +02:00
Princess Cheeseballs 733d479425 Move a metric fuckton of AtmosphereSystem to Shared. (#42989)
* AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA

* fix the tests I broke

* Remove methods that the client shouldn't be calling. Hamburger.

* light cleanup for now

* review

* whoop

* docs updates and misc changes

---------

Co-authored-by: Princess Cheeseballs <66055347+Pronana@users.noreply.github.com>
Co-authored-by: ArtisticRoomba <145879011+ArtisticRoomba@users.noreply.github.com>
2026-06-29 12:44:04 +02:00
Moony 56210a7d94 Removes a test that handles engine behavior in content. (#43228) 2026-06-29 12:44:04 +02:00
Centronias 0e884decd5 Make test runnable on windows in debug config again (#43227)
tfw ur fs isn't posix compliant
2026-06-29 12:44:04 +02:00
Moony 6db5d7860a Refactor MobThresholds and Stamina tests. (#43156)
Add 561 more tests.
2026-06-29 12:44:03 +02:00
Moony b26a9735aa Reactions test cleanup. (#42979)
* Make TryAllReactionsTest use a scrounged reagent list.

* naming

* Poke
2026-06-29 12:44:02 +02:00
Moony 79590e2a69 Refactor construction tests (#43155)
Introduce 2681 more tests.
2026-06-29 12:44:02 +02:00
Moony 43f8a9d395 Refactor Device Linking tests. (#43157)
* Add 416 more tests.

* fixes.
2026-06-29 12:44:02 +02:00
Moony bc5b6299a6 Refactor explosion prototype tests. (#43158)
Add 9 more tests.
2026-06-29 12:44:02 +02:00
Moony 13900c9ffb Refactor guide entry tests. (#43159)
* Add 204 more tests.

* better plan.
2026-06-29 12:44:02 +02:00
Moony e2a2f0c969 Make map tests more fine-grained. (#42977)
* Make map tests more fine-grained.

* ..typo.

* fix example

* exclude Empty.

* Adjust a scrounger test & fix it.

* It does respect ignored prototypes, after I realized making it do so was really easy.

* Fix it for real this time.

* General scrounger enhancements for a GameRules test set.

* Fix linter for real.

* Address reviews.
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
Tayrtahn a1d74b7573 Add borg construction interaction test (#42359)
* Add test of borg construction.

* Return Validated when in validation mode.

* Update Content.IntegrationTests/Tests/Construction/Interaction/BorgConstruction.cs

---------

Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
2026-06-29 12:44:00 +02:00
slarticodefast 38ae6416cd Raise SolutionChangedEvent and SolutionContainerChangedEvent when handling SolutionComponent states (#42814)
raise event on client + comp access
2026-06-29 12:43:57 +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
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
pathetic meowmeow 63fea071c5 Ensure profile loading only returns valid species (#42842)
* Ensure profile loading only returns valid species

* punt conversion logic outside of the database
2026-06-29 12:43:50 +02:00
slarticodefast 4e628968fe Predict holoprojectors and add an integration test for them (#41569)
* cleanup

* fix fixtures

* prediction

* fix test

* review

* fix svalinn visuals

* fix chargers

* fix portable recharger and its unlit visuals

* fix borgs

* oomba review

* fix examination prediction

* predict holosign
2026-06-29 12:43:48 +02:00
InsoPL 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 429b710875 Fix markings colour setting (#42771) 2026-06-29 12:43:46 +02:00
pathetic meowmeow 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
ArtisticRoomba 8b243e533f Atmos GetAirflowDirections API (#42668) 2026-06-29 12:43:45 +02:00
Dmitry 484b4ec42c fixing the handling of the RespiratorComponent without checking (#42665)
* the correction itself

* it will be more adequate

* doc

* not log - not debug

* ohhh
2026-06-29 12:43:42 +02:00
pathetic meowmeow b81a0c7a85 Drop ICharacterProfile/ICharacterAppearance interfaces (#42661) 2026-06-29 12:43:42 +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
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 meowmeow 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
Velken 88f3601f56 "Fix RCD light spam, bypass of indestructible tiles and some plating fixes" - Tile Stacking got merged, time to bring back the RCD fix (#42556)
* No more light spam, and some plating fixes

* fixed test
2026-06-29 12:43:36 +02:00
Velken 12a7a2de67 Tile Stacking - attempt 2 (#42543)
* WORK IN PROGRESS 1

* ITS ALIVE, ALIVE!!!!

* clean up

* WIP 1

* fix small oversight

* big diff of doom

* added CVAR to tile history stack size

* component time

* filescoped namespaces + remove redundant nametag

* fix silly little mistakes

* typo

* TileStacksTest

* bweeeeeeh :P

* nuke cvar

* :3

* WIP2025

* Fix submodule

* It's beginning to look a lot like Christmas

* It's the Most Wonderful Time of the Year

* tiny fix

* fixed extra spacing on yaml

* slightly improve tilestacking test

* Part 1 out of 2 (part 2 tomorrow)

* Part 2

* add a simple tile construction test for tilestacking

* guh

* address reviews (no documentation yet)

* documentation be upon ye

* remove extra spaces

* prediction fix

* dirt

* oops :p

* attempt to make this suck less

* am never doing a PR that touches explosion system ever again

* small fix

* maybe a bit better now?

* more cleanup

* one last cleanup for me

---------

Co-authored-by: Killerqu00 <killerqueen1777@gmail.com>
Co-authored-by: Killerqu00 <47712032+Killerqu00@users.noreply.github.com>
Co-authored-by: ScarKy0 <scarky0@onet.eu>
Co-authored-by: Princess Cheeseballs <66055347+Pronana@users.noreply.github.com>
2026-06-29 12:43:36 +02:00
pathetic meowmeow dd43910f79 Fix humanoid profile voice being broken (#42550)
Fix humanoid appearance voice being broken
2026-06-29 12:43:36 +02:00