microsoft / DirectXTK

The DirectX Tool Kit (aka DirectXTK) is a collection of helper classes for writing DirectX 11.x code in C++
https://walbourn.github.io/directxtk/
MIT License
2.55k stars 506 forks source link

XWBtool makes all wav files the same name after repackaging #396

Closed MastaPowa7 closed 1 year ago

MastaPowa7 commented 1 year ago

I'm trying to modify a game that uses .xwb. Every time I use XWBtool to repackage the wav files in .xwb, every single wav file keeps the name of whatever the xwb's file name is, and that's annoying me as I don't know how to stop it from doing that. I want the wav files to retain the names they have when I repackage them so that the game I'm trying to mod can load the modded music file. This' stressing me out as I've spent literally all day trying to figure out what I'm doing wrong... I've searched online and haven't found anything that helps me...

FYI, the game I'm trying to mod is Bloons Monkey City.

walbourn commented 1 year ago

Can you provide an example of the command-line you are using?

MastaPowa7 commented 1 year ago

I just take the wav files and drag them onto the XWBtool exe. I did try using a command line a few times to see if that fixed the problem, but it didn't. I'm not tech-savvy, so hopefully this' what you're asking for: C:\users\\Documents\XWBtool>xwbtool -o WaveBank.xwb C:\Users\\Documents\XWBTool*.wav

walbourn commented 1 year ago

All 'dragging' is going to do is create a WaveBank file .xwb that contains a single .wav file, which isn't really the purpose of the tool. It's intended to be used from scripts or a command-line.

You are not using the -f option so the resulting wave bank does not have any 'friendly names' data which is suitable only when you only use index numbers. The 'friendly name' entries are just the filename of the wave file, so if you have named them all XWBTool<something>wav they will all have that string.

https://github.com/microsoft/DirectXTK/wiki/XWBTool

Note that if the game you are trying to mod is really using legacy XACT engine, you will need to be careful about some of the options since you are working with the original reader code from circa 2010.

MastaPowa7 commented 1 year ago

Can you give me an example of how I should write the command prompt so that each wave file retains their names after exporting. I'm just trying to ensure I fully understand what I should be doing so I don't make stupid assumptions.

MastaPowa7 commented 1 year ago

Edit: Just had someone help me fix my issue right now. Just needed to run this command line: xwbtool -s -o WaveBank.xwb -nc -f *.wav Thanks for your help though.