Добавьте статистику игрока в свою игру

API статистики игрока позволяет адаптировать игровой процесс к конкретным сегментам игроков и различным этапам жизненного цикла игрока. Вы можете создать индивидуальный опыт для каждого сегмента игроков, основываясь на том, как игроки прогрессируют, тратят и вовлекаются. Например, вы можете использовать этот API, чтобы предпринимать упреждающие действия, чтобы побудить менее активного игрока повторно участвовать в вашей игре, например, путем отображения и продвижения новых внутриигровых предметов, когда игрок входит в систему.

В этом руководстве показано, как использовать API статистики игрока в собственном приложении C++ или Objective-C.

Основы статистики игроков

Вы можете использовать API статистики игрока для получения данных о внутриигровой активности игрока. Типы данных игрока, которые вы можете получить, включают:

  • Средняя продолжительность сессии : средняя продолжительность сессии игрока в минутах. Продолжительность сеанса определяется временем входа игрока в сервисы Google Play Games.
  • Вероятность оттока : прогноз того, уйдет ли игрок на следующий день, оценивается как 0 (низкая вероятность оттока) или 1 (высокая вероятность оттока). Отток определяется как 7 дней бездействия.
  • Дней с момента последней игры : приблизительное количество дней с момента последней игры игрока.
  • Количество покупок : приблизительное количество покупок в приложении для игрока.
  • Количество сессий : приблизительное количество сессий игрока. Сессии определяются количеством раз, когда игрок входит в сервисы Google Play Games.
  • Процентиль сеанса : аппроксимация процентиля сеансов для игрока, выраженная в виде десятичного значения от 0 до 1 (включительно). Это значение указывает, сколько сессий сыграл текущий игрок по сравнению с остальной базой игроков этой игры. Более высокие цифры указывают на то, что этот игрок сыграл больше сессий.
  • Процентиль расходов : приблизительный процентиль расходов игрока, выраженный в виде десятичного значения от 0 до 1 (включительно). Это значение показывает, сколько текущий игрок потратил по сравнению с остальной базой игроков этой игры. Более высокие цифры указывают на то, что этот игрок потратил больше.

Получить статистику игрока, вошедшего в систему, с помощью 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);

Получить статистику игрока, вошедшего в систему, с помощью 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);
  }
}];

Советы по использованию данных статистики игроков

API Play Stats позволяет легко идентифицировать различные типы игроков на основе их вовлеченности и покупательского поведения, а также применять соответствующие стратегии для улучшения их игрового опыта.

В следующей таблице приведены некоторые примеры сегментов игроков и рекомендуемые стратегии взаимодействия:

Сегмент игрока Стратегия взаимодействия
Частые игроки с большим количеством сессий и хорошим процентилем трат, но не игравшие последнюю неделю или дольше.
  • Отправьте уведомление о скидке или специальном бонусе, доступном по возвращении в игру.
  • Покажите приветственное сообщение, подтверждающее впечатляющие достижения, и вручите значок, призванный поощрять ответную игру.
Высоко вовлеченные игроки с низким процентилем расходов.
  • Персонализируйте бонусы, чтобы стимулировать их приглашать своих друзей установить вашу игру и присоединиться к ней. Этот подход основан на демонстрации удовольствия игрока от игры для привлечения новых игроков.
Игроки с высокими расходами демонстрируют признаки достижения пика и начинают играть реже.
  • Подбирайте бонусы, чтобы освежить их интерес, например, предлагая дорогостоящие кратковременные инструменты, оружие или скидки.
  • В следующий раз, когда игрок войдет в систему, покажите ему видео, которое познакомит его с функциями сообщества, такими как клановые атаки, которые способствуют более частому и продолжительному взаимодействию.