LavaGang / MelonLoader

The World's First Universal Mod Loader for Unity Games compatible with both Il2Cpp and Mono
https://discord.gg/2Wn3N2P
Apache License 2.0
2.38k stars 472 forks source link

[Bug]: Saga of Sins - System.AccessViolationException (IL2CPP) #433

Closed p1xel8ted closed 3 days ago

p1xel8ted commented 1 year ago

All of the following criteria must be met

All of the following are optional to answer

Describe the issue.

https://store.steampowered.com/app/2094550/Saga_of_Sins/

Latest.log

Doesn't make it to the start screen. I am using 0.6.0.

[19:58:15.643] [MelonStartScreen] Using Start Screen Theme: "Default"
[19:58:15.913] [MelonStartScreen] Exception while init rendering: System.TypeInitializationException: The type initializer for 'MelonUnityEngine.Texture2D' threw an exception.
 ---> System.Exception: Unable to find method System.Void .ctor(System.Int32, System.Int32)
   at UnhollowerMini.UnityInternals.GetMethod(IntPtr clazz, String name, String returntype, String[] parameters) in D:\a\MelonLoader\MelonLoader\Dependencies\MelonStartScreen\UnhollowerMini\UnityInternals.cs:line 238
   at MelonUnityEngine.Texture2D..cctor() in D:\a\MelonLoader\MelonLoader\Dependencies\MelonStartScreen\UnityEngine\CoreModule\Texture2D.cs:line 26
   --- End of inner exception stack trace ---
   at MelonUnityEngine.Texture2D..ctor(Int32 width, Int32 height) in D:\a\MelonLoader\MelonLoader\Dependencies\MelonStartScreen\UnityEngine\CoreModule\Texture2D.cs:line 56
   at MelonLoader.MelonStartScreen.UI.UI_Utils.CreateColorTexture(Color color) in D:\a\MelonLoader\MelonLoader\Dependencies\MelonStartScreen\UI\UI_Utils.cs:line 11
   at MelonLoader.MelonStartScreen.UI.Objects.UI_Background..ctor(cBackground backgroundSettings) in D:\a\MelonLoader\MelonLoader\Dependencies\MelonStartScreen\UI\Objects\UI_Background.cs:line 16
   at MelonLoader.MelonStartScreen.UI.UI_Style.Init() in D:\a\MelonLoader\MelonLoader\Dependencies\MelonStartScreen\UI\UI_Style.cs:line 16
   at MelonLoader.MelonStartScreen.ScreenRenderer.Init() in D:\a\MelonLoader\MelonLoader\Dependencies\MelonStartScreen\ScreenRenderer.cs:line 38
[19:58:15.923] Loading Il2CppAssemblyGenerator...
[19:58:15.931] [Il2CppAssemblyGenerator] Contacting RemoteAPI...

This doesnt make it into the log

[20:12:05.381] [Il2CppAssemblyGenerator] Assembly Generation Successful!
[NewEntryPoint] Starting.

[20:12:05.397] Loading Mods from 'H:\Games\steamapps\common\Saga of Sins\Mods'...
[20:12:05.397] 0 Mods loaded.

[20:12:05.896] Class::Init signatures have been exhausted, using a substitute!
[20:12:05.912] Registered mono type Il2CppInterop.Runtime.DelegateSupport+Il2CppToMonoDelegateReference in il2cpp domain
Fatal error. System.AccessViolationException: Attempted to read or write protected memory. This is often an indication that other memory is corrupt.
   at Il2CppInterop.Runtime.Injection.ClassInjector.hkGenericMethodGetMethod(Il2CppInterop.Runtime.Runtime.Il2CppGenericMethod*, Boolean)
   at Il2CppInterop.Runtime.Injection.InjectorHelpers.hkClassFromIl2CppType(Il2CppType*, Boolean)
   at Il2CppInterop.Runtime.IL2CPP.il2cpp_runtime_invoke(IntPtr, IntPtr, Void**, IntPtr ByRef)
   at Il2CppInterop.Runtime.IL2CPP.il2cpp_runtime_invoke(IntPtr, IntPtr, Void**, IntPtr ByRef)
   at Il2CppSystem.Reflection.MethodBase.GetParameters()
   at Il2CppInterop.Runtime.DelegateSupport.ConvertDelegate[[System.__Canon, System.Private.CoreLib, Version=6.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](System.Delegate)
   at UnityEngine.Events.UnityAction`2[[UnityEngine.SceneManagement.Scene, UnityEngine.CoreModule, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null],[UnityEngine.SceneManagement.LoadSceneMode, UnityEngine.CoreModule, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]].op_Implicit(System.Action`2<UnityEngine.SceneManagement.Scene,UnityEngine.SceneManagement.LoadSceneMode>)
   at MelonLoader.Support.SceneHandler.Init()
   at MelonLoader.Support.Main.Initialize(MelonLoader.ISupportModule_From)
   at System.RuntimeMethodHandle.InvokeMethod(System.Object, System.Span`1<System.Object> ByRef, System.Signature, Boolean, Boolean)
   at System.Reflection.RuntimeMethodInfo.Invoke(System.Object, System.Reflection.BindingFlags, System.Reflection.Binder, System.Object[], System.Globalization.CultureInfo)
   at System.Reflection.MethodBase.Invoke(System.Object, System.Object[])
   at MelonLoader.SupportModule.LoadInterface(System.String)
   at MelonLoader.SupportModule.Setup()
   at MelonLoader.Core.Start()
   at MelonLoader.NativeHost.NativeEntryPoint.Start()

It also fails with the same error (the bottom one) using BepInEx (BepInEx BleedingEdge 668)

Did you attach your log file?