-
Notifications
You must be signed in to change notification settings - Fork 5
A2S_INFO
Binary edited this page Dec 1, 2024
·
3 revisions
Emitting A2S_INFO server queries.
#include <ssq/a2s.h>
// See the `SSQ_SERVER' wiki page.
SSQ_SERVER *server;
A2S_INFO *info = ssq_info(server);
/* Success */
if (ssq_server_eok(server)) {
printf("Players: %hhu/%hhu\n", info->players, info->max_players);
if (ssq_info_has_keywords(info))
printf("Keywords: %s\n", info->keywords);
/* Cleanup */
ssq_info_free(info);
}
/* Failure */
if (!ssq_server_eok(server)) {
fprintf(stderr, "ssq_info: %s\n", ssq_server_emsg(server));
/* Cleanup */
ssq_server_eclr(server);
}
Identifier | Type | Optional | Description |
---|---|---|---|
protocol | uint8_t |
Protocol version used by the server | |
name | char * |
Name of the server | |
name_len | size_t |
Length of the name string |
|
map | char * |
Map the server has currently loaded | |
map_len | size_t |
Length of the map string |
|
folder | char * |
Name of the folder containing the game files | |
folder_len | size_t |
Length of the folder string |
|
game | char * |
Full name of the game | |
game_len | char * |
Length of the game string |
|
id | uint16_t |
Steam Application ID of game | |
players | uint8_t |
Number of players on the server | |
max_players | uint8_t |
Maximum number of players the server reports it can hold | |
bots | uint8_t |
Number of bots on the server | |
server_type | A2S_SERVER_TYPE |
The type of server | |
environment | A2S_ENVIRONMENT |
The operating system of the server | |
visibility | bool |
Whether the server requires a password | |
vac | bool |
Whether the server uses VAC | |
version | char * |
Version of the game installed on the server | |
version_len | size_t |
Length of the version string |
|
edf | uint8_t |
Extra Data Flag | |
port | uint16_t |
✅ | The server's game port number |
steamid | uint64_t |
✅ | Server's SteamID |
stv_port | uint16_t |
✅ | Spectator port number for SourceTV |
stv_name | char * |
✅ | Name of the spectator server for SourceTV |
stv_name_len | size_t |
✅ | Length of the stv_name string |
keywords | char * |
✅ | Tags that describe the game according to the server |
keywords_len | size_t |
✅ | Length of the keywords string |
gameid | uint64_t |
✅ | The server's 64-bit Game ID |
Helper functions are available to check if an optional field is present.
Field | Helper function |
---|---|
port | ssq_info_has_port |
steamid | ssq_info_has_steamid |
stv_port | ssq_info_has_stv |
stv_name | ssq_info_has_stv |
stv_name_len | ssq_info_has_stv |
keywords | ssq_info_has_keywords |
keywords_len | ssq_info_has_keywords |
gameid | ssq_info_has_gameid |
Name | Description |
---|---|
A2S_SERVER_TYPE_DEDICATED |
The server is a dedicated server |
A2S_SERVER_TYPE_NON_DEDICATED |
The server is a non-dedicated server |
A2S_SERVER_TYPE_STV_RELAY |
The server is a SourceTV relay (proxy) |
A2S_SERVER_TYPE_UNKNOWN |
Unknown server type |
Name | Description |
---|---|
A2S_ENVIRONMENT_LINUX |
The server runs on Linux |
A2S_ENVIRONMENT_WINDOWS |
The server runs on Windows |
A2S_ENVIRONMENT_MAC |
The server runs on Mac |
A2S_ENVIRONMENT_UNKNOWN |
Unknown operating system |
Retrieves information about the server including, but not limited to: its name, the map currently being played, and the number of players.
Name | Type | Nullable | Description |
---|---|---|---|
server | SSQ_SERVER * |
❌ | Source server instance to query |
Returns an A2S_INFO response which must be freed using ssq_info_free
.
NULL
and updates the last error of server
.
Frees an A2S_INFO response returned by ssq_info
.
Name | Type | Nullable | Description |
---|---|---|---|
info | A2S_INFO * |
✅ | A2S_INFO response to free |