userConnacancel
reposboxcancel

1,239 Commits over 1,341 Days - 0.04cph!

9 Days Ago
Some changes to time sync. Seems to fix Facepunch/sbox-issues#6865 locally. Needs re-test.
14 Days Ago
Use AppIsDedicatedServer() to determine if should print warning log in texturebase. Don't run Panel.TickInternal if we're a dedicated server - makes no sense for Panels to even exist. Make dedicated server console window title s&box Dedicated Server We can omit this warning too if we're a dedicated server
14 Days Ago
Add +hostname support for dedicated servers. For now, just so we have a way of seeing them, bundle dedicated servers in with other lobbies when querying lobbies so they show in the lobby list for a game.
14 Days Ago
Dedicated Server Querying and Session Authentication (#1690) * Authentication and encryption can now be enabled (by default) * Session authentication is added for authentication tickets - this is what makes the player count go up on a server or down when they leave * Dedicated servers use a Fake IP and can be connected to either by their Fake IP or by their associated Steam Id * Dedicated servers can be queried from the master server using the GameSocketShare mode and so can now be fetched in-game for displaying in some UI later (Steam Server Browser does not display them due to using Fake IP) * Added Rich Presence support for players who are connected to a dedicated server (and other players can join the game) * Fixed some issues with headless mode such as when things were attempting to use ISteamFriends or some texture methods * Stale connections are properly disposed of and cleaned up within a network system where in some cases before they were not * Ensure that we disconnect from the network system when closing the game/app, this makes sure that the Steam Game Server is properly shut down * Fixed / implemented Steam Game Server callbacks * Moved Steam Network Sockets configuration to C# and set them in the right place now * Ensure that we disallow a player to connect to a dedicated server if there are no player slots remaining
14 Days Ago
Fix another issue with steam friends not being installed
14 Days Ago
Some extra fixes for that
14 Days Ago
TextRendering.GetOrCreateTexture, if we're headless, return Texture.Invalid
14 Days Ago
Steam Rich Present Join Game support for dedicated server by fake IP or steam id depending on connection type
14 Days Ago
Update servers list, fix NREs from things tryna access ISteamFriends when they're a dedicated server and that interface isnt loaded
14 Days Ago
Max players
14 Days Ago
Clean up all the logs, better reason code for invalid ticket closure
14 Days Ago
Properly leave closing remote connection, such as when they dont have a valid auth ticket Make sure reason code is clamped properly - only call socket disconnect if previously connected Cleanup
14 Days Ago
Authentication tests
14 Days Ago
Added internal c# methods for steam auth ticket authentication with game server - add some log output for test
14 Days Ago
Set some defaults now stuff is working. Set authentication=true, fakeip=true, and sharedqueryport=true. Servers can be queried in-game, and hide the real IP of the dedi, can be connected to via fake ip or steamid. Oddly though, the Steam Server Browser does not list the server, unless fake ip is off - can look into resolving that later as I don't know who really uses that
15 Days Ago
More configuration for debugging purposes
15 Days Ago
Fix compile error, remove debug log
15 Days Ago
Fix IP Address byte order retrieved from server list Add steamnetworkingfakeip to steam headers vpc .. Make sure we disconnect from the network when exiting the game (especially for dedicated servers, we need to clean up properly) Request and use Fake Ip when starting a dedicated server (test) Only pass the result, its all we need anyway Move net config bootstrap stuff to c# so we can set it there, now can be set after steamgameserver init too for custom opts
15 Days Ago
Fix param
15 Days Ago
Stun list test, fix game server callbacks for real, implement in dedi server
15 Days Ago
Revert "Fake Ip p2p socket test" This reverts commit f3bece1dc379452f19b89fad20a1676149deb71a. Extra debug convars
15 Days Ago
Fake Ip p2p socket test
15 Days Ago
Reset auth back to false, at least we can toggle it internally now without rebuilding native
15 Days Ago
Some more debug stuff
15 Days Ago
Add a way to get authentication status so I can debug it
15 Days Ago
Restore allow without auth - need to find out why it wont auth auto?
15 Days Ago
Strip that out - waste of time
15 Days Ago
Add Char
15 Days Ago
Return value
15 Days Ago
Add steamid param
15 Days Ago
Test
15 Days Ago
Auth tests
15 Days Ago
Dedicated server max players, map name (or scene name if no map package), game name - ip address and port if specified, later we should only have steam ids
15 Days Ago
DedicatedServer.Init waits until logon complete - this is when we'll have our anon steamid,
15 Days Ago
Disconnect properly when returning to main menu in some circumstances
15 Days Ago
Add net_shared_query_port - default to false for now until it's working
16 Days Ago
Shut down should be called after LogOff
16 Days Ago
some housekeeping Stash SocketShare stuff Remove that stuff - it should be automatic but it isn't working rn
17 Days Ago
Need to set version gametag on server. Use query port 27016 until implementation of ISteamGameServer::HandleIncomingPacket et al )
17 Days Ago
Feel like I'm getting somewhere, but still won't list
24 Days Ago
Don't try add menu project if we're headless
24 Days Ago
If we're headless, we should shut down SteamGameServer when disconnecting from network system Pass actual version into SteamGameServer init for version. Test server list cmd
24 Days Ago
Update Dedicated Server bootstrap logs
24 Days Ago
Dedicated Server (#1679) * Initial branch commit for dedi server message routing * Try to synchronize Connection State through ConnectionInfo where possible * Use Connection.All for filtered broadcasts so that will use ConnectionInfo if exists * TargetedMessage support for byte[] array for already packed messages, and pass in NetTransmission flags for routing as well * For now, one idea is to override SendRawMessage on MockConnection - for these type of Connection we can route through the host * Store Connection internal state if ConnectionInfo doesn't exist then we can just use that * Better synchronization of Connection State - now working as it was before, but should also synchronize other clients properly when on a dedicated server * For filtered connection list / broadcast - if we're the host then use the connections we have, otherwise we should use Connection.All * Include Connection with available connections when broadcasting - as Dedicated Server won't be included in Connection.All (maybe it should, or maybe people should just use Connection.Host) * Serialize TargetMessage flags as byte * system must be set to SendMessage to a Connection. Fix an issue with SenderId when receiving a TargetedMessage - this can't be local, so try to find the connection but if we can't find it just use the source. * Test logs * Some cleanup - fix issue where system isn't initialized so can't serialize. Could be wrong here, but only one system can be active so just use that. * Remove this log * Remove unusued code * Add NetTransmission flag support when using SendMessage via Steam Sockets * Don't forget to add arg to header * Clearer docs here, only log warning if networking debug is enabled here * Some tidy up here * Reset local connection state to Unconnected when closing network system - some debug log for other machine * Close these connections * Remove this log * Add Dedicated Server page to Project Config with its own option for a Startup Scene. When loading a game, if we're headless, use that if its set instead of the usual one. * Don't call INetworkListener.OnActive for dedicated server, similarly don't call OnDisconnected. OnConnected will never get called anyway because it doesn't go through the handshake. * This bit isn't needed actually * Test boot back to main menu * Properly get when disconnected * Use CollectionExtensions properly * Fix test, re-add system member * Fix this state --------- Co-authored-by: Garry Newman <garrynewman@users.noreply.github.com>
24 Days Ago
Fix this state
24 Days Ago
Initial branch commit for dedi server message routing * Try to synchronize Connection State through ConnectionInfo where possible * Use Connection.All for filtered broadcasts so that will use ConnectionInfo if exists * TargetedMessage support for byte[] array for already packed messages, and pass in NetTransmission flags for routing as well * For now, one idea is to override SendRawMessage on MockConnection - for these type of Connection we can route through the host Store Connection internal state if ConnectionInfo doesn't exist then we can just use that Better synchronization of Connection State - now working as it was before, but should also synchronize other clients properly when on a dedicated server For filtered connection list / broadcast - if we're the host then use the connections we have, otherwise we should use Connection.All Include Connection with available connections when broadcasting - as Dedicated Server won't be included in Connection.All (maybe it should, or maybe people should just use Connection.Host) Serialize TargetMessage flags as byte system must be set to SendMessage to a Connection. Fix an issue with SenderId when receiving a TargetedMessage - this can't be local, so try to find the connection but if we can't find it just use the source. Test logs Some cleanup - fix issue where system isn't initialized so can't serialize. Could be wrong here, but only one system can be active so just use that. Remove this log Remove unusued code Add NetTransmission flag support when using SendMessage via Steam Sockets Don't forget to add arg to header Clearer docs here, only log warning if networking debug is enabled here Some tidy up here Reset local connection state to Unconnected when closing network system - some debug log for other machine Close these connections Remove this log Add Dedicated Server page to Project Config with its own option for a Startup Scene. When loading a game, if we're headless, use that if its set instead of the usual one. Don't call INetworkListener.OnActive for dedicated server, similarly don't call OnDisconnected. OnConnected will never get called anyway because it doesn't go through the handshake. This bit isn't needed actually Test boot back to main menu Properly get when disconnected Use CollectionExtensions properly Fix test, re-add system member
24 Days Ago
Fix test, re-add system member
27 Days Ago
Initial branch commit for dedi server message routing * Try to synchronize Connection State through ConnectionInfo where possible * Use Connection.All for filtered broadcasts so that will use ConnectionInfo if exists * TargetedMessage support for byte[] array for already packed messages, and pass in NetTransmission flags for routing as well * For now, one idea is to override SendRawMessage on MockConnection - for these type of Connection we can route through the host Store Connection internal state if ConnectionInfo doesn't exist then we can just use that Better synchronization of Connection State - now working as it was before, but should also synchronize other clients properly when on a dedicated server For filtered connection list / broadcast - if we're the host then use the connections we have, otherwise we should use Connection.All Include Connection with available connections when broadcasting - as Dedicated Server won't be included in Connection.All (maybe it should, or maybe people should just use Connection.Host) Serialize TargetMessage flags as byte system must be set to SendMessage to a Connection. Fix an issue with SenderId when receiving a TargetedMessage - this can't be local, so try to find the connection but if we can't find it just use the source. Test logs Some cleanup - fix issue where system isn't initialized so can't serialize. Could be wrong here, but only one system can be active so just use that. Remove this log Remove unusued code Add NetTransmission flag support when using SendMessage via Steam Sockets Don't forget to add arg to header Clearer docs here, only log warning if networking debug is enabled here Some tidy up here Reset local connection state to Unconnected when closing network system - some debug log for other machine Close these connections Remove this log Add Dedicated Server page to Project Config with its own option for a Startup Scene. When loading a game, if we're headless, use that if its set instead of the usual one. Don't call INetworkListener.OnActive for dedicated server, similarly don't call OnDisconnected. OnConnected will never get called anyway because it doesn't go through the handshake. This bit isn't needed actually Test boot back to main menu Properly get when disconnected
28 Days Ago
Properly get when disconnected
28 Days Ago
Test boot back to main menu