Comment on page
Steam Game Server Configuration
Support us as a GitHub Sponsor and get instant access to all our assets, exclusive tools and assets, escalated support and issue tracking and our gratitude.
These articles are made possible by our GitHub Sponsors ... become a sponsor today!
Used to define a Game Server's configuration
public struct SteamGameServerConfiguration
bool autoInitalize;
Indicates rather or not the Server APIs should auto initialize on start up
bool autoLogon;
indicates rather or not the Steam Game Server system should log on after initialization
uint ip;
The uint packed IP address, this is the raw form Steam would use IP address as and is simply the 4 octives of an IP address packed into the 32 bit int value
00000000 00000000 00000000 00000000
each 8 bit segment storing a different octave. We have tools that can convert this to a string or a string based IP to a uint see our Utilities for more information.
The string representation of the IP address
public string IpAddress {get; set; }
ushort queryPort;
The query port used by Valve
ushort queryPort;
The query port used by Valve
string serverVersion;
The server version to report to Steam Game Server
CSteamID serverId;
The ID assigned to the Steam Game Server on initialization and logon. This is set by Steam and is what you would as an address to connect to this server
bool usingGameServerAuthApi;
Should the auth API be used
bool enableHeartbeats;
Should we send heartbeats to SGS, if you do not do this then the Steam Game Server Browser will not be able to update ping and other bits of data.
bool spectatorServerName;
The name of the server to display in the spectator list
bool anonymousServerLogin;
Recommended (set this to true)
Should the interface logon anonymously
string gameServerToken;
if not logging on anonymously then it must have a token https://steamcommunity.com/dev/managegameservers​
bool isPasswordProtected;
Indicate to SGS that this server is password protected, its up to you to set that password and handle its use this only lets the browser know one is required.
string gameName;
The name to display for the server in the SGS browser
string gameDescription;
The description to display for the server in SGS browser
string gameDirectory;
the name of the folder in Steam content the game is running from. Usually the same as the game's name.
bool isDedicated;
Indicate to SGS browser this server is dedicated
int maxPlayerCount;
Indicate to SGS what the max player count is
int botPlayerCount;
Indicate to SGS what the bot player count is
string mapName;
reports the map name to SGS
string gameData;
Delimited string used for matchmaking filtering
List<StringKeyValuePair> rulePairs;
The set of rule pairs for the server
Gets the SteamGameServerConfiguraiton from the target. This can be used to read the configuration from files or to read the configuration applied to the current game.
public static SteamGameServerConfiguraiton Get();
​
public static bool Get(FileInfo configFile, out SteamGameServerConfiguration config);
​
public static bool Get(string configFile, out SteamGameServerConfiguration config);
​
public static bool Get(byte[] data, out SteamGameServerConfiguration config);
Returns the JSON formated string of the configuraiton
public string ToString()
Returns the byte[] representing the configuraiton
public byte[] ToBytes()
Saves the config to a file on the local disk
public bool SaveToDisk(string path)
Last modified 1mo ago