halsafar / BeatSaberSongBrowser

BeatSaber plugin, adds much needed functionality to the song selection interface.
MIT License
164 stars 41 forks source link

Sort by buttons clickable but don't actually sort anything #121

Closed BobbieVx closed 3 years ago

BobbieVx commented 3 years ago

Added SongBrowser 6.1.1 to ModAssistant on Beat Saber 1.12.2 and it installed and I can see the menu at the bottom and can click the buttons and they turn green and red but it doesn't actually sort anything. The only other UI mod I have installed is Song Play History. Maybe it is conflicting with that in some way?

AerialAleks commented 3 years ago

I have this issue too. Also filtering and filter reset button are not working at all, not even selecting anything. In logs i have messages

(Filename: <198f127f7c8f4b798250f13b6ed11ac7> Line: 0)

NullReferenceException: Object reference not set to an instance of an object
  at SongBrowser.UI.SongBrowserUI.OnFilterButtonClickEvent (SongBrowser.DataAccess.SongFilterMode mode) [0x000d5] in <198f127f7c8f4b798250f13b6ed11ac7>:0 
  at SongBrowser.UI.SongBrowserUI+<>c__DisplayClass35_0.<CreateFilterButtons>b__0 () [0x00000] in <198f127f7c8f4b798250f13b6ed11ac7>:0 
  at UnityEngine.Events.InvokableCall.Invoke () [0x00010] in <97fdf0a75ab94da9a7e5188c186e574d>:0 
  at UnityEngine.Events.UnityEvent.Invoke () [0x00022] in <97fdf0a75ab94da9a7e5188c186e574d>:0 
  at UnityEngine.UI.Button.Press () [0x0001c] in <bb86d7036fba4b379d7e56f853ff7d90>:0 
  at UnityEngine.UI.Button.OnPointerClick (UnityEngine.EventSystems.PointerEventData eventData) [0x00009] in <bb86d7036fba4b379d7e56f853ff7d90>:0 
  at UnityEngine.EventSystems.ExecuteEvents.Execute (UnityEngine.EventSystems.IPointerClickHandler handler, UnityEngine.EventSystems.BaseEventData eventData) [0x00007] in <bb86d7036fba4b379d7e56f853ff7d90>:0 
  at UnityEngine.EventSystems.ExecuteEvents.Execute[T] (UnityEngine.GameObject target, UnityEngine.EventSystems.BaseEventData eventData, UnityEngine.EventSystems.ExecuteEvents+EventFunction`1[T1] functor) [0x00063] in <bb86d7036fba4b379d7e56f853ff7d90>:0 
UnityEngine.DebugLogHandler:Internal_LogException(Exception, Object)
UnityEngine.DebugLogHandler:LogException(Exception, Object)
UnityEngine.Logger:LogException(Exception, Object)
UnityEngine.Debug:LogException(Exception)
UnityEngine.EventSystems.ExecuteEvents:Execute(GameObject, BaseEventData, EventFunction`1)
VRUIControls.VRInputModule:ProcessMousePress(MouseButtonEventData)
VRUIControls.VRInputModule:Process()
UnityEngine.EventSystems.EventSystem:Update()

(Filename: <198f127f7c8f4b798250f13b6ed11ac7> Line: 0)

Uploading Crash Report
NullReferenceException: Object reference not set to an instance of an object
  at SongBrowser.UI.SongBrowserUI.CancelFilter () [0x00078] in <198f127f7c8f4b798250f13b6ed11ac7>:0 
  at SongBrowser.UI.SongBrowserUI.OnClearButtonClickEvent () [0x00052] in <198f127f7c8f4b798250f13b6ed11ac7>:0 
  at SongBrowser.UI.SongBrowserUI.<CreateOuterUi>b__33_0 () [0x0001a] in <198f127f7c8f4b798250f13b6ed11ac7>:0 
  at UnityEngine.Events.InvokableCall.Invoke () [0x00010] in <97fdf0a75ab94da9a7e5188c186e574d>:0 
  at UnityEngine.Events.UnityEvent.Invoke () [0x00022] in <97fdf0a75ab94da9a7e5188c186e574d>:0 
  at UnityEngine.UI.Button.Press () [0x0001c] in <bb86d7036fba4b379d7e56f853ff7d90>:0 
  at UnityEngine.UI.Button.OnPointerClick (UnityEngine.EventSystems.PointerEventData eventData) [0x00009] in <bb86d7036fba4b379d7e56f853ff7d90>:0 
  at UnityEngine.EventSystems.ExecuteEvents.Execute (UnityEngine.EventSystems.IPointerClickHandler handler, UnityEngine.EventSystems.BaseEventData eventData) [0x00007] in <bb86d7036fba4b379d7e56f853ff7d90>:0 
  at UnityEngine.EventSystems.ExecuteEvents.Execute[T] (UnityEngine.GameObject target, UnityEngine.EventSystems.BaseEventData eventData, UnityEngine.EventSystems.ExecuteEvents+EventFunction`1[T1] functor) [0x00063] in <bb86d7036fba4b379d7e56f853ff7d90>:0 
UnityEngine.DebugLogHandler:Internal_LogException(Exception, Object)
UnityEngine.DebugLogHandler:LogException(Exception, Object)
UnityEngine.Logger:LogException(Exception, Object)
UnityEngine.Debug:LogException(Exception)
UnityEngine.EventSystems.ExecuteEvents:Execute(GameObject, BaseEventData, EventFunction`1)
VRUIControls.VRInputModule:ProcessMousePress(MouseButtonEventData)
VRUIControls.VRInputModule:Process()
UnityEngine.EventSystems.EventSystem:Update()

(Filename: <198f127f7c8f4b798250f13b6ed11ac7> Line: 0)
AerialAleks commented 3 years ago

Actually - fixed it by removing song_browser_settings.xml from game root dirrectory.

livejamie commented 3 years ago

Actually - fixed it by removing song_browser_settings.xml from game root dirrectory.

I confirm this bug and @AerialAleks' fix of deleting the .XML file.

Thanks OP for your hard work it sucks playing BeatSaber without this plugin.

halsafar commented 3 years ago

Did either of you by any chance keep the backup file of the settings file song_browser_settings.xml.bak?

I'd like to reproduce this and fix it.

livejamie commented 3 years ago

Did either of you by any chance keep the backup file of the settings file song_browser_settings.xml.bak?

I'd like to reproduce this and fix it.

browser_settings.zip

halsafar commented 3 years ago

Thanks! I'll give it a shot.

PatrickZdarsky commented 3 years ago

I have also encountered this bug that sorting didn't do anything and my workaround until now was to activate and deactivate any filter, after that sorting worked without a problem. This temporary fix gets broken any time the song list is opened or the song category (e.g. Custom Songs, Favorites...) is changed. I have not yet deleted my song_browser_settings.xml Maybe this could help in finding the problem

My current song_browser_settings.xml: gist

AerialAleks commented 3 years ago

Got this problem again after using ingame built in filter with Song Browser ones.

My case to replicate bug:

Still, removing of config xml file works as temporary fix.

halsafar commented 3 years ago

I cannot seem to reproduce this bug. I've tried forcing the same config. I tried the steps from @AerialAleks. No luck. It seems to be happening to quite a few people so I'd like to fix it.

Questions:

Garywoo commented 3 years ago

For me it occurred immediately after updating BS, realising mods weren't loading, and then following these steps (solution 2).

It then happened a while later after deleting song_browser_settings.xml, I had been playing some local games and some multiplayer games in the session when I noticed it stopped working again.

MCJack123 commented 3 years ago

I can confirm this happening on 1.13.0, and that deleting song_browser_settings.xml fixes it. It happened to me twice: the first time was a few weeks ago when SongBrowser was updated for 1.12, and yesterday when updating (?) in ModAssistant.

halsafar commented 3 years ago

Sorry for the delay on this release. I found a few paths to this, hopefully addressed them all in 6.1.2 release. https://github.com/halsafar/BeatSaberSongBrowser/releases/tag/6.1.2

I'll leave this open a bit to see if anyone is still hitting it in 6.1.2 with Beat Saber 1.12.2

halsafar commented 3 years ago

Seems fixed, given enough time without this issue popping back up.