Skip to main content

クラフト ゲーム: コンテキスト

このセクションの目的は、Economy V2 のインベントリ、ストア、バンドルなどの機能を使用して “クラフト ゲーム” を作成する手順を説明することです。
この例は、PlayFab API に直接接続する C# コンソール アプリケーションとして Visual Studio 2022 を使用して行われました。より具体的には Economy V2 モジュールです。

ゲーム コンテキスト

開始する前に、まずゲームの基本ルールと要件を確立する必要があります。 さまざまなアイテムを組み合わせてアイスクリームを作るシンプルなテキストベースのクラフト ゲームを構築します。PlayFab Economy V2 システムを使用して、さまざまなクラフト レシピと現在のプレイヤーのインベントリの内容に関する情報を保存します。

基本アイテム

ゲームには次のアイテム セットがあります。
  • Stone
  • Cut Stone
  • Gold
  • Electrical Doodad
  • Icebox
  • Cream
  • Ice Cream
アイテムを作成する ステップに達したときに作成する必要があります。

開始インベントリ

各プレイヤーは、インベントリに次のアイテムと数量でゲームを開始する必要があります。
  • 3 個の Stone
  • 1 個の Gold
  • 1 個の Cream

場所/ストア

すべてのレシピは、プレイヤーがそれらのアイテムをクラフトするためにアクセスすべき固有のストア/マーケットプレイスを表す 3 つの別々の場所にグループ化する必要があります。 レシピ/アイテムのクラフトは、レシピ/アイテムの価格に従って必要な数のアイテムを消費/減算し、クラフトされているアイテムをプレイヤーに付与します。次のリストには、すべての場所とその中で利用可能なレシピの詳細が示されています。

場所 1: Science Machine

  • 2 個の Stone → 1 個の Cut Stone
  • 1 個の Cut Stone + 1 個の Gold → 1 個の Electrical Doodad

場所 2: Alchemy Engine

  • 1 個の Electrical Doodad + 1 個の Stone → 1 個の Icebox

場所 3: Kitchen

  • 1 個の Cream + 1 個の Icebox → 1 個の Ice Cream
Kitchen で Ice Cream をクラフトする際、1 個の Icebox が使われますが、Icebox は消費すべきではありません。つまり、取引後もインベントリの Icebox の数は取引前と同じである必要があります。

その他の機能

インベントリのリセット

プレイヤーがインベントリをリセットできるようにする関数を追加することもできます。空にするか、開始インベントリ アイテムにリセットするかを選択できます。後で詳しく説明する ExecuteInventoryOperations API 呼び出しを使用したい場合があります。

PlayFab の使用

ゲーム コンテキストが明確になったので、これに取り組むために PlayFab をどのように使用できるか疑問に思うかもしれません。それは非常にシンプルです。“クラフト” と言うと、PlayFab はこれを購入として扱います。ゲームのクラフト用の “レシピ” も PlayFab の価格に翻訳されます。ゲームの場所に関しては、これはユーザーがアクセスしてアイテムをクラフト (購入) できる ストア に過ぎません。 たとえば、ユーザーが 1 個の Icebox をクラフトしたいとします。そのためには 1 個の Electrical Doodad1 個の Stone が必要です。表面的にはクラフトのように見えますが、裏で何が起こっているかというと、ユーザーは 1 個の Electrical Doodad1 個の Stone の価格で Icebox を購入しています。この場合、1 個の Electrical Doodad1 個の Stone のリストは Ice Box をクラフトするためのレシピとして扱われますが、実際には単なる価格リストです。ユーザーが Icebox をクラフトするには、ゲーム内の Alchemy Engine の場所に移動する必要があります。これは Game Manager 上で ストア として設定されています。
最終更新日 2026年8月13日