Skip to content

BeatUp Engine v0.4

Choose a tag to compare

@bishpop bishpop released this 13 Sep 19:42
· 15 commits to main since this release
6bea6c0

BeatUp Engine v0.4

A large gameplay, editor and tooling update. This release focuses on making the
BeatUp mode behave like Audition Online, a much-improved chart editor.


Highlights

  • Authentic BeatUp timing — hit detection and note graphics now share a
    single time base, so pressing on the beat lands a true Perfect.
  • Animated arrows — arrows cycle through per-beat frames just like the
    original game.
  • New .bu project format — save your whole session (audio, notes,
    position, BPM) and reopen it with a double-click.
  • Colored snap grid in the editor for instant snap recognition.

Gameplay

Timing & Hit Detection

  • Reworked the beat engine so graphics and hit logic use the same time base.
    Previously the offset was applied inconsistently, which made presses feel late
    and Perfects almost impossible to hit. A note pressed while it sits on the
    receptor now registers as a true Perfect.
  • Removed sub-millisecond drift caused by rounding the offset value. The offset
    is now carried at full floating-point precision (the 0.7 default is
    preserved and remains the single tuning value, as in Audition Online).
  • Adjustable Perfect window (ARROW_PERFECT, default 0.18).
  • Wider early hit windows so Great/Cool/Bad open earlier on approach —
    roughly where the _2 liner segment begins — giving more room to hit while
    keeping Perfect tight. Late windows are shorter because notes begin flying out
    after the receptor.
  • Miss/unpressed notes now fly out ~44% longer before fading, for a smoother
    tail.

Visuals

  • MP/RP receptor beams completely reworked: they now cover the full visible
    _1 + _2 lane box per key (9/6/3 and 7/4/1), aligned to the real receptor
    rows, mirrored per side so the bright end sits at the receptor. Beam edges are
    fully configurable via named constants (LEFT_START, RIGHT_END, etc.) for
    both normal and Enter-Chance layouts.
  • Arrow frame animation — moving arrows now cycle a<key>1 → a<key>2 → a<key>3 → a<key>4 per beat instead of using a single static sprite. Old
    a18/a38/... static names are no longer required.
  • arrow_explode now renders at full original size and opacity, matching the
    Audition BeatUp explosion.
  • Fixed the beam gradient direction and the gap that appeared between lane bar
    assets on the right side.

Editor

New: .bu Project Files

  • Save the entire editor state to a .bu file: audio path, BPM, offset,
    total beats, last playback position (which also restores the MADI), and every
    note with its speed value.
  • Ctrl+Shift+S saves instantly. By default the .bu is written next to the
    music file with a matching name (song.ogg → song.bu).
  • Double-click a .bu file to launch the app straight into the editor with
    the song, notes and position restored automatically (requires associating the
    .bu extension with the executable in Windows).
  • File menu adds Open Project, Save Project and Save Project As….

New: Toast Notifications

  • On-screen overlay confirms Saved / Loaded / Exported actions (and errors),
    fades out automatically.

New: Colored Snap Grid

  • The chart and split views now draw a color-coded grid so you always know
    the current snap:
    • White — MADI lines (M1, M2, M3, …)
    • Red — 4th snap
    • Blue — 8th snap
    • Yellow — 16th snap
  • Colors are intentionally desaturated to stay easy on the eyes over long
    sessions; line thickness also scales with importance.

Import / Export Hotkeys

  • Direct exports (no dialog, written next to the audio file):
    • Ctrl+Shift+E — export .slk
    • Ctrl+Shift+V — export .ssc
  • Imports (with a file-browser dialog):
    • Ctrl+Alt+A — import audio
    • Ctrl+Alt+E — import .slk
    • Ctrl+Alt+V — import .ssc
    • Ctrl+Alt+B — open .bu project
  • The .ssc export now writes BPM and the music file (full filename with
    extension) into the chart. All hotkeys are also shown in the File menu.

Settings (Ctrl+S)

  • Fixed a bug where the settings overlay could not be closed — window
    hotkeys are now handled before ImGui captures the keyboard, and Esc also
    closes it.
  • New "Auto-enable Enter Chance" checkbox. When on, Enter is pressed
    automatically once the countdown ends. Saved to config.
  • New default judgment sound volumes: Perfect 120%, Great 70%, Cool 60%,
    Bad 55%
    .

Editor Behavior

  • Autoplay is now ON by default in the editor and can be toggled off at any
    time (previously it defaulted off).
  • The redundant top-right score readout is gone; the score lives only in the
    bottom scoreboard card.
  • Scoreboard card is more compact (all values and percentages retained) and
    is hidden in Split View so the third arrow is never covered.

Timeline & Transport

  • Redesigned the top timeline: a slim rounded track with a progress fill and
    a clean round handle (fixed the earlier doubled/buggy slider rendering).
  • Restyled transport buttons: rounded pills, a red hover state on Stop, and a
    subtle accent ring on Play to mark it as the primary action.
  • Fully self-drawn slider so the native ImGui grab no longer overlaps the custom
    visuals.

Security / Build

  • Internal hardening and stability improvements.

Fixes

  • Fixed inconsistent offset handling that caused off-beat feel.
  • Fixed MP/RP beams rendering as an oversized block / wrong position / wrong side.
  • Fixed the receptor-beam overshoot past the lane box and the right-side gap.
  • Fixed arrow_explode scaling and coverage.
  • Fixed the timeline slider rendering artifacts.
  • Fixed the settings overlay not closing.
  • Fixed the score showing in Split View and covering the third arrow.