Progression #
Progression is a versatile Hiro meta system allowing players to advance in various aspects of the game, such as skill trees or saga maps. It’s unique within Hiro as it functions as a dynamic dependency tree to formulate intricate progression systems.
It enables the creation of progressions that are contingent on other Hiro meta systems, meaning players can only advance by meeting specific prerequisites like completing certain achievements, acquiring particular items, or reaching a minimum set of stats. Furthermore, progressions can serve as prerequisites for other progressions and offer rewards to players upon completion.
Customization parameters #
All progressions and their configuration is done through a JSON definition.
The following JSON represents the customization parameters you can use to configure the default user experience for the Progression system.
|
|
Progressions #
The JSON schema defines a progressions
object which must contain individual objects for each progression you wish to define in the system, keyed by id. You can configure as few or as many leaderboards as needed for your desired gameplay.
Each progression may define the following:
Property | Subproperty | Description |
---|---|---|
name | The name of this progression. | |
description | The description for this progression. | |
category | The category for the progression. | |
preconditions | The preconditions for unlocking this progression, see schema below. | |
additional_properties | A string:string dictionary of key value pairs that can contain additional context. |
Preconditions block #
Property | Subproperty | Description |
---|---|---|
operator | The operator (AND = 1, OR = 2, XOR = 3) that determines how the Direct and Nested blocks should be evaluated. | |
direct | An object containing the direct progression preconditions. | |
cost | An object containing two dictionaries that define the cost for unlocking this progression in currencies and items. | |
progressions | An array of progression IDs that must be met. | |
achievements | An array of achievement IDs that must be met. | |
counts | A dictionary of IDs and numeric values of progression counts that must be met. | |
items_min | A dictionary of IDs and numeric values of item minimum counts that must be met. | |
items_max | A dictionary of IDs and numeric values of item maximum counts that must be met. | |
stats_min | A dictionary of IDs and numeric values of stat minimum counts that must be met. | |
stats_max | A dictionary of IDs and numeric values of stat maximum counts that must be met. | |
energy_min | A dictionary of IDs and numeric values of energy minimum counts that must be met. | |
energy_max | A dictionary of IDs and numeric values of energy maximum counts that must be met. | |
currency_min | A dictionary of IDs and numeric values of currency minimum counts that must be met. | |
currency_max | A dictionary of IDs and numeric values of currency maximum counts that must be met. | |
nested | A nested preconditions block, evaluated against the specified Operator. |