EVENTS track holds the text events that apply to the whole song: practice sections, the coda and the song’s end. Each is a text event, FF 01:
.mid form of a .chart file’s [Events] section. One thing differs: a .mid file holds its lyrics in its vocal tracks.
- A file has at most one
EVENTStrack, after the tempo track. See Tracks. - A scanner matches every event below in the letter case shown.
- Square brackets around the text are optional, as in a
.chartfile:[section Intro]means the same assection Intro. Recommended: no brackets. - Required: the event is the whole text, with no spaces around it or just inside its brackets.
Practice sections
A practice section marks where a part of the song starts, such as the intro or a verse. It runs until the next practice section:- Required: a space or
_betweensectionand the name. Recommended: a space. - Required: one practice section at most at a tick.
- Recommended: at least one practice section in a chart.
Verse 1 for verse_1. It shows any other name with each _ replaced by a space. It does the same in a .chart file.
Edge case: a chart with no practice sections. When a song with no practice sections is played, Clone Hero makes ten, named 0% - 10% to 90% - 100%. They start at tenths of the chart’s length, which ends a beat after the last note. It does the same in a .chart file. YARG makes none. scan-chart reports noSections.
Lyrics
A.mid file holds its lyrics, and the phrases that group them, in its vocal tracks. See Vocals and harmonies.
The coda
coda marks where the song’s big ending starts. A drum fill at or after it is a Big Rock Ending. See Drum fills. Required: one coda at most.
The end of the song
end ends the song before its audio does, as in a .chart file. See The end of the song.
- Required:
endat least one beat after the end of the last note of every track, sustain included. - Required: one
endat most.
Deprecated
prc_<name>, an older word forsection:prc_verse_1is a practice section namedverse_1. Writesection <name>instead.
Ignored
- Any other text. YARG acts on a few more events, such as
crowd_clap, and readsmidcodaandmidcoda_endas the start and end of a coda. Other scanners ignore them. An exporter should keep them when rewriting a file. - Notes and other events that aren’t text, such as Rock Band’s practice notes 24, 25 and 26. scan-chart keeps them, and writes them back.
Invalid forms
Spaces around the text, or just inside the brackets
Spaces around the text, or just inside the brackets
section Intro and [section Intro], with spaces around the text, as a practice section. Only YARG reads [ section Intro]. scan-chart keeps such text as it is.A practice section name with spaces at its ends
A practice section name with spaces at its ends
[section Intro ] is a section named Intro there. YARG removes them.No separator after section
No separator after section
section, so [sectionIntro] is a section named ntro. YARG reads a section named Intro. scan-chart doesn’t read it as a section.A practice section with no name
A practice section with no name
[section ] and [prc_] as a section named "", and YARG ignores them.Clone Hero also reads [section] and [prc] as a section named "". YARG and scan-chart ignore both. scan-chart keeps the text.Two practice sections at one tick
Two practice sections at one tick
Lyrics or phrase events in EVENTS
Lyrics or phrase events in EVENTS
lyric events, phrase_start and phrase_end as lyrics, mixed with the lyrics of PART VOCALS. scan-chart reports invalidLyric, invalidPhraseStart and invalidPhraseEnd, and keeps them.A coda with one bracket, after a byte order mark, or in another type of text event
A coda with one bracket, after a byte order mark, or in another type of text event
FF 01, whose text is coda or [coda], with nothing around it but white space. So [coda and coda] aren’t a coda, nor is a [coda] that starts with a byte order mark, U+FEFF, or a [coda] written as a lyric, marker or cue point event. scan-chart reads them so, and keeps them as text. YARG reads neither [coda nor coda], but reads a coda after a byte order mark, and in a lyric, marker or cue point event.More than one coda or end
More than one coda or end
coda and the first end, and YARG uses the first coda. YARG looks for end among the song’s last 10 song-wide events, and uses the last one it finds there. scan-chart reports badEndEvent for each end after the first. Its export writes a coda at the start of each Big Rock Ending instead of where the file had it, so Clone Hero reads the same Big Rock Endings.An end less than a beat after the last note ends
An end less than a beat after the last note ends
badEndEvent when it comes before the last note starts.A second EVENTS track
A second EVENTS track
EVENTS track and ignores the others. scan-chart’s export leaves them out.