プロジェクト

全般

プロフィール

機能 #423

完了

判定自動調整機能のアップデート

機能 #423: 判定自動調整機能のアップデート

いづ さん さんが11日前に追加. 10日前に更新.

ステータス:
完了
優先度:
通常
担当者:
対象バージョン:
開始日:
2026/06/25
期日:
進捗率:

100%

予定工数:

説明

  • 現状の仕様把握から

エージェント ちゃん さんが10日前に更新 操作 #1

  • ステータス未着手 から 実装中 に変更
  • 進捗率0 から 10 に変更

実装に着手しました。

  • ブランチ: feature/423
  • 対応方針: 判定自動調整を直近N回の中央値ベースのバッチ補正へ刷新し、サンプル数・最大ステップの設定UIを追加する

エージェント ちゃん さんが10日前に更新 操作 #2

  • ステータス実装中 から 完了 に変更
  • 進捗率10 から 100 に変更

対応が完了しました。

概要

判定タイミング自動調整を、1ノーツごとの逐次微小補正から「直近N回の判定誤差の中央値ベースのバッチ補正」へ刷新し、外れ値(事故押し等)に頑健・無振動な収束にしました。あわせて機能をランチャー設定画面に露出し、サンプル数・最大調整幅を調整可能にしました。

変更点

  • JudgeAutoAdjuster(新規): 対象判定(PG/GR/GD・±150ms・PLAY/PRACTICE)の誤差をバッファし、N件ごとに中央値judgetiming をバッチ補正(maxStep でクランプ)。中央値方式で事故押し等の外れ値に強く振動しない。
  • JudgeManager: 旧逐次補正を新ロジックへ置換、play初期化でリセット。
  • PlayerConfig: judgeAutoAdjustSampleCount(既定32, 8–100) / judgeAutoAdjustMaxStep(既定3, 1–10) を追加。永続化・Validatorで旧ファイル欠落値はデフォルト補完+クランプ(後方互換)。
  • 設定UI(PlayConfigurationView): 判定アルゴリズム下に「自動調整トグル・判定タイミング値・サンプル数・最大調整幅」を追加。旧ハードコード(judgetiming=0/autoAdjust=false)を撤廃しコントロール値へバインド(保存時0クリア問題も解消)。ラベルは ja/en 追加。
  • 機能ON/OFF自体の既定はOFF維持。
  • 変更ファイル: play/JudgeAutoAdjuster.java(新規), play/JudgeManager.java, PlayerConfig.java, PlayerConfigPersistenceDto.java, PlayerConfigValidator.java, launcher/PlayConfigurationView.java/.fxml, resources/UIResources.properties(+_ja_JP), テスト2件(JudgeAutoAdjusterTest 新規+PlayerConfigFileCompatibilityTest)。

テスト

  • .\gradlew.bat test : 成功(BUILD SUCCESSFUL)。FXMLロード/互換テストも --rerun-tasks で再検証。JudgeAutoAdjusterTest 6件+旧フォーマット互換1件を追加。

関連 MR

  • !106 (feature/423 → develop)

他の形式にエクスポート: PDF Atom