谱面格式:修订间差异

添加291字节 、​ 2021年1月23日 (星期六)
修改物量计算说明
无编辑摘要
(修改物量计算说明)
第146行: 第146行:
:*y(int): 未知参数
:*y(int): 未知参数


==物量 算==
==物量 算==
 有的时候我们并不能玩到自制谱面,这个时候我们可以通过以下方式 算本谱物量:
 有的时候我们并不能玩到自制谱面,这个时候我们可以通过以下方式 算本谱物量:


*统计所有地面note和arctap数量,每统计一个+1
*统计所有地面note和arctap 以及flick 数量,每统计一个+1
*Hold物件逐个计算,每个hold被起始位置所在BPM的osu 1/4拍(也就是SDVX的1/16小节)分成一个一个判定块,'''每个判定块开始处物量+1'''。
*Hold物件逐个计算,每个hold被起始位置所在BPM的osu 1/4拍(也就是SDVX的1/16小节)[说明:即判断间隔毫秒数是60000/bpm/2] 分成一个一个判定块,'''每个判定块开始处物量+1'''。
**特殊的,每个Hold最后一个判定块不加物量
**特殊的,每个Hold最后一个判定块不加物量
**BPM >255 时,判定块间隔变为所在BPM的osu 1/2拍(也就是SDVX的1/8小节)
**BPM >=255 时,判定块间隔变为所在BPM的osu 1/2拍(也就是SDVX的1/8小节)
**BPM=0时,'''本物件不存在''',更无从谈及物量
**BPM=0时,'''本物件不存在''',更无从谈及物量
**BPM<0时,按BPM的绝对值进行计算
**BPM<0时,按BPM的绝对值进行计算
**当Hold长度短于本来的判定块长度时,整个物件对半分为两个判定块('''无论如何最后一个判定块不计入物量''')
**当Hold长度短于本来的判定块长度时,整个物件对半分为两个判定块('''无论如何最后一个判定块不计入物量''')
**当Hold跨越timing时,按Hold起始点的BPM进行计算
**当Hold跨越timing时,按Hold起始点的BPM进行计算
*Arc物件与Hold相同,'''注意每个arc语句单算'''
*Arc物件 基本 与Hold相同,'''注意每个arc语句单算'''
**持续时长为0的arc物量为0
**持续时长为0的arc物量为0
**skylineBoolean为true时物量为0
**skylineBoolean为true时物量为0
**Arc可以连接形成arc组,此时头蛇按照Hold方式计算,其它蛇物量+1
***连接条件:与arc颜色无关,要求前一个arc结尾和后一个arc开头x坐标差小于0.1,y坐标相等,时间差小于10


''需要指出,Hold和Arc可能会出现误差,原因在于末尾处可能刚好超过计数点零点几毫秒,不过即使如此正常情况下误差总计也不会 超过100 。''
''需要指出,Hold和Arc可能会出现误差,原因在于末尾处可能刚好超过计数点零点几毫秒,不过即使如此正常情况下误差总计也不会 太大 。''
{{Usercheck-end}}
{{Usercheck-end}}
3

个编辑