4,842 Commits over 1,402 Days - 0.14cph!
Automatically hotload user permissions if users.json is edited while the server is running - can change or add permissions without restarting the server
User perms config
Allow Json comments
Add default users.json file and change structure of config
Don't ignore game/config/users.json because we want to keep the default with comments
Return true in Connection.HasPermission if the connection is the host. We'll check user permissions from the config file for connections to a dedicated server.
Remove some test logs and make HasPermission available
LobbyConfig.HideInServerList would let you hide a lobby from appearing in any server lists in s&box but still queryable with QueryLobbies
Fix IsHidden support
Filter in the query
HideInServerList -> Hidden
HideInServerList -> Hidden
Do the same when setting var
Additional cmd line fix and extra test
Improve CommandLine parser. Added CommandLineTest.
Delta snapshot improvements. Fixed a bug where it was possible for a snapshot ack to be ignored - should fix a rare and difficult to reproduce bug where sync vars can become stuck
Host should periodically update the ping value of PlayerData (Fixes Facepunch/sbox-deathmatch#74)
When running commands from command line, enclose args in quotes so they aren't split again by spaces internally (Fixes Facepunch/sbox-issues#7388)
No need to log that we can't find sound event if we're headless - we won't be playing any sounds anyway
Keep dedicated server alive when reloading a game. Allow managed to decide if a connection should be accepted. Improve auto-retry.
Added net_dump_objects command to print all networked object names to console
Hide a dedicated server from the server list when disconnecting - re-enable it when a lobby is created again
Only auto-destroy the Player if we're the host - ensures game state is right
SendLog on a local connection should just log the message - no need to send a network message
SendLog on a local connection should just log the message - no need to send a network message
Fix error with NetworkMode read in MapInstance. If network mode is Object then we want to NetworkSpawn the object here - this fixes networked objects from maps not appearing for clients
Server Commands / Admin Commands (#1772)
* ConVarFlags.Server and ConVarFlags.Admin and the implementation of both. When the method has a Connection type as the first parameter, that parameter will be the source. Add Connection.SendLog( LogLevel, string )
* Safety
* Add summaries
LobbyConfig.HideInServerList would let you hide a lobby from appearing in any server lists in s&box but still queryable with QueryLobbies
Fix IsHidden support
ConVarFlags.Server and ConVarFlags.Admin and the implementation of both. When the method has a Connection type as the first parameter, that parameter will be the source. Add Connection.SendLog( LogLevel, string )
Don't send networked objects twice when the host switches scenes
Fixed a bug with the [Change] attribute not using the correct type in some cases - make sure we always use the type that the property belongs to
Start the networking thread
Update charger and health kit, battery prefabs to use Network Object mode instead of Snapshot
Move process of parsing command line switches on boot and setting ConVars and ConCmds from them from native to managed. Control when they are set / run ourselves, we'll do it in Bootstrap.Init.
LobbyConfig.HideInServerList would let you hide a lobby from appearing in any server lists in s&box but still queryable with QueryLobbies
User perms config
Allow Json comments
Add default users.json file and change structure of config
Don't ignore game/config/users.json because we want to keep the default with comments
Return true in Connection.HasPermission if the connection is the host. We'll check user permissions from the config file for connections to a dedicated server.
Remove some test logs and make HasPermission available
Remove some test logs and make HasPermission available
Return true in Connection.HasPermission if the connection is the host. We'll check user permissions from the config file for connections to a dedicated server.
User perms config
Allow Json comments
Add default users.json file and change structure of config
Don't ignore game/config/users.json because we want to keep the default with comments
Improve networked scene changing by simplifying it and no longer reusing the handshake process
Scene changing working again nicely. Use DisconnectScope() when clearing scene/disconnecting on play mode exit to keep other clients functioning properly
Need to confirm scene load, to call OnJoined again appropriately
Don't forget to initialize NetworkObjects array
Networked scene change rewrite - much cleaner approach
Always prefer explicitly set hostname for server name when running a dedicated server
Host Stats / Local Network Stats in Console (#1758)
Make GetStats a property, make it public, document it
Host stats initial commit
Increase reasonable Steam connection time for dedicated server - ensure it shuts down properly if it doesn't connect in that time frame