Tutorials #

Tutorials in use to show the player how to interact with unlockables in Squad Alpha by Say Games
Tutorials in use to show the player how to interact with unlockables in Squad Alpha by Say Games

The tutorial system is a feature of Hiro that enables you to create a series of steps (a ‘sequence’) that a new user must complete before they can play your game. This is a great way to introduce new users to your game and to help them understand how to play.

Tutorial steps can be configured to be either mandatory or optional. Mandatory steps must be completed before the user can play the game. Optional steps can be skipped by the user.

Multiple tutorial sequences can be configured for a game, each with its own ID. Each sequence can have a different set of steps and can be triggered by different events, for example one for the first time a user logs in, another for when they first join a guild or tournament, and so on.

Configuration Parameters #

The following JSON represents the customization parameters you can use to configure the default user experience for the tutorial system.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
{
  "tutorials": {
    "<sequenceName1>": {
      "start_step": 0,
      "max_step": 5,
      "additional_properties": {
        "<propertyName>": "value"
      }
    },
    "<sequenceName2>": {
      "start_step": 0,
      "max_step": 20,
      "additional_properties": {
        "<propertyName>": "value"
      }
    }
  }
}

The JSON schema defines a tutorials object which _must contain an individual object for each tutorial you wish to define in the system. You can configure as few or as many sequences as needed for your desired gameplay.

PropertyTypeDescription
tutorialsstring:TutorialA map of all tutorials.

Each individual tutorial is keyed by id and may define the following:

Tutorial #

PropertyTypeDescription
start_stepintThe initial step for this tutorial.
max_stepintThe maximum step for this tutorial.
additional_propertiesstring:stringA map of key value pairs that can contain additional context.