[SyncTrack] is a .chart file’s second section. It holds the chart’s tempo markers, which decide when each tick plays, and its time signatures:
Tempo markers
A tempo marker sets the tempo from its tick to the next tempo marker:- The tempo is in thousandths of a beat per minute:
B 120000is 120 BPM, andB 150325is 150.325 BPM. - Required: a tempo that is a whole number from 1 to 4294967295.
- Required: one tempo marker at most at a tick.
Time signatures
A time signature sets the meter from its tick to the next time signature:- The numerator is the number of notes in a measure, of the value the denominator gives.
- The exponent gives the denominator, 2 to the power of the exponent, so
TS 6 3is 6/8: six eighth notes a measure. Without an exponent, the denominator is 4. - Required: a numerator from 1 to 4294967295, and an exponent from 0 to 31.
- Time signatures only change the lines that appear throughout the chart during gameplay, at each measure and between them. They have no influence on the notes themselves.
- A beat is a quarter note whatever the time signature, so a measure of 6/8 is three beats long.
- Required: one time signature at most at a tick.
The start of the chart
Recommended: a tempo marker and a time signature at tick 0. Edge case: until its first tempo marker, a chart plays at 120 BPM, and until its first time signature, it’s in 4/4.Ignored
Tempo anchors. A tempo anchor locks the tempo marker at its tick to a time in the audio, so a chart editor can keep that marker in place while the tempos before it change:Invalid forms
A tempo of 0, or a numerator of 0
A tempo of 0, or a numerator of 0
A scanner refuses the file, as Clone Hero and scan-chart do. YARG reads a tempo of 0, which makes its times infinite, and drops the time signatures after a numerator of 0.
A tempo, numerator or exponent too large
A tempo, numerator or exponent too large
A scanner reads a tempo of 2³² or more exactly, as Clone Hero and scan-chart do. It calculates no hash for a file with an exponent of 32 or more, or a numerator of 2³² or more, as scan-chart does, since a BTrack can’t hold such a time signature. Clone Hero reads such an exponent modulo 32, and Clone Hero and YARG read such a numerator modulo 2³². YARG reads a tempo of 2³² or more modulo 2³².
Two tempo markers, or two time signatures, at one tick
Two tempo markers, or two time signatures, at one tick
See Syntax: scanners use the later one, and scan-chart’s saving removes the earlier one.