ثلاثة مسارات لنسيج حزمة الموارد مسطحة. مسار الغوغاء متداخل، وهذا أقل ما فيه
تعيش العناصر والكتل واللوحات في ملف واحد عميق. تعيش الغوغاء في مجلد يحمل اسمها - وبالنسبة لمعظم الغوغاء، يحتوي هذا المجلد على عدة ملفات، لذا فإن تجاوز ملف واحد يفشل بصمت.
تجاوز نسيج في حزمة موارد يعني وضع صورة PNG في المسار الدقيق الذي تبحث فيه اللعبة. بالنسبة لثلاثة من الأنواع الأربعة الشائعة، يكون هذا المسار منتظمًا تمامًا. أما بالنسبة للرابع، فهو ليس كذلك، والشذوذ أسوأ مما يبدو عليه في البداية.
المسارات الأربعة
assets/minecraft/textures/item/<name>.png
assets/minecraft/textures/block/<name>.png
assets/minecraft/textures/painting/<name>.png
assets/minecraft/textures/entity/<name>/<name>.png ← note the folder
العناصر والكتل واللوحات هي ملف واحد في دليل مشترك. الغوغاء هي دليل خاص بها، يحمل اسم الغوغاء، ويحتوي على ملف يحمل عادة اسم الغوغاء أيضًا. لذا فإن نسيج الزومبي هو entity/zombie/zombie.png، وليس entity/zombie.png.
لاحظ أيضًا أن الغوغاء تعيش تحت entity/، وليس mob/ — المجلد مسمى بمفهوم الكود بدلاً من مفهوم اللعبة.
المشكلة الحقيقية هي أن الغوغاء غالبًا ما لا تكون ملفًا واحدًا
من السهل تذكر التداخل بمجرد رؤيته. الشيء الذي يكسر التجاوزات فعليًا هو ما يوجد أيضًا في هذا المجلد.
تم تأكيد استبدال الغوغاء بصورة PNG واحدة ليعمل لعشرة فقط:
زومبي · هيكل عظمي · كريبر · خروف · عنكبوت · اندرمان · ذئب · ساحرة · الملتهب · قروي
كل شيء آخر قد يحتفظ بنسجه في مجلد فرعي مختلف، أو ينشره عبر عدة ملفات — متغيرات الصغار، والمتغيرات المدجنة، ومتغيرات الألوان. الحصان ليس صورة واحدة. القطة ليست صورة واحدة. استبدال ملف واحد في هذه الحالات يغير حالة واحدة من الغوغاء ويترك البقية دون مساس، مما يظهر في اللعبة على أنه "حزمتي لم تُطبق إلا جزئيًا".
هذا هو نمط الفشل الذي يستحق الاستيعاب: مسار خاطئ لا يظهر أي تغيير في النسيج على الإطلاق، ولكن مجموعة مسارات غير مكتملة تظهر تغييرًا جزئيًا — والثاني أصعب بكثير في التشخيص، لأن الحزمة تعمل بشكل واضح.
الأولوية هي للأعلى أولاً، وهو ما لا يشير إليه ملف الـ zip
عند دمج الحزم، الحزمة المدرجة أولاً هي التي تفوز في تعارضات المسارات. الفهرس 0 هو الأعلى أولوية.
يستحق هذا التوضيح لأنه يعكس النموذج الذهني الذي يأتي به الناس من ترتيب الملفات، حيث يفوز آخر شيء مكتوب. هنا، الحزمة الأولى في القائمة هي التي تبقى نسختها من item/diamond_sword.png؛ كل ما تحتها يملأ فقط المسارات التي لم تدعها الحزم التي فوقها.
تفصيلان حول هوية الحزمة
pack.png هو الأيقونة ويعيش في جذر ملف الـ zip، وليس تحت assets/. إنه مربع إلى 64 × 64 — يتم تغيير حجم الصورة غير المربعة بدلاً من وضعها في إطار، لذا فإن الأيقونة المصممة بنسبة 16:9 ستظهر مشوهة بدلاً من أن تكون محشوة.
رموز الألوان في اسم الحزمة هي نص حرفي. تدخل أحرف § في pack.mcmeta تمامًا كما هي مكتوبة ويقوم Minecraft بعرضها في وقت العرض: §a أخضر، §c أحمر، §b أزرق مائي، §e أصفر، §d وردي، §l غامق، §r إعادة تعيين. لا توجد خطوة هروب ولا مكون نص JSON متضمن — علامة القسم الخام في سلسلة نصية عادية هي الآلية بأكملها.