userConnacancel
reposboxcancel

1,298 Commits over 1,371 Days - 0.04cph!

10 Months Ago
Component Ids (#1501) * Component id + prune those for refresh as well * Serialize id properly * Add unit tests for component id serialization / deserialization - make sure references to Components with Property are properly restored to the correct components by id * Update GameObjectInspector to use Component.Id to determine already seen components. This makes it rebuild properly for multiple components of the same type * Serialize as Id not __id so also picked up by MakeGameObjectsUnique * Scene unique component ids - update serialization test accordingly * Phase out storing GO guid and component type * MakeGameObjectsUnique -> MakeIdGuidsUnique (make old method Obsolete and redirect to MakeIdGuidsUnique) * Unit test for clone with references * When adding component or game object to Directory - check is there a component or game object with that id already, if so, force change it to a new one and spit a warning out. No component or game object should ever be able to share the same guid anyway but this makes sure * Add test for loading old reference model type from prefab / json * Test both old and new formats * Let's not make this elseif - always check both
10 Months Ago
Let's not make this elseif - always check both
10 Months Ago
Test both old and new formats
10 Months Ago
Add test for loading old reference model type from prefab / json
10 Months Ago
Allow both Sync and HostSync on a property. It means that both the Owner and the Host can control the value. Fixes Facepunch/sbox-issues#5153
10 Months Ago
Phase out storing GO guid and component type MakeGameObjectsUnique -> MakeIdGuidsUnique (make old method Obsolete and redirect to MakeIdGuidsUnique) Unit test for clone with references When adding component or game object to Directory - check is there a component or game object with that id already, if so, force change it to a new one and spit a warning out. No component or game object should ever be able to share the same guid anyway but this makes sure
10 Months Ago
Serialize as Id not __id so also picked up by MakeGameObjectsUnique Scene unique component ids - update serialization test accordingly
10 Months Ago
Update GameObjectInspector to use Component.Id to determine already seen components. This makes it rebuild properly for multiple components of the same type
10 Months Ago
Add unit tests for component id serialization / deserialization - make sure references to Components with Property are properly restored to the correct components by id
10 Months Ago
Component id + prune those for refresh as well Serialize id properly
10 Months Ago
Initial commit Component id + prune those for refresh as well Serialize id properly OnRefresh Fix refresh for bones
10 Months Ago
OnDestroyInternal should be internal
10 Months Ago
Game Object Network Mode Selection https://files.facepunch.com/conna/1b0711b1/sbox-dev_G97N4pdA3q.png (#1495)
10 Months Ago
Fixes local interpolation jitter
10 Months Ago
Game Object Network Mode Selection https://files.facepunch.com/conna/1b0711b1/sbox-dev_G97N4pdA3q.png
10 Months Ago
Fixed a boo boo
10 Months Ago
ComponentFlags.NotNetworked. When a component has this flag, it won't be serialized in the scene snapshot or with a networked object when sent to other clients
10 Months Ago
Don't EditLog if we're not in the Editor. EditLog separate from BreakFromPrefab because we don't wanna do that just because we're spawning a networked object in a running scene.
10 Months Ago
Interpolation Fixes w/ Ownership Change (#1494) 🤞
10 Months Ago
This doesn't need to be internal anymore, was leftover from testing
10 Months Ago
Speeling
10 Months Ago
Only interp here if we're a proxy?
10 Months Ago
Test comment something out
10 Months Ago
Initial commit to fix interp issues and ownership change
10 Months Ago
Finally fixes Facepunch/sbox-issues#4716 - reloading Map Instance when recompiled in Hammer
10 Months Ago
Add support for expression bodied methods for CodeGen. Fixes Facepunch/sbox-issues#5025 Add test for expression bodied CodeGen method
10 Months Ago
When joing via new instance, Project.Current is null - this can break <style> because it can't get relative path of current file. Fix that by just using absolute path in that case. Remove unnecessary assert
10 Months Ago
Host can always drop ownership of a networked object Host can always network destroy a networked object
10 Months Ago
wasted 2 days on this, works-ish but absolutely horrific, stashing anyway
10 Months Ago
Fixed [Sync] vars on private properties in base classes not being registered. What a strange one! Fixes Facepunch/sbox-issues#4916
10 Months Ago
Determine fate of network objects when owner disconnects (#1463) * Can specify what happens to a network object when owner disconnects - don't love the naming * Unused usings * Some cleanup * DisconnectAction -> NetworkOrphaned. Same terms everywhere else. Add NetworkOrphaned.Random - randomly assign owner when owner disconnects - route this through the host though
10 Months Ago
DisconnectAction -> NetworkOrphaned. Same terms everywhere else. Add NetworkOrphaned.Random - randomly assign owner when owner disconnects - route this through the host though
10 Months Ago
Make it an interface
10 Months Ago
Correct order
10 Months Ago
Might not have an active scene
10 Months Ago
Remove this log
10 Months Ago
Bit cleaner perhaps
10 Months Ago
Testing something but its shit, stash it though
10 Months Ago
Some cleanup
10 Months Ago
Unused usings
10 Months Ago
Can specify what happens to a network object when owner disconnects - don't love the naming
10 Months Ago
Fixed Sync vars on derived component types not working
10 Months Ago
Host Sync Vars (#1462) * NetworkTable.Entry.HasControl test. Separate sending network table changes from main update. Host or Owner can send table changes (only send entries they _control_) * When using WriteAll always write all regardless of control. Make it so unless YOU control a Sync property you can't physically change its value * Revert that for now - let people change Sync var value locally as it was before, we can try to find a better way to prevent this later. Complication comes from INetworkCustom * Remove redundant call * Let''s have each entry define if it has changes now that each one can be potentially controlled by different clients. Make sure we clear changed flag on entry when reading it. NetworkTable.HasChanges will now return true if any entry we have control over is dirty * Clarify comment * Let's call it HostSync * Prevent actual setting of Sync property, modification of NetList, or NetDictionary if you don't have control over it. Non-owner, non-host can't change the values locally, they _must_ be what the synchronized value is * We can always set the property if network not initialized * Default HasControl to true for NetList/NetDictionary in-case not set
10 Months Ago
Default HasControl to true for NetList/NetDictionary in-case not set
10 Months Ago
Let's call it HostSync Prevent actual setting of Sync property, modification of NetList, or NetDictionary if you don't have control over it. Non-owner, non-host can't change the values locally, they _must_ be what the synchronized value is We can always set the property if network not initialized
10 Months Ago
Clarify comment
10 Months Ago
Let''s have each entry define if it has changes now that each one can be potentially controlled by different clients. Make sure we clear changed flag on entry when reading it. NetworkTable.HasChanges will now return true if any entry we have control over is dirty
10 Months Ago
Remove redundant call
10 Months Ago
Revert that for now - let people change Sync var value locally as it was before, we can try to find a better way to prevent this later. Complication comes from INetworkCustom
10 Months Ago
When using WriteAll always write all regardless of control. Make it so unless YOU control a Sync property you can't physically change its value