Commit graph

118 commits

Author SHA1 Message Date
Whatstone
a023e5784c
Cleanup: Remove byte order markers from most files (#45796) 2026-09-17 23:23:54 +10:00
Princess Cheeseballs
2c6ffecf62
Move GameTicker to Shared (#45834)
* Scope creep my ass

* why was this shit not pushed????

* gone...

* fix that

* review plus buildd

* asfsafsafsafsafas

* grug

* burber

* I'll fix this later

* shrimply die

* also this

* it's snerf or snuthin

* assaads

* round snend

* aaaa

* fix this shit for real

* actually, don't start GameRules until MapInit now that I think aboot it.

* forgot u

* don't actually need this part nullable

* Deffer comp removal

* one liner

* do that too

* chungus

* Honestly makes more sense here, plus WHY are we doing all that shit on "GameRuleAdded" rather than GameRuleStarted(?)

* deferred removal :V

* aaaaaaaaaaaaaaa

* whhop

* Whoop

* better

* landmine that I placed for myself then forgot about lmao

* cleanup

* FUCKING `!`

* gotovo

* amogus

* please don't check by metadata I beg

* waawsasfdfsasfa

* sfafsasfafsas

* fdsaasffsasfa

* code

* fix

* fasasffasfasfsad

* chungaas

* I may be stupid

* gra

* graaaaaaaaaaaaaaaaa

* comment

* gra

* clearing is not predicted and would require major refactors, so don't cache on client.

* lame shit :P

* last holes

* nukeopsfsafsasafsfafsa

* why  was that shit public bruh

* bubrbgwahrghfaka

* dynamic

* revert change that did nothing lmao
2026-09-16 19:34:19 +00:00
Rouden
cc2c14f8e4
Device Network refactor part 1: API improvements (#44346)
* Refactor DeviceNetwork

* Singleton

* NetworkPayloads refactor

* Reorganize DeviceNetworkSystem

* Surveillance cameras

* Fix code

* Fix build

* Fix test fail by rewriting entire singleton logic

* Properly predict examine

* Update DeviceNetworkSystem.API.cs

* Update EntityTest.cs

* Update DeviceNetworkSystem.cs

* Alright I'll do this expensive check fine

* Fix disposals debug assert

* Implement device network static events support

* Use frozen dictionaries for performance

* Update SharedDeviceNetworkSystem.Payloads.cs

* Parallel payload handling support

* Fix some spagetti-code

* Optimize NetworkPayload cancellation

* Parallel payloads are now cancellable

* Fix screens

* Fix robotics console

* Allow new methods for shared

* Mail fix

* Turret fix

* Fix network system method usage + signal and borg fix

* finally fix atmos devices OH MY GOOOD

* Remove stupid parallelism from fax

* Fix surveiollance cameras

* Working on a single thing for 2 days straight award

* Fix the test?

* Update units.yml

* Add IDevice interface because why not

* Add more device network suffixes

* Fix camera router failing test

* yaml linter peak

* Improve docs for DeviceNetworkHandlers

* fix build

* Update CartridgeLoaderSystem.Relay.cs

* Remove parallel system and EntitySystem post init

* Add more docs and also events

* Remove unnecessary caching

* Update DevicePayloadComponentSystem.cs

* Back to entity events

* Implement DeviceData

* Remove serializable from payloads

* Update DeviceData.cs

* Add a prototype for a singleton

* Fix tests

* Fix air alarms

* Update DeviceNetworkSystem.cs

* Fix cameras

* Make camera router event-less

* Fix atmos sync payloads, add more docs

* Remove singleton + instant packets

* oops remove public access

* Fix tests?

* Why the hell overload effect makes puddle sparks

* Apparently it was redundant

* Update gates.yml

* Finish documentation

* Review

* Mark relay properties as obsolete

* Struct payloads support (#blazinglyfastmemorysafe)

* Update DeviceNetworkTest.cs

* Make device structs stuff better

* Move address prefix to DeviceNetworkComponent

* Locale fixes

* Fix tests

* Doesn't know boolean logic award

* Update AtmosAlarmableSystem.cs

* Fix address predicted examine

* Partial fix to air alarmables

* Fix deployable turrets UI

* Fix firelocks, maybe

* Apparently Activatable UI was enough lol

* Fix surveillance cameras

* Rename `QueuePacket` into `SendPacket`

* Simplify DeviceData as much as possible

* Update DeviceData.cs

* Update FaxMachineComponent.cs

* Remove DeviceData because its stupid

* Update ScreenSystem.cs

* Fix build (camera map broken still)

* Fix map

* fix usings

* Review changes

* Build fix
2026-08-31 19:42:56 +00:00
DrSmugleaf
65f5f67cd5
Make every EntitySystem partial (#45220)
* Make every EntitySystem partial

* Oobs thats for a diff PR

* Also oops on that one

* Test systems

* git are we fr

* Update file templates

* cleanup empty classes while we are here

* forgor

---------

Co-authored-by: AJCM-git <ajcm_mail@disroot.org>
2026-08-14 18:24:47 +00:00
Emisse
689de19a71
derotate 3 maps (#45302)
derotate maps
2026-08-12 22:11:16 +00:00
Spessmann
01d9b5fe4e
Snowball update (#45131)
* snowball update

* decal pass

* janicart

* uhhh

* maybe this fixes it

* fml
2026-08-09 04:20:05 +00:00
JiyuSoftware
3a33309939
Added Sushi Station (#45017)
* Added Sushi Station

* Updated Sushi Station after feedback

* Add Sushi to tests/benchmarks + a little clean up
2026-07-30 22:15:59 +00:00
Aaron
5781283a9c
Tramstation (#34191)
* Tram!

* add tram to test file and add prototype

* fixed prototype

* fixed map and prototype

* small changes

* changed dorms and tool room

* Ready for review.
please dont be too harsh i will cry

* Various fixes

medical front, sci front. edited some maints. fixed cramped atmos. added warden bedroom

* small updates

* new maints rooms and small fixes

* i hope this doesnt break anything

* i dont think anyone reads these

* renamed everything

* Firelock 198X is a fun game

tiles under doors, fixed airlock access in parts, more maints stuff. tried to fix tram air

* still no idea how many people belong on this station

* Genpop, silos and more!

* Fixed Sec and atmos pipes

* i am a fool

* sec entrance to genpop. more engi parts and tram adjustments

* everytime i fix something i break something else

* small fixes and tram stuff

* added turrets and attempted to fix mail system

* Resolved most issues from playtest and changed prototype

* small changes

* minor tweaks

* More small fixes

* changes from feedback

* colored pipes

* redid turrets

* small fixes

* chem, comm and other changes

* someone else might need to finish this

* air and power fix in sec

* fixed vault and minor firelocks around the station

* lawyer and map test/pool

* bugfixing

* maint and misc changes

* no more diy teg

* tram speed limited

* changed job roster adn added Tram Driver spawn

* im an idiot

* final changes

* fix tests

* fix tests for real this time

---------

Co-authored-by: ArtisticRoomba <145879011+ArtisticRoomba@users.noreply.github.com>
2026-07-30 03:18:39 +00:00
emisse
ff7dc00a06 real 2026-07-29 15:46:33 +02:00
Jessica M
4ebf38a450
Entity Effect dispatch benchmark (#44607)
bench
2026-07-11 01:16:57 +00:00
DrSmugleaf
139a8c1aa1
Add benchmarks for raising local events with 2, 4, 8, and 16 subscribers (#44595) 2026-07-10 02:18:56 +00:00
ArtisticRoomba
418be47da8
Microoptimize Vector2i.Offset (#103)
* microopt offset
works on my machine award

* tweaks
2026-06-19 07:38:27 +00:00
Whatstone
f339f58945
Replace all uses of System.Random with IRobustRandom, resolve all System.Random warnings. (#32)
* Remove all uses of System.Random

* Use IRobustRandom in BinomialNumberSelector.Get

* Remove remaining ToolRefinableSystem S.Random inst
2026-06-16 23:38:37 +00:00
ArtisticRoomba
faa9ead594
Migrate Atmospherics to TensorPrimitives (#44139) 2026-06-02 12:52:50 -07:00
Pieter-Jan Briers
5168b5f3d4
IoC source gen compatibility (#43863)
* IoC source gen compatibility

Can be merged before or after https://github.com/space-wizards/RobustToolbox/pull/6549 doesn't really matter.

* Missed a spot
2026-05-09 03:29:58 +00:00
Moony
d42adbf05d
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-04-01 16:06:26 +00:00
Moony
93dccc34c5
Content-side IRobustRandom cleanup. (#43231)
* Content-side fixes for engine IRobustRandom rejig.

* Define for ensuring SetSeed works.

* Poke.

* Poke

* Poke.
2026-03-14 17:37:02 +00:00
Princess Cheeseballs
a1d7406bf2
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-03-14 08:53:49 +00:00
ArtisticRoomba
f702dc8f2d
Atmos GasSpecificHeats in shared (#42136) 2026-01-14 15:21:04 -08:00
Pieter-Jan Briers
787330f5c6
v269.0.0 RT update - .NET 10 (#41855)
* Make ServerPackaging automatically get extra server assemblies

* Make the switch

* Use Content.Server.deps.json instead

* Remove debug

* Rewrite

Now recursively fetches dependencies from Content.Server

Only copies dependencies not covered by Robust

This removes the need to manually specify most of the dependencies, even the content ones!

Also look at runtime key properly to figure out the proper dll name.

This actually removes some assemblies that were duplicated between the main directory and assemblies (various Microsoft.Extensions stuff)

* Fix test compile errors when updating dependencies

Ran across this while updating dependencies on the RT .NET 10 update. Should be fine to merge immediately.

* More .NET 10 prep

* Convert to SLNX

Hell yeah

* slnx now has size-2 indents

* Update SLNX with new RT system

* Remove reference to RT test in toolshed test

* Remove accidental usage of transitive RT dependencies

* Move Robust project references to RobustApi

* Update solution file

* Fix warnings in pow3r

* Fix nullable warnings in integration tests

idk where these came from

* gitignore binlog files

* Fix transitive dependency warnings in Content.Benchmarks

* Update slnx

* Okay, the Robust API thing didn't pan out. New plan.

It apparently broke clean builds, as the dependencies aren't in the project asset list or something anymore. I tried to fix this, but it seems impossible to do without relying on .NET SDK internals, as there's no point in the NuGet graph walk process that seems cleanly extensible.

Instead let's just do the much dumber thing: a bunch of .props files for content to import. Hooray!

This also means that I have to go through and *explicitly* disable transitive dependencies everywhere in RT. This thankfully isn't too hard.

* Update RT to 269.0.0

* One last solution update

* Fix more data definition issues

* Update RT to 269.0.1

* Fix it again

---------

Co-authored-by: DrSmugleaf <drsmugleaf@gmail.com>
2025-12-22 01:24:24 +00:00
ArtisticRoomba
f079ec6233
Fix destructible benchmark OOMing (#41880)
* not working

* fix
2025-12-16 20:37:27 +00:00
Errant
432c9578be
move GameMapPrototype and GameMapCondition to shared (#41742)
* move GameMapPrototype and GameMapCondition to shared

* fix
2025-12-06 15:45:50 +00:00
Leon Friedrich
44e5073d32
Update RaiseEventBenchmark for engine changes (#37349)
* Update RaiseEventBenchmark

* fix test

* poke_tests
2025-11-13 21:50:17 +11:00
Kryyto
d0ac7d0b39
Add a new gas React() benchmark (#41202)
* Add a new gas React() benchmark

* fix the iteration amount to 100, remove unused using

* fix the iteration amount to 1000
2025-10-31 00:05:31 +00:00
Hannah Giovanna Dawson
cdbe92d37d
Update DamageableSystem to modern standards (#39417)
* Update DamageableSystem to modern standards

* DamageContainerId -> DamageContainerID with lint flag

* Replace strings with protoids

* Make CVar subscription declarations all consistently whitespaced

* ChangeDamage -> TryChangeDamage, cope with C# jank

* Revert event signature changes

* Restore a comment

* Re-add two queries

* Init the queries

* Use appearanceQuery in DamageChanged

* Use damageableQuery in TryChangeDamage

* Use damageableQuery in SetDamageModifierSetId

* Final cleanup, fix sandboxing

* Rectify ExplosionSystem:::ProcessEntity's call to TryChangeDamage

* Re-organize DamageableSystem

* first big fuck you breaking change.

* THATS A LOT OF DAMAGE!!!

* Fix test fails

* test fixes 2

* push it

---------

Co-authored-by: Princess Cheeseballs <66055347+Pronana@users.noreply.github.com>
2025-10-27 19:53:04 +00:00
Princess Cheeseballs
3a9bcf1a83
Damageable/Destructible Benchmarks (#41064)
* the fard

* oomba

* The woke swarm...

* Review

* review

* Apply suggestions from code review

---------

Co-authored-by: Princess Cheeseballs <66055347+Pronana@users.noreply.github.com>
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
2025-10-27 02:46:27 +00:00
Leon Friedrich
b6797afe52
Move TestPair & PoolManager to engine (#36797)
* Move TestPair & PoolManager to engine

* Add to global usings

* A

* Move ITestContextLike to engine

* Readd cvars partial class

* cleanup diff
2025-09-21 17:17:43 +12:00
ArtisticRoomba
20f2cb920b
Atmos Delta-Pressure Window Shattering (#39238)
This PR adds delta-pressure damage. In short, airtight structures can now take damage proportional to the difference in pressures between the sides of the structure.
2025-09-03 16:58:48 -07:00
Partmedia
7511b3bed3
Fix benchmark (#40039) 2025-09-03 00:55:38 +02:00
Kyle Tyo
d4c025567a
Predict warp point location examines. (#39402)
commit
2025-08-05 20:26:41 +02:00
Tayrtahn
9186b65b14
Validate ShaderPrototype IDs (#38728)
* Convert all shader prototype string literals to protoids in overlays

* Convert more shader prototype literal strings to protoids

* Convert ValidatePrototypeId to ProtoId

* Later
2025-07-03 18:11:31 -07:00
K-Dynamic
ffa7d68010
Fixes maploadbenchmark typo (#37981)
fixes typo
2025-06-01 09:55:42 +02:00
Leon Friedrich
2fcf14bf52
Increase benchmark BuildTimeout (#37029)
* Increase benchmark BuildTimeout

* Add RaiseEvent benchmark

* a

* More benchmarks

* It just gets optimised away

* IComponent event

* cleanup bench
2025-05-11 21:59:29 +10:00
keronshb
0a394d4af5
Wizard Teleport Scroll (Teleport Location ECS) (#36424) 2025-04-28 19:42:24 +02:00
metalgearsloth
a695a527f0
Update b2dynamictree (#30630) 2025-03-08 14:49:13 +11:00
ElectroJr
eedc992d57 Merge branch 'master' of https://github.com/space-wizards/space-station-14 into map-load-refactor 2025-02-16 16:52:51 +13:00
Spessmann
afede7d4d0
Removes Cog station (#34996)
freedom!!!
2025-02-09 14:01:31 -07:00
Spessmann
a07df05858
New Highpop map: Convex recreational complex (#33346)
* start ig

* command work +AI

* finished bridge, added signs to departments

* engi partly done

* finish engi + atmos except for cams

* added med yippie

* carGODO

* nerd department finished

* se(x)c finish

* courtroom + service power

* man im tweaking out

* service propa done

* hallways

* added cams everywhere and named all the doors :pain:

* arrivals maints + exterior catwalk

* more maints

* voxob

* draft done

* holopadpilled + gaspipesensor based

* added convex name everywhere it needed to be

* nvm i guess we dont do oxford comma

* redid ALL THE HGOLOPADS FAAAAAAAAAAAAAAAAAAAAA

* Fix conflicts?

* ok let me try something

* this works right?

* atmos updated + jani lights

* uniform hallway tiles +roundstart TEG

* fixed some hidden atmos stuff

* Update map_attributions.txt

* :finnadie: no map review ...

* the fog is coming

* maints theater redone

* light dirt and the murder of most trims

* 💔

* decal based and tileoverlay pilled

* updated arrivals/library

* bungus

* yvgh

* 6 hours later...

* finished for real?
2025-01-29 19:44:45 -07:00
ElectroJr
ef3d7396d4 fix other benchmarks 2024-12-23 18:13:49 +13:00
ElectroJr
43e6fd57d4 Fix MapLoadBenchmark 2024-12-23 18:02:58 +13:00
Emisse
af2ee4a9e6
remove origin (#31059)
derotate origin
2024-08-15 16:22:01 -06:00
Emisse
9c1b8c18de
remove atlas, cluster, europa, saltern (#31058)
* goodbye sweet maps

* Update EvacShuttleTest.cs

* Update EvacShuttleTest.cs

* fix tests

* fix tests

* nightmare nightmare nightmare

* rider is fucking me

* jesus christ
2024-08-15 15:10:06 -06:00
Spessmann
208b1d23b8
Added Cog(map) and its own evac shuttle (#30840)
* Added new map Cog and its own evac shuttle

* removed cog from default.yml so all checks will pass

I added cog here because i thought it might need to be here for map choosing??????????? ill add it back if needed

* updated cog and fixed a bunch of stuff that was not visable in the image, also nerfed the singo so it no longer solos

* added renault spawner that was missing and changed some minor stuff

* moved a escape pod from med/sci hallway to northern maints

* added shutters to the brig and added vents and scrubbers where they were missing in the halls

* extended salv's docking port so they can dock

* Fixed according to cog review thread

* fix pools

* fix PostMapInitTest

* Update MapLoadBenchmark.cs

* added cap and hop spawn that i just forgot to add???????????????????

* fixed again

---------

Co-authored-by: Emisse <99158783+Emisse@users.noreply.github.com>
2024-08-13 13:27:24 -06:00
Leon Friedrich
a3d9f7291d
Fix IComponentFactory mock in benchmark (#29015) 2024-06-15 16:42:25 +10:00
Leon Friedrich
7bd1b45f2b
Use dummy sessions in NukeOpsTest (#28549)
* Add dummy sessions

* Update NukeOpsTest

* Fix PvsBenchmark
2024-06-05 18:37:22 +10:00
Leon Friedrich
6e83c4d570
Update component query benchmarks (#27967)
* Add more component query benchmarks.

* Rename benchmark
2024-05-19 11:55:10 +10:00
IProduceWidgets
7b0b894e44
Add map Oasis (#25736)
* Add map Oasis

* integration test fix

* psych job

* 1984 an invalid component

* address reviews

* address reviews, touch ups.

* tiny feexes

* move a tree

* Actually put it in the active maps pool.

* minor tweeks

* tweek some door accesses.

* add extra lawyer, make evac the right docking arrangement.

* Address the small things, fix cryopods, make perma huge.

* Fix some small things in the new perma.

* Improve perma spacing resiliancy... maybe.

* burn the invalids

* Pray to the Sloth gods that painters arent cooked.

* rearrange some buttons

* fix fax names and add a genedrobe.

* Housekeeping

* fix some stuff I thought I already fixed

* wood benches

* Some under door tiles, a couple missing decals.

* one pipe got brokey. feexit!

* astrograsses and lathe to cargo

* N2 lockers, minor things.

* cap laser to case

* GridFill the briggle so it feels better. Some other minor things

* name the Briggle correctly
2024-04-20 23:59:12 -06:00
metalgearsloth
12766fe6e3
Loadouts redux (#25715)
* Loadouts redux

* Loadout window mockup

* More workout

* rent

* validation

* Developments

* bcs

* More cleanup

* Rebuild working

* Fix model and loading

* obsession

* efcore

* We got a stew goin

* Cleanup

* Optional + SeniorEngineering fix

* Fixes

* Update science.yml

* add

add

* Automatic naming

* Update nukeops

* Coming together

* Right now

* stargate

* rejig the UI

* weh

* Loadouts tweaks

* Merge conflicts + ordering fix

* yerba mate

* chocolat

* More updates

* Add multi-selection support

* test

h

* fikss

* a

* add tech assistant and hazard suit

* huh

* Latest changes

* add medical loadouts

* and science

* finish security loadouts

* cargo

* service done

* added wildcards

* add command

* Move restrictions

* Finalising

* Fix existing work

* Localise next batch

* clothing fix

* Fix storage names

* review

* the scooping room

* Test fixes

* Xamlify

* Xamlify this too

* Update Resources/Prototypes/Loadouts/Jobs/Medical/paramedic.yml

Co-authored-by: Mr. 27 <45323883+Dutch-VanDerLinde@users.noreply.github.com>

* Update Resources/Prototypes/Loadouts/loadout_groups.yml

Co-authored-by: Mr. 27 <45323883+Dutch-VanDerLinde@users.noreply.github.com>

* Update Resources/Prototypes/Loadouts/Jobs/Civilian/clown.yml

Co-authored-by: Mr. 27 <45323883+Dutch-VanDerLinde@users.noreply.github.com>

* Update Resources/Prototypes/Loadouts/Jobs/Civilian/clown.yml

Co-authored-by: Mr. 27 <45323883+Dutch-VanDerLinde@users.noreply.github.com>

* Update Resources/Prototypes/Loadouts/loadout_groups.yml

Co-authored-by: Mr. 27 <45323883+Dutch-VanDerLinde@users.noreply.github.com>

* Update Resources/Prototypes/Loadouts/Jobs/Security/detective.yml

Co-authored-by: Mr. 27 <45323883+Dutch-VanDerLinde@users.noreply.github.com>

* Update Resources/Prototypes/Loadouts/loadout_groups.yml

Co-authored-by: Mr. 27 <45323883+Dutch-VanDerLinde@users.noreply.github.com>

* ben

* Margins

---------

Co-authored-by: Firewatch <54725557+musicmanvr@users.noreply.github.com>
Co-authored-by: Mr. 27 <koolthunder019@gmail.com>
Co-authored-by: Mr. 27 <45323883+Dutch-VanDerLinde@users.noreply.github.com>
2024-04-16 22:57:43 +10:00
Pieter-Jan Briers
68ce53ae17
Random spontaneous cleanup PR (#25131)
* Use new Subs.CVar helper

Removes manual config OnValueChanged calls, removes need to remember to manually unsubscribe.

This both reduces boilerplate and fixes many issues where subscriptions weren't removed on entity system shutdown.

* Fix a bunch of warnings

* More warning fixes

* Use new DateTime serializer to get rid of ISerializationHooks in changelog code.

* Get rid of some more ISerializationHooks for enums

* And a little more

* Apply suggestions from code review

Co-authored-by: 0x6273 <0x40@keemail.me>

---------

Co-authored-by: 0x6273 <0x40@keemail.me>
2024-02-13 16:48:39 -05:00
metalgearsloth
05a2ddff1c
Predict two-way levers (#25043)
* Predict two-way levers

Annoys me the rare occasions I touch cargo. Doesn't predict the signal but at least the lever responds immediately.

* space

* a
2024-02-11 14:19:45 +11:00