userConnacancel
branchsbox/mastercancel

522 Commits over 1,461 Days - 0.01cph!

7 Months Ago
More accurately synchronize Time.Now between clients. Fixes Facepunch/sbox-issues#6326 (at least with the repro they attached.)
7 Months Ago
Fixed Sync attribute / CodeGenerator wrapped properties ignoring existing modifiers (Fixes Facepunch/sbox-issues#5867)
7 Months Ago
Delta Snapshot Slots (#1660)
7 Months Ago
Only run logic in SceneNetworkSystem.OnBecameHost if scene is valid - we could just be in a lobby/party but not in-game
7 Months Ago
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)
7 Months Ago
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.
7 Months Ago
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
8 Months Ago
Fix deserializing across network when GameObject reference on a property doesn't exist on the receiving end
8 Months Ago
Better warning messages on unknown component / gameobject for RPC - try to log the RPC method name, and if unknown component the GameObject name
8 Months Ago
Don't need to use the RPC filter here this should fix Tony's issue - doing a check inside the RPC callback anyway Fix parent setting, flush for appropriate game object only, ++
8 Months Ago
This isn't needed
8 Months Ago
Add undo support / unsaved changes to advanced network settings
8 Months Ago
Clearer logic for these flags Only log this message if networking debug is on
8 Months Ago
Re-enable Nagle by default, Protocol++
8 Months Ago
Component RPCs sent Id instead of type name string allowing RPCs from multiple components of the same type. Protocol++
8 Months Ago
Make sure we do include reliable transform update when changing ownership
8 Months Ago
Squashed commit of the following: commit 76f039bef3ee819f4b5e0b34179223405196d5bd Author: kurozael <kurozael@gmail.com> Date: Tue Aug 6 15:50:41 2024 +0100 Cleanup commit 7559957d809b94986d20f93f417f69194138782a Author: kurozael <kurozael@gmail.com> Date: Tue Aug 6 15:43:55 2024 +0100 Some logs commit ed9cb58705a97c3889d8d7a4ef97d8895b93dc98 Author: kurozael <kurozael@gmail.com> Date: Tue Aug 6 15:04:35 2024 +0100 Remove debug log commit 91c006383091050f87ac0a75b70df02e9ac17498 Author: kurozael <kurozael@gmail.com> Date: Tue Aug 6 14:54:41 2024 +0100 Remove debugging - fix spike when flushing pending updates commit a681e665208d87bc99c82ffb9865abc24365caa5 Author: kurozael <kurozael@gmail.com> Date: Tue Aug 6 14:43:32 2024 +0100 Fix flags commit 5eee6683b66a3b38390605a1f7ba72aaf51cc68a Author: kurozael <kurozael@gmail.com> Date: Tue Aug 6 14:34:28 2024 +0100 More debug commit f35802593b1e9af772bf91a3eb451cb6c1c6dc3a Author: kurozael <kurozael@gmail.com> Date: Tue Aug 6 14:30:52 2024 +0100 Debugging commit 42e0e1d3d06f4cce830c530e7b2e3943b94921e4 Author: kurozael <kurozael@gmail.com> Date: Tue Aug 6 12:52:35 2024 +0100 ++ commit d2402c9253ef520bdea0b141a393d0baa72a8d82 Author: kurozael <kurozael@gmail.com> Date: Tue Aug 6 12:46:25 2024 +0100 Initial commit
8 Months Ago
Actually log the result code from SendMessageToUser so can debug issues here
8 Months Ago
NetworkSpawnRemote after all NWOs from snapshot deserialized but before callback batch to ensure references exist ( Fixes Facepunch/sbox-issues#6086 )
8 Months Ago
Missed a spot
8 Months Ago
Add global:: to generated code for attributes with CodeGenerator ( Fixes Facepunch/sbox-issues#6055 )
8 Months Ago
Reliable heartbeat
8 Months Ago
Branch for experimenting and fucking around with networking w/ diagnostics Test trying to reduce packet sizes a lot Only do parent rpc if we're network root Change order here Go back to reliable test Test Reduce initial size Test unreliable again Unreliable transform updates test Prevent calling Msg_ClearInterpolation for ourselves Fix drop older updates Fix Remove this log When flushing pending updates before RPC calls - send reliable transform update Move net stats drawing out into system Only flush pending updates on reliable RPCs Some docs Don't call set parent if we called the rpc Call these flags Transmission maybe Some refactor, try to branch out with convar where possible Make internal for now Remove net_experiment convar Network protocol++ Send if unreliable anyway - should be acceptable it'll either drop or not
8 Months Ago
Make net_debug work in game
8 Months Ago
Remove queue system - make minimumState Snapshot instead of Connected for broadcastraw
8 Months Ago
Initial commit test Make it not dumb ToString override Add name for debug Output addr Draw some of the info with gizmos - tho doesn't render in non-editor mode rn Print network info cmd net_info includes own connection Make GetStats internal for now - could be useful public later Use display name
8 Months Ago
Prefab instances must be updated to have at least the tags specified in their prefab (Fixes Facepunch/sbox-issues#5729)
8 Months Ago
Fixed not being able to edit these advanced networking settings in prefab editor - working around NetworkAccessor ref struct
8 Months Ago
Let's remove these exceptions - let us try to call RPCs on components that don't have a networked object root, as long as a GO and Component exists on the other end with those ids, we should allow it
8 Months Ago
Initial commit Call flush here Don't set to connected until Activate Undo that Flush for source here too Only queue messages after Snapshot (otherwise ignore) and send when Connected. Add new docs to broadcast By default queuedUntilState is null Remove debug logs Use new ByteStream( data ) instead of create w/ length then write Optimization to remove queues when no longer required (cheers Ziks)
9 Months Ago
Remove BytePack.ISerializer from Connection for now - need to solve something first
9 Months Ago
BytePack.ISerializer implementation for Connection. Also make sure we clear Connection._mockConnections on ResetEnvironment because I think this dictionary would never clear otherwise. Remove long-time unused net_lerptime ConVar.
9 Months Ago
Byte Pack Convert - Networked GameObject, Component, GameResource References (#1618) * Add add IBytePackConvert to a class to specify how it should be serialized/deserialized with BytePack (similar to IJsonConvert). Implement for GameObject. * Add IBytePackConvert support to Component and GameResource * We should be able to null these out * Some comments on ConverterPacker to describe its use * Let's move it out of Sandbox and call it BytePack.ISerializer - it won't be exposed to public API (for now?) * Makes sense to rename to SerializerPacker so it matches ISerializer * Explicit implementations of BytePackRead and BytePackWrite means we can have these non-public * Add test for BytePack.ISerializer with MySerializedClass * Some minor doc change * Tidy
9 Months Ago
Only serialize NetworkMode, NetworkInterpolation, NetworkOrphaned and OwnerTransfer in GameObject.Serialize if they are not their default values
9 Months Ago
Fixed static Authority RPC checking permissions against the wrong attribute and messages should be sent to the host and not broadcast
9 Months Ago
Check index is >= 0 or <= Count when using ObservableCollection<T>.Insert in NetList - otherwise use Add instead
9 Months Ago
Inspector Advanced Network Settings (#1617) * Start adding support to edit Network Orphaned and Owner Transfer options in Inspector (visible when Network Mode is set to Object) https://files.facepunch.com/conna/1b0311b1/sbox-dev_I7Fk7tfs6K.png * Make sure NetworkOrphaned and OwnerTransfer modes get serialized / deserialized * Move over to setting NetworkOrphaned/OwnerTransfer on the GameObject directly (with multi-select) * Move out to its own widget - this is gonna be a button that drops down for advanced network settings * Adv network settings button next to Network Mode in inspector - opens drop down menu to set net orphaned mode / owner transfer mode * Store current val outside scope * Modify style * Add RadioSelect widget for use with advanced network settings as it makes sense ( https://files.facepunch.com/conna/1b0911b1/sbox-dev_Ej9Kk8WU3y.mp4 ) * Disable the option to open the menu if NetworkMode is not Object - no point allowing to change these settings for objects that arent networked
9 Months Ago
Clearer exceptions
9 Months Ago
Ensure we properly network ownership changes during network orphaned actions
9 Months Ago
Keep project loading stuff together and make sure we load initial collision rules after project settings file system is mounted (Fixes Facepunch/sbox-issues#5739)
9 Months Ago
Closes Facepunch/sbox-issues#5566
9 Months Ago
Throw exception when sending RPC on non-networked Game Objects (Closes Facepunch/sbox-issues#5504)
9 Months Ago
Fixed potential NRE in AudioListener component when scene camera isn't valid (yet)
9 Months Ago
Fix overlapping Reset to Default on ControlSheet with Reset Transform context menu. Add individual reset Position/Scale/Rotation on Transform context menu (Fixes Facepunch/sbox-issues#4867)
9 Months Ago
Fix issue with new local instance on "local" package to do with small network files
9 Months Ago
Remove from interpolation system on GameObject destroy
9 Months Ago
Call TransformChanged() once again in InterpolateFixedUpdate Clear pending updates in SceneNetworkUpdate too Make sure we use TargetLocal in any transform changed callbacks called from within interpolation phase to fix physics bodies using wrong values. Add internal InterpolationWorld getter in GameTransform and use that in ModelRenderer OnTransformChanged for updating scene object position (fixes broken interp.)
9 Months Ago
PhysicsWorld.CollisionRules Refactor - Project Settings Small Network Files Support (#1604) * Add PhysicsWorld.CollisionRules getter. Delete ServerConfig. Update collision rules json on world if hash changes before physics step. Project Settings (.config) are networked via Small Network Files - can react to changes * Do GetHashCode this way * Initialize CollisionRules * Handle small network files from different file systems this way? * Fix * Fix documentation * Reset config files * Kind of genericize SmallNetworkFiles - push / add / remove files from it externally - mount its MemoryFileSystem externally as well to desired file system * Fix - but obviously it can't be done this way it's absolutely awful * Add all files from network when mounting on client side * Method name update * Remove some duplication * Cleanup * Fix inverted condition * Unnecessary arg * ToHashCode * ReadWithFallback will return new T() if package is null too * Store CollisionRules from Project Settings in ProjectSettings static class - update it when project settings change. Physics worlds using this reference should update automatically * Call ProjectSettings.Reset in ResetEnvironment * Clean up * Swap these
10 Months Ago
When deserializing a GameObject create components in a try/catch and log an error if it fails. If no component could be created, add a missing component. Fixes not being able to open a prefab if there's an error in the constructor of a component. Closes Facepunch/sbox-issues#4397
10 Months Ago
Add Package.FileSize (MB) ( Closes Facepunch/sbox-issues#4908 )