在遊戲中新增玩家統計資料

Player Stats API 可讓您根據特定玩家族群和玩家生命週期的不同階段,打造專屬的遊戲體驗。您可以根據玩家的進度、消費和互動情形,為各玩家族群打造專屬體驗。舉例來說,您可以利用此 API 主動採取行動,鼓勵較不活躍的玩家再次與遊戲互動,例如在玩家登入時顯示和宣傳新的遊戲內商品。

本指南將說明如何在原生 C++ 或 Objective-C 應用程式中使用 Player Stats API。

球員統計資料基本概念

您可以使用 Player Stats API 擷取玩家遊戲內活動的相關資料。以下為可擷取的玩家資料類型:

  • 平均工作階段長度:玩家平均工作階段長度,以分鐘為單位。工作階段長度以玩家登入 Google Play 遊戲服務的時間為準。
  • 流失機率:預測玩家會不會在隔天流失,為 0 (表示不太可能流失) 或 1 (表示非常可能流失)。流失定義為 7 天都沒有活動。
  • 上次遊玩後經過的天數:玩家上次登入之後經過的大致天數。
  • 購買次數:玩家進行應用程式內購的大致次數。
  • 工作階段數量:玩家工作階段的大致數量。工作階段以玩家登入 Google Play 遊戲服務的次數為準。
  • 工作階段百分位數:玩家工作階段的大致百分位數,為 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);
  }
}];

使用玩家統計資料的提示

Play Stats API 可讓您根據玩家參與情形和消費行為,輕鬆辨別各種玩家類型,並採用合適的策略,以便讓玩家擁有更優質的遊戲體驗。

以下表格列出部分玩家族群範例,以及推薦的參與策略:

玩家族群 參與策略
經常遊玩,且工作階段數量和消費百分位數都很高的玩家,但是沒玩遊戲的時間已經達到一個禮拜以上。
  • 發送通知,說明玩家回來玩遊戲時可以得到的折扣或特別獎勵。
  • 顯示可以展示玩家豐功偉業的歡迎回來訊息,並贈送專門用來鼓勵玩家回來玩遊戲的徽章。
參與度高但消費百分位數低的玩家。
  • 特別規劃獎勵,吸引這類玩家邀請好友一起安裝並遊玩您的遊戲。這個方法旨在展示玩家十分享受遊戲,以便吸引新玩家。
高消費金額玩家,並出現已經過了高峰期,而且遊玩頻率開始下降的跡象。
  • 設計專屬獎勵來再次引起玩家的興趣,例如提供高價值但效期短的工具、武器或折扣。
  • 在玩家下次登入時顯示影片,引導對方使用社群功能 (如戰隊攻擊),吸引玩家更頻繁參與遊戲,並增加遊戲時間。