Alaanor / beatlist

Beatlist is an app to manage playlists and beatmaps for the game Beat Saber.
MIT License
202 stars 54 forks source link

Some songs not discoverable in-app #9

Closed joshwcomeau closed 4 years ago

joshwcomeau commented 4 years ago

First, thanks so much for building this tool! I was having a hard time with all the other ways to manage local songs, this is almost exactly what I was wishing for.

I notice that about 30 maps (out of 150) in the folder are not picked up by the application. As far as I know, there's nothing special about them (one in particular is a map I made, and it was made using the same settings as my other maps which are picked up).

I'm happy to dig into this myself, but was hoping you could point me to the right place / offer any guesses as to how this might be possible :)

Thanks!

Alaanor commented 4 years ago

Hello !

The exact condition for a song to be correctly imported in Beatlist is to successfully pass every condition in this method:

https://github.com/Alaanor/beatlist/blob/cfd115c43449af7e103866deb446c8a4dc9f03d5/src/lib/SongLoader.ts#L70-L105

Generally it fail because he couldn't have the onlineData on beatsaver (Like a map not published yet). This is something we can change and improve.

Now for your case, I'd be more than happy to discuss and debug it through discord (Or here). I probably haven't covered every edge case yet. :ok_hand:

Alaanor commented 4 years ago

Also as you can see on the line 97:

https://github.com/Alaanor/beatlist/blob/cfd115c43449af7e103866deb446c8a4dc9f03d5/src/lib/SongLoader.ts#L97-L100

There's a condition that show the error when he couldn't import. As it's an electron app, you can ctrl+shift+i and go to the settings page of the app and hit the scan button to get all the log in the console.

Only from the scan button in the settings it show the log in the console: https://github.com/Alaanor/beatlist/blob/12c4c1898d7a43cf0a88dcd3270ea6406e7f5d48/src/components/BtnScan.vue#L93

Alaanor commented 4 years ago

So 95daa2fc102d4e34be3b666c0ee020ecf4480450 a443149c0b9822556f9a8cc4da682f86267124b8 773f2efa200d7aef1ccfaeff8b9fea241fc3251f should fix/help to solve the problem. Basically I added a way to compute the hash for the song if the hash wasn't found in songhashdata.dat or if the file is not available. This should reduce the amount of error. I'm going to close the issue once merged on master and made a release.

joshwcomeau commented 4 years ago

Awesome! Thanks so much @Alaanor, that’ll really help me keep my local songs organized 😄

Alaanor commented 4 years ago

I've released v1.1.1 which contains the change. Closing the issue.