User:ALFalpha/judgement

来自Rotaeno中文维基


警告:Rotaeno中一切资源,包括图像、音源、代码等,
版权均为心动网络所有,擅自修改、传播,后果自负!
本页面严禁链入及引用!

本页面是对Rotaeno游戏判定的简要介绍。

(注意:以下角度数据均在16:9屏幕中测得,4:3屏幕可能有偏差,待补充)

总体而言,Rotaeno的时间判定分为四档:40ms, 80ms, 130ms, 170ms; 角度上,设备倾斜角度±45°以内是可击打范围,点击或长按可以触发相差20°以内物件的判定。

由于Rotaeno音符种类多样,判定方式也不尽相同,下面将按音符种类逐一介绍。

TAP

Tap音符遵循最传统的判定方式,即单次点击相对于判定时点的时间差:

  • Perfect+: ±40ms以内;
  • Perfect: ±40ms~±80ms;
  • Good: ±80ms~±130ms;
  • Miss: -170ms~-130ms,或+130ms以后仍未点击。

单次点击至多只能触发一个Tap的判定。

FLICK

在大多数带有Flick音符的游戏中,Flick的判定都最令玩家捉摸不透。自Rotaeno发行以来,其Flick判定也已反复调整数次。

无论数值如何修改,Flick的判定方式始终为:在判定时间内按住屏幕,并且:

  • 以一定速率向任意方向滑动;
  • 以一定速率向任意方向旋转设备。

在Rotaeno中,Filck没有Early判定,其有效判定时间为0ms[1]~+130ms,具体分为:

  • Perfect+: 0ms~+80ms中完成上述操作;
  • Good: +80ms~+130ms中完成上述操作;
  • Miss: +130ms以后仍未完成上述操作。

由于判定只和滑动/转动速率有关,因此同一“次”滑动/转动可以判定位于判定区间内的所有Flick,无需抬手或反复转换方向。

SLIDE

作为需要持续按住屏幕的物件,Rotaeno选择了分立的Slide而非连续的“Hold”,既方便了物量计算,也简化了判定。 Slide的判定只有两种:

  • Perfect+: ±80ms内按住屏幕,或±130ms内点击屏幕;
  • Miss: 未完成上述任一种操作。

细心的玩家可能会发现,有时点击并按住一长串Slide时,前几个Slide会同时先判定,按键音上出现一个断点。这是由于Slide的点击判定和长按判定在程序上是分别计算的:点击判定只要在±130ms内就立即生效并播放按键音,而长按判定需要等到物件的0ms时刻以后才播放按键音。

ROTATE

Rotate音符是Rotaeno标志性的特色玩法。虽然音符样式上标记了旋转的起始角度和目标角度,但判定只与旋转方向和速率有关,不看设备实际位于什么角度。

具体判定为,在-170ms~+130ms的可判定区间内,在转对方向的前提下:

  • Perfect+: 最高旋转速率达到或超过250°/s;[2]
  • Perfect: 最高旋转速率位于200°/s~250°/s;
  • Good: 最高旋转速率位于100°/s~200°/s;
  • Miss: 最高旋转速率低于100°/s。

程序每帧(16.7ms)计算一次速率,取判定区间内最好的判定结果。

和Flick一样,由于判定只看速率,故一次旋转可以判定位于判定区间内的所有Rotate。

CATCH

Catch音符同样是Rotaeno的核心玩法之一。它和Rotate音符相辅相成,构成对玩家旋转速度和精度的双重考验。

具体判定为,在-170ms~+80ms的可判定区间内:

  • Perfect+: 设备与物件角度相差最小值不超过11°;
  • Perfect: 设备与物件角度相差最小值位于11°~16°;
  • Good: 设备与物件角度相差最小值位于16°~25°;
  • Miss: 设备与物件角度相差最小值超过25°。

同样地,程序在判定区间内取最好的判定结果。也就是说,只要在判定区间内某一帧,设备与Catch相差角度小于11°,这个Catch就被判定为Perfect+。

BOMB

作为“惩罚性”物件,Bomb的判定十分宽松,最大限度地减少了误判的可能。

具体判定为,在物件0ms之后的第一个判定帧处:

  • Miss: 设备与物件角度相差小于8°;
  • Perfect+: 设备与物件角度相差超过8°。

是的,Bomb只有一帧有判定,位于0ms~+16.7ms[3]中一个随机时刻。

  1. 实际上为-8.3ms,即半个游戏帧长
  2. 角度单位为猜测,待复查
  3. 受设备帧率和程序随机卡顿等影响,可能延长