コンボ・スコア計算

このページでは、コンボ数の計算や、スコアの計算の方法を紹介します

コンボ

プロセカのコンボ計算では、ノーツ(タップノーツ・フリックノーツ)それぞれが一つとして数えられ、スライドノーツでは、まず始点及び終点が二つ、ダイアモンドが置かれている中継点(可視中継点+無視中継点)の数、及び経過している半拍の数を合わせた数である。

総コンボ数 total_combo の計算は以下のような擬似コードの通りである。

function calculate_diamonds(steps) := filter(λ(step).(step.diamond), steps).length()

function calculate_hidden(head, tail) := floor((tail.tick - head.tick) / (TICK_PER_BEAT / 2) - 0.5)

function calculate_slide(slide) := 2 + calculate_diamonds(slide.steps) + calculate_hidden(slide.head, slide.tail) // head (=1) + tail (=1) + diamonds + hidden

total_combo ← singles.length() + sum(map(calculate_slide, slides))

スコア計算

現在有力な計算式は
(総合力÷重み付きノーツ数)×4×重み×判定係数×レベル倍率×コンボボーナス×スキル倍率
である。

総合力

文字通り。

重み付きノーツ数

ノーツにはそれぞれ重みがある。

タップ : 1

フリック : 1

スライド始点・終点 : 1

スライド中継点・中継判定: 0.1

クリティカルタップ : 2

クリティカルフリック : 3

クリティカルスライド始点・終点 : 2

クリティカルスライド中継点 : 0.2

クリティカルスライド中継判定 : 0.1

また、可視・不可視中継点が重なっている場合は両方のスコアが加算される。

判定係数

PERFECT : 1.0

GREAT : 0.7

GOOD : 0.5

BAD : 0

MISS : 0

AUTO : 0.5

レベル倍率

レベル5から1レベル毎に0.5%上昇する。(例:レベル33 = 114%)

コンボボーナス

100コンボ毎に1%上昇する。

スキル倍率

カードのスコアアップでの倍率。