alaanor / beatlist Goto Github PK
View Code? Open in Web Editor NEWBeatlist is an app to manage playlists and beatmaps for the game Beat Saber.
License: MIT License
Beatlist is an app to manage playlists and beatmaps for the game Beat Saber.
License: MIT License
Is it possible?
Some songs have long names and/or misspelled.
Be nice be able to rename song details (song name, artist) etc within beatlist
Tested with both an .exe file and a .jpg file in the Beat Saber/Playlists
folder
When a non-playlist file is present, you cannot properly add new playlists or create a new one from beatlist. Playlists added to the Playlists
folder after the non-playlist file is added will not appear in beatlist's Playlist tab
If beatlist is installed AFTER a non-playlist file is already present, no playlists will properly load in beatlist until the non-playlist file is removed.
When you click on any of the sort arrow on song name, artist etc in the browser section of playlists, the program becomes unresponsive after.
Not sure whats going on but this app eats my ram worse than google chrome. Its slow and it eats around 22 gb of my 24gb of ram when i try to download songs on playlists I haven't already downloaded.
Unlike with ModAssistant, clicking a "one-click install" button on such site as bsaber.com opens the song page in BeatList instead of quietly installing it.
So until this behaviour is changed, how could I make BeatList ignore the "beatsaver://" links?
This doesn't always happen, but sometimes beatlist just stays on the home screen and does not continue to the song screen. Seems a bit random honestly... Just happened again the first time I started beatlist by using one-click, but now I can't reproduce it anymore. Maybe some kind of timeout that only happens the first time and now it's already cached in RAM and the timeout isn't hit anymore?
Hello,
When I search for a map and I see a list of map there, it would be nice to have the preview button in the results instead of clicking on each of them -> then preview -> go back -> try an another one
would be handy to see if I've missed anything :D
I believe beatlist was running in the background, because I got an out of memory error. When I checked what was going on, I had a pagefile of 34 GB on my C:\ drive, and my 16 GB of ram was entirely being consumed by beatlist. Does the app have any logs that I can include?
When attempting to download this song (https://beatsaver.com/beatmap/74d5) I get the following error:
"Error: Error: Couldn't create a folder for the new beatmap."
I assume this has to do with the title needing further sanitization, as it contains a question mark, which is an illegal character for Windows filenames.
Downloading it manually from Beatsaver and extracting it to a folder with the same naming convention, minus the question mark worked fine.
Songs with a Colon (:) cause an error because they are invalid file characters on windows
Just change line 90 of src/lib/BeatSaber.ts from .replace(/[|&;$%@"<>()+,]/g, '')
to .replace(/[|&;$%@"<>()+,:]/g, '')
and it should fix it
When a song has a symbol in the title that Windows doesn't allow in a folder name you get an error that the folder couldn't be created without any description of why it failed. Could beatlist be reworked to notice these symbols and drop them from the folder name when downloading new songs?
It happened to me with this song that has the * symbol in its name:
https://bsaber.com/songs/9e27/
[Enhancement] UI best practice on the dialog box to add a map to a playlist: replace the word "Cancel" on the button with "OK" or "Close" since 1) it's the only way to close the dialog box, 2) you're not actually going to cancel your last actions.
First I'd like to thank you for creating this awesome app. Makes creating and managing playlists a breeze. I do wish there's a sort by song title feature. Is it possible to add this feature?
Thanks
When I scan for songs there are 0 songs added.
The number of failed songs is the amount of songs I have in my Beatsaber folder.
All songs have the new key/name format and are freshly downloaded from Beatsaver.
Also tried clearing all my songs and just have 1 song downloaded from Beatsaver, same result (with 1 song not added)
Just a suggestion, but having the preview button on the browser screen would make it much easier to just open a lot of browser tabs of song previews and then download the maps you like. The download button in the browser view is kinda pointless without the preview button (at least for me) because I never download a song without looking at the preview anyway.
Hi there,
It would be really handy to be able to see under the Beat Local list the playlists a song is in using the playlist thumbnails I guess like the way you did for the difficulties.
That way, it would be quite easy to spot songs that are not in a playlist yet
It would be nice to be able to just hold down a key and click on songs when editing/adding songs to a playlist without having to aim for the "+ ADD" button.
+enhancement
When you use OneClick and beatlist opens the detail page of a map, clicking OneClick on another map will bring beatlist to the front but it won't actually open the page of the map because another map is already open.
Be nice to be able to arrange songs in playlist by dragging up and down
Whenever I try to download a song or even just scan my library the program seems to get stuck at some point and never finish, until the window turns solid white.
For downloading a song the moving circles progress bar will continously spin forever without finishing (the song seems to have downloaded though in beat saber folder).
For scanning library, it gets stuck at the last song until the program turns solid white. (Scanning Song 4892/4893 in my case)
Just loaded Beatlist this morning. Looks like it will be good for custom songs but I would also like to include some of the OST. Is that possible?
The downloads from playlists/OCI's will stop once you stop focusing on the beatlist app making it insanely tedious and making it take longer to bulk download.
Downloads in turn also stop when you have too many at the same time and you have to reset the app to fix this issue.
Issue:
If the Beatlist window is resized, some column headings can become vertically off-center.
Steps to reproduce:
System:
Any playlist that has uppercase as the first letter will not be read, won't even show up in the playlists.
For example, playlistTitle works, but PlaylistTitle doesn't. Same goes for image, description, song hash etc.
Beatlist doesn't follow specs so if I download the same song from MA one click install and beatlist I will have 2 different folders of one song:
MA:
632f (Sengoku HOP - Uninstaller & Puds)
Beatlist:
632f Sengoku HOP - Uninstaller Puds
(to note: ampersand symbol is indeed missing in beatlist folder name as well)
Assistant said that this is the right way:
https://discord.com/channels/441805394323439646/447974102045687808/650668556073041920
It would be nice to have a view of the players favorite maps. Maybe like a playlist
The player favorites are stored in %LOCALAPPDATA%Low\Hyperbolic Magnetism\Beat Saber\PlayerData.dat
which is a JSON file.
Using Search or Filters causes UI to be unresponsive. This is on both Songs list and Playlist editing.
Essentially unusable. I have 135 Songs.
Tested on Ver 1.2.0 and Ver 1.2.1
Having an option as simple as a checkbox for turning this off would be great, especially for scripts that open beatsaver:// urls in order to download songs based on certain criteria.
When Beatsaver.com is offline (maintenance or other) the program is unusable as it still tries to verify hashes and displays no maps.
Please just load the local songs regardless so we can continue creating/updating playlists.
Seems like an easy enhancement, but much needed. Just allow setting the items per page in settings so it doesn't default to 12 on each run of the app!
Hi,
search does not seem to get any results when searching for the key of the map. This works in BeatDrop.
I guess this is because according to https://github.com/Alaanor/beatlist/blob/master/src/lib/BeatSaverAPI.ts#L17 the search/text
endpoint is used but BeatDrop uses search/text/all
(https://github.com/StarGazer1258/BeatDrop/blob/master/src/actions/searchActions.js#L51)
Also while looking at that piece of code I noticed that URL encoding might be missing in all functions in https://github.com/Alaanor/beatlist/blob/master/src/lib/BeatSaverAPI.ts .
If a song title has a special character in it which Windows does not support inside of directory names, the folder for the song fails to be created and therefore the song cannot be downloaded within Beatlist. At least that's what I'm assuming.
As a work around, I can install via ModAssistant by using the suggested workaround for changing the beatsaver:// handler temporarily mentioned here . After doing this, beatlist does recognize the song is installed. It just cant install it on its own.
Workaround may just be doing a quick search of the string for any characters not allowed in Windows directories if you're not already:
< (less than)
> (greater than)
: (colon - sometimes works, but is actually NTFS Alternate Data Streams)
" (double quote)
/ (forward slash)
\ (backslash)
| (vertical bar or pipe)
? (question mark)
* (asterisk)
If this is something you are already doing then I'm not sure why the folder is failing to create, as any other song I've tried so far has been working without issue.
The song in question that I had noticed the issue with is https://beatsaver.com/beatmap/ebb
Edit: Formatting
Hi, first thanks for your software. I used it yesterday and it is working great :) !
I have an enhancement feature for you. It will be cool to able to select the number of song displayed in the online song tab. I have check the API of https://beatsaver.com/ but unfortunatly, it seems that there is not possible. They use on their site an infinite scroll view :/.
Reading their code, the page size is an hardcoded value to 10 (https://github.com/lolPants/beatsaver-reloaded/blob/master/.env.example) and server routes are not developped to be able to give this value :(.
So either you can preload n pages of 10 elements in your side or may be create a request on the gihub to be able to give this parameter in their rest api ?
What do you think about that ?
This isn't big deal; only aesthetic. To reproduce, just type into the search really quickly. Preferably, type in a word that are in a lot of song names. While it tries to live-filter while the typing is happening, sometimes the wrong song pictures get associated to the final results.
^ would be really nice, and probably easy to implement
I have tons and tons of songs, some of which I don't play, but I don't really want to remove them permanently (especially as some are not available publicly anymore).
It would be amazing if one could in both local song lists (as in, in the song list and in playlists) mark songs as "archived". That could move them to a separate tab (next to Online and Local) called Archive, where they'd just sit... "backed up", but not visible by the game.
The easiest implementation would probably be an extra folder in Beat Saber Data, called something like BeatList Archive, where you'd just move the archived folders.
Thank you for considering this feature.
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!
Please add batch selection
too many Local songs it's hard to add to playlist once
The on click installer for songs is able to re-download the songs if they already exist this is unnecessary of course and a waste of data usage!
It should be a small fix since it's just missing a check and it would be a good QoL update
I would like to be able to not only search by keyword but also the difficulties the song is mapped too if possible, please.
If I am browsing the latest songs and I'm a few dozen pages deep, then I go to search for something, Beatlist stays set to whatever page number I was on. If there aren't that many pages of search results it looks like there are no results until I manually page back to a lower number.
I think it would be a much better user experience for it to reset back to page 1 when running a new search.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.