Heroic Labs Documentation

Installing Hiro GDK #

Prerequisites #

Before proceeding ensure that you have:

Installation #

The client is available from Heroic Labs. Contact us to request access.

The Hiro.unitypackage contains all source code and DLL dependencies required in the client code.

After downloading the file:

  • Drag or import it into your Unity project
  • Set the editor scripting runtime version to .NET 4.6 (from the Edit -> Project Settings -> Player -> Configuration menu).

GDK deterministic startup #

A key philosophy of the Hiro GDK is its opinionated and structured method for bootstrapping your game using a deterministic startup. This is achieved by inheriting from the GdkCoordinator and sequentially configuring and adding the required game Systems.

The GDK provides several different Systems out-of-the-box, such as the NakamaSystem (which handles the connection to Nakama and keeps a reference to the Client, Session and Socket objects) and the EconomySystem (which handles all aspects of in-game economy including both soft and hard currency purchases).

Configuration #

  1. In the Scene Hierarchy, create a new Game Object and call it GameCoordinator.

  2. Attach a new C# script to the object and call it GameCoordinator.

  3. Override the CreateSystems method of GameCoordinator to configure and add individual System instances to a Systems object and return it:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
public class GameCoordinator : GdkCoordinator
{
  private NakamaSystem _nakamaSystem;

  protected override Systems CreateSystems()
  {
    // Initialize the main system
    var systems = new Systems("MainSystem", Logger);

    // Further initialization here...
  }
}

These individual systems will be initialized in the order you specify, enabling you to have full control over the order of initialization.

Related Pages