【滚动的天空】滚天理性的难度算法(试用)

首先确定难度的构成因素。
我们主要算的是操作难度(因为背板难度不容易给出具体算法),而简单关卡的难度决定因素很多(只要稍微有一点精度要求或者运动量稍微大一点,简单关的难度就提高了一个档次),所以我们主要考虑一些高难度动作(即二星的平民路线里不存在的一些动作),算完美难度或4星以上关卡的难度。
因为是操作难度计算,所以主要针对的是已能够通关的玩家。你的背板通关时间并不能作为参考。这点上我会慢慢研究并补充相关的背板难度算法。
难度是由多个高难度动作的分数求和得来的。我觉得求和非常合理。
然后我将给出用算法以及统计得出的各个动作的难度分数。因为是试用版本所以可能有不合理之处,还请大家在评论区讨论指点。
以旋转跳的难度为基准
旋转跳难度=(a²+b²)/2,其中a,b分别为障碍前需要移动的格数和障碍后的格数。(例如童话1冠的旋转跳难度=1,扑克4钻的旋转跳难度为2.5),取小数点后1位。
以下高精度操作的算法为:难度=安全手速*在安全手速下的容错距离*一个神秘的系数
(安全手速不是最低手速,比如三格横拐取2.5,四格横拐3.5,斜角1)(安全手速下的容错距离,取的是在安全手速下,允许操作开始的位置,的纵向距离)(神秘系数是为了凑整以及与旋转跳难度相对应)
1,一格拐(即s拐的组成单元,这是樱姐叫的名字。。我觉得很方便也比“s拐单元”好听)1.5分/个
2,斜角 2分/个
3,2格半横拐(城市一钻,几何2盒,生快36%)3分/个,类似几何斜角要再单独计算。
4,三格横拐 5分/个
5,四格横拐 8分/个
6,类一格拐(把其中一个障碍格变成啥都没有)1分/组(一组指连续但不构成s拐排列的若干个此地形,比如世界杯滚轮阵之后的两组)
7,畸形旋转跳(在落地前一格有空中障碍,比如埃及46%)3分/个
8,半速三格拐(穿过前后间隔两格中间,例如像素进入3盒路线处)1.5分/个
9,单跳板斜角 3分/个
10,在障碍前/后一格有钻石,或在障碍后一格有跳板:当成一格拐
11,z字抖 4分/格斜角(大于三格才开始计算,算作z字抖的斜角不再单独计算)
12,百变的小跳板:若小跳板排列成对角方向,则2分/次跳跃
13,机关斜角 1.5分/个
14,在上层的一格拐:1.5分/个(因为尽管没有障碍但是不能卡位所以其实容错时间与正常1格拐差不多)
15,2格横拐吃飞天钻 2分/个
16,半速4格拐(像素进入4盒路线的操作)2.4分/个
另外的一些补充:
1,在旋转跳之后4格内,所有操作的分数乘以(1+该旋转跳分数/2)。比如埃及1冠的旋转跳后斜角,要乘以2。
2,万惊传送(异位):4分/个。在传送之后4格内操作*2
3,考虑球速问题,暂将正常球速分成5个等级(12345),外加减速(-1.5等级)和加速(10.3等级)共7个等级。在一定球速下,所有的算分都将乘以(0.7+等级/10)²(平方是因为不仅手速要求变快,而且容错时间变短了),并且视情况增置一些要算分的难度动作。
4,5格外的操作分数*1.5;若高精度操作单元的相关障碍/地板有一半在大幅移动(包括纵向)(比如万惊74%的s拐),则难度*1.5;如果旋转跳只能以一定幅度操作(比如万嘉一冠旋转跳幅度不能划到第三格),则*1.5;双球模式*1.5。
5,空中高精度操作*2;高精度操作单元如果所有相关障碍/地板在大幅移动(比如霓虹滚轮阵,世界杯1冠),则*2。反向操作*2。
6,根据统计结果,随机障碍/跳板/钻石都是3分/个。
7,其它太特殊的地形/玩法单独讨论,比如激光1冠(暂定4分)。
8,做好全员上百的准备吧,欢迎指点补充。(因为是测试算法所以暂时不浪费时间算)