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 #
Hiro connects your platform stores to the economy system through Nakama’s server-side receipt validation. Store items configured with a sku in your economy config are registered with the platform store automatically on initialization. When a player completes a purchase, the client submits the receipt to Nakama, which validates it with Apple App Store or Google Play before granting the reward defined in your economy config.
The full IAP flow is handled without custom server logic: product registration, platform purchase, receipt validation, and reward delivery. Your economy configuration is the single source of truth for what products exist and what rewards they grant.
See In-app purchase validation for Nakama server configuration, and your client SDK reference for implementation details. For Unity, see How to implement IAPs in Unity.
App rating #

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.
| |
You may define the following:
| Property | Type | Description |
|---|---|---|
rate_app_smtp_addr | string | Rate app SMTP address. |
rate_app_smtp_username | string | Rate app SMTP username. |
rate_app_smtp_password | string | Rate app SMTP password. |
rate_app_smtp_email_from | string | Rate app SMTP email from. |
rate_app_smtp_email_from_name | string | Rate app SMTP email from name. |
rate_app_smtp_email_subject | string | Rate app SMTP email subject. |
rate_app_smtp_email_to | string | Rate app SMTP email to. |
rate_app_smtp_port | int | Rate app SMTP port. |
rate_app_template | string | Rate 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.
