Base #

The Base module of Hiro is not a game system like the other features, but rather an aggregated group of smaller features that are common to most, if not all, games. It includes the following features and functionality:

In-App Purchases #

In-app purchases enable you to monetize your games and generate revenue. By offering in-game items or content for purchase, you can create a revenue stream beyond the initial purchase price of the game. This is particularly important for free-to-play games, which rely on in-app purchases to generate revenue.

They can also be used to improve the player experience, providing additional options and flexibility within the game. For example, players may be able to purchase additional lives, power-ups, or access to new levels or content.

You can use the IAPSystem to manage in-app purchases.

App rating #

An app rating popup in Merge Chef 3D by Kyoso Interactive.
An app rating popup in Merge Chef 3D by Kyoso Interactive.

The user ratings a name receives can significantly impact its visibility and success. Positive ratings and reviews can help attract new users and improve your app’s ranking in app stores, which in turn can increase downloads and revenue.

Along with the focus on providing a high-quality gaming experience, you should be actively soliciting feedback from your most active and engaged users to ensure you receive positive ratings and reviews.

You can use the InAppReviewSystem to trigger a native app store review.

Customization Parameters #

The following JSON represents the customization parameters you can use to configure the Base module.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
{
    "rate_app_smtp_addr": "smtp.gmail.com",
    "rate_app_smtp_username": "email@domain.com",
    "rate_app_smtp_password": "password",
    "rate_app_smtp_email_from": "gamename-server@mygamecompany.com",
    "rate_app_smtp_email_from_name": "My Game Company",
    "rate_app_smtp_email_subject": "RateApp Feedback",
    "rate_app_smtp_email_to": "gamename-rateapp@mygamecompany.com",
    "rate_app_smtp_port": 12345,
    "rate_app_template": "<template>"
}

You may define the following:

PropertyTypeDescription
rate_app_smtp_addrstringRate app SMTP address.
rate_app_smtp_usernamestringRate app SMTP username.
rate_app_smtp_passwordstringRate app SMTP password.
rate_app_smtp_email_fromstringRate app SMTP email from.
rate_app_smtp_email_from_namestringRate app SMTP email from name.
rate_app_smtp_email_subjectstringRate app SMTP email subject.
rate_app_smtp_email_tostringRate app SMTP email to.
rate_app_smtp_portintRate app SMTP port.
rate_app_templatestringRate app email template.

Push notifications #

Push notifications can be used to improve your mobile game in several ways, including:

  • Player engagement: Notify players of new content or events, encouraging them to return to the game and increasing engagement.
  • Retention: By reminding players to come back to the game after a certain amount of time has passed, push notifications can help improve player retention.
  • Monetization: Promote in-game purchases or special offers, encouraging players to spend money within the game.
  • Social interactions: Encourage players to interact with friends or join multiplayer sessions.

In practice, you should keep in mind the timing and frequency of notifications sent, ensuring they are relevant and add value to the player’s experience without being intrusive.

Default usernames #

In addition to the ability to set player usernames in the usual manner with Nakama, Hiro provides for the creation of default usernames for players when they first log in.

These usernames follow a default format, for example Player00000001 (prefix + eight digits), which is a common representation seen in many games.

Crash reporting #

Built-in integration with Firebase Crashlytics is provided to capture and forward all client-side crash logs. See the Firebase section of the Analytics page.