Aeroluna / Heck

modhcart
MIT License
160 stars 30 forks source link

On Beat Saber v1.21.0, Chroma crashes when loading into a map. #59

Closed marshallpt closed 2 years ago

marshallpt commented 2 years ago

Describe the bug Chroma is seemingly impossible to use on 1.21.0, despite release v2.5.10 mentioning compatibility for this version. Using Heck v.1.3.8, which I couldn't find here on GitHub and could only find in Mod Assistant / BeatMods the game crashes (freezes on a black screen) when going into a map. Using Heck v1.3.4 or Heck v1.3.5 causes the "Play" button within the game to do nothing. This issue is regarding the behavior using Heck v1.3.8, since that seems to be the latest version. This black screen behavior happens with both Chroma v2.5.10 and v2.5.11.

To Reproduce Steps to reproduce the behavior:

  1. Use Mod Assistant to install Heck v1.3.8, or download it from BeatMods and install it yourself.
  2. Download and install Chroma v2.5.11 or v2.5.10 from the releases page.
  3. Launch the game.
  4. Try to play a map.

Expected behavior The map to play.

Actual behavior The game freezes on a black screen.

Additional context Here's what appears to be the issue in the logs, but I'm new to this scene so I've also attached the full log. Also, I'm sorry if I've missed another issue talking about this. I've spent a while trying to debug so I don't think it's me. I went so far as reinstalling Beat Saber and re-doing everything from a clean install, but the behavior remains the same. Sorry if this is a duplicate!


[CRITICAL @ 17:40:15 | UnityEngine] BadImageFormatException: Could not resolve field token 0x04000032, due to: Could not load type of field 'Chroma.ChromaController:<Deserializer>k__BackingField' (46) due to: Could not resolve type with token 01000014 (from typeref, class/assembly Heck.CustomDataDeserializer, Heck, Version=1.3.5.0, Culture=neutral, PublicKeyToken=null) assembly:Heck, Version=1.3.5.0, Culture=neutral, PublicKeyToken=null type:Heck.CustomDataDeserializer member:(null) signature:<none> assembly:C:\Program Files (x86)\Steam\steamapps\common\Beat Saber\Plugins\Chroma.dll type:ChromaController member:(null) signature:<none>
[CRITICAL @ 17:40:15 | UnityEngine] Chroma.Installers.ChromaPlayerInstaller.InstallBindings () (at <e6dee5cd316c4e96b75b100927491bba>:0)
[CRITICAL @ 17:40:15 | UnityEngine] (wrapper dynamic-method) Zenject.Context.DMD<Zenject.Context::InstallInstallers>(Zenject.Context,System.Collections.Generic.List`1<Zenject.InstallerBase>,System.Collections.Generic.List`1<System.Type>,System.Collections.Generic.List`1<Zenject.ScriptableObjectInstaller>,System.Collections.Generic.List`1<Zenject.MonoInstaller>,System.Collections.Generic.List`1<Zenject.MonoInstaller>)
[CRITICAL @ 17:40:15 | UnityEngine] Zenject.Context.InstallInstallers () (at <4511be25ebb446db9e552779fab16522>:0)
[CRITICAL @ 17:40:15 | UnityEngine] Zenject.SceneDecoratorContext.InstallDecoratorInstallers () (at <4511be25ebb446db9e552779fab16522>:0)
[CRITICAL @ 17:40:15 | UnityEngine] (wrapper dynamic-method) Zenject.SceneContext.DMD<Zenject.SceneContext::InstallBindings>(Zenject.SceneContext,System.Collections.Generic.List`1<UnityEngine.MonoBehaviour>)
[CRITICAL @ 17:40:15 | UnityEngine] Zenject.SceneContext.Install () (at <4511be25ebb446db9e552779fab16522>:0)
[CRITICAL @ 17:40:15 | UnityEngine] Zenject.SceneContext.RunInternal () (at <4511be25ebb446db9e552779fab16522>:0)
[CRITICAL @ 17:40:15 | UnityEngine] Zenject.RunnableContext.Run () (at <4511be25ebb446db9e552779fab16522>:0)
[CRITICAL @ 17:40:15 | UnityEngine] Zenject.RunnableContext.Initialize () (at <4511be25ebb446db9e552779fab16522>:0)
[CRITICAL @ 17:40:15 | UnityEngine] Zenject.SceneContext.Awake () (at <4511be25ebb446db9e552779fab16522>:0)
[CRITICAL @ 17:40:15 | UnityEngine] UnityEngine.GameObject:SetActive(Boolean)
[CRITICAL @ 17:40:15 | UnityEngine] GameScenesManager:ActivatePresentedSceneRootObjects(List`1)
[CRITICAL @ 17:40:15 | UnityEngine] <ScenesTransitionCoroutine>d__38:MoveNext()
[CRITICAL @ 17:40:15 | UnityEngine] UnityEngine.SetupCoroutine:InvokeMoveNext(IEnumerator, IntPtr)
[CRITICAL @ 17:40:15 | UnityEngine] NullReferenceException: Object reference not set to an instance of an object
[CRITICAL @ 17:40:15 | UnityEngine] VRRenderingParamsSetup.OnEnable () (at <2ba422b384014df2849e37b2c9045888>:0)
[CRITICAL @ 17:40:15 | UnityEngine] UnityEngine.GameObject:SetActive(Boolean)
[CRITICAL @ 17:40:15 | UnityEngine] GameScenesManager:ActivatePresentedSceneRootObjects(List`1)
[CRITICAL @ 17:40:15 | UnityEngine] <ScenesTransitionCoroutine>d__38:MoveNext()
[CRITICAL @ 17:40:15 | UnityEngine] UnityEngine.SetupCoroutine:InvokeMoveNext(IEnumerator, IntPtr)
[CRITICAL @ 17:40:15 | UnityEngine] NullReferenceException: Object reference not set to an instance of an object
[CRITICAL @ 17:40:15 | UnityEngine] FadeInOnSceneTransitionFinished.OnEnable () (at <2ba422b384014df2849e37b2c9045888>:0)
[CRITICAL @ 17:40:15 | UnityEngine] UnityEngine.GameObject:SetActive(Boolean)
[CRITICAL @ 17:40:15 | UnityEngine] GameScenesManager:ActivatePresentedSceneRootObjects(List`1)
[CRITICAL @ 17:40:15 | UnityEngine] <ScenesTransitionCoroutine>d__38:MoveNext()
[CRITICAL @ 17:40:15 | UnityEngine] UnityEngine.SetupCoroutine:InvokeMoveNext(IEnumerator, IntPtr)
[CRITICAL @ 17:40:15 | UnityEngine] NullReferenceException: Object reference not set to an instance of an object
[CRITICAL @ 17:40:15 | UnityEngine] MoveAndRotateWithMainCamera.LateUpdate () (at <5efa267adbd744cfab93ae97ee85d4c7>:0)
[CRITICAL @ 17:40:15 | UnityEngine] NullReferenceException: Object reference not set to an instance of an object
[CRITICAL @ 17:40:15 | UnityEngine] (wrapper dynamic-method) SaberBurnMarkArea.DMD<SaberBurnMarkArea::LateUpdate>(SaberBurnMarkArea)
[CRITICAL @ 17:40:15 | UnityEngine] NullReferenceException: Object reference not set to an instance of an object
[CRITICAL @ 17:40:15 | UnityEngine] (wrapper dynamic-method) SaberBurnMarkSparkles.DMD<SaberBurnMarkSparkles::LateUpdate>(SaberBurnMarkSparkles)
[CRITICAL @ 17:40:15 | UnityEngine] NullReferenceException: Object reference not set to an instance of an object
[CRITICAL @ 17:40:15 | UnityEngine] GameEnergyCounter.Start () (at <5efa267adbd744cfab93ae97ee85d4c7>:0)
[CRITICAL @ 17:40:15 | UnityEngine] NullReferenceException: Object reference not set to an instance of an object
[CRITICAL @ 17:40:15 | UnityEngine] GameEnergyCounter.LateUpdate () (at <5efa267adbd744cfab93ae97ee85d4c7>:0)
[CRITICAL @ 17:40:15 | UnityEngine] NullReferenceException: Object reference not set to an instance of an object
[CRITICAL @ 17:40:15 | UnityEngine] RotateBySpawnRotation.Start () (at <5efa267adbd744cfab93ae97ee85d4c7>:0)```
Mawntee commented 2 years ago

As you're on an old version this will likely get closed/buried as support is typically only for latest/current up to date versions of the game/mods.

Although, I don't remember having many issues on 1.21.0... Looking back, my mod versions were:

Chroma - 2.5.11 NoodleExtensions - 1.4.9.0 CustomJSONData - 2.2.3.0 Heck - 1.3.6.0

I highly recommend using the latest versions of the game/mod and staying up to date on stuff, as you won't run into issues with some maps requiring features only available in the latest versions.

If you insist on using an older version of the game iirc 1.19.0 was pretty stable.

Keller18306 commented 2 years ago

It doesn't work for me too. Log

BeatSaber - 1.24.0 Chroma - 2.5.11 Heck - 1.3.8

Aeroluna commented 2 years ago

Support will not be provided for old versions of either Beat Saber or any of the mods.

Keller18306 commented 2 years ago

Support will not be provided for old versions of either Beat Saber or any of the mods.

I have the latest Beat Saber and mod from pre-release.

Aeroluna commented 2 years ago

The pre-release version and the only version compatible with BS v1.24.0 are Chroma v2.6.0 and Heck v1.4.0, you've downloaded an old version. This issue is for trying to load mods on BS v1.21.0, issues with 1.24 are unrelated.

Keller18306 commented 2 years ago

The pre-release version and the only version compatible with BS v1.24.0 are Chroma v2.6.0 and Heck v1.4.0, you've downloaded an old version. This issue is for trying to load mods on BS v1.21.0, issues with 1.24 are unrelated.

Can you please tell me where can I download the latest? In ModAssistant they are not there, except for Heck.

Aeroluna commented 2 years ago

Pre-release versions are available in the heck discord server. https://discord.gg/rrZf3kapeh