Step 5: Working with SongInfo.dat and MusicInfo.dat - despairoharmony/TaikoVDLCBuilder GitHub Wiki

What do you need:

  • Hex editor (suggestion: HxD)

Draft (from here)

There is 2 files that define the data of the sound to be played, they are located at:

DLCFOLDER_data\system\

I'll give the adress to modify in each file, their sizes and what they mean

SongInfo.dat

0x2C -> Shin-uti scoring in easy (kantan) mode (Size: 4 bytes in LE)

0x30 -> Shin-uti scoring in normal (fuutsu) mode (Size: 4 bytes in LE)

0x34 -> Shin-uti scoring in hard (muzukashi) mode (Size: 4 bytes in LE)

0x38 -> Shin-uti scoring in extreme (oni) mode (Size: 4 bytes in LE)

0x3C -> ID number for sound [3] (Size: 2 bytes in LE) - Last taiko dlc use id 13F (3F 10 in LE), just follow the sequence - Limit is 1F3

0x40 -> Song Category (Size: 1 Byte)

00 - JPOP
01 - Vocaloid
02 - Variety
03 - Namco Original
04 - Game Music
05 - Classic
06 - Anime

0x44 -> Branch Easy (00 for false, 01 for true; Size: 1 byte)

0x45 -> Branch Normal (00 for false, 01 for true; Size: 1 byte)

0x46 -> Branch Hard (00 for false, 01 for true; Size: 1 byte)

0x47 -> Branch Oni (00 for false, 01 for true; Size: 1 byte)

0x48 -> Number of Stars for Easy (01 to 0A; Size: 1 byte)

0x49 -> Number of Stars for Normal (01 to 0A; Size: 1 byte)

0x4A -> Number of Stars for Hard (01 to 0A; Size: 1 byte)

0x4B -> Number of Stars for Oni (01 to 0A; Size: 1 byte)

From adress 0x50 and beyond replace the following patterns with the [SONGID]

  • SL_[SONGID]

  • DSONG_[SONGID]

  • [SONGID] for 3 times after DSONG

MusicInfo.dat

0x14 - Time that sound will play at select screen (in miliseconds; size: 4 bytes in LE)

0x20 - DSONG_[SONGID]

Remember: If the song has Ura, use as a base a song that contains Ura, and follow those steps at SongInfo.dat

SongInfo.dat (for Ura Songs only)

0x2C -> Shin-uti scoring in easy (kantan) mode (Size: 4 bytes in LE)

0x30 -> Shin-uti scoring in normal (fuutsu) mode (Size: 4 bytes in LE)

0x34 -> Shin-uti scoring in hard (muzukashi) mode (Size: 4 bytes in LE)

0x38 -> Shin-uti scoring in extreme (oni) mode (Size: 4 bytes in LE)

0x3C -> ID number for sound [3] (Size: 2 bytes in LE) - Last taiko dlc use id 13F (3F 10 in LE), just follow the sequence - Limit is 1F3

0x40 -> Song Category (Size: 1 Byte)

00 - JPOP
01 - Vocaloid
02 - Variety
03 - Namco Original
04 - Game Music
05 - Classic
06 - Anime

0x44 -> Branch Easy (00 for false, 01 for true; Size: 1 byte)

0x45 -> Branch Normal (00 for false, 01 for true; Size: 1 byte)

0x46 -> Branch Hard (00 for false, 01 for true; Size: 1 byte)

0x47 -> Branch Oni (00 for false, 01 for true; Size: 1 byte)

0x48 -> Number of Stars for Easy (01 to 0A; Size: 1 byte)

0x49 -> Number of Stars for Normal (01 to 0A; Size: 1 byte)

0x4A -> Number of Stars for Hard (01 to 0A; Size: 1 byte)

0x4B -> Number of Stars for Oni (01 to 0A; Size: 1 byte)

0x78 -> Shin-uti scoring in ultra extreme (ura) mode (Size: 4 bytes in LE)

0x7C -> ID number for Ura sound (Size: 2 bytes in LE) - Don't use the same ID of 0x3C

0X7E -> Mirror 0x3C vaule (Size: 2 bytes in LE)

0x80 -> Ura Song Category (Size: 1 Byte) - Reffer to 0x40

0x87 -> Branch Ura (00 for false, 01 for true; Size: 1 byte)

0x8B -> Number of Stars for Ura (01 to 0A; Size: 1 byte)

From adress 0x90 and beyond replace the following patterns with the [SONGID]

  • SL_[SONGID]

  • DSONG_[SONGID]

  • [SONGID] for 3 times after DSONG

  • SL_EX_[SONGID]

  • DSONG_[SONGID]

  • [SONGID]; ex_[SONGID]; [SONGID]