mafaca / UtinyRipper

GUI and API library to work with Engine assets, serialized and bundle files
MIT License
2.81k stars 433 forks source link

'UnityFS' .cache files fail to open #1417

Open terminal-cs opened 1 year ago

terminal-cs commented 1 year ago

Hello!

I don't know what file this is. I have searched for quite a while but haven't found anything about it. The file ends with the extension .cache and has references to some .unity3d file, and inside the file, it begins with the text UnityFS. I would appreciate if anyone could help me with this.

I opened it as an issue here because it causes UTinyRipper to crash and doesn't give much info. Here's the crash/trace log:

Import: Game file 'drone_ironhearth.unity3d.hashCode=91e0ec9de7f958f8143e12de1d1c5329_hash=511045' has been found
Import [Error]: System.Exception: Some data left
   at uTinyRipper.Lz4.Lz4DecodeStream.ReadBuffer(Stream stream, Int64 count)
   at uTinyRipper.BundleFileScheme.ReadFileStreamMetadata(Stream stream, Int64 basePosition)
   at uTinyRipper.BundleFileScheme.ReadScheme(Stream stream)
   at uTinyRipper.GameCollection.ReadScheme(SmartStream stream, String filePath, String fileName)
   at uTinyRipper.GameCollection.LoadScheme(String filePath, String fileName)
   at uTinyRipper.GameStructure.ProcessPlatformStructure(GameStructureProcessor processor, PlatformGameStructure structure)
   at uTinyRipper.GameStructure.Load(List`1 pathes, LayoutInfo layinfo)
   at uTinyRipper.GameStructure.Load(IEnumerable`1 pathes, LayoutInfo layinfo)
   at uTinyRipperGUI.MainWindow.LoadFiles(Object data)

Here's an example of one of the files i am trying to load: drone_ironhearth.unity3d.zip

Unity game version shows 2020.3.26 f1, This isn't bundled the normal way with unity apps as it is downloaded after installation, It is an android game.

ds5678 commented 1 year ago

AssetRipper is actively being developed with the intent to recover games as best as possible. Weekly releases are normally on Sunday or Monday. I encourage you to help out if you're able and willing. Code contributions can be submitted via pull requests.

If you like the work I've done and want to see it continue, please consider sponsoring me. It really does help with development. These are some of the notable things I've implemented since taking over development:

Sponsorship Links: