Giter Site home page Giter Site logo

mafaca / utinyripper Goto Github PK

View Code? Open in Web Editor NEW
2.7K 100.0 418.0 21.82 MB

GUI and API library to work with Engine assets, serialized and bundle files

License: MIT License

C# 100.00%
unity asset bundle assetbundle resource unpack ripper extract source project

utinyripper's People

Contributors

akx avatar asashour avatar greenman36 avatar lbmaian avatar mafaca avatar mf-patino avatar passivepicasso avatar pyroglyph avatar radioegor146 avatar redworkde avatar spacehamster avatar theclashingfritz avatar thunderfrost0001 avatar xele02 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

utinyripper's Issues

Any install instructions?

I'm not very experienced, and I'm having serious trouble installing it. I have both Visual studio and unity studio, but I'm not sure how to get unityripper working.

Combined Meshes

The Scene I am trying to get working correctly has about 17 combined mesh files.
I can use asset studio to get the objects but I am having trouble with Materials assigned to the meshes in the combined mesh. Is there something I am doing wrong?

Argument Out Of Range Exception

General: System.ArgumentOutOfRangeException: Index was out of range. Must be non-negative and less than the size of the collection.
Parameter name: index
at System.ThrowHelper.ThrowArgumentOutOfRangeException(ExceptionArgument argument, ExceptionResource resource)
at System.SZArrayHelper.get_Item[T](Int32 index)
at UtinyRipper.Classes.AnimationClip.ExportGenericData(IExportContainer container, YAMLMappingNode node, IReadOnlyDictionary2 tos) at UtinyRipper.Classes.AnimationClip.ExportYAMLRoot(IExportContainer container) at UtinyRipper.Classes.Object.ExportYAMLDocument(IExportContainer container) at UtinyRipper.AssetExporters.YAMLAssetExporter.Export(ProjectAssetContainer container, Object asset, String path) at UtinyRipper.AssetExporters.AssetExportCollection.Export(ProjectAssetContainer container, String dirPath) at UtinyRipper.AssetExporters.ProjectExporter.Export(String path, IEnumerable1 objects)
at UtinyRipper.Program.Load(IReadOnlyList`1 args)

Error when importing resources.assets

General: System.UnauthorizedAccessException: Access to the path '.\Ripped\resources\Material' is denied.
at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
at System.IO.Directory.InternalCreateDirectory(String fullPath, String path, Object dirSecurityObj, Boolean checkHost)
at System.IO.Directory.InternalCreateDirectoryHelper(String path, Boolean checkHost)
at UtinyRipper.AssetExporters.YAMLAssetExporter.Export(IAssetsExporter exporter, IExportCollection collection, String dirPath) in C:\Users\user\Downloads\UtinyRipper-master\UtinyRipperCore\Parser\AssetCollection\Exporter\Exporters\YAMLAssetExporter.cs:line 55
at UtinyRipper.AssetExporters.AssetsExporter.Export(String path, IEnumerable`1 objects) in C:\Users\user\Downloads\UtinyRipper-master\UtinyRipperCore\Parser\AssetCollection\Exporter\AssetsExporter.cs:line 136
at UtinyRipper.Program.Main(String[] args) in C:\Users\user\Downloads\UtinyRipper-master\UtinyRipper\Program.cs:line 62

Crash when extracting resources

Here is the output:

C:\Users\Administrator\Desktop\aa\Data>UtinyRipper.exe sharedassets1.assets
Import: Dependency 'library/unity default resources' wasn't found
Import: Dependency 'globalgamemanagers.assets' was loaded
Import: Dependency 'library/unity default resources' wasn't found
Import: Dependency 'library/unity default resources' wasn't found

Unhandled Exception: System.IO.EndOfStreamException: Unable to read beyond the end of the stream.
at System.IO.__Error.EndOfFile()
at System.IO.BinaryReader.FillBuffer(Int32 numBytes)
at System.IO.BinaryReader.ReadSingle()
at UtinyRipper.EndianStream.ReadSingle() in Y:\Downloads\UtinyRipper-master\UtinyRipperCore\IO\EndianStream\EndianStream.cs:line 142
at UtinyRipper.Classes.Float.Read(AssetStream stream) in Y:\Downloads\UtinyRipper-master\UtinyRipperCore\Parser\Classes\Serialize\Float.cs:line 15
at UtinyRipper.Classes.AnimationClips.KeyframeTpl1.Read(AssetStream stream) in Y:\Downloads\UtinyRipper-master\UtinyRipperCore\Parser\Classes\AnimationClip\KeyframeTpl\KeyframeTpl.cs:line 74 at UtinyRipper.IListExtensions.Read[T](IList1 _this, AssetStream stream) in Y:\Downloads\UtinyRipper-master\UtinyRipperCore\IO\Utils\Extensions\IListExtensions.cs:line 15
at UtinyRipper.Classes.AnimationClips.AnimationCurveTpl1.Read(AssetStream stream) in Y:\Downloads\UtinyRipper-master\UtinyRipperCore\Parser\Classes\AnimationClip\AnimationCurveTpl.cs:line 61 at UtinyRipper.Classes.ParticleSystems.MinMaxCurve.Read(AssetStream stream) in Y:\Downloads\UtinyRipper-master\UtinyRipperCore\Parser\Classes\ParticleSystem\Curve\MinMaxCurve.cs:line 92 at UtinyRipper.Classes.ParticleSystems.MultiModeParameter.Read(AssetStream stream) in Y:\Downloads\UtinyRipper-master\UtinyRipperCore\Parser\Classes\ParticleSystem\Shape\MultiModeParameter.cs:line 21 at UtinyRipper.Classes.ParticleSystems.ShapeModule.Read(AssetStream stream) in Y:\Downloads\UtinyRipper-master\UtinyRipperCore\Parser\Classes\ParticleSystem\Shape\ShapeModule.cs:line 275 at UtinyRipper.Classes.ParticleSystem.Read(AssetStream stream) in Y:\Downloads\UtinyRipper-master\UtinyRipperCore\Parser\Classes\ParticleSystem\ParticleSystem.cs:line 238 at UtinyRipper.SerializedFiles.SerializedFile.ReadAsset(AssetStream stream, AssetInfo assetInfo, Int64 offset, Int32 size) in Y:\Downloads\UtinyRipper-master\UtinyRipperCore\Parser\Format\SerializedFile\SerializedFile.cs:line 317 at UtinyRipper.SerializedFiles.SerializedFile.ReadAsset(AssetStream stream, ObjectInfo info, Int64 startPosition) in Y:\Downloads\UtinyRipper-master\UtinyRipperCore\Parser\Format\SerializedFile\SerializedFile.cs:line 287 at UtinyRipper.SerializedFiles.SerializedFile.ReadAssets(EndianStream stream, Int64 startPosition) in Y:\Downloads\UtinyRipper-master\UtinyRipperCore\Parser\Format\SerializedFile\SerializedFile.cs:line 266 at UtinyRipper.SerializedFiles.SerializedFile.Read(Stream baseStream, Action1 requestDependencyCallback) in Y:\Downloads\UtinyRipper-master\UtinyRipperCore\Parser\Format\SerializedFile\SerializedFile.cs:line 99
at UtinyRipper.FileCollection.ReadSerializedFile(Stream stream, String filePath, String fileName) in Y:\Downloads\UtinyRipper-master\UtinyRipperCore\Parser\AssetCollection\FileCollection.cs:line 75
at UtinyRipper.FileCollection.Read(Stream stream, String filePath, String fileName) in Y:\Downloads\UtinyRipper-master\UtinyRipperCore\Parser\AssetCollection\FileCollection.cs:line 61

and the file: https://we.tl/I0SfbQZZb6

General: System.Exception: Read 93 but expected 92 for object MonoScript

I get this errors:
General: System.Exception: Read 93 but expected 92 for object MonoScript
en UtinyRipper.SerializedFiles.SerializedFile.ReadAsset(AssetStream stream, AssetInfo assetInfo, Int64 offset, Int32 size)
en UtinyRipper.SerializedFiles.SerializedFile.ReadAsset(AssetStream stream, ObjectInfo info, Int64 startPosition)
en UtinyRipper.SerializedFiles.SerializedFile.ReadAssets(EndianStream stream, Int64 startPosition)
en UtinyRipper.SerializedFiles.SerializedFile.Read(Stream baseStream, Action`1 requestDependencyCallback)
en UtinyRipper.FileCollection.ReadSerializedFile(Stream stream, String filePath, String fileName)
en UtinyRipper.Program.LoadFile(String fullFilePath, String originalFileName)

Shaders

I'm having problems with ripping shaders. I get not errors however they all contain lines saying "can't export programs data DXblabla as a text"

Now I traced back the code it seems that the shader subprogram parser ignores DX shaders and replaces it with that line.

I tried manually overriding this but then the chars weren't the right encoding. I switched it over to ASCII and it parsed some garbage.

Does anyone have any insight?

UtinyRipper.EndianStream.ReadByteArray() error

Hello!
I'm having several issues when trying to extract files from an game called "Crossfire" , made in unity for android.
Some files works, but in example of this, i got the error:

General: Version[5.6.4p4] 'level62' General: System.Exception: Read 16593172 but expected 1056964608 em UtinyRipper.EndianStream.ReadByteArray() em UtinyRipper.Classes.Meshes.VertexData.Read(AssetStream stream) em UtinyRipper.Classes.Mesh.Read(AssetStream stream) em UtinyRipper.SerializedFiles.SerializedFile.ReadAsset(AssetStream stream, AssetInfo assetInfo, Int64 offset, Int32 size) em UtinyRipper.SerializedFiles.SerializedFile.ReadAsset(AssetStream stream, AssetEntry info, Int64 startPosition) em UtinyRipper.SerializedFiles.SerializedFile.ReadAssets(EndianStream stream, Int64 startPosition) em UtinyRipper.SerializedFiles.SerializedFile.Read(Stream baseStream, Action1 requestDependencyCallback)
em UtinyRipper.SerializedFiles.SerializedFile.Load(String assetPath, Action1 requestDependencyCallback) em UtinyRipper.FileCollection.LoadSerializedFile(String filePath, String fileName) em UtinyRipper.GameStructure.Load(IEnumerable1 pathes)
em UtinyRipper.Program.Load(IReadOnlyList1 args)

The file is this zip (Level.zip).

Thx for your attention :)

level.zip

Unable to export

Import: Asset collection has versions probably incompatible with each other. Here they are:
Import: 4.7.0f1
Import: 4.6.4p4
Export: Can't export

 'Roboto-Black_copy(Font)' because it isn't valid
General: System.IO.FileNotFoundException: Could not find file 'Ripped\mainData\Shader'.
File name: 'Ripped\mainData\Shader'
   at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
   at System.IO.Directory.InternalCreateDirectory(String fullPath, String path, Object dirSecurityObj, Boolean checkHost)
   at System.IO.Directory.InternalCreateDirectoryHelper(String path, Boolean checkHost)
   at UtinyRipper.AssetExporters.AssetExportCollection.Export(ProjectAssetContainer container, String dirPath)
   at UtinyRipper.AssetExporters.ProjectExporter.Export(String path, IEnumerable`1 objects)
   at UtinyRipper.Program.Load(IReadOnlyList`1 args)

https://mega.nz/#!MPxRzQRY!zTRa9A0yzGD2sFUUrGMvg-CeeArN8HUH2wwmA-y2QSI

Unable to open files

General: System.Exception: Read 56 but expected 112 for object BoxCollider2D
   at UtinyRipper.SerializedFiles.SerializedFile.ReadAsset(AssetStream stream, AssetInfo assetInfo, Int64 offset, Int32 size)
   at UtinyRipper.SerializedFiles.SerializedFile.ReadAssets(EndianStream stream, Int64 startPosition)
   at UtinyRipper.SerializedFiles.SerializedFile.Read(Stream baseStream)
   at UtinyRipper.FileCollection.ReadSerializedFile(Stream stream, String filePath, String fileName)
   at UtinyRipper.FileCollection.Read(Stream stream, String filePath, String fileName)
   at UtinyRipper.Program.LoadFiles(FileCollection collection, IEnumerable`1 filePathes)
   at UtinyRipper.Program.Main(String[] args)
   
Import: Dependency 'C:\Users\Forged Inception\Downloads\Car Racing_v1.0.9_apkpure.com\assets\bin\Data\resources/unity_builtin_extra' was loaded
Import: Dependency 'C:\Users\Forged Inception\Downloads\Car Racing_v1.0.9_apkpure.com\assets\bin\Data\unity default resources' was loaded
Import: Dependency 'C:\Users\Forged Inception\Downloads\Car Racing_v1.0.9_apkpure.com\assets\bin\Data\globalgamemanagers.assets' was loaded
General: System.Exception: Read 55057 but expected 55056 for object Font
   at UtinyRipper.SerializedFiles.SerializedFile.ReadAsset(AssetStream stream, AssetInfo assetInfo, Int64 offset, Int32 size)
   at UtinyRipper.SerializedFiles.SerializedFile.ReadAsset(AssetStream stream, ObjectInfo info, Int64 startPosition)
   at UtinyRipper.SerializedFiles.SerializedFile.ReadAssets(EndianStream stream, Int64 startPosition)
   at UtinyRipper.SerializedFiles.SerializedFile.Read(Stream baseStream, Action`1 requestDependencyCallback)
   at UtinyRipper.FileCollection.ReadSerializedFile(Stream stream, String filePath, String fileName)
   at UtinyRipper.FileCollection.Read(Stream stream, String filePath, String fileName)
   at UtinyRipper.Program.LoadFile(String fullFilePath, String originalFileName)
   at UtinyRipper.Program.TryLoadDependency(String loadName, String originalName)
   at UtinyRipper.Program.LoadDependency(String fileName)
   at UtinyRipper.Program.OnRequestDependency(String dependency)
   at UtinyRipper.FileCollection.OnRequestDependency(String dependency)
   at UtinyRipper.SerializedFiles.SerializedFile.Read(Stream baseStream, Action`1 requestDependencyCallback)
   at UtinyRipper.FileCollection.ReadSerializedFile(Stream stream, String filePath, String fileName)
   at UtinyRipper.FileCollection.Read(Stream stream, String filePath, String fileName)
   at UtinyRipper.Program.LoadFile(String fullFilePath, String originalFileName)
   at UtinyRipper.Program.LoadFiles(IEnumerable`1 filePathes)
   at UtinyRipper.Program.Load(IReadOnlyList`1 args)

Files :-

Issue.zip

Error for asset type Light.

Heyo! Sorry about sort of a repost, but I don't know how to fix this. The games called ASTROSMASH (at least for now) and I wanted to surprise the devs with a 3D Printed model of a gun in the game. When I run the command UtinyRipper.exe level0 it gives me this error below. I know the tomato town one had a similar issue but I'm unsure how to fix mine. Thanks for reading man! :D
image

Unable to Export Shaders (*Can't export program data DX11VertexSM40 as a text*)

While the header and subshader parts are still there, the most important parts of the shader get replaced with the line below. Is there anyway to fix it in future releases?

Example:

			GpuProgramID 18837
			Program "vp" {
				SubProgram "d3d11 " {
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" }
					"!!DX11VertexSM40
					/*Can't export program data DX11VertexSM40 as a text*/"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "UNITY_SINGLE_PASS_STEREO" }
					"!!DX11VertexSM40
					/*Can't export program data DX11VertexSM40 as a text*/"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" }
					"!!DX11VertexSM40
					/*Can't export program data DX11VertexSM40 as a text*/"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "UNITY_SINGLE_PASS_STEREO" }
					"!!DX11VertexSM40
					/*Can't export program data DX11VertexSM40 as a text*/"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "VERTEXLIGHT_ON" }
					"!!DX11VertexSM40
					/*Can't export program data DX11VertexSM40 as a text*/"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "VERTEXLIGHT_ON" "UNITY_SINGLE_PASS_STEREO" }
					"!!DX11VertexSM40
					/*Can't export program data DX11VertexSM40 as a text*/"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "VERTEXLIGHT_ON" }
					"!!DX11VertexSM40
					/*Can't export program data DX11VertexSM40 as a text*/"
				}
			}
			Program "fp" {
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" }
					"!!DX11PixelSM40
					/*Can't export program data DX11PixelSM40 as a text*/"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "UNITY_SINGLE_PASS_STEREO" }
					"!!DX11PixelSM40
					/*Can't export program data DX11PixelSM40 as a text*/"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" }
					"!!DX11PixelSM40
					/*Can't export program data DX11PixelSM40 as a text*/"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "UNITY_SINGLE_PASS_STEREO" }
					"!!DX11PixelSM40
					/*Can't export program data DX11PixelSM40 as a text*/"
				}
			}

'Unity default resources' incorrect version

Failed to rip HurtWorld Item V2 (version 0.6.1.0). I download lattest update.
Link to game : link

Import: Dependency 'resources/unity_builtin_extra' has been loaded

Необработанное исключение: System.Exception: Read 284 but expected 285 for object Font
в UtinyRipper.SerializedFiles.SerializedFile.ReadAsset(AssetStream stream, AssetInfo assetInfo, Int64 offset, Int32 size) в C:\Users\Alexey\Documents\UtinyRipper\UtinyRipperCore\Parser\Format\SerializedFile\SerializedFile.cs:строка 323
в UtinyRipper.SerializedFiles.SerializedFile.ReadAsset(AssetStream stream, ObjectInfo info, Int64 startPosition) в C:\Users\Alexey\Documents\UtinyRipper\UtinyRipperCore\Parser\Format\SerializedFile\SerializedFile.cs:строка 287
в UtinyRipper.SerializedFiles.SerializedFile.ReadAssets(EndianStream stream, Int64 startPosition) в C:\Users\Alexey\Documents\UtinyRipper\UtinyRipperCore\Parser\Format\SerializedFile\SerializedFile.cs:строка 266
в UtinyRipper.SerializedFiles.SerializedFile.Read(Stream baseStream, Action1 requestDependencyCallback) в C:\Users\Alexey\Documents\UtinyRipper\UtinyRipperCore\Parser\Format\SerializedFile\SerializedFile.cs:строка 99 в UtinyRipper.SerializedFiles.SerializedFile.Load(String assetPath, Action1 requestDependencyCallback) в C:\Users\Alexey\Documents\UtinyRipper\UtinyRipperCore\Parser\Format\SerializedFile\SerializedFile.cs:строка 53
в UtinyRipper.FileCollection.LoadSerializedFile(String filePath, String fileName) в C:\Users\Alexey\Documents\UtinyRipper\UtinyRipperCore\Parser\AssetCollection\FileCollection.cs:строка 80
в UtinyRipper.PlatformGameStructure.LoadEngineDependency(String path, String dependency) в C:\Users\Alexey\Documents\UtinyRipper\UtinyRipperCore\Parser\Game\PlatformGameStructure.cs:строка 155
в UtinyRipper.PlatformGameStructure.RequestDependency(String dependency) в C:\Users\Alexey\Documents\UtinyRipper\UtinyRipperCore\Parser\Game\PlatformGameStructure.cs:строка 96
в UtinyRipper.MixedGameStructure.RequestDependency(String dependency) в C:\Users\Alexey\Documents\UtinyRipper\UtinyRipperCore\Parser\Game\MixedGameStructure.cs:строка 53
в UtinyRipper.GameStructure.RequestDependency(String dependency) в C:\Users\Alexey\Documents\UtinyRipper\UtinyRipperCore\Parser\Game\GameStructure.cs:строка 95
в UtinyRipper.GameStructure.OnRequestDependency(String dependency) в C:\Users\Alexey\Documents\UtinyRipper\UtinyRipperCore\Parser\Game\GameStructure.cs:строка 223
в UtinyRipper.FileCollection.OnRequestDependency(String dependency) в C:\Users\Alexey\Documents\UtinyRipper\UtinyRipperCore\Parser\AssetCollection\FileCollection.cs:строка 310
в UtinyRipper.SerializedFiles.SerializedFile.Read(Stream baseStream, Action1 requestDependencyCallback) в C:\Users\Alexey\Documents\UtinyRipper\UtinyRipperCore\Parser\Format\SerializedFile\SerializedFile.cs:строка 94 в UtinyRipper.SerializedFiles.SerializedFile.Load(String assetPath, Action1 requestDependencyCallback) в C:\Users\Alexey\Documents\UtinyRipper\UtinyRipperCore\Parser\Format\SerializedFile\SerializedFile.cs:строка 53
в UtinyRipper.FileCollection.LoadSerializedFile(String filePath, String fileName) в C:\Users\Alexey\Documents\UtinyRipper\UtinyRipperCore\Parser\AssetCollection\FileCollection.cs:строка 80
в UtinyRipper.FileCollection.Load(String filePath) в C:\Users\Alexey\Documents\UtinyRipper\UtinyRipperCore\Parser\AssetCollection\FileCollection.cs:строка 49
в UtinyRipper.PlatformGameStructure.RequestDependency(String dependency) в C:\Users\Alexey\Documents\UtinyRipper\UtinyRipperCore\Parser\Game\PlatformGameStructure.cs:строка 86
в UtinyRipper.MixedGameStructure.RequestDependency(String dependency) в C:\Users\Alexey\Documents\UtinyRipper\UtinyRipperCore\Parser\Game\MixedGameStructure.cs:строка 53
в UtinyRipper.GameStructure.RequestDependency(String dependency) в C:\Users\Alexey\Documents\UtinyRipper\UtinyRipperCore\Parser\Game\GameStructure.cs:строка 95
в UtinyRipper.GameStructure.OnRequestDependency(String dependency) в C:\Users\Alexey\Documents\UtinyRipper\UtinyRipperCore\Parser\Game\GameStructure.cs:строка 223
в UtinyRipper.FileCollection.OnRequestDependency(String dependency) в C:\Users\Alexey\Documents\UtinyRipper\UtinyRipperCore\Parser\AssetCollection\FileCollection.cs:строка 310
в UtinyRipper.SerializedFiles.SerializedFile.Read(Stream baseStream, Action1 requestDependencyCallback) в C:\Users\Alexey\Documents\UtinyRipper\UtinyRipperCore\Parser\Format\SerializedFile\SerializedFile.cs:строка 94 в UtinyRipper.SerializedFiles.SerializedFile.Load(String assetPath, Action1 requestDependencyCallback) в C:\Users\Alexey\Documents\UtinyRipper\UtinyRipperCore\Parser\Format\SerializedFile\SerializedFile.cs:строка 53
в UtinyRipper.FileCollection.LoadSerializedFile(String filePath, String fileName) в C:\Users\Alexey\Documents\UtinyRipper\UtinyRipperCore\Parser\AssetCollection\FileCollection.cs:строка 80
в UtinyRipper.FileCollection.Load(String filePath) в C:\Users\Alexey\Documents\UtinyRipper\UtinyRipperCore\Parser\AssetCollection\FileCollection.cs:строка 49
в UtinyRipper.GameStructure.Load(IEnumerable1 pathes) в C:\Users\Alexey\Documents\UtinyRipper\UtinyRipperCore\Parser\Game\GameStructure.cs:строка 43 в UtinyRipper.Program.Load(IReadOnlyList1 args) в C:\Users\Alexey\Documents\UtinyRipper\UtinyRipper\Program.cs:строка 68
в UtinyRipper.Program.Main(String[] args) в C:\Users\Alexey\Documents\UtinyRipper\UtinyRipper\Program.cs:строка 58

Help regarding implementing some new features

hi , is there any support if i want to implement some new features like (Canvas image , text , layout groups etc or many other things.).
I have medium level skills of programming if you (@mafaca) can guide a little about how and where to start i will be really helpful as i have never tried a thing like that the decompiling stuff.

thanks :)

Invalid export file name

General: System.ArgumentException: Illegal characters in path.
General: System.ArgumentException: Illegal characters in path.
at System.IO.Path.CheckInvalidPathChars(String path, Boolean checkAdditional)
at System.IO.Path.Combine(String path1, String path2)
at UnityRipper.AssetExporters.YAMLAssetExporter.Export(IAssetsExporter exporter, IExportCollection collection, String dirPath) in C:\Users\user\Downloads\UnityRipper-master\UnityRipperCore\Parser\AssetCollection\Exporter\Exporters\YAMLAssetExporter.cs:line 52
at UnityRipper.AssetExporters.AssetsExporter.Export(String path, IEnumerable`1 objects) in C:\Users\user\Downloads\UnityRipper-master\UnityRipperCore\Parser\AssetCollection\Exporter\AssetsExporter.cs:line 97
at UnityRipper.Program.Main(String[] args) in C:\Users\user\Downloads\UnityRipper-master\UnityRipper\Program.cs:line 56

Can I use this under linux mono?

Using monodevelop, everything was compiled.
An error occurs when starting:

~/monoprojects/UtinyRipper/Bins/Debug$ mono UtinyRipper.exe Asset-bundle.asset

Unhandled Exception:
System.PlatformNotSupportedException: Operation is not supported on this platform.
at System.Security.AccessControl.NativeObjectSecurity.InternalGet (System.String name, System.Security.AccessControl.AccessControlSections includeSections) <0x7f9b25976010 + 0x000f5> in <6a5845e644be445286836dd53b9d9c11>:0
at System.IO.Directory.GetAccessControl (System.String path, System.Security.AccessControl.AccessControlSections includeSections) <0x7f9b259c4f00 + 0x00064> in <6a5845e644be445286836dd53b9d9c11>:0
at System.IO.DirectoryInfo.GetAccessControl () <0x7f9b259dd250 + 0x0000e> in <6a5845e644be445286836dd53b9d9c11>:0
at (wrapper remoting-invoke-with-check) System.IO.DirectoryInfo.GetAccessControl()
at UtinyRipper.Program.CheckWritePermission (System.String path) [0x00018] in :0
at UtinyRipper.Program.PrepareExportDirectory (System.String path) [0x00007] in :0
at UtinyRipper.Program.Load (System.Collections.Generic.IReadOnlyList1[T] args) [0x0002c] in <fdc07fbdff9642a4ab68ca8b2acccb3c>:0 at UtinyRipper.Program.Main (System.String[] args) [0x000ac] in <fdc07fbdff9642a4ab68ca8b2acccb3c>:0 [ERROR] FATAL UNHANDLED EXCEPTION: System.PlatformNotSupportedException: Operation is not supported on this platform. at System.Security.AccessControl.NativeObjectSecurity.InternalGet (System.String name, System.Security.AccessControl.AccessControlSections includeSections) <0x7f9b25976010 + 0x000f5> in <6a5845e644be445286836dd53b9d9c11>:0 at System.IO.Directory.GetAccessControl (System.String path, System.Security.AccessControl.AccessControlSections includeSections) <0x7f9b259c4f00 + 0x00064> in <6a5845e644be445286836dd53b9d9c11>:0 at System.IO.DirectoryInfo.GetAccessControl () <0x7f9b259dd250 + 0x0000e> in <6a5845e644be445286836dd53b9d9c11>:0 at (wrapper remoting-invoke-with-check) System.IO.DirectoryInfo.GetAccessControl() at UtinyRipper.Program.CheckWritePermission (System.String path) [0x00018] in <fdc07fbdff9642a4ab68ca8b2acccb3c>:0 at UtinyRipper.Program.PrepareExportDirectory (System.String path) [0x00007] in <fdc07fbdff9642a4ab68ca8b2acccb3c>:0 at UtinyRipper.Program.Load (System.Collections.Generic.IReadOnlyList1[T] args) [0x0002c] in :0
at UtinyRipper.Program.Main (System.String[] args) [0x000ac] in :0

Reading writing files is implemented only for Windows?..

Rip multiple files at once?

I was just wondering if there is any way to rip multiple files at once, since I don't really want to type in 1374 file names.

General: System.IO.DirectoryNotFoundException: Could not find part of path

Gave this error while extracting the level1, level2 ... can you help me?

Build: https://mega.nz/#!tQsRGQAb!nHa4E6Git1v9VFQGrFn_pJVAr6hBQ0tuLZBg_PJfUY0

General: System.IO.DirectoryNotFoundException: Could not find part of path 'C:\Use
rs\Erik\Downloads\MAS 11.5 Cine Build\MAS_CINEPB_Data\Ripped\level1\Texture2D\brick-wall-background-fo
rtythree-texture-and-background-brick-walls-quote-the-last-lecture-brick-walls-in-kitchen-decoration-p
hoto-brick-walls-kitchen-wall-background_NRM.dds.meta'.
em System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
em System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean u
seRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String
msgPath, Boolean bFromProxy, Boolean useLongPath, Boolean checkHost)
em System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share)
em UtinyRipper.AssetExporters.ExportCollection.ExportMeta(IExportContainer container, Meta meta, St
ring filePath)
em UtinyRipper.AssetExporters.AssetExportCollection.Export(ProjectAssetContainer container, String
dirPath)
em UtinyRipper.AssetExporters.ProjectExporter.Export(String path, IEnumerable1 assets) em UtinyRipper.Program.Load(IReadOnlyList1 args)

DX9 shader crash

"General:General: System.Exception: Unsupported gpu program type DX9VertexSM30
at UnityRipper.Classes.Shaders.ShaderGpuProgramTypeExtensions.ToGPUPlatform(ShaderGpuProgramType _this) in C:\Users\user\Downloads\UnityRipper-master\UnityRipperCore\Parser\Classes\Shader\Enums\ShaderGpuProgramType.cs:line 123
at UnityRipper.Classes.Shaders.SerializedProgram.ToString(StringBuilder sb, SShader shader, ShaderType type) in C:\Users\user\Downloads\UnityRipper-master\UnityRipperCore\Parser\Classes\Shader\SerializedShader\SerializedProgram.cs:line 34
at UnityRipper.Classes.Shaders.SerializedPass.ToString(StringBuilder sb, SShader shader) in C:\Users\user\Downloads\UnityRipper-master\UnityRipperCore\Parser\Classes\Shader\SerializedShader\SerializedPass.cs:line 68
at UnityRipper.Classes.Shaders.SerializedSubShader.ToString(StringBuilder sb, SShader shader) in C:\Users\user\Downloads\UnityRipper-master\UnityRipperCore\Parser\Classes\Shader\SerializedShader\SerializedSubShader.cs:line 36
at UnityRipper.Classes.Shaders.SerializedShader.ToString(StringBuilder sb, SShader shader) in C:\Users\user\Downloads\UnityRipper-master\UnityRipperCore\Parser\Classes\Shader\SerializedShader\SerializedShader.cs:line 40
at UnityRipper.Classes.SShader.ExportBinary() in C:\Users\user\Downloads\UnityRipper-master\UnityRipperCore\Parser\Classes\Shader\SerializedShader\SShader.cs:line 77
at UnityRipper.AssetExporters.BinaryAssetExporter.Export(IExportCollection collection, String dirPath) in C:\Users\user\Downloads\UnityRipper-master\UnityRipperCore\Parser\AssetCollection\Exporter\Exporters\BinaryAssetExporter.cs:line 19
at UnityRipper.AssetExporters.AssetsExporter.Export(String path, IEnumerable`1 objects) in C:\Users\user\Downloads\UnityRipper-master\UnityRipperCore\Parser\AssetCollection\Exporter\AssetsExporter.cs:line 87
at UnityRipper.Program.Main(String[] args) in C:\Users\user\Downloads\UnityRipper-master\UnityRipper\Program.cs:line 56"

Latest Build Is Giving This Error On Each File

General: System.Exception: Read 41314848 bytes intead of 1634100548
   at UtinyRipper.EndianStream.ReadStringBuffer(Int32 length)
   at UtinyRipper.AssetStream.ReadStringAligned(Int32 length)
   at UtinyRipper.EndianStream.ReadStringAligned()
   at UtinyRipper.EndianStream.ReadStringArray()
   at UtinyRipper.Classes.PreloadData.Read(AssetStream stream)
   at UtinyRipper.SerializedFiles.SerializedFile.ReadAsset(AssetStream stream, AssetInfo assetInfo, Int64 offset, Int32 size)
   at UtinyRipper.SerializedFiles.SerializedFile.ReadAssets(EndianStream stream, Int64 startPosition)
   at UtinyRipper.SerializedFiles.SerializedFile.Read(Stream baseStream)
   at UtinyRipper.FileCollection.ReadSerializedFile(Stream stream, String filePath, String fileName)
   at UtinyRipper.FileCollection.Read(Stream stream, String filePath, String fileName)
   at UtinyRipper.Program.LoadFiles(FileCollection collection, IEnumerable`1 filePathes)
   at UtinyRipper.Program.Main(String[] args)

Test Files.zip

Error OverflowException

Drag and drop a file :
General: System.OverflowException: Array dimensions exceeded supported range. at UnityRipper.AssetStream.ReadArray[T]() in C:\Users\Kem\Desktop\UnityRipper-master\UnityRipperCore\Parser\IO\AssetStream\AssetStream.cs:line 26 at UnityRipper.Classes.Avatars.SkeletonPose.Read(AssetStream stream) in C:\Users\Kem\Desktop\UnityRipper-master\UnityRipperCore\Parser\Classes\Avatar\SkeletonPose.cs:line 11 at UnityRipper.Classes.OffsetPtr1.Read(AssetStream stream) in C:\Users\Kem\Desktop\UnityRipper-master\UnityRipperCore\Parser\Classes\Base\OffsetPtr.cs:line 16
at UnityRipper.Classes.Avatars.Human.Read(AssetStream stream) in C:\Users\Kem\Desktop\UnityRipper-master\UnityRipperCore\Parser\Classes\Avatar\Human.cs:line 19
at UnityRipper.Classes.OffsetPtr1.Read(AssetStream stream) in C:\Users\Kem\Desktop\UnityRipper-master\UnityRipperCore\Parser\Classes\Base\OffsetPtr.cs:line 16 at UnityRipper.Classes.Avatars.AvatarConstant.Read(AssetStream stream) in C:\Users\Kem\Desktop\UnityRipper-master\UnityRipperCore\Parser\Classes\Avatar\AvatarConstant.cs:line 21 at UnityRipper.Classes.Avatar.Read(AssetStream stream) in C:\Users\Kem\Desktop\UnityRipper-master\UnityRipperCore\Parser\Classes\Avatar\Avatar.cs:line 22 at UnityRipper.SerializedFiles.SerializedFile.ReadAsset(AssetStream stream, AssetInfo assetInfo, Int64 offset, Int32 size) in C:\Users\Kem\Desktop\UnityRipper-master\UnityRipperCore\Parser\Format\SerializedFile\SerializedFile.cs:line 377 at UnityRipper.SerializedFiles.SerializedFile.ReadAssets(EndianStream stream, Int64 startPosition) in C:\Users\Kem\Desktop\UnityRipper-master\UnityRipperCore\Parser\Format\SerializedFile\SerializedFile.cs:line 215 at UnityRipper.SerializedFiles.SerializedFile.Read(Stream baseStream) in C:\Users\Kem\Desktop\UnityRipper-master\UnityRipperCore\Parser\Format\SerializedFile\SerializedFile.cs:line 92 at UnityRipper.BundleFiles.BundleFileEntry.ReadSerializedFile(IAssetCollection collection, String filePath) in C:\Users\Kem\Desktop\UnityRipper-master\UnityRipperCore\Parser\Format\BundleFile\Entry\BundleFileEntry.cs:line 17 at UnityRipper.AssetCollection.ProcessSerializedFileData(BundleFileData fileData, String filePath) in C:\Users\Kem\Desktop\UnityRipper-master\UnityRipperCore\Parser\AssetCollection\AssetCollection.cs:line 195 at UnityRipper.AssetCollection.ReadAssetBundle(Stream stream, String filePath) in C:\Users\Kem\Desktop\UnityRipper-master\UnityRipperCore\Parser\AssetCollection\AssetCollection.cs:line 64 at UnityRipper.AssetCollection.Read(Stream stream, String filePath, String fileName) in C:\Users\Kem\Desktop\UnityRipper-master\UnityRipperCore\Parser\AssetCollection\AssetCollection.cs:line 38 at UnityRipper.Program.LoadFiles(AssetCollection collection, IEnumerable1 filePathes) in C:\Users\Kem\Desktop\UnityRipper-master\UnityRipper\Program.cs:line 83
at UnityRipper.Program.Main(String[] args) in C:\Users\Kem\Desktop\UnityRipper-master\UnityRipper\Program.cs:line 47
`

The path is not of a legal form (Superhot)

Today's UtinyRipper
Initialize engine version: 5.3.5f1 (960ebf59018a) according to output_log.txt
Game: Superhot (current Steam version)

UtinyRipper.exe level23

[...]

Export: 'wpn_pistol_fire(AudioClip)' exported
Export: 'TunnelsOutStart(AudioClip)' exported
General: System.ArgumentException: The path is not of a legal form.
   at System.IO.Path.NormalizePath(String path, Boolean fullCheck, Int32 maxPathLength, Boolean expandShortPaths)
   at System.IO.Path.InternalGetDirectoryName(String path)
   at UtinyRipper.FileMultiStream.Exists(String path)
   at UtinyRipper.FileCollection.FindResourcesFile(ISerializedFile ifile, String fileName)
   at UtinyRipper.Classes.AudioClip.ExportBinary(IExportContainer container, Stream stream)
   at UtinyRipper.AssetExporters.BinaryAssetExporter.Export(IExportContainer container, Object asset, String path)
   at UtinyRipper.AssetExporters.AssetExportCollection.ExportInner(ProjectAssetContainer container, String filePath)
   at UtinyRipper.AssetExporters.AssetExportCollection.Export(ProjectAssetContainer container, String dirPath)
   at UtinyRipper.AssetExporters.ProjectExporter.Export(String path, IEnumerable`1 assets)
   at UtinyRipper.Program.Load(IReadOnlyList`1 args)

Same thing happens if trying to rip file level1.

Ripping sharedassets0.assets works.

At the beginning, the following warning shows:

Import: Asset collection has versions probably incompatible with each other. Here they are:
Import: 5.3.5f1
Import: 5.3.4p1
Export: Can't export 'Arial(Font)' because it isn't valid
Export: Can't export 'Font Texture(Texture2D)' because it isn't valid

For some files, there are more export failures for fonts/font textures.

Sprites exporting

Uhm...I tried to export a game nammed "Baldi's Basic in Education and Learning" and I can't see anything in the scene because the ripper doesn't export sprites.
Could you maybe add the sprites comptability to exporter ? Please.
2018-08-18 17_25_40-d__telechargements_utinyripperfull 2 zip_

Problem as uploading the ripped assets on Unity

I don't really know if it's normal, but for most of the games, some textures of the folder "Texture2D" (.dds) make Unity bug and importing it for forever. And it's really annoying since 3/4 of the textures are in Texture2D.

General: System.Exception: Read 82332 bytes intead of 1227770197

Gave this error while extracting the level ... can you help me?

Build: https://mega.nz/#!tQsRGQAb!nHa4E6Git1v9VFQGrFn_pJVAr6hBQ0tuLZBg_PJfUY0

Import: Dependency 'resources/unity_builtin_extra' was loaded Import: Dependency 'Resources\unity default resources' was loaded Import: Dependency 'globalgamemanagers.assets' was loaded Import: Dependency 'sharedassets0.assets' was loaded Import: Dependency 'resources.assets' was loaded Import: Dependency 'sharedassets1.assets' was loaded General: System.Exception: Read 82332 bytes intead of 1227770197 em UtinyRipper.EndianStream.ReadStringBuffer(Int32 length) em UtinyRipper.AssetStream.ReadStringAligned(Int32 length) em UtinyRipper.AssetExporters.ScriptField.Read(AssetStream stream) em UtinyRipper.AssetExporters.ScriptStructure.Read(AssetStream stream) em UtinyRipper.AssetExporters.ScriptField.Read(AssetStream stream) em UtinyRipper.AssetExporters.ScriptStructure.Read(AssetStream stream) em UtinyRipper.AssetExporters.ScriptField.Read(AssetStream stream) em UtinyRipper.AssetExporters.ScriptStructure.Read(AssetStream stream) em UtinyRipper.AssetExporters.ScriptStructure.Read(AssetStream stream) em UtinyRipper.AssetExporters.ScriptStructure.Read(AssetStream stream) em UtinyRipper.AssetExporters.ScriptField.Read(AssetStream stream) em UtinyRipper.AssetExporters.ScriptStructure.Read(AssetStream stream) em UtinyRipper.SerializedFiles.SerializedFile.ReadAsset(AssetStream stream, AssetInfo assetInfo, In t64 offset, Int32 size) em UtinyRipper.SerializedFiles.SerializedFile.ReadAsset(AssetStream stream, ObjectInfo info, Int64 startPosition) em UtinyRipper.SerializedFiles.SerializedFile.ReadAssets(EndianStream stream, Int64 startPosition) em UtinyRipper.SerializedFiles.SerializedFile.Read(Stream baseStream, Action1 requestDependencyCal lback) em UtinyRipper.FileCollection.ReadSerializedFile(Stream stream, String filePath, String fileName) em UtinyRipper.Program.LoadFile(String fullFilePath, String originalFileName) em UtinyRipper.Program.LoadFiles(IEnumerable1 filePathes) em UtinyRipper.Program.Load(IReadOnlyList`1 args)

System.OverflowException and Read but expected errors with Unity 5.3.5f1, 5.4.0f3, 5.6.3p1 games

Unity 5.4.0f3 . Using today's utinyripper build. Freeware/demo game https://steelraven7.itch.io/ravenfield

UtinyRipper.exe resources.assets
Import: Dependency 'Resources\unity default resources' was loaded
Import: Dependency 'resources/unity_builtin_extra' was loaded
Import: Dependency 'globalgamemanagers.assets' was loaded
General: System.OverflowException: Array dimensions exceeded supported range.
   at UtinyRipper.AssetStream.ReadArray[T]()
   at UtinyRipper.Classes.Avatars.SkeletonPose.Read(AssetStream stream)
   at UtinyRipper.Classes.OffsetPtr`1.Read(AssetStream stream)
   at UtinyRipper.Classes.Avatars.Human.Read(AssetStream stream)
   at UtinyRipper.Classes.OffsetPtr`1.Read(AssetStream stream)
   at UtinyRipper.Classes.Avatars.AvatarConstant.Read(AssetStream stream)
   at UtinyRipper.Classes.Avatar.Read(AssetStream stream)
   at UtinyRipper.SerializedFiles.SerializedFile.ReadAsset(AssetStream stream, AssetInfo assetInfo, Int64 offset, Int32 size)
   at UtinyRipper.SerializedFiles.SerializedFile.ReadAsset(AssetStream stream, ObjectInfo info, Int64 startPosition)
   at UtinyRipper.SerializedFiles.SerializedFile.ReadAssets(EndianStream stream, Int64 startPosition)
   at UtinyRipper.SerializedFiles.SerializedFile.Read(Stream baseStream, Action`1 requestDependencyCallback)
   at UtinyRipper.FileCollection.ReadSerializedFile(Stream stream, String filePath, String fileName)
   at UtinyRipper.FileCollection.Read(Stream stream, String filePath, String fileName)
   at UtinyRipper.Program.LoadFile(String fullFilePath, String originalFileName)
   at UtinyRipper.Program.TryLoadDependency(String loadName, String originalName)
   at UtinyRipper.Program.LoadDependency(String fileName)
   at UtinyRipper.Program.OnRequestDependency(String dependency)
   at UtinyRipper.FileCollection.OnRequestDependency(String dependency)
   at UtinyRipper.SerializedFiles.SerializedFile.Read(Stream baseStream, Action`1 requestDependencyCallback)
   at UtinyRipper.FileCollection.ReadSerializedFile(Stream stream, String filePath, String fileName)
   at UtinyRipper.FileCollection.Read(Stream stream, String filePath, String fileName)
   at UtinyRipper.Program.LoadFile(String fullFilePath, String originalFileName)
   at UtinyRipper.Program.LoadFiles(IEnumerable`1 filePathes)
   at UtinyRipper.Program.Load(IReadOnlyList`1 args)

And with a Unity 5.6.3p1 game (paid Ravenfield version from Steam)

UtinyRipper.exe Resources.assets
Import: Dependency 'resources/unity_builtin_extra' was loaded
Import: Dependency 'Resources\unity default resources' was loaded
Import: Dependency 'globalgamemanagers.assets' was loaded
General: System.Exception: Read 160825 but expected 160824 for object Font
   at UtinyRipper.SerializedFiles.SerializedFile.ReadAsset(AssetStream stream, AssetInfo assetInfo, Int64 offset, Int32 size)
   at UtinyRipper.SerializedFiles.SerializedFile.ReadAsset(AssetStream stream, ObjectInfo info, Int64 startPosition)
   at UtinyRipper.SerializedFiles.SerializedFile.ReadAssets(EndianStream stream, Int64 startPosition)
   at UtinyRipper.SerializedFiles.SerializedFile.Read(Stream baseStream, Action`1 requestDependencyCallback)
   at UtinyRipper.FileCollection.ReadSerializedFile(Stream stream, String filePath, String fileName)
   at UtinyRipper.Program.LoadFile(String fullFilePath, String originalFileName)
   at UtinyRipper.Program.TryLoadDependency(String loadName, String originalName)
   at UtinyRipper.Program.LoadDependency(String fileName)
   at UtinyRipper.FileCollection.OnRequestDependency(String dependency)
   at UtinyRipper.SerializedFiles.SerializedFile.Read(Stream baseStream, Action`1 requestDependencyCallback)
   at UtinyRipper.FileCollection.ReadSerializedFile(Stream stream, String filePath, String fileName)
   at UtinyRipper.Program.LoadFile(String fullFilePath, String originalFileName)
   at UtinyRipper.Program.LoadFiles(IEnumerable`1 filePathes)
   at UtinyRipper.Program.Load(IReadOnlyList`1 args)

Unity 5.3.5f1 game (Ravenfield.zip from https://steelraven7.itch.io/ravenfield-beta-3-old-game-version?secret=C2Jwn6nFFBVNLANgtJGGx3OF4 )

UtinyRipper.exe level1

Import: Dependency 'resources/unity_builtin_extra' was loaded
Import: Dependency 'Resources\unity default resources' was loaded
Import: Dependency 'globalgamemanagers.assets' was loaded
Import: Dependency 'resources.assets' was loaded
Import: Dependency 'sharedassets0.assets' was loaded
General: System.Exception: Read 472287 but expected 1073741824
   at UtinyRipper.EndianStream.ReadByteArray()
   at UtinyRipper.Classes.TerrainDatas.DetailPatch.Read(AssetStream stream)
   at UtinyRipper.AssetStream.ReadArray[T]()
   at UtinyRipper.Classes.TerrainDatas.DetailDatabase.Read(AssetStream stream)
   at UtinyRipper.Classes.TerrainData.Read(AssetStream stream)
   at UtinyRipper.SerializedFiles.SerializedFile.ReadAsset(AssetStream stream, AssetInfo assetInfo, Int64 offset, Int32 size)
   at UtinyRipper.SerializedFiles.SerializedFile.ReadAsset(AssetStream stream, ObjectInfo info, Int64 startPosition)
   at UtinyRipper.SerializedFiles.SerializedFile.ReadAssets(EndianStream stream, Int64 startPosition)
   at UtinyRipper.SerializedFiles.SerializedFile.Read(Stream baseStream, Action`1 requestDependencyCallback)
   at UtinyRipper.FileCollection.ReadSerializedFile(Stream stream, String filePath, String fileName)
   at UtinyRipper.Program.LoadFile(String fullFilePath, String originalFileName)
   at UtinyRipper.Program.TryLoadDependency(String loadName, String originalName)
   at UtinyRipper.Program.LoadDependency(String fileName)
   at UtinyRipper.FileCollection.OnRequestDependency(String dependency)
   at UtinyRipper.SerializedFiles.SerializedFile.Read(Stream baseStream, Action`1 requestDependencyCallback)
   at UtinyRipper.FileCollection.ReadSerializedFile(Stream stream, String filePath, String fileName)
   at UtinyRipper.Program.LoadFile(String fullFilePath, String originalFileName)
   at UtinyRipper.Program.LoadFiles(IEnumerable`1 filePathes)
   at UtinyRipper.Program.Load(IReadOnlyList`1 args)

Some other erros when drop folder in UtinyRipper

Hello.
I'm having more issues when trying to drop an folder into script.

if i try to move the folder, i give different errors (one from the apk extracted, and other from data extracted from android folder).
The game is "Crossfire Mobile" made in Unity.

The first error is:

image
General: System.ArgumentException: Já foi adicionado um item com a mesma chave. em System.ThrowHelper.ThrowArgumentException(ExceptionResource resource) em System.Collections.Generic.Dictionary2.Insert(TKey key, TValue value, Boolean add)
em UtinyRipper.MixedGameStructure.AddDirectory(DirectoryInfo directory)
em UtinyRipper.MixedGameStructure.AddDirectory(DirectoryInfo directory)
em UtinyRipper.MixedGameStructure.AddFiles(IEnumerable1 pathes) em UtinyRipper.GameStructure.CheckMixed(List1 pathes)
em UtinyRipper.GameStructure.Load(IEnumerable1 pathes) em UtinyRipper.Program.Load(IReadOnlyList1 args)
`

and other are:

image

General: System.Exception: Read 80 but expected 21936 for asset type Texture2D. Version[5.6.4p4] em UtinyRipper.SerializedFiles.SerializedFile.ReadAsset(AssetStream stream, AssetInfo assetInfo, Int64 offset, Int32 size) em UtinyRipper.SerializedFiles.SerializedFile.ReadAsset(AssetStream stream, AssetEntry info, Int64 startPosition) em UtinyRipper.SerializedFiles.SerializedFile.ReadAssets(EndianStream stream, Int64 startPosition) em UtinyRipper.SerializedFiles.SerializedFile.Read(Stream baseStream, Action1 requestDependencyCallback)
em UtinyRipper.SerializedFiles.SerializedFile.Load(String assetPath, Action1 requestDependencyCallback) em UtinyRipper.FileCollection.LoadSerializedFile(String filePath, String fileName) em UtinyRipper.PlatformGameStructure.RequestDependency(String dependency) em UtinyRipper.GameStructure.RequestDependency(String dependency) em UtinyRipper.FileCollection.OnRequestDependency(String dependency) em UtinyRipper.SerializedFiles.SerializedFile.Read(Stream baseStream, Action1 requestDependencyCallback)
em UtinyRipper.SerializedFiles.SerializedFile.Load(String assetPath, Action1 requestDependencyCallback) em UtinyRipper.FileCollection.LoadSerializedFile(String filePath, String fileName) em UtinyRipper.GameStructure.Load(IEnumerable1 pathes)
em UtinyRipper.Program.Load(IReadOnlyList1 args)

First, thank you so much for this tool, it looks very promissing!
and i hope you can help me, i really excited to rip some models to an 3d animation.

System.Collections.Generic.KeyNotFoundException

未经处理的异常: System.Collections.Generic.KeyNotFoundException: 给定关键字不在字典中。
在 System.ThrowHelper.ThrowKeyNotFoundException()
在 System.Collections.Generic.Dictionary2.get_Item(TKey key) 在 UtinyRipper.Classes.AnimatorControllers.Editor.AnimatorState..ctor(VirtualSerializedFile file, AnimatorController controller, Int32 stateMachineIndex, Int32 stateIndex, Vector3f position) 位置 D:\UnityProject\UtinyRipper\UtinyRipperCore\Parser\Classes\AnimatorController\Editor\AnimatorTransition\AnimatorState.cs:行号 46 在 UtinyRipper.Classes.AnimatorControllers.Editor.AnimatorStateMachine..ctor(VirtualSerializedFile file, AnimatorController controller, Int32 stateMachineIndex) 位置 D:\UnityProject\UtinyRipper\UtinyRipperCore\Parser\Classes\AnimatorController\Editor\AnimatorStateMachine\AnimatorStateMachine.cs:行号 34 在 UtinyRipper.AssetExporters.AnimatorControllerExportCollection.TryInitialize(ProjectAssetContainer container) 位置 D:\UnityProject\UtinyRipper\UtinyRipperCore\Parser\AssetCollection\Exporter\Collections\AnimatorControllerExportCollection.cs:行号 42 在 UtinyRipper.AssetExporters.AnimatorControllerExportCollection.ExportInner(ProjectAssetContainer container, String filePath) 位置 D:\UnityProject\UtinyRipper\UtinyRipperCore\Parser\AssetCollection\Exporter\Collections\AnimatorControllerExportCollection.cs:行号 24 在 UtinyRipper.AssetExporters.AssetExportCollection.Export(ProjectAssetContainer container, String dirPath) 位置 D:\UnityProject\UtinyRipper\UtinyRipperCore\Parser\AssetCollection\Exporter\Collections\AssetExportCollection.cs:行号 49 在 UtinyRipper.AssetExporters.ProjectExporter.Export(String path, IEnumerable1 assets) 位置 D:\UnityProject\UtinyRipper\UtinyRipperCore\Parser\AssetCollection\Exporter\ProjectExporter.cs:行号 161
在 UtinyRipper.GameStructure.Export(String exportPath, Func2 selector) 位置 D:\UnityProject\UtinyRipper\UtinyRipperCore\Parser\Game\GameStructure.cs:行号 50 在 UtinyRipper.Program.Load(IReadOnlyList1 args) 位置 D:\UnityProject\UtinyRipper\UtinyRipper\Program.cs:行号 81
在 UtinyRipper.Program.Main(String[] args) 位置 D:\UnityProject\UtinyRipper\UtinyRipper\Program.cs:行号 58
Android\player\character
Android\player\character

未经处理的异常: System.Collections.Generic.KeyNotFoundException: 给定关键字不在字典中。
在 System.ThrowHelper.ThrowKeyNotFoundException()
在 System.Collections.Generic.Dictionary2.get_Item(TKey key) 在 UtinyRipper.Classes.AnimatorControllers.Editor.AnimatorState..ctor(VirtualSerializedFile file, AnimatorController controller, Int32 stateMachineIndex, Int32 stateIndex, Vector3f position) 位置 D:\UnityProject\UtinyRipper\UtinyRipperCore\Parser\Classes\AnimatorController\Editor\AnimatorTransition\AnimatorState.cs:行号 46 在 UtinyRipper.Classes.AnimatorControllers.Editor.AnimatorStateMachine..ctor(VirtualSerializedFile file, AnimatorController controller, Int32 stateMachineIndex) 位置 D:\UnityProject\UtinyRipper\UtinyRipperCore\Parser\Classes\AnimatorController\Editor\AnimatorStateMachine\AnimatorStateMachine.cs:行号 34 在 UtinyRipper.AssetExporters.AnimatorControllerExportCollection.TryInitialize(ProjectAssetContainer container) 位置 D:\UnityProject\UtinyRipper\UtinyRipperCore\Parser\AssetCollection\Exporter\Collections\AnimatorControllerExportCollection.cs:行号 42 在 UtinyRipper.AssetExporters.AnimatorControllerExportCollection.ExportInner(ProjectAssetContainer container, String filePath) 位置 D:\UnityProject\UtinyRipper\UtinyRipperCore\Parser\AssetCollection\Exporter\Collections\AnimatorControllerExportCollection.cs:行号 24 在 UtinyRipper.AssetExporters.AssetExportCollection.Export(ProjectAssetContainer container, String dirPath) 位置 D:\UnityProject\UtinyRipper\UtinyRipperCore\Parser\AssetCollection\Exporter\Collections\AssetExportCollection.cs:行号 49 在 UtinyRipper.AssetExporters.ProjectExporter.Export(String path, IEnumerable1 assets) 位置 D:\UnityProject\UtinyRipper\UtinyRipperCore\Parser\AssetCollection\Exporter\ProjectExporter.cs:行号 161
在 UtinyRipper.GameStructure.Export(String exportPath, Func2 selector) 位置 D:\UnityProject\UtinyRipper\UtinyRipperCore\Parser\Game\GameStructure.cs:行号 50 在 UtinyRipper.Program.Load(IReadOnlyList1 args) 位置 D:\UnityProject\UtinyRipper\UtinyRipper\Program.cs:行号 81
在 UtinyRipper.Program.Main(String[] args) 位置 D:\UnityProject\UtinyRipper\UtinyRipper\Program.cs:行号 58

Too many )'s.

When testing extracting file level1 of Easy Red (paid game on steam), error at bottom appears.

There is no log file but the exe properties show this product version: 2017.3.1.16522547

Perhaps reproduce-able with the free demo version at https://corvobrok.itch.io/easyred

General: System.ArgumentException: parsing "gerHelmetSSLOD)[_]?[\d]*\.[^.]+$" - Too many )'s.
   at System.Text.RegularExpressions.RegexParser.ScanRegex()
   at System.Text.RegularExpressions.RegexParser.Parse(String re, RegexOptions op)
   at System.Text.RegularExpressions.Regex..ctor(String pattern, RegexOptions options, TimeSpan matchTimeout, Boolean useCache)
   at System.Text.RegularExpressions.Regex..ctor(String pattern)
   at UtinyRipper.DirectoryUtils.GetMaxIndexName(String dirPath, String fileName)
   at UtinyRipper.AssetExporters.ExportCollection.GetUniqueFileName(Object object, String dirPath)
   at UtinyRipper.AssetExporters.AssetExportCollection.Export(ProjectAssetContainer container, String dirPath)
   at UtinyRipper.AssetExporters.ProjectExporter.Export(String path, IEnumerable`1 objects)
   at UtinyRipper.Program.Load(IReadOnlyList`1 args)

Theory: unexpected characters are not sanitized? https://xkcd.com/327/

5.5.3p4 sprite error

Just trying out latest debug version in another free game ( https://store.steampowered.com/app/767560/War_Robots/ ). Unity 5.5.3p4 according to output_log.txt

C:\Program Files (x86)\Steam\steamapps\common\War Robots\WarRobots_Data>UtinyRipper.exe level3
Import: Dependency 'resources/unity_builtin_extra' was loaded
General: System.Exception: Read 2300 but expected 2308 for object Sprite
   at UtinyRipper.SerializedFiles.SerializedFile.ReadAsset(AssetStream stream, AssetInfo assetInfo, Int64 offset, Int32 size)
   at UtinyRipper.SerializedFiles.SerializedFile.ReadAsset(AssetStream stream, ObjectInfo info, Int64 startPosition)
   at UtinyRipper.SerializedFiles.SerializedFile.ReadAssets(EndianStream stream, Int64 startPosition)
   at UtinyRipper.SerializedFiles.SerializedFile.Read(Stream baseStream, Action`1 requestDependencyCallback)
   at UtinyRipper.FileCollection.ReadSerializedFile(Stream stream, String filePath, String fileName)
   at UtinyRipper.FileCollection.Read(Stream stream, String filePath, String fileName)
   at UtinyRipper.Program.LoadFile(String fullFilePath, String originalFileName)
   at UtinyRipper.Program.TryLoadDependency(String loadName, String originalName)
   at UtinyRipper.Program.LoadDependency(String fileName)
   at UtinyRipper.Program.OnRequestDependency(String dependency)
   at UtinyRipper.FileCollection.OnRequestDependency(String dependency)
   at UtinyRipper.SerializedFiles.SerializedFile.Read(Stream baseStream, Action`1 requestDependencyCallback)
   at UtinyRipper.FileCollection.ReadSerializedFile(Stream stream, String filePath, String fileName)
   at UtinyRipper.FileCollection.Read(Stream stream, String filePath, String fileName)
   at UtinyRipper.Program.LoadFile(String fullFilePath, String originalFileName)
   at UtinyRipper.Program.TryLoadDependency(String loadName, String originalName)
   at UtinyRipper.Program.LoadDependency(String fileName)
   at UtinyRipper.Program.OnRequestDependency(String dependency)
   at UtinyRipper.FileCollection.OnRequestDependency(String dependency)
   at UtinyRipper.SerializedFiles.SerializedFile.Read(Stream baseStream, Action`1 requestDependencyCallback)
   at UtinyRipper.FileCollection.ReadSerializedFile(Stream stream, String filePath, String fileName)
   at UtinyRipper.FileCollection.Read(Stream stream, String filePath, String fileName)
   at UtinyRipper.Program.LoadFile(String fullFilePath, String originalFileName)
   at UtinyRipper.Program.LoadFiles(IEnumerable`1 filePathes)
   at UtinyRipper.Program.Load(IReadOnlyList`1 args)

Dependency issue

Whenever I export something I see this error message (see picture) although most exports are fine others such as mesh are broken "block sequence entries are not allowed in this context". I thought maybe that's the issue but I couldn't find any way to solve this as regardless when I try to create a manual path with given asset he still throws that error. Any advice?

Thanks

dependency

Can not extract any animation out of the World of Tennis Game [Bug]

I tried to extract the level 13 from this game's apk, which can be downloaded from:
https://apkpure.com/world-of-tennis-roaring-%E2%80%9920s/com.Helium9Games.WorldOfTennis

The app managed to extract everything(animation controller, mesh..., etc) without any problem, but not that animation files, which will contain a totally empty animation sequence(just some kind of definitions, but not animation data).

By the way I tried to change the version of the default resource according to this:
#36

I really hope, you guys can figure out the problem.

Thanks

Frank

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.