Server Environment Variables
The Match Life Cycle interface is configured on the game server machine by setting configuration values in environment variables. These values control which features of the Match Life Cycle interface are enabled, and provide FACEIT with information such as the server's location and IP address.
info
Configuration values may be set in code - however, this is recommended only for ease of development and testing, and should not be used in a production environment. Any configuration values set in environment variables will override those set in code.
The sections below describe the available configuration options. Advanced options that are only relevant for developers have been omitted.
Server Identity
Variable Name | Description | Default Value |
---|---|---|
FACEIT_GAME_SERVER_VERSION | User-defined string representing the version of the game that is using the plugin. This should be changed each time the game is updated. | Empty |
FACEIT_GAME | FACEIT-specific ID of the game that is using the plugin. This must correspond to the ID of the game as configured on the FACEIT Game Studio. | Empty |
FACEIT_CUSTOM_ID | User-defined ID string representing the machine that the game server is running on. | Auto-generated if left blank |
FACEIT_BOX_ID | Numerical ID representing the physical hardware unit that the game server is running on. Used for load balancing. | Auto-generated if left blank |
FACEIT_SERVER_LOCATION | Specific geographical location in which the server machine is based, eg. London. This is not the same as the server's region, which is the broad area to which the server caters (eg. EU). | Empty |
FACEIT_SERVER_PROVIDER | Name of the company or service which hosts the server. Provides context for the FACEIT backend. | Empty |
FACEIT_SERVER_REGION | Broad geographical area to which the server caters, eg. EU. This is not the same as the server's location, which is more specific (eg. London). | Empty |
Server Connectivity
Variable Name | Description | Default Value |
---|---|---|
FACEIT_HTTPS_CERTIFICATE_DIRECTORY_PATH | Path on disk to where the server's HTTPS certificates reside. These certificates are required in order for Facebot to make requests to the game server. Please contact FACEIT Support if you need help generating or setting up HTTPS certificates. | Empty |
FACEIT_SERVER_PLUGIN_PUBLIC_IP | IP address to which players can connect to the game server to play a match. | Empty |
FACEIT_SERVER_PLUGIN_PRIVATE_IP | IP address to which Facebot sends match configuration and cancellation requests. | Empty |
FACEIT_SERVER_PLUGIN_HTTPS_PORT | Port on which secure HTTPS requests can be made from FACEIT to the server. | Empty |
FACEIT_SERVER_PLUGIN_HTTPS_NAT_PORT | External port on which secure HTTPS requests can be made from FACEIT to the server, if the server is behind a NAT router. It is the responsibility of the NAT router to forward these requests to the game server on its local HTTPS port (above). | Empty |
FACEIT_SERVER_PLUGIN_INCOMING_TOKEN | Token used to authenticate all inbound HTTPS requests to the server. | Empty |
FACEIT APIs
Variable Name | Description | Default Value |
---|---|---|
FACEIT_USE_FACEBOT | If true, the server will use Facebot for server provisioning. If false, the server expects the game developer to have set up their own server provisioning service, and will send events directly to the FACEIT Games API rather than via Facebot. | True |
FACEIT_FACEBOT_WORKER_TOKEN | If using Facebot, this token will be sent on all requests made to the server's Facebot worker. If this token does not match what Facebot expects, the requests will be rejected. FACEIT will provide you with this token. | Empty |
FACEIT_GSR_API_TOKEN | If using Facebot, this is the token used on all requests to the FACEIT Game Server Registry API. The token must match what the API expects, or the request will be rejected. If the server is not using Facebot, this token is not used. FACEIT will provide you with this token. | Empty |
FACEIT_GAMES_API_TOKEN | If not using Facebot, this is the token used on all requests to the FACEIT Games API. The token must match what the API expects, or the request will be rejected. If the server is using Facebot, this token is not used. FACEIT will provide you with this token. | Empty |
Metrics
Variable Name | Description | Default Value |
---|---|---|
FACEIT_COLLECT_METRICS | If true, the server plugin will attempt to collect server and player metrics data at a regular interval while a match is in play. If false, no metrics collection will take place. | True |
Logging
Variable Name | Description | Default Value |
---|---|---|
FACEIT_SERVER_PLUGIN_LOGLEVEL | Specifies the maximum verbosity of the logs emitted from the plugin. Values can be Error, Warning, Info, Debug or VerboseDebug. | Info |
FACEIT_LOG_SENSITIVE_INFORMATION | If true, sensitive information such as request tokens are printed to the logs. If false, this information is obfuscated. | True |
Required Configuration
The following configuration items for the Match Life Cycle interface are always required, regardless of whether the server chooses to use Facebot or not:
FACEIT_GAME_SERVER_VERSION
FACEIT_GAME
FACEIT_HTTPS_CERTIFICATE_DIRECTORY_PATH
FACEIT_SERVER_PLUGIN_HTTPS_PORT
FACEIT_SERVER_PLUGIN_INCOMING_TOKEN
If FACEIT_USE_FACEBOT
is set to true, the following configuration items are also required:
FACEIT_FACEBOT_WORKER_TOKEN
FACEIT_GSR_API_TOKEN
FACEIT_SERVER_PLUGIN_PRIVATE_IP
FACEIT_SERVER_PROVIDER
FACEIT_CUSTOM_ID
(auto-generated if left blank)FACEIT_BOX_ID
(auto-generated if left blank)
If instead FACEIT_USE_FACEBOT
is set to false, the following configuration items are required:
FACEIT_GAMES_API_TOKEN