操作
機能 #423
完了判定自動調整機能のアップデート
機能 #423:
判定自動調整機能のアップデート
説明
- 現状の仕様把握から
操作
説明
実装に着手しました。
feature/423
対応が完了しました。
判定タイミング自動調整を、1ノーツごとの逐次微小補正から「直近N回の判定誤差の中央値ベースのバッチ補正」へ刷新し、外れ値(事故押し等)に頑健・無振動な収束にしました。あわせて機能をランチャー設定画面に露出し、サンプル数・最大調整幅を調整可能にしました。
JudgeAutoAdjuster(新規): 対象判定(PG/GR/GD・±150ms・PLAY/PRACTICE)の誤差をバッファし、N件ごとに中央値で judgetiming をバッチ補正(maxStep でクランプ)。中央値方式で事故押し等の外れ値に強く振動しない。JudgeManager: 旧逐次補正を新ロジックへ置換、play初期化でリセット。PlayerConfig: judgeAutoAdjustSampleCount(既定32, 8–100) / judgeAutoAdjustMaxStep(既定3, 1–10) を追加。永続化・Validatorで旧ファイル欠落値はデフォルト補完+クランプ(後方互換)。PlayConfigurationView): 判定アルゴリズム下に「自動調整トグル・判定タイミング値・サンプル数・最大調整幅」を追加。旧ハードコード(judgetiming=0/autoAdjust=false)を撤廃しコントロール値へバインド(保存時0クリア問題も解消)。ラベルは ja/en 追加。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件を追加。