Code Monkey home page Code Monkey logo

Comments (22)

drongood12 avatar drongood12 commented on July 20, 2024

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.

nesrak1 avatar nesrak1 commented on July 20, 2024

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.

 avatar commented on July 20, 2024

@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(Nullable1 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.

nesrak1 avatar nesrak1 commented on July 20, 2024

Are you using release 2? I doubt it will fix anything but can you try using the latest build?

from uabea.

 avatar commented on July 20, 2024

This is the result occurred after using Release 2.

from uabea.

nesrak1 avatar nesrak1 commented on July 20, 2024

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.

 avatar commented on July 20, 2024

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(Nullable1 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.

nesrak1 avatar nesrak1 commented on July 20, 2024

What size is the bundle you're editing?

from uabea.

 avatar commented on July 20, 2024

The unity3d file is 1.12 GB, and including resource and sharedassets0, it is about 2GB.

from uabea.

Totsui avatar Totsui commented on July 20, 2024

I have that same issue with a4go bundle. I could send it to you if you need it for tests

from uabea.

nesrak1 avatar nesrak1 commented on July 20, 2024

@Totsui yes, that would help.

from uabea.

Totsui avatar Totsui commented on July 20, 2024

@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.

nesrak1 avatar nesrak1 commented on July 20, 2024

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.

Totsui avatar Totsui commented on July 20, 2024

Imma try when going home and i'll tell you, thanks a lot!
EDIT: It worked!

from uabea.

 avatar commented on July 20, 2024

@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.

 avatar commented on July 20, 2024

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.

nesrak1 avatar nesrak1 commented on July 20, 2024

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.

ChronoTempus avatar ChronoTempus commented on July 20, 2024

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:
image

from uabea.

nesrak1 avatar nesrak1 commented on July 20, 2024

This was just recently fixed in AssetsTools.NET. Let me update the build UABEA uses and see if it works then.

from uabea.

nesrak1 avatar nesrak1 commented on July 20, 2024

Updated the dll, check if it saves correctly now.

from uabea.

ChronoTempus avatar ChronoTempus commented on July 20, 2024

Now is working as expected.

from uabea.

 avatar commented on July 20, 2024

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)

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.