DJ Hero 2 .dat files impossible to extract

Extraction and unpacking of game archives and compression, encryption, obfuscation, decoding of unknown files
DJ896
Posts: 3
Joined: Thu Aug 26, 2021 10:53 am

DJ Hero 2 .dat files impossible to extract

Post by DJ896 »

My goal is to find the audio files (the complete musics) of the DJ Hero 2 game

I know these files are supposed to be .FSB files which can be converted to .wav
The problem is, I can't find the correct files.
This is what I did:
I get a 3.6 GB of PS3 DJ Hero 2 game files in a .rar file.
By extracting it and looking in the output, we find the main file DISC0.IMG of 3.5 GB.
Thanks to QuickBMS and the djhero2.bms script we extract the files from DISC0.IMG (92% extracted which is great apparently)
Here is the list of all extensions found (with the total size of all the files together) :
.fsb: sound files but only contain extracts or effects like 1 hour of screaming crowd... not what I'm looking for (506MB)
.fsa: contains all the rest of the game files (texture, models, etc.) except the sound files (decrypted using QuickBMS and djhero_far.bms) (1,47 GB)
.xml: files of very small sizes therefore surely not containing sound, seems to contain directories (1,37 MB)
.fre: files of very small sizes therefore surely not containing sound (75 bytes)
.str: files of very small sizes therefore probably not containing sound, seems to contains all the texts of the game (128 Kb)
.dat: large files (several MB) surely contain the sound files, no idea how to extract them (1,27 GB)

and that's the point, I'm pretty sure the sound files are in the .dat files but I don't know how to extract them.

an interesting thing is that initially I could not extract the .fsa files and using QuickBMS and djhero2.bms as for DISC0.IMG I realized that the error message said it was impossible to extract with this script because the .fsa files were FSAR files
and indeed by searching on the site I found djhero_far.bms which extracts the contents of .fsa files.
But regarding .dat, QuickBMS bug and cannot find the file type (it puts a sequence of random characters)
So I don't know how to extract them.
Moreover I have the impression that it is just raw data.

I opened two different files .dat with a hexadecimal editor and in both it finds "FSB" but it may be a coincidence, but mostly almost 75% of the files are composed of a chain of " *vöÎìŒJ– " which follow each other (translated from hexadecimal to ANSI ASCII)

Last little thing, the size of the .dat files goes from 32 bytes to 20,2 MB.

So if anyone know how to extract those 1,27 GB of .dat files, I would be grateful

NOTE : I put one of the .dat file as an attachment if ever (less than 5 MB because it's the only size possible). Apparently in this one there is no " *vöÎìŒJ– "
DJ896
Posts: 3
Joined: Thu Aug 26, 2021 10:53 am

Re: DJ Hero 2 .dat files impossible to extract

Post by DJ896 »

ok so i found a solution for the .dat, but i still didn't get to do what i wanted

before starting, I prefer to clarify that I will explain a lot of things that may be trivial for some of you because I am sure that some people who do not know anything about it will perhaps fall on it one day, and I prefer it to be understandable because so far it has not been easy for me who does not know anything either

I started looking for information on the internet again when, on returning to Luigi Auriemma's site, I found FSB files extractor.
So I tried to use one of my .dat with that and it gave me an error, telling me that the file might be encrypted (with what we saw with the hexadecimal editor it looked like 'be the case).
And that's when I remembered something I had read on a forum where they were talking about a password :
http://old.zenhax.com/extracting-wav-fi ... 81-90.html
"REM That FSB file can be opened with fsbext using password nos71RiT"
So I tried opening the file with the CMD with this code with this command line (just need to replace the path) :
path_for_fsbext.exe -d path_for_output_folder -e nos71RiT 0 path_for_one_of_the_file
(I used this https://github.com/gdawg/fsbext)
And it worked !
I had an FSB file which I put in vgmstream and I had a .wav file containing multiple tracks (this is the best possible quality I believe, at first I was only using FSB files extractor but it gave only a stereo .mp3 file)

So I gathered all the .dat files into one folder and typed a command to put each of the .dat files into FSB files extractor :
for %i in (path_for_the_.dat_files\*.dat) do path_for_fsbext.exe -d path_for_output_folder -e nos71RiT 0 %i

And now the problems start again... :
I believe that all the .dat files have been changed to .fsb, the problem is that I have some files with a few MB and other 80% of files are 0 bytes... which is weird
besides when I used FSB files extractor with the .dat, I had a lot of error saying "the password must not be correct"

then I typed a command to put each of the .fsb files into vgmstream, again in the CMD :
for %i in (path_for_the_.fsb_files\*.fsb) do path_for_the_vgmstream_folder\vgmstream-win\test.exe %i

lot of errors again, but i got some of the .wav files

problem is that a lot are missing, and I know it because I can't find the song I wanted

there are several times the music "Good Times" by Chic, in different versions it seems, but still it appears too often for me

By the way, my final goal is to get "Human After All" by Daft Punk

I think there has been a problem when extracting the .dat files to .fsb
(I would say I managed to convert only 10% of the .fsb files to .wav, because a lot are 0 bytes...)
I thought about this quote on https://github.com/gdawg/fsbext :
"use EVER an empty folder where placing the extracted files because this
tool adds a sequential number if a file with same name already exists,
this is done because filenames in FSB archives are truncated at 30 chars."
but I don't think this is what hapen (well i'm not sure)

If anyone has any idea how I could get what i want, I would be really grateful
MexicanPB
Posts: 15
Joined: Tue Apr 07, 2020 5:44 am

Re: DJ Hero 2 .dat files impossible to extract

Post by MexicanPB »

The music isn't in the dat files at all. The music is in a .fsb format as you discover but you are doing it wrong

Here is a guide from the DJ Hero Fan Server that can help

https://docs.google.com/document/d/1tLc ... o0-xA/edit
dannyrom288
Posts: 2
Joined: Thu Aug 26, 2021 10:52 pm

Re: DJ Hero 2 .dat files impossible to extract

Post by dannyrom288 »

The reason there's 12 or so occurrences of Chic's "Good Times" is bc they're from the game's tutorial section (Taps, Continuous Scratching, Euphoria, etc)
dannyrom288
Posts: 2
Joined: Thu Aug 26, 2021 10:52 pm

Re: DJ Hero 2 .dat files impossible to extract

Post by dannyrom288 »

Anways, the DJH2's QuickBMS script doesn't do a good job at extracting the DJH2 files from DISC0.IMG (It doesn't even support proper folder directory extraction)

You'll want to use ArchiveExplorer by maxton, as it is confirmed to support DJH2's FSG-FILE-SYSTEM format
https://github.com/maxton/GameArchives
(The game's TRACKLISTING.XML will give you a better idea what mix you want to look for and what FSB directory you'll want to extract)

You're on the right track with vgmstream tho, as that's a good tool for extracting the audio from the game's .FSB files
DJ896
Posts: 3
Joined: Thu Aug 26, 2021 10:53 am

Re: DJ Hero 2 .dat files impossible to extract

Post by DJ896 »

Well ok so finally I succeeded alone lol !
Thank you for your messages I had not seen them before ending this unfortunately.
I managed to find the music I wanted and it was where I said in a .dat file.
I explain a bit how I have done this :
Actually I don't really know.
Basically the problem I had is that when converting the .dat files to .fsb, I had lots of 0 byte .fsb files
and indeed many .dat files are only a few bytes long (the smallest is 32 bytes), so they shouldn't contain much.
So I decided to keep only the .dat files containing something (by gradually checking certain files by increasing each time the size: 32 bytes, 1000, then 1MB).
So I copied all the .dat files from the first one which is 1MB (chosen because I checked that there is something in it, and it's the first littlest .dat file to contain something) up to the largest file in size which is 20,2MB, I pasted them to a folder and I typed the following command into the CMD:
for %i in (path_for_the_folder\*. dat) do path_for\fsbext\fsbext.exe -d path_for_the_output_folder -e nos71RiT 1%i
Maybe it was the fact that I used the -e command with algorithm 1 that was a game changer and I didn't care, or maybe it's just the fact that it could not process all the files before because there were so many.
Then I selected all the .fsb files created in the output folder and dragged them into the vgmstream test.exe file, some didn't work but 90% worked.
I listened to all the files until I found it (luckily it was at the beginning) for "Human After All" by Daft Punk it was 00000000000003a0.dat of 12.1 Mb.
So I was able to recover a multichannel .wav file.
Successful project.