CustomMusic
Play your own MP3/WAV/OGG music in the menu, hub and missions. Adds a Music tab to the VR settings menuCustomMusic for BRUTALISTICK VR
Play your own music in BRUTALISTICK VR instead of the stock soundtrack, with a Music tab added to the in-game VR settings menu.
The mod ships no music files. You point it at a folder, drop in your own .mp3, .wav or
.ogg tracks, and the game plays them in the menu, the hub and during missions.
Features
- Silences the stock soundtrack while the mod is active, so nothing plays over your tracks.
- Custom Music tab in the VR settings menu (a separate plate, next to the stock tabs).
- Track list with paging and one-click selection, plus Play / Pause, Next, Previous, Stop, Shuffle and "Reload folder" buttons.
- Menu, hub and missions: music keeps playing across scene changes.
- Formats: MP3, WAV and OGG Vorbis.
- Volume: uses the game's own Music slider, with an extra multiplier in the mod config.
- Safe with broken files: an unreadable track is skipped once (with a line in the log) and never retried in a loop.
Requirements
- MelonLoader 0.6+ or 0.7+ (the game ships with MelonLoader support; this mod is a single managed DLL and needs nothing else).
Installation
With a mod manager (recommended)
- Click "Install with Mod Manager" on the Thunderstore page.
- Launch the game. The mod creates
UserData\CustomMusic\on first start.
Manual
-
Make sure MelonLoader is installed in the game folder.
-
Drop
CustomMusic.dllinto:<Game Directory>\Mods\CustomMusic.dll -
Launch the game once so the music folder is created.
Adding your own music
The mod has exactly one music folder, and which one it is depends on how you start the game.
Installed with Thunderstore Mod Manager (and started from the manager):
%APPDATA%\Thunderstore Mod Manager\DataFolder\BrutalistickVr\profiles\<profile>\UserData\CustomMusic\
example
C:\Users\User1\AppData\Roaming\Thunderstore Mod Manager\DataFolder\BrutalistickVr\profiles\Default\UserData\CustomMusic
In the manager: Settings → Browse profile folder → UserData → CustomMusic.
Manual install (or launching BrutalistickVR.exe directly):
<Game Directory>\UserData\CustomMusic\
The mod prints the exact path it is using to MelonLoader\Latest.log on every launch
([CustomMusic] folder: ...), and drops a README.txt with that path into the folder itself.
Each mod-manager profile has its own folder: a new profile starts empty, so tracks have to be added
again. Supported formats: .mp3, .wav, .ogg; subfolders are scanned too. Then open
Settings → Music → Reload folder (or restart the game).
Tracks are listed and played in file-name order (1, 2, 3, ..., numbers compared as numbers, so
2 comes before 10). Press Shuffle on the Music plate if you want random order instead.
OGG files (and exotic WAV files) are converted once into UserData\CustomMusicCache\ so they can
be played back by Windows; the cache is reused on later launches. Its size grows with your music
collection (a 14 MB MP3 becomes a ~100 MB WAV) and it can be deleted at any time.
In-game panel
- Open the settings menu and pick the Music plate.
- Play / Pause toggles the current track, << Prev / Next >> change tracks, Shuffle toggles random order, Loop cycles Loop All → Loop Single → Loop Off, Stop stops playback, Reload folder rescans the music folder.
- Vol - / Vol / Vol + adjust the mod volume (the game's Music slider still applies on top).
- Playlist >> opens the track list; click a track to start it.
Configuration
UserData\MelonPreferences.cfg, section [CustomMusic]:
| Key | Default | Meaning |
|---|---|---|
Enabled |
true |
Master switch for the mod |
ReplaceStock |
true |
Silence the game's own music (menu, hub, missions) |
Autoplay |
true |
Start the playlist automatically in the first scene (false = start paused) |
Shuffle |
false |
Play the playlist in random order (off = file-name order) |
Loop |
0 |
0 = Loop All, 1 = Loop Single, 2 = Loop Off |
CassetteSfx |
true |
Cassette click sounds on play, pause and stop |
Crossfade |
1.0 |
Fade time in seconds between tracks (0 = hard cut) |
Volume |
1.0 |
Extra multiplier on top of the game's Music slider (0.0 – 1.0) |
Verbose |
true |
Log every track change and every blocked stock-music call |
AI disclosure
Parts of this mod's code and of this README were written with the help of a generative AI coding assistant. Every release is built and tested in the game before it is uploaded here, and the feature list above describes exactly what the current version does. The mod collects no analytics or telemetry and makes no network requests.
How it works
The shipped IL2CPP build of the game has no way to build an AudioClip from raw PCM — every
AudioClip creation method is stripped — so this mod does not touch Unity audio at all. It plays
your files through the Windows MCI interface (winmm.dll), which is also why it keeps playing
through scene loads. MP3 and OGG are decoded by managed libraries embedded in the DLL
(NVorbis and NLayer,
both MIT) and written to the cache as 16-bit PCM WAV.
No game files, assets or extracted content are bundled with this mod.
Troubleshooting
- Nothing plays: check that the files are in
UserData\CustomMusic\and press Reload folder. The mod writes what it is doing toMelonLoader\Latest.log(look for[CustomMusic]lines). - Still nothing: make sure Windows has a working default playback device — MCI plays through the Windows mixer, not through the game's audio engine.
- A track is skipped: unsupported or corrupt file; see the log line for that file name.
- Remove
UserData\CustomMusicCache\to force a fresh conversion of OGG/WAV files.
Source code and license
Source: https://github.com/Skibidi41Rizz/CustomMusic — MIT licensed (LICENSE), third-party
decoders listed in THIRD-PARTY-NOTICES.md.
Building from source (Windows, .NET 6 SDK):
dotnet build -c Release -p:GameDir="D:\SteamLibrary\steamapps\common\BRUTALISTICK VR"
GameDir must point at your own install: the project references MelonLoader.dll, 0Harmony.dll
and the generated Il2CPP assemblies from it and copies none of them. The result is
bin\Release\CustomMusic.dll; Create-ThunderstorePackage.ps1 then builds the upload zip.
Пользовательская музыка для BRUTALISTICK VR
Воспроизводите свою собственную музыку в BRUTALISTICK VR вместо стандартного саундтрека, используя вкладку Музыка, добавленную в меню настроек VR в игре.
Мод поставляется без музыкальных файлов. Поддерживает треки в форматах .mp3, .wav или
.ogg, и игра воспроизводит их в меню, хабе и во время миссий.
Особенности
-
Отключает стандартный саундтрек во время работы мода, поэтому ничто не будет воспроизводиться поверх ваших треков.
-
Вкладка «Пользовательская музыка» в меню настроек VR (отдельная панель рядом со стандартными вкладками).
-
Список треков с постраничной навигацией и выбором в один клик, а также кнопки «Воспроизвести/Пауза», «Следующий», «Предыдущий», «Стоп»,
«Перемешать» и «Перезагрузить папку».
- Меню, хаб и миссии: музыка продолжает воспроизводиться при смене сцен. Форматы: MP3, WAV и OGG Vorbis.
Громкость: используется собственный ползунок музыки игры с дополнительным множителем в конфигурации мода.
Безопасность с поврежденными файлами: нечитаемый трек пропускается один раз (с записью в логе) и никогда не повторяется в цикле.
Требования
- MelonLoader 0.6+ или 0.7+ (игра поставляется с поддержкой MelonLoader; этот мод представляет собой одну управляемую DLL и ничего больше не требует).
Установка
С помощью менеджера модов (рекомендуется)
-
Нажмите "Установить с помощью менеджера модов" на странице Thunderstore.
-
Запустите игру. Мод создаст
UserData\CustomMusic\при первом запуске.
Инструкция
-
Убедитесь, что MelonLoader установлен в папке с игрой.
-
Перетащите файл
CustomMusic.dllв:
<Каталог игры>\Mods\CustomMusic.dll
- Запустите игру один раз, чтобы была создана папка с музыкой.
Добавление собственной музыки
Мод содержит ровно одну папку с музыкой, и какая именно — зависит от способа запуска игры.
Установлено с помощью Thunderstore Mod Manager (и запущено из менеджера):
%APPDATA%\Thunderstore Mod Manager\DataFolder\BrutalistickVr\profiles\<profile>\UserData\CustomMusic\
Пример
C:\Users\mister67\AppData\Roaming\Thunderstore Mod Manager\DataFolder\BrutalistickVr\profiles\Default\UserData\CustomMusic
В менеджере: Настройки → Просмотреть папку профиля → UserData → CustomMusic.
Установка вручную (или запуск BrutalistickVR.exe напрямую):
<Каталог игры>\UserData\CustomMusic\
Мод выводит точный путь, который он использует, в файл MelonLoader\Latest.log при каждом запуске
([Папка CustomMusic]: ...), и помещает файл README.txt с этим путем в саму папку.
Каждый профиль менеджера модов имеет свою собственную папку: новый профиль начинается с пустого места, поэтому треки нужно добавлять
снова. Поддерживаемые форматы: .mp3, .wav, .ogg; подпапки также сканируются. Затем откройте
Настройки → Музыка → Перезагрузить папку (или перезапустите игру).
Треки отображаются и воспроизводятся в порядке имен файлов (1, 2, 3, ..., числа сравниваются как числа, поэтому
2 идет перед 10). Нажмите Перемешать на панели «Музыка», если хотите использовать случайный порядок.
Файлы OGG (и экзотические файлы WAV) один раз преобразуются в UserData\CustomMusicCache\, чтобы их можно было воспроизводить в Windows; кэш используется повторно при последующих запусках. Его размер увеличивается вместе с вашей музыкальной
коллекцией (файл MP3 размером 14 МБ превращается в файл WAV размером ~100 МБ), и его можно удалить в любое время.
Панель в игре
-
Откройте меню настроек и выберите панель Музыка.
-
Воспроизведение / Пауза переключает текущий трек, << Предыдущий / Следующий >> меняет треки, Перемешивание
переключает случайный порядок, Цикл переключает цикл «Цикл всех треков» → «Цикл одного трека» → «Цикл выключен», Стоп останавливает воспроизведение, Перезагрузить папку повторно сканирует папку с музыкой.
-
Громкость - / Громкость / Громкость + регулирует громкость мода (ползунок «Музыка» в игре по-прежнему применяется сверху).
-
Плейлист >> открывает список треков; щелкните по треку, чтобы запустить его.
Конфигурация
UserData\MelonPreferences.cfg, раздел [CustomMusic]:
| Клавиша | Значение по умолчанию | Значение |
| --- | --- | --- |
| Включено | true | Главный переключатель для мода |
| ReplaceStock | true | Отключить собственную музыку игры (меню, хаб, миссии) |
| Автовоспроизведение | true | Автоматический запуск плейлиста в первой сцене (false = запуск на паузе) |
| Перемешивание | false | Воспроизведение плейлиста в случайном порядке (выкл. = порядок имен файлов) |
| Зацикливание | 0 | 0 = Зациклить все, 1 = Зациклить один трек, 2 = Зациклить выключено |
| CassetteSfx | true | Звук щелчка кассеты при воспроизведении, паузе и остановке |
| Кроссфейд | 1.0 | Время затухания в секундах между треками (0 = резкое обрыв) |
| Громкость | 1.0 | Дополнительный множитель поверх ползунка «Музыка» в игре (0.0 – 1.0) |
| Подробный вывод | true | Записывайте каждое изменение трека и каждый заблокированный вызов стандартной музыки |
Раскрытие информации об ИИ
Часть кода этого мода была написана с помощью генеративного ИИ-помощника в программировании. Каждый релиз собирается и тестируется в игре перед загрузкой сюда, и список функций выше точно описывает, что делает текущая версия. Мод не собирает аналитику или телеметрию и не выполняет сетевых запросов.
Как это работает
В поставляемой сборке игры IL2CPP нет возможности создать AudioClip из необработанного PCM — все методы создания AudioClip удалены — поэтому этот мод вообще не затрагивает звук Unity. Он воспроизводит
ваши файлы через интерфейс Windows MCI (winmm.dll), поэтому он продолжает воспроизведение
через
