Pages: 1
Posted on 03-30-15, 09:43 pm (rev. 3 by ImageBot on 11-21-16, 03:14 am)


Karma: 18535
Posts: 112/1086
Since: 04-02-13
First, you take the Sound Set number from the editor. For example, let's say 18.

Second, open up a hex calculator (say, Windows' Calculators' "Programmer" mode, set to "Hex").
Multiply the sound set number by 4. In hex, 18 * 4 = 60.
Then add 4 to the result. 60 + 4 = 64.
Then, add EEC to that. 64 + EEC = F50.

Third, you need the info.bin file from the SDAT. Open it in a hex editor. Go to the address you've calculated. Write down the two bytes here. In case of ID 18, at 0xF50, there's: B419.

Now, change the order of the bytes. In our case, that means 19B4. That's an address. Go to it.
Alright. This is the sound set's data. In case of ID 18, that's:

0C000000-------Number of entries
03080000-------ENTRY TYPE? (SSAR?)
00000000-------ENTRY ID (SSAR ID) = 00 SAR_COURSE
01060000-------ENTRY TYPE? (BANK?)
22000000-------ENTRY ID (BANK ID) = 34 BANK_COURSE_SE
03080000-------ENTRY TYPE? (SSAR?)
0B000000-------ENTRY ID (SSAR ID) = 11 SAR_ENEMY_BASE
01060000-------ENTRY TYPE? (BANK?)
2D000000-------ENTRY ID (BANK ID) = 45 BANK_ENEMY_BASE_SE
(etc)

First byte of each entry type = hex number of said entry in the SDAT.


You can confirm this by looking into, say, Tinke's GROUP field:

(Sound Set numbers are decimal, there. Also, don't use Tinke to edit this, it'll just corrupt it)

Now, then. Edit. Save.
Repack the SDAT.
???.
Profit.


I wish someone made a tool that could expand these. Should be fairly simple. Just change the number of entries and fix all the addresses.
Posted on 03-31-15, 09:43 am
Birdo


Karma: 2516
Posts: 1309/2051
Since: 06-26-11
I don't know how you discover this stuff, well done.

I share your wish for some sort of SDAT editor .
_________________________
Will pay unspecified $ for NSMB beta.
Posted on 11-08-15, 06:32 pm


Karma: 1039
Posts: 26/200
Since: 02-02-15
Fantasic tutorial. Congratulations. Simple and pratic.
Pages: 1