Skip to content

Game Server Run Status

Many game servers have an initialization process to go through when starting up. This has the effect that the game server will not actually be usable during this initialization period. Our platform should know about this, otherwise it will assume the game server is ready to accept clients immediately after starting. For this to be possible, your game server can let our back end know when it is ready to accept players. We refer to this as a "game server run-status update" and can be performed by having the game server make an API call either towards our public API, or locally on the host towards our Host Agent.

You do not have to worry about this if your game server start (nearly) instantly. We will by default set a game server's run-status to "RUNNING" after starting it.

Please refer to the ApplicationInstance status chapter for more information about all possible status values.

Public API example

The following example illustrates how to change the run-status of a game server via the public API.

Note

If you let your game server do this call, remember that it will need to be given an API key from your i3D.net account. You can pass an API key through the startup parameters of an ApplicationBuild.

HTTP request

PUT /applicationInstance/{applicationInstanceId}/status/{status}

Request body

<NOT NEEDED>

Response body

[
  {
    "id": "string",
    "fleetId": "string",
    "hostId": 0,
    "isVirtual": 0,
    "applicationId": "string",
    "applicationType": 0,
    "applicationBuildId": "string",
    "installId": 0,
    "dcLocationId": 0,
    "regionId": "string",
    "status": 0,
    "createdAt": 0,
    "startedAt": 0,
    "stoppedAt": 0,
    "pid": 0,
    "pidChangedAt": 0,
    "properties": [
      {
        "id": "string",
        "propertyType": 0,
        "propertyKey": "string",
        "propertyValue": "string"
      }
    ],
    "ipAddress": [
      {
        "ipAddress": "string",
        "ipVersion": 0,
        "private": 0
      }
    ],
    "labelReadOnly": [
      {
        "key": "string",
        "value": "string"
      }
    ],
    "labelPublic": [
      {
        "key": "string",
        "value": "string"
      }
    ],
    "metadata": [
      {
        "key": "string",
        "value": "string"
      }
    ],
    "updatedAt": 0,
    "numPlayersMax": 0,
    "numPlayers": 0,
    "liveHostName": "string",
    "liveMap": "string",
    "liveGameVersion": "string",
    "liveRules": "string",
    "manuallyDeployed": 0
  }
]

Local Host Agent API example

TBD