You are viewing a potentially older version of this package. View all versions.
Flazhik-CybergrindMusicExplorer-1.6.0 icon

CybergrindMusicExplorer

Download and add your custom songs to Cyber Grind playlist and have a complete control over the playback

Date uploaded 2 years ago
Version 1.6.0
Download link Flazhik-CybergrindMusicExplorer-1.6.0.zip
Downloads 7921
Dependency string Flazhik-CybergrindMusicExplorer-1.6.0

This mod requires the following mods to function

BepInEx-BepInExPack-5.4.2100 icon
BepInEx-BepInExPack

BepInEx pack for Mono Unity games. Preconfigured and ready to use.

Preferred version: 5.4.2100
Flazhik-CGMEDownloader-2.2.0 icon
Flazhik-CGMEDownloader

A library used by CybergrindMusicExplorer downloader. Does NOTHING by itself.

Preferred version: 2.2.0

README

Custom CyberGrind Music Explorer

Download and add your custom tracks in Cyber Grind playlist and have a complete control over the playback

CGME

Disclaimer

Custom music in Cyber Grind playlist is an upcoming feature of ULTRAKILL, so you can use this mod until custom tracks are officially supported.

It doesn't interfere with leaderboards and doesn't alter your gameplay in any way apart from custom music: your score will be saved

This mod does not affect the folder with original soundtrack, so you can combine it with your custom tracks.

[09-12-2023] Violence layer update statement

Most likely, CyberGrind is going to officially support custom tracks by the end of the year.

The initial purpose of this mod was exactly that, so it'll become obsolete in that sense by the end of the year.

However, for the last 6 months I've been adding extra features in order to make CG experience as customisable and pleasant as I can (including volume boost, calm themes, intros and loops, downloader, things like that) and I'm not planning to stop since the mod has become much more than just custom tracks support, and I'll continue to work in that direction.

Once the custom tracks support is released, and in case you want to stick with the official part of the functionality, it'll be up to you and I hope you've enjoyed the mod!

However, in case you're willing to continue using CGME, please note the following:

  1. It's guaranteed that firstly an official support will completely break CGME functionality. It's going to take some time for me to fix it, and because of that, I ensured the mod will disable itself with the following update. If you're using a version older than 1.6.0, you're going to have to disable it yourself
  2. When the time comes, I'll adapt the mod and will release the suitable 1.7.0 version as soon as I can. But until then, you're going to have to wait for the announcement

Again, it will not stop me from developing the mod, and I'll get back to you with updates soon!

Installation

  1. Download the BepInEx release from here. It's recommended to choose BepInEx_x64 release unless you're certain you have a 32-bit system
  2. Extract the contents of BepInEx archive in your local ULTRAKILL folder. If you're not sure where this folder is located, find ULTRAKILL in your Steam Library > Right mouse click > Properties > Local files > Browse
  3. Download the CybergrindMusicExplorer manually, then extract the plugins folder at ULTRAKILL/BepInEx

Or you can just use r2modman for that. Both methods are described in the video below (click to open):

Watch the video

Using the mod

  1. Move your custom tracks/folders to ULTRAKILL/Cybergrind/Music
  2. Launch the game and go to the blue Cyber Grind settings terminal
  3. Music section of the terminal should now contain two folders for original score and your own tracks
  4. Fill the playlist the way you want and enjoy
  5. Optional: Music Explorer settings menu is available by pressing F4 (by default)

Settings

CGME menu

All the settings for the mod are available by pressing CGME Menu hotkey (F4 by default). The main screen of the menu contains the following options:

  1. Show current track panel indefinitely: once checked, this option will make the "Now playing" panel to be present the whole time the track is playing.
  2. Display subtitles: enable subtitles if present. Yes, the mod supports it, but more on that later.
  3. Volume boost for custom tracks: if your track is still too quiet, you can always add up to 10dB to it. Please use it carefully.
  4. Prevent duplicate tracks: prevents tracks duplication. Once checked, deletes existing duplicates.

For other settings like key bindings and Themes, use the respective tab.

Playback menu

Playback menu

Allows you to switch between the tracks mid-game. Available by pressing Tab by default.

If the whole menu is an overkill for you, just switch between tracks using Next track hotkey.

Downloader

Downloader window

YouCloud

You can now download tracks directly from YouTube and SoundCloud.

Downloader section supports both playlists and individual tracks URLs. All you have to do is to paste track/playlist URL in the input field and download each track individually or download every track of playlist at once. Downloaded tracks will be placed inside ULTRAKILL/Cybergrind/Music directory in YouTube and SoundCloud folders.

Note that you'll have to restart CyberGrind in order for tracks to appear in Terminal!

N.B.!

This feature uses ffmpeg. It's a 3rd-party library which you'll be offered to download automatically from the official source. You're at liberty not to do it, but in this case Downloader functionality won't be available to you. ffmpeg executables will be placed within the folder where CybergrindMusicExplorer.dll is located.

Please also note that this feature is in early stage of development and may not work consistently.

Known issues:

  • If you faced an issue where track is seemingly missing at the provided URL when it shouldn't be, refresh the list by pasting URL once again or restart CyberGrind
  • Some videos e.g. the ones that contain self harm topics may not be available for downloading
  • Download all process may stall, in this case please download the rest of the tracks manually or restart CyberGrind and try again
  • Only 100 first tracks are available if your trying to download YouTube playlist

Segmented tracks

You can also add multi-segmented looped tracks with an intro and loop parts. In order to make such a track, place your intro and loop files in the same folder and add _intro and _loop postfixes into their file names respectively. Please note that these parts must have the same extension!

Looped track example

Like this.

If everything's been done correctly, it now should be displayed as a single track.

Looped track example numero dos

Calm and battle themes

You know how in original ULTRAKILL campaign there's a light, calm theme playing when there are no enemies around, followed by an intense variation once the battle has started? Now you can enable it in Cyber Grind for original ULTRAKILL soundtrack and create your own tracks.

But unlike the campaign mode, you can decide when to play the calm theme by yourself (otherwise it would've been stupid since enemies are almost always present in Cyber Grind). Go to Themes tab and you'll see three controls:

  1. Play calm theme: disable if you're not interested in this feature
  2. Enemies threshold for calm theme to play: the battle theme will play unless there's less or equal enemies currently alive
  3. Play battle theme if more that N of these enemies are alive: enemies threshold may be a reliable way to control when the calm theme is playing, but what if, say, these two enemies who's left are Mindflayer and Insurrectionist? Is it really a good occasion to switch to the calm theme? That's why you can change a threshold for each enemy individually or disable it.

Example of the calm theme settings

"Play calm theme when there's 4 or less enemies around. Unless there's 1 or more Insurrectionists or >= 2 Mindflayers"

Alright, but what about custom tracks?

Well, to create such a track, use the same technique as for intros and loops: postfixes in your track file name. Any track is treated as a "battle theme" by default. To add its calm variation, add another, similarly named track with _calm postfix. Again, these files must have the same extension!

And what about segmented tracks? They already contain two files! How do I even make a calm variation to its intro and loop? Can I add a calm theme only to loop or only to intro specifically? Yes, you can. Customize it the way you want. Calm loop part can either have a _calm or _calmloop postfix, but intro has to end with _calmintro. More on that in the Manual section of the menu.

Effects replacement

Create a folder called CGME inside your ULTRAKILL/Cybergrind/Music directory (or use the one created by the mod), and you'll be able to replace some of the sound effects in Cybergrind. This folder is ignored by Music terminal. Please note that these files must have an .mp3 extension.

Here's the list of file names and the references to the sound effects these files are intended to replace:

  • cheer.mp3: The sound of cheering when you perform a parry
  • cheer_long.mp3: The sound of cheering when you finished a wave
  • aww.mp3: The sound of utter dissapointment when you died
  • end.mp3: Results screen music

Effects replacement

Subtitles support

If a regular Cyber Grind experience is too boring for you, you can turn it into a bloody karaoke (he-he, "bloody"). Place subtitles file named exactly as your track in the same folder where this track is located. Currently, only .srt and .vtt files are supported. The hierarchy and naming should be something like this:

ULTRAKILL/
├─ Cybergrind/
├─ Music/
│  ├─ Darude/
│  │  ├─ Darude - Sandstorm.mp3
│  │  ├─ Darude - Sandstorm.srt

Please note that if your track has into and loop segments, there must be two separate subtitles files


ULTRAKILL/
├─ Cybergrind/
│  ├─ Music/
│  │  ├─ Darude/
│  │  │  ├─ Darude - Sandstorm_loop.mp3
│  │  │  ├─ Darude - Sandstorm_loop.srt
│  │  │  ├─ Darude - Sandstorm_intro.mp3
│  │  │  ├─ Darude - Sandstorm_intro.srt

Additional Credits:

Created by Flazhik

Cyber Grind Music Explorer uses following libraries:

Extras:

For SoundCloud support, client_id was borrowed from SoundCloudExplode by jerry08, licensed under MIT License

CHANGELOG

  • 2.2.1

    • Hotfix for fonts falling back to Arial
  • 2.2.0

    • Added yt-dlp updater: there will no longer be dedicated CGME updates when YouTube suddenly decides to change its API, you will simply be prompted to automatically update yt-dlp.
    • Added a seek bar inside a Playback menu.
    • Added "Resume the last song from where it left off" setting
    • Added all the Fraud enemies in Themes section
    • Fixed a bug where calm themes turned off after restart
    • Fixed a bug where all the post-Fraud OSTs were missing
    • Added calm themes for Violence and Fraud
    • Fixed a bug where certain song titles were able to crash Discord rich presence
  • 2.1.2

    • Fraud update fixes
    • Updated yt-dlp version
  • 2.1.1

    • Updated yt-dlp version
  • 2.0.8

    • Calm/battle themes can now be configured with radiant enemies being taken into account
    • Now you can save volume boost setting for each individual track
    • Fixed a bunch of minor bugs
  • 2.0.7

    • Fixed the bug where the calm/battle divided tracks haven't started from the beginning
  • 2.0.6

    • Fixed a couple more bugs. Sorry for these minor version releases lol
  • 2.0.5

    • Fixed the bug with playlist editor going nuts over removed songs
    • Fixed the bug with setting default sound effects
  • 2.0.4

    • Preveting a user from binding anything to LMB + rolling back existing binds
  • 2.0.2

    • Got rid of unnecessary dependencies + some changes in order not to alert thunder security checks
  • 2.0.0

    • Everything's been remade. Like 95% of the mod was bascially written from scratch.
    • Don't even see the point in describing every bit that's been changed
    • Naturally all the issues caused by Revamp update are fixed