The mod is in the very early stages of development however, a solid foundation has been laid for the community to iterate on. * Replaced SunbeamEvent enum by a static class and added some commentsĪn open-source, multiplayer modification for the game Subnautica. * Removed sync and persistence of entity scan progress * Added many comments, separated StoryManager and TimeKeeper, grouped server-side entity destruction, refactored many things * Added comments and inlined a property in uSkyManager_SetVaryingMaterialProperties_Patch * Used implicit conversion of MethodInfo in patches using instruction pattern API * Added implicit conversion from MethodInfo to InstructionPattern * Changed pattern in DevConsole_Update_Patch to use support for Reflect API * Used Reflect API for pattern in uSkyManager_SetVaryingMaterialProperties_Patch * Added InstructionPattern.Call(MethodInfo method) for Reflect API support * Various minor changes (comments, float rounding, type convenience, dictionary instantiating) * Changed locks in PDAStateData to avoid deadlocks * Replace $ strings by ToString() when possible * Optimized schedule remove in StoryGoalExecutedClientProcessor * Optimized PDAScanFinishedProcessor.Process with list.RemoveAllFast() * Added RemoveAllFAst extension method for IList types * Add basic sync for sunbeam commands (needs more fixes) * Remove the class constraint in Reflect API * Reworked completely the PDAScanner sync/restoring ![]() ![]() * Rework the syncing of StoryGoal execution, KnownTech and PDAEncyclopedia completion and slightly modified the scheduling prevention * Corrected ThreadSafeSet.Add to return a bool * Cleaned EventTriggerer from the event timers and renamed to StoryManager and refactored the required stuff ![]() * Change time calculations to be on Update() and fixed skybox freezing clouds during game freezing * First steps into syncing/saving sunbeam events * Prevent EventTriggerer (server-side) to start aurora events timers and time tracking when server starts * Sync some more goals (GoalManager) and add some refreshers for classes that didn't get updated accordingly * Restore the CompletedGoals and the states of every tracker (untested) * Now send a time packet update to all players when time tracking is resumed * Quickly reworked ScheduledGoals and reordered StoryGoalInitialSyncProcessor * Now start track of time only when a player has fully connected (PlayerSyncFinished) * Changed time to be calculated so that it no longer on the client's performances * Changed the way InitialSyncProcessor processing works (dit not deprecate old way yet) Story/Goals persistence overhaul ( #1967 ) * Refactored ElapsedTime to ElapsedSeconds and added some data to initial sync (concerning story and time)
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |