Comments (22)
Saving actually works, but when you change, you need to save it into a separate new file, for some reason the existing file does not change
from uabea.
I modified the (filename).book.dat file by pressing the Import Raw button and then clicked Save, but it leaves 42.3 MB of saved files and exits without any error messages.
What version of uabea are you using? Are you editing a bundle or an assets file? When you clicked save did it ask where to save the file or did it instantly crash? What do you mean by "it leaves 42.3 MB of saved files"?
Please send a crashlog (https://github.com/nesrak1/UABEA/wiki/Sending-a-crashlog)
from uabea.
@nesrak1 It asked where to save it, and I specified a location to save it and saved it.
After that, the UABEA window closes without completing with no response.
After that, 42.3 MB of saved file was created.
The log is:
2021/06/04 午後 01:45:33 .NET Runtime 1026 None
Application: UABEAvalonia.exe
CoreCLR Version: 5.0.521.16609
.NET Version: 5.0.5
Description: The process was terminated due to an unhandled exception.
Exception Info: System.ArgumentOutOfRangeException: Non-negative number required. (Parameter 'count')
at System.IO.BinaryReader.ReadBytes(Int32 count)
at AssetsTools.NET.AssetBundleFile.Write(AssetsFileWriter writer, List1 replacers, ClassDatabaseFile typeMeta) at UABEAvalonia.MainWindow.SaveBundle(BundleFileInstance bundleInst, String path) in C:\Users\nesquack\Documents\GitRepos\UABEA\UABEAvalonia\MainWindow.axaml.cs:line 280 at UABEAvalonia.MainWindow.AskForSaveLocation() in C:\Users\nesquack\Documents\GitRepos\UABEA\UABEAvalonia\MainWindow.axaml.cs:line 174 at UABEAvalonia.MainWindow.MenuSave_Click(Object sender, RoutedEventArgs e) in C:\Users\nesquack\Documents\GitRepos\UABEA\UABEAvalonia\MainWindow.axaml.cs:line 153 at System.Threading.Tasks.Task.<>c.<ThrowAsync>b__140_0(Object state) at Avalonia.Threading.AvaloniaSynchronizationContext.<>c__DisplayClass5_0.<Post>b__0() in /_/src/Avalonia.Base/Threading/AvaloniaSynchronizationContext.cs:line 33 at Avalonia.Threading.JobRunner.RunJobs(Nullable
1 priority) in //src/Avalonia.Base/Threading/JobRunner.cs:line 37
at Avalonia.Win32.Win32Platform.WndProc(IntPtr hWnd, UInt32 msg, IntPtr wParam, IntPtr lParam) in //src/Windows/Avalonia.Win32/Win32Platform.cs:line 210
at Avalonia.Win32.Interop.UnmanagedMethods.DispatchMessage(MSG& lpmsg)
at Avalonia.Win32.Win32Platform.RunLoop(CancellationToken cancellationToken) in //src/Windows/Avalonia.Win32/Win32Platform.cs:line 157
at Avalonia.Threading.Dispatcher.MainLoop(CancellationToken cancellationToken) in //src/Avalonia.Base/Threading/Dispatcher.cs:line 61
at Avalonia.Controls.ApplicationLifetimes.ClassicDesktopStyleApplicationLifetime.Start(String[] args) in //src/Avalonia.Controls/ApplicationLifetimes/ClassicDesktopStyleApplicationLifetime.cs:line 107
at Avalonia.ClassicDesktopStyleApplicationLifetimeExtensions.StartWithClassicDesktopLifetime[T](T builder, String[] args, ShutdownMode shutdownMode) in //src/Avalonia.Controls/ApplicationLifetimes/ClassicDesktopStyleApplicationLifetime.cs:line 134
at UABEAvalonia.Program.Main(String[] args) in C:\Users\nesquack\Documents\GitRepos\UABEA\UABEAvalonia\Program.cs:line 47
from uabea.
Are you using release 2? I doubt it will fix anything but can you try using the latest build?
from uabea.
This is the result occurred after using Release 2.
from uabea.
I understand that from the log but can you try on the latest build as well? You may be reporting a bug that has already been fixed.
from uabea.
Same result as using Release 2 when using latest build...
The Unity version I'm working on right now is:
File version is 2019.4.13.34615, Product version is 2019.4.13.5343031
The log is:
2021/06/06 午後 07:15:05 .NET Runtime 1026 None
Application: UABEAvalonia.exe
CoreCLR Version: 5.0.521.16609
.NET Version: 5.0.5
Description: The process was terminated due to an unhandled exception.
Exception Info: System.ArgumentOutOfRangeException: Non-negative number required. (Parameter 'count')
at System.IO.BinaryReader.ReadBytes(Int32 count)
at AssetsTools.NET.AssetBundleFile.Write(AssetsFileWriter writer, List1 replacers, ClassDatabaseFile typeMeta) at UABEAvalonia.MainWindow.SaveBundle(BundleFileInstance bundleInst, String path) in D:\a\UABEA\UABEA\UABEAvalonia\MainWindow.axaml.cs:line 542 at UABEAvalonia.MainWindow.AskForLocationAndSave() in D:\a\UABEA\UABEA\UABEAvalonia\MainWindow.axaml.cs:line 383 at UABEAvalonia.MainWindow.MenuSave_Click(Object sender, RoutedEventArgs e) in D:\a\UABEA\UABEA\UABEAvalonia\MainWindow.axaml.cs:line 159 at System.Threading.Tasks.Task.<>c.<ThrowAsync>b__140_0(Object state) at Avalonia.Threading.AvaloniaSynchronizationContext.<>c__DisplayClass5_0.<Post>b__0() in /_/src/Avalonia.Base/Threading/AvaloniaSynchronizationContext.cs:line 33 at Avalonia.Threading.JobRunner.RunJobs(Nullable
1 priority) in //src/Avalonia.Base/Threading/JobRunner.cs:line 37
at Avalonia.Win32.Win32Platform.WndProc(IntPtr hWnd, UInt32 msg, IntPtr wParam, IntPtr lParam) in //src/Windows/Avalonia.Win32/Win32Platform.cs:line 210
at Avalonia.Win32.Interop.UnmanagedMethods.DispatchMessage(MSG& lpmsg)
at Avalonia.Win32.Win32Platform.RunLoop(CancellationToken cancellationToken) in //src/Windows/Avalonia.Win32/Win32Platform.cs:line 157
at Avalonia.Threading.Dispatcher.MainLoop(CancellationToken cancellationToken) in //src/Avalonia.Base/Threading/Dispatcher.cs:line 61
at Avalonia.Controls.ApplicationLifetimes.ClassicDesktopStyleApplicationLifetime.Start(String[] args) in //src/Avalonia.Controls/ApplicationLifetimes/ClassicDesktopStyleApplicationLifetime.cs:line 107
at Avalonia.ClassicDesktopStyleApplicationLifetimeExtensions.StartWithClassicDesktopLifetime[T](T builder, String[] args, ShutdownMode shutdownMode) in //src/Avalonia.Controls/ApplicationLifetimes/ClassicDesktopStyleApplicationLifetime.cs:line 134
at UABEAvalonia.Program.Main(String[] args) in D:\a\UABEA\UABEA\UABEAvalonia\Program.cs:line 47
from uabea.
What size is the bundle you're editing?
from uabea.
The unity3d file is 1.12 GB, and including resource and sharedassets0, it is about 2GB.
from uabea.
I have that same issue with a4go bundle. I could send it to you if you need it for tests
from uabea.
@Totsui yes, that would help.
from uabea.
@nesrak1 here is the compressed bundle in a zip file. Thanks for your help, and thanks for giving a new life to UABE btw.
DL link : https://www.mediafire.com/file/hhbuw3kqznj0jtp/MyBundle.zip/file
from uabea.
Sorry for the late reply. Probably related to #40 (was fixed, but library was not updated at this time). You should be able to load and save this file. Compression will be very, very slow (at least when selecting lzma). This is a problem with the c# lzma sdk being very slow to compress. I could potentially use the c++ version instead but that would require a hack to the original writing code.
Let me know if it works for you now. I think @Kafu-Yukimura has the same problem, but I'm not 100%.
from uabea.
Imma try when going home and i'll tell you, thanks a lot!
EDIT: It worked!
from uabea.
@nesrak1 Even if I finally save, UABEA does not turn off and is saved well. Thanks for fixing it.
But Compress doesn't seem to be working properly yet.
If you open the data.unity3d file of about 1.14GB with UABEA and then compress it, the file size is 601MB. (lzma)
The event viewer log is not output separately.
from uabea.
I try to compress in the latest build, the window closes.
The log is:
2021/07/31 午後 08:37:05 .NET Runtime 1026 なし
Application: UABEAvalonia.exe
CoreCLR Version: 5.0.721.25508
.NET Version: 5.0.7
Description: The process was terminated due to an unhandled exception.
Exception Info: System.ArgumentOutOfRangeException: Non-negative number required. (Parameter 'count')
at System.IO.BinaryReader.ReadBytes(Int32 count)
at AssetsTools.NET.AssetBundleFile.Pack(AssetsFileReader reader, AssetsFileWriter writer, AssetBundleCompressionType compType)
at UABEAvalonia.MainWindow.CompressBundle(BundleFileInstance bundleInst, String path, AssetBundleCompressionType compType) in D:\a\UABEA\UABEA\UABEAvalonia\MainWindow.axaml.cs:line 662
at UABEAvalonia.MainWindow.AskForLocationAndCompress() in D:\a\UABEA\UABEA\UABEAvalonia\MainWindow.axaml.cs:line 489
at UABEAvalonia.MainWindow.MenuCompress_Click(Object sender, RoutedEventArgs e) in D:\a\UABEA\UABEA\UABEAvalonia\MainWindow.axaml.cs:line 201
at System.Threading.Tasks.Task.<>c.b__140_0(Object state)
at Avalonia.Threading.AvaloniaSynchronizationContext.<>c__DisplayClass5_0.b__0() in //src/Avalonia.Base/Threading/AvaloniaSynchronizationContext.cs:line 33
at Avalonia.Threading.JobRunner.RunJobs(Nullable`1 priority) in //src/Avalonia.Base/Threading/JobRunner.cs:line 37
at Avalonia.Win32.Win32Platform.WndProc(IntPtr hWnd, UInt32 msg, IntPtr wParam, IntPtr lParam) in //src/Windows/Avalonia.Win32/Win32Platform.cs:line 210
at Avalonia.Win32.Interop.UnmanagedMethods.DispatchMessage(MSG& lpmsg)
at Avalonia.Win32.Win32Platform.RunLoop(CancellationToken cancellationToken) in //src/Windows/Avalonia.Win32/Win32Platform.cs:line 157
at Avalonia.Threading.Dispatcher.MainLoop(CancellationToken cancellationToken) in //src/Avalonia.Base/Threading/Dispatcher.cs:line 61
at Avalonia.Controls.ApplicationLifetimes.ClassicDesktopStyleApplicationLifetime.Start(String[] args) in //src/Avalonia.Controls/ApplicationLifetimes/ClassicDesktopStyleApplicationLifetime.cs:line 107
at Avalonia.ClassicDesktopStyleApplicationLifetimeExtensions.StartWithClassicDesktopLifetime[T](T builder, String[] args, ShutdownMode shutdownMode) in /_/src/Avalonia.Controls/ApplicationLifetimes/ClassicDesktopStyleApplicationLifetime.cs:line 134
at UABEAvalonia.Program.Main(String[] args) in D:\a\UABEA\UABEA\UABEAvalonia\Program.cs:line 47
from uabea.
I think only the unpacker has support for files larger than 2gb (unpacked). When packing, it still seems to load the entire file into memory first which causes this crash.
from uabea.
Can confirm with resources.assets from Torment Tides of Numenera. Open assests file make any modification and save to a new file, resulting file doesn't open in UABE anymore, nor in the game itself. Resulting file is smaller and in binary compare it seems UABE removes entries even if only single digit was changed somewhere:
from uabea.
This was just recently fixed in AssetsTools.NET. Let me update the build UABEA uses and see if it works then.
from uabea.
Updated the dll, check if it saves correctly now.
from uabea.
Now is working as expected.
from uabea.
Currently, saving and compression are working normally, so I close this thread. To reopen, please do not open this thread and open it again please.
from uabea.
Related Issues (20)
- When I click to export the image, an error message appears HOT 1
- How to delete assets from GameObject Viewer? HOT 1
- batch export on 0x0 textures - no error
- Add select default file type config
- How do you duplicate a GameObject HOT 1
- ETC2 texture format doesn't support partial alpha HOT 3
- Crash or freeze with 2022.1.16f1 HOT 1
- Why folders with different languages if you can’t change the program language? HOT 2
- Asset failed to deserialize. HOT 3
- Program crash (resources.assets in the game "HuniePop"). HOT 1
- Ability to Specify Unity Version if Stripped HOT 2
- After exporting a text file, text formatting breaks. HOT 5
- Crash on opening a .assets file HOT 3
- Error when load the texture HOT 1
- Version HOT 4
- Can it modify the files of mobile unity-games? HOT 14
- replace scripts? HOT 1
- Version supported? HOT 1
- Bitdefender flagged this as malicious
- Support for TextMeshProUGUI HOT 6
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from uabea.