10-04-2013, 07:24 AM
You can download the latest version here, just click the link near the top of the page that says "QuickBMS generic files extractor and reimporter 0.5.25".
OK, so now I extracted it with the .cache and .toc file, and it works. It extracted 3 .wav files, but they're all less than a second long. Other files might contain something more useful.
The "quickbms.txt" file should have usage instructions for the command line, here's what it says:
The .txt file has some examples and explains some stuff as well, just go to the "Usage" section and you can find it there. If it works without the command-line though, as it did for me, it should be fine.
Hope it works for you!
OK, so now I extracted it with the .cache and .toc file, and it works. It extracted 3 .wav files, but they're all less than a second long. Other files might contain something more useful.
The "quickbms.txt" file should have usage instructions for the command line, here's what it says:
Code:
Usage: quickbms [options] <script.BMS> <input_archive/folder> [output_folder]
Options:
-l list the files without extracting them
-f W filter the files to extract using the W wildcards separated by comma or
semicolon, example -f "*.mp3,*.txt;*myname*"
if the filter starts with ! it's considered an ignore filter
the filter can be also a text file containing filters
example: quickbms -f "*.mp3;!*.ogg" script.bms archive.dat output
example: quickbms -f myfilters_list.txt script.bms archive.dat
please use {} instead of * to avoid problems on Windows
-F W as above but works only with the files in the input folder (if used)
example: quickbms -F "*.dat" script.bms input_folder output_folder
-o if the output files already exist this option will overwrite them
automatically without asking the user confirmation
-r experimental reimport option that should work with many archives:
quickbms script.bms archive.pak output_folder
modify the needed files in output_folder and maybe remove the others
quickbms -w -r script.bms archive.pak output_folder
you must read section 3 of quickbms.txt before using this feature
-s SF add a script file or command before the execution of the input script,
useful if an archive uses a different endianess or encryption and so on
SF can be a script or directly the bms instruction you want to execute
-u check if there is a new version of QuickBMS available
-. don't terminate QuickBMS if there is an error while parsing multiple
files (like wrong compression or small file), just continue with the
other files in the folder
Advanced options:
-d automatically create an additional output folder with the name of the
input folder and file processed, eg. models/mychar/mychar.arc/FILES,
-d works also if input and output folders are the same (rename folder)
-D similar to -d but will not create the folder with the filename
-E experimental option for automatically reversing the endianess of any
file simply reading it field by field (so each get will produce a put)
-c quick list of the basic BMS commands and some notes about this tool
-S CMD execute the command CMD on each file extracted, you must specify the
#INPUT# placeholder which will be replaced by the name of the file
example: -S "lame -b 192 -t --quiet #INPUT#"
-Y automatically answer yes to any question
-O F redirect the output of all the extracted files to the file F
Debug and experimental options:
-v verbose debug information, useful for verifying possible errors
-V alternative verbose output, useful for programmers
-L F dump the offset/size/name of the files inside the file F
-x use the hexadecimal notation in myitoa (debug)
-0 no extraction of files, useful for testing a script without using space
-R needed for the programs that act as interface for QuickBMS
-a S pass arguments to the input script like quickbms_arg1, 2, 3 and so on
-H cool HTML hex viewer output, use it only with very small files!
-X cool hex viewer output on the console (support Less-like keys)
-9 toggle XDBG_ALLOC_ACTIVE (enabled)
-8 toggle XDBG_ALLOC_INDEX (enabled)
-7 toggle XDBG_ALLOC_VERBOSE (disabled)
-6 toggle XDBG_HEAPVALIDATE (disabled)
-3 execute an INT3 before each CallDll
Features and security activation options:
-w enable the write mode required to write physical input files with Put*
-C enable the usage of CallDll without asking permission
-n enable the usage of network sockets
-p enable the usage of processes
-A enable the usage of audio device
-g enable the usage of video graphic device
-m enable the usage of Windows messages
The .txt file has some examples and explains some stuff as well, just go to the "Usage" section and you can find it there. If it works without the command-line though, as it did for me, it should be fine.
Hope it works for you!