Jump to content

DerPopo

Members
  • Posts

    172
  • Joined

  • Last visited

  • Days Won

    7

Posts posted by DerPopo

  1. What file format is used by this file? Your tool is the only one I can find that works with but I don't see a way to export all textures as images.

     

    The file signature stats with

     

    000AA592 0248999C 00000011 000AA5B0 00000000 352E352E 30703100

     

    It's the assets file format by the Unity game engine (version 5.5.0p1). To export multiple textures, you can use click+shift-click to select multiple entries, then press Plugins and select export to .tga (or .png, which is slower due to compression).

     

    Hello DerPopo, after playing around for a while, i think your UABE is the best among Unity Asset app available on the internet (In my using case).

    I'm trying to translating unity games by my custom code. I've found out that the game which i'm trying to trans is not only store sentences in AssetText file, but also (and mainly use) the string stored in the MonoBehavior file (.114).

    I have an idea that: my code will detect text section only, everything else will be kept as it is (String are all align 4). It's export analysed struct to a parsed file which will store information about the original file, All the foreign text will be kept in a TreeSet, after done, export them to a file (each text section separated by some "\n"). Then Google trans them or manual trans in a corresponding file. then generate translated MonoBehaviour file in a new file based on all of them.

    Finally import New MonoBehavior file back to asset

    But it's have a problem:Sometimes, i cannot import the new file if the file size has been changed!!!! (Before coding, i need a test for it's "possibility"!) :(

    So that a bug of your app or... it's impossible to do? (because MonoBehaviour must be read by a private reader, but i think it's must store everything in a serialized structure, so that my small code should be run correctly?!??)

    I known the file_size and File_Start_point are all stored in a tree structure, it's all mod-able.

    Please explain more about this file type!

    i've found out that: it's must be raw imported by an origin file first, then import raw the modedSize file it will...not display error cannot parse file etc.. ???

     

    Does it actually fail while importing the file, or is the file slightly broken so UABE can still open it but it doesn't work in game, or is the file completely broken so neither UABE can open it anymore?

    I don't know of any such issues regarding the import itself. If the second case applies, make sure you properly updated the 4 byte long length field right before the modified string (without counting the additional alignment 00 bytes). If the file is completely broken, could you send me a "clean" unmodded .assets/bundle file and the asset you want to import?

     

     

     

    I have version 1.0 and would like to modify and you are not achieving, I have a file of a 3D model a little strange, and I would like to try to unpack I am going to share with you.

     

    It's a compressed mesh which isn't supported at the moment.

  2. I dont think you did, i mentioned this before but im trying to modify another game not related to 7days to die, it just so happens to be an unity game and this is the only forum i found that specializes in modding unity assets. the game im trying to mod is called my summer car, there are no prefabs or XML files, its all just meshes with the extension of .43, i am able to extract them as OBJ, modify them and put them back into the asset file using the raw data import thing, i just need to learn how to change what texture they use. heres a tutorial to give you an idea https://drive.google.com/file/d/0Bw08IMcwkVdeN0plOWw2LVZZMWs/view

     

    We've been talking via PM but I'll explain it here for the record.

    GameObjects contain one or more components, in this case we're looking for the MeshRenderer of that specific object. If the same mesh and/or texture is used in multiple instances, basically every related asset that is used by multiple objects needs to be cloned (e.g. MeshRenderer, Material, Mesh, Texture2D) and the references to these assets have to be updated, starting with the GameObject's components and going down the dependencies of the cloned assets.

    In modderdude's case, the issue is finding the MeshRenderer or any other reference to the Mesh. My guess is that it's simply located in another .assets or levelX file.

     

    Hell DerPopo, Recently I extract some .unity3d files using batch, but the .assets files I get are broken. When I open the assets files with AssetBundleExtractor, it will get some garbled like this and nothing can be export:

    [ATTACH=CONFIG]19199[/ATTACH]

     

    If I open single unity3d file using AssetBundleExtractor and save the decompress unity3d file(the original file was compressed), the file can be read correctly.

     

    This is the link for the file. Can you figure out the problem? Thank you so much

    https://drive.google.com/open?id=0BwVbnWAwS4k2Q3l0MUpvSWVraUk

     

    Possibly some changes for Unity 5.5 broke the batch commands, I'll take a look at it.

     

    Hi,

     

    Thanks again for the mod maker feature in UABE.

    I've used UABE 2.1c to create a mod installer for SPAZ 2 (I used the 32bits version for this, since it is said that only this version can create installers that will work on both 32 and 64bits systems).

     

    Ok so, when I use this installer, the mod is installed properly and works as intended ingame;

    but the installer creates a copy of AssetsTools.dll at its location (desktop for instance). This dll can then only be deleted after opening the task manager and terminating the installer's process, which was left running after the installation.

     

    If it matters, I made my modifications with the 64bits version first, got the 64/32bits compatibility warning, then exported an .emip file and imported it back in the 32bits version to create the .exe. Both my UABE versions are updated with the 2.1c hotfix.

    Running the installer as admin makes no difference.

    I'm using W10 pro 64bits. I currently have no other pc to test this unfortunately.

     

    Thanks in advance :)

     

    I have also noticed that the installer doesn't always completely close but so far it has always worked as soon as I tried to see why it hangs. The main thread waits for the installer dialog to free up its resources but for some reason it never exits that wait.

    I do agree that it should (at least try to) delete the AssetsTools.dll before closing.

  3. Yes i export to tga/png and export raw and dumb but not working :/

    And view all file is use UnityFS :/

    [ATTACH=CONFIG]19165[/ATTACH]

     

    Could you send me the file (or in case it's too large just one raw Texture2D and a dump of it) via pm?

  4. DerPopo: Which texture compression format is used? You may try changing it to another one supported by whatever phone you target (EAC, ETC, PVRTC, ASTC) or even DXT (which is usually not directly supported on mobile chips and is uncompressed by Unity first).

     

    Dude !!! I Try All Texture Format (EAC, ETC, PVRTC, ASTC,DXT And every thing in tools )but error is the same old picture :/ I've posted

    Does UABE itself export the correct file before and after modifying it (export to tga/png)? Possibly the texture asset format is slightly different in the Unity version that game uses.

     

    Hey. I'm trying to use it for audio decoding of Gwent: The Witcher card Game. But the tool detects the type as text, although the contents of the headers present RIFF WAV format. How to fix this?

     

    It looks like it does indeed store audio files in a TextAsset (it's not unusual to store binary data in TextAssets). At least in an earlier version, Gwent used Wwise instead of Unity's builtin FMOD. It uses wav-like files (usually named .wem) with a custom codec that most players don't support. There are some tools to convert .wem files like ww2ogg but I haven't checked if they work in this case.

     

    Hey Guys I have Extracter a game And Got This assets.split0 And Other Files Now When I Open Them I Can See All Files Like Textures Mesh Etc . Now How Can I EXport All Of Those File So That I Can Use Them In Unity For Different Purpose . I Am mainly On The Mesh , Materials , Textures File I Want To Export Them All. How Can I Do That

     

    You can select multiple assets at the same time. Sort for the type, select all Meshes (click on the first one, press shift, click on the last one) and export with the plugin. Then do the same for the other formats except Material. Materials usually refer to multiple textures but there is no plugin to directly extract the material. You can create your own material in Unity and use the different textures. The only thing missing is the shader that isn't easy to extract, at least in current Unity versions.

  5. Why i use this tools i repack texture in file .unity3d i play game , some texture is crash and some texture it's not like the original

    i try unpacking texture in file .unity3d and packing it again

    That file .unity3d not like origin :/ like this :/

    Can you help me :/ DerPopo ?

     

    Which texture compression format is used? You may try changing it to another one supported by whatever phone you target (EAC, ETC, PVRTC, ASTC) or even DXT (which is usually not directly supported on mobile chips and is uncompressed by Unity first).

     

     

    Can't export "Sprite" filetype. Am I missing something?

     

    You can export the textures referenced to by that Sprite. Press View Data to look which textures it uses.

     

    Please, add support for Escape from Tarkov

    _container.bundle files (weapons)

     

    I don't own that game. What does the file header look like? The first 128 bytes should be enough to see what's going wrong (use a hex editor and copy out the first 0x80 bytes or make a screenshot of it).

     

    Hi, guys.I trying to translate 60 seconds, i opened it, extracted it, but i can import it, it always create new asset file.When i tried it with UAE, than there was runtime error.How can i do this?

     

    It can't directly overwrite the opened file, you need to save it to another file name and rename it after closing UABE. Other than that, you can easily create an installer with the imported files from within UABE that does all the renaming automatically.

  6. Will there be support for mip-mapping ? :chuncky:

     

    I'll look into it.

     

    The program works pretty well, however I was not able to open some script files. I'm receiving "Unable to read bundle file! (Invalid file or unknown version?)" error.

     

    This is the link for the files. I really need to get the .txt files inside for translation purposes. Any help is greatly appreciated

     

    The bundle files have a custom encryption and are decrypted by the game code. You'll need to look in the game's Assembly-CSharp.dll or Assembly-UnityScript.dll how the game decrypts the files with a decompiler such as ILSpy.

  7. To be honest I am probably doing something wrong.

     

    I was opening resources.assets, as far as I remember, selecting the item mentioned in it, then hitting 'export dump', changing the details as mentioned previously then I was attempting to 'import dump' the new information in. I tried the same thing by opening globalgamemanagers instead but I'm getting the same result. Does it matter that I am only selecting the file in the list I want to edit to export/import or must I somehow select the whole list?

     

    Must I also not move the filed from the 7d2d directory to gt this done? as I like to copy to desktop first so im not wrecking the original files ect.

     

    Thanks for taking the time to help me, i notice your .txt file has the same name as the item im trying to edit, mine does too, but when I export it originally there are some numbers, menu_music_long_lp_6_6.txt ..I thought it best to not change them, but idk.

     

    In case you're trying to overwrite the opened .assets file, try another file name. It won't work otherwise.

  8. Is dev dead ??

     

    No, I'm fine :D

    I'm relatively busy at the moment so it can sometimes take a bit longer for me to respond.

     

    Hi. This is such a great tool because it support 64 bit an all, but it can only read .asset files. HOw about associated file like .asset.resS?

    Please add support to extract .resS files.

     

    .resS and .resource files only contain raw data used by the .assets file, such as for Texture2D and AudioClip assets. The data from these files can be exported with plugins from the opened .assets file.

     

    Is it possible to make a Mac version of UABE, maybe one that would run under Mono? Or maybe release src code to enable porting to Mac?

     

    UABE is written in native C++ so Mono doesn't work. Maybe it works with the Win32 compatibility layer Wine (at least older versions of UABE work on Linux with Wine). There are some well-written instructions on how to install Wine on OSX.

    A native Linux version (maybe also OSX) is on my long ToDo-list, even if it becomes a console version.

     

    Is it possible to extract the terrain with the textures if so please let me know thank you so much. :tears_of_joy:

     

    If you use View Data on the TerrainData asset, you can look for texture references in m_SplatDatabase->m_Splats and m_DetailDatabase->m_DetailPrototypes. Note down the File ID in brackets and the Path ID for each of the textures you want to export and locate the textures to export them as with other textures.

     

    Hey DerPopo :) can you add more function ?

    Unity Assets Bundle Extractor

    Support extract all assets one time :)

    And Considered images directly on tools :)

    Can you support more ???

     

    I'm not completely sure what you mean. In an opened .assets file, you can select multiple assets of the same type (e.g. all Texture2Ds) by sorting for the type first and export them like you would do with a single asset. You can't export all Texture2Ds and AudioClips at the same time

    If you need to export from multiple .assets files at the same time, you can easily select multiple .assets files in the file open dialog.

  9. UABE 2.1 is out with Unity 5.5 support and various smaller improvements.

     

    i use UABE extra this bundle file to file assets file :/

    but i don't know how to pack this file assets to bundle

     

    This File origin is 3 mb

    File extra 16,7 mb

    Any one can help me ???

    Plz make tutorial :)

    This file :)

    https://drive.google.com/drive/folders/0B5JULaL16BZ3anV0a1hrdXJsaGs?usp=sharing

    [ATTACH=CONFIG]18531[/ATTACH]

     

    Both files are bundle files, one is compressed and the other one is decompressed. UABE can't compress the bundle file but it should still be usable in game.

     

    DerPopo, let me ask - very interesting as You use Your Utility? For modding? :)

     

    I actually haven't created mods for quite a while (except dummy mods to test UABE releases).

    UABE has started as an "extension" to grimreefer's UAE to modify .assets in bundles and grown into a general .assets and bundle modification tool with over 30000 own lines of code utilizing 14 third-party-libraries (8 of which are only used for textures). The time I'd otherwise spend making mods is mostly used up by UABE development.

  10. Sorry for the late responses.

    Does UABE support command line extracting textures etc? If not, could you please add command line extracting textures etc?

     

    When there are a lot of asset bundles, doing it one by one in the UI seems impossible. Thanks a lot.

     

    UABE usually doesn't really hang but it could indeed take some time to complete. More console commands definitely are a todo but I can't tell when I get to it.

     

    J'ai quelque demande pour améliorer le logiciel :

     

    -Une option (à cocher)lors d'une extraction qui créerais les dossiers dans lesquelles ce trouver les fichiers. exemple:[ATTACH=CONFIG]18457[/ATTACH]

     

    -Pouvoir extraire les fichiers .shaders qui sont de simple fichier texte

     

     

    Sinon merci beaucoup pour ce logiciel, encore merci

    My French writing skills aren't much better than Google's.

    - I'll note that down on my todo list.

    - Shaders in newer Unity versions are compiled and compressed, so they would have to be decompiled. I'll add support for the old shader format in the TextAsset plugin though.

     

    Could you add support for dumping MonoBehaviour files into JSON format (and of course importing from JSON)? The current format is easy for people to read, but not easy for programs to process. I'm dealing with a large MonoBehaviour asset (hundreds of elements in an array) and it's inconvenient to process the current format. JSON is a good format that balances between human readability and machine readability.

     

    Will do.

     

    In a game I'm editing there are resources.assets and four sharedresourcesX.assets.

    I added a resource to empty sharedresourcesX.assets file, which contains only PreloadData.

    How to let mainData know about resource you add to sharedresourcesX.assets file? mainData simply does not see this file.. No problem when I add it to resources.assets, but I want to add it to sharedresourcesX.assets so all modded resources will be contained in one place.

    in ResourceManager file I have something like

    <snip/>

    but I can't figure out what to do here.

    In mainData I can see something like this:

    <snip/>

    Any help would be really appreciated!

     

    In case you are adding the assets to an existing sharedresourcesX.assets file, they should be visible instantly. If you want to add a path, you need to set it in the m_Container Array in ResourceManager. mainData should have dependencies on all the sharedresources files, the file id can't be directly seen in UABE though. If you count the file id starting with 0 in View->Go to asset, excluding "unity default resources" and "unity_builtin_extra", you usually have the actual file id from what mainData sees.

    In case the sharedresources file isn't listed in the Go to asset window, UABE doesn't allow adding new dependencies but I'll definitely add that feature.

  11. Question:

     

    I'm a 3d modeler, and someone asked about adding a whip antenna to the back of the minibike. If I can get the minibike model and textures, I could easily do this in a half hour.

     

     

    The only issues I could foresee if if the collision box for the minibike would change with the antenna addition, and how to export or just add the generic metal texture to the antenna itself, and the red flag at the top.

     

    Would this tool give me the capability to export and then import the minibike model, once changed?

     

    I'm thinking the minibike is probably a grouped object, combining its components. (seat, chassis, handlebars, ect.) Or maybe its a new separate model that replaces versions that are partially completed?

     

    Its easy to loose the minibike in tall grass, and adding a whip antenna with a flag seems like an easy solution.

     

    Maybe someone can partner up with me on this if I create the new geometry changes to make it available?

     

    The minibike is created from the GameObject "entities/vehicles/minibike_prefab" (if you open globalgamemanagers through UABE, you can search for that path without " of course). It contains a Transform component (in View Data, expand m_Component, Array, 0, data, second and view asset) that has all minibike parts linked as children Transform (they contain a reference to the according GameObject).

    There are two options :

    1) Extending one of the minibike's part meshes by the whip antenna, which requires adding your texture to an existing one (I'm not sure if that's easily doable).

    You can find the mesh location in GameObject->m_Component->Array->(usually 1)->data->second->view asset->Base->m_Mesh, the file id in brackets is the one you're looking for.

    You can find the texture location in GameObject->m_Component->Array->(usually 1)->data->second->view asset->Base->m_Materials->Array->0->data->view asset->Base->m_SavedProperties->m_TexEnvs->Array->5->data->second->m_Texture.

    UABE can't export rigged meshes and can't import meshes at all so far. As far as I know, all the minibike parts have bones though so it likely won't work good. The only way to import a mesh is through the .assets of a built custom Unity project with that mesh in a scene.

    2) Adding another part to the minibike.

    While it should work in theory, I haven't found a way not crashing the game even though I have created a new Transform, GameObject and SkinnedMeshRenderer and added all necessary dependencies to the ResourceManager assets. The game crashes because it somehow doesn't load my assets properly but tries to access them, so either the assets themselves are wrong or I am missing another dependency tree.

    I'll report back if I find a way to fix it.

     

     

    DerPopo,

     

    First of all, let me say to you that your tool already helped me immensely with my project (I'm creating Mod for different 2D game). Using UABE, I was able to change IsReadable flag to true and thus, make possible to change hue of the textures in game.

     

    I've come to the point where I need to add my own files to the bundle (textures for now). Using UABE I managed to successfully add needed texture.

     

    Problem is that I can't seem to figure out how to apply needed path to this texture (or should I say create a reference to this texture). The only PreloadData file I found in a bundle just points to the all .assets files, w/o mentioning texture names.

     

    If I open mainData file, I can see my newly added texture but w/o path (like portraits/enemies/thistexture).

     

    Could you please suggest how to solve this issue? Is it possible or it really depends on the game?

    I would have asked too.

    - how to make this way:

     

    if this is not about the "TerrainTextures" as I asked earlier, but I want to add the texture in the maingames assets.

     

    I want to add another type of spectrum for the biomes (textures/environment/spectrums).

    I think the structure of the maingame assets is different, for example - there is have common "globalgamemanagers" ...

    How to find this "header", to add the path ?

     

    In case you store your texture in a bundle file, there should be an unnamed asset of type AssetBundle (path id always is 1 afaik) in at least one of the bundle's .assets that contains the names in the m_Container array. Export a dump, copy the last entry in m_PreloadTable and adjust it so it e.g. looks like this :

     0 Array Array (144 items)
      [b][size=3]0 int size = 145[/size][/b]
    ... (entries 0-142)
      [143]
       0 PPtr<Object> data
        0 int m_FileID = 0
        0 SInt64 m_PathID = 45
      [b][size=3][144][/size]
       [size=3]0 PPtr<Object> data[/size]
        [size=3]0 int m_FileID = 0[/size]
        [size=3]0 SInt64 m_PathID = 46[/size][/b]
    

    The changed lines are marked in bold font.

    You don't need to fix the index in the brackets. It's important that the new entry is at the end and that you fix the size. Adjust the file id and path id to match your asset.

    Perform similarly on m_Container. Copy one item (you can use any in this case), increase the size, enter the new name, set preloadIndex to the index of the entry in m_PreloadTable, preloadSize to 1 and also modify the PPtr to match your asset.

     

    In .assets files, the ResourceManager asset in the mainData or globalgamemanagers file (depends on the Unity version of the game) has all the names. Copy the first entry (or any other entry) in m_Container, set your name and file/path ID and adjust the size. The file id here isn't the same one as in the list UABE shows, you need to look for other named assets in the same .assets file to find the correct one.

  12. i edited the opaque.png in BlckTextureAtlases and ive tried putting it back in with different texture formats but i cant seem to get it to work.

     

    I'll see if I can reproduce it.

     

    Hi guys -- Thanks for the great utility!

     

    I've been using it to make some texture updates for NASCAR Heat Evolution, another recently released Unity based game.

     

    I've come to the point where I'd like to mute some distracting sound files -- notably, the fake crowd noise, but would also like to replace the engine sounds with improved ones.

     

    UABE can of course extract these sounds, but it appears there is no way to import a modified version of the sound file. Is there something I am overlooking, or is this a feature not yet implemented (or perhaps not possible to implement).

     

    Thanks for any tips you can provide!!

     

    Removing sounds should work by setting the resource size to 0 in the AudioClip (Export Dump/Import Dump), I'm not sure if it throws errors in the log though.

    UABE can't import sounds so far. You could add one or more manually by creating an empty Unity project, dragging the sound file(s) in the assets tab, attaching one Audio Source Component per sound to the Main Camera (select the camera in the list, select Audio Source in the Component menu) and select each audio file in the Inspector tab.

    Build the project for one of the desktop platforms, open mainData/globalgamemanagers (the one without .assets) in UABE, export dumps of all AudioClips, change the resource file name so it doesn't conflict with the game (also in the dumps), copy over the renamed .resource file and replace the existing AudioClip assets using Import Dump.

    I'll work on direct AudioClip import options in UABE, I think it should be relatively easy with the FMOD API.

  13. First of all I'd like to thank you for the amazing work you're doing here. This is just so awesome. Thank you.

     

    I hate myself for asking for something when you've already done so much, but being able to extract rigged meshes (.fbx perhaps?) would be really helpful.

     

    By the way, I'm curious as to how you do this. My knowledge is limited to modeling, rigging and some basic C# scripting, but it appears that it is possible to develop these 'plugins' to export the data in a specific format using the API you provided. What sort of knowledge is needed to work on this? If there's any way we can support your project, please say :)

     

    FBX support is definitely something I'll look into.

    The .bep plugin files actually are renamed .dlls (compiled with MSVC++ 2010). They contain a function that returns a structure with the import/export options, and the functions for the actual asset import/export. UABE passes some interface classes to the plugin but they are not (yet) contained in the API.

  14. It is works with ASTC_RGBA_6x6, but don't work with ASTC_RGB_6x6.

    UABE defines a ASTC_RGB_6x6 texture as a ARGB32 texture, gives an error "Unable to convert texture data!" when been used export plugin on the texture.

     

    I tried change texture format from ARGB32 to ASTC_RGBA_6x6 in the edit option; and then the texture has been converted in tga without any errors.

     

    But it is not the solution for batch convertation.

     

    Thanks, I will look into it!

     

    I'm trying to extract the resources from PewdiePie's Tube Simulator android app. I opened all the files without extensions with the tool and only got about 5% of the game resources.

    I think the rest of the resources are in those split files, as each file is 1MB. Is it possible at the moment to extract the rest of the resources with your tool? If yes can you please explain how :)

    Thank you :)

     

    It can't open the split files directly. There surely are some tools that can merge split binary files directly but the "dirty" way of merging the files manually with a hex editor (such as HxD ) works for sure. You have to open the .split0 file in the hex editor, then open the .split1 file and copy+paste its contents to the end of the .split0 file. Repeat that for the remaining split files, in numerical order of course. The resulting file should then be openable with UABE.

     

    Hey, I just want to say a huge thanks for this program! With a recent update to a certain game to Unity 5, I can open the asset files now!

     

    I was wondering if there's a way for UABE to unpack multiple files? Normally this wouldn't be an issue if it was a few files or if the files were named, but all the files are now found under Unity-cache and there's 400 files with very eccentric names. Thanks in advance!

     

    For bundle files, there's a batch extract feature in the command line. It's further described in Usage.txt.

     

    Earlier i was experimenting with the replacement terrain textures, but now i just tried to return the texture for simple block (old redwood for barns :)) and found that without mipmap this work useless - at a distance it looks bad and wasted loads GPU.

    This situation - with any texture loaded without MIP-map...

     

    DerPopo, mipmap support or the support .DDS - it would be a huge addition for UABE (...and for me personally, of course!) .

     

    With Respect!

     

    Mipmaps should be doable, dds import shouldn't be too much of a problem either.

  15. I ♥♥♥♥ing love this tool. Thank you so much for making it!!!

    Been looking for a way to extract unity assets for ages.

    I just have one question, is there anyway to open the files that look like this

    AssetName.assets0.split1

    AssetName.assets0.split2 ... and so on ?

    Are these asset files that are split into pieces?

    I really love to learn about this stuff thank you.

     

    So far, it only opens .split files as references from another opened file. If it's not a levelx file, you can open mainData or globalgamemanagers (the one without the .assets extension), and you can go to the split file in the default sorting with View->Go to asset, select the .assets file and type 1 for path id.

     

    Greetings! It is amazing tool!

     

    Can we expect support unpacking ASTC_6x6 textures? :adoration:

     

    P.S.

    There is an encoder that can decode ASTC texture with export to tga format file.

    https://github.com/ARM-software/astc-encoder

     

    ASTC support is already in if the 32/64bit version (depending on the used UABE release) of VC++ 2013 is installed. If that doesn't change it, it's a bug (or they changed the texture type numbers).

  16. The .sbsasm file can be copied out of the SubstanceArchive. Export it raw and delete everything before "SBAM" in a hex editor.

    The only issue is the .xml file that needs to be next to the .sbsasm file (both are packed in a .7z renamed to .sbsar). The information converted from the xml is stored in ProceduralMaterial and ProceduralTexture assets but I don't know the specifics of how the sbsar xml files are built.

  17. Hi,

    Thanks a million for the mod maker feature DerPopo; this is gold.

    I might just get back on that french translation I started 2 years ago eheh... Sadly A15's official translation was made with google translate for the most part, so I'm thinking about making a human version of it, and thanks to you sharing it will be easy. SPAZ 2's translation will also benefit from this.

    (edit: it looks like the localization file is now outside the assets, so ABE won't be needed here)

     

    Anyway I have one quick question, I've read here that there's a way to import audioclips into resource.assets, using Unity; since I'm probably not going to install Unity for so few, I was wondering if you plan to add an audioclips import feature to your plugin ? - if it is doable, that is.

    (edit2: deleting audioclips seems to work - goodbye a_night_oneshot2.wav you won't be missed - I'd still prefer replacing them though, along with a few other)

     

    Thanks again.

     

    That's the plan. The FMOD API seems to have the proper tools to create sound banks supported by Unity.

    The only special case to handle is WebGL. Unity uses m4a there (if I remember correctly).

  18. There is a debug log inside the GetTextureData

    [ATTACH=CONFIG]17111[/ATTACH]

     

    The success message will be removed for the next release.

     

    I found a bug ? or am I missing something ?

    https://7daystodie.com/forums/showthread.php?49611-adding-extra-terrain-textures-with-UABE&p=517158&viewfull=1#post517158

     

    ------------------------ UPDATE

    I think i guessed - I lose mipmap when converting...

     

     

     

    ------------------------ UPDATE 2

     

    Can i load a texture with mip-levels ?

    then why in the TerrainTextures use the TGA format? Is it possible to contains MIP-levels ?

     

    ....i feel that the question is fundamentally wrong, but ...

     

    UABE doesn't load or create mip maps. As it seems like Unity doesn't do that at runtime, I'll look into adding such functionality to UABE.

     

    Hi,

     

    I would like to modify a Texture2D in a Unity android game, is that possible ?

     

    There are a bunch of file in the Data folder after the .apk is decompile

    <snip>

    I found my texture in a file like 8e60b31b1672f415c92f32507253f1b6 (which is only a reference to the real data I think)

     

    I can modify the texture (importing a .tga file I modified) but after, when I save it I can only save it as a .assets file.

     

    That's where I'm blocked. I don't know if I have to split it myself and replace the others file, or maybe modify the loading code ?

     

    Do you have any clue ? Somebody already did that kind of mod ?

     

    Thanks.

     

    The file you mention also is an assets file, it just doesn't have the .assets file name extension. When saving, it won't actually add .assets to the file name.

    UABE can't directly replace an opened file, so you'd need to rename the files anyway (e.g. rename "8e60b31b1672f415c92f32507253f1b6" to "8e60b31b1672f415c92f32507253f1b6-old", open the renamed file in UABE and save as "8e60b31b1672f415c92f32507253f1b6").

  19. After I saved Texture2D directly into a asset, how can I find out the offset of the asset in whom I saved the data? For that would, when i ImportDump, substitute the name of the asset and redirect to saved data.

    Unfortunately when i read the ViewData - me showing the offset for .resS

    If I understand you correctly, you are trying to find the byte offset to the Texture2D asset with the raw texture data in an .assets file, to refer to from another Texture2D asset? UABE doesn't show the offsets to the single assets, you'd have to search for the bytes in it with a hex editor. If you need the offset of the raw data inside the Texture2D asset, it's constant for a specific Unity version except the asset name. If you look at a dump, you can add up the 4-byte variable sizes and the 4-byte aligned string length.

     

    If you want to put the data stored in a .resS into a Texture2D asset, you'd have to export the raw Texture2D asset, copy-and-paste the referenced data from the .resS with a hex editor to the location in the Texture2D as mentioned above, and correct the array length (should be 4x 00s before the mentioned texture data offset). 00 the rest after the texture data, which is the .resS reference.

     

    Thanks for your reply but that doesn't help me unfortunately.

    I want to mod Hearthstone from Blizzard and everything works fine using the tools provided here...

    Using the method described in your linked posts didn't work for me: All files have the same .resource as m_source e.g. m_source:CAB-abc123/CAB-abc123.resource.

     

    I am not exactly sure but I think the m_offset describes the exact beginning of the specific file in the .resource as otherwise the good file couldn't be loaded.

     

    I guess I need to add my file to the .resource file and use the good offset - is that doable? I know that someone already modified hearthstone sounds but this guy doesn't want to share how he did it :(

     

    You can copy your data to the end of the existing .resource file with a hex editor (export it from the bundle, note the file size, paste the data at the end, import the modified file). If you only have one AudioClip in your custom Unity project, use the original .resource file size as the modified AudioClip offset and the size of the .resource file from your custom project as the modified size. If you have more than one AudioClip, you have to add the according offsets from your .assets file (and use the size from there).

  20. How do I install this software? After downloading, I only see dll files and other files. Where is the exe to install it? I am sorry, but know nothing about programming and IT so this really puzzles me.

     

    You probably downloaded the API, which is only for others to write tools that use Unity's file format. Download the normal 2.0 release. You can also apply the small 2.0b hotfix in case it crashes on some files.

  21. NavMesh likely has very large arrays that aren't marked as TypelessData, so it needs ~30+ bytes for every single variable instance. On top of that, the tree view isn't too efficient for such large amounts of data. I might look into making it dynamically add the fields when expanding an item, but it isn't really a solution to the problem as it makes the list less responsive and still takes the same memory when everything is expanded.

  22. With Your help i was able to shove something in the asset but it is not accepted by the game, maybe i need to set the path. How to do it ?

     

    (yes, i also made changes in ta_terrainxml.txt)

    You'll most likely have to add the path in the PathId 1 asset (type AssetBundle) using export/import dump so it can find it properly. Make sure to update the array size properly before importing the dump (it doesn't matter if the indices are wrong though).

     

     

    I would also like to know about:

     

    "- Added a mod installer and mod installer editor, so any changes can be saved directly to a installer or a package file."

     

    How it would work if updated version of the game /asset ?

    Which changes stored in the patch? How they apply to get back modded asset ?

    Game updates will most likely require a new installer (even if it could find the updated pathIds automatically, changes to e.g. terrainxml would still break it).

    It stores exactly the changes you did to the bundle/.assets file (with or without saving before), it also lists the modifications.

     

    I'd like to use the API to extract icons from the assets to be displayed in my program. The problem is that my program has been written in C# and the API is C++. I looked into including C++ dlls in C# project, but I'd still need to change parts of the original C++ dll.

     

    Is there a source available so I can convert the parts I need to C#? I will credit you as though I used the API.

     

    Maybe I'll create a C# wrapper for the API (no guarantee for now though).

    I tried to answer your PM, but it says your storage is full.

  23. Enter 0x1C for the type (you can see that number when you select any Texture and look in the Type field).

    Mono Class ID can stay -1 as long as you don't create any MonoBehaviours.

    After you press Ok, it will add the new item at the top of the asset list. You can use the texture plugin as you're used to.

     

    The files aren't compressed back after saving. I may look into adding a compress option (but disable it by default because it would need to be decompressed again when editing).

    Textures in .resS won't be touched, it will be stored in the Texture2D asset directly. Else, the whole file would need to be recompiled once the texture is bigger than before.

×
×
  • Create New...