【滾動的天空】滾天理性的難度算法(試用)

首先確定難度的構(gòu)成因素。
我們主要算的是操作難度(因為背板難度不容易給出具體算法),而簡單關(guān)卡的難度決定因素很多(只要稍微有一點精度要求或者運動量稍微大一點,簡單關(guān)的難度就提高了一個檔次),所以我們主要考慮一些高難度動作(即二星的平民路線里不存在的一些動作),算完美難度或4星以上關(guān)卡的難度。
因為是操作難度計算,所以主要針對的是已能夠通關(guān)的玩家。你的背板通關(guān)時間并不能作為參考。這點上我會慢慢研究并補充相關(guān)的背板難度算法。
難度是由多個高難度動作的分數(shù)求和得來的。我覺得求和非常合理。
然后我將給出用算法以及統(tǒng)計得出的各個動作的難度分數(shù)。因為是試用版本所以可能有不合理之處,還請大家在評論區(qū)討論指點。
以旋轉(zhuǎn)跳的難度為基準
旋轉(zhuǎn)跳難度=(a2+b2)/2,其中a,b分別為障礙前需要移動的格數(shù)和障礙后的格數(shù)。(例如童話1冠的旋轉(zhuǎn)跳難度=1,撲克4鉆的旋轉(zhuǎn)跳難度為2.5),取小數(shù)點后1位。
以下高精度操作的算法為:難度=安全手速*在安全手速下的容錯距離*一個神秘的系數(shù)
(安全手速不是最低手速,比如三格橫拐取2.5,四格橫拐3.5,斜角1)(安全手速下的容錯距離,取的是在安全手速下,允許操作開始的位置,的縱向距離)(神秘系數(shù)是為了湊整以及與旋轉(zhuǎn)跳難度相對應(yīng))
1,一格拐(即s拐的組成單元,這是櫻姐叫的名字。。我覺得很方便也比“s拐單元”好聽)1.5分/個
2,斜角 2分/個
3,2格半橫拐(城市一鉆,幾何2盒,生快36%)3分/個,類似幾何斜角要再單獨計算。
4,三格橫拐 5分/個
5,四格橫拐 8分/個
6,類一格拐(把其中一個障礙格變成啥都沒有)1分/組(一組指連續(xù)但不構(gòu)成s拐排列的若干個此地形,比如世界杯滾輪陣之后的兩組)
7,畸形旋轉(zhuǎn)跳(在落地前一格有空中障礙,比如埃及46%)3分/個
8,半速三格拐(穿過前后間隔兩格中間,例如像素進入3盒路線處)1.5分/個
9,單跳板斜角 3分/個
10,在障礙前/后一格有鉆石,或在障礙后一格有跳板:當成一格拐
11,z字抖 4分/格斜角(大于三格才開始計算,算作z字抖的斜角不再單獨計算)
12,百變的小跳板:若小跳板排列成對角方向,則2分/次跳躍
13,機關(guān)斜角 1.5分/個
14,在上層的一格拐:1.5分/個(因為盡管沒有障礙但是不能卡位所以其實容錯時間與正常1格拐差不多)
15,2格橫拐吃飛天鉆 2分/個
16,半速4格拐(像素進入4盒路線的操作)2.4分/個
另外的一些補充:
1,在旋轉(zhuǎn)跳之后4格內(nèi),所有操作的分數(shù)乘以(1+該旋轉(zhuǎn)跳分數(shù)/2)。比如埃及1冠的旋轉(zhuǎn)跳后斜角,要乘以2。
2,萬驚傳送(異位):4分/個。在傳送之后4格內(nèi)操作*2
3,考慮球速問題,暫將正常球速分成5個等級(12345),外加減速(-1.5等級)和加速(10.3等級)共7個等級。在一定球速下,所有的算分都將乘以(0.7+等級/10)2(平方是因為不僅手速要求變快,而且容錯時間變短了),并且視情況增置一些要算分的難度動作。
4,5格外的操作分數(shù)*1.5;若高精度操作單元的相關(guān)障礙/地板有一半在大幅移動(包括縱向)(比如萬驚74%的s拐),則難度*1.5;如果旋轉(zhuǎn)跳只能以一定幅度操作(比如萬嘉一冠旋轉(zhuǎn)跳幅度不能劃到第三格),則*1.5;雙球模式*1.5。
5,空中高精度操作*2;高精度操作單元如果所有相關(guān)障礙/地板在大幅移動(比如霓虹滾輪陣,世界杯1冠),則*2。反向操作*2。
6,根據(jù)統(tǒng)計結(jié)果,隨機障礙/跳板/鉆石都是3分/個。
7,其它太特殊的地形/玩法單獨討論,比如激光1冠(暫定4分)。
8,做好全員上百的準備吧,歡迎指點補充。(因為是測試算法所以暫時不浪費時間算)