4,789 Commits over 1,371 Days - 0.15cph!
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)
Optimization to remove queues when no longer required (cheers Ziks)
Use new ByteStream( data ) instead of create w/ length then write
By default queuedUntilState is null
Only queue messages after Snapshot (otherwise ignore) and send when Connected. Add new docs to broadcast
Flush for source here too
Call flush here
Don't set to connected until Activate
Check if sequence contains elements
Remove BytePack.ISerializer from Connection for now - need to solve something first
Initial commit for Network Priority for Network Objects. The idea is that you can mark a networked object as Low, Medium or High (default) network priority, this will dictate how frequency updates are sent out about that object.
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.
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
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
We should be able to null these out
Add IBytePackConvert support to Component and GameResource
Add add IBytePackConvert to a class to specify how it should be serialized/deserialized with BytePack (similar to IJsonConvert). Implement for GameObject.
Only serialize NetworkMode, NetworkInterpolation, NetworkOrphaned and OwnerTransfer in GameObject.Serialize if they are not their default values
Fixed kill command not working for non-host players - route through host
Fixed static Authority RPC checking permissions against the wrong attribute and messages should be sent to the host and not broadcast
It's possible that PlayerState.Local isn't actually set yet here - so check IsValid
Check index is >= 0 or <= Count when using ObservableCollection<T>.Insert in NetList - otherwise use Add instead
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
Disable the option to open the menu if NetworkMode is not Object - no point allowing to change these settings for objects that arent networked
Add RadioSelect widget for use with advanced network settings as it makes sense ( https://files.facepunch.com/conna/1b0911b1/sbox-dev_Ej9Kk8WU3y.mp4 )
Store current val outside scope
Adv network settings button next to Network Mode in inspector - opens drop down menu to set net orphaned mode / owner transfer mode
Move out to its own widget - this is gonna be a button that drops down for advanced network settings
Make sure NetworkOrphaned and OwnerTransfer modes get serialized / deserialized
Move over to setting NetworkOrphaned/OwnerTransfer on the GameObject directly (with multi-select)
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
Just use identity rot instead of trying to face hit dir
Much better spread + smoke extinguishes fire
Fire nodes... kind of better placeholder node effect
Some temp sounds - make not buyable again
Initial Molotov Grenade prefab stubs
Molotov references in prefabs + MolotovGrenade component stub with explode on collision
Setup equipment
Explode on impact properly. Fix a NRE in Crosshair
AoE (shit rn) only explode if we land on a relatively flat surface, otherwise bounce
Add AreaDamage component. Add Burn type damage. Take damage while in molotov AoE radius
Disable buy for Molotov Cocktail for now, I wanna add fire spread plus the particle effect is shit right now
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