RPG games

Let’s look at a case of an RPG game (role-playing game) where players control one or more characters that have their own characteristics and peculiarities. During the gameplay parameters of characteristics change that lead to leveling up of the player account. You can use the LevelUp event with CurrencyAccrual to track changes in currency amount and player character levels. Level tracking allows you to analyze the number of players as well as amount and movements of in-game currency on each level. We also recommend you to integrate other basic system events. See the game analysis example to find some application methods.

Event structure example

Besides using out-of-the-box reports that are based on basic events, you can use custom events that will help you get an idea of how users use the application. For example, you can find out how and where gamers acquire new player characters, with which characters they engage into combat, how often their characters level up, what quests they finish, whether or not they engage in live ops events, invite friends, use new game mechanics, etc.

After that you can use the Custom Events and Conversion Funnels reports to analyze custom event data. Build a funnel and analyze conversion rates at every stage, e.g. you dispatch an event every time a user opens an in-game shop, clicks on an item and buys the item. Below you can find examples of custom events that can be useful for you:

Description

Custom event

Parameters

Event should be sent when player unlocks new hero

Event name hero_unlock

player_level (int) – player's account level player_gems (int) – player's gems balance

hero_class (string) – by range or by attack type (or by freemium/premium heroes)

hero_name (string) – name of upgraded hero

hero_level (int) – NEW level of hero

hero_gems (int) – gems earned with that hero

source (string) – how new hero is achieved:

  • box

  • player_level_reward

  • premium_pass

Event should be sent when player upgrades the hero level

Event name hero_upgrade

player_level (int) – player's account level

player_gems (int) – player's gems balance

hero_class (string) – by range or by attack type (or maybe by freemium/premium heroes)

hero_name (string) – name of upgraded hero

hero_level (int) – NEW level of hero hero_gems (int) – gems earned with that hero

currency_name (string) – currency name spent for upgrade

currency_spent (int) –amount of currency spent for upgrade

currency_balance (int) – amount of currency spent for upgrade

Change custom user property when the player changes their account level (up or down).

Event name player_level_changed

change (string)

  • up

  • down

player_level (int) – new player's account level

gold_balance (int) – balance of gold at the moment of level change

gems_balance (int) – balance of gems at the moment of level change

Event should be sent when the game is started (when all players are loaded on the map and countdown is started)

Event name game_start

game_id (int) – unique game id (to match players in one game)

game_mode (string) – hunt/coop/event...

location_name (string) – name of started location

player_level (int) – player's account level

player_gems (int) – player's gems balance

hero_class (string) – by range or by attack type (or maybe by freemium/premium heroes)

hero_name (string) – name of chosen hero

hero_level (int) – level of hero

hero_gems (int) – gems earned by that hero

players_count (int) – count of real players in game (or bots)

Event should be sent when the game is finished for the player (when player is defeated or all other players are defeated)

Event name game_finish

game_id (int) – unique game id (to match players in one game)

game_mode (string) – hunt/coop/event...

location_name (string) – name of started location

player_level (int) – player's account level

player_gems (int) – player's gems balance

hero_class (string) – by range or by attack type (or maybe by freemium/premium heroes)

hero_name (string) – name of chosen hero

hero_level (int) – level of hero

hero_gems (int) – gems earned with that hero

players_count (int) – count of real players in game (or bots)

result (string) – how game is finished for player:

  • win,

  • dead, no_enemies,

  • time_out,

  • leave.

duration (int) – game duration in seconds

level_obtained (int) – level of hero obtained within game session

npc_killed (int) – count of killed npc

Last updated

#989: best practices - improved readability

Change request updated