PlayStream 为游戏开发人员提供了一系列功能,使他们能够分析从游戏内事件收集的数据、获取有价值的见解和增强玩家参与度,还可用于 LiveOps。 本文档详细介绍了其中每个功能。
PlayStream 功能
- 事件管道 - 将游戏的全部数据流统一到单个数据流中。 PlayFab 游戏服务会自动将事件插入 PlayStream 中,你可以使用我们的新 WriteEvent API 客户端和服务器方法添加自定义事件。 我们的卖场加载项也会自动生成事件。 事件以 JSON 数据的形式进行管理。
- 实时规则引擎 - 可以通过 PlayStream 评估复杂规则以响应传入事件,并触发各种操作(包括 CloudScript)。
- 实时细分系统 - 可以基于各种玩家属性将玩家分为各个细分。 细分会实时计算,始终保持最新状态。 当玩家进入或退出细分时,可能会自动触发操作。
- 事件数据的实时可视化 - 包含实时事件调试器。
- 将部分或所有事件通过 Webhook 发送到外部 Web 服务的功能 - 这些 Webhook 可以通过安装卖场加载项来自动配置,也可以手动配置为将事件发送到您自己的服务器。
- 事件存档 - 可以在其中筛选、搜索和查看历史事件,包括事件传递历史记录。
注意
PlayStream 现在支持 实体事件 以及经典 PlayStream 事件。 若要了解详细信息,请在完成此教程后参阅包含实体事件的 PlayStream一文。
让我们更详细地了解 PlayStream 功能。
PlayStream 事件管道和监视器
查看运行中的事件管道的最简单方法是通过 PlayStream 调试器。 一旦在 游戏概述 部分中选择并进入游戏的“PlayStream 监视器”选项卡,就可以注意到监视器。
PlayStream 监视器是游戏的所有事件的实时流式传输,包括选择使用我们的 WriteEvent API 方法发送的任何自定义事件。
在开发过程中,这非常重要,因为通过它可以在测试客户端和服务器端代码时立即查看后端所发生的情况。 它还能将你直接链接到玩家帐户,以便针对所处理的游戏逻辑进行检查。
每个事件中都有几个可选择的字段。 如果选择“(i)”信息圆圈,则会看到原始事件 JSON 数据。
还可以选择玩家的 ID 以直接跳转到玩家档案。 某些其他事件也具有可选择的字段。
处于特定玩家视图中时,可以选择“PlayStream”选项卡,该选项卡应显示按该特定玩家筛选的实时监视器视图。
玩家细分和操作
使用这些事件可以设置细分,它们可基于大多数玩家属性在用户中定义玩家。 这一切都是实时进行 - 因此不会感知到滞后(即使是大规模情况下)。
如果可以将某个事件关联到要用作区分因素的内容,则可以为它创建细分。 细分将根据玩家个人资料中的数据追溯到 所有 玩家。 假设你想要定义一个玩家细分,其中 XP > 3000,随后 XP > 3000 的每个玩家现在都将位于该细分中。
每当名为“Total_XPGained”的统计信息更改时,都会对此特定细分进行计算。 如果条件(> 3000)的计算结果为 TRUE,则玩家将进入“高 XP 玩家”细分,并触发相应的操作。 在这种情况下,它将发送推送通知,并向玩家授予黄金。 也可以在玩家离开细分时触发不同的自定义操作,以便最终做出其他所需更改。 有各种基本操作可用,包括向玩家授予物品、授予虚拟货币、更改统计信息、封禁玩家、向玩家发送电子邮件或发送推送通知。 还可以改为触发自定义 CloudScript 运行。
规则和操作
还可以使用上面所示的相同操作系统来响应来自游戏的特定事件。 例如,下面所示的规则将演示在看到自定义事件 (Client_StoreVisit) 时,玩家将如何收到一些虚拟货币并收到感谢其访问的推送通知。
使用规则和操作可以影响游戏中的 LiveOps 行为,而无需对游戏客户端进行任何更改。
Webhook
还可以设置 Webhook,以便将经过 PlayStream 的部分或所有事件都推送到外部服务。
例如,可以使用下面所示的功能在任何玩家登录时调用自己的后端服务器。
PlayStream Webhook 是对所提供的终结点进行的 POST 调用,会在调用正文中传递事件的所有数据。 借助此机制,可以使用自己的自定义服务对实时数据启用附加自定义操作。
数据资源管理器
默认情况下,会在基于服务层的特定时间段内保留事件。 可以在两个位置查看所有事件历史记录 - 可以在“数据资源管理器基本”选项卡或“数据资源管理器高级”选项卡中查看游戏的所有事件。两者都位于“游戏管理器”的“数据”部分下。
自定义标记
自定义标记功能允许游戏开发人员使用特定于企业的元数据进一步丰富其标准 PlayStream 事件。
这是一项生活质量功能,旨在使基于 PlayFab 的构建更轻松、更可扩展。
自定义属性
此功能允许你存储和访问有关玩家的其他关键数据点。 例如,可以使用自定义属性来保存和检索与玩家首选项相关的数据,例如他们最喜欢的游戏模式或角色类型。 通过这样做,可以创建更具针对性的细分,以便在细分、相关操作(如 CloudScript)或试验中为玩家提供定制体验。
V1 与 V2 事件
PlayStream 提供 V1 和 V2 事件,下表提供了每种事件类型的功能比较:
功能 | V1 (玩家/游戏/角色) | V2 (基于实体的) |
---|---|---|
事件资源管理器 | 是 | 是 |
数据连接 | 是 | 是 |
PlayStream 调试器 | 是 | 是 |
操作 | 执行功能 发送电子邮件 推送通知 CloudScript 玩家封禁操作 GrantVC 删除玩家 增量统计信息 |
执行功能 发送电子邮件 物品栏/AddVC 物品栏/GrantItem |
段数 | 是 | 否 |
事件触发规则 | 是 | 是 |
Webhook | 是 | 否 |
自定义属性 | 是 | 是 |
S3 存档器 (旧版) | 是 | 否 |
PlayStream 如何为游戏提供支持
下面是如何使用 PlayStream 为游戏提供支持并释放其全部潜力的一些示例:
- 触发操作,例如在玩家登录时授予物品和虚拟货币、完成教学关卡或达到特定里程碑,并使用此数据来定制玩家的体验。
- 自动标记或封禁表现出作弊行为的玩家。
- 收集有关玩家进度、游戏机制和关卡难度的数据。 使用此数据对游戏平衡和优化做出明智的决策,以确保玩家获得具有挑战性但愉快的体验。
- 鼓励和奖励游戏中的积极社交互动。
- 当玩家达到里程碑或进行购买或完成关卡时,发送自动推送通知或电子邮件。