目录 v2 快速入门
Economy v2 现已正式发布。如需支持和反馈,请访问 PlayFab 论坛。
- 设置 v2 目录的权限、设置和物品。
- 设置收据验证
- 演示购买物品
第 1 部分:目录概览
步骤 1 – 获取权限
第一步是在 Game Manager UI 中的 ⚙️ Title Settings > Economy (V2) 下的设置页面中启用目录。你可以使用UpdateCatalogConfig API 并将 IsCatalogEnabled 标志设置为 true。
要与目录交互,你要么需要登录 GameManger 并使用站点工具,要么获取用于使用 API 的实体令牌。获取实体令牌的最简单方法是使用 GetEntityToken API。
要以管理员或授权服务身份调用 API(在创建第一个目录物品之前需要执行此操作),你需要包含带有 title secret key 的 X-SecretKey 头。你可以在 Game Manager UI 中的 ⚙️ Title Settings > Secret Keys 下创建 title secret key。
API
C# SDK
步骤 2 - 配置目录设置
目录设置 包括许多不同的配置,从内容类型到用户生成的内容。你可以通过 API 更新和检索它们,并在 Game Manager 中轻松可视化其中许多设置。Game Manager
- 在 Game Manager 中,导航到 ⚙️ Title Settings > Economy。
- 在 Catalog (V2) 选项卡下,转到 Catalog Settings
- 创建默认的 Content Type(创建”Game Item”类型是一个好的起点)。
API
调用 Catalog/GetCatalogConfig 方法,然后 UpdateCatalogConfig 目录 ContentTypes 数组,其中包含一个 Catalog Type。步骤 3 - 将物品发布到目录
GameManager
导航到 Economy > Catalog (V2)。 在 Items 选项卡下,选择 New Item。 填写所需的元数据——只有四个必需属性(Creator Type、Title、Start date 和 Content type)。选择 Publish。API
通过调用 CreateDraftItem 端点创建”Draft”目录物品:- 在 X-EntityToken 头中的 EntityToken(来自 GetEntityToken 或其他 PlayFab
login调用) - 物品 CreatorEntity.Id 中的 PlayFab Title ID
C# SDK
将物品置于 Draft 状态不是必需的——Draft 意味着当你希望在某段时间内迭代元数据时使用。我们支持参数”publish”,当设置为”true”时,将立即发布该物品。根据你的模式,这可能会为你节省一些调用量。
步骤 4 - 进行搜索
发布调用成功后,可以使用先前发布的 ItemId 和 SearchItems 端点搜索该物品。Catalog/Search API 使用提供给 API 的一组参数对已发布的目录执行搜索,返回一组分页结果。Game Manager
Game Manager 搜索是不言自明的,并且存在于每个 Catalog v2 页面上。Published 和 Draft 过滤器在顶部。选择 Search 按钮旁边的 Filters (Funnel) 图标以查看过滤器列表。选择Enter ODATA filter 来添加 OData 过滤器。
API
Catalog/search 的 filter、orderBy 和 select 字段使用 OData 作为查询标准。
第 2 部分:库存和虚拟货币概览
库存物品和虚拟货币是 PlayFab 为玩家实体支持的两个游戏内虚拟商品”桶”。过程为:- 设置初始虚拟货币
- 创建带有虚拟货币成本的物品
- 将物品添加到玩家的库存
步骤 1:创建货币
虚拟货币是游戏内经济的基础。可以向玩家和角色授予这些货币,然后可以用来购买或交易物品。 物品可以以虚拟货币或真钱为成本。每个游戏可以支持多种任意虚拟货币。货币为你的游戏提供了实现你所需的任何交换媒介的灵活性(例如,金币、宝石、心或星际信用点数)。Game Manager
- 打开 Game Manager 并转到 Economy > Catalog (V2)。
- 选择 Currency 选项卡。
- 选择 New Currency,设置 Start date、用于”neutral”键的可读 Title,并在 Friendly ID 字段中输入此货币的唯一货币代码。
- 选择 Save as draft。物品 ID 用作草稿货币代码。
- 通过在货币列表中单击选择 Draft 过滤器来查看你的新货币。
- 再次编辑货币并选择 Save and publish。Friendly ID 用作已发布货币代码。
API
通过调用类型设置为”currency”的 CreateDraftItem 端点,使用以下内容创建草稿货币目录物品:- 具有目录权限的 EntityToken
- Entity.Id 作为物品”Creator”
- PlayFab Title ID
- 物品应为”Currency”类型的捆绑包,包含 Title 和 Description
步骤 2 - 授予货币
Game Manager
你的实体玩家需要虚拟货币才能进行购买。- 打开 GameManager,导航到 Players,然后选择 Search 以检索玩家列表。
- 选择你要授予货币的 Player ID。
- 选择 Inventory (V2) 选项卡。
- 过滤到”Currency” Type 并选择 Pick multiple items 以查看完整的货币列表。
- 选择你创建的 Currency 并为实体 Player 输入新的数量。
- 选择 Save。
API
你可以调用 AddInventoryItems 向实体钱包添加货币。默认情况下,你需要使用 Title Level Entity Auth 任意地向玩家的库存中添加虚拟货币。AddInventoryItems 被认为是 Title 管理员调用,通常不是游戏客户端直接调用的内容。
步骤 3 - 更新目录物品
物品必须具有货币值,才能使用虚拟货币购买。GameManager
- 打开 Game Manager 并导航到 Economy。
- 选择 Catalog (V2) 选项卡,并确保你已过滤到 Published 物品。
- 选择你之前创建的物品的标题。
- 选择 Edit draft item。
- 选择 ➕ Add new price 并通过选择你创建的 Currency 物品来设置 Amount。选择 Add 以完成。
- 选择 Save and Publish。
API
通过调用 GetDraftItem 端点获取目录物品的草稿。然后使用 UpdateDraftItem 端点更新草稿,使用:- 在 X-EntityToken 头中的 EntityToken(来自 GetEntityToken 或其他 PlayFab
login调用) - 物品 EntityKey.Id 中来自上一个调用的 Entity.Id
Publish 设置为 true,那么你必须使用 PublishDraftItem 将其推送到已发布状态。物品发布后,就可以搜索并公开可用。你需要使用从 GetDraftItem 响应返回的”itemId”才能发布。
