成就

成就是在游戏中提高用户互动度的绝佳方式。您可以在游戏中实现成就功能,以鼓励玩家尝试其通常不使用的功能,或者在游戏中运用完全不同的玩法。成就功能还能为玩家提供趣味互动,让他们相互比较进度,展开轻松的竞技。

如需了解如何为您的平台实现成就功能,请参阅客户端实现

属性

如需了解成就的运行机制,您需要熟悉一些与成就相关联的属性。

每项成就均与以下基本元素相关联:

  • Id:Google Play 管理中心生成的唯一字符串。您将使用此唯一 ID 来指代游戏客户端中的成就。
  • 名称:成就的简称(例如“馅饼大师”)。该值最多可包含 100 个字符。
  • Description:成就的简要描述。通常告知玩家成就的达成方式(例如“日落前烤制一份柠檬蛋白派”)。该值最多可包含 500 个字符。
  • Icon:与您的成就相关联的方形图标。如需了解创建成就图标时的最佳实践,请参阅图标指南部分。
  • List order:玩家查看游戏成就时未解锁成就的显示顺序。您可以按任意顺序排列。达成的成就会按照达成顺序显示在列表顶部。

状态

成就分为以下三种状态:

  • 隐藏成就是指成就的详细信息将对玩家隐藏。Play 游戏服务将为处于隐藏状态的成就提供通用的占位符说明和图标。如果成就包含您不希望过早泄露的游戏剧透(例如“发现自己从头到尾都是幽灵!”),建议设置为隐藏状态。
  • 显示成就表示玩家已知晓该成就,但尚未达成该成就。大多数成就的初始状态就是“显示”。
  • 达成成就表示玩家已成功达成该成就。玩家可以离线达成成就。当游戏上线后,它会与 Play 游戏服务同步以更新成就的达成状态。

分步成就

可以将成就指定为标准或分步成就。通常情况下,分步成就是指玩家需要在较长的一段时间内逐步达成成就。当玩家在分步成就中取得进展时,您可以向 Play 游戏服务报告该玩家已完成的进度。

Google Play 服务会记录进度信息,当玩家满足成就达成条件时通知游戏,并告知玩家距离目标的完成进度。

显示玩家进度达到 23% 的分步成就示例。
显示玩家进度达到 23% 的分步成就。

分步成就的进度将在不同游戏会话之间累积,并且无法在游戏中移除或重置。例如,“赢得 50 场比赛”就属于分步成就,而“连续赢得 3 场比赛”则不属于分步成就,因为玩家输掉比赛后进度会重置。“拥有 5000 个扑克筹码”也不属于分步成就,因为玩家在游戏过程中可能获得或失去筹码。对于后两项成就,您需要自行跟踪玩家的“连胜”状态或筹码总数,当玩家达成目标时解锁标准成就。

创建分步成就时,您必须定义解锁该成就所需的总步骤数(必须是 2 到 10,000 之间的数字)。当玩家推进成就进度时,您应向 Google Play 游戏服务报告用户新完成的步骤数。当总步骤数达到解锁值时,成就将自动解锁(即使处于隐藏状态)。您无需存储用户的累积进度。

积分

每项成就均设有积分值。玩家获得的积分必须为 5 的倍数,且一款游戏所有成就的总积分不得超过 1000 分(可低于该数值)。此外,单项成就积分不得超过 200 分。

跟踪经验值 (XP)

在支持 Google Play 游戏服务的游戏中,玩家达成成就可提升游戏玩家资料等级。每项成就每获得 1 积分,玩家即可获得 100 经验值 (XP)。也就是说:

XP for an achievement = 100 * (point value for the achievement)

Play 游戏服务会记录每位玩家的经验值,当玩家积累的经验值达到升级条件时,会向 Google Play 游戏应用发送通知。玩家可以在 Google Play 游戏应用的“个人资料”页面中查看自己的等级和 XP 历史记录。

最低成就数量

集成成就系统的游戏在发布前至少需设置 5 项成就。测试阶段可使用 5 项以下成就,但建议发布前至少创建 5 项成就。

最高成就数量

成就数量受积分上限和分配方式的限制。总积分上限为 1,000 分,每项成就至少要分配 5 积分,因此最多只能设置 200 项成就。不过,如果为单项成就分配更高的积分,可设置的成就总数就会相应减少。

添加成就

首次使用 Google Play 管理中心创建成就的方式有两种:

创建成就

如需为新游戏和未发布的游戏创建成就,请完成以下步骤:

  1. Google Play 管理中心内,选择一款游戏。
  2. Play 游戏服务 - 成就页面(拓展 > Play 游戏服务 > 设置和管理 > 成就)上,选择创建成就
  3. 添加成就页面中,填写表单。
  4. 点击保存为草稿
  5. 创建成就后,您需要发布游戏

添加更多成就

如果您已有一些成就,并且想添加更多成就,请执行以下操作:

  1. Google Play 管理中心内,选择一款游戏。
  2. Play 游戏服务 - 成就页面(拓展 > Play 游戏服务 > 设置和管理 > 成就)上,选择添加成就

导入成就

如需一次向游戏中添加多个成就,请按照以下步骤操作:

  1. 创建一个包含您的成就的 ZIP 文件。
  2. 上传文件。

如需详细了解 ZIP 文件,请参阅 ZIP 文件指南

如需导入成就,请执行以下操作:

  1. Google Play 管理中心内,选择一款游戏。
  2. Play 游戏服务 - 成就页面(拓展 > Play 游戏服务 > 设置和管理 > 成就)上,选择导入成就
  3. 导入成就页面中,点击上传
  4. 选择要上传的 ZIP 文件。
  5. 点击保存为草稿
  6. 导入成就后,您需要发布游戏

发布游戏

当您测试并发布游戏后,所有游戏成就也会随之发布。

修改成就

如需修改已创建的成就,请在 Google Play 管理中心的成就标签页中选择相应成就。此时,您会看到首次创建成就时使用的表单,并可酌情修改任何字段。

修改完成就后,点击保存为草稿按钮。新修改的成就将处于“可供测试”阶段,您可以对其进行测试。如果一切正常,请从下拉列表中选择重新发布。这将重新向公众发布您的游戏以及所有更新后的成就。

撤销修改

如果您对当前成就不满意,希望还原到之前的状态,从 Google Play 管理中心的下拉列表中选择还原即可将所有成就还原到之前发布的版本。

删除成就

无法删除已发布的成就。

您只能删除处于预发布状态的成就,方法是点击成就表单底部标记为删除的按钮。

重置成就

您只能重置草稿成就的玩家进度数据。

  • 如需在 Google Play 管理中心内重置成就,请点击该成就表单底部的重置成就进度按钮。
  • 如需以程序化方式重置成就数据,请调用 Management API Achievements 方法

图标指南

图标需以 512 x 512 像素的 PNG、JPEG 或 JPG 格式创建。您只需向我们提供已达成的成就的图标。我们将自动为显示的图标生成灰度版本。因此,我们建议您在成就图标中包含彩色元素,以便用户区分显示的成就和达成的成就。

成就图标在 Android 消息框中显示时,会叠加圆形边框且隐藏外棱角。请确保图标在该显示效果下依然美观。

成就图标示例。
成就图标示例。

所有语言区域均使用相同的图标,因此我们建议您不要在图标中添加任何文本或本地化内容。

ZIP 文件指南

您可以使用 ZIP 文件一次导入多个成就。请参阅下表,了解要在 ZIP 文件中使用的确切文件名:

文件名 必需/可选 接受的值
AchievementsMetadata.csv 必需 每项成就的元数据。 请参阅属性
AchievementsLocalizations.csv 可选 提供成就名称和说明的翻译。
AchievementsIconMappings.csv 可选 将成就映射到其图标文件。
图标文件 可选 采用 PNG、JPEG 或 JPG 格式的图标。

ZIP 文件要求:

  • 不含子目录。
  • 文件名保持唯一。
  • 仅支持 CSV、PNG、JPEG 或 JPG 文件。
  • CSV 文件不得包含标题行。
  • 每个文件的大小不得超过 1 MB。
  • ZIP 文件所含文件数量不得超过 203 个。
  • ZIP 文件总大小不得超过 200 MB。

AchievementsMetadata.csv 格式

AchievementsMetadata.csv 文件包含每个成就的元数据。 该文件应以逗号分隔值形式按以下顺序包含相应信息:

    Name,Description,Incremental value,Steps Needed,Initial State,Points,List Order

下表对这些字段进行了说明:

CSV 列标题 必需/可选 接受的值
名称 必需 最多 100 个字符
说明 可选 最多 500 个字符
增量值 可选 TrueFalse
所需步骤数 如果 Incremental ValueTrue.,则必须提供此值 数字(不得包含分数或小数)
初始状态 必需 HiddenRevealed
积分 必需 5 的倍数,值必须介于 5 到 200 之间
列表顺序 可选 数字(不得包含分数或小数,且大于零)

AchievementsMetadata.csv 文件要求:

  • 每行都必须包含 7 个值。如果您想省略某个值,请将其留空。
  • NameDescription 字段将用作默认语言区域。
  • Name 字段在所有成就中都需保持唯一。
  • 以下字段不应包含英文逗号:NameDescription

AchievementsMetadata.csv 文件示例:

  Achievement1,Achievement One,True,100,Hidden,5,20
  Achievement2,Achievement Two,False,,Revealed,10,30

AchievementsLocalizations.csv 格式

AchievementsLocalizations.csv 文件为可选文件,用于设置不同语言区域的用户查看的成就描述数据。成就翻译需与游戏指定的语言区域保持一致。

该文件应以逗号分隔值形式按以下顺序包含相应信息:

   Name, Localized name, Localized description, locale

下表对这些字段进行了说明:

CSV 列标题 必需/可选 说明 接受的值
名称 必需 必须与 AchievementsMetadata.csv 中的 Name 列匹配。 最多 100 个字符
本地化名称 必需 成就的本地化名称。 最多 100 个字符
本地化说明 可选 以指定语言区域对成就进行的本地化说明。 最多 500 个字符
语言区域 必需 语言区域代码,例如 en-US 请先为游戏 添加翻译,然后再指定语言区域。请注意,您无法指定默认语言区域。

如需查看受支持的语言区域代码,请参阅 支持的语言列表。

AchievementsLocalizations.csv 文件要求:

  • 游戏中的成就名称在每个语言区域中均必须保持唯一。 例如,如果游戏同时支持 en-US 和 fr-FR 语言区域,则在 en-US 语言区域中名为“Achievement1”的成就在 fr-FR 语言区域中也可以名为“Achievement1”。
  • 每行应包含 4 个值。如果您想省略“本地化说明”值,请将其留空。

AchievementsLocalizations.csv 文件示例:

Achievement1,Achievement One,This is the description of achievement one in English.,en-US
Achievement1,Achievement Un,Voici la description de l'achievement un en français.,fr-FR
Achievement2,Achievement Two,Description of achievement two.,en-US
Achievement2,Logro Dos,Descripción del logro dos.,es-ES
Achievement3,Achievement Three,,en-US
Achievement3,Erfolg Drei,,de-DE

AchievementsIconMappings.csv 格式

AchievementsIconMappings.csv 文件为可选文件,用于将您的成就与给定图标相映射。该文件应以逗号分隔值形式按以下顺序包含相应信息:

Name, icon filename

下表对这些字段进行了说明:

CSV 列标题 必需/可选 说明
名称 必需 必须与 AchievementsMetadata.csv 中的 Name 列匹配。
图标文件名 必需 图标文件的名称。

AchievementsIconMappings.csv 文件要求:

  • 每行应包含 2 个值。
  • 图标文件只能采用 PNG 或 JPEG 格式。

AchievementsIconMappings.csv 文件示例:

Valid Achievement,valid-achievement-icon.png
Incremental Achievement,incremental-achievement-icon.jpeg
No Description,no-description-icon.png
Hidden Initial State,hidden-initial-state-icon.png
Large Point Value,large-point-value-icon.jpeg

图标文件

您在 AchievementsIconMappings.csv 文件中引用的图标必须存在于您当前导入的 ZIP 归档文件中。如需了解详情,请参阅图标指南

为成就添加翻译

您可以自行为与游戏相关联的成就指定翻译。在此之前,请确保先完成为游戏添加翻译中所述的步骤。

您可通过以下两种方式为游戏添加翻译:

  • 您可以使用导入成就选项,一次为许多新成就上传翻译。您无法使用此选项为现有成就上传翻译。

  • 您可以逐一为游戏中的每个成就添加翻译。 如需为每项成就自行添加翻译,请执行以下操作:

    1. 在 Google Play 管理中心内,打开游戏的成就标签页,然后选择一项现有成就。
    2. 在成就详情页面中,选择与您之前在游戏详情标签页中添加的语言相对应的标签页。
    3. 在该语言的成就详情页面中,修改包含该成就的相应翻译的表单。
    4. 点击保存即可存储翻译后的成就详情。

客户端实现

如需了解如何为您的平台实现成就功能,请参阅以下资源: