Page 2 of 3

Re: [req].vfs bms script?

Posted: Mon Nov 09, 2009 1:40 pm
by aluigi
@Chessman
can you try with the following updated script?

Code: Select all

idstring "vfs "
goto 0x18
get INFO_OFF long
goto INFO_OFF
get FILES long
for i = 0 < FILES
    get DATASZ long
    get DUMMY long
    savepos INFO_OFF

    #encryption charset2 "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0QIKJHMNAET\0\0\0\0\0\0\0OGDCXS" #wait quickbms 0.3.8
    encryption charset "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x37\0\x64\x63\x38\0\x62\x34\x31\x33\x32\0\x35\x36\x61\0\x30\0\x66\x39\0\0\0\x65\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
    comtype hex
    clog MEMORY_FILE INFO_OFF DATASZ DATASZ
    encryption "" ""

    idstring MEMORY_FILE "daeh"
    get NAMESZ long MEMORY_FILE
    getdstring NAME NAMESZ MEMORY_FILE
    get SIZE long MEMORY_FILE
    get ZSIZE long MEMORY_FILE
    get TYPE long MEMORY_FILE
    get OFFSET long MEMORY_FILE
    get DUMMY long MEMORY_FILE
    get DUMMY long MEMORY_FILE
    get NEXT_DATA long MEMORY_FILE  # for folders

    math OFFSET += 16
    if TYPE == 0    # I don't know if it's used
        log NAME OFFSET SIZE
    elif TYPE == 1
        comtype zlib
        if SIZE == ZSIZE
            log NAME OFFSET SIZE
        else
            clog NAME OFFSET ZSIZE SIZE
        endif
    elif TYPE == 2
        # folder
    else
        print "unknown type %TYPE%"
        cleanexit
    endif

    math INFO_OFF += DATASZ
    goto INFO_OFF
next i
I will delete the one in the previous post if this one solves the problem with the 13138th file, so let me know if it's ok

Re: [req].vfs bms script?

Posted: Mon Nov 09, 2009 2:53 pm
by Chessman
there're 13128 files in out-folder. but while extracting, many files were overwritten by files with same filename.so > 13128. maybe there are many files which have same filename in diff directorys.

Re: [req].vfs bms script?

Posted: Mon Nov 09, 2009 3:03 pm
by Chessman
form xxshell dump files, we can find some xml file(book.xml, item.xml ,etc.) . but there're not in out-folder.maybe their size are so large that quickbms can't extract them from vfs file.

Re: [req].vfs bms script?

Posted: Mon Nov 09, 2009 3:08 pm
by Mr.Mouse
Like I said. We still have to figure out the folder sytem.

Re: [req].vfs bms script?

Posted: Wed Nov 11, 2009 12:43 pm
by Mr.Mouse
I'll have a tool for you ready soon.

Re: [req].vfs bms script?

Posted: Wed Nov 11, 2009 4:06 pm
by Chessman
Mr.Mouse wrote:I'll have a tool for you ready soon.
Thanks!

Re: [req].vfs bms script?

Posted: Sat Nov 14, 2009 11:17 am
by Mr.Mouse
I figured out the folder format. Just to update you, I'm working on that tool. :)

Re: [req].vfs bms script?

Posted: Sun Nov 22, 2009 1:14 pm
by Mr.Mouse
Okay, I've got a rough tool for you.

Just start the loader and select vfsExtractor.

Now open that xxz.vfs archive. Wait for the analysis and then select the arrow to extract all files into a folder of your choice. Mind, the tool is NOT idiot proof, like most tools in that loader of mine ;)

[EDIT]updated the zip file.

Re: [req].vfs bms script?

Posted: Sun Nov 22, 2009 10:52 pm
by Mr.Mouse
http://www.xentax.com/?p=223 There's an update.

Re: [req].vfs bms script?

Posted: Mon Nov 23, 2009 5:17 pm
by Chessman
Mr.Mouse wrote:http://www.xentax.com/?p=223 There's an update.
Great Done!Thks Mr.Mouse.

when analyzing xxz.vfs archive (618,389,304 bytes after updating the game client), it occurs:

Re: [req].vfs bms script?

Posted: Mon Nov 23, 2009 8:34 pm
by Mr.Mouse
Hmm, that is odd. It works on my xxz.vfs file. Try this dll, overwrite the other in tools/vfsextractor. It will create a debug.txt file there. please attach that here after it crashed.
vfsextractor.zip

Re: [req].vfs bms script?

Posted: Tue Nov 24, 2009 12:02 am
by Chessman
:P :roll:
Crash again.
I can extract all files from xxz.vfs before updating client, and I can extract files from res_patch.vfs in the patch file.
here 's debug.txt.
Thks.

Re: [req].vfs bms script?

Posted: Tue Nov 24, 2009 12:50 pm
by Mr.Mouse
Ok, well the updated extractor does not change anything in the extraction process. Just a debug.txt.

Anyway, I'm glad it works on the original xxz.vfs file. This means that the updating process alters the file table. I suspect there will now be empty spaces in the table (files of 0 length), which will lead to an overflow in the calculation process of the Extractor. I can ignore such errors and you can see what happens. Alternatively, you can use the FileCutter to cut out the 1 MB (1024 Kb) and upload the resulting zip file of the UPDATED xxz.vfs, so I can take a look at it.

Re: [req].vfs bms script?

Posted: Tue Nov 24, 2009 1:19 pm
by Chessman
well.plz ignor errors and I will try again. I don't know how to use filecutter.
thanks.

Re: [req].vfs bms script?

Posted: Tue Nov 24, 2009 1:32 pm
by Mr.Mouse
That is easy.

1. Select the FileCutter:
24-11-2009 13-27-36.png
2. Select 1024K:
24-11-2009 13-28-22.png
3. Select the xxz.vfs file and then give a name for the new file (that you must upload)
24-11-2009 13-29-47.png
4. Click Go! to start.