Play playlist songs endlessly, non-stop - no BS
This is a fork of TheZipCreator's original endless-qmod.
This fork keeps the original goal, but makes playlist playback more complete and less restrictive.
- Added
AnyforDifficultyandCharacteristicfilters. - Expanded playlist song resolution so more songs are playable instead of being silently dropped.
- Improved fallback behavior for incomplete playlist metadata:
- Missing or unusable playlist difficulty -> use the song's hardest available difficulty.
- Missing or unusable playlist characteristic -> use
Standardwhen available, otherwise the first valid characteristic.
- Added broader difficulty canonicalization for playlist metadata:
- Text labels (
Easy,Normal,Hard,Expert,Expert+/ExpertPlus). - Numeric canonical values (
0..4).
- Text labels (
- Endless settings now persist and restore across app restarts:
- Saves the selected playlist/playset and current Endless config when
Start!is pressed. - Restores those values when the Endless menu is opened again.
- Saves the selected playlist/playset and current Endless config when
Endless adds an Endless mode tab in Beat Saber's gameplay setup flow.
You start one map, then it keeps launching the next one automatically until you stop, fail (unless configured otherwise), or hit your configured end condition.
- Automatic mode:
- Source maps from a selected playlist, or
Allplaylists/maps. - Filter by
DifficultyandCharacteristic(both now supportAny). - Filter map requirements for
Noodle ExtensionsandChromaasAllowed,Required, orForbidden.
- Source maps from a selected playlist, or
- Playset mode:
- Create named playsets.
- Add/remove specific maps (map + characteristic + difficulty).
- Run endless using only that curated set.
- Session behavior:
Continue on Fail.Sequentialorder (or shuffled when disabled).End After All Songs Finish.
- In-run controls and HUD:
- Skip button in pause menu.
- Optional Endless HUD with total time and running total score.
Difficulty = Any:- Do not constrain by one difficulty.
- Use playlist metadata if valid; otherwise fall back to hardest available.
Characteristic = Any:- Do not constrain by one characteristic.
- Use playlist metadata if valid; otherwise fall back to
Standard/default valid characteristic.
This allows mixed-difficulty and mixed-characteristic playlists to play continuously instead of being cut down to only one exact combination.
Replay is known to conflict and may cause crashes or unstable behavior while Endless is active.
qpm s buildqpm s copyqpm s qmod
- zoller27osu, Sc2ad, and jakibaki - beatsaber-hook
- raftario
- Lauriethefish, danrouse, and Bobby Shmurner for this template