ReadieFur / BSDataPuller

Gathers data about the current map you are playing to then be sent out over a websocket for other software to use, e.g. A web overlay like BSDP-Overlay. This mod works with multi PC setups!
https://github.com/ReadieFur/BeatSaber-Overlay
GNU General Public License v3.0
39 stars 10 forks source link

Potential CustomNotes conflict - [Zenject - critical error] #4

Closed LicensedCrime closed 3 years ago

LicensedCrime commented 3 years ago

CustomNotes did a fix lately about disappearing notes, but the bug came back on me. I noticed some critical entries in the logs. After I excluded DataPuller from the game, the following log did not appear (and with it the CustomNotes bug):

[CRITICAL @ 02:55:54 | UnityEngine] NullReferenceException: Object reference not set to an instance of an object [CRITICAL @ 02:55:54 | UnityEngine] DataPuller.MapEvents.SwingRatingCounter_didFinishEvent (ISaberSwingRatingCounter saberSwingRatingCounter) (at <6bab6d00ea9947f082625a105d0f287f>:0) [CRITICAL @ 02:55:54 | UnityEngine] SaberSwingRatingCounter.ProcessNewData (BladeMovementDataElement newData, BladeMovementDataElement prevData, System.Boolean prevDataAreValid) (at <7209c9bc21cd412681ca9f81c6a4ebb6>:0) [CRITICAL @ 02:55:54 | UnityEngine] SaberMovementData.AddNewData (UnityEngine.Vector3 topPos, UnityEngine.Vector3 bottomPos, System.Single time) (at <7209c9bc21cd412681ca9f81c6a4ebb6>:0) [CRITICAL @ 02:55:54 | UnityEngine] Saber.ManualUpdate () (at <7209c9bc21cd412681ca9f81c6a4ebb6>:0) [CRITICAL @ 02:55:54 | UnityEngine] SaberManager.Update () (at <7209c9bc21cd412681ca9f81c6a4ebb6>:0) [CRITICAL @ 02:56:01 | UnityEngine] ArgumentException: An item with the same key has already been added. Key: SaberSwingRatingCounter [CRITICAL @ 02:56:01 | UnityEngine] System.Collections.Generic.Dictionary2[TKey,TValue].TryInsert (TKey key, TValue value, System.Collections.Generic.InsertionBehavior behavior) (at <437ba245d8404784b9fbab9b439ac908>:0) [CRITICAL @ 02:56:01 | UnityEngine] System.Collections.Generic.Dictionary2[TKey,TValue].Add (TKey key, TValue value) (at <437ba245d8404784b9fbab9b439ac908>:0) [CRITICAL @ 02:56:01 | UnityEngine] CountersPlus.Counters.CutCounter.OnNoteCut (NoteData data, NoteCutInfo info) (at <7af112dd57e54cc6aa0061a0795de2e4>:0) [CRITICAL @ 02:56:01 | UnityEngine] CountersPlus.Counters.EventBroadcasters.NoteEventBroadcaster.NoteWasCutEvent (NoteController data, NoteCutInfo noteCutInfo) (at <7af112dd57e54cc6aa0061a0795de2e4>:0) [CRITICAL @ 02:56:01 | UnityEngine] BeatmapObjectManager.HandleNoteWasCut (NoteController noteController, NoteCutInfo noteCutInfo) (at <7209c9bc21cd412681ca9f81c6a4ebb6>:0) [CRITICAL @ 02:56:01 | UnityEngine] NoteController.SendNoteWasCutEvent (NoteCutInfo noteCutInfo) (at <7209c9bc21cd412681ca9f81c6a4ebb6>:0) [CRITICAL @ 02:56:01 | UnityEngine] GameNoteController.HandleCut (Saber saber, UnityEngine.Vector3 cutPoint, UnityEngine.Quaternion orientation, UnityEngine.Vector3 cutDirVec, System.Boolean allowBadCut) (at <7209c9bc21cd412681ca9f81c6a4ebb6>:0) [CRITICAL @ 02:56:01 | UnityEngine] GameNoteController.HandleBigWasCutBySaber (Saber saber, UnityEngine.Vector3 cutPoint, UnityEngine.Quaternion orientation, UnityEngine.Vector3 cutDirVec) (at <7209c9bc21cd412681ca9f81c6a4ebb6>:0) [CRITICAL @ 02:56:01 | UnityEngine] CuttableBySaber.CallWasCutBySaberEvent (Saber saber, UnityEngine.Vector3 cutPoint, UnityEngine.Quaternion orientation, UnityEngine.Vector3 cutDirVec) (at <7209c9bc21cd412681ca9f81c6a4ebb6>:0) [CRITICAL @ 02:56:01 | UnityEngine] BoxCuttableBySaber.Cut (Saber saber, UnityEngine.Vector3 cutPoint, UnityEngine.Quaternion orientation, UnityEngine.Vector3 cutDirVec) (at <7209c9bc21cd412681ca9f81c6a4ebb6>:0) [CRITICAL @ 02:56:01 | UnityEngine] NoteCutter.Cut (Saber saber) (at <7209c9bc21cd412681ca9f81c6a4ebb6>:0) [CRITICAL @ 02:56:01 | UnityEngine] CuttingManager.HandleSaberManagerDidUpdateSaberPositions (Saber leftSaber, Saber rightSaber) (at <7209c9bc21cd412681ca9f81c6a4ebb6>:0) [CRITICAL @ 02:56:01 | UnityEngine] SaberManager.Update () (at <7209c9bc21cd412681ca9f81c6a4ebb6>:0) [CRITICAL @ 02:56:02 | UnityEngine] ZenjectException: Assert hit! Tried to return an item to pool SiraPrefabContainer.Pool twice [CRITICAL @ 02:56:02 | UnityEngine] ModestTree.Assert.That (System.Boolean condition, System.String message, System.Object p1) (at <299da3b42a70434ab7fac865debabf48>:0) [CRITICAL @ 02:56:02 | UnityEngine] Zenject.MemoryPoolBase`1[TContract].Despawn (TContract item) (at <299da3b42a70434ab7fac865debabf48>:0) [CRITICAL @ 02:56:02 | UnityEngine] CustomNotes.Managers.CustomNoteController.DidFinish (NoteController nc) (at <371d57a2079d48f69a69ea619e5f03fd>:0) [CRITICAL @ 02:56:02 | UnityEngine] CustomNotes.Managers.CustomNoteController.WasCut (NoteController nc, NoteCutInfo ) (at <371d57a2079d48f69a69ea619e5f03fd>:0) [CRITICAL @ 02:56:02 | UnityEngine] NoteController.SendNoteWasCutEvent (NoteCutInfo noteCutInfo) (at <7209c9bc21cd412681ca9f81c6a4ebb6>:0) [CRITICAL @ 02:56:02 | UnityEngine] GameNoteController.HandleCut (Saber saber, UnityEngine.Vector3 cutPoint, UnityEngine.Quaternion orientation, UnityEngine.Vector3 cutDirVec, System.Boolean allowBadCut) (at <7209c9bc21cd412681ca9f81c6a4ebb6>:0) [CRITICAL @ 02:56:02 | UnityEngine] GameNoteController.HandleBigWasCutBySaber (Saber saber, UnityEngine.Vector3 cutPoint, UnityEngine.Quaternion orientation, UnityEngine.Vector3 cutDirVec) (at <7209c9bc21cd412681ca9f81c6a4ebb6>:0) [CRITICAL @ 02:56:02 | UnityEngine] CuttableBySaber.CallWasCutBySaberEvent (Saber saber, UnityEngine.Vector3 cutPoint, UnityEngine.Quaternion orientation, UnityEngine.Vector3 cutDirVec) (at <7209c9bc21cd412681ca9f81c6a4ebb6>:0) [CRITICAL @ 02:56:02 | UnityEngine] BoxCuttableBySaber.Cut (Saber saber, UnityEngine.Vector3 cutPoint, UnityEngine.Quaternion orientation, UnityEngine.Vector3 cutDirVec) (at <7209c9bc21cd412681ca9f81c6a4ebb6>:0) [CRITICAL @ 02:56:02 | UnityEngine] NoteCutter.Cut (Saber saber) (at <7209c9bc21cd412681ca9f81c6a4ebb6>:0) [CRITICAL @ 02:56:02 | UnityEngine] CuttingManager.HandleSaberManagerDidUpdateSaberPositions (Saber leftSaber, Saber rightSaber) (at <7209c9bc21cd412681ca9f81c6a4ebb6>:0) [CRITICAL @ 02:56:02 | UnityEngine] SaberManager.Update () (at <7209c9bc21cd412681ca9f81c6a4ebb6>:0) [CRITICAL @ 02:56:02 | UnityEngine] KeyNotFoundException: The given key was not present in the dictionary. [CRITICAL @ 02:56:02 | UnityEngine] System.Collections.Generic.Dictionary2[TKey,TValue].get_Item (TKey key) (at <437ba245d8404784b9fbab9b439ac908>:0) [CRITICAL @ 02:56:02 | UnityEngine] CountersPlus.Counters.CutCounter.SaberSwingRatingCounter_didFinishEvent (ISaberSwingRatingCounter v) (at <7af112dd57e54cc6aa0061a0795de2e4>:0) [CRITICAL @ 02:56:02 | UnityEngine] SaberSwingRatingCounter.ProcessNewData (BladeMovementDataElement newData, BladeMovementDataElement prevData, System.Boolean prevDataAreValid) (at <7209c9bc21cd412681ca9f81c6a4ebb6>:0) [CRITICAL @ 02:56:02 | UnityEngine] SaberMovementData.AddNewData (UnityEngine.Vector3 topPos, UnityEngine.Vector3 bottomPos, System.Single time) (at <7209c9bc21cd412681ca9f81c6a4ebb6>:0) [CRITICAL @ 02:56:02 | UnityEngine] Saber.ManualUpdate () (at <7209c9bc21cd412681ca9f81c6a4ebb6>:0) [CRITICAL @ 02:56:02 | UnityEngine] SaberManager.Update () (at <7209c9bc21cd412681ca9f81c6a4ebb6>:0) [CRITICAL @ 02:56:03 | UnityEngine] ZenjectException: Assert hit! Tried to return an item to pool SiraPrefabContainer.Pool twice [CRITICAL @ 02:56:03 | UnityEngine] ModestTree.Assert.That (System.Boolean condition, System.String message, System.Object p1) (at <299da3b42a70434ab7fac865debabf48>:0) [CRITICAL @ 02:56:03 | UnityEngine] Zenject.MemoryPoolBase1[TContract].Despawn (TContract item) (at <299da3b42a70434ab7fac865debabf48>:0) [CRITICAL @ 02:56:03 | UnityEngine] CustomNotes.Managers.CustomNoteController.DidFinish (NoteController nc) (at <371d57a2079d48f69a69ea619e5f03fd>:0) [CRITICAL @ 02:56:03 | UnityEngine] CustomNotes.Managers.CustomNoteController.WasCut (NoteController nc, NoteCutInfo _) (at <371d57a2079d48f69a69ea619e5f03fd>:0) [CRITICAL @ 02:56:03 | UnityEngine] NoteController.SendNoteWasCutEvent (NoteCutInfo noteCutInfo) (at <7209c9bc21cd412681ca9f81c6a4ebb6>:0) [CRITICAL @ 02:56:03 | UnityEngine] GameNoteController.HandleCut (Saber saber, UnityEngine.Vector3 cutPoint, UnityEngine.Quaternion orientation, UnityEngine.Vector3 cutDirVec, System.Boolean allowBadCut) (at <7209c9bc21cd412681ca9f81c6a4ebb6>:0) [CRITICAL @ 02:56:03 | UnityEngine] GameNoteController.HandleBigWasCutBySaber (Saber saber, UnityEngine.Vector3 cutPoint, UnityEngine.Quaternion orientation, UnityEngine.Vector3 cutDirVec) (at <7209c9bc21cd412681ca9f81c6a4ebb6>:0) [CRITICAL @ 02:56:03 | UnityEngine] CuttableBySaber.CallWasCutBySaberEvent (Saber saber, UnityEngine.Vector3 cutPoint, UnityEngine.Quaternion orientation, UnityEngine.Vector3 cutDirVec) (at <7209c9bc21cd412681ca9f81c6a4ebb6>:0) [CRITICAL @ 02:56:03 | UnityEngine] BoxCuttableBySaber.Cut (Saber saber, UnityEngine.Vector3 cutPoint, UnityEngine.Quaternion orientation, UnityEngine.Vector3 cutDirVec) (at <7209c9bc21cd412681ca9f81c6a4ebb6>:0) [CRITICAL @ 02:56:03 | UnityEngine] NoteCutter.Cut (Saber saber) (at <7209c9bc21cd412681ca9f81c6a4ebb6>:0) [CRITICAL @ 02:56:03 | UnityEngine] CuttingManager.HandleSaberManagerDidUpdateSaberPositions (Saber leftSaber, Saber rightSaber) (at <7209c9bc21cd412681ca9f81c6a4ebb6>:0) [CRITICAL @ 02:56:03 | UnityEngine] SaberManager.Update () (at <7209c9bc21cd412681ca9f81c6a4ebb6>:0)

ReadieFur commented 3 years ago

Ill have a look into it but reading it though I dont think this is related to DP as lots of the errors seem to be the same across mods based on the logs. DP only shows up once with the SwingRatingCounter_didFinishEvent. Just looking over this most of the errors are related to saber events. I also do not believe that I use zenject for anything. What I believe has happened is that CustomNotes has had a bad effect on other mods.

EDIT: Closed due to issue not being related to DataPuller.

ReadieFur commented 3 years ago

Reopned due to another user reporting this issue

LicensedCrime commented 3 years ago

update: SiraUtil updated to 2.3.0 The Stacktrace still exists, but the cubes seem to be working normally again

LicensedCrime commented 3 years ago

Forget my previous message, its still on..

ReadieFur commented 3 years ago

Ive had some reports from other people saying that they are also having an issue with CustomNotes however it still occurs when my mod is not installed, this confuses me and I cant see why my mod would conflict with it. I feel like it is a CustomNotes issue however I will leave this thread open in case of any updates.

LicensedCrime commented 3 years ago

Sorry for the headache... seems like modassistant overrides the newest custom notes dll, so that its still the older version with the bug. So this bug has no relation with DataPuller.