AnonBaiter's Script Compendium

Do you know a tool, link or website for working on a specific game files or to help game research? Let's collect them here!
mauzerX
Posts: 7
Joined: Tue Mar 14, 2017 5:06 am

Re: AnonBaiter's Script Compendium

Post by mauzerX »

AnonBaiter, thank you.
AnonBaiter
Posts: 1125
Joined: Tue Feb 02, 2016 2:35 am

Re: AnonBaiter's Script Compendium

Post by AnonBaiter »

Crisis Core: Final Fantasy VII - discimg.fse/discimg.pkg
AnonBaiter
Posts: 1125
Joined: Tue Feb 02, 2016 2:35 am

Re: AnonBaiter's Script Compendium

Post by AnonBaiter »

SCEA/SCEE - SBv2/SBlk/lkBS/MMID archives(PS2 and beyond)

Seems to be first used on early 989 Studios/989 Sports games that were on the PS2 at launch(such as NCAA GameBreaker 2001), as well as a bunch of other SCEA/SCEE games from time to time. It might or might not work on PS1 games that use this format though, especially since I've only tested a few SCEA PS2 games(Kinetica, Jak and Daxter, the aforementioned PS2 sports game, etc.) and one SCEE PSP game(Gangs of London) so far.

UPDATE(30/04/2016): There were minor changes regarding the extension of the extracted files.
AnonBaiter
Posts: 1125
Joined: Tue Feb 02, 2016 2:35 am

Re: AnonBaiter's Script Compendium

Post by AnonBaiter »

SCE Santa Monica - *.WAD

I'm just getting started with these kind of .WAD archives used in SCE Santa Monica games...

UPDATE #01(01/05/2017): CURR_OFF was removed, which eliminates at least one error.
UPDATE #02(01/05/2017): DUMMY2 was renamed to TYPE, and now TYPE 0x18 is excluded, eliminating any upcoming errors coming from some .WAD archives(from level_01.wad to level_15.wad).
UPDATE(02/05/2017): I updated the kinetica_wad.bms script, and presented a new one along with it. Do keep in mind though that god_of_war_wad.bms won't actually work on any God of War games released for the PS3.
AnonBaiter
Posts: 1125
Joined: Tue Feb 02, 2016 2:35 am

Re: AnonBaiter's Script Compendium

Post by AnonBaiter »

N.U.D.E.@ Natural Ultimate Digital Experiment - *.tfs

The compression algorithm "used" for the "game" was never seen.
aluigi
Site Admin
Posts: 12984
Joined: Wed Jul 30, 2014 9:32 pm

Re: AnonBaiter's Script Compendium

Post by aluigi »

If you want I can give a quick look at that compression and file format.
Little note: you must use ZSIZE in the second log.
AnonBaiter
Posts: 1125
Joined: Tue Feb 02, 2016 2:35 am

Re: AnonBaiter's Script Compendium

Post by AnonBaiter »

aluigi wrote:If you want I can give a quick look at that compression and file format.
Little note: you must use ZSIZE in the second log.
Too bad that in that game none of the files are compressed between these .tfs archives. I couldn`t even find a zlib sign in there.
aluigi
Site Admin
Posts: 12984
Joined: Wed Jul 30, 2014 9:32 pm

Re: AnonBaiter's Script Compendium

Post by aluigi »

Ah, the format allows compressed files but that specific game doesn't have them and so no way to test it.
Anyway it's an Xbox game so I bet it's xmemcompress.
AnonBaiter
Posts: 1125
Joined: Tue Feb 02, 2016 2:35 am

Re: AnonBaiter's Script Compendium

Post by AnonBaiter »

SCEI/Sony PS2 - .XWB/.XWH/.XWS(RXWS) splitter

This "rare" format used in SCEI PS2 is a precursor to these SGXD files that were used around SCEI PS3 games, not to mention that the structure itself is different from Microsoft XACT(.xwb) archives that were common starting with 2003.

UPDATE(13/05/2017): The script now keeps the FORM08 value of an ATRAC3(0x1c02) file on its splitted .xwh file.
UPDATE#01(14/05/2017): bnnm has made various improvements to the script, such as getting the STREAM_SIZE/STREAM_OFFSET directly rather than depending on the "size"(actually total number of samples) field, and has added .XWS support. As for what I did with this script, I set the FTXT_SIZE to support filenames that are up to 0x38 characters(lending itself to 0x40 bytes, if it exists) while not letting any unnecessary space for filenames that are lower than 0x8 characters(aka the extra 0x10 bytes). Finally, RXWS_SIZE is now set through xmath operations after FORM_SIZE and FTXT_SIZE for splitting.
UPDATE#02(14/05/2017): The final size of an splitted .XWS file is now set through an xmath operation.
UPDATE(21/08/2017): The script has been completely restructed(the chunks can now be seeked through the "findloc" command, which means you won't get an error when the script tries to find a missing chunk). Furthermore, the "MARK" chunk has been added for splitting.
Last edited by AnonBaiter on Tue Aug 22, 2017 12:24 am, edited 6 times in total.
AnonBaiter
Posts: 1125
Joined: Tue Feb 02, 2016 2:35 am

Re: AnonBaiter's Script Compendium

Post by AnonBaiter »

Lifeline/Operator`s Side - *.is video files

The output files are headerless, so for the ".asc1" files aside(check the header of the script for instructions) if anyone knows how to build the header for the ".vsf1" and ".vsf2" files, let me know.

Lifeline/Operator`s Side - *.a archive files

UPDATE#01(05/15/2017): Fixed an error in which when the script is run through the -d parameter with all the *.a files, the script would then try to reach out an offset that goes beyond the actual size of an *.a file.
UPDATE#02(05/15/2017): The script can now extract the files through the SIZE1 value if SIZE2 is zero.
AnonBaiter
Posts: 1125
Joined: Tue Feb 02, 2016 2:35 am

Re: AnonBaiter's Script Compendium

Post by AnonBaiter »

Gran Turismo 2

UPDATE(27/05/2017): ".." is now ignored to avoid having this name stored as a sub-folder.
UPDATE(26/06/2017): GT2.VOL from all regional releases of Disc 2 can now be completely extracted(it would previously stop at the "gtmenu" folders).
UPDATE(24/09/2017): I finally managed to eliminate a minor bug regarding how the script would handle these directories. Here is what this post looked like before the update.
UPDATE(25/09/2017): The script has been completely restructured to support both GT2.VOL and GT2.OVL(which is yet another archive consisting of gzip-compressed files), the latter which is dumped as-is because it's not possible to actually do "decompression-on-the-fly" through the script at the moment. At least you can decompress those by yourself now, provided you have WinRAR or 7zip. I've also added a few comments here and there to better explain both of these files.
UPDATE(21/11/2018): the entirety of GT2.VOL has been re-written for the sake of "cleaner code" - i recommend to back up your old gran_turismo_2.bms file and (once you're done downloading this one) rename this new one into "gran_turismo_2_new.bms" as i've found out at least one small yet impactful issue that plague this script, for now i'd recommend you to use this script on GT2.VOL files that aren't custom-made through GTVolTools.exe
Last edited by AnonBaiter on Wed Nov 21, 2018 4:14 pm, edited 10 times in total.
AnonBaiter
Posts: 1125
Joined: Tue Feb 02, 2016 2:35 am

Re: AnonBaiter's Script Compendium

Post by AnonBaiter »

Polyphony Digital (PS2) - *.VOL archives

UPDATE(02/06/2017): Fixed something that could have been easily fixed if not for my (at-that-time) attention span not noticing it: decompressing deflate files. This was caused by a variable that was then renamed during development of this script. This is for those who couldn`t get the script to work on GT4.VOL archives(taking out Gran Turismo HD Concept, of course), unless they had already fixed that error themselves.
UPDATE(10/08/2017): Added (untested) support for the Gran Turismo 3 demo builds(such as unencrypted names), also updated the header to reflect on what script do the archives stored in the directory of these games work on.
UPDATE(25/09/2017): Added full support for compressed executable files(core.gt3, core.gt4).
Last edited by AnonBaiter on Tue Sep 26, 2017 1:44 am, edited 2 times in total.
AnonBaiter
Posts: 1125
Joined: Tue Feb 02, 2016 2:35 am

Re: AnonBaiter's Script Compendium

Post by AnonBaiter »

Gran Turismo

The compression algorithm currently isn't supported yet.
AnonBaiter
Posts: 1125
Joined: Tue Feb 02, 2016 2:35 am

Re: AnonBaiter's Script Compendium

Post by AnonBaiter »

Drummania (PS2) - *.pak

I had written this script a few weeks back, but I have never bothered to release it until now.
Do keep in mind though that this doesn`t work for DMDATA.PAK.
AnonBaiter
Posts: 1125
Joined: Tue Feb 02, 2016 2:35 am

Re: AnonBaiter's Script Compendium

Post by AnonBaiter »

Battle Engine Aquila (PS2/XBOX/PC) - *.nyo
AnonBaiter
Posts: 1125
Joined: Tue Feb 02, 2016 2:35 am

Re: AnonBaiter's Script Compendium

Post by AnonBaiter »

RAGE (PS3/XBOX360/PC) - gameresources.resources/streamed.resources/*.streamed

This might work with other id Tech 4/id Tech 5 games(id Tech 5 especially), although I haven`t tested other games yet.

Set the AVOID variable to 1 for the DLC archives(The Scorchers DLC) of RAGE.

UPDATE(14/06/2017): Fixed a minor issue in which files whose EXTRA value is higher than 1 are extracted alongside the files that only need the gameresources.resources archive to the point of having duplicated files.
Last edited by AnonBaiter on Thu Jun 15, 2017 2:55 am, edited 1 time in total.
AnonBaiter
Posts: 1125
Joined: Tue Feb 02, 2016 2:35 am

Re: AnonBaiter's Script Compendium

Post by AnonBaiter »

RAGE - *.idmsf/*.idxma/*.wav

Multi-language files and looping are not supported at the moment(the former is currently untested).
AnonBaiter
Posts: 1125
Joined: Tue Feb 02, 2016 2:35 am

Re: AnonBaiter's Script Compendium

Post by AnonBaiter »

Victory Zone - *.CFL

CELLA.CFL's structure is different in that it has no header.
AnonBaiter
Posts: 1125
Joined: Tue Feb 02, 2016 2:35 am

Re: AnonBaiter's Script Compendium

Post by AnonBaiter »

Front Mission 4/Front Mission Online/Front Mission 5(PS2) - dvdimage.pos/dvdimage.dat

Well, the extension guessing function of this script is pretty basic, and you can't even find a true extension for those whose extension is not what quickBMS automatically guesses for the file without actually guessing the extension yourself. So if anyone here knows which extension a file was supposed to be(alongside the first four bytes of a file), let me know.
AnonBaiter
Posts: 1125
Joined: Tue Feb 02, 2016 2:35 am

Re: AnonBaiter's Script Compendium

Post by AnonBaiter »

The Bouncer

The extracted BOUNCER.BIN files has exactly the same structure to the point you can reuse the script with them.

UPDATE(30/06/2018): this script contains all changes made by bnnm with said script alongside a few fixes(see this post for more details).
UPDATE(02/07/2018): this script can handle most .bin files now(bgmlist.bin, bgmwdtbl.bin, etc.). emphasis on "most" since these "IZ01" files(the other .bin files that are stored in the BOUNCER.BIN archive) still aren't useful with it.
Last edited by AnonBaiter on Mon Jul 02, 2018 6:14 pm, edited 3 times in total.