metalgearsloth and GitHub
662a701ae1
MapSystem iterator cleanups ( #6843 )
2026-08-08 15:36:04 +10:00
AndrewFenriz and GitHub
c555dbc283
Do not serialize components pending removal ( #6891 )
2026-08-07 17:05:16 +10:00
9cd8401cfb
Serializer improvement and cleanup ( #6674 )
...
Co-authored-by: deltanedas <@deltanedas:goida.zip>
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com >
2026-07-24 00:57:13 +10:00
83c2a1be11
[Dependency] source generator part 2 ( #6550 )
...
* [Dependency] source generator
No more reflection, no more codegen at runtime
Also various changes to Roslyn helpers to make this easier to write.
Requires all types with dependencies to be partial and not have readonly dependency fields. An analyzer enforces this at warning level, the previous injection strategies have remained in the code *for now* as a fallback.
No fallback is available for [field: Dependency] properties, due to a Roslyn bug.
Code Fixes exist. We love Roslyn
* Apply dependencies generator changes to all code
* Release notes
* Preprocessor got hands
* Handle nullable dependencies
These are bad but gotta deal with it.
* Apply suggestions from code review
Co-authored-by: Moony <moony@hellomouse.net >
* Fine, let's not use collection expressions
---------
Co-authored-by: Moony <moony@hellomouse.net >
2026-05-08 12:38:33 +02:00
PJB3005
9b96e926d5
Fix doc comment in EntitySerializer
2026-05-07 17:51:12 +02:00
64baee0a22
Add support for including map/game saves in replays. ( #6189 )
...
* Improve map serialization error logging
* Prevent remove children of erroring entities
* better logging
* Improve error tolerance
* Even more exception tolerance
* missing !
* Add WriteYaml and WriteObject to IReplayFileWriter
* Add MapLoaderSystem.TrySaveAllEntities()
* On second thought, WriteObject will just be abused
* I forgot to commit
* Add default implementation to avoid breaking changes
* release notes
* fix merge issues
---------
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com >
2025-11-13 22:14:56 +11:00
Leon Friedrich and GitHub
4e2c0e431b
Fix MapLoaderSystem.SerializeEntitiesRecursive ( #6246 )
...
* Fix MapLoaderSystem.SerializeEntitiesRecursive
* a
* oops
2025-10-08 17:50:50 +13:00
Rouden and GitHub
ac45a0a64b
MapId, MapCoordinates, EntityCoordinates Type serializers ( #6165 )
...
* New Type Serializers
* Delete NetCoordinatesSerializer.cs
* Make EntityCoordinates and MapCoordinates use DataRecord
* Turn them into actual record structs
I'm somewhat surprised the DataRecord attribute doesn't check this
* Allocate MapIds before deserializing components
* Deserialize preallocated ids
* fix map merge assert
* remove old
* Use TryGetMap
* release notes
2025-10-06 15:27:08 +13:00
abd5149245
Improve map serialization error logging & exception tolerance ( #6188 )
...
* Improve map serialization error logging
* Prevent remove children of erroring entities
* better logging
* Improve error tolerance
* Even more exception tolerance
* missing !
* Improve handling of category errors
Helps prevents weird bugs that arise due to deleting un-initialized entities
* release notes
* Typo fix
---------
Co-authored-by: Pieter-Jan Briers <pieterjan.briers@gmail.com >
2025-09-17 21:44:56 +02:00
Pieter-Jan Briers and GitHub
dcbe0505dc
Revert "Add WeakEntityReference ( #5577 )" ( #6112 )
...
This reverts commit c3489d4ded .
2025-07-29 18:22:17 +02:00
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
metalgearsloth and GitHub
2c5604432b
Update some GetComponentName usages ( #5942 )
...
Rider tells me to use generic and generic one seems better.
2025-06-01 17:54:43 +10:00
Leon Friedrich and GitHub
34f4cf9452
More map validator fixes ( #5820 )
2025-04-14 13:55:02 +10:00
Southbridge and GitHub
15958a9447
Fix issue regarding Tilemaps not saving when modified ( #5696 )
...
* One line C# fix
* fixed typo
* after spending way too long trying to figure out the problem, turns out all we needed was a simple one line change
2025-02-22 17:33:33 +01: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