리소스 팩으로 사운드 교체하기: 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 컴포넌트를 통해 작동합니다; 어떤 게임 동작에도 자동으로 연결되지는 않습니다.
재생되지 않는 이유
- 진짜 Ogg Vorbis가 아닙니다.
- 경로에
sounds/또는.ogg가 포함되어 있습니다. sounds.json가 유효하지 않은 JSON입니다 — 끝에 남은 쉼표 하나가 파일 전체를 망가뜨려서, 새 사운드뿐만 아니라 팩의 모든 사운드가 재생되지 않습니다.- 오래된
pack.mcmeta— 26.x는min_format와max_format를 요구하며, 이것들이 없는 팩은 호환되지 않는 것으로 표시됩니다.
팩 폴더 구조, 사운드 이벤트 재매핑, 애니메이션 텍스처에 대한 치트 시트는 리소스 팩 참조 도구에 있습니다.