Заміна звуків за допомогою пакета ресурсів: sounds.json і вимога до .ogg
Minecraft відтворює лише Ogg Vorbis, а звукова подія — це не файл. Ось файл зіставлення, як додати звук замість заміни та чому ваш не звучить.
Заміна звуку непомітно зазнає невдачі частіше, ніж будь-яка інша функція пакетів ресурсів, і це майже завжди одна з двох речей: неправильний аудіоформат або неправильне розуміння того, що таке звукова подія.
Лише Ogg Vorbis
Minecraft відтворює .ogg (Vorbis) і нічого іншого. Файл .mp3 or .wav renamed to .ogg will not play — the container has to actually be Ogg.
Моно чи стерео також має значення: лише монофайли позиціонуються у 3D-просторі. Стереофайл відтворюється з постійною гучністю всюди, що правильно для музики та неправильно для звуку блока. Якщо ваш власний звук ковадла ніби слідує за вами всюди, це стерео.
Звукова подія — це назва, а не файл
entity.pig.ambient is an подія. Вона зіставляється зі списком файлів, один із яких щоразу вибирається випадково. Заміна звуку свині означає перевизначення події, а не просто перетягування файлу кудись.
assets/minecraft/
├── sounds.json
└── sounds/custom/my_pig.ogg
{
"entity.pig.ambient": {
"replace": true,
"sounds": [ "custom/my_pig" ]
}
}
Три деталі:
replace: trueвідкидає ванільний список. Пропустіть це, і ваш звук буде додано до
пулу, тому він грає іноді, а в інший час грає оригінал. Обидва варіанти поведінки корисні; за замовчуванням — додавання.
- Шляхи опускають
sounds/and.ogg.custom/my_pigresolves to
assets/minecraft/sounds/custom/my_pig.ogg.
sounds.jsonsits at the assets/minecraft root, а не всередині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. Custom sound events work with /playsound and in note blocks via a jukebox song definition; they do not automatically attach to any game action.
Чому нічого не чути
- Не справжній Ogg Vorbis.
- Шлях містить
sounds/or.ogg. sounds.jsonis invalid JSON — a trailing comma kills the whole file, so every sound
у пакеті перестає звучати, а не лише новий.
- Неправильно
pack_format, so the pack loads but assets are ignored.
Шпаргалки зі структури папок пакета, перепризначення звукових подій та анімованих текстур містяться в Довідкові інструменти пакетів ресурсів.