Atvaark / BinderTool

Dark Souls II / Dark Souls III / Bloodborne / Elden Ring bdt, bhd, bnd, dcx, tpf, fmg and param unpacking tool
MIT License
310 stars 50 forks source link

Dark Souls 2: Scholar of the First Sin unpacking #25

Closed HunterAP23 closed 6 years ago

HunterAP23 commented 7 years ago

So v0.3 works with unpacking the bdt/bhd files and then some of the *bnd files get unpacked perfectly as well, but there are either some files that are seemingly missing or can't be unpacked.

I attached a zip files containing two files: AS_1000_M.bnd unpacks as intended, whereas c1062.texbnd has the data in a weird order (there are even two sections where "BND4" appear in hex in that one file alone).

If you have the time, could you look into this? I can provide you with any archive file sample (BDT, BHD, BND, etc.) if need be. sotfs.zip

Jgwman commented 6 years ago

I, too, seem to be encountering this issue, and would appreciate a response if possible. Am trying to unpack the *.msb files from SotFS, and while certain files are successfully unpacked, it does not seem to work completely @Atvaark

Atvaark commented 6 years ago

c1062.texbnd isn't a valid archive file because it doesn't start with BND4. You're going to have to fix that file by splitting it before BND4 (remove the start until BND4 and copy everything after (and including) the second BND4 in another file.)

I can't debug this issue with the files you uploaded.

Jgwman commented 6 years ago

My issue is less to the specific file that Hunter was having issues with, and is more of a question regarding correct unpacking process (I did not see a better way to contact you than through this Git's issue section; if you'd prefer I ask somewhere else, please let me know where). I am attempting to unpack the *.msb files from the game data, and I cannot find where they are stored, and based on this issue being opened, it seemed to be an issue with BinderTool unpacking SotFS incorrectly (though it's quite possibly just a mistake by me).

Essentially, referring to your Dark Souls 2 FileFormats Git (https://github.com/Atvaark/DarkSoulsII.FileFormats), what archives did you have to unpack to obtain Majula's *.msb file (m10_04_00_00.msb), so that I can attempt to reproduce the process with SotFS? @Atvaark

HunterAP23 commented 6 years ago

Since those texbnd files came from GameDataEbl.bdt / GameDataEbl.bhd, I zipped those up with the GameDataEblCode.pem and attached it here. The issue I mentioned occurs regardless of what version / dictionary file combination I use. (The file is \~12GB and is too big for Github, so [here's a link to on it]() my Mega account)

Update: Removed the Mega link to prevent DMCA takedowns.

Atvaark commented 6 years ago

I think I found the issue when unpacking SotFS files. Check out if the patched version v0.3.1 works with the files you wan to unpack.

@Jgwman the msb files should be unpacked as .MSB now, even if they aren't in the dictionary.

Jgwman commented 6 years ago

Edit: @Atvaark I should probably mention that I'm still only finding 6 *.msb files (based on the WorldMapList I would expect at least 38), and their naming convention is not "mxx_xx_00_00.msb", but rather "xxxxxxxxxx_GameData.msb", and I'm not sure whether this is my mistake or not.

Atvaark commented 6 years ago

Have you tried unpacking the other bdt/bnd files if they contain the other msb files?

The file names aren't there because the dictionary is build for vanilla DS2. Nobody created the dictionary for SotFS.

Jgwman commented 6 years ago

@Atvaark Right, my mistake on the names.

I have unpacked the other primary archives, as well as quite a few other bdt/bnd files I suspected might be relevant, with no success so far. I would have expected to find something in LqMapEbl.bdt, but that unpacks into 56 more .bdt files and 56 more .bhd files - unfortunately, none of them actually match, so the *.bdt's can't be unpacked.

If you happen to remember where you unpacked them from for your vanilla file formats archive, that'd be a good starting place, as I don't suspect I have found the Majula .msb yet based on the file sizes of the .msb's I have.

Atvaark commented 6 years ago

The .msb files should be here:

GameDataEbl\map\m10_02_00_00\m10_02_00_00.msb
GameDataEbl\map\m10_04_00_00\m10_04_00_00.msb
GameDataEbl\map\m10_10_00_00\m10_10_00_00.msb
GameDataEbl\map\m10_14_00_00\m10_14_00_00.msb
GameDataEbl\map\m10_15_00_00\m10_15_00_00.msb
GameDataEbl\map\m10_16_00_00\m10_16_00_00.msb
GameDataEbl\map\m10_17_00_00\m10_17_00_00.msb
GameDataEbl\map\m10_18_00_00\m10_18_00_00.msb
GameDataEbl\map\m10_19_00_00\m10_19_00_00.msb
GameDataEbl\map\m10_23_00_00\m10_23_00_00.msb
GameDataEbl\map\m10_25_00_00\m10_25_00_00.msb
GameDataEbl\map\m10_27_00_00\m10_27_00_00.msb
GameDataEbl\map\m10_29_00_00\m10_29_00_00.msb
GameDataEbl\map\m10_30_00_00\m10_30_00_00.msb
GameDataEbl\map\m10_31_00_00\m10_31_00_00.msb
GameDataEbl\map\m10_32_00_00\m10_32_00_00.msb
GameDataEbl\map\m10_33_00_00\m10_33_00_00.msb
GameDataEbl\map\m10_34_00_00\m10_34_00_00.msb
GameDataEbl\map\m20_10_00_00\m20_10_00_00.msb
GameDataEbl\map\m20_11_00_00\m20_11_00_00.msb
GameDataEbl\map\m20_21_00_00\m20_21_00_00.msb
GameDataEbl\map\m20_24_00_00\m20_24_00_00.msb
GameDataEbl\map\m20_26_00_00\m20_26_00_00.msb
GameDataEbl\map\m40_03_00_00\m40_03_00_00.msb
GameDataEbl\map\m50_35_00_00\m50_35_00_00.msb
GameDataEbl\map\m50_36_00_00\m50_36_00_00.msb
GameDataEbl\map\m50_37_00_00\m50_37_00_00.msb
GameDataEbl\map\m50_38_00_00\m50_38_00_00.msb

They weren't in the file name dictionary.

Jgwman commented 6 years ago

@Atvaark Sorry to keep asking questions, but should the "map" (lowercase) directory appear just by unpacking the GameDataEbl.bdt? I'm only seeing "Map" (uppercase), which only has the WorldMapList.

Atvaark commented 6 years ago

Try if the latest CI version can unpack your map directory: https://ci.appveyor.com/project/Atvaark/bindertool/build/artifacts

Jgwman commented 6 years ago

Indeed it does. Massive thanks.

HunterAP23 commented 6 years ago

@Atvaark Sorry I haven't posted about my testing, but the new version that you posted works perfectly on the SotFS archives, you're a life saver.

Atvaark commented 6 years ago

Thanks for the feedback. I created a new release that supports DSII, DSII SotFS and DSII files in one version. Please report if you have any more issues (that isn't related to missing file names).