جایگزینی صداها با یک بسته منابع: 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.
تفاوت مونو در مقابل استریو نیز مهم است: فقط فایلهای مونو در فضای سهبعدی موقعیتیابی میشوند. یک فایل استریو با صدای ثابت در همه جا پخش میشود که برای موسیقی مناسب است و برای صدای بلوک نامناسب. اگر به نظر میرسد صدای سندان سفارشی شما همهجا دنبالتان میآید، استریو است.
یک رویداد صوتی یک نام است، نه یک فایل
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.
برگههای تقلب برای ساختار پوشه بسته، نگاشت مجدد رویداد صوتی و بافتهای متحرک در اینجا قرار دارند ابزارهای مرجع بسته منابع.