genre

Use when

Designing a rhythm/beat game where inputs must land in frame-honest windows and the music is an observer of the beat clock.

Rhythm

What it is. Actions that only count on the beat. A clock ticks in musical time; you press inside a window around each beat, and the world answers in tempo. Whether it’s tap-the-note, move-on-beat, or fight-on-beat, the game is a legality filter over time: right thing, right frame.

Player fantasy / why it’s fun. “I’m locked into the groove and the game is moving with me.” The pull is embodied precision — the satisfaction of a press that lands exactly, the whole system pulsing in time. Fun is tight but fair: a window narrow enough to demand mastery, honest enough that a miss is always yours.

Pillars

  1. The beat is sim time. Pick a BPM so one beat is an integer frame count. The sim advances on the beat counter; audio is an observer that schedules sound off that counter. Never the reverse — audio-driven timing is unprovable and drifts.
  2. Fairness is frame-exact. Three assertions define the whole feel: the input is accepted at the window edge, refused at edge+1, and hammering acts once. If those three hold, the game is fair; if any fails, it’s a lie you can feel.
  3. Rhythm is a filter over a turn-based game. Underneath the beat is a discrete turn system; the rhythm layer is a thin input-legality gate (~30 lines over a roguelike). Design the turn game first, then constrain when moves are legal.

The loop stack

LayerThe beat
MomentHit the window on the beat → the action fires in tempo.
EncounterA phrase/pattern: a run of beats to nail without breaking the chain.
SessionA track/level: sustain accuracy from start to finish.
MetaSong select, difficulty tiers, combo/score mastery, new charts.

Essential systems

SystemWhy this genre needs it
pattern-juice-choreographyFeel IS choreography timed to the beat; every hit’s flash/pop must land on the frame the sim fired.
system-graceThe hit window and input buffer are a grace system — accepted-inside / refused-outside, proven to the frame.
system-difficulty-and-ddaDifficulty = window width, note density, and tempo; the tuning dials of “tight but fair”.
system-onboardingTeach the window by doing on a slow, forgiving track before narrowing it.
system-mastery-curveThe skill ceiling is timing precision; charts must reward tighter play with higher scores.
system-procgen-designCharts as content; generate/validate patterns that stay hittable at tempo.

Content & difficulty model

Signature-mechanic seeds

Common pitfalls

Anchors

Verify

Beat-perfect bot clears; window honest to the frame; foes provably frozen between beats; hash-identical replay → design/FUN.md §18 · Rhythm. Design the beat grid and turn game here; prove the three frame assertions there.

Composes with

See also

This module rendersthe repo's markdowndirectly — edit it there, it changes here.