This repository was archived by the owner on Jun 17, 2025. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
…stom serialization headers for entities feat(Prima.Core.Server): create SerializationData class to handle serialization data feat(Prima.Server): implement PersistenceManager service for entity serialization feat(Prima.UOData): introduce BaseEntitySerializer for entity serialization feat(Prima.UOData): define interfaces for entity serialization and persistence management
…ializationEntryData to improve data serialization structure feat(PersistenceManager): add support for registering entity serializers and saving data to file asynchronously feat(IEntitySerializer): add Header and FileName properties to interface for serialization feat(BaseEntitySerializer): add Header and FileName properties to base serializer class for entities
…methods to write strings, Point2D, Point3D, and Serial types to a binary writer
…change magicNumber to byte array, add entitySerializersAsType dictionary for better entity type lookup feat(PersistenceManager.cs): remove DirectoriesConfig dependency from constructor, update SerializeAsync method to use entity type for serializer lookup feat(PersistenceManager.cs): update SaveToFileAsync method to use FileStream FileMode.CreateNew, update serialization process feat(PersistenceManager.cs): add DeserializeAsync method to read serialized data from file and deserialize into entities feat(ItemEntity.cs, MobileEntity.cs): add properties Name, Hue, Position to ItemEntity and MobileEntity classes feat(MobileEntity.cs): add Direction property to MobileEntity class feat(BinaryItemSerializer.cs): create BinaryItemSerializer for serializing and deserializing ItemEntity objects feat(BinaryMobileSerializer.cs): create BinaryMobileSerializer for serializing and deserializing MobileEntity objects feat(Direction.cs): create Direction enum for representing cardinal directions and movement feat(StreamWriterExtension.cs): add extension methods for writing and reading data using SpanWriter and SpanReader feat(Serial.cs): make Serial constructor public, add empty line feat(IPersistenceManager.cs): update SaveToFileAsync and DeserializeAsync methods to be generic for any ISerializableEntity feat(BinarySerializerTests.cs): create tests for saving and reading serialized MobileEntity objects
…readability refactor(BaseWorldEntity.cs): change class from abstract to non-abstract for consistency feat(ItemEntity.cs): add properties for Name, Hue, and Position to represent an item entity feat(MobileEntity.cs): add properties for IsPlayer and Direction to represent a mobile entity refactor(Serial.cs): remove unnecessary empty line for cleaner code style(Prima.UOData.csproj): remove unnecessary empty lines for cleaner project file perf(BinarySerializerTests.cs): update MaxSize constant value for more appropriate testing size
…erializableHeaderAttribute constructor as it is not used refactor(SerializationEntryData.cs): remove FileName property and related constructor parameters as it is not used refactor(PersistenceManager.cs): remove unused DeserializeAsync method refactor(PersistenceManager.cs): refactor SaveToFileAsync method to calculate and write checksum for data feat(ItemEntity.cs): remove fileName parameter from SerializableHeader attribute feat(MobileEntity.cs): remove fileName parameter from SerializableHeader attribute feat(StreamWriterExtension.cs): remove unused Write method for string feat(StreamWriterExtension.cs): remove unused ReadPoint, ReadPoint3D, Write methods feat(StreamWriterExtension.cs): remove unused ReadDirection method feat(BaseEntitySerializer.cs): remove FileName property as it is not used feat(BinaryItemSerializer.cs): refactor Serialize method to use BinaryWriter instead of SpanWriter feat(BinaryMobileSerializer.cs): refactor Deserialize method to use BinaryReader instead of SpanReader feat(BinaryMobileSerializer.cs): remove unused using statement for Orion.Foundations.Spans feat(BinarySerializerTests.cs): refactor test methods to create and read files for MobileEntity and ItemEntity
feat: add Autosave property to ShardConfig class to store AutosaveConfig feat: add IWorldManagerService interface for managing world entities feat: add WorldManagerService class to implement IWorldManagerService feat: add methods to WorldManagerService for adding and generating world entities feat: add tests for WorldManagerService to test adding mobiles and items
…Service interface for saving world data asynchronously feat(WorldManagerService): implement SaveWorldAsync method in WorldManagerService to autosave world data feat(WorldManagerServiceTests): add test case for SaveWorldAsync method in WorldManagerServiceTests to ensure successful saving of world data
…le world saving events feat(WorldManagerService): implement event handling for world saving events to improve data persistence and logging feat(WorldManagerServiceTests): update tests to include event bus setup for WorldManagerService instances
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
No description provided.