Zastępowanie dźwięków za pomocą pakietu zasobów: sounds.json i wymóg .ogg
Minecraft odtwarza tylko Ogg Vorbis, a zdarzenie dźwiękowe to nie plik. Oto plik mapowania, jak dodać dźwięk zamiast go zastępować i dlaczego Twój jest cichy.
Zastępowanie dźwięków często kończy się niepowodzeniem bez żadnego komunikatu, częściej niż jakakolwiek inna funkcja pakietów zasobów, a przyczyną są prawie zawsze dwie rzeczy: niewłaściwy format audio lub niezrozumienie, czym jest zdarzenie dźwiękowe.
Tylko Ogg Vorbis
Minecraft odtwarza .ogg (Vorbis) i nic innego. Plik .mp3 lub .wav zmieniony na .ogg nie zostanie odtworzony — kontener musi być faktycznie Ogg.
Ważna jest również różnica między mono a stereo: tylko pliki mono są pozycjonowane w przestrzeni 3D. Plik stereo odtwarzany jest ze stałą głośnością wszędzie, co jest odpowiednie dla muzyki, ale nie dla dźwięku bloku. Jeśli Twój niestandardowy dźwięk Kowadła wydaje się za Tobą podążać, to jest to plik stereo.
Zdarzenie dźwiękowe to nazwa, nie plik
entity.pig.ambient to zdarzenie. Mapuje się ono do listy plików, z której za każdym razem losowo wybierany jest jeden. Zastąpienie dźwięku Świni oznacza przedefiniowanie zdarzenia, a nie wrzucenie pliku gdzieś.
assets/minecraft/
├── sounds.json
└── sounds/custom/my_pig.ogg
{
"entity.pig.ambient": {
"replace": true,
"sounds": [ "custom/my_pig" ]
}
}
Trzy szczegóły:
replace: trueodrzuca waniliową listę. Jeśli go pominiesz, Twój dźwięk zostanie dodany do Basenu, więc będzie odtwarzany czasami, a oryginalny innym razem. Oba zachowania są użyteczne; domyślnie jest to dodawanie.- Ścieżki pomijają
sounds/i.ogg.custom/my_pigrozwiązuje się doassets/minecraft/sounds/custom/my_pig.ogg. sounds.jsonznajduje się w katalogu głównym assets/minecraft, a nie wewnątrzsounds/.
Opcje dla poszczególnych plików
"sounds": [
{ "name": "custom/my_pig", "volume": 0.8, "pitch": 1.2, "weight": 3, "stream": false }
]
weightwpływa na losowy wybór w ramach listy.stream: truedla wszystkiego, co trwa dłużej niż kilka sekund — muzyka i płyty. Niestrumieniowane długie pliki są wczytywane w całości do pamięci i mogą zawiesić klienta.volumenie może przekroczyć 1.0. Głośniej oznacza głośniejszy plik źródłowy.
Dodawanie zupełnie nowego dźwięku
Użyj własnej przestrzeni nazw, aby nic się nie kolidowało:
assets/my_pack/sounds.json
assets/my_pack/sounds/spell.ogg
{ "spell": { "sounds": ["spell"] } }
Następnie /playsound my_pack:spell master @a ~ ~ ~ 1 1. Niestandardowe zdarzenia dźwiękowe działają z /playsound oraz w blokach nutowych za pośrednictwem definicji utworu Szafy grającej; nie są one automatycznie przypisywane do żadnej akcji w grze.
Dlaczego jest cicho
- To nie jest prawdziwy Ogg Vorbis.
- Ścieżka zawiera
sounds/lub.ogg. sounds.jsonto nieprawidłowy JSON — końcowy przecinek zabija cały plik, więc każdy dźwięk w pakiecie milknie, nie tylko ten nowy.- Zły
pack_format, więc pakiet się ładuje, ale zasoby są ignorowane.
Ściągawki dotyczące struktury folderów pakietu, ponownego mapowania zdarzeń dźwiękowych i animowanych tekstur znajdują się w Narzędziach referencyjnych pakietów zasobów.