I can understand that should someone want to extract some files from a BIFF file without a complete installation of an Infinity Engine game, such as movies, then WeiDU will intelligently look for CD/DVD/virtual drives to locate the relevant disc. My problem is that even with a full BG1/2 installation and all resources in chitin.key accounted for by the HDD (even with a cleaned chitin.key), WeiDU will still attempt to look for discs upon extraction using the --biff-get-rest command. Often, this causes a Windows exception error in WeiDU.exe and screws up the file being extracted. Further, this happens when a BG-related disc is in the drive, and I have even had reports that having absolutely no discs in any drives still causes exception errors. People have resorted to throwing in totally unrelated discs in every single drive they have on their computer to avoid this. The other thing I do not understand is the fact that WeiDU looks for discs DURING extraction of a file rather than at the start of a BIFF or file. Obviously, when extraction is automated and taking place through a WeiDU installation (i.e. BGT-WeiDU), it is hard to implement checks and re-extract the wanted files.
So, my question is: is WeiDU unecessarily looking for alternate paths (i.e. CD/DVD/virtual drives) in order to extract files using the --biff-get-rest parameter? And if so, can this be fixed, or made to be turned off in some way?
I propose this version of events, and I understand that it probably works in much the same way already except for a few details:
- WeiDU looks at chitin.key of the game in question for a BIFF file
- For that BIFF file, WeiDU locates all resources with strings matching regexp input
- WeiDU attempts to locate the BIFF file in the corresponding directory stated by chitin.key
- If stated BIFF is not found in the corresponding directory on the HDD, WeiDU will then look for a disc that may contain such content (this function can be turned off by an extra parameter specification in the command line)
- If the corresponding BIFF is not found on the discs either, WeiDU spits out a warning saying that that particular BIFF could not be found
- If the BIFF is located, WeiDU extracts the resources with strings matching regexp input to the same place where WeiDU is located, or the specified --out directory
- WeiDU looks at chitin.key for another BIFF file, and repeats till you get to the end