Skip to content

feat(deck): sync Haneoka 7c167c95 engine, Gekiso constraints, timing and accuracy - #102

Merged
Exmeaning merged 2 commits into
mainfrom
arena/50b5adab-moenotes
Nov 8, 2026
Merged

Exmeaning merged 2 commits into
mainfrom
arena/50b5adab-moenotes

Conversation

@Exmeaning

Copy link
Copy Markdown
Member

Summary

Syncs MoeNotes's deck builder (组卡) with upstream haneoka-gakuen/ournotes-team-builder (7c167c95e858) and haneoka-gakuen/haneoka commits since PR #96 (4ed6e00):

  • Engine & Patch Sync (ournotes-team-builder@7c167c95e858):
    • Rebases patches/haneoka-rewards.patch onto 7c167c95e858 (native input delivery replay for cumulative timing, game frame rates 30/60/90/120 Hz, native integer event reward settlement & configurable room grading, bounded GEKISO member type minimums, unreachable JUST window pre-pruning, custom Good/Bad/Miss accuracy bounds, and multi-song / arena / lottery search speedups).
    • Adds MasterLiveJudgementAreaOffset to live MasterData overlay projection (src/lib/masterdata/deck-master.ts & src/lib/deck/haneoka/data.ts) with automatic fallback when older datasets omit native input offsets.
  • Timing Extrema & Frame Rates (6e20f08, ff7a6f8):
    • Exposes 30 / 60 / 90 / 120 Hz game frame rate selection in MD3 segmented controls (frameRate).
    • Fixes OrderTimingPanel plan delta (timing.best - timing.score), passes dynamic advanceMs (34 / 17 / 12 / 9 ms), and suppresses misleading guide steps with an explicit notice when guideAvailable === false (lane input collision).
  • Custom Accuracy (30675da, 783b4fa, 058c930):
    • Adds MD3 sliders for Good %, Bad %, and Miss % alongside Great % on non-Gekiso plays while keeping default greatFraction-only wire requests unchanged.
  • GEKISO Placements, Feasibility & Constraints (aea34abe, 5398de2, 94d608e, 9b68b59, 2d1d48a):
    • Supports per-range GEKISO placements ([R1, R2, R3]), minimum Combo Bonus count (minComboBonus), minimum JUST half-window (+% relative to 25 ms base or absolute ±ms), LUCK sampling mode (auto / manual luckSamples seeds with "sampled" status badge), and bounded GEKISO mission member minimums ([COMBO, LUCK, JUST], sum <= 5).
    • Pre-checks owned distinct-character GEKISO mission feasibility (ALL mission type 4 counted across all three mission types) before launching the solver.
  • Event Reward Room Grading (048ec9c):
    • Supports configurable Solo vs Battle room grading and player count (1..5) across event reward objectives.
  • Box Selection Reconciliation & Team Growth Categories (fb4a5d0, 97f314f, 20ff0c0):
    • Preserves Leader, Required, and Excluded card selections across Box reloads, game save syncs, and Theoretical Max toggles via stable (kind, masterId) reconciliation.
    • Adds single-attribute cap (awakeCap, rankCap, liveSkillCap, gekisouSkillCap) scope and MD3 attribute category filter chips (all / level / awake / rank / skill) to DeckTeamGrowthPanel.
  • i18n & Tests:
    • Full parity across all 5 core locales (zh-CN, zh-TW, ja-JP, en-US, ko-KR; 4,161 keys strictly verified) and unit/SSR tests in tests/deck-haneoka-sync-7c167c95.test.tsx.

@Exmeaning
Exmeaning merged commit 473141c into main Nov 8, 2026
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant