プロジェクト

全般

プロフィール

バグ #427

完了

ハード落ちなど途中終了した場合でも楽曲トータルのノーツ数がIRに送信されている

バグ #427: ハード落ちなど途中終了した場合でも楽曲トータルのノーツ数がIRに送信されている

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

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

100%

予定工数:

説明

たたいたノーツ数は途中終了した場合、そこまでのノーツ数を送出すべき


関連するチケット 1 (0件未完了1件完了)

関連している beatoraja - バグ #426: IRに露出する totalDuration が実プレー時間でなく判定ズレ総和になっている完了いづ さん2026/06/26

操作

いづ さん さんが10日前に更新 操作 #1

  • 関連している バグ #426: IRに露出する totalDuration が実プレー時間でなく判定ズレ総和になっている を追加

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

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

実装に着手しました。

  • ブランチ: feature/427
  • 対応方針: IR送信時のノーツ数を楽曲トータルではなく処理済ノーツ数(passnotes)に補正し、途中終了時はそこまでに叩いた分のみ送出する

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

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

対応が完了しました。

概要

ハード落ち等で途中終了した場合でも IR へ楽曲トータルのノーツ数が送信されていた問題を修正。途中終了時はそこまでに叩いた(処理済み)ノーツ数を送出するようにした。

変更点

  • IRScoreData コンストラクタで IR 送信用の notesMath.min(score.getNotes(), score.getPassnotes()) に変更。途中終了時は処理済ノーツ数(passnotes)を送出し、完走時は passnotes == notes のため従来どおり。
  • ローカル DB 保存・レート計算・ghost で使う ScoreData.notes(楽曲トータル)は無変更で、影響範囲を IR 送信値のみに限定。
  • 変更ファイル: src/bms/player/beatoraja/ir/IRScoreData.javasrc/test/java/bms/player/beatoraja/ir/IRScoreDataTest.java(2件)

テスト

  • .\gradlew.bat test --tests IRScoreDataTest : 成功(3件パス、途中終了・完走両ケースを検証)

関連 MR

  • !108 (feature/427 → develop)

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