Configurations #

Hiro provides a number of configuration parameters that you can use to customize the default user experience for its systems.

Achievements #

PropertySubpropertyDescription
auto_claimWhether the achievement reward should be given automatically upon completion.
auto_claim_totalWhether the achievement total reward should be given automatically upon completing this and all sub-achievements.
auto_resetWhether the achievement should reset after completion.
nameThe display friendly name of this achievement.
categoryThe category name for this achievement.
descriptionThe description for this achievement.
countThe initial count towards progress for this achievement.
max_countThe number of times this achievement can be progressed before it can be claimed.
duration_secHow long (in seconds) this achievement is available for progression after creation. Used for limited time achievements.
reset_cronexprThe reset interval in CRON format.
precondition_idsAn array of achievement ids the user must have completed to qualify for starting this achievement.
rewardAn object that defines what rewards a player should receive once they complete this achievement.
sub_achievementsAn object with the same Schema as the root achievements object, used to define nested achievements.
total_rewardAn object that defines what rewards a player should receive once they have completed this achievement and all sub achievements.
additional_propertiesA string:string dictionary of key value pairs that can contain additional context.

Economy #

User initialization #

PropertyDescription
currenciesA string:int dictionary of currencies and quantities the user should start with.
itemsA string:int dictionary of items and quantities the user should start with.

Inventory Items #

PropertyDescription
nameThe name for this item.
descriptionThe description for this item.
categoryThe category for this item.
item_setsAn array of string values that indicate which item sets this item belongs to.
max_countThe maximum number of this item a user can own.
stackableA bool value indicating whether this item can stack.
consumableA bool value indicating whether this item can be consumed.
consume_rewardA reward object that defines what rewards a user can or will receive for consuming the item.
string_propertiesA map of string values that define item specific metadata.
numeric_propertiesA map of number values that define item specific metadata.

Donations #

PropertySubpropertyDescription
nameThe name for this donation.
descriptionThe description for this donation.
countThe initial count to start this donation with.
max_countThe maximum amount of donations required for this to be completed.
user_contribution_max_countThe maximum amount of times each user can donate towards this donation.
duration_secHow long (in seconds) this donation is active.
rewardAn object that defines what rewards a player should receive once the donation is fulfilled.
contributor_rewardAn object that defines what rewards the sender should receive once the donation is fulfilled.
additional_propertiesA string:string dictionary of key value pairs that can contain additional context.

Placements #

PropertySubpropertyDescription
rewardAn object that defines what rewards a player should receive once they purchase this item.
additional_propertiesA string:string dictionary of key value pairs that can contain additional context.

Store items #

PropertySubpropertyDescription
nameThe name for this store item.
descriptionThe description for this store item.
categoryThe category for this store item.
costThe cost for this store item, either in soft currency using the currencies subproperty or via IAP using the sku subproperty.
currenciesA string:int dictionary of currencies and quantities the user must pay to purchase this item.
skuThe SKU code of the in-app purchase the user must complete to obtain this item.
rewardAn object that defines what rewards a player should receive once they purchase this item.
additional_propertiesA string:string dictionary of key value pairs that can contain additional context.

Energy #

PropertySubpropertyDescription
start_countThe initial amount of this energy a user should start with.
max_countThe maximum amount of this energy a user can possess at any time.
refill_countThe amount of this energy refilled after each interval (defined in refill_time_sec).
refill_time_secThe time in seconds it takes for this energy to refill by refill_count amount.
implicitIf true the user starts with this energy, if false they must be granted this energy.
rewardAn object that defines what rewards a player should receive when spending this energy.
additional_propertiesA string:string dictionary of key value pairs that can contain additional context.

Leaderboards #

PropertySubpropertyDescription
idThe id of this leaderboard.
sort_orderThe leaderboard sort type (e.g. asc or desc).
operatorThe leaderboard operation (e.g. set, best, incr, or decr).
reset_scheduleThe reset schedule of this leaderboard expressed as a CRON expression.
authoritativeWhether scores must be submit to this leaderboard authoritatively.
regionsAn array of strings representing available regions for the leaderboard.

Teams #

PropertySubpropertyDescription
max_team_sizeThe maximum number of members for a team.

Unlockables #

Slots #

PropertySubpropertyDescription
max_active_slotsThe maximum number of slots a player can have active at any time.
active_slotsThe number of active slots, if any, each player starts with.
slotsThe total number of slots, active and inactive, a player can have.
slot_costThe cost to purchase additional active slots.
currenciesA string:int dictionary of the currencies and amounts required to purchase additional slots.

Unlockable #

PropertySubpropertyDescription
probabilityAn int value indicating the likelihood this unlockable item is the one received by the player.
nameThe name of this unlockable.
categoryThe category, if any, of this unlockable.
descriptionThe description of this unlockable.
start_costThe cost to begin unlocking this unlockable.
currenciesA string:int dictionary of the currencies and amounts required as the start cost.
wait_time_secThe total time (in seconds) a player must wait before this item in unlocked.
costThe cost to advance the wait time by one unit of time, defined in cost_unit_time_sec.
currenciesA string:int dictionary of the currencies and amounts required.
cost_unit_time_secThe amount of time to be advanced on wait_time_sec for each cost purchase.
rewardAn object that defines what rewards the player should receive after unlocking this unlockable.
additional_propertiesA string:string dictionary of key value pairs that can contain additional context.