PJB3005
8580ab93a6
Dependency update
2025-12-08 00:49:37 +01:00
PJB3005
6bbeaeeba6
Fix NetBitArraySerializer compatibility.
...
Apparently NetSerializer treats IDynamicTypeSerializer and IStaticTypeSerializer differently for sealed types??
2025-12-02 00:51:04 +01:00
Princess Cheeseballs
1bcf04ef76
Revert "Double-buffer contact events ( #6295 )" ( #6314 )
...
This reverts commit cd59027089 .
Co-authored-by: Princess Cheeseballs <66055347+Pronana@users.noreply.github.com >
2025-11-30 16:24:55 +01:00
PJB3005
83ad6042a7
Fix BitArray serialization for .NET 10
...
Fixes #6301
2025-11-15 18:41:43 +01:00
metalgearsloth
663b83821a
Revert "Obsolete static IoC methods ( #6232 )" ( #6296 )
...
This reverts commit 14439784dd .
2025-11-15 11:26:52 +11:00
Leon Friedrich
14439784dd
Obsolete static IoC methods ( #6232 )
2025-11-13 21:35:14 +11:00
Leon Friedrich
b15d960c69
Try improve RaiseEvent performance ( #5925 )
...
* IEventBus -> EventBus
* Fix CompIdx.RefArray
* IEntityManager -> EntityManager
* Remove double delegate
* Add GetNetCompEventHandlers()
* release notes & cleanup
* Make PVS use GetNetCompEventHandlers
* I love event bus tests
* also fix pvs pause test
* dont trimm
---------
Co-authored-by: PJB3005 <pieterjan.briers+git@gmail.com >
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com >
2025-11-13 21:32:40 +11:00
metalgearsloth
cd59027089
Double-buffer contact events ( #6295 )
...
* Add
* a
* Fix test
* note
* Fix reflection
2025-11-13 21:28:13 +11:00
Leon Friedrich
3f19d25018
Box Simd ( #6193 )
...
* Box Simd
* Add 256 bit version of GetAABB
* Add AABB bechmarks
* No real diff between 128 & 256, so removing 256
| Method | Mean | Error | StdDev | Ratio |
|----------- |----------:|----------:|----------:|------:|
| GetAABB | 5.8107 ns | 0.0154 ns | 0.0137 ns | 1.00 |
| GetAABB128 | 0.4927 ns | 0.0003 ns | 0.0002 ns | 0.08 |
| GetAABB256 | 0.4332 ns | 0.0006 ns | 0.0006 ns | 0.07 |
* Add Box2Rotated.Transform Benchmark
* Results
20% faster and much smaller code. Also I don't think it inlined RotateVec
* Add Matrix3x2Helper.TransformBox() benchmark
new:
| Method | Mean | Error | StdDev | Code Size |
|---------- |---------:|----------:|----------:|----------:|
| Transform | 2.463 ns | 0.0766 ns | 0.0679 ns | 216 B |
old:
| Method | Mean | Error | StdDev | Median | Code Size |
|---------- |---------:|----------:|----------:|---------:|----------:|
| Transform | 9.469 ns | 0.2140 ns | 0.5408 ns | 9.206 ns | 621 B |
* Fix polygon constructor
* SlimPolygonBenchmark
* use new SimdHelper for other methods
* Fix bugs
* Use new methods
* Simd SlimPolygon.ComputeAABB
* Move simd transform to physics
* Cleanup
* Remove uneccesary Unsafe.SkipInit
* These tests all work on master
* Add Transform.MulSimd test
* Add SlimPolygon constructor tests
* Add ComputeAABB test
---------
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com >
2025-11-10 18:30:08 +11:00
Nemanja
f75ce13f00
Always align newly created entities with the grid ( #5915 )
...
* align spawns with grids
* :godmode:
* Fix comment
* fix
* release notes
2025-10-06 17:37:48 +13:00
Leon Friedrich
ddeb78accd
Make toolshed's CommandImplementationAttribute optional ( #6218 )
2025-09-23 15:47:21 +12:00
Leon Friedrich
912b6da20a
Fix serialization of data-records with get-only properties ( #6204 )
...
* Fix serialization of data-records with get-only properties
* even less nesting
* asserts
2025-09-17 19:11:12 +02:00
PJB3005
16fc48cef2
Hide IWritableDirProvider.RootDir on client
...
This shouldn't be exposed.
2025-09-14 14:49:13 +02:00
āda
5cecbb2cff
Fix TransformBounds(Matrix3x2 , Box2Rotated) ( #6171 )
...
* jouneys-end
* test
* more tests
* test overkill
* i'm tired
* rip it out
* Keep method but mark it as obsolete
* Release notes
* grammar
---------
Co-authored-by: iaada <iaada@users.noreply.github.com >
Co-authored-by: ElectroJr <leonsfriedrich@gmail.com >
2025-09-13 15:11:59 +10:00
Fildrance
735ef09d42
Better unsubscription for multiple ConfigurationManager subscriptions ( #6115 )
...
* feat: new method or aggregating multiple config changed subscriptions into one disposable object or more slim unsubscribing code
* refactor: moved nested private class declaration to bottom of class
* refactor: reusing stateful object in tests is not smart
* fix: invalid code for forming new array during InvokeList.Remove call
* refactor: extracted new sub-multiple builder into configuration manager extensions
* refactor: remove unused code
* refactor: removed UnSubscribeActionsDelegates
* refactor: whitespaces and renaming
---------
Co-authored-by: pa.pecherskij <pa.pecherskij@interfax.ru >
2025-08-02 18:35:38 +02:00
PJB3005
4bd7aa16c1
Config no longer logs a warning when saved in integration test
...
Supersedes #6108
See https://github.com/space-wizards/space-station-14/issues/39196
2025-08-02 17:54:09 +02:00
Pieter-Jan Briers
dcbe0505dc
Revert "Add WeakEntityReference ( #5577 )" ( #6112 )
...
This reverts commit c3489d4ded .
2025-07-29 18:22:17 +02:00
Leon Friedrich
c3489d4ded
Add WeakEntityReference ( #5577 )
...
* Add WeakEntityReference
* Use NetEntity
* release notes
* A
* Fix merge conflicts
* comments
* A
* Add network serialization test
* Add ToPrettyString support for WeakEntityReference?
* inheritdoc
* Add GetWeakReference methods
* Not-nullable too
* Make EntitySystem proxy method signatures match EntityManager
* Add TryGetEntity
* interface
* fix test
* De-ref GetWeakReference methods
---------
Co-authored-by: Tayrtahn <tayrtahn@gmail.com >
2025-07-29 11:12:49 -04:00
DrSmugleaf
8498634993
Add tests for immutable dicts and sets ( #6109 )
2025-07-29 01:17:29 +02:00
Pieter-Jan Briers
cdd3afaa4c
Remove redundant custom math types ( #6078 )
...
Vector3, Vector4, Matrix4, and Quaternion are now gone. Use System.Numerics instead.
This commit is just replacing usages, cleaning up using declarations, and moving over the (couple) helpers that are actually important.
2025-07-23 01:15:27 +02:00
slarticodefast
fee67b648c
Allow AutoNetworkedField to work with inherited datafields ( #6090 )
...
* allow AutoNetworkedField to work for inherited datafields
* fix
* test fix
* typo
* Update Robust.UnitTesting/Shared/GameState/AutoNetworkingTest.cs
---------
Co-authored-by: Pieter-Jan Briers <pieterjan.briers@gmail.com >
2025-07-23 01:15:12 +02:00
Tayrtahn
3c48b24539
Cleanup prototype instantiation warnings in unit tests ( #6058 )
2025-07-22 20:32:49 +02:00
āda
2349728eab
out of my element ( #6074 )
...
Co-authored-by: iaada <iaada@users.noreply.github.com >
2025-07-10 12:43:51 +02:00
Tayrtahn
dc3705e520
Add ForbidLiteral to IPrototypeManager methods ( #6066 )
...
* Add ForbidLiteral to IPrototypeManager methods
* Cleanup violations
2025-07-06 20:27:32 +02:00
Tayrtahn
a45b72a1c5
IRobustCloneable and generator support ( #5692 )
...
* Add IRobustCloneable and check for it in compnet generator.
* Redo compnetgenerator support; add test
* Disconnect client at end of test
* Actually test for client entities
* Cleanup
* Cleanup 2
2025-06-27 20:37:43 +02:00
Leon Friedrich
c6a1d82bb1
Validate that Toolshed command arguments have parsers ( #6014 )
...
* Add Nullable<T> support to ToolshedManager.TryParse
* Check that command arguments are parseable
* release notes
* a
* A is for Array
* Fix test
* Fix indentation
2025-06-09 23:47:29 +10:00
slarticodefast
00494ad9eb
fix TryQueueDelete ( #5996 )
2025-06-05 22:34:50 +10:00
Tayrtahn
6d46d3f4a5
Cleanup most warnings in unit tests ( #5946 )
...
* 2 warnings in JointDeletion_Test
* 1 warning in Collision_Test
* 2 warnings in Color_Test (deleted test of deprecated HCY color space)
* 1 warning in MapVelocity_Test
* 2 warnings in MapManager_Tests
* 2 warnings in MapPauseTests
* 1 warning in NetDisconnectMessageTest
* 1 warning in ContainerTests
* Suppress 1 warning in EntityEventBusTests.ComponentEvent
* 4 warnings in MapGridMap_Tests
* 1 warning in GridDeletion_Test
* Remove TryGetContainingContainer foolishness
---------
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com >
2025-05-29 00:12:58 +10:00
metalgearsloth
986b0f979d
Fix physics forces not autoclearing ( #5978 )
...
* Fix physics forces not autoclearing
* Changes
2025-05-29 00:04:55 +10:00
metalgearsloth
ee8ea4ec3b
Purge PhysicsMapComponent ( #5766 )
...
* Replace PhysicsMapComponent
- Dumb idea
- Lots of book-keeping and perf overhead.
- Much saner this way.
* stuff
* More work
* Purge
* Fixes
* Eh?
* Fixes
* Also this
* weh
* Fixes
* ice-cream
* Fix
* Fix stacking / gravity
* Gravity query
* MoveBuffer optimisations
* Fixes for test
* World gravity
* Fix build
* Avoid some transform resolves for contactless ents
* Less getcomps
* Fix contact caching
* Possibly less copies
* reh
* bulldoze
* Test "fix"
* seikrets
* a
* I saw this but now I decideded against it
* true
2025-05-28 19:18:36 +10:00
slarticodefast
7482451ec4
optimize ToMapCoordinates ( #5953 )
2025-05-28 12:07:23 +10:00
Tayrtahn
5c97b15849
Mark Entity methods as readonly ( #5919 )
...
* Mark Entity methods as readonly
* Add to GenericEntityPrint
* No but really
2025-05-15 20:23:29 +10:00
metalgearsloth
73f6555624
Fix static ent collision spawn ( #5933 )
...
* Fix static ent collision spawn
* Fix test
* cool
2025-05-15 19:11:20 +10:00
Leon Friedrich
4d47cfa1a6
Minor respath improvements ( #5876 )
...
* Minor respath improvements
* Add helpers
* tweak helper
* Throw on more than 1 char
* comments
* No emoji separators
2025-05-12 13:04:40 +10:00
Errant
eb5ed12270
Serialize TimeSpan from text ( #5865 )
...
* timespanserializer cleanup
* string reading
* high speed, low drag
* unit tests
* Update Robust.Shared/Serialization/TypeSerializers/Implementations/TimespanSerializer.cs
---------
Co-authored-by: Pieter-Jan Briers <pieterjan.briers@gmail.com >
2025-05-05 00:57:01 +02:00
Leon Friedrich
806c23e034
Move EntityExt.AsNullable extension methods into the Entity struct ( #5899 )
...
* Move `EntityExt.AsNullable` extension methods into the Entity struct
* use constructor
* a
2025-05-04 01:24:23 +02:00
metalgearsloth
e80f5d13a1
Add Vector2i / bitmask conversions ( #5901 )
...
Content uses for a couple tile-based flags.
2025-05-04 01:23:04 +02:00
Milon
3bbe0e7f44
ftl hot reloading ( #5874 )
...
* sloth is so going to kill me
* the voices in my head told me to do this
* Register ILocalizationManagerInternal on client
* Avoid breaking change
* Cleanup
* Release notes
2025-04-26 22:38:56 +10:00
Tayrtahn
8f9e0f6bab
Fix warnings in PhysicsMap_Test ( #5884 )
2025-04-24 18:10:13 +10:00
Tayrtahn
3ed408de5d
Fix warnings in Joints_Test ( #5885 )
2025-04-24 18:09:27 +10:00
Leon Friedrich
3ce764311d
Make RobustIntegrationTest pool by default ( #5872 )
2025-04-20 17:53:55 +10:00
Leon Friedrich
2f8f4f2f7a
Make MappingDataNode use string keys ( #5783 )
...
* string keys
* obsoletions
* Fix ValueTupleSerializer
* Release notes
* fix release note conflict
* cleanup
* Fix yaml validator & tests
* cleanup release notes
* a
* enumerator allocations
* Also sequence enumerator alloc
2025-04-18 19:01:34 +10:00
Tayrtahn
7365a59bd9
Cleanup warnings in CollisionWake_Test ( #5847 )
2025-04-18 12:05:48 +10:00
Whatstone
919de8ce0e
SharedPhysicsSystem.Island: set position after velocity ( #5801 )
2025-04-09 01:10:17 +10:00
metalgearsloth
ae625ebad8
Inline manifold points ( #5794 )
...
* Inline manifold points
Max is 2 so no reason to use an array over a fixedarray.
* this
2025-04-02 00:04:51 +11:00
Tayrtahn
f244c94905
Switch from checking comp.Owner == ent to GetComp(ent) == comp ( #5776 )
2025-03-27 15:21:05 +11:00
Tayrtahn
01cac6465b
Cleanup warnings in EntityCoordinates_Tests ( #5771 )
...
* Fix warnings
* Use transform refs to simplify WithEntityId
2025-03-27 15:20:20 +11:00
Tayrtahn
089224cd44
Cleanup warnings in EntityLookup_Test ( #5775 )
...
* Replace MapManager.DeleteMap calls with MapSystem.DeleteMap
* Remove unused resolves
2025-03-27 15:07:05 +11:00
Tayrtahn
dacaa974d4
Replace MapManager.DeleteMap with SharedMapSystem.DeleteMap in misc tests ( #5777 )
...
* Replace MapManager.DeleteMap with SharedMapSystem.DeleteMap in various tests
* Poke tests
* I guess this is was technically a breaking change?
2025-03-27 13:50:56 +11:00
Tayrtahn
4529a7569a
Replace uses of ProtoId<EntityPrototype> with ProtoId<EntityCategoryPrototype> ( #5762 )
2025-03-21 04:08:12 +01:00