Romance of the Three Kingdoms 11 wbd and whd

Codecs, formats, encoding/decoding of game audio, video and music
Yukino
Posts: 11
Joined: Mon Dec 16, 2019 4:36 pm

Romance of the Three Kingdoms 11 wbd and whd

Post by Yukino »

Greetings.

I want to change sound effects of the RTK11. But it seems not to easy because I don't know these extensions and may be encrypted by Koei.

Can I establish the identity of these files using Quickbms or VGMToolBox, and achieve my purpose by any chance?
Yukino
Posts: 11
Joined: Mon Dec 16, 2019 4:36 pm

Re: Romance of the Three Kingdoms 11 wbd and whd

Post by Yukino »

I refer to redump_audiobin script and finally made a quickbms script for extracting WBD(Sound file) and WHD(Header file). But it has an error.

Code: Select all

endian little

open FDDE wbd 0 
open FDDE whd 1 

get UNK1 long 1
get WBDSIZE long 1
get HEADERLENGTH long 1
goto HEADERLENGTH 1

for i < 9 1
    get UNK2 long 1
    get FREQUENCY short 1
    get SUNK1 short 1
    get BITS short 1
    get CHANNELS short 1
    get null1 long 1
    get OFFSET long 1
    get UNK3 long 1
    get SIZE long 1
    get null2 long 1
    get UNK4 long 1
   get UNK5 long 1
   putarray 0 j OFFSET 1 0
    callfunction PCM 1 0
next i

startfunction PCM
    set MEMORY_FILE binary "\x52\x49\x46\x46\x00\x00\x00\x00\x57\x41\x56\x45\x66\x6d\x74\x20\x10\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x64\x61\x74\x61\x00\x00\x00\x00"

    set RIFFSIZE long SIZE
    math RIFFSIZE += 36
    set BLOCKALIGN long BITS
    set AVGBYTES long FREQUENCY
    math BLOCKALIGN /= 8
    math BLOCKALIGN *= CHANNELS
    math AVGBYTES *= BLOCKALIGN

    putvarchr MEMORY_FILE 4 RIFFSIZE long
    putvarchr MEMORY_FILE 20 1 short          # wFormatTag: Microsoft PCM Format (0x0001)
    putvarchr MEMORY_FILE 22 CHANNELS short   # wChannels
    putvarchr MEMORY_FILE 24 FREQUENCY long   # dwSamplesPerSec
    putvarchr MEMORY_FILE 28 AVGBYTES long    # dwAvgBytesPerSec
    putvarchr MEMORY_FILE 32 BLOCKALIGN short # wBlockAlign
    putvarchr MEMORY_FILE 34 BITS short       # wBitsPerSample
    putvarchr MEMORY_FILE 40 SIZE long

    log MEMORY_FILE2 0 44 MEMORY_FILE
    append
    log MEMORY_FILE2 OFFSET SIZE
    append
    get RIFF_SIZE asize MEMORY_FILE2
    log "" 0 RIFF_SIZE MEMORY_FILE2
endfunction

Error: incomplete input file 1: H:\Aluigi\Quickbms\BNK_ADV_2D.whd
Can't read 4 bytes from offset 000001c8.
Anyway don't worry, it's possible that the BMS script has been written
to exit in this way if it's reached the end of the archive so check it
or contact its author or verify that all the files have been extracted.
Please check the following coverage information to know if it's ok.

coverage file 1 81% 372 456 . offset 000001c8

Last script line before the error or that produced the error:
13 get UNK2 long 1

Press ENTER or close the window to quit

I really want to fix my script issue. Please help!