ما هو Mixin؟ تعديل كود بايت Minecraft (2026)

Mixin هي مكتبة حقن التعليمات البرمجية التي تسمح لـ Minecraft بتعديل فئات اللعبة في وقت التحميل. إليكم ما تفعله ولماذا تحتاجها التعديلات.

Frameworksby trqUpdated June 4, 2026
Key takeaways
  • Mixin هي مكتبة جافا تقوم بتعديل الأصناف المترجمة لـ Minecraft عند بدء التشغيل.
  • تحدد التعديلات أماكن إدخال التعليمات البرمجية، وليس شكل الملف، لذا فإن التعديلات تبقى صالحة بعد تحديثات اللعبة.
  • Fabric مبني على Mixin ويطبق مزيج كل تعديل أثناء تحميل الأصناف.
  • أنت لا تقوم بتثبيت Mixin بنفسك؛ يقوم المُحمِّل بتضمينه.

Mixin هي مكتبة جافا تسمح لـ Mod بتعديل الأصناف المترجمة لـ Minecraft أثناء تحميل اللعبة، دون الحاجة إلى تعديل الكود المصدري الأصلي. تكتب الـ Mods أصنافًا صغيرة تحدد "أضف هذا الكود في هذه النقطة في طريقة اللعبة هذه"، وتقوم Mixin بدمجها في رمز البايت في وقت التشغيل. يستخدمها Fabric كآلية تعديل أساسية.

أين Opal يناسب

Opal هو تعديل Fabric، لذا فهو يعتمد على Mixin من الداخل. أنت لا تقوم بتثبيت Mixin بنفسك؛ دليل الإعداد يغطي تشغيل Opal و Fabric

كيف يعمل Mixin

يقوم Mixin بتحرير الأصناف بعد تجميعها ولكن قبل تشغيلها بواسطة JVM. ترسل الوحدة النمطية (mod) فئة Mixin تستهدف فئة لعبة حقيقية. تحدد التعليقات التوضيحية على تلك الفئة المواضع التي يجب إدراج التعليمات البرمجية فيها: بداية طريقة، نهايتها، استدعاء طريقة محددة، أو قيمة مُرجعة. عندما يقوم Minecraft بتحميل الفئة المستهدفة، يعيد Mixin كتابة التعليمات البرمجية الثنائية (bytecode) لإدراج تعليمات برمجية الوحدة النمطية (mod).

هذا مهم لأن Minecraft لم يتم تصميمه ليتم توسيعه. اللعبة لا تحتوي على نقاط إضافية رسمية لمعظم السلوكيات. يمنح Mixin الوحدات النمطية (mods) طريقة للدخول من خلال التعامل مع اللعبة المجمعة نفسها كسطح للتوسيع.

لماذا تستخدم الوحدات النمطية (mods) ذلك بدلاً من تحرير اللعبة

لسببين: التوافق والتحديثات.

إن تحرير مصدر اللعبة مباشرة يعني إرسال نسخة معدلة بالكامل، وهو ما لا يستطيع أي شخص آخر البناء عليه والذي ينكسر بمجرد تحديث اللعبة. تصحيحات Mixin صغيرة وجراحية، لذلك يمكن للعديد من الوحدات النمطية (mods) تصحيح نفس اللعبة دون الحاجة إلى إرسال نسخة كاملة.

تصف التصحيحات أيضًا مكان إدراج التعليمات البرمجية بدلاً من شكل الملف، لذلك غالبًا ما يظل Mixin المكتوب مقابل إصدار واحد قابلاً للتطبيق بعد تحديث اللعبة، طالما أن الطريقة المستهدفة لا تزال موجودة.

كيف يتناسب مع Fabric

تعتمد منصة Fabric على Mixin. يقوم المُحمِّل بقراءة ملف تهيئة Mixin الخاص بكل تعديل، ثم يمرر فئات Mixin المدرجة إلى Mixin لتطبيقها أثناء تحميل الفئات. عادةً ما يكون تعديل Fabric عبارة عن فئاته الخاصة بالإضافة إلى عدد قليل من Mixins التي تربط ببعض طرق اللعبة التي يحتاج إلى تغييرها.

نقاط الحقن الشائعة

التعليقما يفعله
@Injectيشغل التعليمات البرمجية الخاصة بك في نقطة محددة داخل طريقة الهدف
@Redirectيستبدل استدعاء طريقة محددة داخل الهدف
@ModifyArgيغير وسيطًا تم تمريره إلى استدعاء داخل الهدف
@ModifyVariableيعيد كتابة متغير محلي في منتصف الطريقة
@Overwriteيستبدل طريقة بأكملها (الحل الأخير؛ ينكسر بسهولة)

يُعد @Inject هو الأداة الافتراضية لأنه الأقل تدخلاً والأكثر عرضة للبقاء على قيد الحياة أثناء تحديث اللعبة. يتم تجنب @Overwrite لأنه يتعارض مع أي تعديل آخر يلمس نفس الطريقة.

الأسئلة الشائعة