Skip to content

A Beat Saber mod that produces never-ending and ever changing levels. Inspired by the Infinite Jukebox.

License

Notifications You must be signed in to change notification settings

rigdern/InfiniteBeatSaber

Repository files navigation

Infinite Beat Saber

A Beat Saber for PC mod that generates never-ending and ever changing variations of existing Beat Saber levels. Play your favorite songs for as long as you want — they never end!

This mod is both inspired by the The Infinite Jukebox and leverages some of its source code. See the Credits section for details.

How to Play

  1. Install the Infinite Beat Saber mod using ModAssistant or a mechanism of your choosing. If you haven't installed any Beat Saber mods before, you might want to check out the PC Modding page on the Beat Saber Modding Group Wiki. (If you prefer manual installation, see the Manual Installation doc.)
  2. Launch Beat Saber.
  3. Press the "Solo" button.
  4. Select one of the 42 currently supported levels. Only the Standard, One Saber, and No Arrows modes are currently supported.
  5. Press the button with the infinity symbol on it — (1) in the screenshot.
  6. Play the song for as long as you like — it never ends!

Here's a screenshot highlighting the relevant UI:

Screenshot highlighting the Custom Levels and infinity buttons

If the infinity button is disabled, it means one of these things:

  1. The selected level isn't currently supported.
  2. The selected mode isn't currently supported — only the Standard, One Saber, and No Arrows modes are currently supported.

If you hover over the infinity button, it'll pop up some text describing which case it is.

Currently Supported Levels

All but 3 built-in levels are supported (excluding DLC). In other words, these level packs are supported:

  • Original Soundtrack Volumes 1 through 5
  • Extras
  • Camellia Music Pack

These are the 3 unsupported levels:

  • I Wanna Be A Machine by The Living Tombstone. Mapped by ConnorJC (Issue #1)
  • One Hope ft. David Binney by KNOWER (Issue #2)
  • Light it up by Camellia (Issue #3)

Additionally, these custom levels are supported:

How to Add Additional Levels

See the How to Add Additional Levels doc.

How It Works

For songs in Spotify's catalog, Spotify's audio analysis web API provides information about their structure and musical content including rhythm, pitch, and timbre. The Infinite Jukebox algorithm (see InfiniteJukeboxAlgorithm/) uses this information to figure out which sections of the song are so similar that it can jump the song from one section to the other without the listener noticing a seam in the music. The result is a never-ending list of song sections — play this section, then this section, then this section, etc.

Based on this never-ending list of song sections, Infinite Beat Saber slices up the audio and beatmap which results in a never-ending Beat Saber level.

If you're interested in understanding the code, InfiniteBeatSaberMode.cs would be a good place to start. It brings together all of the pieces so it contains the big picture. From there, you can jump into any of the pieces that interest you.

Credits

This mod is inspired by The Infinite Jukebox and leverages its algorithm.

The original implementation of The Infinite Jukebox is by Paul Lamere.

The code for the Infinite Jukebox algorithm in this repo is derived from The Eternal Jukebox by UnderMybrella, a rework of the original project.

I published my extraction of the Infinite Jukebox algorithm to its own repo to make it easier for anyone that wants to make use of the algorithm in their own projects.

Development Blog

If you want to hear about my experience working on this project, check out the Infinite Beat Saber Development Blog. Here are some highlights:

Support My Work

If you'd like to support my work, consider buying me a coffee on ko-fi.

License

MIT

About

A Beat Saber mod that produces never-ending and ever changing levels. Inspired by the Infinite Jukebox.

Resources

License

Stars

Watchers

Forks

Sponsor this project

Packages

No packages published