制作类游戏:上下文

本部分的目的是介绍使用 Economy V2 的一些功能(如物品栏、商店、捆绑包等)创建“制作类游戏”的步骤!

注意

本示例使用 Visual Studio 2022 作为直接连接到 PlayFab API(更具体地说,是 Economy V2 模块)的 C# 控制台应用程序。

游戏上下文

在开始之前,我们必须首先制定一组基本规则和游戏要求。

你正在构建一款基于文本的简单制作类游戏,在这个游戏中必须组合各种物品才能制作冰淇淋! 你将使用 PlayFab Economy V2 系统来存储各种制作食谱和当前玩家物品栏内容的相关信息。

基本物品

游戏具有以下物品集:

  • 石头
  • 石砖
  • Gold
  • 电子元件
  • 冰箱
  • 奶油
  • 冰淇淋

我们在进入“创建物品”步骤时需要创建它们。

初始物品栏

每个玩家在开始游戏时物品栏中都应包含以下物品和数额。

  • 三个石头
  • 一个黄金
  • 一个奶油

位置/商店

所有食谱都应归入三个单独的位置,这些位置代表玩家在制作物品时应前往的唯一商店/市场。

制作食谱/物品应根据食谱/物品价格消耗/扣除所需物品数,并向玩家授予正在制作的任何物品。 以下列表详细介绍了所有位置以及其中可用的食谱。

位置 1:科学仪器

  • 两个石头制作一个石砖
  • 一个石砖 + 一个黄金制作一个电子元件

位置 2:炼金引擎

  • 一个电子元件 + 一个石头制作一个冰箱

位置 3:厨房

  • 一个奶油 + 一个冰箱制作一个冰淇淋

注意

在厨房中制作冰淇淋时,需要 1 个冰箱,但冰箱不应易耗品。 换句话说,在该事务完成后,物品栏中的冰箱数量必须与之前相同。

其他功能

重置物品栏

还可以添加一个功能,使玩家能够重置其物品栏。 可以选择清空物品栏或将其重置为起始物品栏物品。 建议使用我们稍后进一步探索的 ExecuteInventoryOperations API 调用。

使用 PlayFab

我们既然已经明确游戏上下文,你可能想知道我们如何使用 PlayFab 来解决此问题。 这非常简单,当我们讨论“制作”时;PlayFab 将此视为购买。 游戏中用于制作的“食谱”也转换为 PlayFab 的价格。 而对于游戏位置,这些只是用户可前往其中制作(购买)物品的商店

例如,假设用户想要制作一个冰箱,为此他们需要一个电子元件一个石头,在表面上,这看起来是在制作,但在后台,用户是以一个电子元件一个石头的价格购买冰盒。 在本例中,一个电子元件一个石头视为制作冰箱的食谱,但实际上它只是价目表。 用户若要制作冰箱,他们必须进入游戏中的炼金引擎位置,该位置只是在 GameManager 上设置为商店