排行榜和排行榜集合

对于您在游戏中添加的每个排行榜,可以使用 iTunes Connect 来说明排行榜用作排名计算依据的得分以及排行榜的显示效果。

../Art/leaderboard_2x.png

有关开发游戏排行榜的信息,请参阅 《Game Center 编程指南》 中的 “排行榜”

在 iTunes Connect 中,您可以配置:

创建单个排行榜

通过单个排行榜,玩家可以在同一游戏中将自己的得分与其他玩家的得分进行比较。在 iTunes Connect 中配置排行榜时,您可以指定详细信息,如要收集的得分以及得分的排序方式。对于您需要的每种排行榜显示语言,您可以指定排行榜名称、得分格式和得分单位。您还可以添加本地化图像来说明排行榜中的得分。

当 app 不处于“审核中”状态时,您可以在 iTunes Connect 中为 app 配置排行榜。在排行榜显示在 app 的在线版本中后,您便无法将其删除。

输入排行榜信息时,请参阅 排行榜属性

bullet
配置单个排行榜
  1. 转到 app 的 Game Center 页面,如 导航到 app 的 Game Center 页面中所述。

  2. 如有必要,启用 Game Center。

  3. 在“Leaderboards”(排行榜)部分中,点按“Add Leaderboard”(添加排行榜)。

    ../Art/gc_add_lb_2x.png../Art/gc_add_lb_2x.png
  4. 在随即显示的对话框中,选择单个排行榜的选项。

    随即显示的表单中包含 排行榜属性中介绍的排行榜选项。

  5. 在“Leaderboard Reference Name”(排行榜引用名称)字段中,输入排行榜的内部名称。

    ../Art/gc_create_lb_2x.png

    您稍后将会在添加语言支持时,输入向用户显示的排行榜本地化名称。

  6. 在“Leaderboard ID”(排行榜 ID)字段中,输入排行榜的字母数字标识符。

    在 Game Kit 中,排行榜 ID 也称为 “类别” 。此值在排行榜保存后便无法更改。

  7. 在“Score Format Type”(得分格式类型)菜单中,选取一种格式。

  8. 选择“Best Score”(最高得分)或“Most Recent Score”(最新得分),指明要保存的得分类型。

  9. 选择“Low to High”(从低到高)或“High to Low”(从高到低)作为得分的排序次序。

    例如,如果是赛车游戏中显示的得分(即最短时间),则将“Sort Order”(排序次序)设置为“Low to High”(从低到高)。

  10. 如果您愿意,可在“Score Range”(得分范围)字段中输入得分范围。

    此范围界定了可能(有效)的得分值。如果玩家报告的得分不在此范围之内,则该得分会遭到忽略。

  11. 点按“Add Language”(添加语言),指定得分的显示文本。

    ../Art/gc_lb_add_lang_2x.png../Art/gc_lb_add_lang_2x.png
  12. 在随即显示的对话框中,配置显示文本,如 配置排行榜语言中所述。

    为 app 支持的每种语言或每个地区重复执行上述步骤。

  13. 点按“Save”(保存)。

    此时,新的排行榜会显示在排行榜列表中。

    ../Art/gc_add_lb_complete_2x.png

配置排行榜

如果您有多个排行榜,则可以:

若要了解如何管理已添加到组中的排行榜,请参阅 配置组

默认排行榜是指用户在 app 的 Game Center 中看到的首个排行榜。您创建的首个单个排行榜会自动设置为默认排行榜。

bullet
设置默认排行榜
  1. 转到 app 的 Game Center 页面,如 导航到 app 的 Game Center 页面中所述。

  2. 在要设置为默认排行榜的排行榜所在行中,选择“Default”(默认)选项。

您可以编辑的排行榜属性可能会受到限制,具体取决于 app 的状态。在提交 app 以供审查之前,您可以更改除排行榜 ID 以外的其他所有排行榜属性。在您提交 app 后,大部分属性都不可编辑。请参阅 排行榜属性 ,了解有关可编辑属性的详细信息。

bullet
编辑排行榜
  1. 转到 app 的 Game Center 页面,如 导航到 app 的 Game Center 页面中所述。

  2. 在“Leaderboards”(排行榜)部分中,点按要编辑的排行榜(点按行中的任意位置)。

  3. 根据需要,更改排行榜属性。

    请参阅 排行榜属性中介绍的排行榜属性。

    ../Art/gc_edit_lb_2x.png
  4. 在“Leaderboard Localization”(排行榜本地化)部分中,选择一种语言,更改该语言的排行榜显示文本。

  5. 点按“Save”(保存)。

排行榜在 Game Center 中向玩家显示的顺序与 iTunes Connect 中的显示顺序一致。您可以更改排行榜在 app 的 Game Center 页面中的顺序。

bullet
对排行榜进行重新排序
  1. 转到 app 的 Game Center 页面,如 导航到 app 的 Game Center 页面中所述。

  2. 在“Leaderboards”(排行榜)部分中,找到要重新排序的排行榜。

  3. 使用第一列中的图标,将该排行榜拖动到表中的新位置。

    ../Art/gc_lb_reorder_2x.png

排行榜的状态会显示在“Leaderboards”(排行榜)表中的最右列。请参阅 排行榜状态中介绍的可能状态值。如果此列中显示“Delete”(删除)按钮,则表明状态不是这些值之一,且您可以删除排行榜。排行榜在 Game Center 中显示后便无法删除。

bullet
删除排行榜
  1. 转到 app 的 Game Center 页面,如 导航到 app 的 Game Center 页面中所述。

  2. 在“Leaderboards”(排行榜)部分中,找到要删除的排行榜。

  3. 在“Status”(状态)列中,点按“Delete”(删除)。

    只有当排行榜尚未在 Game Center 中使用时,“Delete”(删除)按钮才会显示和启用。

  4. 点按“Delete”(删除)进行确认。

配置排行榜语言

iTunes Connect 为排行榜文本和得分本身分别提供不同的配置。这样,您就能够为 app 支持的每种语言或每个地区重复进行文本配置。您必须提供至少一种语言配置。请参阅 排行榜语言属性 ,了解有关排行榜语言属性的详细信息。

bullet
添加排行榜显示文本
  1. 如果您尚未创建排行榜,请按照 配置单个排行榜中的步骤操作。

  2. 在“Add Leaderboard”(添加排行榜)页面的“Leaderboard Localization”(排行榜本地化)部分中,点按“Add Language”(添加语言)。

    ../Art/gc_lb_add_lang_2x.png../Art/gc_lb_add_lang_2x.png
  3. 在随即显示的对话框中,从“Language”(语言)菜单中选取一种语言。

  4. 在“Name”(名称)字段中,输入排行榜的本地化引用名称。

    例如,如果您选取“Language”(语言)菜单中的“Finnish”(芬兰语),则在“Name”(名称)字段中输入排行榜的芬兰语名称。

  5. 在“Score Format”(得分格式)菜单中,选取一种本地化得分格式。

  6. 如果您愿意,在“Score Format Suffix”(得分格式后缀)字段中,输入本地化得分后缀。

    如果要在得分和后缀之间显示一个空格,请输入空格,后跟后缀文本。

    ../Art/gc_add_lang_form_2x.png

    如果“Score Format Suffix Plural”(得分格式后缀(复数))未显示,则说明选定语言不需要使用该后缀。

  7. 如果您愿意,则可以点按“Choose File”(选取文件),然后为排行榜选择一个本地化图像。

  8. 点按“Save”(保存)。

  9. 重复执行上述步骤,添加其他语言,或点按“Save”(保存)接受对此排行榜做出的更改。

当 app 不处于“审核中”状态时,您可以编辑排行榜的语言属性。请参阅 排行榜语言属性 ,了解可编辑的属性。

bullet
编辑排行榜语言
  1. 转到 app 的 Game Center 页面,如 导航到 app 的 Game Center 页面中所述。

  2. 在“Leaderboards”(排行榜)部分中,选择要编辑的排行榜。

  3. 在随即打开的页面中,查找“Leaderboard Localization”(排行榜本地化)部分,然后点按要编辑的语言。

  4. 在随即显示的对话框中,修改使用此语言的排行榜文本的属性。

  5. 点按“Save”(保存)。

  6. 在“Edit Leaderboard”(编辑排行榜)页面中,点按“Save”(保存)。

只有当“Edit Leaderboard”(编辑排行榜)页面的“Leaderboard Localization”(排行榜本地化)部分中列出多种语言时,您才能删除语言。

bullet
删除排行榜语言
  1. 转到 app 的 Game Center 页面,如 导航到 app 的 Game Center 页面中所述。

  2. 在“Leaderboards”(排行榜)部分中,选择要编辑的排行榜。

  3. 在要删除的语言所在行中,点按“Delete”(删除)。

  4. 点按“Delete”(删除)进行确认。

配置组合排行榜

组合排行榜对多个单个排行榜中的玩家得分进行排名。例如,如果您创建的一个排行榜是对赛车游戏每个级别的单圈时间进行排名,则可以配置一个组合排行榜,对游戏所有级别的玩家得分进行排名。您必须至少先创建两个单个排行榜,然后才能创建组合排行榜。您要组合的排行榜必须具有相同的得分格式和排序次序。输入组合排行榜信息时,请参阅 排行榜属性

../Art/gc_lb_concept_2x.png

创建组合排行榜后,您可以同时管理该排行榜以及您为 app 配置的其他排行榜。在排行榜列表中,可通过类型了解排行榜是否为组合排行榜;构成组合排行榜的排行榜会列为附加类型。

组合排行榜与排行榜集合不同。组合排行榜提供一个包含多个排行榜得分的列表;排行榜集合仅对排行榜进行整理,而不会影响排行榜的内容。请参阅 配置排行榜集合

bullet
组合排行榜
  1. 转到 app 的 Game Center 页面,如 导航到 app 的 Game Center 页面

  2. 如果您尚无排行榜,请创建要组合的单个排行榜。

    请确保要组合的排行榜具有相同的得分格式和排序次序。请参阅 创建单个排行榜

  3. 在“Leaderboards”(排行榜)部分中,点按“Add Leaderboard”(添加排行榜)。

  4. 在随即显示的对话框中,选择组合排行榜选项。

    如果“Choose Combined Leaderboard”(选取组合排行榜)处于禁用状态,则您必须创建至少两个单个排行榜才能执行此操作。

  5. 在“Leaderboard Reference Name”(排行榜引用名称)字段中,输入组合排行榜的引用名称。

    您稍后将会在添加语言支持时,输入组合排行榜的显示名称。

  6. 在“Leaderboard ID”(排行榜 ID)字段中,输入组合排行榜的字母数字标识符。

  7. 在“Leaderboards to Combine”(要组合的排行榜)部分中,选择至少两个要组合的排行榜。

    只有具有相同的得分格式和排序次序的排行榜才能进行组合并在此列表中显示为已启用。该列表更新为仅显示可以进行组合的排行榜。

    ../Art/gc_lb_combine_2x.png
  8. 点按“Add Language”(添加语言),指定组合排行榜得分的显示文本。

    ../Art/gc_lb_add_lang_2x.png../Art/gc_lb_add_lang_2x.png
  9. 在随即显示的对话框中,配置显示文本,如 配置排行榜语言中所述。

    为 app 支持的每种语言或每个地区重复执行上述步骤。

  10. 点按“Save”(保存)。

    此时,新的组合排行榜会显示在排行榜列表中。

配置排行榜集合

排行榜集合将多个排行榜整理到一个单元中。例如,在包含许多级别的游戏中,您可以定义排行榜集合,对每个级别的排行榜进行整理。通过排行榜集合,您可以增加每个 app 允许的排行榜数:如果没有排行榜集合,则每个 app 最多可允许有 100 个排行榜。通过排行榜集合,每个 app 最多可允许有 500 个排行榜,分布在最多 100 个排行榜集合中。一个集合最多可包含 100 个排行榜。

您必须创建至少一个 app 排行榜才能创建排行榜集合。在将排行榜集合添加到 app 后,您今后为该 app 配置的所有排行榜都必须包含在此排行榜集合中。

iOS 开发者可以使用 iOS 7 及更高版本创建排行榜集合。OS X v10.9 不支持排行榜集合。

有关在游戏中使用排行榜集合的详细信息,请参阅 排行榜集合

排行榜集合与组合排行榜不同:排行榜集合对排行榜进行整理,而不会影响单个排行榜的内容;组合排行榜提供一个包含多个排行榜得分的列表。请参阅 配置组合排行榜

创建排行榜集合

若要开始使用排行榜集合对 app 的排行榜进行整理,您需要完成包含以下步骤的过程:

  • 创建首个排行榜集合。

  • 创建其他排行榜集合。

  • 将新排行榜直接添加到排行榜集合中。

创建首个排行榜集合时,iTunes Connect 会确保 app 的所有现有排行榜都包含在至少一个排行榜集合中。就像您对排行榜执行的操作一样,排行榜集合需要您为 app 支持的每种语言配置内部名称、ID 和显示文本。

bullet
创建首个排行榜集合
  1. 转到 app 的 Game Center 页面,如 导航到 app 的 Game Center 页面中所述。

  2. 在“Leaderboards”(排行榜)部分中,点按“Move All Leaderboards into Leaderboard Sets”(将所有排行榜移至排行榜集合中)。

    ../Art/gc_lb_sets_initial_move_2x.png../Art/gc_lb_sets_initial_move_2x.png
  3. 在“Leaderboard Set Reference Name”(排行榜集合引用名称)字段中,输入排行榜集合的内部名称。

    您稍后将会在添加语言支持时,输入向用户显示的排行榜本地化名称。

  4. 在“Leaderboard Set ID”(排行榜集合 ID)字段中,输入排行榜集合的唯一 ID。

  5. 点按“Continue”(继续)。

  6. 在“Move Leaderboards Into Sets”(将排行榜移至集合中)页面中,点按“Add to Leaderboard Set”(添加到排行榜集合)。

    ../Art/gc_lb_set_add_to_set_2x.png../Art/gc_lb_set_add_to_set_2x.png
  7. 在“Add Leaderboard to Set”(将排行榜添加到集合中)对话框中,对要在此集合中添加的每个排行榜进行配置。

    • 选取一个排行榜。

    • 选取一种语言。

    • 设置此语言的排行榜显示名称。

    • 点按“Save”(保存)。

    ../Art/gc_lb_add_to_set_dialog_2x.png../Art/gc_lb_add_to_set_dialog_2x.png

    您可以借此机会在该排行榜集合的环境中为排行榜命名其他名称。例如,当您将名为“级别 1 圈数”的单个排行榜添加到级别 1 的排行榜集合中时,可以将该排行榜命名为“圈数”。

    对要添加到此集合中的每个排行榜重复执行此步骤。

  8. 确保所有排行榜都包含在集合中。

    您可以执行下列操作之一:

    • 通过从“Leaderboard Set”(排行榜集合)菜单中选取排行榜集合并点按“Add to Leaderboard Set”(添加到排行榜集合),将排行榜添加到现有集合中,如步骤 6 至 7 中所述。

    • 通过点按“Add Leaderboard Set”(添加排行榜集合)来创建其他排行榜集合,如 添加新的排行榜集合中所述。

  9. 在“Move Leaderboards Into Sets”(将排行榜移至集合中)页面中,点按“Add Language”(添加语言)来指定排行榜集合的显示名称。

  10. 在随即显示的对话框中,选择语言、显示名称和排行榜集合的图像。

  11. 点按“Save”(保存)。

  12. 为 app 支持的每种语言或每个地区重复执行步骤 9 至 11。

  13. 点按“Save”(保存),接受新的排行榜集合配置。

您可以通过向 app 添加新的排行榜集合来进一步自定义排行榜的显示效果。通过每个集合,您可以指定特定排行榜在集合中的显示效果。您可以将同一排行榜添加到多个集合中,并为每个集合中的排行榜配置不同的显示名称。

bullet
添加新的排行榜集合
  1. 转到 app 的 Game Center 页面,如 导航到 app 的 Game Center 页面中所述。

  2. 在“Leaderboards”(排行榜)部分中,点按“Add Leaderboard Set”(添加排行榜集合)。

    ../Art/gc_lb_set_add_set_redbox_2x.png../Art/gc_lb_set_add_set_redbox_2x.png
  3. 在随即显示的对话框中,在“Leaderboard Set Reference Name”(排行榜集合引用名称)字段中,输入排行榜集合的内部名称。

    您稍后将会在添加语言支持时,输入向用户显示的排行榜本地化名称。

  4. 在“Leaderboard Set ID”(排行榜集合 ID)字段中,输入排行榜集合的唯一 ID。

  5. 点按“Add to Leaderboard Set”(添加到排行榜集合),将排行榜添加到集合中。

    ../Art/gc_lb_set_add_new_redbox_2x.png../Art/gc_lb_set_add_new_redbox_2x.png
  6. 在“Add Leaderboard to Set”(将排行榜添加到集合中)对话框中,对要在此集合中添加的每个排行榜进行配置。

    • 选取一个排行榜。

    • 选取一种语言。

    • 设置此语言的排行榜显示名称。

    • 点按“Save”(保存)。

    ../Art/gc_lb_add_to_set_dialog_2x.png../Art/gc_lb_add_to_set_dialog_2x.png

    您可以借此机会在该排行榜集合的环境中为排行榜命名其他名称。例如,当您将名为“级别 1 圈数”的单个排行榜添加到级别 1 的排行榜集合中时,可以将该排行榜命名为“圈数”。

    对要添加到此集合中的每个排行榜重复执行此步骤。

  7. 查看排行榜在集合中的顺序。

    排行榜在表格中的显示顺序就是其在 Game Center 中显示的顺序。

  8. 在“Add Leaderboard Set”(添加排行榜集合)页面中,点按“Add Language”(添加语言)来配置至少一种排名榜集合名称的显示语言。

  9. 在随即显示的对话框中,选择语言、显示名称和排行榜集合的图像。

    “Language”(语言)和“Display Name”(显示名称)字段为必填。“Image”(图像)字段为可选。

  10. 点按“Save”(保存)。

  11. 重复执行步骤 8 至 10,添加其他语言支持。

  12. 点按“Save”(保存),保存新的排行榜集合配置。

当您开始在 app 中使用排行榜集合后,新建排行榜的步骤会略有不同。您必须先将新建的排行榜与排行榜集合相关联,然后才能保存配置。

bullet
创建新的排行榜并将其添加到排行榜集合中
  1. 按照 配置单个排行榜中的步骤创建新的排行榜。

  2. 在“Add Leaderboard”(添加排行榜)页面中,点按“Add to a Leaderboard Set”(添加到排行榜集合)。

    只有在您已为 app 配置排行榜集合之后,此部分的页面才会显示。

    ../Art/gc_lb_add_lb_to_set_2x.png../Art/gc_lb_add_lb_to_set_2x.png
  3. 在“Add Leaderboard to Leaderboard Set”(将排行榜添加到排行榜集合)对话框中,选择排行榜集合。

  4. 当此排行榜显示在排行榜集合中时,设置此排行榜的显示语言和名称。

    为 app 支持的每种语言或每个地区重复执行此步骤。

  5. 点按“Save”(保存)。

  6. 在“Leaderboard Localization”(排行榜本地化)部分中,点按“Add Language”(添加语言),完成单个排行榜的配置。

  7. 点按“Save”(保存)。

您可以通过将集合名称拖动到相应位置,对排行榜集合进行重新排序。点按排行榜集合的名称,编辑其内容或更改其中包含的排行榜的顺序。

../Art/gc_lb_sets_reorder_2x.png

若要查看排行榜集合中包含的排行榜,请点按“View Leaderboards in Leaderboard Sets”(查看排行榜集合中的排行榜)。该对话框显示您为 app 定义的所有排行榜(按名称和引用 ID 显示),复选标记表示每个排行榜在哪个集合中显示。

../Art/gc_lb_sets_matrix_2x.png../Art/gc_lb_sets_matrix_2x.png

删除排行榜集合

您必须确保排行榜集合中的所有排行榜也位于另一个集合中,并将这些排行榜从要删除的集合中删除,然后才能删除该集合。除非排行榜已位于另一个排行榜集合中,否则您无法将其从排行榜集合中删除。

bullet
删除排行榜集合
  1. 转到 app 的 Game Center 页面,如 导航到 app 的 Game Center 页面中所述。

  2. 找到要删除的排行榜集合。

  3. 点按排行榜集合,打开其配置页面。

    ../Art/gc_lb_sets_cursor_2x.png
  4. 在“Leaderboards in This Set”(此集合中的排行榜)部分中,点按每个排行榜对应的“Remove”(删除)。

    ../Art/gc_lb_sets_remove_lb_2x.png../Art/gc_lb_sets_remove_lb_2x.png
  5. 删除所有相关的排行榜后,点按“Done”(完成)。

  6. 返回到 Game Center 页面,点按“Delete”(删除)删除排行榜集合。

    ../Art/gc_lb_sets_delete_2x.png../Art/gc_lb_sets_delete_2x.png
  7. 点按“Delete”(删除)进行确认。

如果您的 app 包含的排行榜不超过 100 个,则您可以点按“Remove All Leaderboards in Leaderboard Sets”(删除排行榜集合中的所有排行榜),删除当前排行榜集合中的所有排行榜。对于包含超过 100 个排行榜的 app,此选项不会显示。您必须删除任意排行榜,以使数量不超过 100 个,才能使用“Remove All Leaderboards in Leaderboard Sets”(删除排行榜集合中的所有排行榜)按钮。

将排行榜集合合并到组的排行榜集合中

将游戏合并到一个组中可以共享多个游戏中的排行榜和成就。每个游戏的限制仍为 500 个排行榜和 100 个排行榜集合。不过,组中的排行榜和排行榜集合的总数远远超出这些数量。每个组的上限计算公式为:500 个排行榜和 100 个排行榜集合乘以组中的游戏数量。例如,如果组中有 3 个游戏,则一共可以有 1500 个排行榜和 300 个排行榜集合。有关创建和管理组的信息,请参阅

您可以将游戏逐个合并到组中。只有在符合以下两个条件之一的情况下,才能将包含排行榜集合的单个游戏合并到游戏组中:

  • 该组已使用排行榜集合。

  • 此游戏是您要创建的新组中的首个游戏。

您无法将不含排行榜集合的游戏合并到包含排行榜集合的组中。您必须先向单个游戏添加排行榜集合,然后才能将其合并到现有组中。

同样地,您也无法将包含排行榜集合的游戏合并到不含排行榜集合的现有组中。您必须先将所有组排行榜移至排行榜集合中,然后才能将单个游戏合并到组中。

bullet
将组使用的所有排行榜转换为排行榜集合
  1. 转到组中一个 app 的 Game Center 页面,如 导航到 app 的 Game Center 页面中所述。

    由于 app 属于组,因此随即显示的页面上的 Game Center 选项适用于该组。

  2. 在“Group Leaderboards”(组排行榜)部分中,点按“Move All Leaderboards into Leaderboard Sets”(将所有排行榜移至排行榜集合中)。

  3. 在随即显示的对话框中,输入首个新排行榜集合的信息。

    • 在“Leaderboard Set Reference Name”(排行榜集合引用名称)字段中,输入排行榜集合的内部名称。

    • 在“Leaderboard Set ID”(排行榜集合 ID)字段中,输入排行榜集合的唯一 ID。

      如果游戏属于组,则每个排行榜和排行榜集合的集合 ID 会自动以 grp. 前缀为开头。您可以更改排行榜和排行榜集合的集合 ID,但必须在新名称中保留 grp. 前缀。

  4. 点按“Continue”(继续),打开“Move Leaderboards into Sets”(将排行榜移至集合中)页面。

    在此页面中,您可以执行以下操作:

    • 点按“Add Leaderboard Set”(添加排行榜集合),为组创建其他排行榜集合,如步骤 3 中所述。

    • 点按“Add to Leaderboard Set”(添加到排行榜集合),将排行榜添加到您在此页面顶部选择的集合中。

      系统会提示您选择排行榜并指定此排行榜在集合中使用的显示名称。为 app 支持的每种语言或每个地区指定显示名称。

    • 点按“Add Language”(添加语言),指定您在此页面顶部选择的排行榜集合的显示名称。

      系统会提示您指定此排行榜集合的显示名称。为 app 支持的每种语言或每个地区指定显示名称。您还可以为每种语言的排行榜集合提供图像。

  5. 如果您已将组中的所有排行榜分配到一个或多个排行榜集合中,请点按“Save”(保存)。

将排行榜元数据批量上传到 iTunes Connect

如果您需要在 iTunes Connect 中配置多个排行榜,则可以使用 Transporter 通过 App Store 程序包批量传送排行榜和其他 iTunes Connect 配置元数据。请参阅 《app 元数据规范》《Transporter 快速入门指南》。iTunes Connect 用户可以在“Manage Your Apps”(管理您的 app)页面底部的“Deliver Your Apps”(传送您的 app)下访问这些文档。

../Art/links_bottom_manage_apps_2x.png../Art/links_bottom_manage_apps_2x.png