Unity Game Server Client SDK

This is the Unity version of the Agones Game Server Client SDK.

Check the Client SDK Documentation for more details on each of the SDK functions and how to run the SDK locally.

Download

Download the source directly from GitHub .

Prerequisites

  • Unity >= 2018.x (.NET 4.x)

Usage

Import this script to your unity project and attach it to GameObject.

To begin working with the SDK, get an instance of it.

var agones = agonesGameObject.GetComponent<Agones.AgonesSdk>();

To mark the game server as ready to receive player connections, call the async method Ready().

async void SomeMethod()
{
    bool ok = await agones.Ready();
}

To mark that the game session is completed and the game server should be shut down call Shutdown().

bool ok = await agones.Shutdown();

Similarly SetAnnotation(string key, string value) and SetLabel(string key, string value) are async methods that perform an action.

And there is no need to call Health(), it is automatically called.

Note: The following code causes deadlock. Do not use a Wait method with the returned Task.

void Deadlock()
{
    Task<bool> t = agones.Shutdown();
    t.Wait(); // deadlock!!!
}

Settings

The properties for the Unity Agones SDK can be found in the Inspector.

  • Health Interval Second
    • Interval of the server sending a health ping to the Agones sidecar. (default: 5)
  • Health Enabled
    • Whether the server sends a health ping to the Agones sidecar. (default: true)
  • Log Enabled
    • Debug Logging Enabled. Debug logging for development of this Plugin. (default: false)
Last modified September 10, 2019: Release 1.0.0 Release Candidate (#1054) (94b41ae)