4,645 Commits over 1,310 Days - 0.15cph!
Optimize lookups - fix bug with reconnecting clients not processing snapshot
Clean up - make things more explicit in seperation of snapshot supported network table entries
Remove this obsolete - it's been obsolete forever
Stash all this work so I can make ubre happy
Stash this as well first
Custom (INetworkCustom such as NetList/NetDictionary) not including in delta snapshot for now as they handle this sort of thing themselves. Stepping stone
++
Logs
No wonder this wasn't getting received
Don't log these now
Test
Remove this now
Go on server time
Test
More tests
Some cleaning
Compress test
Remove for comparison
Pack them up
Some cleanup
Force a single delta snapshot when owner changes to simulate old behavior
Interp test
Revert that
Force a single delta snapshot when owner changes to simulate old behavior
Stash all this work so I can make ubre happy
Stash this as well first
Custom (INetworkCustom such as NetList/NetDictionary) not including in delta snapshot for now as they handle this sort of thing themselves. Stepping stone
++
Logs
No wonder this wasn't getting received
Don't log these now
Test
Remove this now
Go on server time
Test
More tests
Some cleaning
No wonder this wasn't getting received
Custom (INetworkCustom such as NetList/NetDictionary) not including in delta snapshot for now as they handle this sort of thing themselves. Stepping stone
Only run logic in SceneNetworkSystem.OnBecameHost if scene is valid - we could just be in a lobby/party but not in-game
Stash all this work so I can make ubre happy
Stash this as well first
If GameObject isn't valid when trying to call an RPC, call the method anyway but only if we can determine that we have permission to do so - this way we can ensure RPC methods are still not called when they shouldn't be for any given user. (Fixes Facepunch/sbox-issues#6270)
Fixed an issue where if you're Small Fish and disconnect yourself from a created lobby immediately by calling GameNetworkSystem.Disconnect in OnLoad, a TCP socket would remain open preventing you from starting a lobby again. This is because Disconnect is called before the asynchronous method CreateLobbyAsync has finished, so it goes and adds/creates new sockets that never get closed.
Stash all this work so I can make ubre happy
No need to store as Base64 encoded string anymore
Refactor to use Component.INetworkSnapshot for sending initial world data
Idea for custom writing / reading data to snapshot per component (if it overrides those methods)
Some docs
Explicit ISnapshotWriter interface
Read snapshot immediately - no need for this prop
Dispose ByteStream properly
Rename to INetworkSnapshot
Component.INetworkSnapshot - improve some docs
Component.INetworkSnapshot - improve some docs
Idea for custom writing / reading data to snapshot per component (if it overrides those methods)
Some docs
Explicit ISnapshotWriter interface
Read snapshot immediately - no need for this prop
Dispose ByteStream properly
Rename to INetworkSnapshot
Rename to INetworkSnapshot
Dispose ByteStream properly
Read snapshot immediately - no need for this prop
Explicit ISnapshotWriter interface
Set Orphaned Mode on the Cue to Host
Do the same for other runtime spawned network objects
Remove random using statement
Added VoxelChangeListener. Listen for modifications within any volume. Added TestListenerComponent
Use block type icon and tint color for inventory icons if applicable
Add items for the 4 current block types
Blocks must specify item type if want to drop
Fixed position for dropped block
Fixed block item temp world model