Adicionar estatísticas do jogador ao jogo

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.
  • Envie uma notificação sobre um desconto ou bônus especial, que vai ser disponibilizado quando o usuário voltar a jogar.
  • Mostre uma mensagem de boas-vindas, reconhecendo conquistas importantes, e ofereça um selo para incentivar o retorno ao jogo.
Jogadores altamente envolvidos em um percentil de gastos baixo.
  • Personalize bônus especiais para incentivar o usuário a convidar amigos a instalar e participar do jogo. Essa abordagem aproveita a satisfação demonstrada pelo usuário para recrutar novos jogadores.
Jogadores com gastos altos mostrando sinais de já terem passado pelo interesse máximo e começando a jogar com menos frequência.
  • Personalize bônus para renovar o interesse do jogador, como a oferta de ferramentas, armas ou descontos de alto valor e curta duração.
  • Na próxima vez que o jogador fizer login, mostre um vídeo que direcione a recursos da comunidade, como ataques de clãs, que promovem um engajamento mais longo e frequente.