表现分,全称为 Performance Point (PP),是 osu! 内用于量化玩家水平的指标,与 Phigros 的 RKS、Arcaea 的 PTT、SOUND VOLTEX 的 VOLFORCE 有异曲同工之处。[1]
每张谱面都含有一个最高表现分。当玩家以 100% 的准确率,获得所有连击完成一张谱面时,才能获得谱面的理论最高表现分。
如果玩家在游玩前,添加了部分模组 (Mods),则谱面的最高表现分也会相应地增加或减少。玩家只有尽量完美地游玩一张难度较高的谱面,才能收获到较多的表现分。
获得表现分的方法:
谱面的理论 PP 通常分为以下四类。部分游戏模式可能没有其中的某几类,但 osu!standard 包含以下全部类型。
精准 (Aim) 是衡量玩家连续击打物件时,光标的移动精准度的指标。
谱面的缩圈速度 (AR),和部分游戏模组(即 Flashlight、Hidden、Hard Rock 这些模组)会显著地影响快速准确地移动光标的难度,从而影响谱面的表现分。
在 osu! 游戏模式中,含有较多的长距离跳排列的谱面常被称为跳图,通常能在其上获得较多的表现分。同样地,在 osu!catch 中,含有较多的红果跳排列的谱面也能获得较多的表现分。osu!taiko 和 osu!mania 则没有精准 (Aim) 指标。
速度 (Speed) 是衡量谱面物件密度的指标。
短时间内出现大量物件的谱面,它的速度指标会较高。该值越高,代表谱面难度越高,也就能在谱面内提供更多的表现分。
如 Double Time 或 Half Time 模组会影响谱面物件密度,从而显著改变谱面的速度指标,进而影响谱面的表现分。
精确 (Accuracy) 是衡量玩家在打击物件出现时,准时击打能力的指标,通常描述为一个百分值。这在衡量玩家的表现分算法里,也是一项比较重要的指标。
高准确率的成绩,算法会给予其较高的表现分。而一个全连,但是准确率仅为 80% 的成绩,它的精确表现分甚至只有准确率 95% 的成绩的 2/3。因此,当玩家开启 Hidden、Hard Rock、Flashlight 这些模组,并打出高准确率的成绩时,能获得可观的表现分。
耐力 (Strain) 是衡量谱面含有多少次数多,密度高,时间长的排列段落的指标。
如果谱面内含有高速或极难的排列,比如谱面内含有较多的串、连打或是高速跳排列段落,此时谱面的耐力指标和表现分将会显著增加。
玩家在单张谱面上获得的成绩,会根据表现分高低来排序。排序后,将会通过一个权重公式,来计算这些成绩最终纳入玩家总表现分的值。
这个公式里,$p$ 是每个成绩的加权前表现分(单图 PP),$n$ 是这个成绩的加权前表现分(最好成绩榜 (BP))排名,$T$ 是玩家游玩的总难度数(一组谱面可以包含多个难度)。例如,如果玩家的最好成绩榜前 5 名成绩的加权前表现分(单图 PP)是 110pp、100pp、100pp、90pp、80pp,那么加权后,计入总表现分的值大约为 110pp、95pp、90pp、77pp、65pp。
权重系统能保证最好成绩排行 200 名之外的成绩,只能在玩家的总表现分中做出不到 1% 的贡献。这也能促使玩家去多游玩难一点的谱面,而不是靠堆容易获取的成绩数量来获得较高的表现分。此外,由于权重系统的权重系数是公比为 0.95 的等比数列,而
因此这意味着一名玩家的总表现分(不包括奖励 pp),永远不会超过其第一个最好成绩表现分的 20 倍。大部分玩家的这个倍率在 14~18 之间。
要计算出玩家主页上所显示的总表现分,除了以上的权重系统计算出的谱面表现分,还需要加上通过游玩过的已上架 (Ranked) 谱面的难度数量计算得到的奖励表现分 (Bonus PP)。
奖励表现分可以通过以下公式得出:
这个公式里,n 是游玩过的已上架 (Ranked) 谱面的难度数量。min(1000,n) 指取 1000 和 n 中,比较小的一个数。因此,当 n 大于 1000 后,奖励表现分将达到最大值:约等于 413.894。
特别地,在 2024 年 3 月 19 日更新前的奖励表现分算法是:
因此,在更新前,当玩家游玩了很多(25,000+)谱面后,得到的奖励表现分会无限接近 416.6667。这也意味着这次更新后,已经打过很多图的老玩家会被平白无故扣除 2.773 pp,导致出现倒刷。
总之,玩家主页上或者游戏内能看到的总表现分是:
由于表现分通常在游戏中显示为一个整数,因此,也给予了大量玩数字梗的空间,甚至还出现了社区内部产生的梗:727 / WYSI。
倒刷一般指的是总分更高但是准确率更低(使用了加强难度的模组后容易出现此种情况),从而使得新成绩的 pp 低于旧成绩的情况,这会导致玩家在排行榜上的旧成绩被新成绩取代,进而导致游玩后总 pp 降低。
这种情况的出现在社区中引发了一些负面反馈。在后来的某次更新里,分数系统不仅会记录个人最高分,也会记录个人在这张图的历史最高表现分,最高历史表现分不一定和最高分对应。因此倒刷成为历史。自此次更新后,除非表现分算法发生调整,否则所有玩家的表现分都不会出现不升反降的情况,请放心大胆打图。
游戏界面中的 pp 值其实是使用 C# 的有符号 16 位整数(short)来存储的。
玩家 mrekk 此前已经成功达到超过 32768 的 pp 从而导致溢出,获得了 Limit Breaker 头衔。官方的表述是“Exceeded the 16-bit integer size limit of 32,767 for the performance points counter on osu!(stable)”。
在 2025 年 3 月 6 日的更新中,有符号数被替换成无符号数,最大范围变为 65,536。[3]
|