这里头的大部分话对大部分人来说,懂明白不是一件简单的事,所以你们可以只看结论。至于这个结论到底有没有道理?
大概吧。我觉得有道理吧。要不然我也不会去做这种闲的没事干的事。
我最喜欢的啦噗哩镇楼。
首先,什么是TP值?
这个游戏,分数没有意义,快乐才是真谛。
啥啊,这不是某个九把七鸡五连鸡的主播的话呀,重来。
这个游戏,分数没有意义。因为连击分占十分之一,与此同时,这个游戏里perfect判定也有两个等级,俗称大P小P,而两种等级的note分数没有差别,又与此同时,perfect判定的最大边界离理论正确位置太远了,打出perfect评价并不是一件很困难的事,所以从分数上看不出玩家的水平。能判断玩家打歌水平的就是这个TP值,因为小P评价的TP值是大P的70%,并且miss对TP值的影响没有对分数这么大。显然,这个值越高说明你的准确度越高,达到100时就说明你在这首歌里达成了最完美的评价。
其次,什么是正态分布?
如果只是皮毛的话,你只需要知道这个东西就是一个概率分布,这种分布模式很常见就行了。但是如果要继续讨论下去的话,你需要有一点高中数学知识。
正态分布主要需要关心的是两个参数,一个是位置参数μ,它表示了这堆数据中数量最多的数据值,或者说是平均值;另一个是方差值σ^2。这两个值决定了这个概率分布的形状。
然后,什么是方差?
简单的说就是一个表示数据与平均值离散程度的值,它越大就说明越多的数据离平均值越远。我们把这个概念带入到准度上,就得到准度方差,它说明了你打歌的稳定程度,越大越不稳。
那我要干什么?
根据TP值的大小,以正态分布为基准,计算打歌的准度方差。就这一句话就可以概括。
接下来就是数据处理阶段了,这段很无聊。首先我们要定一堆假设,要不然啥都算不出来:
1.假设你的打击时刻的统计值符合正态分布。
2.假设你的平均准确度正好在正确打击时刻的正中间。虽然之后我会讨论“你的绝对准度本身就不准”的可能性,但不是现在。
3.假设一个松判定note比例常数,这个常数代表了谱面中判定松的note的比例,包含只有大P判定的锁链note点,只要不是特别手残就一定能打出大P判定的长条note,以及没有good和bad判定的划键note。在红谱及以下难度这个常数是0.2,在紫谱及以上难度这个常数是0.15。你问我这个数是怎么来的?没有特别的依据,就是随便估的。
4.假设你的miss全部变成大P。音游打出miss判定绝大部分情况下并不是因为你对正确时刻的把握远远偏离正确点,无非是两种情况:一是你时刻对了但是打歪了,二是你的手速跟不上了。前者的话根据之后“计算非大P统计量”的算法,miss数量不会对定性有任何影响,在最后处理结果的时候把miss的note失去的TP补满即可。而对于后者,假设2就已经开始不成立了,而且显然这个时候你不应该继续打这首歌了。我们可以接受零散的miss,但是大面积的miss是不能这么近似计算的。
5.假设你的成绩没有bad。打出bad无非也就两种情况:一是你的手一不小心提前刮到了,二是你的准度飞到没边了。前者如果出现bad的频率(注意不是个数!)不高,大概好几十把才刮到这么一次,那可以当做miss的方案处理,但是如果几把就出bad甚至是每把都有,那你应该反思自己以为的“正确时刻”有没有问题了。如果你的判定太早了,记住,这个游戏不是戳泡泡,不是看你反应速度的,别一出现就点,等线到达圆圈中间再点!如果你的判定太晚了,记住,不要等到线靠近note了才开始关心那个note,已经来不及了,你应该有更远的读谱视角。当然也有可能是你的手速跟不上,只不过没到miss那么严重,那么请参考假设4的内容。
好了,假设完了。
让我们重新回到正态分布上来。正态分布就是个长的像个钟的曲线,只不过高矮胖瘦有区别而已。而且我们可以根据之前提到的两个参数,就可以直接判断一定范围的统计值占总体的比例,或是出现概率。举个栗子就是人的身高服从正态分布,我可以根据这个正态分布的中值和方差,就可以算出身高在一米七到一米八的男性所占比例。
如果我们带到音游上来,把横轴定义为打击的时刻,把正好打中的时刻定义为0,这么统计出来又如何呢?
我们就可以计算出打击时刻在一定时间范围内的打击次数在总打击次数的比例,或者说是打击时刻在这段时间的概率。是不是觉得特别棒?
我们已经预先假设了打歌时打的最准的比例是最多的,也就是第一个参数μ=0,那正态分布的第二个参数,也就是σ怎么确定?接下来就是关于正态分布的另一个知识:在正态分布中,范围在[[i]μ-3σ,μ+3σ[/i]]的概率为99.7%。所以我们可以假设玩家打歌时的准度最差的位置就在μ±3σ这两个点上。又因为μ=0,所以区间就变成了±3σ了。我们还需要知道两个值:大P的判定范围是±70ms,小P的判定范围是±200ms。
所以接下来要做的就很简单了。改变σ的范围,计算打歌时刻在±70ms之间的概率,最后算出理论的TP值作为参考结果。有一个东西叫标准正态分布表,它记录了标准正态分布中范围在[[i]-[/i]∞,x]的的概率。这个表给你们看了也多半看不懂,所以我就不发了,想看问度娘。然后我们还要带入之前假设3里的常数,这个比例的note全部都会是大P判定,最后就可以得到这样一个表格:这个表格就是在太长不看的情况下唯一有用的东西。把你的打歌结果带到这个表里,就得到了你的准度边界,它代表了在正常情况下你最差的判定水平。如果打歌成绩里有miss或者bad,就在补齐缺少的TP值之后再比较。推荐在同一首歌多打几次进行平行试验,保证结果的准确性。
为什么最高是65ms?这只是一个模拟的边界,即使在这种情况下也会有千分之一的可能会爆一个小P,这完全属于偶然事件,多打几次就能收歌了。其实这个情况更应该直接数小P数量,这会比套这个表更合理。
为什么最低是240ms?因为我觉得打歌的TP值低于90,那就不是越级这么简单的事了,你八成是在乱打,乱打的结果套这个表也没啥意义。打好最最基础的东西才是你的首要任务。
这张表侧面说明了,提升相同的准度边界,在TP总成绩越高的情况下,TP的变化越小。比如你的成绩是96.60,根据表的数据对应的是140ms这一列,这代表着你的准度区间是游戏设定的大P区间的两倍,这个差距可太大了,你的准度波动非常大,这说明你要进一步的降低准度的波动。我相信在延迟正确,你所认为的正确时刻和真正的正确时刻对上的前提下,提升TP值的过程就是降低准度方差的过程。
与此同时,这应该也是对打歌成绩阶级的一个比较科学的划分方式。根据这个表也可以比较清晰的说明自己到底是个什么水平,欢迎对号入座。
不过我自己也承认,干看这个表也挺局限的,我们可以用这个表拓展出很多东西,下面就是我的一些想法:
对于good怎么处理?在正常情况下,只有在准度边界在195ms的时候,才可能有千分之一的几率出现good。假如你在这个范围之外,也就是高于92.87的TP值下大面积出现good,那就说明你的局部准度波动太大了,这个情况也是越级的一个表现,即使你的TP已经有97了也是如此。
反过来说,根据这个表,在正常情况下,92.42就是在MM情况下的下界。也就是说,如果你打出了MM的成绩,TP却低于这个值,那么就可以说明你的延迟偏差没有设对。当然我觉得大部分情况并不是这个原因,很可能是因为你是在用目押,那这里的建议是先改掉目押的习惯,我们的大前提假设是打歌是根据你对节奏时刻的把握而不是对线什么时候经过圈圈正中间的把握,用眼睛看非常不准,这是一个不争的事实。要是你真的确定自己是音押的但TP还是如此,那就调延迟吧,不过有一个小小的结论,你偏离这个值越远,就说明你的准度波动越小。我在这里就不具体量化了。
所以,这个东西到底有没有用?
应该有用吧。我希望有用,量化这种东西真的很抽象,这就是个数字,看这个东西对自己水平提升并没有实质性帮助。也许对明显离谱的“陋习改正”有帮助吧。要说自己看到这个数字怎么处理嘛,我倒是提供了一个思路,提升准度,并不是提升你对正确时刻的判断,而是尽量压缩自己的准度波动区间,让自己变得更稳定。