Jump to content

DerPopo

Members
  • Posts

    172
  • Joined

  • Last visited

  • Days Won

    7

Everything posted by DerPopo

  1. BC6H and BC7 import support was broken. Fixed the code on github. Here's a compiled variant: https://mega.nz/file/KFgSCZxD#3KqQXH23XaHDdQ70tmkujy7W9vdsQCAnHYEfuP6jPeo (SHA256: 557C82D3099B781F379A991537DF5A5AF8D3D0C23345B8528A56CD166ABEA232)
  2. I guess it's time for an update, as UABE stands right beneath humanity in terms of "things that still exist". UABE 3.0 is out, see the main post. Note that Texture2DArray is not yet supported for Texture exports / imports, if you want to modify blocktextureatlases.
  3. Since I'm reimplementing most of the UI, that bug surely will be fixed once it's ready. For recent Unity versions, the Type ID for MonoBehaviours is generated by UABE as (-1 - scriptIndex) with the two byte script index located in the type tree of the .assets file. This means that 0xFFFFFFFF stands for scriptIndex 0, 0xFFFFFFFE stands for scriptIndex 1 and so on. As for when the update is ready, I can't really tell since there still is lots of work to do even with lots of core functionality ready, and there is only so much time I can spend on it. UABE is quite a complex project (growing more and more complex) but the UI code base was not really designed well. After all, UABE initially only was meant to extract and import from a single Asset Bundle file and only later grew to a serialized file (aka .assets) editor on top of that, causing neither the code nor the UI itself to be particularly great. So, I have decided to throw out core parts of it and start from scratch around last year. Working with several bundle files and serialized .assets files at once, background tasks that don't block work (and the thread-safety and resource management required to do that), non-modal dialogs (i.e. not having to open and close popups windows all the time), and editing assets in UI without having to export/import dumps are some of the things I've been working on.
  4. I am reworking most of the UI and internal logic except for the AssetsTools library. The code became too much of a mess with program logic entangled with UI and file version dependant stuff, memory management from hell and so on. Most of it was a symptom of UABE growing from a bundle export/import tool created within two days to a fully fledged bundle and .assets editor. The AssetsTools library is quite okay though. So far, most of the new foundation is complete. Key feature will be opening files on the fly, including any amount of bundle files. File loading and other tasks run in the background and some modal dialogs will be replaced with modeless ones so the program stays responsive. Some parts of the UI will look the same even though most of the code is being written from scratch. Bundle files with compressed directories but uncompressed data will no longer require decompression (which applies to most bundle files in PC games). I also plan on doing a proper resource / resS file management for texture and maybe audio import. I have some plans for proper console command support but I'll focus on the UI first. At least it won't require code doubling anymore. Windows XP support will also be dropped since it becomes too big of a burden. I don't think anyone will mind at this point but who knows ^^ Is the mesh file from the same Unity version as the target file (.assets or bundle)? There probably is some sort of incompatibility with the files. I have replied to your GitHub issue, but I have also uploaded the classdata file for 2019.3.9 here. classdata with 2019.3.9.zip
  5. Is there a .manifest file alongside the bundle? You may need to change the CRC there. At least in 7dtd's manifest files, the CRC is stored as a decimal string. Just use the Windows calculator in programming mode to convert the 78b6107e from hex to decimal.
  6. The streaming info is more of an alternative to the image data field, that by itself is no issue. If you raw export the modified asset, how big is the file? It should be at around 2MiB. Otherwise, play around with the texture format (try DXT1, RGB24, etc.)
  7. If you can export the texture with UABE, importing should cause no harm. Does it only corrupt that specific texture or does the game crash on startup? The class databases usually work fine for most purposes between different minor Unity releases but not always. Since recent Unity releases (5 onward) include type hashes in the files, I could at least make UABE detect such incompatibilities.
  8. I'm currently reworking the UI and doing some other internal changes. I can't give an estimate on when it'll be ready, though. Could you give more details? There could be many reasons, such as incompatible types, bugs or invalid input files.
  9. UAE is outdated (only supports up to Unity 5 beta iirc), but here's the link in case you want it. Yes, you can edit assets through export and import. It will work as long as you don't 'violate' the asset format (always set the array size to the actual amount of elements, etc.).
  10. Aand another update, this time with Unity 2019.2.* support. I plan to add some kind of object tree export/import in the future. For now, you'll have to select the assets (GameObject/Component/...) manually and use raw export/import.
  11. 2.2stablec is out with 2018.4 and 2019.1 support, along with an updated API. You can create mod installer packages for the different bundles and finally create a standalone installer for all bundles using Import Package.
  12. Unity 2019.1 support looks good so far, the file format changes are minor. I'll try to get it released soon.
  13. 2.2 stable b is out. Fixed Mesh export (again) and RGBA32 mip map generation for texture import.
  14. 2.2 stable is out with a new MonoBehaviour 'Add' option, 2018.3 support, various fixes (including writing 7dtd's BlockTextureAtlases) and smaller improvements. Exporting Mesh assets should work again, too. Merry Christmas! ____ @Mayic What exactly do you want to export? Texture2D, Mesh and TextAsset assets are exportable through plugins (select the assets and press the Plugins button, only one asset type at a time) to file formats which Unity should understand.
  15. The .sbsar file contains all the metadata of the texture. The plugin only is for .sbsasm files, which are usually packaged along with (or inside?) sbsar files. Substance textures are rather complex. From what I've read, Substance textures are used to generate textures on the fly with parameters and can also be used for animations. The only thing viable for png export seem to be the internal source textures. Unity converts sbsar files into internal formats (ProceduralMaterial, ProceduralTexture) and the tools for Substance files are rather expensive, so I haven't done further work besides exporting sbsasm files.
  16. Will take a look at it. That's not supported currently. I'll add it sooner or later, though. Have you tried the TextAsset plugin (-> button "Plugins")? Since it is a binary file containing null bytes stored inside a string, the dump exporter stops at the null byte; whereas the TextAsset plugin treats it like a binary file and should output the whole file.
  17. @ libaibaba the files do seem to be encrypted, the decryption is likely done in one of the game modules. Just in case others are interested, I've just answered on github : https://github.com/DerPopo/UABE/issues/238
  18. I don't think I'll ever make a native Mac version. But since Wine also has a Mac version, you may still be able to run it.
  19. Have you used the -keepnames option for batch export? The name of the exported .resS/.resource files should be exactly the same as in the bundle. Please report back in case it still fails, so I can take a look at it. I'll update the Usage.txt file so it mentions this option. It's a known bug, the hotfix I posted in this issue should solve it.
  20. The file formats are varying. 000e26... is a text file containing a material definition, 00e769... is a 7z file containing some kind of mesh and the others may be encrypted and/or compressed. The game seems to be locating its files through 16 bytes hashes (e.g. name hash). Could be MD4 hashes but could also be anything else with >= 16 bytes cut to 16 bytes. I'm not sure if these files are from a Unity game since there are custom file formats for things that could as well be packed into a Unity bundle file with engine file formats.
  21. As n2n1 mentioned, the files may be compatible in some cases (especially with bundle files). If the files are not compatible, it should at least be possible to simplify this process a lot : - If the files are bundles (which is the case if can press Info on the main window), you can use the command line batch export option (see Usage.txt) to export the .assets files to a specific directory. Otherwise, copy the existing .assets to a new directory. - Open the exported .assets files all at once (select all in the Open dialog), click the Type column and select all Texture2D assets. Then, use the texture batch import option (Plugins) to import all textures at once. You'll have to batch export the images from a modded set of game files first so it can find the images properly. - Save the modified .assets files to a new directory (for bundles) or to the directory they were in before. - (Bundles only) use the command line batch import option to get the new bundles. Of course, this requires the Texture2D Path IDs to be stable across updates, which I they should be if the files only contain one asset, each. This also requires the file names to be stable (in case of bundles, CAB-<hash> names must not change).
  22. 2.2 beta 4 is out with Unity 2017.4 and 2018.2 support, as well as improved bundle compression with an LZ4 option and fixes for the orientation of transformation matrices for skinned meshes.
  23. I haven't taken a look at how Unity composes the sound banks yet, but it's definitely something I want to add support for. The sound data is stored with the proprietary FMOD sound bank format and the FMOD API does not provide a way to extract the data without decompressing it. There are some projects like fsbext that are able to unpack those files, though fsbext specifically notes that extracted .ogg files are not directly playable (maybe another tool out there can spit out proper ogg files). If you take a look at the AudioClip asset through View Data, you can see the file name (usually a .resource file), absolute file position and size of the soundbank. HxD or other hex editors can help copying out the sound bank you want (go to that file position with Search->Goto in dec mode, mark <size> bytes with Edit->Select block and copy it to a new file). For some reason, it's caused by the progress window (which is invisible at first), though it should be easy to work around. I didn't think it'd be a problem since it does not occur when launching through the explorer in my case, but I'll make sure it will be fixed with the next release.
  24. UABE 2.2 beta 3 is out with Collada mesh export support, 2018.1 support with all current crunch texture formats, various bug fixes and smaller additions.
  25. Many developers encrypt these files using custom methods, and this file is no raw Unity bundle either. There will be export support for rigged Collada meshes, and also an option to pack multiple Meshes into a single scene.
×
×
  • Create New...