Page 1 of 8
NfS Shift .BFF files
Posted: Wed Sep 16, 2009 6:49 pm
by dijotp
Hi.
Anybody know how to extract these .BFF files?
Samples:
http://66.7.218.134/~usaportu/pub/BFFs.rar
Re: NfS Shift .BFF files
Posted: Fri Sep 18, 2009 4:30 pm
by demolos
this game use zlib compression i looking into shift.exe with hexadecimal and i found zlib:
Error decompressing asset (zlib inflate): %s in pakfile %s
also i suppose the bff archives contain xml files
you can try to use Jaeder Naub to scan and rip the files inside bff archives
Re: NfS Shift .BFF files
Posted: Fri Sep 18, 2009 7:10 pm
by aluigi
no, it's not zlib.
the most probable hypothesis it's that it uses chunks of 0x800 bytes compressed with a lzx-like algorithm.
this is the max I can say without the game.
Re: NfS Shift .BFF files
Posted: Sat Sep 19, 2009 9:54 am
by Savage
Re: NfS Shift .BFF files
Posted: Sat Sep 19, 2009 12:16 pm
by aluigi
I have started to work on it this morning.
I have already figured almost all the fields included the rc4 encryption used in some bffs.
the compression algorithm should be called XMemDecompress and I guess it's referred to a cross-platform xbox function.
I will keep you update if there are news
Re: NfS Shift .BFF files
Posted: Sat Sep 19, 2009 12:49 pm
by dijotp
Thank you Bugtest, you rock.
Re: NfS Shift .BFF files
Posted: Sat Sep 19, 2009 1:25 pm
by Savage
Re: NfS Shift .BFF files
Posted: Sat Sep 19, 2009 2:13 pm
by aluigi
good news, I did it :)
so stay tuned for a new version of QuickBMS and the needed script when all the tests will be finished completely
Re: NfS Shift .BFF files
Posted: Sat Sep 19, 2009 3:31 pm
by Savage
Re: NfS Shift .BFF files
Posted: Sat Sep 19, 2009 9:54 pm
by aluigi
Re: NfS Shift .BFF files
Posted: Sat Sep 19, 2009 10:50 pm
by japamd
Wonderful job!
If the string are translated, how do I put the files together again?
Thanks!
Re: NfS Shift .BFF files
Posted: Sat Sep 19, 2009 11:09 pm
by aluigi
I make only the extractors.
if someone wants to write a quick rebuilder I suggest to use X12d equal to 0 (no encryption) and ever type 0 for each file so that it's not needed to use the compression.
the crc calculated on the files is just the simple classic one:
Code: Select all
unsigned int crtable[...0x77073096 polynomial...];
unsigned int crc = 0xffffffff;
for(i = 0; i < len; i++) {
crc = crctable[(data[i] ^ crc) & 0xff] ^ (crc >> 8);
}
return(crc);
Re: NfS Shift .BFF files
Posted: Sat Sep 19, 2009 11:44 pm
by zeeh
Cool
I hope soon we should have compiler working, good job!
Re: NfS Shift .BFF files
Posted: Sun Sep 20, 2009 4:55 am
by japamd
zeeh wrote:Cool
I hope soon we should have compiler working, good job!
Are you making one? It would be great!
Re: NfS Shift .BFF files
Posted: Sun Sep 20, 2009 6:39 pm
by Simon
Don't know if this is against the Rules here but ...
I bet please please create a BFF Rebuilder because Shift don't reads extracted files and I want to start modding