跳舞的線更加理性的難度算法

? ? ? ? 早在上一個(gè)版本(CV1884553)的計(jì)算過程中就已經(jīng)發(fā)現(xiàn)了一系列問題,一個(gè)是:選取一個(gè)路段的“百分比長度”作為難度計(jì)算的單元,既沒有考慮到點(diǎn)擊的密度(尤其是不用點(diǎn)擊的地段),也沒有考慮到關(guān)卡時(shí)長,而且存在估計(jì)不準(zhǔn)的情況。
? ? ? ? 以及連點(diǎn)/視角旋轉(zhuǎn)系數(shù)如果乘在不同長度的路段上(比如分別乘在10%或者20%),會(huì)引起主觀誤差。
? ? ? ? 此外,對(duì)于線速也沒有充分考慮。線速本來是影響判定寬度的重要因素,如果只是估計(jì)目測(cè)會(huì)帶來極大的誤差。

所以給出新的難度算法
算法的基本思路:
1,每一次點(diǎn)擊都會(huì)給關(guān)卡貢獻(xiàn)難度,每一次點(diǎn)擊的基礎(chǔ)判定分為(線速2)*(線寬/路寬)2,其中“線速”用(每分鐘走過的線寬/600)表示。路寬的表示方式不變,新增對(duì)于路寬的修正:如果是障礙封閉的路段,則路的判定寬度比視覺寬度少0.25線寬。(主要針對(duì)園林長城這種窄路)
2,視角,手速,不規(guī)則路面帶來的系數(shù)保留。
3,連點(diǎn)系數(shù)刪除。雖然連點(diǎn)時(shí)不容易控制調(diào)整方向,但此時(shí)的節(jié)奏感相對(duì)較強(qiáng),不易產(chǎn)生偏差(除非像我的渣機(jī)那樣隨機(jī)出現(xiàn)點(diǎn)擊延遲,不過渣機(jī)不是難度算法應(yīng)該考慮的因素233)。且此系數(shù)乘在哪個(gè)路段也說不清,會(huì)帶來主觀誤差。
4,每次點(diǎn)擊乘上系數(shù)之后,再對(duì)所有的求和,得到最后的結(jié)果。
5,分?jǐn)?shù)最高的點(diǎn)擊也會(huì)列入考慮范圍,作為難度的另一個(gè)參考角度,不計(jì)入主體的難度算法。
6,精確到每次點(diǎn)擊之后,可以更精確地給出難度,消除大部分殘余的主觀誤差,并且可以自如地從過關(guān)難度調(diào)整到完美難度。(這樣好.JPG)

? ? ? ? 如果對(duì)本難度算法有興趣,而且知道關(guān)卡bpm的話,歡迎私聊我告訴我每一關(guān)的bpm哦~這將減少我一半的工作量,不勝感激!