Songs
What is songs
you are able to play custom made music in the stream overlay by using the !song command or the play song action on !screen.
the song format is a superset of @LCOLONQ stream's "Bells of Bezelea" redeems, and every redeem that works there also work here.
the format also includes instrument support and other extended features.
Basic Structure
each song is comprised of multiple tracks, and each track is comprised of three parts in order: [instrument][global modifier][notes], joined by the | (vertical bar) character.
you can put .[name]| in front of the entire song to give it a name, and it can be played at any time by typing !song [name] thereafter.
see: .superidolgood|sine.gg[t]gfg[CScT[S[CTf[Cs[Cc]C[Cs]/[DFfd[FQ[DQf]D[Dg[Qf[Dsq]f[GBgd]B[Gs[GDc[Gs]G[Gs]/[SGc]G[Scg[Sg[St[dg[Sf[ss[SGgc]f[S[SGg[Sc[S[Sc[s[DFdQ]F[DQd[Dd[Dg]/[Dqg]/[Ss[S[S[S[S[FS[GQ[fs[gQ
Instrument
currently available instruments are sine, tri, sq50 and drum. when instruments are not provided (such as the original bells text), it defaults to sine.
Global Modifier
global modifiers modify all note in the following track. by default, C is C4, and bpm is 75.
- ' increases default octave by 2, so that C is C6.
- , decreases default octave by 2, so that C is C2.
- " increases default octave by 1, so that C is C3. These symbols can be combined like ", to decrease octave by 1, or '' to increase octave by 4.
- ; to double bpm.
- : to triple bpm.
- - to half bpm.
- = to third bpm. these can be combined as well.
- if you have a number in front of the global modifiers, it will take it as a speciifc BPM value, removing the need for bpm modifiers.
- % followed by number to set equal temperment that starts on C. for example, %31 (31EDO) would make C~F6# a single octave.
- & copies the previous track's global modifiers. useful for multi tracks with same bpm.
- . is a blank modifier, and is used to separate instrument from notes if no other modifiers are present.
Notes
each note consists of the tone and the note modifier that modifies the individual notes. by default, each note plays for a quarter note length.
- C D E F G A B as well as C# D# F# G# A#(note the lack of flats) are supported as C4(unless specified in global modifier) to B4. instead of the sharp notes, X S R T Q can be used in its place respectively.
- J K L M N H I as well as Y U O P W can be used for C3 to B3, 1 octave lower than the ordinary tones.
- lowercase c d e f g a b and other represent C5 to B5, and j k l m n h i and other represent C6 to B6.
- chords can be represented by putting multiple notes in brackets such as [GBd], and modifiers will apply to the entire chord.
- if modifiers are present at the end of a chord, you can omit the closing bracket.
- ? is a special note that takes in global modifier as a modifier. this changes the global modifier mid staff, allowing for bpm shifts and such.
- octave control from global modifier also works here so C'' indicates C8.
- bpm control from global modifier works as a beat modifier here, so that C;; plays C4 for a whole note length.
- beats can also be added or deleted arithmetically by +, ~ (addition) or _ (subtraction). where every term begins with 1 beat. C++ becomes "C for 1 + 1 + 1 = 3 beats", C=+_:- becomes "C for 3 + 1 - 2/3 = 10/3 beats".
- much like octaves, beats can be specified by @ followed by a number. like C#@5.5.
- < and > drops the attack and release of each note respectively, allowing for slide type action.
- ! is a special modifier in that the note doesn't "advance the staff line", allowing for notes to overlap with different note lengths and whatnot without multi tracks. see the blank arpeggio (W@12!/C@11!/S@10!/Q@9 P@12!/C@11!/S@10!/T@9) as an example.