次の方法で共有


クイック スタート ランキング

このガイドでは、ランキング サービスの開発環境を設定する方法について説明します。 また、Web サイト ゲーム マネージャー からクイック ランキングを作成する方法についても説明します。

前提条件

PlayFab ランキング サービスを使用するには、PlayFab アカウントが必要です。 アカウントを作成する手順については、「認証」 を参照してください。

ランキングの作成

左側のメニューで [進行状況] を選択します。

PlayFab ランキングのメイン メニュー

上部のメニューから [ランキング] タブを選択します。

PlayFab ランキング ゲーム マネージャー

次に、[新しいランキング] ボタンに移動し、ランキング定義を作成します。

PlayFab ランキングの定義

ここでは、ランキングのすべての側面を構成できます。 使用可能なパラメーターとランキングを作成する方法の詳細については、以下を参照してください。

最終結果は次のようになるはずです。

PlayFab ランキングの使用状況

環境のセットアップ

ここでは、C# SDK を使用するための開発環境を設定する方法について説明しますが、ここで紹介する概念は他の SDK や単純な HTTP リクエストでも機能します。

TitleId と DeveloperSecretKey の設定

タイトル エンティティとして認証する場合は、DeveloperSecretKey が必要です。

PlayFabSettings.staticSettings.TitleId = ""; // Change this value to your own titleId from PlayFab Game Manager
PlayFabSettings.staticSettings.DeveloperSecretKey = ""; // Change this to your title's secret key from Game Manager

タイトルの作成と秘密鍵の取得

  • https://playfab.com/ にログインします。
  • タイトルを作成する
    • 設定の [API 機能] セクションで [タイトル ID] を見つけます。
  • 秘密鍵を生成する:
    • タイトル ビューの左上にあるタイトル名の横にある歯車
    • [タイトルの設定]
    • シークレット キー
    • 新しいシークレット キー

ゲーム マネージャー内で [秘密鍵] セクションを見つけたときの UI は次のようになります。

PlayFab ランキング キー

タイトルとしてログイン

書き込み操作の場合、ゲーム サーバーの TitleEntity を使用することをお勧めします。このメソッドは、すべてのリクエストで使用される AuthenticationContext を返します。

public static async Task<PlayFabAuthenticationContext> LoginAsTitleEntity()
{
    GetEntityTokenRequest request = new GetEntityTokenRequest()
    {
        Entity = new PlayFab.AuthenticationModels.EntityKey()
        {
            Id = PlayFabSettings.staticSettings.TitleId,
            Type = "title",
        },                
    };

    PlayFabResult<GetEntityTokenResponse> entityTokenResult = await PlayFabAuthenticationAPI.GetEntityTokenAsync(request);

    PlayFabAuthenticationContext authContext = new PlayFabAuthenticationContext
    {
        EntityToken = entityTokenResult.Result.EntityToken
    };
    
    return authContext;
}

プレイヤーとしてログイン (プレイヤーの作成)

このメソッドは、 title_player_account 型のエンティティを返す識別子に基づいてプレーヤーを作成します。 詳細情報: クイックスタート エンティティ

private static async Task<PlayFabAuthenticationContext> LoginAsPlayer(string customId = "GettingStartedGuide")
{
    LoginWithCustomIDRequest request = new LoginWithCustomIDRequest { CustomId = customId, CreateAccount = true };

    PlayFabResult<LoginResult> loginResult = await PlayFabClientAPI.LoginWithCustomIDAsync(request);

    return loginResult.Result.AuthenticationContext;
}

エンティティの表示名プロパティを設定する

"Get Leaderboards API" の応答の一部として DisplayName プロパティを使用できるようにするには、作成したエンティティごとに次のコードを実行して、エンティティをゲームのカスタム表示名にマップする必要があります。

private static async Task UpdateEntityDisplayName(PlayFabAuthenticationContext context, string customId)
{
    SetDisplayNameRequest request = new SetDisplayNameRequest()
    {
        AuthenticationContext = context,
        DisplayName = customId,
        Entity = new PlayFab.ProfilesModels.EntityKey()
        {
            Id = context.EntityId,
            Type = context.EntityType,
        },
    };

    PlayFabResult<SetDisplayNameResponse> updateNameResult = await PlayFabProfilesAPI.SetDisplayNameAsync(request);
}

関連項目