唯一的玩家代号是新式玩家代号和后缀成份的组合。 新式玩家代号组件可以是唯一的或重复的标识符。 后缀的字符与玩家标签一起,使其唯一。
字符串长度
唯一的新式玩家代号长度为 16 个字符,最多包含来自新式玩家代号组成部分的 12 个字符,然后是 # 和后缀号(如果存在)。
最多 16 个字符的限制意味着如果一个现代玩家代号有 12 个字符,则后缀限于 3 位,加上“#”字符,总共呈现 16 个字符。
当现代玩家代号中的字符数减少时,可以增加后缀字符数,但唯一现代玩家代号的最大字节总计数绝不会超过此值。
缓冲区大小
Modern gamertag (XUserGamertagComponent::Modern)
最长 12 个字符,每个字符限制为最多具有 1 个变音符,加上一个空终止符。
如果用户未设置任何新式玩家代号,则等同于 XUserGamertagComponent::Classic。
缓冲区最大 97 个字节,包括空终止符空间;(12 个字符 + 12 个变音符) * (4 字节/字符) + (1 个字节的空终止符) = 97 字节。
Suffix (XUserGamertagComponent::ModernSuffix)
最长 14 个字符(无变音符),加上一个空终止符。
UTF-8 字符范围
新式玩家代号支持 UTF-8 字符的特定范围。
为了拥有一组有限的字形,现代玩家代号明确不支持整个 UTF-8 字符范围,而只支持特定语言的字母表子集。
此字形集已修复,且不会随着时间而增加。 如果标题是自 2022 年编程为支持新式玩家代号,则标题的玩家代号集成仍可使用在几年后创建的玩家代号。 如需了解更多,请参阅 UTF-8 字符范围支持。
根据 Xbox 要求 XR-046,所有游戏都必须能够正确显示新式玩家代号。 此要求是为了保证质量并为玩家提供一致的体验。 简单地说,你的游戏应该能够渲染所有受支持的字符。
许多开发人员面临的一个常见挑战是,无法准确渲染所有 Xbox 支持的语言的所有受支持字符,这并不取决于你开发的游戏的玩家是否使用那种语言。
为了响应反馈,我们调整了 XR-046。 让游戏开发人员可以省略对他们认为玩家不会使用的特定语言字符范围的支持。 例如,不包含泰语是因为他们的游戏不提供这种语言。
省略或不支持的字符还必须渲染为空矩形或其他符号,以清楚地指示不支持的字形位置。 不能将此类字符渲染为空白。 如果当受支持的 Unicode 字符由于缺少字形而显示为空白字符时,游戏将无法正确渲染此要求。
术语
现代玩家代号
新式 玩家代号 是后缀之前支持的任何 UTF-8 字符的字符串。 最多支持 12 个呈现字符,但由于需要使用 UTF-8 音调符号来支持印地语和泰语,因此字符串中的多个字符可能会组成一个呈现字符。 因此,返回的字符串不一定是 12 个字符,但可能是 18 个字符,呈现为 12 个字符。
后缀
后缀字符是使新式玩家代号唯一的一个。 自经典玩家代号系统以来,许多拥有 Xbox Live 帐户的用户没有后缀,因为他们的新式玩家代号和经典玩家代号相同。 这可帮助你将用户标识为该玩家代号的原始所有者。 创建帐户并想要使用现代玩家代号系统获得相同玩家代号的任何其他用户将被分配一个随机后缀,使其玩家代号唯一。 这是一个字符串字段,而不是数字,长度从 1 到 14 个字符。
唯一现代玩家代号
新 新式玩家代号 是新式玩家代号字符串和后缀#
的组合。 用户通过此完整字符串保证唯一性,即使玩家代号字符串不是唯一的。
注意
在所有 Xbox Live 体验中,用户几乎总是以这种完整方式呈现。 其后缀通常使用较小和较浅的字体来强调。