欢迎光临散文网 会员登陆 & 注册

【osu!科普】osu!得分规则与参数细则[ScoreV1]【超详细!】【破亚空bilibili】

2019-09-10 09:40 作者:破亚空-YAKONG-P  | 我要投稿

osu!标准模式 得分规则

得分分值(ps:这里原文写得很繁杂,而且有很多不严谨和错误的地方,可以选择跳过,不影响食用)

分值一览

ps:这里我修补了大量的东西...但是还是很难阅读

命中判定

命中判定

Combo判定

combo判定

分数算法

分数算法

英文原式:Score = Hit Value + (Hit Value * ((Combo multiplier * Difficulty multiplier * Mod multiplier) / 25))

补充:-------

combo倍率(Combo multiplier)

没有图片.jpg

假设现在是254combo,命中一个圈,然后combo变为255,其中这个圈的奖励分combo倍率为254(命中前的combo大小x1.0)

难度倍率(Difficulty multiplier)

难度倍率

难度点数 = CS + HP + OD(CS、HP、OD是什么?我写在了文章末尾)

Mod倍率(Mod multiplier)

Mod倍率

Mod系数(同样没有图.jpg)

Easy【0.5】No-Fail【0.5】Half【0.3】

Hard Rock【1.06】Sudden Death / Perfect【1.0】Double / nightcore【1.12】Hidden【1.06】Flashlight【1.12】

Relax【0.0】Autopilot【0.0】Spin-out【0.9】Auto/Cinema【1.0】Score v2【N/A】



核心部分-分数计算Scoring(原创内容)

圆圈(Hit Circle)

三个圆圈

圆圈的计算比较简单

像我们这里的三个圆圈(假设以Auto游玩,Mod倍率为1.0x,难度倍率为4.0x):

第一个分数为 300 (300基础得分 + 0奖励分[ 300 x 0 x 1.0 x 4.0 ÷ 25 ] )注意此时combo倍率为0,随后才是combo + 1

第二个分数为 348 (300基础得分 + 48奖励分[ 300 x 1 x 1.0 x 4.0 ÷ 25 ])注意此时combo倍率为1,随后才是combo + 1

第三个分数为 396 (300基础得分 + 96奖励分[ 300 x 2 x 1.0 x 4.0 ÷ 25 ])注意此时combo倍率为2,随后才是combo + 1


那么我们的结果是 总分【1044】combo【x3】


转盘(spinner)

轮盘对比

轮盘得分也很简单,不过我们先介绍轮盘的两个特点

第一个是大小。在旋转轮盘时,轮盘会不断变大。直到轮盘不会再变大时,说明已经达到保底300了,这时轮盘会显示Clear,并且发出白光

第二个是轮盘边缘。轮盘边缘和得分无关,只不过它会越来越红,意味着转盘剩余的时间不多了。


转盘得分计算非常简单

在Clear之前,每一圈将会得到100固定分

在Clear之后

当 OD ≤ 8.02 (也就是转盘难度 ≤ 6.51)第一圈、第二圈仍然会获得100固定分,之后每完成一圈将获得1100固定分

当 OD ≥ 8.03(也就是转盘难度 ≥ 6.51) 第一圈、第二圈仍然会获得100固定分,之后每完成一圈将获得1200固定分

(注意,我们获得奖励都是在整数圈的位置,但Clear的位置并不一定是整数)

(ps:要达到Clear的圈数和转盘持续时间有关,但是wiki并没有提供具体公式)(然后我也懒得去测试了)


最后是转盘结束

理论上

我们会得到一个300/100/50/0基础分以及combo奖励分,然后combo+1


假设我们的combo为3,其他默认(以Auto游玩,Mod倍率为1.0x,难度倍率为4.0x)

那么转盘结束会获得 444 (300基础得分 + 144奖励分[ 300 x 3 x 1.0 x 4.0 ÷ 25 ] )此时combo倍率为3,随后combo + 1


但是

我实际测试过后,发现轮盘结束的分数要偏低


假设我们的combo为3x,其他默认(以Auto游玩,Mod倍率为1.0x,难度倍率为4.0x)

那么我们转盘结束会获得 396 (300基础得分 + 96奖励分[ 300 x 2 x 1.0 x 4.0 ÷ 25 ] )

随后combo + 1,combo变为4。


其中combo倍率只有2,在计算之前被 - 1 了。


也就是说

如果你combo为1(或0),完成转盘的300都是没有奖励得分的,因为此时转盘的combo倍率为0(不会为负数)。而圆圈和滑条即使combo为1,依然有奖励得分。

这应该是算法上的问题,不知道会不会修复

然后是最复杂的滑条(sliders)

三个节拍的滑条

滑条的计算比较复杂

以这三个拍的滑条做例子(假设以Auto游玩,Mod倍率为1.0x,难度倍率为4.0x):

第一个分数为 30 (滑条头部固定30分 + 没有奖励分)注意此时combo倍率为0,随后combo + 1

第一个分数为 10 (滑条节点固定10分 + 没有奖励分)注意此时combo倍率为1,随后combo + 1

第三个分数为 426(滑条尾部固定30分 + 300基础得分 + 96奖励分[ 300 x 2 x 1.0 x 4.0 ÷ 25 ])注意此时combo倍率为2,随后combo + 1

三个节拍的滑条只算做一个物件

那么我们的结果是 总分【466】combo【x3】


所以理论上短滑条反而能提供更多的分数




核心部分-准确度Accuracy(原创内容)

osu!wiki中的准确度算法

你问我为什么没有翻译?

因为我完全看不懂它在说什么...


所以我们就干脆不管它了

直接来进入我们的正文


准确度的算法其实很简单

准确度由我们的基础得分决定,英文为Scoring Values,但是我觉得用分数公式中的Hit Value会更加准确一点

基础得分是什么?那就是你屏幕上显示的分值,300/100/50/miss/激/喝

我们什么时候会获得基础得分?

以下情况我们都会获得一个基础得分(+ combo奖励分)

  • 完成一个圆圈(Hit circle)

  • 完成一个滑条(Slider)

  • 完成一个转盘(Spinner)

可以看出来,每个圆圈/滑条/转盘都算作一个物件,只会获得一次基础得分(和奖励分)


值得注意的是

“激”和“喝”实际上算作300和100,并且会被算入300/100的总数当中

只有一个300圈,但是会有一个300和一个“激”

因为300和100中已经包含了“激”和“喝”

所以实际上“激”和“喝”是额外独立的统计,可以直接无视掉

计算准确度我们只看300/100/50/miss就可以了


那么基础得分是怎么影响我们的精准度的呢?

请看这张成绩图(捂脸

我得分最高的一次成绩,真的=w=

其中有300[89]、100[2]、50[1]、miss[1]

我们有两种算法


其中osu!wiki中的算法是这样的(官方算法):

精确度 = 基础得分总分 ÷ (基础得分数量 x 300)


实践的话就是这样

首先 基础得分总分 26950 = 89 x 300 + 2 x 100 + 1 x 50 + 1 x 0

然后 基础得分数量 93 = 89 + 2 + 1 + 1

精确度 96.59% = 26950 ÷ 27900[93 x 300]



然后是个人觉得比较直观的另一种算法(个人算法):

beatmap精确度 = 总精确度 ÷ 基础得分数量

其中

300的精确度为100%

100的精确度为33.34%(近似值)

50的精确度为16.67%(近似值)


实践的话就是这样

首先 总精确度 8982% ≈ 100% x 89 + 33% x 2 + 16% x 1 + 0% x 1

然后 基础得分数量 = 93

精确度 96.59% ≈ 8982% ÷ 93 


这种算法会比较直观一点



评级

评级因素

ps:值得注意的是DB[Doubld]/NC[Nightcore]虽然Mod系数为1.12x,但结算依然是普通的S


其他参数(CS、OD、HP)(还有AR)


CS 圆圈尺寸(Circle size)

CS(Circle Size)

具体参数未知


秉承着科学技术是第一生产力的马克思主义思想,我特意为CS去做了几个测试,然后下面是结果

CS的值理论上是线性关系

(其中计算出来的斜率近似值为﹣4.48196721,后面就懒得算了,应该不是十进制的数)

顺带一提

转盘尺寸是固定的,所以不会受影响


如何修改CS的值?

osu!/song/歌曲名字 的文件夹,看到一个后缀名为.osu的文件,然后直接用记事本打开,就可以看到CS、AR、OD、HP的值,然后直接修改就可以了

.osu文件里面的内容

HP,准确来说是HP下降速率(Health Point Drain Rate)

HPDR

顺带提一下血条的判定

血条判定

具体参数未知(你别看我,我也不知道啊,我也很绝望啊)


OD整体难度(Overall Difficulty)

整体难度


beatmap的作者可以设置11种OD,看起来很多,实际上这11个值有很明显的关系

各OD对应的值,单位ms(毫秒)

300的初始值为79.5,每次OD + 1,判定时间 - 6ms

100的初始值为139.5,每次OD + 1,判定时间 - 8ms

50的初始值为199.5,每次OD + 1,判定时间 - 10ms

(顺带一提,滑条Slider是用的50的判定时间,转盘没有判定时间)

这样可以很简单的推导出公式

简单的线性关系



值得注意的是

一个完整的判定区域是-50 -100 -300 +300 +100 +50(其中负数表示提前命中,正数表示延迟命中)

可以在设置中开启的判定显示(左为按早了,右为按晚了)

所以我们实际的判定时间要乘以二


可以直接观察歌曲的准确参数

像是我们的OD 7,满分对应37.5ms,实际上是 +﹣37.5ms,也就是75ms的完整判定时间

判定持续时间的计算公式


还有就是一些Mod会影响OD(或者判定时间)

Mod对判定时间的影响


osu!wiki 还很贴心地制作了一个超大的表格

超长的OD列表,单位ms(毫秒)

实际上除了第一行其他的都能推导出来(笑

ps:看得眼睛都快花了


缩圈速率AR(Approach Rate)

缩圈速率


beatmap的作者可以设置11种AR,范围从AR0(1800ms)到AR10(450ms)

AR对应表

其中

1800ms,当 0 ≤ AR ≤ 5 时,每次 AR + 1,显示时间 -120ms

1200ms,当 5 ≤ AR ≤ 10 时,每次 AR + 1,显示时间 -150ms

AR计算公式


值得注意的是有一些Mod会影响AR(或者物件显示总时间)

Mod对AR的影响

重要的事说两遍:

因为物件在屏幕上的最大显示时间(从出现到miss)为 AR + OD[50],改变AR只改变了前半段的持续时间,而改变OD只改变了后半段的持续时间。而DT和HT改变了整个物件持续时间。


顺带一提osu!wiki 还很贴心地制作了一个超大的表格

超长的AR列表,单位ms(毫秒)

同样的,实际上除了中间的默认值,其他的都能推导出来



转盘难度(Spinner Difficulty)(原创内容)

转盘难度只受OD影响

转盘难度只会受 OD 影响

在Clear之前,每一圈将会得到100固定分

在Clear之后

当 OD ≤ 8.02 (也就是转盘难度 ≤ 6.51)第一圈、第二圈仍然会获得100固定分,之后每完成一圈将获得1100固定分

当 OD ≥ 8.03(也就是转盘难度 ≥ 6.51) 第一圈、第二圈仍然会获得100固定分,之后每完成一圈将获得1200固定分




BPM(每分钟节拍数)(原创内容)

BPM表示的是音乐 的每分钟节拍数 或者说 每分钟拍子数

像是一个120BPM的音乐,意思是一分钟有120个拍子

算下来一个拍为0.5秒


实际上在一个乐谱中,BPM并不是固定的。演奏者可以选择自己喜欢的拍子时长,来演奏乐谱,得到的曲子才会有BPM,所以乐谱本身是没有BPM的。


由于在一个乐谱中,音符数和拍子数都是固定的,当演奏者确定了一个拍子的时长,我们就可以得到整个曲子的时长以及BPM了


值得注意的是,一个完整音符可以进行细分,变为二分音符、四分音符,甚至是十六分音符,如果我们不参考乐谱,我们并不能知道演奏者演奏的一拍子是一个音符还是半个音符。以一拍两个音符进行演奏的120BPM的歌,相当于以一拍一个音符进行演奏的240BPM的歌。


说那么多

BPM只是在乐谱演奏中,决定曲子时长、曲子速度的数值。(通过修改乐谱,可以在不影响曲子的情况下将BPM翻一倍)


不少曲子BPM和谱面速度不成正比,是因为在osu!中分别有以一拍、半拍、四分之一拍(甚至更小)进行设计的谱面。所以实际上决定谱面速度的应该是每分钟物件数NPM,而不应该是BPM。



然后



就没有然后啦

这篇文章就到这里结束了


全部的知识点都已经教给你们了(除了某些wiki没有提供的,而我又懒得测的

所以,你已经学会osu的得分规则了,快去试一下拿个银色SS吧



制作这篇文章花了我不少精力_(xз」∠)_

180MB的文章内容

如果你喜欢这篇文章的话,请给我充点电吧=w=

我很可爱,请给我钱(明抢)


其他

参考资料

https://osu.ppy.sh/help/wiki/Game_Modes/osu!

https://osu.ppy.sh/help/wiki/Score/#osu

https://osu.ppy.sh/help/wiki/Beatmap_Editor/Song_Setup

原作者:ppy

CC许可协议:https://github.com/ppy/osu-wiki/blob/master/LICENCE.md

翻译整理制作

破亚空【https://space.bilibili.com/2253572

其他文章

https://www.bilibili.com/read/readlist/rl132402


Thanks For Reading

- 破亚空 2019.9.11 - 

【osu!科普】osu!得分规则与参数细则[ScoreV1]【超详细!】【破亚空bilibili】的评论 (共 条)

分享到微博请遵守国家法律