Программа Record Program — добавляем свою музыку в Minecraft с помощью 3YN0's Custom Records
Каждый уважающий себя строитель или исследователь кубического мира хотя бы раз задумывался: а почему бы не поставить любимый трек вместо стандартных пластинок? Перезапись ванильных звуков — путь негибкий, а моды требуют постоянных обновлений и совместимости с версиями. К счастью, нашёлся элегантный выход — утилита 3YN0's Custom Record Program, которая позволяет добавить собственные музыкальные диски без замены оригинального контента и без тяжёлых модификаций.
Зачем нужна эта программа
Стандартные способы внедрения своей музыки обычно сводятся к трём вариантам: установка модов вроде Custom Discs, использование серверных плагинов или прямое переименование файлов в папке assets. Все они либо привязаны к конкретному серверному ядру, либо ломают ванильные пластинки. Программа 3YN0 идёт иным путём: она генерирует датапак и совместимый ресурс-пак, которые работают на чистом клиенте и практически на любом сервере. При этом ни один из двенадцати стандартных дисков не пострадает — все добавленные треки получат уникальные идентификаторы через CustomModelData.
Как это работает
В основе лежит связка датапака и ресурс-пака. Датапак прописывает новые музыкальные диски в добыче криперов, а ресурс-пак подгружает ваши .ogg-файлы и, при желании, кастомные текстуры для пластинок. Утилита автоматически сканирует указанную папку с музыкой, создаёт необходимые mcfunction-файлы, добавляет записи в лут-таблицы и присваивает каждому треку порядковый номер. Вам остаётся лишь разложить исходники по папкам и запустить исполняемый файл.
Интересно, что программа не требует установки дополнительных библиотек или сред разработки — она работает «из коробки». Единственное требование: аудиофайлы должны быть в формате .ogg. Названия рекомендуется оформлять по шаблону «Название - Исполнитель.ogg», например «Row your boat - Steve.ogg». Это не только помогает утилите корректно сопоставить трек с обложкой, но и делает итоговый датапак более читаемым.
Пошаговая инструкция
После распаковки архива вы увидите несколько папок и конфигурационный файл. Действуйте в таком порядке:
- Подготовьте музыку. Сложите все желаемые .ogg-файлы в папку Music. Если треков много, не страшно — программа обработает любое количество.
- Добавьте обложки (опционально). В папке Textures разместите изображения в формате .png с точно таким же именем, как у соответствующего .ogg-файла. Если текстура не найдена, утилита случайным образом выберет одну из заготовок в папке Textures/Default — их можно редактировать или дополнять.
- Настройте ресурс-пак. Если у вас уже есть любимый ресурс-пак, замените папку «3yn0_custom_records_resourcepack» на свою (только не архивом, а распакованной директорией). Это удобно, когда вы играете на сервере с определённым оформлением.
- Запустите программу. После выполнения вы увидите в консоли список обработанных треков с присвоенными ID. Важно: утилита удаляет исходные файлы из рабочих папок, чтобы избежать дублирования при повторном запуске, поэтому заранее сделайте резервную копию музыки и текстур.
- Установите результат. Готовый ресурс-пак поместите в %appdata%/.minecraft/resourcepacks, а датапак — в папку datapacks внутри сохранения вашего мира или на сервере.
Кстати, если вы цените удобство и не хотите вручную копаться в системных каталогах, обратите внимание на лаунчер foxygame.net. Он устроен так, что любые датапаки и ресурс-паки можно добавить прямо через встроенный менеджер — достаточно пары кликов, и лаунчер сам разместит файлы в нужных папках, избавляя от риска ошибиться директорией. Это особенно выручает, когда вы часто переключаетесь между разными сборками или серверами.
Как получить диски в игре
Самый честный способ — охота на криперов. Когда скелет убивает крипера стрелой, из моба с определённым шансом выпадает один из ваших кастомных дисков. Шанс выпадения настраивается через конфиг, а ID пластинки генерируется автоматически. Если же хочется сразу послушать новинку, воспользуйтесь командами. Для ванильного ядра подойдёт такой вариант:
/give @p music_disc_11{CustomModelData:#ID#,display:{Name:'[{"text":"Music Disc","italic":false}]',Lore:['[{"text":"Название","italic":false,"color":"dark_blue"}]']},HideFlags:32} 1
Для серверов на Paper (или его форках) синтаксис чуть проще:
/give @p music_disc_11 1 {CustomModelData:#ID#,display:{Name:'[{"text":"Music Disc","italic":false}]',Lore:['[{"text":"Название","italic":false,"color":"dark_blue"}]']},HideFlags:32}
Не забудьте заменить #ID# на число, которое выдала программа, а «Название» — на реальное имя трека. Обратите внимание: при естественном дропе с крипера название пластинки будет отображаться корректно, а при ручной выдаче через команду — только если вы пропишете его в теге Lore.
Тонкости и рекомендации
Программа задумана максимально дружелюбной, но пара нюансов всё же есть. Во-первых, следите за форматом имён: если название .ogg и .png не совпадают, обложка будет выбрана случайно из дефолтных. Во-вторых, после запуска утилита очищает папки Music и Textures — это не баг, а защита от дублей. Поэтому всегда держите резервную копию исходников. В-третьих, ресурс-пак должен быть не архивом, а распакованной папкой — программа работает именно с директориями, а не с .zip-файлами.
Отдельного упоминания заслуживает совместимость. Поскольку датапак использует стандартную механику CustomModelData и лут-таблиц, он не конфликтует с большинством модов и серверных плагинов. Вы можете спокойно играть на ванильном клиенте, Paper, Spigot или даже Fabric — главное, чтобы сервер поддерживал датапаки. А если вы администрируете сервер, то раздача кастомных пластинок через квесты или награды становится элементарной задачей.
Заключение
3YN0's Custom Record Program — это маленькая, но очень продуманная утилита, которая закрывает давнюю потребность сообщества в простом добавлении музыки без костылей. Она не требует знаний программирования, работает с любым количеством треков и не трогает ванильный контент. Будь вы одиночный игрок, желающий украсить свой мир любимыми композициями, или владелец сервера, стремящийся создать уникальную атмосферу, — эта программа справится на отлично. А в связке с удобным лаунчером вроде foxygame.net процесс установки становится ещё приятнее, позволяя сосредоточиться на творчестве, а не на технических деталях.