ماذا؟ Minecraft توضيحات حول التسميات والخرائط

تفسير خرائط Minecraft: كيف تحول MCP و Yarn و Mojmap أسماء الأصناف المشفرة إلى تعليمات برمجية قابلة للقراءة حتى تتمكن التعديلات والعملاء من ربط اللعبة.

Mappingsby trqUpdated June 4, 2026
Key takeaways
  • تُعتبر الخرائط جداول أسماء تُترجم التعليمات البرمجية المشفرة في Minecraft إلى أسماء قابلة للقراءة.
  • تقوم Mojang بتشفير أسماء الفئات والحقول والطرق، وتتغير في كل إصدار.
  • الثلاثة الذين ستسمع عنهم هم MCP و Yarn وخرائط Mojang (Mojmap).
  • يتم تطبيق الخريطة في وقت الترجمة، وليس في وقت التشغيل، لذلك لا يتم إرسالها أبدًا إلى اللاعبين.

تُعدّ خرائط Minecraft جداول أسماء تُترجم بها التعليمات البرمجية المشفرة للعبة إلى أسماء قابلة للقراءة. تقوم Mojang بشحن Minecraft بأسماء فئات وحقول مشوشة مثل a.a.a، لذلك يطبق مطورو التعديلات والعملاء مجموعة تعيين مثل MCP أو Yarn أو تعيينات Mojang للحصول على أسماء يمكنهم قراءتها والربط بها بالفعل.

أين Opal يناسب

Opal هو تعديل Fabric، لذا فهو مبني على الخرائط الحديثة من الداخل، ويعرض واجهة برمجة تطبيقات JavaScript GraalVM بسيطة وسهلة الاستخدام. يمكنك كتابة البرامج النصية باستخدام أسماء قابلة للقراءة دون الحاجة إلى التعامل مع الخرائط بنفسك. راجع دليل البرمجة النصية

لماذا توجد الـ "مابات" (Mappings)

تقوم Mojang بتعتيم (Obfuscate) لعبة Minecraft قبل إصدارها. يقوم ملف الـ jar المُرسل بإعادة تسمية الأصناف (Classes)، والطرق (Methods)، والحقول (Fields) بأسماء قصيرة وغير ذات معنى لتقليل حجم الملف وتصعيب قراءة الكود. هذا التخبيط هو السبب في عدم قدرتك على فتح اللعبة والبدء في تعديلها مباشرةً.

الـ "ماب" هو القاموس الذي يعكس هذا التعتيم. فهو يربط كل اسم مُعتّم باسم قابل للقراءة من قبل البشر، بحيث يصبح الحقل المسمى field_70181_x هو motionY. مع تطبيق الـ "ماب"، يرى المطور قاعدة بيانات كود تبدو طبيعية ويمكنه كتابة التعديلات (Mods) عليها.

هناك نقطة واحدة مهمة هنا. تتغير الأسماء المُعتّمّة في كل إصدار من Minecraft، لذا يمكن أن يكون نفس الحقل هو a في إصدار واحد و bk في الإصدار التالي. تمتص الـ "مابات" هذا التغيير، ولهذا فهي العمود الفقري لكل سلسلة أدوات تعديل (Mod Toolchain).

الثلاثة الذين ستسمع عنهم

MCP (Mod Coder Pack) هو الـ "ماب" المجتمعي الذي جعل تعديل الإصدارات الأقدم من 1.14 ممكنًا. لقد استخدم مخططًا من طبقتين: أنتج مشروع Searge أسماءً وسيطة مستقرة ولكنها قبيحة مثل field_70181_x، ولفّت MCP هذه الأسماء بأسماء ودية مثل motionY. معظم العملاء المستقلين القدامى من إصدار 1.8.9 يقومون بتجميع التعليمات البرمجية الخاصة بهم مقابل شجرة مصدر مُعيّنة بواسطة MCP ويعتمدون انعكاسهم على أسماء MCP و Searge.

الغزل هو خريطة المصادر المفتوحة التي تحتفظ بها FabricMC لنظام Fabric. إنه مدفوع بالمجتمع، مرخص بحرية، ويتم تحديثه بسرعة عند إصدار نسخة جديدة من Minecraft، وهو جزء من سبب وصول تعديلات Fabric إلى الإصدارات الجديدة بسرعة.

تُعرف خرائط Mojang، والتي غالبًا ما تُسمى Mojmap، بأنها خرائط الطرف الأول الخاصة بـ Mojang، والتي يتم نشرها مع كل إصدار رسمي منذ 1.14.4. نظرًا لأنها تأتي مباشرة من Mojang، فإن الأسماء تتطابق مع ما يسميه المطورون بالفعل. لقد حلت بشكل فعال محل MCP و Searge كافتراضي لأي عميل يستهدف 1.21 أو إصدارًا أحدث.

كيف تقارن

MCPالغزلخرائط Mojang
تحتفظ بهاالمجتمع (Searge + MCP)FabricMCMojang
الحقبةقبل 1.14 (1.7-1.12)1.14+1.14.4+
المصدرمشتقة من المجتمعمشتقة من المجتمعرسمي
تستخدم معالعملاء القدامى، التعديل القديمFabricFabric، Forge
الحالةتم إيقافها بواسطة خرائط Mojangنشطالافتراضي النشط

كيف تتناسب الخرائط مع سلسلة أدوات التعديل

يتم تطبيق الخريطة في وقت الترجمة، وليس في وقت التشغيل. يأخذ أداة البناء اللعبة المشوشة، ويشغل الخريطة عليها، ويمدك بإصدار قابل للقراءة للكتابة عليه. ثم يتم إعادة تعيين تعديلك النهائي بحيث يتوافق مع الأسماء المشوشة التي تستخدمها لعبة اللاعب بالفعل.

تتعامل أدوات التحميل المختلفة مع هذا الأمر بطرق مختلفة. يقوم Fabric بالبناء إما على Yarn أو قاعدة بيانات Mojang، وذلك حسب طبيعة المشروع. تاريخيًا، قامت Forge بتقسيم المهمة، باستخدام خريطة بيانات (mapping) واحدة للمصدر الذي تقرأه، وأخرى لتشغيل البرنامج. إنّ التراخيص الخاصة بخريطة بيانات Mojang تسمح باستخدامها في وقت البناء، وهذا هو السبب في أن سلاسل الأدوات الحديثة تعتمد عليها.

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