Jump to content

UABE - Asset Bundle Extractor


DerPopo

Recommended Posts

wasnt that already known atleast its the same for the loadscrees and menu screen.

 

You are talking about the texture issue in v1.7 where it needed to be flipped vertically and the RGBA channels swapped. He fixed that problem in v1.8 and it is no longer an issue. He even mentioned it in his updated post:

 

Fixed exported texture's direction (converting Unity's 'bottom to top' to 'top to bottom')

 

If you use v1.8 or v1.8b to export one of the textures that had an issue before (e.g. loading screen, pimps logo or UI atlas) then it now exports correctly. You can also tell the mesh textures are correct as anything with text now reads correctly (e.g. the badge on the fat zombie cop reads "7D2D Chief Huenink Police").

 

7DtD-Fat-Zombie-Cop-Badge.png

 

There are two new problems that I am talking about in my posts above:

 

1) UVs need to be flipped/mirrored vertically (so it is the same problem that the textures had where Unity stores it bottom to top)

2) UVs are not correct in most of the rigged meshes (they are a large top or side plane projection instead of being laid out in the 0 to 1 space)

Link to comment
Share on other sites

I noticed that the UV channels sometimes have stream set to 1 and offset set to 0. In case of an example mesh (back_wheel from 7dtd's minibike), it detects 40 bytes per vertex (3 position, 3 normal and 4 tangent floats). The remaining 'streamed' 8 bytes (uv coordinates) seem to be at the end of the vertex data buffer.

Link to comment
Share on other sites

  • 2 weeks later...

It doesn't work perfectly for all meshes right now because I was a bit confused about where the UV data begin. If there is such a file that looks almost but not completely correct, you can add it with a text editor, search for a line starting with "f" and add "vt 0 0" once (or twice if it isn't better) before it and do that for all submeshes in that file. Then only the last or the two last UV coordinates will be wrong but the rest should be correct.

I will look into fixing that soon.

Link to comment
Share on other sites

It doesn't work perfectly for all meshes right now because I was a bit confused about where the UV data begin. If there is such a file that looks almost but not completely correct, you can add it with a text editor, search for a line starting with "f" and add "vt 0 0" once (or twice if it isn't better) before it and do that for all submeshes in that file. Then only the last or the two last UV coordinates will be wrong but the rest should be correct.

I will look into fixing that soon.

 

Ok thanks for the information. So far I have not noticed a problem with the UVs with this new update.

 

7DtD-Zombie-Dog-3ds-Max-UVs.png

 

I have found another issue though: if I try and extract the file called "WoodenDoorController" (AnimationController... path ID 5595) the program exits.

 

Would REALLY like to see that file extract as I am working on adding an opening and closing garage door. I can use "Export Raw" fine but "Export Dump" causes the program to stop responding for a minute, then it will show the file dialog, go through the motion of saving and instantly exit without any error. The file it creates is 0 bytes.

 

The same thing happens if I try and "Export Dump" any of the AnimationController files. Funny thing is, if I create my own asset file with an AnimationController in it then your program extracts it fine.

 

Thanks again for your work on this program. :)

Link to comment
Share on other sites

It seems like there were some changes to the AnimatorController type between 5.0.1f1 and 5.2.0f3 and neither of both databases seem to have the correct type for 7dtd's Unity version. I'll create a type database for it.

I will look into adding my tool that generates the type database from a player .exe to the next release (or into a separate zip because it relies on injecting a .dll into the player which might look like a virus to some anti-virus programs).

Link to comment
Share on other sites

It seems like there were some changes to the AnimatorController type between 5.0.1f1 and 5.2.0f3 and neither of both databases seem to have the correct type for 7dtd's Unity version. I'll create a type database for it.

I will look into adding my tool that generates the type database from a player .exe to the next release (or into a separate zip because it relies on injecting a .dll into the player which might look like a virus to some anti-virus programs).

 

Yesterday I got my animated garage door working. It is based on the devs DoorSecure class and uses their AnimationController states and parameters (i.e. IsOpen and OpenTrigger).

 

7DtD-Door-AnimationController-1-Small.png

 

I can confirm that there is some difference in Unity with the AnimationController from v5.1.1 to v5.2.0... when I created the AnimationController in v5.1 and added it to my prefab it worked great. Took the same Unity package, built it on v5.2 and the game crashes.

Link to comment
Share on other sites

It seems like there were some changes to the AnimatorController type between 5.0.1f1 and 5.2.0f3 and neither of both databases seem to have the correct type for 7dtd's Unity version. I'll create a type database for it.

I will look into adding my tool that generates the type database from a player .exe to the next release (or into a separate zip because it relies on injecting a .dll into the player which might look like a virus to some anti-virus programs).

 

Yesterday I got my animated garage door working. It is based on the devs DoorSecure class and uses their AnimationController states and parameters (i.e. IsOpen and OpenTrigger).

 

7DtD-Door-AnimationController-1-Small.png

 

7DtD-GarageDoorNew1-1-Small.jpg

 

I can confirm that there is some difference in Unity with the AnimationController from v5.1 to v5.2... when I created the AnimationController in v5.1 and added it to my prefab it worked great. Took the same Unity package, built it on v5.2 and the game either crashes or won't load the block.

Link to comment
Share on other sites

Created a Unity 5.1.1p3 type database for A12.5. The download link is on the thread post.

 

Thankyou VERY much DerPopo... it works great as the file that previously could not be extracted (WoodenDoorController) now extracts.

 

As for the UV issue: found a mesh earlier (engine_small) that had problems, made the edit as you suggested and then it was fine except for one stray UV vert (just as you also mentioned).

 

Again, thanks for your work.

Link to comment
Share on other sites

  • 4 weeks later...
There is a new type database (classdata_0E) which was created from Unity 5.2.0f3 mainly because the texture formats aren't compatible. For 7dtd, the old type database (classdata_0E.5.0.1f) is required. Just replace classdata_0E with the old one and it should work.

 

I tried this and it keeps crashing as Matite posted.

 

I have tried the 1.7 64 bit, the 1.8c 64 bit, and done what you suggested yet it still crashes.

 

I got the textures from resources.assets and not sharedassets0.assets

 

 

Vote h0tr0d 2016 -- an asset to humanity

Link to comment
Share on other sites

  • 4 weeks later...

Is it possible to edit text asset in mainData with this tool. I opened mainData file (it opens in Info mode) and I am able to explore it and export assets from it but I can't figure out how to change asset in mainData or import asset to mainData. I tried UAE but it doesn't find all the assets in mainData. If its not possible to edit/import to mainData with this tool, is there another tool that can do it?

Edited by ivailogeimara (see edit history)
Link to comment
Share on other sites

V1.8.1 has been released. It supports Unity 5.3 bundles and adds compression options for the class databases (LZMA is used by default).

Unity 5.3 seems to have renamed mainData by globalgamemanagers (the file without an ending) in case you wonder where mainData is.

Link to comment
Share on other sites

  • 4 weeks later...

V1.9 has been released. There now is an improved 5.3 bundle support, a new type database bundle file format, support for many new texture file formats and more.

 

MSVC++ 2013 redistributable is required for the support of mobile compressed textures. The program will still work as usual if it isn't installed but will show a warning message (instead of "msvcr120.dll is missing", which would suggest to go to some untrustworthy dll download site).

Edited by DerPopo (see edit history)
Link to comment
Share on other sites

I don't use your program and have no idea how it works but from just reading the posts I can (sort of :)) tell how much work you are putting in to it and fixing the problems people are having.

I salute you and your efforts to make this game better than it already is.

 

 

(You can't see me but I am saluting)

Link to comment
Share on other sites

  • DerPopo changed the title to UABE - Asset Bundle Extractor

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...