使用排行榜的手動層級
在本教學課程中,我們將學習如何在排行榜服務中套用一些屬性, 為玩家建立層級系統。為了理解如何根據服務屬性建立手動層級系統, 我們將從一個範例開始。假設我們有一款殺殭屍遊戲, 玩家在有限的時間內要盡可能獲得最多分數。可以採用不同的策略來獲得更多分數, 而且未受到任何傷害也能得分。 在此範例中,玩家會根據每場對戰的表現獲得經驗值。我們想要建立一個層級系統,將頂尖玩家 識別為「Saviors」等級,而其餘玩家則分布在 Bronze、Silver、Gold、Platinum 和 Diamond 等不同等級。建立排行榜
第一步是建立排行榜定義,其中包含為玩家排名的主要元素。對於我們的殭屍遊戲, 我們將使用多個分數。下列範例說明如何使用 C# SDK 建立排行榜定義。手動分層
正確建立排行榜後,我們現在可以繼續定義要如何建立層級。首先, 我們需要定義要如何劃分玩家群體。一般而言,等級越高, 玩家就越少。基於這個概念,以下是我們定義層級的方式。- Bronze:0 - 35% 的玩家。
- Silver:35% - 60% 的玩家。
- Gold:60% - 80% 的玩家。
- Platinum:80% - 90% 的玩家。
- Diamond:90% - 99.5% 的玩家。
- Saviors:前 0.05% 的玩家。
EntryCount 的屬性,它會告訴我們排行榜目前有多少列。
此數字與 SizeLimit 不同,後者代表排行榜的最大列數。
若要判斷玩家的層級,我們會取得玩家在排行榜中的位置,並將其除以 EntryCount
屬性,以了解他們落在所定義層級中的哪個位置。
快速範例:
- 底層玩家:在 10,000 名中位於第 8500 名的玩家位於群體的 85% 內,屬於 Bronze 層級。
- 中間玩家:在 10,000 名中位於第 3500 名的玩家位於前 35% 的玩家內,屬於 Gold 層級。
- 頂尖玩家:在 10,000 名中位於第 50 名的玩家位於前 0.5% 的玩家內,成為「Savior」。
結論
在本教學課程中,我們學到了如何執行下列作業:- 建立排行榜。
- 了解如何從排行榜查詢資料。
- 了解如何根據百分位數建立手動層級分布。
- 了解如何將玩家位置的結果對應至實際層級。
