Important information: this site is currently scheduled to go offline indefinitely by end of the year.

The Void / Tension Bigfiles(.vfs) - Partial .bms Script done

The Original Forum. Game archives, full of resources. How to open them? Get help here.
Itze
veteran
Posts: 81
Joined: Sat Mar 15, 2008 4:43 pm
Has thanked: 2 times
Been thanked: 6 times

The Void / Tension Bigfiles(.vfs) - Partial .bms Script done

Post by Itze »

Hey i've been trying to unpack The Void / Tension Bigfiles and it works, atleast for files without folder structures.

I've never worked with mexcom script before but i wanted to give it a try ;)

File Structure of .VFS Files:

long 0x0 = fileheader = "LP2C"
long 0x4 = total folders in Archive(probably :P)
long 0x8 = files in current folder
byte 0xC = length of filename
string 0xC + lof = filename
long 0xC + lof = filesize
long 0xC + lof + 4 = offset of file in archive
long 0xC + lof + 4 + 12 = next file

i don't know if i explained this correctly but check my example files and you'll know wtf i mean ;)

Examples archives:
http://s000.tinyupload.com/index.php?fi ... k=transfer

the script will work perfectly for Effects.vfs however Properties.vfs contains a folderstructure and i have no idea how to handle it...

This is my BMS script so far:

Code: Select all

# The Void
# script for QuickBMS http://aluigi.org/papers.htm#quickbms

idstring "LP2C"
get TOTAL_SIZE asize
get FOLDERS long 0
set PATHNAME string ""

if FOLDERS < 1;
get FILES long 0
else;
#set FILES 0 
EndIf;

for i = 1 to FILES;
get FILENLENGTH byte 0
getdstring FILENAME FILENLENGTH

get FILESIZE long 0

savepos OFFSET
math OFFSET += 4
goto OFFSET
get FILEOFFSET long 0

string PATHNAME += Extracted
string PATHNAME += \
string PATHNAME += FILENAME

log PATHNAME FILEOFFSET FILESIZE

set PATHNAME string ""

savepos OFFSET
math OFFSET += 12
goto OFFSET

next i;
User avatar
aluigi
VVIP member
VVIP member
Posts: 1916
Joined: Thu Dec 08, 2005 12:26 pm
Location: www.ZENHAX.com
Has thanked: 4 times
Been thanked: 664 times
Contact:

Re: The Void / Tension Bigfiles(.vfs) - Partial .bms Script done

Post by aluigi »

the bms language is not good for recursive formats like this one
User avatar
aluigi
VVIP member
VVIP member
Posts: 1916
Joined: Thu Dec 08, 2005 12:26 pm
Location: www.ZENHAX.com
Has thanked: 4 times
Been thanked: 664 times
Contact:

Re: The Void / Tension Bigfiles(.vfs) - Partial .bms Script done

Post by aluigi »

new version of quickbms just released with (experimental) support for recursive function.
I have tested it with the 2 files you provided and worked perfectly so get the script and the new version and test also the other files:
http://aluigi.org/papers/bms/thevoid.bms
http://aluigi.org/papers.htm#quickbms
User avatar
Savage
VIP member
VIP member
Posts: 559
Joined: Sun Apr 17, 2005 11:00 am
Has thanked: 16 times
Been thanked: 18 times

Re: The Void / Tension Bigfiles(.vfs) - Partial .bms Script done

Post by Savage »

I tried and is NOt working in a big file called TEXTURES.VFS 3.183.391.171bytes, if you need big attachments (like 25-50mb's) i can upload.

Code: Select all

QuickBMS generic files extractor 0.3.4b
by Luigi Auriemma
e-mail: [email protected]
web:    aluigi.org

- open input file Textures.vfs
- open script thevoid.bms
- set output folder output

  offset   filesize   filename
------------------------------
- SCRIPT's MESSAGE:
  the ZERO value is not 0 (721451109), contact me!
Image
User avatar
aluigi
VVIP member
VVIP member
Posts: 1916
Joined: Thu Dec 08, 2005 12:26 pm
Location: www.ZENHAX.com
Has thanked: 4 times
Been thanked: 664 times
Contact:

Re: The Void / Tension Bigfiles(.vfs) - Partial .bms Script done

Post by aluigi »

ok no problem, first try the following test.
open thevoid.bms with a text editor and place a # before the "cleanexit" instruction at line 29, example: "#cleanexit"
then relaunch the script and check if all the files are extracted correctly.
then open the first extracted file (the one for which was showed the ZERO alert) and check if it's content is correct.

if the extraction fails or the content of the file is corrupted then I need to analyze this file, otherwise let me know if it's all correct and I will remove the alert
User avatar
Savage
VIP member
VIP member
Posts: 559
Joined: Sun Apr 17, 2005 11:00 am
Has thanked: 16 times
Been thanked: 18 times

Re: The Void / Tension Bigfiles(.vfs) - Partial .bms Script done

Post by Savage »

Okay added # in cleanexit at line 29 i get the next:

Code: Select all

  offset   filesize   filename
------------------------------
- SCRIPT's MESSAGE:
  the ZERO value is not 0 (721451109), contact me!

  742e426f 1818582872 \normalize.prc\n☻\_lt.prc♠☺\fresnel_glass.prc\r☻\Û╔☺‼ps_fi
rework_ray.texP♂\Ü╠☼╣Û╔☺‼map_moving_girl.texÇ►\exǧ\\ãn(╣Û╔☺¶Garden2GrassTile.te
xÇ \◄\◄\y_up.texÇ \HT_LemnaMoonSkyUp.texÇ \\\╔☺▬PS_FX_DrillerSpark.texÇ(\ernButt
erflies.texÇ_\Ole_door2_loops_dnn_300.tex\┘♣\\\Ole_modeling_03_cont_dnn.tex\X♠\\
N7▬╣Û╔☺↓ole_stucco_moulding_2.texÇ_\texÇ_\\_dirDrop.tex

Error: incomplete input file number 0, can't read 584380420 bytes.
       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
No files extracted just created a folder called normalize.prc
Image
User avatar
aluigi
VVIP member
VVIP member
Posts: 1916
Joined: Thu Dec 08, 2005 12:26 pm
Location: www.ZENHAX.com
Has thanked: 4 times
Been thanked: 664 times
Contact:

Re: The Void / Tension Bigfiles(.vfs) - Partial .bms Script done

Post by aluigi »

ok, in this case I need to have the file or piece of it
User avatar
Savage
VIP member
VIP member
Posts: 559
Joined: Sun Apr 17, 2005 11:00 am
Has thanked: 16 times
Been thanked: 18 times

Re: The Void / Tension Bigfiles(.vfs) - Partial .bms Script done

Post by Savage »

Here is, 44.21MB, unpacked it's 95mb's
http://www.zshare.net/download/67659142b85bb1a1/
Image
User avatar
aluigi
VVIP member
VVIP member
Posts: 1916
Joined: Thu Dec 08, 2005 12:26 pm
Location: www.ZENHAX.com
Has thanked: 4 times
Been thanked: 664 times
Contact:

Re: The Void / Tension Bigfiles(.vfs) - Partial .bms Script done

Post by aluigi »

very well, practically the problem was in the handling of the folders before the files while it was the opposite.
I have updated the script to version 0.1.1
User avatar
Savage
VIP member
VIP member
Posts: 559
Joined: Sun Apr 17, 2005 11:00 am
Has thanked: 16 times
Been thanked: 18 times

Re: The Void / Tension Bigfiles(.vfs) - Partial .bms Script done

Post by Savage »

i get some errors:
This is unpacking the file Textures.vfs

Code: Select all

  7ea3e04d 5505152    \garden1_terrain_down_dust.tex
  7ef7e0cd 5505152    \garden1_terrain_right_dust.tex
  7f4be14d 5505152    \garden1_tower_down.tex
  7f9fe1cd 5505152    \garden1_tower_down_normal_200.tex
  7ff3e24d 5505152    \garden1_tower_up.tex
  8047e2cd 5505152    \garden1_tower_up_normal_200.tex

Error: the specified offset can't be reached
This is unpacking audios in some files, file sizes are different but with same name

Code: Select all

 0ad2d024 247979     \gesture_mine_fireworks#22.ogg
 0ad698cf 248154     \girl_sister_tree_alive#22.ogg
 0ada6229 248337     \poema#22.ogg
 the file "poema#22.ogg" already exists
 do you want to overwrite it (y/N/all)?
And (sorry) the file Scenes.vfs is compressed with zlib, the script unpacks this but not decompress
I upload a 10mb's of scenes.vfs
http://www.zshare.net/download/676705594a3b061e/

Thanks! 8D
Image
User avatar
aluigi
VVIP member
VVIP member
Posts: 1916
Joined: Thu Dec 08, 2005 12:26 pm
Location: www.ZENHAX.com
Has thanked: 4 times
Been thanked: 664 times
Contact:

Re: The Void / Tension Bigfiles(.vfs) - Partial .bms Script done

Post by aluigi »

for the first problem it was a bug of quickbms in the handling of files bigger than 2 gigabytes and has been fixed just today in version 0.3.5a, what a luck :)

the second one instead doesn't seem a problem of the script.
sometimes happens that some archives have one or more files with the same name, something like an old and new version of the same file or maybe a resource to which has been assigned the same name (we see their original name but for the game their are only resources to which the latest is the one to be used).

the third one isn't a bug too.
indeed the compressed chunks you see are inside the files so it's part of their format and not part of the archive, that's why don't exist fields in the archive where are located compressed sizes (DUMMY and ZERO are not related to this thing).

I give you an example:
the file test.s is stored at offset 0000f196 and has a size of 11260105 (so till 00acc25f) and we can see a sequence of compressed chunks with offzip in all its content but in its middle and not at the beginning: 0000f25b, 0018ef9f, 001b65ba and so on.

so it's definitely a feature of that specific file or file format and not something related to the archive :)
User avatar
Savage
VIP member
VIP member
Posts: 559
Joined: Sun Apr 17, 2005 11:00 am
Has thanked: 16 times
Been thanked: 18 times

Re: The Void / Tension Bigfiles(.vfs) - Partial .bms Script done

Post by Savage »

Works like a charm!! thanks!! :P
Image
Arglaar
ultra-n00b
Posts: 5
Joined: Mon Aug 16, 2010 2:08 am

Re: The Void / Tension Bigfiles(.vfs) - Partial .bms Script done

Post by Arglaar »

Sorry for resurrecting this dead topic, but I seem to be having an issue with this for some reason, and I didn't think it would be appropriate to start a new one.

I wanted to take a look at some of the scripts for the game so I downloaded your tool, and the thevoid.bms script.

When I run the bms script on the scripts.vfs file (attached at bottom), I get the following error message:

Code: Select all

- error in src\quickbms.c line 2727: CMD_String_func()
Error: Not enough space
The file, itself is only 8.7 meg big and I have over 500gb free on the hard-disk I'm extracting it to.

Running Windows 7 Professional x64 w/ 4gb of DDR3.
Quickbms version 0.4.6a
thevoid.bms ver 0.1.1
*edit* I forgot to add, this is using the Direct2Drive version of TheVoid, which the data files should be the same, shouldn't they?


Link for the file:
scripts.zip - 1.77MB - 8.7MB Unzipped


Thanks in advance for any assistance you can give.
User avatar
aluigi
VVIP member
VVIP member
Posts: 1916
Joined: Thu Dec 08, 2005 12:26 pm
Location: www.ZENHAX.com
Has thanked: 4 times
Been thanked: 664 times
Contact:

Re: The Void / Tension Bigfiles(.vfs) - Partial .bms Script

Post by aluigi »

*edit*
ok I have noticed that you wrote you have version 0.4.6a that is the latest at the moment and same for the bms script, so don't know what else to suggest because here I don't have problems with that file
Arglaar
ultra-n00b
Posts: 5
Joined: Mon Aug 16, 2010 2:08 am

Re: The Void / Tension Bigfiles(.vfs) - Partial .bms Script

Post by Arglaar »

Thanks for taking a look at it.

Maybe I had the syntax wrong or something. *Shrug*

I've since finished this game and moved on, so it's not really that important anymore to get it working.

Thanks again.
Post Reply