Jump to content

Bionicle: The Game Avl/vol File Format


JrMasterModelBuilder
 Share

Recommended Posts

JrMasterModelBuilder

0-3 - VOLT - File header.

4-7 - 02 00 00 00 - ALWAYS

8-11 - Number of files.

12-15 - Length of the file list below.

15-?? - A string of bytes with 12 bytes for each file divided into 4 byte blocks.

____Block1 = UNKNOWN (This is where I'm having trouble.)

____Block2 = 01 00 00 00 - ALWAYS

____Block3 = Offset of the file info in the file list below.

After that, file list with file offset and size:

First 8 bytes = File offset.

Next 8 bytes = File size.

Next ? bytes = File name (null 00 terminated).

Then it just has the file bytes stuck on at the end.

So, I've got everything figured except for that 1 unknown block above, which is the only thing keeping me from writting an extractor and rearchiver. AFAIK, it's always a very large number that is greater than the entire archive file size. What's even wierder, is that when I used a hex editor to try rewritting some of these blocks to see if they were important, it only crashed some of the time.

I tried checking http://wiki.xentax.com/index.php/Bionicle, but they don't know what it is either (and they're slightly inaccurate).

 

UPDATE:

For future visitors, that unknown value is a CRC32 hash of the file name.

 

Link to comment
Share on other sites

Its strange that it's larger than the archive size. It wouldn't be the number of bits(so double the amount of bytes) would it?

Yea I can't think of anything at the moment.

Link to comment
Share on other sites

JrMasterModelBuilder

I don't think so. The first unknown decimal value in 09.avl is 355529020 but the file is only 624639 bytes long. I can't think of a reason why there would need to be more information to extract the files, but apparently the game needs these values. Does Game Extractor properly re-archive general.vol?

Link to comment
Share on other sites

I don't think so. The first unknown decimal value in 09.avl is 355529020 but the file is only 624639 bytes long. I can't think of a reason why there would need to be more information to extract the files, but apparently the game needs these values. Does Game Extractor properly re-archive general.vol?

The files are not compressed are they? I guess even then there would be no way to compress the files THAT much.

I don't know if GE does, I know it's based of Xentax and it didn't extract the Lego Racers Jam file correctly.

Link to comment
Share on other sites

JrMasterModelBuilder

I don't think so. The first unknown decimal value in 09.avl is 355529020 but the file is only 624639 bytes long. I can't think of a reason why there would need to be more information to extract the files, but apparently the game needs these values. Does Game Extractor properly re-archive general.vol?

The files are not compressed are they? I guess even then there would be no way to compress the files THAT much.

I don't know if GE does, I know it's based of Xentax and it didn't extract the Lego Racers Jam file correctly.

The text files are in plain view in the hex. Just the opposite it would seem. There are a ton of 0x69 (the letter i) bytes padding up the file size.

Link to comment
Share on other sites

The text files are in plain view in the hex. Just the opposite it would seem. There are a ton of 0x69 (the letter i) bytes padding up the file size.

So did you re-archive with GE? If so, are the unknown bytes different from the original?

Link to comment
Share on other sites

JrMasterModelBuilder

The text files are in plain view in the hex. Just the opposite it would seem. There are a ton of 0x69 (the letter i) bytes padding up the file size.

So did you re-archive with GE? If so, are the unknown bytes different from the original?

I don't have a full version of Game Extractor, so I don't know if it changes or not.

Link to comment
Share on other sites

  • 1 year later...

Let's wake this topic back up, because I'm interdasted.

avl and vol files contain level data, to some extent (or then general.vol is hiding stuff from me). The AVL files cotain PCAs, while the VOL files contain PCMs. It's possible, but I doubt, that the PCM files are audio, while the PCAs are definitely not (the audio codec wasn't even around at the time of the game).

We should focus on extracting these files, which I can't even see a legible header for. 10 is bigger than 09, and I'm going through the others shortly.

Link to comment
Share on other sites

  • 1 month later...
  • Administrators

Agreed, I'm trying to get the debug info working. Also Hiya JR, long time no see. :P

Link to comment
Share on other sites

JrMasterModelBuilder

Agreed, I'm trying to get the debug info working. Also Hiya JR, long time no see. :P

Howdy! You should be able to do it with a hex editor. I've done it before and it added a bunch of debug text to the screen, but that's all.

Link to comment
Share on other sites

  • Administrators

Agreed, I'm trying to get the debug info working. Also Hiya JR, long time no see. :P

Howdy! You should be able to do it with a hex editor. I've done it before and it added a bunch of debug text to the screen, but that's all.

Well the first thing I tried was with the Gamecube version. On the Gamecube there are no vol or avl files, everything's just laid out loose in the ISO just like Bionicle Heroes, (no giant .dat file). Unfortunately, editing the game.txt file had no visible effect.

The main thing I'm trying to access is the level select. I'm very curious to see if there are any remnants of the beta Lewa Mata level still in the game.

Link to comment
Share on other sites

Well the first thing I tried was with the Gamecube version. On the Gamecube there are no vol or avl files, everything's just laid out loose in the ISO just like Bionicle Heroes, (no giant .dat file). Unfortunately, editing the game.txt file had no visible effect.

How'd you save it? Were you just running an .iso in an emulator?

Link to comment
Share on other sites

  • Administrators

Well the first thing I tried was with the Gamecube version. On the Gamecube there are no vol or avl files, everything's just laid out loose in the ISO just like Bionicle Heroes, (no giant .dat file). Unfortunately, editing the game.txt file had no visible effect.

How'd you save it? Were you just running an .iso in an emulator?

Neither, I was running it through DML on the Wii fully extracted onto an SD card.

Link to comment
Share on other sites

  • Administrators

Neither, I was running it through DML on the Wii fully extracted onto an SD card.

My+head+is+full+of+caffeine+_208df60afab

All I see is "posted image". I am IMMUNE to your memeness! xP

Link to comment
Share on other sites

  • 6 years later...
JrMasterModelBuilder

Turned out that unknown value was a CRC32 hash of the file name.

 

...

 

I probably should have guessed that sometime between then and when I reverse engineered it today. Ah well.

 

  • Like 2
Link to comment
Share on other sites

 Share

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.