MC Toolkit

Руководства / Строительство и ресурсы

Замена звуков с помощью ресурспака: sounds.json и требование .ogg

Minecraft воспроизводит только Ogg Vorbis, а звуковое событие — это не файл. Вот файл сопоставления, как добавить звук вместо замены и почему ваш звук молчит.

Замена звуков тихо проваливается чаще, чем любая другая функция ресурспака, и почти всегда причина в одном из двух: неправильный аудиоформат или непонимание того, что такое звуковое событие.

Только Ogg Vorbis

Minecraft воспроизводит .ogg (Vorbis) и ничего больше. .mp3 или .wav, переименованный в .ogg, не проиграется — контейнер должен действительно быть Ogg.

Моно или стерео тоже важно: только монофайлы позиционируются в 3D-пространстве. Стереофайл играет с постоянной громкостью везде — это правильно для музыки и неправильно для звука блока. Если ваш кастомный звук наковальни будто следует за вами, значит он стерео.

Звуковое событие — это имя, а не файл

entity.pig.ambient — это событие. Оно сопоставляется со списком файлов, один из которых выбирается случайно каждый раз. Заменить звук свиньи — значит переопределить событие, а не просто положить файл куда-то.

assets/minecraft/
├── sounds.json
└── sounds/custom/my_pig.ogg
{
  "entity.pig.ambient": {
    "replace": true,
    "sounds": [ "custom/my_pig" ]
  }
}

Три детали:

  • replace: true отбрасывает ванильный список. Если его не указать, ваш звук добавится в бассейн, поэтому он будет играть иногда, а в остальных случаях — оригинал. Оба варианта полезны; по умолчанию — добавление.
  • В путях опускаются sounds/ и .ogg. custom/my_pig превращается в assets/minecraft/sounds/custom/my_pig.ogg.
  • sounds.json находится в корне assets/minecraft, а не внутри sounds/.

Параметры для отдельных файлов

"sounds": [
  { "name": "custom/my_pig", "volume": 0.8, "pitch": 1.2, "weight": 3, "stream": false }
]
  • weight смещает случайный выбор внутри списка.
  • stream: true для всего, что длится больше нескольких секунд — музыка и пластинки. Длинные файлы без потоковой передачи полностью загружаются в память и могут подвесить клиент.
  • volume не может превышать 1.0. Громче — значит громче исходный файл.

Добавление совершенно нового звука

Используйте собственное пространство имён, чтобы ничего не конфликтовало:

assets/my_pack/sounds.json
assets/my_pack/sounds/spell.ogg
{ "spell": { "sounds": ["spell"] } }

Затем /playsound my_pack:spell master @a ~ ~ ~ 1 1. Кастомные звуковые события работают с /playsound, в проигрывателях через определение песни для проигрывателя и в нотных блоках через компонент note_block_sound головы игрока; они не привязываются автоматически ни к какому игровому действию.

Почему он молчит

  1. Это не настоящий Ogg Vorbis.
  2. Путь содержит sounds/ или .ogg.
  3. sounds.json — невалидный JSON: лишняя запятая убивает весь файл, поэтому замолкают все звуки в паке, а не только новый.
  4. Устаревший pack.mcmeta — 26.x требует min_format и max_format, а пак без них отображается как несовместимый.

Шпаргалки по структуре папок пака, переназначению звуковых событий и анимированным текстурам — в Resource Pack Reference Tools.

Справочник по ресурспакам →

Другие руководства

Смотреть все →