评分公式
服务器使用加权和公式进行评分。这个公式有四个部分:
加入的玩家被匹配到服务器分数最高的服务器。
属性
属性是描述玩家和服务器的数据。属性的值可以是数字或字符串。当属性的值是字符串时,它就被称为分类属性。当属性的值是数字时,它被称为数值属性。
有关所有可用的 Roblox 属性的完整列表,请参见 现有属性。有关自定义属性的更多信息,请参见 自定义属性。
示例:分类属性和数值属性
| 分类属性 |
|---|
| 好友是一个分类属性,因为当这个服务器上有一个优先玩家时,它的值是字符串“true”,而当这个服务器上没有优先玩家时,它的值是“false”。 |
| 语言是一个分类属性,因为它的值是玩家的语言设置,例如“日语”。 |
| 数值属性 |
| 年龄是一个数值属性,因为它的值是玩家的年龄。 |
| 占用率是一个数值属性,因为它的值是当前在这个服务器中的玩家数量。 |
信号
信号将属性值转换为介于 0 和 1 之间的数字,称为信号分数。信号分数为 1 预测高玩家兼容性,而信号分数为 0 预测低玩家兼容性。根据属性的不同,转换可以包括不同的聚合、比较和归一化。
有关现有 Roblox 信号的完整列表,请参见 现有信号。有关自定义信号的更多信息,请参见 自定义信号。
示例:两个具有不同信号分数的服务器
下表计算了两台不同服务器的占用信号分数,这两台服务器的容量为 8 名玩家:
| 服务器中的玩家 | 占用分数 | |
|---|---|---|
| 服务器 A | 2 | 2/8 = 0.25 |
| 服务器 B | 6 | 6/8 = 0.75 |
占用信号将服务器 B 评为更高分,认为它更适合加入的玩家。
权重
信号的权重描述了该信号相对于其他信号的重要性。更高的权重增加了信号对服务器分数的贡献。将信号分数乘以其权重后的值称为 加权信号。
信号的权重不能为负。如果信号的权重为 0,则该信号不被考虑评分。
示例:加权占用分数
下表计算了一个容量为 8 名玩家的地方的加权占用信号分数,信号的权重为 2:
| 服务器中的玩家 | 占用分数 | 加权占用分数 | |
|---|---|---|---|
| 服务器 A | 2 | 2/8 = 0.25 | 0.25 * 2 = 0.5 |
| 服务器 B | 6 | 6/8 = 0.75 | 0.75 * 2 = 1.5 |
示例:两个具有不同权重的配置
不同的权重也会使匹配选择不同的服务器。下表计算了两台具有不同匹配配置的服务器分数。配置 2 对其占用信号的权重更高,而服务器 A 中则有加入玩家的好友。
| 好友 | 占用率 | |||||
|---|---|---|---|---|---|---|
| 权重 | 分数 | 权重 | 分数 | 总分 | ||
| 配置 1 | 服务器 A | 1 | 1 | 5 | 0.25 | 1 * 1 + 5 * 0.25 = 2.25 |
| 服务器 B | 1 | 0 | 5 | 0.75 | 1 * 0 + 5 * 0.75 = 3.75 | |
| 配置 2 | 服务器 A | 3 | 1 | 5 | 0.25 | 3 * 1 + 5 * 0.25 = 4.25 |
| 服务器 B | 3 | 0 | 5 | 0.75 | 3 * 0 + 5 * 0.75 = 3.75 | |
服务器分数
服务器分数通过以下加权和公式计算,该公式将服务器的加权信号分数相加:
匹配配置
匹配配置是用于评分一个地方的服务器的信号和权重的集合。默认情况下,所有地方的所有服务器都是通过 Roblox 默认配置进行评分的,这意味着您不需要自定义或启用任何设置即可使用它。
Roblox 默认配置包括以下信号和权重:
| 信号 | 权重 |
|---|---|
| 好友 | 15 |
| 延迟 | 3 |
| 文本聊天 | 3 |
| 占用率 | 2 |
| 游玩历史 | 2 |
| 语言 | 2 |
| 年龄 | 1 |
| 语音聊天 | 1 |
| 设备类型 | 0 |
在默认的 Roblox 配置中,好友信号的权重大于所有其他信号的权重之和。这意味着,如果可用,加入的玩家总是优先匹配到有好友(或在同一 IP 地址上的玩家)的服务器。
设备类型信号存在于默认配置中,但权重为 0,因此不会影响匹配决策。您可以在 自定义匹配 时调整此权重。
有关每个 Roblox 信号的更多信息,请参见 现有信号。
高级概念
以下是关于匹配过程的更高级概念。
归一化
信号将属性值归一化为 0 到 1 之间的数字。数值信号可以通过任何正数进行归一化,称为 归一化因子。如果归一化值大于 1,则将其限制为 1。
示例:设计年龄信号
年龄信号测量服务器中玩家的平均年龄与加入玩家年龄之间的差异。
年龄差异超过 25 的服务器都被认为与玩家完全不兼容。例如,年龄差异为 25 对于玩家而言并不比年龄差异为 26 差,因此这两个值都应该将信号分数设置为 0。在这种情况下,25 被视为归一化因子。
信号分数与年龄差异成反比,这意味着年龄差异越小,信号分数越高。
下表显示了两个不同归一化因子的年龄信号分数:
| 年龄 | 归一化因子:100 | 归一化因子:25 |
|---|---|---|
| 50 | 0.5 | 0 |
| 25 | 0.75 | 0 |
| 12 | 0.88 | 0.52 |
| 5 | 0.95 | 0.8 |
| 0 | 1 | 1 |
具有 25 的归一化因子的信号将 5 岁和 12 岁的年龄差视为更大。较小的归一化因子会放大年龄差异的微小增加或减少。
权重大小
权重表示信号相对于配置中其他信号的重要性。权重的相对大小决定了信号的重要性,而不是它们的绝对大小。
示例:相对大小与绝对大小
下表计算了两台具有不同匹配配置的服务器分数。配置 5 和配置 6 的占用权重高于其各自的好友权重。服务器 A 中有加入玩家的好友。
| 好友 | 占用率 | |||||
|---|---|---|---|---|---|---|
| 权重 | 分数 | 权重 | 分数 | 总分 | ||
| 配置 5 | 服务器 A | 10,000 | 1 | 15,000 | 0.25 | 10,000 * 1 + 15,000 * 0.25 = 13,750 |
| 服务器 B | 10,000 | 0 | 15,000 | 0.75 | 10,000 * 0 + 15,000 * 0.75 = 11,250 | |
| 配置 6 | 服务器 A | 0.01 | 1 | 0.05 | 0.25 | 0.01 * 1 + 0.05 * 0.25 = 0.0225 |
| 服务器 B | 0.01 | 0 | 0.05 | 0.75 | 0.01 * 0 + 0.05 * 0.75 = 0.0375 | |
服务器 A 在配置 5 中获胜,而服务器 B 在配置 6 中获胜。这是因为配置 5 的占用权重仅为其好友权重的 1.5 倍,而配置 6 的占用权重为其好友权重的 5 倍。
尽管在绝对大小上存在差异,配置 6 对占用的重视程度超过了配置 5。