MUS file format

Applies to:
BG1, BG1: TotS, BG2, BG2: ToB, PST, IWD, IWD:HoW, IWD:TotL, IWD2

General Description
This file format acts as a playlist for ACM files, determining loops and "interrupt state" effects. An "interrupt state effect" controls the music (usually a fadeout effect) to play when another ACM file is interrupted by a special condition (end of combat, start of romance music, etc.).

Detailed Description

MUS files are simple ASCII files that can be edited by any text editor. The files are always located in the music folder in the main game folder and any paths inside MUS files are relative. The BG2 file BC1.mus will be used to describe the file format.

BC1
10
A1                 @TAG ZA
B1                 @TAG ZA
C1                 @TAG ZA
D1                 @TAG ZD
E1                 @TAG ZD
E2                 @TAG ZD
F1                 @TAG ZD
G1                 @TAG ZG
H1                 @TAG ZH
J1        B1       @TAG ZJ
# B1B is loop

This file will be examined line by line below.

•Line 1-BC1
This line indicates the subfolder (within the music directory) that files used in MUS can be found.

•Line 2-10
This line reports the amount of ACM files in the main playlist. Interrupt state ACMs are not included in this count.

•Line 3-A1                 @TAG ZA
This line is the first line of the actual playlist. It consists of the characters A1, 18 spaces and a string "@TAG ZA". The first part, A1, means play the file BC1A1.acm under the BC1 subdirectory of the music. The spaces are used as a delimiter to seperate the playlist ACM and the interrupt state ACM. The amount of spaces is determined as:
AmountOfSpaces = 20 - AmountOfCharactersInMainPlaylistEntry
The third part (@TAG ZA) determines the interrupt state ACM. This entry is composed of a @TAG, a single space, and the name of the interrupt state ACM. This means "Play BC1A1.acm". If the music should be stopped while this sound clip is playing, play "BC1ZA.acm" after "BC1A1.acm" has finished and then stop. If the music should continue, go to the next line of the play list.

•Line 12-J1        B1        @TAG ZJ
The last entry in the playlist, in addition to normal ACM entry and interrupt state ACM entry, also includes an "End of File Loop" entry. If no loop is specified and no interupt occurs the game automatically loops to the start of the MUS file. This line consists of J1, 8 spaces, B1, 8 spaces and a string "@TAG ZJ". The first entry (J1) is the usual playlist entry (BC1J1.ACM). The amount of spaces following is calculated as 10 - AmountOfCharsInPlaylistEntry. The next part (BC1) is the "End of File Loop" entry. The loop line tells the engine to switch to another playlist when the current playlist is completed. In the example file, the engine will move to BC1B1.acm when BC1.mus is complete. The following spaces are calculated as 10 - AmountOfCharsInEndOfFileLoopEntry. The last part (TAG @ZJ) is a standard interrupt state, as detailed above.


Each IE game includes a silent ACM file which can be used in playlists as shown in Tav1.mus from BG2.
TAV1
6
SPC1
A
SPC1
SPC1
SPC1
SPC1    TAV1 A
The playlist indicates to the engine to play 62 seconds of silence, then sound "A" then 4 silence files (248 seconds), then to repeat the playlist.

The name of the silent ACM file varies between games:
  • PST - SPC.acm /Music/
  • BG2, PST - SPC1.acm /Music/
  • IWD2 - MX0000A.acm /Music/MX0000
  • IWD - MX9000A.acm /Music/MX9000A

Additional remarks:

Songs are linked to areas and scripts via a 2da file. MUS files must be added to the relevant 2da file before they can be used (by their index number).
BG1: Hard-coded (value list)
BG2: songlist.2da
PST: Unknown
IWD: music.2da
IWD2: music.2da


Location

MUS files are normally located in the music directory in the game directory. The MUS files are attached/linked to areas or romances by their index number.


Music Subfolders in BGI

Folder BC1
City battle music

Folder BC2
City battle music (alternative). Copy of BC1.MUS with unused ACMs in BC2 folder.

Folder BD1
Dungeon battle music

Folder BD2
Dungeon battle music (alternative). Copy of BD1.MUS with unused ACMs in BD2 folder.

Folder BF1
Forest battle music

Folder BF2
Forest battle music (alternative). Copy of BF1.MUS with unused ACMs in BF2 folder.

Folder BL1
Unknown battle music.

Folder BL2
Unknown battle music (alternative). Copy of BL1.MUS with unused ACMs in BL2 folder.

Folder BP1
Unknown battle music.

Folder BP2
Unknown battle music (alternative). Copy of BP1.MUS with unused ACMs in BP2 folder.

Folder BW1
Unknown battle music.

Folder CDAY1
City daytime music

Folder CDAY2
City daytime music (alternative). Copy of CDAY1.MUS with unused ACMs in CDAY2 folder.

Folder CHANTS
Chant music. Copy of TEMPLE.MUS with unused ACM in CHANT folder.

Folder CHAPTER
Chapter Screen music. Has no ACMs or folder, though it refers to a CHAPTER folder. Instead of this music playing (if the MUS is changed to point to another folder), various music is played depending on chapter. For instance, the prologue plays the CDAY1 MUS file. This seems to be hardcoded.

Folder CNITE
City night-time music.

Folder DEATH
Death music. Has no ACMs or folder, though it refers to a DEATH folder. Death FMV used instead.

Folder DREAM
Dream music. Copy of CNITE.MUS with unused ACM in DREAM folder.

Folder DUNG1
Dungeon music.

Folder DUNG2
Dungeon music. Copy of DUNG1.MUS with unused ACM in DUNG2 folder.

Folder DUNG3
Dungeon music. Copy of DUNG1.MUS with unused ACM in DUNG3 folder.

Folder FDAY
Forest daytime music.

Folder FNITE
Forest night-time music.

Folder FORT
Fortress music?.

Folder PDAY
Unknown daytime music.

Folder PNITE
Unknown nightime music.

Folder TAV1
Tavern music

Folder TAV2
Tavern music. Copy of TAV1.MUS with unused ACM in TAV2 folder.

Folder TAV3
Tavern music.

Folder TAV4
Tavern music. Copy of TAV3.MUS with unused ACM in TAV4 folder.

Folder TDAY1
Town daytime music?

Folder TDAY2
Town daytime music (alternative). Copy of TDAY1.MUS with unused ACM in TDAY2 folder.
Folder TEMPLE
Temple music.

Folder THEME
Main Menu theme music.

Folder TNITE
Town night-time music?


Music Subfolders in BGII

Folder BC1
Standard combat music. MUS entry BC1.mus. Index Number 46.

Folder BC2
Standard combat music. MUS entry BC2.mus. Index Number 47.

Folder BD1
Combat music for Irenicus' Dungeon. MUS entry BD1.mus. Index Number 48.

Folder BD2
Combat Music. MUS entry BD2.mus. Index Number 49.

Folder BD3
Dungeon combat music. MUS entry BD3.mus. Index Number 50.

Folder BF1
Combat music. MUS entry BF1.mus. Index Number 51.

Folder BF2
Combat music. MUS entry BF2.mus. Index Number 52.

Folder BJR
Dragons' combat music. MUS entry BJR.mus. Index Number 53.

Folder BM1
Combat music. MUS entry BM1.mus. Index Number 54.

Folder BM2
Combat music. MUS entry BM2.mus. Index Number 55.

Folder BP1
Dungeon combat music. MUS entry BP1.mus. Index Number 56.

Folder BP2
Vampire/Shadow Thief combat music. MUS entry BP2.mus. Index Number 57.

Folder BRD
Dragons' combat music. MUS entry BRD.mus. Index Number 58.

Folder BSD
Combat Music. MUS entry BSD. Index Number 59.

Folder BST
Combat Music. MUS entry BST.Index Number 60.

Folder harp_v2
Harp melody. MUS entry HARP_V2.mus. Index Number 62.

Folder harp_v6
Harp melody. MUS entry HARP_v6.mus. Index Number 63.

Folder MX0011
Dreams'  music. MUS entry MX0011.mus. Index Number 1.

Folder MX0012
Dreams' music. MUS entry MX0012.mus. Index Number 2.

Folder MX0013
Dreams' music. MUS entry MX0013.mus. Index Number 3.

Folder MX0015
Noble houses' music. MUS entry MX0015.mus. Index Number 4.

Folder MX0020
City Gates' music. MUS entry MX0020.mus. Index number 5.


Songlist values for BG1: TotS
0 *
1 CDAY1.mus
2 CDAY2.mus
3 CNITE.mus
4 CHANTS.mus
5 DREAM.mus
6 Festi.mus
7 FDay.mus
8 FNite.mus
9 PDay.mus
10 PNite.mus
11 Temple.mus
12 Theme.mus
13 TDay1.mus
14 TDay2.mus
15 TNite.mus
16 Dung1.mus
17 Dung2.mus
18 Dung3.mus
19 BC1.mus
20 BC2.mus
21 BD1.mus
22 BD2.mus
23 BL1.mus
24 BL2.mus
25 BF1.mus
26 BF2.mus
27 BP1.mus
28 BP2.mus
29 BW1.mus
30 Bridge.mus
31 Fort.mus
32 Chapter.mus
33 MPO900.mus
34 TAV1.mus
35 TAV2.mus
36 TAV3.mus
37 TAV4.mus
38 DEATH.mus