A API Player Stats permite personalizar experiências de jogo para segmentos específicos de jogadores e diferentes fases do ciclo de vida do jogador. Você pode criar experiências personalizadas para cada segmento de jogadores de acordo com a forma como eles progridem, gastam e interagem. Por exemplo, você pode usar essa API para executar ações proativas, encorajando um jogador menos ativo a se envolver novamente com o jogo, como mostrando e promovendo novos itens no jogo quando o usuário faz login.
Este guia mostra como usar a API Player Stats em um aplicativo nativo C++ ou Objective-C.
Conceitos básicos das estatísticas do jogador
Você pode usar as APIs Player Stats para extrair dados sobre a atividade de um jogador no jogo. Os tipos de dados de jogador que é possível extrair incluem:
- Duração média da sessão: a duração média da sessão do jogador em minutos. A duração de cada sessão é determinada pelo período em que o jogador permaneceu conectado aos serviços relacionados a jogos do Google Play.
- Probabilidade de desistência de usuários: uma previsão que avalia se o jogador vai desistir do jogo no dia seguinte, indicada como 0 (baixa probabilidade de desistência) ou 1 (alta probabilidade de desistência). A rotatividade é definida como 7 dias de inatividade.
- Dias desde o último jogo: o número aproximado de dias desde a última vez que o usuário jogou.
- Número de compras: o número aproximado de compras no app feitas pelo jogador.
- Número de sessões: o número aproximado de sessões do jogador. As sessões são determinadas pelo número de vezes que o jogador faz login nos serviços relacionados a jogos do Google Play.
- Percentil de sessões: é o percentil de sessões aproximado do jogador, indicado como um valor decimal entre 0 e 1 (inclusive). Esse valor indica o número de sessões do jogador atual em comparação com o restante da base de usuários do jogo. Números maiores indicam que esse jogador jogou mais sessões.
- Percentil de gastos: é o percentil aproximado de gastos do jogador, indicado como um valor decimal entre 0 e 1 (inclusive). Esse valor indica quanto o jogador atual gastou em comparação com o restante da base de usuários do jogo. Números mais altos indicam que esse jogador gastou mais.
Receber estatísticas do jogador conectado no momento com C++
// Create the callback for our asynchronous fetch call. This callback will
// log either an error or the average session length for the currently
// signed-in player.
gpg::StatsManager::FetchForPlayerCallback callback = [](gpg::StatsManager::FetchForPlayerResponse const &response) {
if (IsError(response.status)) {
LogE("An error occurred fetching player stats.");
} else {
gpg::PlayerStats const & player_stats = response.data;
if (player_stats.HasAverageSessionLength()) {
LogI("Average session length: %f", player_stats.AverageSessionLength());
} else {
LogW("Currently signed-in player had no associated average session length stats.");
}
}
};
// Asynchronously fetch the Player Stats. When the fetch is finished it
// will call our callback. game_services_ is the std::unique_ptr<GameServices>
// returned by gpg::GameServices::Builder.Create()
game_services_->Stats().FetchForPlayer(callback);
Conferir as estatísticas do jogador conectado no momento com Objective-C
// Asynchronously fetches the Player Stats and then logs either a
// description of them or an error
[GPGPlayerStats playerStatsWithCompletionHandler:^(GPGPlayerStats *playerStats, NSError *error) {
if (error) {
NSLog(@"Error fetching player stats: %@", error);
} else {
NSLog(@"Description of stats for the currently signed-in player: %@", playerStats);
}
}];
Dicas para usar dados de estatísticas do jogador
Com a API Player Stats, é possível identificar com facilidade vários tipos de jogadores de acordo com o comportamento de engajamento e gastos, além de aplicar estratégias adequadas para aprimorar a experiência do jogo.
A tabela abaixo lista alguns exemplos de segmentos de jogadores e as estratégias de engajamento recomendadas:
Segmento de jogadores | Estratégia de engajamento |
---|---|
Jogadores frequentes com alto número de sessões e bom percentil de gastos, mas que não jogam há uma semana ou mais. |
|
Jogadores altamente envolvidos em um percentil de gastos baixo. |
|
Jogadores com gastos altos mostrando sinais de já terem passado pelo interesse máximo e começando a jogar com menos frequência. |
|