MusicCurator
Adds several new features to enhance your in-game listening experience, including a playlist app, a track blocklist, and a skip button.
| Date uploaded | 2 years ago |
| Version | 0.2.2 |
| Download link | goatgirl-MusicCurator-0.2.2.zip |
| Downloads | 8171 |
| Dependency string | goatgirl-MusicCurator-0.2.2 |
This mod requires the following mods to function
BepInEx-BepInExPack
BepInEx pack for Mono Unity games. Preconfigured and ready to use.
Preferred version: 5.4.2100LazyDuchess-CommonAPI
FOR PLUGIN MAKERS - General purpose library to make modding certain aspects of the game easier. Custom save data, phone apps, interactables and more!
Preferred version: 1.3.1README
MusicCurator
MusicCurator adds several new features to enhance your in-game listening experience, including a playlist app, a track blocklist, and a skip button. Fully compatible with BombRushRadio!
For best compatibility, it's highly recommended to use my patched BombRushRadio with this mod - more details below.
Features
- Instant shuffle: If you're getting tired of the "Locking Up the Funk" mixtape, this config option chooses a random song to play when loading a save. Also switches your music player app to shuffle mode automatically for maximum convienence.
- Skip tracks: Hit R3 (Semicolon on keyboard) to skip the currently playing song at any time. No more scrolling through the music app in the middle of a combo!
- Track blocklist: Sick of that one song killing your groove? Select it in the music app and press the skip button, and it'll never play again! (...except when you play it manually or in a playlist)
- You'll know it worked when the track's title and artist turn red.
- By default, all looped mixtapes are blocklisted to prevent them from playing automatically.
- New! Strict blocklisting mode that affects cutscenes and story events
- Track queueing: Press L3 (Quote) while hovering over a track in the music app to queue it up. Once the current track ends, the earliest queued track will play next, regardless of shuffle/looping settings.
- A queue number will show up on top of the track to denote where it's placed in the queue.
- Want to keep a queue looping? Make it a playlist!
- Playlists: The Playlists app in your phone allows you to create and edit playlists, as well as manage your blocklist and queue. Keep your favorite tracks on loop, or create playlists for different stages and vibes. Perfect for organizing your custom tracks!
- Single loop: A new looping option within the music app to keep one track constantly playing. Note that skipping a track in single loop mode will simply restart it instead.
- Quick shuffle toggle: Press Select (Left Bracket) while in the music app to quickly toggle looping, shuffling, or looping a single track.
- All mixtapes everywhere: The Hideout mixtape is now avaliable to play in every stage, and the "Locking Up the Funk" mixtape is avaliable in the Hideout.
- New! Unlocked phone everywhere (experimental): Use your phone at any time during the game's story to select new tracks.
- Rebindable controls and plenty of configuration options!
Incompatible Mods
- Shuffleify by Dragsun: This mod patches some of the same code MusicCurator patches, leading to unexpected behavior from both mods. Additionally, most of the features of Shuffleify (instant shuffle, looping single tracks, etc.) are also included in MusicCurator, so having both mods becomes redundant. While the plugins will both still load, it's highly recommended to choose one over the other.
- TrackRemix by Glomzubuk: Untested due to TrackRemix being deprecated. Highly recommended to use BombRushRadio instead.
Credits
Huge thanks to:
- Lazy Duchess, for the CommonAPI plugin and example code that made this mod possible
- Kade, ActualMandM, LunaCapra, and PrincessMtH for their work on BombRushRadio, which inspired this mod
Installation
- If installing using r2modman, click "Install with Mod Manager"
- If installing manually, extract the .zip and drop the mod files into your \BepInEx\plugins\ folder
- Make sure that the "MC-LoopSingle.png" and "MC-PlaylistIcon.png" files are in the same location as the MusicCurator.dll file!
Configuration
This mod can be configured with r2modman's config editor, configured in-game using the BepInEx Configuration Manager, or configured manually by editing \BepInEx\config\goatgirl.MusicCurator.cfg. Instructions for configuring the different values can be found in each config option's description.
Q&A
Where is the save data stored?
Windows: %localappdata%\Bomb Rush Cyberfunk Modding\MusicCurator\saves
There are separate files for each save slot, and each contains that slot's blocklist and playlists. Playlists can't currently be shared between saves, but you can copy-paste and rename these files to copy over your playlists and blocklist. Note that songs you haven't unlocked yet won't play in playlists.
How do I skip/blocklist/queue tracks?
By default, you can skip with R3/Semicolon and queue with L3/Quote. These controls are rebindable via the config editor. To blocklist/queue tracks, use R3/L3 while hovering over the track in the music app.
How do I make a playlist?
- Open the Playlists app and select "Create new playlists", then "Select playlist tracks"
- Alternatively, you can add all the tracks you want to your queue through the Music app, then select "Create playlist from queue"
- Press Right on the D-Pad for each track you want included in the playlist
- Once all the tracks you want are selected, press Left to create the playlist
All created playlists can later be edited, rearranged, or deleted.
Why don't my playlists / queued tracks continue between stages?
This is due to a bug in the current version of BombRushRadio that prevents all custom tracks from continuing between stages. Rather than implementing a fix for this within this mod, I've submitted a pull request on BombRushRadio's GitHub page that should fix the issue.
My fix will hopefully be included in a future update to BombRushRadio, but in the meantime, you can use this modified BombRushRadio.dll as a replacement.
How do I rename my playlists?
Check the config file - there's a setting for custom playlist names. Note that they'll be limited to 32 characters max in-game.
Why are some of my playlist tracks/buttons red?
Within a playlist, any music tracks marked with red text couldn't be found - to the mod, they don't exist and are marked as invalid. They shouldn't get deleted from the playlist, but they won't be played. These tracks are usually BombRushRadio custom tracks that were renamed or removed after being added to a playlist. They might also be stage-exclusive mixtapes (ex. "Beats from the Hideout") if the "All Mixtapes" config option is disabled, or music that is not yet unlocked.
Some of the playlist buttons ("Shuffle and loop", "Play and loop", and "Add to queue") will also be highlighted red to signal that the playlist cannot be played. This is for one of two reasons:
- All of the playlist's tracks are invalid; the tracks don't exist, so they can't be played
- All of the playlist's tracks are blocklisted, and the "Playlists ignore blocklist" config option is disabled
My controller keybinds don't work / work inconsistently!
In my experience, sometimes KeyCodes (the Unity input system this mod uses) just don't get picked up for controllers on startup. Try disconnecting and reconnecting your controller while in-game. If that doesn't work, you could potentially work around it by using Steam Input and reconfiguring certain inputs to match the keyboard keybinds.
I'm getting crashes/errors/bugs from this plugin!
Let me know in the Reptile Hideout or Freesoul server (@goatgirlclover - please ping instead of DMs!) and I'll try to sort it out when I can. Logs greatly appreciated!
CHANGELOG
1.1.0
- Track popup can now be disabled
- Fixed an issue where BombRushRadio tracks were not counted as unlocked
- This could cause the plugin to believe all music tracks were excluded (disabling all music playback), when only base game tracks were blocklisted
- The "Enable Music App Changes" configuration option has now split into two separate options:
- Enable Hotkeys in Music App: control the blocklist and queue from the Music app, as recommended in pre-1.0.0 versions of the plugin
- Enable Queue Visualization: whether to show queue numbers for tracks from within the music app (could harm performance)
- The track popup code has been slightly optimized
1.0.0
- New track popup w/ NetRadio implementation
- Implemented track caching to hopefully improve performance
- Fixed an issue where new save files would crash while the mod was active
- Improved error handling
- Legacy music app behavior has been moved into a configuration option (off by default)
- I recommend managing blocklisted/queued tracks in the Playlists app, rather than using the hotkeys in the Music app
0.2.2
- More reliable blocklisted track detection; while using Strict Blocklisting Mode, blocklisted locked tracks will (hopefully) no longer play during the story
0.2.0 (New Year Update)
- New configuration option: Strict Blocklisting Mode
- Prevents blocklisted songs from playing in cutscenes, story events, and the Music app
- Recommended to disable "Playlists Ignore Blocklist" if this setting is enabled
- Can be a little buggy, but at worst should be stuck playing silence rather than ever playing blocklisted tracks
- New configuration option: Allow Skipping Encounter Music
- Allows you to manually skip forced music tracks, such as in crew battles or dream sequences, via the skip keybind
- Recommended to enable if using Strict Blocklisting Mode to prevent silence during encounters
- New configuration option: Always Unlock Phone (experimental)
- Allows you to use your phone and access the Music/Playlists apps during story events
- May cause progression issues if other apps are used
- Music app tracklist can be buggy in certain scenarios
- Added new options in the Playlists app to add or remove tracks from the blocklist/queue (under "Manage queue/exclusions...")
- Allows you to add tracks that you haven't unlocked yet to the blocklist - useful when playing through the story mode
- Added new options in the Playlists app to start a playlist from a certain track ("View/edit playlist", then select a track)
- Sorry to the people that have been waiting for this feature for literal months!!!!!
- Reworked handling of blocklisting all available tracks
- Originally, if all tracks were blocklisted, the blocklist would be automatically reset
- Now, the game will attempt to play silence instead until the blocklist is manually reset or changed
- (this isn't super reliable yet, though, unless you're using Strict Blocklisting Mode)
- Adjusted blocklist loading/saving to be more reliable
- "Skip Mixtapes by Default" no longer forces the mixtapes to always be blocklisted
- Renamed and reordered certain buttons in the Playlists app for clarity
- Allowed the shuffle keybind to work outside of the Music app
- Updated mod icon
- (0.2.1) Updated links to patched BombRushRadio
0.1.3
- Fixed an issue where certain scenarios involving the blocklist could hang and crash the game
0.1.2
- Several fixes to blocklist loading/saving to make it far more reliable
- New configuration option: Always Instant Shuffle
- When this setting is enabled, the music player will instantly shuffle every time you enter a new area, rather than just on startup
- Not recommended to enable if playing with MusicCurator's patched BombRushRadio (as seen in Q&A)
0.1.1
- Fixed tracks with hyphens in their titles or artist names from breaking, making then unable to be added or removed from playlists
- MusicCurator's original system for converting tracks into text used hyphens to separate title from artist. It now uses a different, less common symbol instead (♫) and throws up errors if this symbol is detected in track names/artists.
- Old save data should be smoothly converted to use this symbol instead.
- Fixed an issue that prevented some invalid tracks from being removed from playlists
0.1.0
- Initial release