استبدال الأصوات بحزمة موارد: ملف sounds.json ومتطلبات صيغة .ogg
لا يشغل Minecraft سوى صيغة Ogg Vorbis، والحدث الصوتي ليس ملفًا. إليك ملف الربط، وكيفية إضافة صوت بدلاً من استبداله، ولماذا لا يصدر صوتًا.
فشل استبدال الأصوات يحدث بصمت أكثر من أي ميزة أخرى في حزم الموارد، ويكاد يكون دائمًا بسبب أحد أمرين: صيغة الصوت الخاطئة، أو سوء فهم لماهية "الحدث الصوتي" (sound event).
Ogg Vorbis فقط
يشغل Minecraft صيغة .ogg (Vorbis) ولا شيء غيرها. ملف بصيغة .mp3 أو .wav تم تغيير اسمه إلى .ogg لن يعمل — يجب أن يكون الحاوية بالفعل بصيغة Ogg.
الفرق بين أحادي الصوت (mono) وستريو (stereo) مهم أيضًا: ملفات أحادية الصوت فقط هي التي يتم تحديد موقعها في الفضاء ثلاثي الأبعاد. ملف ستريو يعمل بحجم صوت ثابت في كل مكان، وهو مناسب للموسيقى وغير مناسب لصوت كتلة. إذا بدا أن صوت السندان المخصص يتبعك أينما ذهبت، فهو ستريو.
الحدث الصوتي هو اسم، وليس ملفًا
entity.pig.ambient هو حدث. يرتبط بقائمة من الملفات، يتم اختيار أحدها عشوائيًا في كل مرة. استبدال صوت الخنزير يعني إعادة تعريف الحدث، وليس وضع ملف في مكان ما.
assets/minecraft/
├── sounds.json
└── sounds/custom/my_pig.ogg
{
"entity.pig.ambient": {
"replace": true,
"sounds": [ "custom/my_pig" ]
}
}
ثلاث تفاصيل:
replace: trueيتجاهل القائمة الأصلية (vanilla list). إذا حذفته، فسيتم إضافة صوتك إلى المسبح (The Pool)، بحيث يتم تشغيله أحيانًا ويتم تشغيل الصوت الأصلي في أحيان أخرى. كلا السلوكين مفيدان؛ الافتراضي هو الإضافة.- المسارات تحذف
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 blocks) عبر تعريف أغنية صندوق الموسيقى (Jukebox)؛ لا ترتبط تلقائيًا بأي إجراء في اللعبة.
لماذا لا يصدر صوتًا
- ليس Ogg Vorbis حقيقيًا.
- المسار يتضمن
sounds/أو.ogg. sounds.jsonهو JSON غير صالح — فاصلة زائدة في النهاية تدمر الملف بأكمله، لذا تصبح جميع الأصوات في الحزمة صامتة، وليس فقط الصوت الجديد.pack_formatخاطئ، لذا يتم تحميل الحزمة ولكن يتم تجاهل الأصول.
توجد أوراق الغش لهيكل مجلد الحزمة، وإعادة ربط الأحداث الصوتية، والزخارف المتحركة في أدوات مرجعية لحزم الموارد.