SMR.szs

From Luma's Workshop
Revision as of 06:36, 28 January 2025 by SY24 (talk | contribs) (Added volume and cit references)
Jump to navigation Jump to search
This page is in progress and may contain incomplete information or editor's notes.

SMR.szs is a compressed BAA-file which defines the game's sound system. It contains strings relating to music, as well as information about various sequenced music and sound effects. Among other things, the file paths of AST stream files and the names of BGM, MBGM and STM tracks are specified within this file.

The tool SoundModdingToolkit can convert this file into a clear and readable file structure, so the structure of the file is shown on this page using the tool's converted structure.

Please note that only version 4.1.0 can edit the lists without any problems. Later versions can lead to problems such as muted songs.

BGM

MAIN_BGM

Found in SoundTable/BGM/libraries/MAIN_BGM.json
Defines the sequenced music. The music sequence files can be found in bms format in AudioRes/Seqs/JaiSeq.arc.

Name Description
unk1
unk2 Volume (overridden by BgmParam in SMG2)
unk3 File ID of the bms file in JaiSeq.arc to use (the filename is ignored)
unk4 File ID of the cit file in JaiChord.arc to use (the filename is ignored)
unk5
type
mOffset
NameOffset
name Internal mapping name for this sequence (e.g. "BGM_MISS").
This name can then be used in musiclists like ScenarioBgmInfo.

MULTI_BGM

Found in SoundTable/BGM/libraries/MULTI_BGM.json
Defines settings about Multi BGM such as its name. Multi BGM combines Stream (STM) and sequential Music (BGM). Which Music is set for each Multi BGM is defined in MultiBgmInfo.

Name Description
unk1 ? always 112
unk2 ? always 120
unk3 ? always 0
unk4 ? always -1
unk5 ? always 0
type ? always 96
mOffset
NameOffset ? always 0
name Internal mapping name for this entry (e.g. "MBGM_STAR_CHANCE")
This name can then be used in musiclists like ScenarioBgmInfo.

STREAM

Found in SoundTable/STREAM/0.json
Defines the streamed ast audio files including its internal STM name as well as its filepath.

Name Description
unk1 ? always 128
unk2 Volume (overridden by BgmParam in SMG2)
streamType Stream Type
14: Standard Stream (2 Channels)
238: Multi Stream (4 Channels)
streamPath Filepath of the AST file to use (e.g. "/AudioRes/Stream/smg2_ev_starchance_strm.ast")
type ? always 112
mOffset
NameOffset ? always 0
name Internal mapping name for this song (e.g. "STM_STAR_CHANCE")
This name can then be used in musiclists like ScenarioBgmInfo.

SE

AW

Each aw. file is converted by the tool into a folder that has the ID of the aw file in its name, and besides the sound files converted in wav format, contains the following settings for each sound:

  • manifest.json Contains the ID and name of the aw file
  • wavetable.json Contains settings for each sound of the aw. file

wavetable

Each entry starts with the name of the Wav file (e.g. "31") followed by its settings:

Name Description
format ? always 0
key
sampleRate The sample rate at which the sound should be played. (e.g. "22050.0")
sampleCount Length of the sound in samples
loop Whether it should be looped or not
true: loop
false: do not loop
loop_start Loop Start position in samples.
loop_end Loop End position in samples.
last
penult


Libraries

In SoundTable\SE\libraries\ there are several libraries which contain settings for sounds with their internal assigned names.

Name Description
unk1 ? always 128
unk2
unk3
unk4
unk5
unk6
type Always 80
mOffset
NameOffset ? Always 0
name Internal Name of the soundeffect (e.g. "SE_SV_LV_YOSHI_FLUTTER")