186392ea80
Refactor grid or map methods ( #5124 )
...
* Rename TryGetMapOrGridCoordinates to make it clearer it gets grid first
* Add terminating or deleted checks to TryGetGridOrMapCoordinates
* Add comment to check if TerminatingOrDeleted check is necessary
* Reorganize AttachToGridOrMap to match TryGetGridOrMapCoordinates
* Move validation to method
* Replace internals with TryGetGridOrMapCoordinates
* Explicitly set coordinates type
* Format
* Change name back for now
* Don't duplicate `TerminatingOrDeleted()` check
* Don't call `GetInvWorldMatrix` for the map
* Don't check `TerminatingOrDeleted(uid)` in `TryGetMapOrGridCoordinates()`
* Fix parenting to terminating grid
* Fix matrix error
---------
Co-authored-by: ElectroJr <leonsfriedrich@gmail.com >
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com >
Co-authored-by: PJB3005 <pieterjan.briers+git@gmail.com >
2025-09-11 18:05:04 +10:00
DrSmugleaf and GitHub
c7ea2793ca
Fix TransformComponent state handling changing the coordinates of detached entities ( #6006 )
...
* Fix TransformComponent state handling changing the coordinates of detached entities
* Make ResetPredictedEntities not handle state for detached entities
2025-06-09 17:44:36 +10:00
Tayrtahn and GitHub
7b571dc80e
Fix 2 instances of warning CS0162 ( #5951 )
2025-05-23 17:37:08 +02:00
metalgearsloth and GitHub
6086076559
Avoid checking grid traversal for rotation events ( #5778 )
...
* Avoid checking grid traversal for rotation events
* Also this one
2025-05-10 22:01:43 +10:00
a3d0921cc9
Pause entities that leave PVS range ( #5878 )
...
* Pause entities that leave PVS range
* Fix merge
---------
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com >
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com >
2025-05-10 21:57:04 +10:00
1d0404953f
Add GridUidChangedEvent and MapUidChangedEvent ( #5893 )
...
* Add GridUidChangedEvent and MapUidChangedEvent
* cleanup
* Fix assert
* more fixes
* docs
* record struct
* Use implicit tuple constructor
* stinky review
---------
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com >
2025-04-30 18:36:53 +10:00
metalgearsloth and GitHub
04406311dc
Use EntityQuery for map / grid calls ( #5869 )
...
Avoids the type lookup etc etc.
2025-04-20 12:59:06 +10:00
Kyle Tyo and GitHub
ee45a608b9
Replace IsMap and IsGrid calls with HasComp ( #5866 )
2025-04-20 12:21:19 +10:00
fbc706f37b
Refactor map loading & saving ( #5572 )
...
* Refactor map loading & saving
* test fixes
* ISerializationManager tweaks
* Fix component composition
* Try fix entity deserialization component composition
* comments
* CL
* error preinit
* a
* cleanup
* error if version is too new
* Add AlwaysPushSerializationTest
* Add auto-inclusion test
* Better categorization
* Combine test components
* Save -> TrySave
Also better handling for saving multiple entities individually
* Create new partial class for map loading
* Add OrphanSerializationTest
* Include MapIds in BeforeSerializationEvent
* Addd LifetimeSerializationTest
* Add TestMixedLifetimeSerialization
* Add CategorizationTest
* explicitly serialize list of nullspace entities
* Add backwards compatibility test
* Version comments
also fixes wrong v4 format
* add MapMergeTest
* Add NetEntity support
* Optimize EntityDeserializer
Avoid unnecessary component deserialization
* fix assert & other bugs
* fucking containers strike again
* Fix deletion of pre-init entities
* fix release note merge conflict
* Update Robust.Shared/Map/MapManager.GridCollection.cs
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com >
* VV
---------
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com >
2025-02-16 21:25:07 +11:00
Tayrtahn and GitHub
fec81bc2a1
Add more info to AnchorEntity debug assert ( #5668 )
2025-02-16 03:16:23 +01:00
51edceae4d
Ensure parents are always initialized & started before children ( #5595 )
...
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com >
2025-01-29 23:16:14 +11:00
af6cac14d6
Add CollisionPredictionTest ( #5493 )
...
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com >
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com >
2025-01-27 21:23:23 +11:00
metalgearsloth and GitHub
82c94fc8b0
transform traversals ( #5564 )
2024-12-21 15:49:43 +11:00
Kara and GitHub
48d70a09c6
Remove most fully-obsoleted code ( #5433 )
2024-09-11 19:38:26 +10:00
Pieter-Jan Briers
fd3eb092cc
EntityUid-only overloads for some TransformSystem methods
...
AnchorEntity and Unanchor
2024-09-02 05:37:49 +02:00
Leon Friedrich and GitHub
60a29933d8
Try fix broadphase bug ( #5342 )
...
* Try fix broadphase
* I love initialization pasta
2024-08-07 20:07:57 +10:00
Pieter-Jan Briers and GitHub
05cdb99252
Warning fixes around IMapManager.GetMapEntityId ( #5298 )
...
* Add MapSystem.GetMapOrInvalid
This is effectively the same exact behavior as IMapManager.GetMapEntityId. Adding this so I don't have to consider whether warning fixes using MapSystem.GetMap() instead would change behavior.
* Warning fixes around IMapManager.GetMapEntityId
* Fix tests
2024-07-13 15:27:32 +10:00
Pieter-Jan Briers and GitHub
7fbcfeaa8f
Warning fixes ( #5275 )
...
* Warning fixes in Robust.Shared
* Robust.Client warning fixes
* Fix test failure
Test failures were due to broken system registrations for the client RobustUnitTest. It was accidentally registering some server systems, which means DebugPhysicsSystem wasn't gettings its dependencies properly.
Fixing this meant pulling half a dozen extra dependencies that client ContainerSystem and TransformSystem are supposed to have, but didn't.
2024-07-10 01:38:32 +02:00
eoineoineoin and GitHub
56c30edf04
Replace Matrix3 with System.Numerics.Matrix3x2 ( #5078 )
...
* Delete Matrix3. Replace with System.Numerics.Matrix3x2
* Feedback
* release notes
2024-06-02 14:08:47 +10:00
metalgearsloth and GitHub
dd56de70b7
Fix grid-based audio ( #5087 )
...
* Fix grid-based audio
- Fixes parenting issues.
- Add SetGridAudio as an easy way to set it up and apply the override too.
* No more global
* Rejig it all
* mergew
* review
* Minor optimisation
* Revert "Minor optimisation"
This reverts commit d0cdac7690 .
2024-05-29 16:14:37 +10:00
metalgearsloth and GitHub
ae83e606d6
Add SetWorldRotNoLerp method ( #5091 )
...
* Add SetWorldRotNoLerp method
I neeeeed it.
* Also this one
* dum
2024-05-02 12:14:27 +10:00
Leon Friedrich and GitHub
25211e3781
Improve transform & state handling exception tolerance ( #5081 )
...
* Improve transform & state exception tolerance
* release notes
* Fix pvs assert
* Fix velocity conservation
2024-04-29 18:42:05 +10:00
Nemanja and GitHub
4504731588
Add a method in SharedTransformSystem for swapping the position of two entities ( #4988 )
...
* swap pos method
* no forcing
* Sluth review
* weh
2024-04-29 13:45:12 +10:00
b624f5b70f
Add SetMapCoordinates ( #5065 )
...
* add set map coordinates function
* mmmmmmm yes
* Update Robust.Shared/GameObjects/Systems/SharedTransformSystem.Component.cs
---------
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com >
2024-04-24 22:55:58 +10:00
Leon Friedrich and GitHub
d5c4981648
Partial MapManager refactor ( #5042 )
...
* MapManager rejig
* Update Tests
* A
2024-04-18 14:05:02 +10:00
metalgearsloth and GitHub
cd24fd46b6
Default worldpos to null ( #5036 )
...
I think this is slightly more robust than defaulting to 0 actually while still fixing the issue.
2024-04-14 14:47:30 +10:00
metalgearsloth and GitHub
44cc7127fa
Default SetWorldPos to 0 rotation ( #5034 )
...
More closely aligns with the old default.
2024-04-14 14:28:16 +10:00
Leon Friedrich and GitHub
0c271fc2f8
Remove uneccesary Exists() checks in container system ( #5031 )
...
* Remove `Exists()` checks in container system
* A
* A
2024-04-08 01:24:09 +02:00
metalgearsloth and GitHub
c38a14e78f
WorldPos review fix ( #5011 )
...
Forgot I merged ghub and tried pushing and didn't check it failed.
2024-03-29 16:56:25 +11:00
c79217ab66
Rework SetWorldPosition ( #4915 )
...
* Remove ents from containers for worldpos updates
Avoids bugs from content not checking for this every time. Physics and anything else important manually uses localposition updates so shouldn't adversely impact performance that much.
* Fixes
* Fix grid pos
* Also fix the joint setter
* Add both
* Update Robust.Shared/GameObjects/Systems/SharedTransformSystem.Component.cs
Co-authored-by: Leon Friedrich <60421075+ElectroJr@users.noreply.github.com >
---------
Co-authored-by: Leon Friedrich <60421075+ElectroJr@users.noreply.github.com >
2024-03-29 16:49:26 +11:00
Leon Friedrich and GitHub
83371885fa
Support transform states with unknown parents ( #4972 )
2024-03-17 11:28:50 +11:00
metalgearsloth and GitHub
7aa951ca48
Add undetachable PVS flag ( #4889 )
...
Useful in some rare cases, mainly for grid-related activities.
Specifically:
- Audio entity where we never want it detached.
- FTL previs effects to show impending squish.
2024-03-16 14:58:08 +11:00
metalgearsloth and GitHub
59b3ffda4f
Add grid merging ( #3627 )
...
* Add grid merging
* More preliminary cleanup
* Fixes
* Fixes
* weh
* tweaks
* Tests
* weh
* Fix direction test
* Release notes
2024-01-21 17:41:04 +11:00
Leon Friedrich and GitHub
f4faa1ad3d
Run grid traversal on entity spawn ( #4796 )
...
* Run grid traversal on entity spawn
* Add test
* Fix tests
2024-01-02 17:25:13 +11:00
Leon Friedrich and GitHub
eba58cb893
Remove RobustTree & PVSCollection ( #4759 )
...
* Cut down RobustTree
* Better LoD
* Add PvsPriority flag
* Undo cvar name change
* reorganize grafana metrics
* Fix tests
* Fix replays
* Don't try process empty chunks
* Fix move benchmark
* Fix benchmark
* Remove obsolete audio methods
* Moar benchmarks
* Rename EntityData
* A
* B
2023-12-28 09:10:13 +11:00
Kara and GitHub
d416344aef
MoveEvent broadcast -> C# event ( #4732 )
...
* MoveEvent broadcast -> C# event
* Broadcast MoveEvent -> C# event
* oops
* forgob
* release notes
* Update description of moveevent
2023-12-19 12:26:13 +11:00
bc84590a33
Make ChildEnumerator out value non-nullable ( #4707 )
...
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com >
2023-12-17 03:10:20 +11:00
250f6ca7db
Obsolete TransformComponent.ChildEntities ( #4706 )
...
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com >
2023-12-14 17:50:29 +11:00
TemporalOroboros and GitHub
56899b4e64
Some ContainerManagerComponent ECSing ( #4622 )
2023-12-12 13:24:18 +11:00
metalgearsloth and GitHub
0296d9635c
Fix some grid setting asserts ( #4580 )
2023-12-11 19:49:55 +11:00
Leon Friedrich and GitHub
6f9ed8a242
Stop terminating entities from being prematurely detached to nullspace ( #4675 )
2023-12-10 13:18:42 +11:00
Leon Friedrich and GitHub
773b87672b
Fix terminating entity reparenting bug ( #4549 )
2023-11-08 15:39:08 +11:00
metalgearsloth and GitHub
2f6c29ab43
Add GetMapCoordinates to TransformSystem ( #4556 )
2023-11-07 20:23:05 -08:00
Leon Friedrich and GitHub
9e5c1e9c95
Change place-next-to helper methods ( #4506 )
2023-10-22 16:52:58 +11:00
Leon Friedrich and GitHub
f3af813b57
Transform interpolation fixes ( #4488 )
2023-10-17 23:47:45 +11:00
Leon Friedrich and GitHub
74831a177e
Don't attempt to insert entities into deleted containers ( #4424 )
2023-09-18 10:57:14 +10:00
metalgearsloth and GitHub
3fd731d917
Network entity ids ( #4252 )
2023-09-11 09:42:55 +10:00
Leon Friedrich and GitHub
98b1862433
Add new spawn functions ( #4280 )
2023-08-23 18:54:55 +10:00
metalgearsloth and GitHub
e67d0ad3d6
Xform stuff ( #4246 )
2023-08-08 11:55:56 +10:00
Leon Friedrich and GitHub
1c64fa1f28
Fix TransformSystem.SetCoordinates() error logs. ( #4245 )
2023-08-07 11:24:26 +10:00