あやかのosu!雑まとめ
エイムスキル
最終更新:
Bot(ページ名リンク)
-
view
エイムスキル概要
現在のオブジェクトのエイムに関する難易度を評価するスキル
評価基準
- 現在のオブジェクトへのカーソルの速度
- 角度の難易度
- 急激な速度変化
- スライダー難易度
各種倍率
- 広角倍率 = 1.5
- 鋭角倍率 = 1.95
- スライダー倍率 = 1.35
- 速度変化倍率 = 0.75
スピナー計算
エイムスキルはないので終了
ヒットサークルの速度計算
最後のオブジェクトがヒットサークルであると仮定して、基本距離/時間から始まる現在のヒットオブジェクトへの速度を計算する
現在速度 = 現在遅延ジャンプ距離 / 現在ストレイン時間
現在速度 = 現在遅延ジャンプ距離 / 現在ストレイン時間
スライダーの速度計算
最後のオブジェクトがスライダーの場合、スライダーを通過した移動速度を現在のオブジェクトに拡張する
スライダーの始点から終点までのスライダー速度を計算
なぞり速度 = 前回なぞり距離 / 前回なぞり時間
なぞり速度 = 前回なぞり距離 / 前回なぞり時間
スライダーの終点から現在のオブジェクトまでの速度を計算
移動速度 = 現在最小ジャンプ距離 / 現在最小ジャンプ時間
移動速度 = 現在最小ジャンプ距離 / 現在最小ジャンプ時間
合計の速度が大きい方を適用する
現在速度 = Max(現在速度, 移動速度 + なぞり速度)
現在速度 = Max(現在速度, 移動速度 + なぞり速度)
前のオブジェクトにも同様の計算を行う
角度ボーナス計算
角度の小さい方を基準にする
角度ボーナス = Min(現在速度, 前回速度)
角度ボーナス = Min(現在速度, 前回速度)
広角ボーナスを計算
広角ボーナス = Sin(3.0 / 4 * (Min(5.0 / 6 * PI, Max(PI / 6, 現在角度)) - PI / 6)) ^ 2
広角ボーナス = Sin(3.0 / 4 * (Min(5.0 / 6 * PI, Max(PI / 6, 現在角度)) - PI / 6)) ^ 2
鋭角ボーナスを計算
鋭角ボーナス = 1 - 広角ボーナス
鋭角ボーナス = 1 - 広角ボーナス
BPM300を超える1/2の鋭角にバフ
前回角度を乗算する (これがWiggleパターンでない限り、バフを掛けるべきではない)
鋭角ボーナス *= (Sin(3.0 / 4 * (Min(5.0 / 6 * PI, Max(PI / 6, 前回角度)) - PI / 6)) ^ 2)
バフの最大速度は125 / ストレイン時間
... * Min(角度ボーナス, 125 / 現在ストレイン時間)
スケールバフ (BPM150 1/4~200BPM 1/4)
... * (Sin(PI / 2 * Min(1, (100 - 現在ストレイン時間) / 25 ), 2) ^ 2)
バフ距離(半径50を超えて、直径100まで)
... * (Sin(PI / 2 * (Clamp(現在遅延ジャンプ距離, 50, 100) - 50) / 50) ^ 2)
}
前回角度を乗算する (これがWiggleパターンでない限り、バフを掛けるべきではない)
鋭角ボーナス *= (Sin(3.0 / 4 * (Min(5.0 / 6 * PI, Max(PI / 6, 前回角度)) - PI / 6)) ^ 2)
バフの最大速度は125 / ストレイン時間
... * Min(角度ボーナス, 125 / 現在ストレイン時間)
スケールバフ (BPM150 1/4~200BPM 1/4)
... * (Sin(PI / 2 * Min(1, (100 - 現在ストレイン時間) / 25 ), 2) ^ 2)
バフ距離(半径50を超えて、直径100まで)
... * (Sin(PI / 2 * (Clamp(現在遅延ジャンプ距離, 50, 100) - 50) / 50) ^ 2)
}
速度変化ボーナス計算
個々のジャンプやスライダーの軌跡の速度ではなく、オブジェクト全体の平均速度を使用する
前回速度 = (前回遅延ジャンプ距離 + 前々回なぞり距離) / 前回ストレイン時間
現在速度 = (現在遅延ジャンプ距離 + 前回なぞり距離) / 現在ストレイン時間
前回速度 = (前回遅延ジャンプ距離 + 前々回なぞり距離) / 前回ストレイン時間
現在速度 = (現在遅延ジャンプ距離 + 前回なぞり距離) / 現在ストレイン時間
0.5 * 最大距離との差の比率でスケーリング
距離比率 = Sin(PI / 2 * Abs(前回速度 - 現在速度) / Max(前回速度, 現在速度)) ^ 2
距離比率 = Sin(PI / 2 * Abs(前回速度 - 現在速度) / Max(前回速度, 現在速度)) ^ 2
速度が変化したままの重複に対して、125 / ストレイン時間までの距離の%分のバフ
重複速度バフ = Min(125 / Min(現在ストレイン時間, 前回ストレイン時間), Abs(前回速度 - 現在速度))
重複速度バフ = Min(125 / Min(現在ストレイン時間, 前回ストレイン時間), Abs(前回速度 - 現在速度))
速度変化ボーナスを計算
速度変化ボーナス = 重複速度バフ * 距離比率
速度変化ボーナス = 重複速度バフ * 距離比率
リズム変化のペナルティ
速度変化ボーナス *= (Min(現在ストレイン時間, 前回ストレイン時間) / Max(現在ストレイン時間, 前回ストレイン時間)) ^ 2
速度変化ボーナス *= (Min(現在ストレイン時間, 前回ストレイン時間) / Max(現在ストレイン時間, 前回ストレイン時間)) ^ 2
スライダーボーナス計算
スライダー速度によるバフ
スライダーボーナス = 前回なぞり距離 / 前回なぞり時間
スライダーボーナス = 前回なぞり距離 / 前回なぞり時間
エイムストレインに加算
各要素の中で一番評価値の高いものをストレインに加算
エイムストレイン += Max(鋭角ボーナス * 鋭角倍率, 広角ボーナス * 広角倍率 + 速度変化ボーナス * 速度変化倍率)
エイムストレイン += Max(鋭角ボーナス * 鋭角倍率, 広角ボーナス * 広角倍率 + 速度変化ボーナス * 速度変化倍率)
エイムストレインにスライダーボーナスを加算
エイムストレイン += スライダーボーナス * スライダー倍率