Skip to main content

ドロップ テーブル (Legacy Economy)

Economy v1 API はメンテナンス モードにあり、新機能は追加されず、バグ修正のみが行われます。v1 API は当面の間、維持されます。 PlayFab Economy の次のバージョンの詳細については、Economy v2 の概要 を参照してください。
このチュートリアルでは、PlayFab Game Manager を使用してドロップ テーブルを作成する手順を紹介します。 ドロップ テーブルを使用すると、インベントリ アイテム をランダムに生成でき、シーケンシャル ドロップ テーブルはプレイヤー報酬にランダム性を提供できます。
  • カタログインベントリ、および PlayFab Game Manager に既に精通していることを前提としています。
  • 標準の、バンドルでもコンテナーでもないアイテムを含む プライマリ カタログ が必要です。
  • 少なくとも 1 つ の仮想通貨を定義し、ゲーム内の “無料” 通貨として使用する必要があります。
独自のアイテム セットを使用してもかまいませんが、ここではアイテムの重複した分類を作成することを目標とします。 例として、次のアイテム テーブルを使用します。 同様のアイテム セットをカタログで用意できたら、ドロップ テーブルを構築する準備が整います。

ドロップ テーブルの構築

Game Manager で:
  1. タイトル に移動します。
  2. 左側のメニューから Economy を選択します。
  3. Catalogs タブに移動し、プライマリ カタログを選択します。
  4. Drop Tables を選択します。
画面はこの例と似ているはずです。 各アイテム記述子に基づいて Drop Tables の構築を始めましょう。最初の分類は Equipment Type なので、Accessories という名前の新しい Drop Table を作成します。
  1. New Drop Table ボタンを選択します。
  2. Table IdAccessories に設定します。
  3. ADD TO DROP TABLE を選択します。Pick multiple items ポップアップが表示されます。
  4. アイテムの ID の横にある Add ボタンを選択して、次のアイテムを追加します。
    • Common Accessory
    • Uncommon Accessory
    • Rare Accessory
    • Legendary Accessory
  5. Close ボタンを選択します。
  6. アイテムの Weight 値をレアリティに応じて調整します。
    • Common: 1000
    • Uncommon: 100
    • Rare: 10
    • Legendary: 1
    重みは、アイテムがお互いに対してどれくらいの頻度でドロップするかを示します。ここに示す例では、Legendary 1 個につき Common が約 1000 個 ドロップします。
  7. SAVE DROP TABLE を選択します。
Accessories が完了したら、同じ手順で ArmorsWeapons のドロップ テーブルを作成します。 もう 1 つの分類はレアリティ別なので、Common Equipment から始めて代替のテーブル セットを作成します。
  1. New Drop Table ボタンを選択します。
  2. Table IdCommon Equipment に設定します。
  3. ADD TO DROP TABLE を選択します。Pick multiple items ポップアップが表示されます。
  4. アイテムの ID の横にある Add ボタンを選択して、次のアイテムを追加します。
    • Common Accessory
    • Common Armor
    • Common Sword
  5. Close ボタンを選択します。
  6. Common Equipment のオプションがそのスロットにどのように配置されるかに応じて、アイテムの Weight 値を調整します。
    • Common Accessory: 1
    • Common Armor: 4
    • Common Sword: 5
  7. SAVE DROP TABLE を選択します。

ドロップ テーブルの使用

次の 2 つの PlayFab Server API メソッドを使用して、プログラム的にドロップ テーブルにアクセスできます。
  1. GetRandomResultTables
  2. EvaluateRandomResultTable
GetRandomResultTables を使用すると、Game Manager に入力した生のドロップ テーブル データを読み取れます。
GetRandomResultTables はランダム値をロールしたり、結果を付与したりは しません。この API を使うと、データを読み取り、必要に応じて情報を解析できます。

オプション 1

結果ハンドラーは、GetRandomResultTablesResult としてフォーマットされた、作成したドロップ テーブルの構造情報を受け取ります。 または、EvaluateRandomResultTable API を使用して、PlayFab にテーブルの評価を 代わりに 行わせ、単一のアイテム結果を返させることもできます。これにより、提供された重みに従ってロールされた単一アイテムを生成するために使用できる itemId が返されます。 その後、2 回目の呼び出しでアイテムを作成し、プレイヤーに付与できます。

オプション 2

まとめると: オプション 1 - データを 1 回読み込んでキャッシュし、自分自身のゲーム サーバーでロールを 自分で 実行できます。このオプションは PlayFab への呼び出しが少ないため待機時間が短く、ゲーム固有のロジックに基づいてロールをカスタマイズできます。 オプション 2 - PlayFab に多くの作業を任せますが、複数の API 呼び出しがあるため待機時間が 長く なることに注意してください。

ドロップ テーブルの高度な使用法 (ルート ボックスの設定)

ドロップ テーブルは、バンドルやコンテナーからリンクできます。バンドルは、1 回の購入でランダムなアイテムのスタックが得られる、仮想通貨ストアに適したオプションです。 たとえば、特定のドロップ ルールを持つ 11 アイテム バンドル があるとします。この場合、Legendary アイテムを 1 つ保証するというセールス ポイントを顧客に示せます。また、プレイヤーが 運が良すぎて 11 個の Legendary を受け取ることのないように 制限 もかけます。

新しいドロップ テーブル

文字通り あらゆるもの をドロップできるドロップ テーブルを構築しましょう。実際、Anything と呼ぶことにします。 このドロップ テーブルを作成するときは、他の ドロップ テーブルをオプションとして与え (Pick multiple items ポップアップで Drop Tables タブを選択して他のドロップ テーブルを追加します)、適切な重みを割り当てます。

バンドルの追加

この時点でドロップ テーブルは完了したので、Bundle を追加します。
  1. 左側のメニューから Economy を選択します。
  2. Catalogs タブに移動し、プライマリ カタログを選択します。
  3. Bundles を選択し、New Bundle を選択します。
  4. Item Id11-Item Drop に設定し、Consumable を選択し、By time15 Seconds を選択します。
  5. ADD TO BUNDLE を選択します。
  6. Pick multiple items ポップアップで、Drop tables タブを選択します。
  7. ID の横にある Add ボタンを選択してドロップ テーブルを追加します。
  8. Quantity フィールドを下の画像に示されている値に設定します。
  9. SAVE BUNDLE を選択します。
この例で作成した Bundle には、いくつかの機能が使われています。
  • あらゆる 種類のアイテムには Item ID が必要です。
  • Bundle はそれ自体が 1 つのアイテムとしてカウントされ、そのコンテンツは付与と同時に配信されます。このため、Bundle 自体を消費可能とし、配信から 15 秒後に期限切れになるようにしています。
  • 異なる Drop tables を異なる数量で追加して、11 アイテム が配信されるようにしますが、異なるアイテムは異なるテーブルでロールされます。
    • 最初に、少なくとも 1 個の Legendary アイテム を保証するため、最初のスロットは Legendary Equipment でロールされます。
    • 次の 3 スロットは Anything でロールされ、さらに Legendary をロールする可能性もあれば、より望ましくない Common Equipment をロールする可能性もあります。これらの 3 アイテムはロール結果が大きく異なる可能性があるため、これらのロールが 良い ロールか 悪い ロールかを決定します。
    • 最後に、残りのスロットを保証された RareUncommon のアイテムで埋めることで、11 アイテム のロールが 良すぎたり 悪すぎたりしないようにします。

まとめ

ドロップ テーブルは、潜在的なアイテムと重みのリストから 1 つのアイテムをランダムに生成します。バンドルとコンテナーは、ドロップ テーブルを使用してプレイヤーに 1 つまたは複数のアイテムを配信する最も簡単な方法の 1 つになります。 CloudScript から、次の Server API メソッドのいずれかを使用して、ドロップ テーブルを手動で使用できます。
  1. GetRandomResultTables
  2. EvaluateRandomResultTable
最終更新日 2026年8月13日