nesrak1 / UABEA

c# uabe for newer versions of unity
MIT License
1.04k stars 133 forks source link

Crashes when trying to open hierarchy #317

Open XymbX opened 3 months ago

XymbX commented 3 months ago

Describe the bug No idea

To Reproduce Steps to reproduce the behavior: 1 . Try to open hierarchy 2 . crash!

Expected behavior I expected to see a hierarchy but am met with crash!!

Screenshots

LOG System.NullReferenceException: Object reference not set to an instance of an object. at UABEAvalonia.AssetWorkspace.GetBaseField(AssetContainer cont) in D:\a\UABEA\UABEA\UABEAvalonia\AssetWorkspace.cs:line 346 at UABEAvalonia.AssetDataTreeView.LoadComponent(AssetContainer container) in D:\a\UABEA\UABEA\UABEAvalonia\AssetDataTreeView.cs:line 182 at UABEAvalonia.GameObjectViewWindow.GameObjectTreeViewSelectionChanged(Object sender, SelectionChangedEventArgs e) in D:\a\UABEA\UABEA\UABEAvalonia\GameObjectViewWindow.axaml.cs:line 93 at Avalonia.Interactivity.EventRoute.RaiseEventImpl(RoutedEventArgs e) in //src/Avalonia.Base/Interactivity/EventRoute.cs:line 149 at Avalonia.Interactivity.EventRoute.RaiseEvent(Interactive source, RoutedEventArgs e) in //src/Avalonia.Base/Interactivity/EventRoute.cs:line 79 at Avalonia.Interactivity.Interactive.RaiseEvent(RoutedEventArgs e) in //src/Avalonia.Base/Interactivity/Interactive.cs:line 126 at Avalonia.Collections.AvaloniaList1.NotifyAdd(T item, Int32 index) in /_/src/Avalonia.Base/Collections/AvaloniaList.cs:line 704 at Avalonia.Collections.AvaloniaList1.System.Collections.IList.Add(Object value) in //src/Avalonia.Base/Collections/AvaloniaList.cs:line 561 at Avalonia.Controls.TreeView.SelectSingleItem(Object item) in //src/Avalonia.Controls/TreeView.cs:line 308 at Avalonia.Controls.TreeView.UpdateSelectionFromContainer(Control container, Boolean select, Boolean rangeModifier, Boolean toggleModifier, Boolean rightButton) in //src/Avalonia.Controls/TreeView.cs:line 669 at Avalonia.Controls.TreeView.UpdateSelectionFromEventSource(Object eventSource, Boolean select, Boolean rangeModifier, Boolean toggleModifier, Boolean rightButton) in //src/Avalonia.Controls/TreeView.cs:line 838 at Avalonia.Controls.TreeView.OnPointerPressed(PointerPressedEventArgs e) in //src/Avalonia.Controls/TreeView.cs:line 616 at Avalonia.Reactive.LightweightObservableBase`1.PublishNext(T value) in //src/Avalonia.Base/Reactive/LightweightObservableBase.cs:line 143 at Avalonia.Interactivity.EventRoute.RaiseEventImpl(RoutedEventArgs e) in //src/Avalonia.Base/Interactivity/EventRoute.cs:line 146 at Avalonia.Interactivity.EventRoute.RaiseEvent(Interactive source, RoutedEventArgs e) in //src/Avalonia.Base/Interactivity/EventRoute.cs:line 79 at Avalonia.Interactivity.Interactive.RaiseEvent(RoutedEventArgs e) in //src/Avalonia.Base/Interactivity/Interactive.cs:line 126 at Avalonia.Input.MouseDevice.MouseDown(IMouseDevice device, UInt64 timestamp, IInputElement root, Point p, PointerPointProperties properties, KeyModifiers inputModifiers, IInputElement hitTest) in //src/Avalonia.Base/Input/MouseDevice.cs:line 144 at Avalonia.Input.MouseDevice.ProcessRawEvent(RawPointerEventArgs e) in //src/Avalonia.Base/Input/MouseDevice.cs:line 53 at Avalonia.Input.InputManager.ProcessInput(RawInputEventArgs e) in //src/Avalonia.Base/Input/InputManager.cs:line 37 at Avalonia.Controls.TopLevel.HandleInput(RawInputEventArgs e) in //src/Avalonia.Controls/TopLevel.cs:line 651 at Avalonia.Win32.WindowImpl.AppWndProc(IntPtr hWnd, UInt32 msg, IntPtr wParam, IntPtr lParam) in //src/Windows/Avalonia.Win32/WindowImpl.AppWndProc.cs:line 814 at Avalonia.Win32.WindowImpl.WndProc(IntPtr hWnd, UInt32 msg, IntPtr wParam, IntPtr lParam) in //src/Windows/Avalonia.Win32/WindowImpl.WndProc.cs:line 26 at Avalonia.Win32.Interop.UnmanagedMethods.DispatchMessage(MSG& lpmsg) at Avalonia.Win32.Win32Platform.RunLoop(CancellationToken cancellationToken) in //src/Windows/Avalonia.Win32/Win32Platform.cs:line 215 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 122 at Avalonia.ClassicDesktopStyleApplicationLifetimeExtensions.StartWithClassicDesktopLifetime(AppBuilder builder, String[] args, ShutdownMode shutdownMode) in /_/src/Avalonia.Controls/ApplicationLifetimes/ClassicDesktopStyleApplicationLifetime.cs:line 214 at UABEAvalonia.Program.Main(String[] args) in D:\a\UABEA\UABEA\UABEAvalonia\Program.cs:line 53

XymbX commented 3 months ago

On a nightly build it does not crash but assets fail to deserialize

nesrak1 commented 3 months ago

I assume you're looking at a MonoBehaviour that failed to deserialize and not every component doing this.

If you don't have any dlls in a folder called Managed, the game is most likely il2cpp. UABEA uses an older version of Cpp2Il and has a bit of a buggy implementation. See this issue for info on how to skip UABEA's cpp2il extractor. https://github.com/nesrak1/UABEA/issues/296#issuecomment-1854240192