ModAssistant
ModAssistant copied to clipboard
Add "2 Click Install" feature
Background
Optional feature support for installing custom maps that do not contain any audio file.
This is part of a series of changes aimed at allowing custom maps to be created, uploaded, and used all without distributing any song file directly (instead the user must supply their own song).
See this post for more background: https://medium.com/@idolize/beat-saber-the-future-of-custom-songs-d64756818be7
Change
Upon detecting there is no included audio in the download (but there is audio.json and fingerprint.bin):
- Prompts user to select a master audio file to use with the map
- Utilizes SaberSongPatcher NuGet package published from https://github.com/idolize/saber-song-patcher to verify the song works with the map
- Patches the song with any tweaks
- Renames and re-encodes the song to whatever file name is listed in
Info.dat
Tested locally using custom BeatSaver instance.
The change increases the size of the overall size of the build pretty significantly - this is 99% due to the inclusion of ffmpeg binaries. I can look into some ways of optimizing this (e.g. only include x86 OR x64 ffmpeg binaries from the NuGet package, download ffmpeg at runtime, only include used ffmpeg features, etc.), but for now am just leaving it all as a proof of concept.
Related
https://github.com/lolPants/beatsaver-reloaded/pull/85 https://github.com/lolPants/beatmap-schemas/pull/10
A novice here in the best sense but wouldn’t a viable idea for such a magnificent VR game be to downgrade some of the resolution quality and sample size?