ZenHAX

Free Game Research Forum | Official QuickBMS support | twitter @zenhax | SSL HTTPS://zenhax.com
It is currently Tue Oct 22, 2019 10:06 pm

All times are UTC




Post new topic  Reply to topic  [ 32 posts ]  Go to page Previous 1 2
Author Message
PostPosted: Sun Jun 02, 2019 12:04 pm 

Joined: Thu Sep 13, 2018 6:38 pm
Posts: 78
MITA996 wrote:
CosmicDreams wrote:
This isn't just FIFA by the way.
It's a Frosty Tool Suite mod format.
They aren't meant to be extracted to prevent mod theft but i suppose there's not much that can stop it from happening.
The format was updated recently.

Actually isn't made for theft, I'm as one fifa modder can say that. It was the onle way to import fifa textures to fifa 19 :D

Was? You can import textures using Frosty Editor...

Also the "raw image data" that was mentioned is a chunk file commonly found in Frostbite engine games.
The image size and format is probably in the accompanied RES file.


Top
   
PostPosted: Sun Jun 02, 2019 6:41 pm 

Joined: Wed May 23, 2018 1:00 pm
Posts: 81
CosmicDreams wrote:
MITA996 wrote:
CosmicDreams wrote:
This isn't just FIFA by the way.
It's a Frosty Tool Suite mod format.
They aren't meant to be extracted to prevent mod theft but i suppose there's not much that can stop it from happening.
The format was updated recently.

Actually isn't made for theft, I'm as one fifa modder can say that. It was the onle way to import fifa textures to fifa 19 :D

Was? You can import textures using Frosty Editor...

Also the "raw image data" that was mentioned is a chunk file commonly found in Frostbite engine games.
The image size and format is probably in the accompanied RES file.

So I should decompressed it. I've tried with raw image cooker but nothing. Is there a script to decompress the chunk file from frostbite?


Top
   
PostPosted: Sun Jun 23, 2019 3:47 pm 

Joined: Thu Sep 13, 2018 6:38 pm
Posts: 78
Image
Any idea why the file names are like this?


Top
   
PostPosted: Sat Jun 29, 2019 11:58 pm 

Joined: Thu Sep 13, 2018 6:38 pm
Posts: 78
Bump


Top
   
PostPosted: Thu Aug 08, 2019 9:11 pm 

Joined: Thu Sep 13, 2018 6:38 pm
Posts: 78
Well RIP.

EDIT: https://cdn.discordapp.com/attachments/ ... port.fbmod
Sample file
one of my own mods


Top
   
PostPosted: Sat Aug 31, 2019 11:41 am 

Joined: Wed May 23, 2018 1:00 pm
Posts: 81
aluigi wrote:
You do NOT have to delete your posts!

Script updated to version 0.3:
http://aluigi.org/bms/fifa18_fbmod.bms

I think the exctration don't work properly. I can't open any dump file neither with texture finder or raw texture preview


Top
   
PostPosted: Fri Sep 27, 2019 12:29 pm 
Site Admin
User avatar

Joined: Wed Jul 30, 2014 9:32 pm
Posts: 10809
Do you have new sample files to test so I can verify if there is any problem?


Top
   
PostPosted: Mon Sep 30, 2019 1:54 pm 

Joined: Thu Sep 13, 2018 6:38 pm
Posts: 78
https://cdn.discordapp.com/attachments/419711036837330956/628227124578222110/scarifmenumus.fbmod
Here's another one of my own mods.
https://www.nexusmods.com/starwarsbattlefront22017
Any of the newer mods from here also work as samples.

Chunk's come out as .IMG files for some reason and anything else comes as .DAT
The files also appear to still be compressed or something as well because the IMG file in the fbmod i linked is meant to be an audio chunk playable in vgmstream if you change the ext to .sps


Top
   
PostPosted: Mon Sep 30, 2019 6:08 pm 
Site Admin
User avatar

Joined: Wed Jul 30, 2014 9:32 pm
Posts: 10809
It's very simple.
Some files are compressed, others aren't.
There is no field saying if a file is compressed or not, probably because it depends by the filename and filenames aren't available.

Everything is perfect and the script 0.3.1 has the code for doing the job but it's commented otherwise it will not work.
It's up to you.


Top
   
PostPosted: Mon Sep 30, 2019 7:11 pm 

Joined: Thu Sep 13, 2018 6:38 pm
Posts: 78
There is actually file names.
Image
The one highlighted here is the DAT file that gets extracted.

The IMG is a bit further down at 0x2C0(It's a chunk GUID)

The format was updated to merge the fbmod and archive files together and i think the script currently looks for archive index things found only on the older version of the format that still used the .archive companion file.

Before each file name i noticed two bytes
The first file(the highlighted one) had 00 and 00 while the second one(the chunk) had 03 and 01
The second byte is definitely a id or something because the number increments with each file in the fbmod(i checked another one with a lot more files edited)

EDIT: After looking a bit more the first byte may be related to compression.


Top
   
PostPosted: Tue Oct 01, 2019 12:09 am 
Site Admin
User avatar

Joined: Wed Jul 30, 2014 9:32 pm
Posts: 10809
Eh no, there are no information about that and there is only a path, no filenames.

I spent some time figuring out some fields but the ZERO at line 48 is the last field in common with the 2 samples I analyzed.
The following is the updated script (FROSTY ONLY!) for anyone who wants to continue the analysis (use quickbms -V):
Code:
# FIFA 18 fbmod (script 0.3.1 ANALYSIS WIP!)
# script for QuickBMS http://quickbms.aluigi.org

get EXT extension
if EXT != "fbmod"
    print "Error: you must select the FBMOD file"
    cleanexit
endif

get DUMMY long  # 0x0183dc82

math DATA_FILE = 0

if DUMMY == 0x534f5246
    goto 0
    idstring "FROSTY"
    get ZERO byte
    get ONE byte
    get ONE long
    get OFFSET longlong
    get FILES long
    get NAMESZ byte
    getdstring NAME NAMESZ
    get DUMMY long
    for x = 0 < 5
        get NAME string
    next x
    get NUM long
    for x = 0 < 6
        get TYPE byte
        get ID long
        if TYPE == 0
            if ID != 0xffffffff
                get NAME string
                getdstring ZERO 0x14
                getdstring DUMMY 0x15
            endif
        else
            get NAME string
            getdstring DUMMY 0x20
        endif
    next x
    get ZERO byte
    get NUM long
    for x = 0 < NUM
        getdstring DUMMY 4
    next x
    get ZERO long
    goto OFFSET
    xmath BASE_OFF "OFFSET + (FILES * (8 + 8))"
    for i = 0 < FILES
        get OFFSET longlong
        get SIZE longlong
        math OFFSET + BASE_OFF
        log "" OFFSET SIZE

        /*
        savepos TMP
        goto OFFSET
        callfunction DUMP 1
        goto TMP
        */
    next i
    cleanexit
endif


Top
   
PostPosted: Wed Oct 02, 2019 10:44 pm 

Joined: Thu Sep 13, 2018 6:38 pm
Posts: 78
The part of the path at the end is the file name. There's no extensions used in the files so it still looks like just a path.
Aside from that, dunno what else to say.


Top
   
Display posts from previous:  Sort by  
Post new topic  Reply to topic  [ 32 posts ]  Go to page Previous 1 2

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