---
key: mechanic/rhythm-composition--t219
type: mechanic
id: rhythm-composition--t219
lang: en
title: Beat matching and timing windows
summary: >-
  The player presses the matching button as a cue reaches a timing line. A
  visible rhythm and timing window connect input to the music.
updatedAt: '2026-10-21'
status: active
url: 'https://gamemechanics.pro/en/knowledge/mechanic/rhythm-composition--t219/'
jsonUrl: >-
  https://gamemechanics.pro/api/v1/knowledge/en/mechanic/rhythm-composition--t219.json
markdownUrl: >-
  https://gamemechanics.pro/content/knowledge/en/mechanic/rhythm-composition--t219.md
aliases:
  - Rhythm timing
tags:
  - 'Sound, music and rhythm'
  - Mechanics and variants
sourceIds:
  - source-f20454367eeff3c4
  - source-df9ed2d1b2e7ac06
sources:
  - id: source-f20454367eeff3c4
    title: 'Godot: Sync the gameplay with audio and music'
    url: >-
      https://docs.godotengine.org/en/stable/tutorials/audio/sync_with_audio.html
    verifiedAt: null
  - id: source-df9ed2d1b2e7ac06
    title: Spiritfarer
    url: 'https://thunderlotusgames.com/press-kits/spiritfarer-press-kit/'
    verifiedAt: null
relations: []
placements:
  - catalogId: rhythm-composition
    id: t219
    title: 'Sound, music and rhythm'
    url: 'https://gamemechanics.pro/en/mechanics/rhythm-composition/#t219'
    categoryIds:
      - mechanics
supersededBy: []
attributes:
  preview:
    updatedAt: '2026-10-21'
    title: Rhythm timing
    description: >-
      The player presses the matching button as a cue reaches a timing line. A
      visible rhythm and timing window connect input to the music.
    image:
      src: images/mechanics/spiritfarer-rhythm.webp
      width: 1440
      height: 810
      game: Spiritfarer
      sourceUrl: 'https://thunderlotusgames.com/press-kits/spiritfarer-press-kit/'
      originalUrl: >-
        https://thunderlotusgames.com/wp-content/uploads/2023/10/Spiritfarer-SCREENSHOTS-09.jpg
      credit: Thunder Lotus
      rights: © Thunder Lotus. All rights reserved.
      caption: A musical action in the garden
      alt: >-
        Spiritfarer: musical lines above the garden carry X, Y and B button
        cues, with a green bar marking the playing position.
      markers:
        - x: 50
          'y': 42
          label: The timing line
        - x: 63
          'y': 30
          label: An approaching button cue
    tips:
      - Allow input and audio latency calibration.
      - 'Distinguish early, accurate and late presses.'
    examples:
      - title: Spiritfarer
        url: 'https://thunderlotusgames.com/press-kits/spiritfarer-press-kit/'
endsAt: null
provenance: >-
  Original bilingual editorial overviews authored for gamemechanics.pro on
  2026-10-20 and reviewed on 2026-10-21. Scenarios are hypothetical design
  examples; prototype checks describe work to perform, not completed playtests.
  Primary sources support the stated techniques and implementation context, not
  every proposed variant.
license: CC-BY-4.0
codeLicense: MIT
attribution: gamemechanics.pro contributors
catalogKey: catalog/rhythm-composition
---
# Beat matching and timing windows

id: rhythm-composition--t219
type: mechanic
key: mechanic/rhythm-composition--t219
lang: en
status: active
url: https://gamemechanics.pro/en/knowledge/mechanic/rhythm-composition--t219/

The player presses the matching button as a cue reaches a timing line. A visible rhythm and timing window connect input to the music.

## At a glance

![Spiritfarer: musical lines above the garden carry X, Y and B button cues, with a green bar marking the playing position.](https://gamemechanics.pro/images/mechanics/spiritfarer-rhythm.webp)

[Spiritfarer](https://thunderlotusgames.com/press-kits/spiritfarer-press-kit/) · © Thunder Lotus. All rights reserved.

1. The timing line
2. An approaching button cue

- Allow input and audio latency calibration.
- Distinguish early, accurate and late presses.

- [Spiritfarer](https://thunderlotusgames.com/press-kits/spiritfarer-press-kit/)

## How it works

Rhythm matching compares input time with a musical reference event and translates timing error into an understandable result.

## Variants

### Mechanic variants

<a id="t219-variants"></a>

- Timing windows grade input precision. <a id="t219-v1"></a>
- Held notes test both onset and duration. <a id="t219-v2"></a>
- Syncopation places actions between strong beats. <a id="t219-v3"></a>
- Calibration compensates a constant playback delay. <a id="t219-v4"></a>

## Design example

A short note evaluates press timing while a long note also requires timely release.

Prototype check: Test early and late presses under the chosen rule and measure audio and input latency separately.

## Context and limits

Musical action connects beat position, movement form and sound selection through shared feedback rules. Each overview separates player actions, state changes and alternative rules. Examples are hypothetical design scenarios, not claims about a named game. A prototype check states an observable question for the next iteration. Existing detailed references remain separately linked from the direction map.

## Connected materials


## Sources and provenance

Original bilingual editorial overviews authored for gamemechanics.pro on 2026-10-20 and reviewed on 2026-10-21. Scenarios are hypothetical design examples; prototype checks describe work to perform, not completed playtests. Primary sources support the stated techniques and implementation context, not every proposed variant.

- [Godot: Sync the gameplay with audio and music](https://docs.godotengine.org/en/stable/tutorials/audio/sync_with_audio.html) (id: source-f20454367eeff3c4)
- [Spiritfarer](https://thunderlotusgames.com/press-kits/spiritfarer-press-kit/) (id: source-df9ed2d1b2e7ac06)

CC-BY-4.0 · gamemechanics.pro contributors
