• v0.7.0 7beb355ec5

    v0.7.0 Stable

    joe released this 2026-08-17 19:28:47 +01:00 | 11 commits to main since this release

    The drum is the whole interface now: it works the menus, the screens say so, and the
    playfield answers every hit.

    Added

    • Every hit is answered. A note bursts at the judge ring and flies off to the soul
      gauge on a bowed arc, which is what makes a fast stream read as a stream — the last dozen
      hits are still on screen. The gauge flashes when a note lands on it, 560 ms after it was
      struck, rather than when it was hit. Every timing is OpenTaiko's, written up in
      docs/reference-constants.md §7; reading them rather than
      guessing turned up three things nobody would invent, including that a BAD is answered
      with nothing at all
      .
    • The combo bounces on the reference's own thirteen-step curve, peaking 18% larger four
      frames in, and changes colour at 50, 100 and 300. The judgement eases into place over
      410 ms and fades over the last 50.
    • A big note taken with both hands gets a second, larger burst — the distinction has
      been scored since 0.4.0 and shown nowhere until now.
    • Go-go time arrives rather than merely being tinted: the lane brightens and a spray of
      sparks is thrown up from six points across the bottom.
    • Rolls and balloons answer too. A roll shows a framed count that lingers 2.44 s after
      the last hit rather than blinking with each one; a balloon counts down and deflates in
      five stages as its target approaches.
    • The drum works the menus, as it does on the cabinet: the rim moves — D up, K
      down — and either don key, F or J, chooses. That is the whole interface for
      anyone playing on a real drum, where those four inputs are all there is. D no longer
      moves the cursor right, since one key cannot both move and adjust on a screen that reads
      them together.
    • A way out you can see. Song select repeats a Return entry through every category
      — the arcade's floor(n / 7) + 1 of them, so a way out is never more than seven presses
      away — and the difficulty screen offers Back first, before the difficulties. Bound
      keys were not enough: on a real drum there is no Escape key.

    Fixed

    • A song no longer loops when its audio runs out before its chart does. "R"ast GaMES!! played itself twice, and the second time — every note already resolved — all
      that appeared were the drumrolls. raylib loops a music stream by default and the clock is
      the audio's own position, so the wrap took chart time back to zero with it. A song now
      ends when either its chart or its audio does.
    • A one-pixel line of undimmed bar along the bottom of the song wheel, where the fade
      stopped a row short of the screen.
    • A category explanation split across lines no longer reads community- made.

    Changed

    • Autoplay drums rolls, at the 16.6 hits a second the reference assumes when budgeting
      a roll's share of the score. It never touched them before, which left the only feedback a
      roll has impossible to see without a player. One consequence: --auto can now score over
      1,000,000 on a roll-heavy chart, which is what happens to anyone rolling faster than the
      budget assumes.

    Documentation

    • Branching, as the format actually defines it — the determining point is the last bar
      line before #BRANCHSTART, branch changes at the same instant resolve by definition
      order, and negative #MEASURE overlays rather than skips. Three sources agree:
      the charter of SHAPESHIFTER with his own diagrams,
      IepIweidieng's TJA reference,
      and OpenTaiko's source. We have it wrong, in a way this release does not yet fix:
      see step 17a in implementation-plan.md.
    • Step 11's gate is reopened. SHAPESHIFTER was signed off as matching the reference and
      does not; the score check that appeared to confirm it is arithmetic on judgement counts
      and says nothing about where a note is drawn.
    Downloads