MUSICDEF

From SRB2 Wiki
Jump to navigation Jump to search

MUSICDEF is a type of lump used by SRB2, SRB2Kart, and Ring Racers that defines extra information for music tracks.

Formatting

A MUSICDEF block must begin with a Lump x statement, where x refers to the name given to your music lump (after the O_ or D_) to assign the information to.

Examples: Lump GFZ1

For all spaces that need to be used in text fields, underscores are used in their place instead.

Examples: Title = Greenflower_1

Note that these lumps do not support commenting of any kind, and attempting to use them will result in errors.

SRB2

SRB2 uses MUSICDEF for displaying song information in the Sound Test page.

Entries

  • Title sets the name of the song. This can be no longer than 31 characters – any characters beyond that will not be shown. Can only display letters, numbers, exclamation points and question marks.
  • Alttitle sets an alternate title to be displayed alongside Title in the scrolling text.
  • Authors sets the artists who wrote, composed and/or played the song.
  • Soundtestpage assigns a page for the song. All of the default songs in the game use page 1.
  • Soundtestcond is the condition for unlocking the song entry. Negative numbers refer to condition sets, while positive numbers require completing the map with the specified extended map number. Setting this to 0 will make the song immediately available.
  • Stoppingtime stops the music from playing after a specified amount of time, in milliseconds. This is used for songs or jingles that are not intended to loop, such as the title screen theme or the Extra Life jingle.
  • BPM sets the beats per minute of the song. This is used for the radio to bounce with the beat.
  • loopms sets the loop point of the song.
  • Usage and Source are both unused fields, but are still recognized by the game.

Example

This MUSICDEF sets the music info for Greenflower Zone Act 1:

Lump GFZ1
Title = Greenflower_1
Authors = clairebun,_Shane_Strife,_DrTapeworm,_DemonTomatoDave
Soundtestpage = 1
Soundtestcond = 1
BPM = 132

SRB2Kart

SRB2Kart uses MUSICDEF to display the current map's song credits after the initial countdown.

Entries

  • Usage describes the track name or other context the song plays on. This is currently unused by the game.
  • Source displays the name of the song, as well as the artist or game it originates from.
Note
Both entries need to be used and filled out, otherwise the MUSICDEF will not function properly.

Example

This MUSICDEF sets the music info for Green Hills Zone:

Lump KMAP01
Usage = Green_Hills_Zone
Source = Toot_Toot_Sonic_Warrior_(Instrumental)_-_Sonic_CD

Ring Racers

Ring Racers uses MUSICDEF for the same purposes as SRB2Kart, with some additional options and changes. Notably, spaces can be used in any text field and do not need to be replaced by underscores

Entries

  • Title sets the title of the song. Functions the same as in SRB2.
  • Author describes the authors of the song.
  • Source describes where the song originates from, such as a video game or album. In the case of remixes, this should be the source of the original work.
  • OriginalComposers describes the composers of the original version of the track in the case of remixes.
  • Volume is a percentage which changes the default volume of the track.
  • Important is a boolean field which causes the track to appear towards the start of the list in Stereo Mode, ahead of tracks associated with levels.
  • ContentIDUnsafe is a boolean field which indicates that the track may be identified by content ID systems on streaming platforms and will cause the track to not play if streamer-safe mode is enabled.

Additional options

Multiple music lumps can share a MUSICDEF entry if they are all listed in the Lump field, separated by commas. In this case, they will be treated as "alternate tracks". All of their credits and other data will be shared, and they can be swapped between by pressing the track button in Stereo Mode.

Prefixing a lump with a backslash indicates that it should not loop.

Examples

This MUSICDEF sets the info for Green Hills Zone:

Lump GRHIZ
Title = Green Hills (SMS)
Author = Flamewing
Source = Big's Fishing Derby
OriginalComposers = Masafumi Ogata, Keiko Utoku, Casey Rankin

This MUSICDEF defines two alternate tracks, while also setting the first to be non-looping:

Lump \_GONER,TETR
Title = A Journey in Modulating Time
Author = dj.tuBIG/MaliceX
Source = SOUNDSHOCK 2: FM FUNK TERROR!!