namespace Sandbox; /// /// A class that holds all configured networking settings for a game. /// This is serialized as a config and shared from the server to the client. /// [Expose] public class NetworkingSettings : ConfigData { /// /// Whether to disband the game lobby when the host leaves. /// public bool DestroyLobbyWhenHostLeaves { get; set; } /// /// Whether to periodically switch to the best host candidate. Candidates are /// scored based on their average ping and connection quality to all other peers. /// public bool AutoSwitchToBestHost { get; set; } = true; /// /// By default can clients create objects. This can be changed per connection after join. /// [Title( "Client Object Spawning" )] public bool ClientsCanSpawnObjects { get; set; } = true; /// /// By default can clients refresh objects. This can be changed per connection after join. /// [Title( "Client Object Refreshing" )] public bool ClientsCanRefreshObjects { get; set; } = true; /// /// The frequency at which the network system will send updates to clients. Higher is better but /// you probably want to stay in the 10-60 range. /// public float UpdateRate { get; set; } = 30; }