ZenHAX

Free Game Research Forum | Official QuickBMS support | twitter @zenhax | SSL HTTPS://zenhax.com
It is currently Sat Dec 16, 2017 10:30 pm

All times are UTC




Post new topic  Reply to topic  [ 71 posts ]  Go to page 1 2 3 4 Next
Author Message
PostPosted: Tue Jul 26, 2016 5:42 am 
User avatar

Joined: Tue Feb 02, 2016 2:35 am
Posts: 981
Here goes nothing.

Multi-platform/miscellaneous:
Rockstar Renderware scripts(.DIR/.IMG or just .IMG)
Metal Gear Solid/Kojima Productions - .bms collection
The Crystal Dynamics quickBMS Collection

And in any case you receive an error in one of my scripts you've downloaded on this thread, contact me by PM. By doing so, you must show in detail what is causing the error in the first place, and if possible, include the file* the error has been triggering. I'll look into it.
* I advise you to upload the file on a filehoster that doesn't require an account.

EDIT: Due to the 9-URL limit, this thread has now one section.

EDIT2: Okay, so it's time to explain how I handle the updates on this board. Suppose I can do an update about some script here and there, and go to the respective post about said script so I can edit said post to replace what's currently in the attachment with a new attachment. Then I write a "detailed" description of what changed in that new, replaced attachment and after that I'm done editing that post. If you suddenly see "Not downloaded yet" out of what was an already-downloaded file, do not mistake this for a bug. That means a new version of that script has been uploaded. This is to avoid useless bumping among the effects of "hey the script has been updated with a new version with this and that feature".

With that said, I hope I was able to clear out some confusion.

_________________
Expect my username to be everywhere, whether you're using the internet or not.


Last edited by AnonBaiter on Mon Sep 25, 2017 12:23 am, edited 21 times in total.

Top
   
PostPosted: Tue Jul 26, 2016 5:46 am 
User avatar

Joined: Tue Feb 02, 2016 2:35 am
Posts: 981
Rockstar Renderware scripts

I made two separate scripts, meant to work with two separate files with different structures. I advise you to read the included .txt file because it has whatever you need to know before using these two scripts.

What the .txt forgot to state is that there's an function I commented around somewhere in these two scripts. Not that it's necessary for you to enable that function but even that isn't necessary since the developers copy-pasted these files on the PS2 version of their games just to fill out the space.

Another one is that the .txd/.dff files inside the GTA3.IMG archive on the XBOX version of both games(GTAIII, GTAVC) are compressed using some sort of lzo1x algorithm variant(lxo1x-999). If anyone has a solution to decompress these files, I'm open to any suggestion you have to offer.


Attachments:
rockstar_renderware_bms.rar [1.3 KiB]
Downloaded 92 times

_________________
Expect my username to be everywhere, whether you're using the internet or not.


Last edited by AnonBaiter on Thu Aug 25, 2016 6:47 pm, edited 1 time in total.
Top
   
PostPosted: Thu Aug 25, 2016 6:39 pm 
User avatar

Joined: Tue Feb 02, 2016 2:35 am
Posts: 981
Tomb Raider: Legend - NDS .pak

That file was quite easy to work with, since I'm still just a beginner on the field and stuff...
Keep in mind that it only works for the NDS version. It might work for the games developed by Human Soft, but none are tested so far.
So in case you find a Human Soft game that uses a similar file format then contact me in private.

(it might have a similar structure with plenty of other games out there... in any case, I'll post them either way)


Attachments:
trl_ds_pak.rar [181 Bytes]
Downloaded 72 times

_________________
Expect my username to be everywhere, whether you're using the internet or not.
Top
   
PostPosted: Wed Sep 07, 2016 5:20 am 
User avatar

Joined: Tue Feb 02, 2016 2:35 am
Posts: 981
METIN - .tar

It's the exact same script, just written for a MMORPG game. As of quickBMS' latest version, it can also extract non-english filenames.


Attachments:
metin.rar [176 Bytes]
Downloaded 73 times

_________________
Expect my username to be everywhere, whether you're using the internet or not.
Top
   
PostPosted: Sun Sep 25, 2016 12:05 am 
User avatar

Joined: Tue Feb 02, 2016 2:35 am
Posts: 981
Metal Gear Solid/Kojima Productions - .bms collection

So far the "collection" consists of these* scripts: one for Metal Gear Solid(PS1 - both the original and Integral), and the rest for Metal Gear Solid 2 and beyond(now with just one script to rule them all - mgs2_dat.bms - plus a few extra scripts for specific archives such as CODEC.DAT). Both scripts are capable of dumping the data based on a hex-string. This "collection" will get updated over time when I get through more games that Kojima had worked on.

On another note, it was my idea to have the mgs2_dat.bms script to have the files being extracted with a .sdt extension. Also, archive files with the name STAGE are not supported on these scripts because of an unknown encryption algorithm applied to the header starting with Metal Gear Solid 2.

* The XBOX version contains a splitted version of data1 and data2 archive files. The script was originally going to handle the splitted files but nothing worked out in the end. Therefore, it is necessary to concatenate the splitted files into one before using the mgs2substance_xbox_concatenatedfilesonly.bms script.

For games that Hideo Kojima didn't actually get involved(a.k.a. his role in those games were along the lines of "Producer") but was developed using the same engine nevertheless:
Zone of the Enders Z.O.E. - zone_of_the_enders.bms (included in the pack)
ANUBIS ZONE OF THE ENDERS/Zone of the Enders: The 2nd Runner - mgs2_dat.bms (included in the pack)

Changes from v5 to beyond:
- (v5) The mgs2_dat.bms script can now detect the end offset by the string "\xf0\x00\x00\x00\x10\x00\x00\x00"("\x00\x00\x00\xf0\x00\x00\x00\x10" on Metal Gear Solid The Twin Snakes, and "\xf0\x04\x00\x00\x00\x00" for just Metal Gear Solid), therefore making other scripts from the previous version look redundant. Because I deleted the .DAT files I used to work with while making the script, I need you to report your results with the mgs2_dat.bms script in this thread so that I can know if the extraction had been "succesful".
- (v6) The mgs2_dat.bms script was adjusted so that it can extract .sdt files properly(it doesn't detect the end offset by the above string anymore; this was reflected by archives that were extracted with under 200% success, as a result there were a few files that started with odd offsets).
- (v7) mgs_tts_dat.bms and mgs_dat.bms went through the same changes as above. Also, one new script(mgs2xbox_codec.bms) was added.
- (v8) A new script(mgs_tts_codec.bms) was added, alongside one change not listed here.
- (v9) A new script(mgspw_pdt.bms) was added. Said script has a function in which the extension is guessed from the sign of the file, and so far only one extension was found.
- (v10) mgs_dat.bms has been rewritten as mgs1_dat.bms. It now supports the "stage" archive(or to put it accurately, partial coverage of it), assigns the extensions to the extracted files of their respective archives, and notifies the user regarding other archives.
- (v11) mgs1_dat.bms can now fully extract STAGE.DIR... as individual files.
- (v12) Here are a few changes:
1. The handling of DEMO.DAT/VOX.DAT(MGS1) as well as anything that doesn`t contain actual archives that are DEMO.DAT/VOX.DAT/MOVIE.DAT(MGS2 and beyond) has been improved in both mgs1_dat.bms and mgs2_dat.bms scripts. No longer does sthe script depend on strings to be extracted, now it just finds the chunks through 32-bit values and then extracts them along with it. All of this has been done at the expense of speed.
2. A few unused things were added as well, alongside one that is functional but could use some more fleshing out.
- With that said, any suggestions on how to make both scripts faster because of the scripts of this new version is welcome.
- (v13) mgs2_dat.bms can now handle Metal Gear Solid The Twin Snakes, not to mention the .dmo/.vox naming on MGS1 and .sdt naming on MGS2 has been adjusted to contain less bloaty numbers. Finally, the STAGE_EXTRACT function can now extract "stage.dat" folders as individual .stg2 files(my idea). This pack now contains only four scripts, the rest of which has either deemed unnecessary to include as time goes on or being considered for revision.
- (v13.1) mgs2_dat.bms has been fixed to add support for the Demo version of Metal Gear Solid 2.
- (v13.2) mgs2_dat.bms has been fixed again to streighten extracted .stg2 files(Metal Gear Solid The Twin Snakes).
- (v14) mgs1_dat.bms and mgs2_dat.bms has now been revised. Simply put, the output file will now stop at the 0xf0 part. On previous versions, the script could not extract a file that didn't end at zero bytes so it had to extract another one along with it(Metal Gear Solid (France - Disc1) - DEMO.DAT). And last but not least, from this revision onward zone_of_the_enders.bms makes a comeback!
- (v14.1) There was a "minor", yet impactful bug that could cause mgs1_dat.bms and mgs2_dat.bms to go on forever when extracting DEMO.DAT/VOX.DAT archives.
- (v14.2) Okay, now the mgs1_dat.bms and mgs2_dat.bms scripts has been revised for real.


Attachments:
kojimaproductions_bmscollection_v14.2.rar [3.56 KiB]
Downloaded 35 times

_________________
Expect my username to be everywhere, whether you're using the internet or not.


Last edited by AnonBaiter on Sat Aug 12, 2017 6:38 pm, edited 41 times in total.
Top
   
PostPosted: Mon Oct 03, 2016 2:00 am 
User avatar

Joined: Tue Feb 02, 2016 2:35 am
Posts: 981
[ALMOST-IRRELEVANT] SDX1/SDX2 converter

Exactly what it says in the title. Only tested on Gravity Rush, so I don't know about the other games that use this format.

UPDATE(16/10/2016): The script got a new update. Changes include the refinement of AT9 header to aim accuracy over what an encoded 192kbps .at9 file would look like. See here:
Encoded .at9 file(no loops)
Code:
00000000  52 49 46 46 5C B0 09 00 57 41 56 45 66 6D 74 20  RIFF\°..WAVEfmt 
00000010  34 00 00 00 FE FF 02 00 80 BB 00 00 C0 5D 00 00  4...þÿ..€»..À]..
00000020  00 02 00 00 22 00 00 04 03 00 00 00 D2 42 E1 47  ....".......ÒBáG
00000030  BA 36 8D 4D 88 FC 61 65 4F 8C 83 6C 01 00 00 00  º6.MˆüaeOŒƒl....
00000040  FE 74 0F F0 00 00 00 00 66 61 63 74 0C 00 00 00  þt.ð....fact....
00000050  C2 5C 13 00 00 01 00 00 00 01 00 00 64 61 74 61  Â\..........data
00000060  00 B0 09 00 37 56 5F 40 98 15 73 39 32 A8 B9 64  .°..7V_@˜.s92¨¹d
To achieve that, I've made several tests with .at9 stereo encoding. Then I compared the encoded .at9 files to the .at9 files the script generated before this revision - it also involved comparing what I had of .at9 files from other games as well. That is the reason why I made this update in the first place.

In case the .sxd1/.sxd2 gets used in a game with another codec(such as anything other than 0x42), let me know.

UPDATE(12/11/2017): The script has gone through a minor fix regarding some Soul Sacrifice music file. Thanks goes to zhichuner for providing even a single sample.


Attachments:
sxd_at9.bms [3.62 KiB]
Downloaded 16 times

_________________
Expect my username to be everywhere, whether you're using the internet or not.


Last edited by AnonBaiter on Sun Nov 12, 2017 4:24 pm, edited 6 times in total.
Top
   
PostPosted: Sat Oct 22, 2016 5:43 pm 
User avatar

Joined: Tue Feb 02, 2016 2:35 am
Posts: 981
[OBSOLETE] DOOM (2016) - .mega2


Attachments:
doom2016_mega2.rar [296 Bytes]
Downloaded 76 times

_________________
Expect my username to be everywhere, whether you're using the internet or not.


Last edited by AnonBaiter on Thu May 11, 2017 6:50 pm, edited 3 times in total.
Top
   
PostPosted: Sat Oct 22, 2016 7:11 pm 
Site Admin
User avatar

Joined: Wed Jul 30, 2014 9:32 pm
Posts: 7251
As far as I remember the bms extension is accepted in the attachments, just in case you want to attach the scripts without compressing them.


Top
   
PostPosted: Sat Oct 22, 2016 7:36 pm 
User avatar

Joined: Tue Feb 02, 2016 2:35 am
Posts: 981
Ahh, I never knew that the attachment could support something beyond just the .zip/.rar extensions.

_________________
Expect my username to be everywhere, whether you're using the internet or not.


Top
   
PostPosted: Tue Nov 01, 2016 4:18 am 
User avatar

Joined: Tue Feb 02, 2016 2:35 am
Posts: 981
The Crystal Dynamics quickBMS Collection

There ya' have it, the .bms collection we've all been waitin' for!

"Are there any more games to play?"

UPDATE(13/12/2016): A modified script of tomb_raider_legend.bms(thanks goes to aluigi for the script) was added to the pack(it's now crystaldynamics_type000.bms). It has been tested through almost all versions(barring PS3 and PC) of the entirety of Crystal Dynamics' first reboot(Legend, Anniversary and Underworld).
UPDATE(20/12/2016): crystaldynamics_type000.bms is now renamed back to tomb_raider_legend.bms. This move was made to show respect for the original script author(aluigi).
UPDATE(25-26/06/2017): The pack has been given an *SPAM*: new scripts were written for Crystal Dynamics games until they entered the sixth generation(which will be covered at a later update), also a few existing ones within the pack were revised. Not included however are the scripts for the .PKG archives since they were made by Toys for Bob, whose games were also published by Crystal Dynamics. The pack has also been organized, with all of the scripts included being given proper filenames(cdat##_[gamename].bms) except for tomb_raider_legend.bms.


Attachments:
crystaldynamics_20170626.rar [5.95 KiB]
Downloaded 28 times

_________________
Expect my username to be everywhere, whether you're using the internet or not.


Last edited by AnonBaiter on Mon Jun 26, 2017 3:16 am, edited 10 times in total.
Top
   
PostPosted: Tue Nov 29, 2016 5:32 pm 
User avatar

Joined: Tue Feb 02, 2016 2:35 am
Posts: 981
Forza Motorsport - UIMusic.wmapack

This script was originally designed for the archive that is stored in the Xbox-exclusive Forza Motorsport only. Unless you manage to find an .wmapack file that is used in another game, that is.


Attachments:
forzamotorsport_wmapack.bms [320 Bytes]
Downloaded 57 times

_________________
Expect my username to be everywhere, whether you're using the internet or not.
Top
   
PostPosted: Sat Dec 03, 2016 6:10 pm 
User avatar

Joined: Tue Feb 02, 2016 2:35 am
Posts: 981
func_header_AT9.bms

Well, I've been inspired by AlphaTwentyThree's scripts so...
Basically, this script serves as a guide for adding headerless AT9 data through two functions. Provided it has the variables to call it, that is.

Here is a example(non-looped):
Code:
include "func_header_AT9.bms"

set FREQUENCY 48000
set CHANNELS 2
set OFFSET 0
set BITRATE 192

get SIZE asize
math RSIZE = SIZE
xmath TOTALSAMPLES "SIZE * FREQUENCY / CHANNELS / 60"
putarray 0 i TOTALSAMPLES
math SIZE -= OFFSET
callfunction AT9 1
So far this script only supports bitrates through 192, but later on I'll work on adding support to later bitrates(up to 504) as well as up to 8 channels if possible.

UPDATE(04/12/2016): This script can now support looping. A new function was added to reflect this.
UPDATE(13/12/2016): The RSIZE variable is now required for calling.


Attachments:
func_header_AT9.bms [6.37 KiB]
Downloaded 65 times

_________________
Expect my username to be everywhere, whether you're using the internet or not.


Last edited by AnonBaiter on Mon Jan 16, 2017 9:02 pm, edited 8 times in total.
Top
   
PostPosted: Sun Dec 04, 2016 4:39 pm 
User avatar

Joined: Tue Feb 02, 2016 2:35 am
Posts: 981
Tomb Raider Legend (Xbox 360) - .mul->.xma

This was mostly based off AlphaTwentyThree's two scripts which handles the .mul files(based on their different structures) stored in the Xbox 360 version of Deus Ex Human Revolution. Except this script can handle all .mul files within one script, even up to 8 channels. It can also work with other Xbox 360 games that were developed by Crystal Dynamics.

UPDATE(06/12/2016): A new [but minor] update to the script was made. Said update includes an naming condition if the .mul file it's about to convert contains one channel(therefore ########.mul is converted to XMA as ########.xma instead of ########_1.xma). Although for files that contains 2+ channels, the naming process is the same(########_1.xma and ########_2.xma for 2-channel .mul files and so on).
UPDATE(12/02/2017): Due to vgmstream`s XMA1/XMA2 support, xma_test/xma_parse is no longer a dependency. As far as the audio goes, the difference between an output .xma file from the previous update to this update is minimal.


Attachments:
tomb_raider_legend_mul_xbox360.bms [5.27 KiB]
Downloaded 44 times

_________________
Expect my username to be everywhere, whether you're using the internet or not.


Last edited by AnonBaiter on Mon Feb 13, 2017 5:57 am, edited 11 times in total.
Top
   
PostPosted: Sun Dec 04, 2016 6:12 pm 
User avatar

Joined: Tue Feb 02, 2016 2:35 am
Posts: 981
Crystal Dynamics .mul sorter

This script is designed for use in .mul files(or EMFF as vgmstream used to call it) used by Crystal Dynamics(although one of their games might use different engines, as is the case of Mad Dash Racing, Blood Omen 2, Whiplash and Project Snowblind - as a result, the format used in these games tend to differ) from the sixth-generation era and beyond.


Attachments:
crystaldynamics_mul_sorter.bms [436 Bytes]
Downloaded 65 times

_________________
Expect my username to be everywhere, whether you're using the internet or not.


Last edited by AnonBaiter on Thu Jan 19, 2017 10:53 pm, edited 2 times in total.
Top
   
PostPosted: Mon Dec 12, 2016 7:51 pm 
User avatar

Joined: Tue Feb 02, 2016 2:35 am
Posts: 981
func_header_AT3.bms/func_header_AT3plus.bms

Look, I know this name is similar to the one used in one of AlphaTwentyThree's scripts. The only difference, however, is that there are now two functions: one for non-looped files, and one for looped files. There's also a AT3plus header script as well!
It serves the same purpose as func_header_AT9.bms. It only needs the variables to call it.

Here is an example(non-looped):
Code:
include "func_header_AT3.bms"

set FREQUENCY 44100
set CHANNELS 2
set OFFSET 0
set BITRATE 132

get SIZE asize
math SIZE -= OFFSET
callfunction AT3 1
UPDATE(12/12/2016): Fixed an bug in which func_header_AT3plus.bms would stop working.


Attachments:
func_header_AT3plus.bms [6.57 KiB]
Downloaded 60 times
func_header_AT3.bms [3.46 KiB]
Downloaded 63 times

_________________
Expect my username to be everywhere, whether you're using the internet or not.
Top
   
PostPosted: Tue Dec 13, 2016 3:22 am 
User avatar

Joined: Tue Feb 02, 2016 2:35 am
Posts: 981
[ALMOST-IRRELEVANT] Metal Gear Solid HD Collection (Vita) - .9tav->.at9

The first of many scripts to depend on the func_header_AT9.bms script. These files are stored within .sdt files, which can be demuxed with sdt_demux.py(written by Nisto). You can find it here.
Do keep in mind though that this works only with "mgs2" files. I haven't found a way to work with "mgs3" .9tav files yet, but for some of these files(without the MTAF header) they should "work" with the script.

UPDATE(17/12/2016): The script sees the addition of DUMMY6 and DUMMY7 variables, and it assigns the BITRATE and CHANNELS variables for the function depending on the value. An message will be shown when the .9tav file in question has a different DUMMY6 and DUMMY7 value from the ones assigned.


Attachments:
mgs_hdc_9tav.bms [608 Bytes]
Downloaded 63 times

_________________
Expect my username to be everywhere, whether you're using the internet or not.


Last edited by AnonBaiter on Mon Sep 25, 2017 12:25 am, edited 2 times in total.
Top
   
PostPosted: Tue Dec 13, 2016 7:06 pm 
User avatar

Joined: Tue Feb 02, 2016 2:35 am
Posts: 981
[ALMOST-IRRELEVANT] Metal Gear Solid HD Collection (PS3) - .msf->.genh

This .msf format was used in... you guessed it, Metal Gear Solid HD Collection.
Anyway, this .msf format uses an ADPCM codec which is signed as 0x1 despite being reserved for 16-bit PCM codec audio... or maybe I'm wrong.
Sorry if the converted output file is a few samples ahead.


Attachments:
mgs_hdc_ps3_msf.bms [1.17 KiB]
Downloaded 63 times

_________________
Expect my username to be everywhere, whether you're using the internet or not.


Last edited by AnonBaiter on Mon Sep 25, 2017 12:26 am, edited 1 time in total.
Top
   
PostPosted: Mon Dec 19, 2016 5:40 pm 
User avatar

Joined: Tue Feb 02, 2016 2:35 am
Posts: 981
GENH extractor


Attachments:
genh_extractor.bms [440 Bytes]
Downloaded 66 times

_________________
Expect my username to be everywhere, whether you're using the internet or not.


Last edited by AnonBaiter on Sat Apr 01, 2017 3:35 am, edited 1 time in total.
Top
   
PostPosted: Sat Dec 24, 2016 4:18 am 
User avatar

Joined: Tue Feb 02, 2016 2:35 am
Posts: 981
[OBSOLETE] Redump multi-track .bin audio tracks - RIFF header adder

If you're stuck by odd formats Redump uses for their releases, you can just use vgmtoolbox(Misc. Tools -> Extraction Tools -> Generic -> ISO/Archive Extractor then drag the .cue/.gdi file - hoping the tool doesn't crash just by reading these files anyway).
However, if vgmtoolbox can't extract Redbook Audio, then this script can do what vgmtoolbox can't!

About the script, all it does is add RIFF headers on Redump's .bin audio files as .wav files for playback on all players.

IsoBuster can also handle Redbook Audio, but consider this as an alternative in case your Redump ISO doesn't work with it.


Attachments:
redump_audiobin.bms [1.46 KiB]
Downloaded 57 times

_________________
Expect my username to be everywhere, whether you're using the internet or not.


Last edited by AnonBaiter on Thu May 11, 2017 6:51 pm, edited 2 times in total.
Top
   
PostPosted: Sun Feb 12, 2017 12:34 am 
User avatar

Joined: Tue Feb 02, 2016 2:35 am
Posts: 981
Okay, so I finally got a new computer. It includes Linux(Debian, version Wheezy) as its installed OS, but if I want to keep writing BMS scripts for yet "unexplored" formats I'll use VirtualBox.
It's going to take a while though, as WIndows XP does not detect the external HDD from the USB, and I'll have to get through more ISOs from various Windows systems.

I just wanted to say I haven't given up on it yet!

_________________
Expect my username to be everywhere, whether you're using the internet or not.


Top
   
Display posts from previous:  Sort by  
Post new topic  Reply to topic  [ 71 posts ]  Go to page 1 2 3 4 Next

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:
cron
Powered by phpBB® Forum Software © phpBB Limited