ZenHAX

Free Game Research Forum | Official QuickBMS support | twitter @zenhax | SSL HTTPS://zenhax.com
It is currently Sat Oct 21, 2017 10:34 am

All times are UTC




Post new topic  Reply to topic  [ 11 posts ] 
Author Message
 Post subject: FIFA 16 (*.BIG)
PostPosted: Mon Sep 21, 2015 1:26 pm 

Joined: Sat Aug 09, 2014 2:34 pm
Posts: 715
Code:
# FIFA 16 (BIG format)
# Written by Ekey (h4x0r)
# script for QuickBMS http://quickbms.aluigi.org

comtype COMP_DEFLATE
idstring "BIG"
get VERSION byte #4
get BIGSIZE long
endian big
get FILES long
get TABLESIZE long

for i = 0 < FILES
    get OFFSET long
    get FZSIZE long
    get NAME string

    savepos TMP
    goto OFFSET
    getdstring TYPE 8

    if TYPE == "chunkzip"
        get DUMMY long
        get SIZE long
        getdstring DUMMY 24
        get ZSIZE long
        get DUMMY long
        savepos ZOFFSET
        clog NAME ZOFFSET ZSIZE SIZE
    else
        log NAME OFFSET FZSIZE
    endif
    goto TMP
next i


Top
   
 Post subject: Re: FIFA 16 (*.BIG)
PostPosted: Mon Sep 21, 2015 2:16 pm 
Site Admin
User avatar

Joined: Wed Jul 30, 2014 9:32 pm
Posts: 6885
As far as I know the chunkzip files are a bit more complex than that.
Probably it's better to dump them "as-is" and then use the chunklzx script:
http://aluigi.org/papers/bms/chunklzx.bms


Top
   
 Post subject: Re: FIFA 16 (*.BIG)
PostPosted: Mon Sep 21, 2015 2:30 pm 

Joined: Sat Aug 09, 2014 2:34 pm
Posts: 715
aluigi wrote:
As far as I know the chunkzip files are a bit more complex than that.
Probably it's better to dump them "as-is" and then use the chunklzx script:
http://aluigi.org/papers/bms/chunklzx.bms

Hmmm. I have small .big archive with single chunks :)


Top
   
 Post subject: Re: FIFA 16 (*.BIG)
PostPosted: Sat Oct 07, 2017 5:35 pm 

Joined: Tue Nov 29, 2016 6:39 pm
Posts: 38
aluigi wrote:
As far as I know the chunkzip files are a bit more complex than that.
Probably it's better to dump them "as-is" and then use the chunklzx script:
http://aluigi.org/papers/bms/chunklzx.bms


Is extraction possible or is injected again?
chunklzx == Extract and re-compress ?


Top
   
 Post subject: Re: FIFA 16 (*.BIG)
PostPosted: Sat Oct 07, 2017 8:50 pm 

Joined: Tue Nov 29, 2016 6:39 pm
Posts: 38
aluigi wrote:
As far as I know the chunkzip files are a bit more complex than that.
Probably it's better to dump them "as-is" and then use the chunklzx script:
http://aluigi.org/papers/bms/chunklzx.bms


Please update the script to compress chunklzx files
Currently, only the script extracts files and does not inject
Is this done?


Top
   
 Post subject: Re: FIFA 16 (*.BIG)
PostPosted: Sun Oct 08, 2017 6:20 pm 
Site Admin
User avatar

Joined: Wed Jul 30, 2014 9:32 pm
Posts: 6885
There is the reimporting feature of quickbms.
If you don't like it or doesn't work there are no other solutions.


Top
   
 Post subject: Re: FIFA 16 (*.BIG)
PostPosted: Sun Oct 08, 2017 6:56 pm 

Joined: Tue Nov 29, 2016 6:39 pm
Posts: 38
aluigi wrote:
There is the reimporting feature of quickbms.
If you don't like it or doesn't work there are no other solutions.

http://www.mediafire.com/file/f51axigemilfca6/ng.rar
You check to see if the extracted file is imported after extraction?
I could not do with quickbms.


Top
   
 Post subject: Re: FIFA 16 (*.BIG)
PostPosted: Sun Oct 08, 2017 7:56 pm 
Site Admin
User avatar

Joined: Wed Jul 30, 2014 9:32 pm
Posts: 6885
The reimporting feature may not work because the file is chunked (basically it's splitted in small pieces).
As already said, if it doesn't work I have no other solutions unfortunately.

Anyway I have updated the script and it "may" work better in reimport mode, it's a type of update that usually worked for the scripts of other games. Try it, version 0.2.4:
http://aluigi.org/bms/chunklzx.bms

If the game doesn't work with the "edited" file try to use the unpacked file at the place of the original one.

Keep us update!


Top
   
 Post subject: Re: FIFA 16 (*.BIG)
PostPosted: Mon Oct 09, 2017 12:02 am 

Joined: Tue Nov 29, 2016 6:39 pm
Posts: 38
aluigi wrote:
The reimporting feature may not work because the file is chunked (basically it's splitted in small pieces).
As already said, if it doesn't work I have no other solutions unfortunately.

Anyway I have updated the script and it "may" work better in reimport mode, it's a type of update that usually worked for the scripts of other games. Try it, version 0.2.4:
http://aluigi.org/bms/chunklzx.bms

If the game doesn't work with the "edited" file try to use the unpacked file at the place of the original one.

Keep us update!

Thank you very much. You made a very quick update
Imports files but crashes when the game is running
The compressed file is also not available for Xbox
Possibly in the computer version of the game


Top
   
 Post subject: Re: FIFA 16 (*.BIG)
PostPosted: Mon Oct 09, 2017 12:08 am 

Joined: Tue Nov 29, 2016 6:39 pm
Posts: 38
Ekey wrote:
Code:
# FIFA 16 (BIG format)
# Written by Ekey (h4x0r)
# script for QuickBMS http://quickbms.aluigi.org

comtype COMP_DEFLATE
idstring "BIG"
get VERSION byte #4
get BIGSIZE long
endian big
get FILES long
get TABLESIZE long

for i = 0 < FILES
    get OFFSET long
    get FZSIZE long
    get NAME string

    savepos TMP
    goto OFFSET
    getdstring TYPE 8

    if TYPE == "chunkzip"
        get DUMMY long
        get SIZE long
        getdstring DUMMY 24
        get ZSIZE long
        get DUMMY long
        savepos ZOFFSET
        clog NAME ZOFFSET ZSIZE SIZE
    else
        log NAME OFFSET FZSIZE
    endif
    goto TMP
next i



There is no update for this script
Because in that chunkzip it can extract and import in one step
But chunklzx only extracts and requires two extraction steps


Top
   
 Post subject: Re: FIFA 16 (*.BIG)
PostPosted: Sun Oct 15, 2017 10:57 am 

Joined: Sat Aug 26, 2017 8:09 am
Posts: 6
Here is a script to compress single files to chunklzx format. The script is not complete yet so you must copy chunklzx header (0x28) from original chunklzx file to start of the compressed file created with this script.

Code:
comtype xmemlzx_compress
endian big
math CHUNK_SIZE = 0x40000
get SIZE asize
math T = 0
get NAME filename

log NAME 0 0
for OFFSET = 0 != SIZE

    math TMP = SIZE
    math TMP - OFFSET
    if TMP < CHUNK_SIZE
        math CHUNK_SIZE = TMP
    endif
    clog MEMORY_FILE OFFSET CHUNK_SIZE CHUNK_SIZE
    get CHUNK_ZSIZE asize MEMORY_FILE

# math number of nulls in end of chunk putting CHUNK_ZSISE to right column in the file.
    math N = 0x10
    math T = CHUNK_ZSIZE
    math T %= 0x10
   if T == 8
      math N = 0
   elif T > 8
      math N += 8
      math N -= T
   else
      math N -= 8
      math N -= T
   endif

    putvarchr MEMORY_FILE2 0 CHUNK_ZSIZE long
    putvarchr MEMORY_FILE2 4 3           long
    putvarchr MEMORY_FILE3 N 0
    append
    log NAME 0 8           MEMORY_FILE2
    log NAME 0 CHUNK_ZSIZE MEMORY_FILE
    log NAME 0 N           MEMORY_FILE3
    append
next OFFSET + CHUNK_SIZE


Top
   
Display posts from previous:  Sort by  
Post new topic  Reply to topic  [ 11 posts ] 

All times are UTC


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Powered by phpBB® Forum Software © phpBB Limited