Important information: this site is currently scheduled to go offline indefinitely by end of the year.

watch dogs 2 .dat .fat archive?

The Original Forum. Game archives, full of resources. How to open them? Get help here.
guest12345
n00b
Posts: 11
Joined: Sat Dec 17, 2016 6:25 pm

Re: watch dogs 2 .dat .fat archive?

Post by guest12345 »

has anybody been able to figure out how to model swap marcus with the multiplayer character models yet
User avatar
MrWasdennnoch
ultra-n00b
Posts: 8
Joined: Tue May 30, 2017 4:44 pm
Has thanked: 1 time
Been thanked: 2 times

Re: watch dogs 2 .dat .fat archive?

Post by MrWasdennnoch »

Since it looks like the tool to automatically parse the hex dump and create class definitions for the lib files hasn't been released yet (if it even exists) I decided to try my luck. So far I can generate definitions for a single file, merging multiple files to create a full definition for a library shouldn't be hard to implement as well. The only thing I'm stuck on right now is how to detect duplicate patterns and merge them into one single object Nevermind, it's actually pretty straight-forward. For example, the ShopComponentSettings roughly look like this:

Removed example because irrelevent now

And the gibbed tools automatically detect if that repeats. Now I have to find a way to detect that as well Done.


I also manually created definitions for the libraries I found interesting or worked with so far, namely BoudarySettingsDB, Helicopter, ItemCategory, ItemInventoryLists, Items, ItemShopProperties, ShopComponentSettings, TextureDB, UIColorPaletteSetting, UIMenuPageDB (hell that was annoying), VehicleSpawnInfo, Weapon and WeatherPreset. I attached them below (the whole gibbed project folder since it also for some reason directly reads some WD files so I fixed the paths for WD2).
projects.zip
Someone already made a Car On Demand mod in December, was that ever released? I haven't seen that yet. I also added the helicopter to COD (as someone else already did as well) and will also add the 2 other heli types and maybe some other interesting new stuff. There have been questions about where the vehicle archetype info is stored, I think it's in the entitylibrary_rt.fcb (including camera references) but unfortunately there is no tool to decompile that one yet (Gibbed tools fail). I also found something that could be a list of default unlocked items (iteminventorylists.lib, Player.StartupKit.xml) but I'm not sure about that.


EDIT: So the program is pretty much done now and it can generate definitions for all libraries; there is a little problem though: Most of them don't automatically work. In many libraries a value in a file has a different value type than it should have which lets Gibbed tools crash so I have to manually adjust individual types to fix the crashes. That'll be a fun time. I'm half-tempted to make another program for that.

EDIT2: Does anyone know where the vehicle pain job textures get referenced in the libraries? The TextureDB contains the shop icons but not the actual vehicle textures and I couldn't find anything with Notepad++ file search over all libs.
You do not have the required permissions to view the files attached to this post.
mostafa0017
ultra-n00b
Posts: 4
Joined: Sun Jun 11, 2017 8:33 pm
Has thanked: 4 times

Re: watch dogs 2 .dat .fat archive?

Post by mostafa0017 »

Hey does anyone know where can I find the xml file responsible for sound files located in san_francisco_sound\soundbinary they are numbered like this "246233514" but each number is supposed to be paired with a real name in a file somewhere but I can't find that file I am trying to change all of the music files including thier names and possibly there thumbnails too in game media player but recognizing music by their length have been very tedious so can anyone direct me to this file If it exists ?
User avatar
MrWasdennnoch
ultra-n00b
Posts: 8
Joined: Tue May 30, 2017 4:44 pm
Has thanked: 1 time
Been thanked: 2 times

Re: watch dogs 2 .dat .fat archive?

Post by MrWasdennnoch »

mostafa0017 wrote:Hey does anyone know where can I find the xml file responsible for sound files located in san_francisco_sound\soundbinary they are numbered like this "246233514" but each number is supposed to be paired with a real name in a file somewhere but I can't find that file I am trying to change all of the music files including thier names and possibly there thumbnails too in game media player but recognizing music by their length have been very tedious so can anyone direct me to this file If it exists ?
Seems like the musiclibrary.lib has the things you are looking for, it contains items with the path to the soundbinary, album art, genre, radio station and song name/artist/album.
mostafa0017
ultra-n00b
Posts: 4
Joined: Sun Jun 11, 2017 8:33 pm
Has thanked: 4 times

Re: watch dogs 2 .dat .fat archive?

Post by mostafa0017 »

MrWasdennnoch wrote:
mostafa0017 wrote:Hey does anyone know where can I find the xml file responsible for sound files located in san_francisco_sound\soundbinary they are numbered like this "246233514" but each number is supposed to be paired with a real name in a file somewhere but I can't find that file I am trying to change all of the music files including thier names and possibly there thumbnails too in game media player but recognizing music by their length have been very tedious so can anyone direct me to this file If it exists ?
Seems like the musiclibrary.lib has the things you are looking for, it contains items with the path to the soundbinary, album art, genre, radio station and song name/artist/album.
Hey man sorry to bug you again but do you know how to get any of the values located in these xml files to be the same as (refer to) the corresponding .wem file ??
for example the file RADIO_FINAL_Bay_City_Pop.Major_Lazer.xml located in musiclibrary.lib it's corresponding .wem files are 133118895.wem and 325889386.wem one for 1 channel-124 kb/s and the other is 2 channels-230 kb/s but I can't get the relation between any of the values located in that xml file to the 2 .wem files i.e. how can I convert the values in the xml file to be more like the wem names or am I looking in the wrong place here ?? the xml contains hashes which could be translated nicely here https://gist.githubusercontent.com/anon ... 2_dump.txt and BinHexs which is supposed to refer to the wem files but I can't for the life of me figure out who do they refer, sorry I am a big noob in this area :D
in this post viewtopic.php?f=10&t=15567&p=126135&hil ... ex#p126135 the binhexs are converted using ConvertBinaryObject but I can't understand what to do to get them converted into readable letters instead of the BinHexs

after further reading here http://farcrymods.freeforums.net/thread ... ollTo=3050 I understood that I need to specify an object definition in this line "Gibbed.Disrupt.ConvertBinaryObject.exe -b=".ark.fcb" <inputfilename>.FCB <inputfilename>.XML" but I don't know which definition to use ?
User avatar
MrWasdennnoch
ultra-n00b
Posts: 8
Joined: Tue May 30, 2017 4:44 pm
Has thanked: 1 time
Been thanked: 2 times

Re: watch dogs 2 .dat .fat archive?

Post by MrWasdennnoch »

mostafa0017 wrote:Hey man sorry to bug you again but do you know how to get any of the values located in these xml files to be the same as (refer to) the corresponding .wem file ??
for example the file RADIO_FINAL_Bay_City_Pop.Major_Lazer.xml located in musiclibrary.lib it's corresponding .wem files are 133118895.wem and 325889386.wem one for 1 channel-124 kb/s and the other is 2 channels-230 kb/s but I can't get the relation between any of the values located in that xml file to the 2 .wem files i.e. how can I convert the values in the xml file to be more like the wem names or am I looking in the wrong place here ?? the xml contains hashes which could be translated nicely here https://gist.githubusercontent.com/anon ... 2_dump.txt and BinHexs which is supposed to refer to the wem files but I can't for the life of me figure out who do they refer, sorry I am a big noob in this area :D
in this post viewtopic.php?f=10&t=15567&p=126135&hil ... ex#p126135 the binhexs are converted using ConvertBinaryObject but I can't understand what to do to get them converted into readable letters instead of the BinHexs

after further reading here http://farcrymods.freeforums.net/thread ... ollTo=3050 I understood that I need to specify an object definition in this line "Gibbed.Disrupt.ConvertBinaryObject.exe -b=".ark.fcb" <inputfilename>.FCB <inputfilename>.XML" but I don't know which definition to use ?
You have to add the file definitions in the projects/Watch Dogs/binary objects/ folder, you don't have to do anything in the command line. I just created them for you ;)
MusicLibraryDefinition.zip
You can now easily see which sound files the item links to (although I haven't found any channel difference entries that you mentioned).
The BinHex fields are all basically IDs that mostly point to other libraries, for example the album art field links to an item in the TextureDB.lib (I attached definitions for that in my previous post). If you find an entry still in BinHex: If the hex is rather long it's a string and you can convert it online (for example with http://www.rapidtables.com/convert/numb ... -ascii.htm). If the values are only 00 and 01 it's a Boolean. You can also see many types in the field name; if it's "bLegacy" it's a boolean, "fAccelleration" is a Float, "colorSomething" and "vec3something" are Vector3. If you have a look at the definitions you can easily see how they work.
You do not have the required permissions to view the files attached to this post.
redcomet
advanced
Posts: 40
Joined: Sat Dec 03, 2016 4:35 am
Has thanked: 7 times
Been thanked: 5 times

Re: watch dogs 2 .dat .fat archive?

Post by redcomet »

MrWasdennnoch wrote:Since it looks like the tool to automatically parse the hex dump and create class definitions for the lib files hasn't been released yet (if it even exists) I decided to try my luck. So far I can generate definitions for a single file, merging multiple files to create a full definition for a library shouldn't be hard to implement as well. The only thing I'm stuck on right now is how to detect duplicate patterns and merge them into one single object Nevermind, it's actually pretty straight-forward. For example, the ShopComponentSettings roughly look like this:

Removed example because irrelevent now

And the gibbed tools automatically detect if that repeats. Now I have to find a way to detect that as well Done.


I also manually created definitions for the libraries I found interesting or worked with so far, namely BoudarySettingsDB, Helicopter, ItemCategory, ItemInventoryLists, Items, ItemShopProperties, ShopComponentSettings, TextureDB, UIColorPaletteSetting, UIMenuPageDB (hell that was annoying), VehicleSpawnInfo, Weapon and WeatherPreset. I attached them below (the whole gibbed project folder since it also for some reason directly reads some WD files so I fixed the paths for WD2).
projects.zip
Someone already made a Car On Demand mod in December, was that ever released? I haven't seen that yet. I also added the helicopter to COD (as someone else already did as well) and will also add the 2 other heli types and maybe some other interesting new stuff. There have been questions about where the vehicle archetype info is stored, I think it's in the entitylibrary_rt.fcb (including camera references) but unfortunately there is no tool to decompile that one yet (Gibbed tools fail). I also found something that could be a list of default unlocked items (iteminventorylists.lib, Player.StartupKit.xml) but I'm not sure about that.


EDIT: So the program is pretty much done now and it can generate definitions for all libraries; there is a little problem though: Most of them don't automatically work. In many libraries a value in a file has a different value type than it should have which lets Gibbed tools crash so I have to manually adjust individual types to fix the crashes. That'll be a fun time. I'm half-tempted to make another program for that.

EDIT2: Does anyone know where the vehicle pain job textures get referenced in the libraries? The TextureDB contains the shop icons but not the actual vehicle textures and I couldn't find anything with Notepad++ file search over all libs.
so far as i know,the car on demand mod hasn't been released yet,
mostafa0017
ultra-n00b
Posts: 4
Joined: Sun Jun 11, 2017 8:33 pm
Has thanked: 4 times

Re: watch dogs 2 .dat .fat archive?

Post by mostafa0017 »

Thank you so much for the definitions I use razor's data conversion utility to convert long BinHexs to strings and after using your definitions most of the hashs and the BinHexs got converted except for a few but when I tried to convert on of them using razor's tool I got gibberish for example this line "<field name="texturedbobjectAlbumArtTexture" type="BinHex">9DD19D4207000080</field>" located in "RADIO_FINAL_Bay_City_Pop.Major_Lazer.xml" before using your definitions the field name was in a hash form but now it's converted however If I tried to convert the "9DD19D4207000080" I get "�ѝB" as a string any guidance ?
User avatar
MrWasdennnoch
ultra-n00b
Posts: 8
Joined: Tue May 30, 2017 4:44 pm
Has thanked: 1 time
Been thanked: 2 times

Re: watch dogs 2 .dat .fat archive?

Post by MrWasdennnoch »

mostafa0017 wrote:Thank you so much for the definitions I use razor's data conversion utility to convert long BinHexs to strings and after using your definitions most of the hashs and the BinHexs got converted except for a few but when I tried to convert on of them using razor's tool I got gibberish for example this line "<field name="texturedbobjectAlbumArtTexture" type="BinHex">9DD19D4207000080</field>" located in "RADIO_FINAL_Bay_City_Pop.Major_Lazer.xml" before using your definitions the field name was in a hash form but now it's converted however If I tried to convert the "9DD19D4207000080" I get "�ѝB" as a string any guidance ?
That's because it's not a String; fields like this with 8 bytes are (I think) of the type UInt32. They're just IDs pointing to another lib file.
mostafa0017
ultra-n00b
Posts: 4
Joined: Sun Jun 11, 2017 8:33 pm
Has thanked: 4 times

Re: watch dogs 2 .dat .fat archive?

Post by mostafa0017 »

But they are too long to be UInt32 but maybe they are UInt64 ?? but still though "9DD19D4207000080" converts to "9223372068037185949" in UInt64
User avatar
CobraGamer
advanced
Posts: 61
Joined: Sat Apr 16, 2016 7:30 am
Has thanked: 9 times
Been thanked: 11 times

Re: watch dogs 2 .dat .fat archive?

Post by CobraGamer »

So entitylibrary.fcb is very interesting as every mission script in the game refers to the entities which I guess are stored in entitylibrary.fcb. Being able to extract that file would definitely help us in terms of making the spider drone available in free roam without editing the mission scripts.
Last edited by CobraGamer on Fri Jun 16, 2017 4:05 pm, edited 1 time in total.
User avatar
MrWasdennnoch
ultra-n00b
Posts: 8
Joined: Tue May 30, 2017 4:44 pm
Has thanked: 1 time
Been thanked: 2 times

Re: watch dogs 2 .dat .fat archive?

Post by MrWasdennnoch »

mostafa0017 wrote:But they are too long to be UInt32 but maybe they are UInt64 ?? but still though "9DD19D4207000080" converts to "9223372068037185949" in UInt64
Ah yes, UInt64 then. 9223372068037185949 seems about right.
Bluebolt
ultra-n00b
Posts: 1
Joined: Fri Jun 30, 2017 2:19 pm

Re: watch dogs 2 .dat .fat archive?

Post by Bluebolt »

How can find the models?
User avatar
MrWasdennnoch
ultra-n00b
Posts: 8
Joined: Tue May 30, 2017 4:44 pm
Has thanked: 1 time
Been thanked: 2 times

Re: watch dogs 2 .dat .fat archive?

Post by MrWasdennnoch »

Bad news. Update 1.16 renders the helicopter on demand mod useless. You can't enter a helicopter anymore. Not through hijacking one, not through ordering one via car on demand. This is a sad day. Let's hope the entitylibrary has a flag for it, assuming we get a tool to decompile it soon.
User avatar
CobraGamer
advanced
Posts: 61
Joined: Sat Apr 16, 2016 7:30 am
Has thanked: 9 times
Been thanked: 11 times

Re: watch dogs 2 .dat .fat archive?

Post by CobraGamer »

The lack of response shows that there is no interest in modding this game anymore. We won't get any tool.
Post Reply