
Paginated Advancements & Custom Frames — Minecraft Java Edition 1.18.1 - 26.1+
الاعتماديات · المُحمِّل: Fabric, NeoForge, Quilt · إصدار Minecraft: 1.18.1 - 26.1+ · إصدار المود: 2.8.2 · الاعتماديات الإلزامية: Fabric…
الاعتماديات · المُحمِّل: Fabric, NeoForge, Quilt · إصدار Minecraft: 1.18.1 - 26.1+ · إصدار المود: 2.8.2 · الاعتماديات الإلزامية: Fabric API, Cloth Config API (لإصدارات Fabric/Quilt وNeoForge السابقة للإصدار 2.8.0) تَحُد
الاعتماديات
· المُحمِّل: Fabric, NeoForge, Quilt
· إصدار Minecraft: 1.18.1 - 26.1+
· إصدار المود: 2.8.2
· الاعتماديات الإلزامية: Fabric API, Cloth Config API (لإصدارات Fabric/Quilt وNeoForge السابقة للإصدار 2.8.0)
تَحُدّ واجهة الإنجازات الأصلية (vanilla) من عرض علامات التبويب. تتميز النافذة القياسية بعرض وارتفاع ثابتين، محسوبين لستّ علامات تبويب فقط. إذا قمت بتثبيت حزمة كبيرة من التعديلات، حيث يضيف كل مود كبير فرع تقدّمه الخاص، تبدأ علامات التبويب الجديدة بالخروج عن حدود الشاشة، أو التداخل مع بعضها، أو الاختفاء تمامًا من الواجهة. يوسّع تعديل Paginated Advancements & Custom Frames النافذة القياسية لقائمة الإنجازات، مضيفًا تنقّلًا بنظام الصفحات، ونظامًا لتثبيت الفروع ذات الأولوية، وأداة تنقيح مدمجة، ودعمًا لإطارات جديدة كليًا للأيقونات بمساعدة حزم الموارد أو حزم البيانات.
مبدأ العمل التقني وحلّ قيود الواجهة الأصلية
يستخدم الصنف الأصلي AdvancementsScreen إحداثيات مُضمَّنة بشكل ثابت لعرض نافذة الإنجازات (الحجم هو 252 في 140 بكسل). ترتبط عناصر التحكم، مثل شبكة علامات التبويب وعرض الخلفية، بأبعاد نافذة ثابتة، مما يجعل القياس لدقة الشاشة العالية مستحيلًا. يمتلك الصنف AdvancementTab أيضًا حدودًا صارمة لرسم أيقونات علامات التبويب على محيط الإطار الرئيسي.
يُدخِل Paginated Advancements & Custom Frames تغييرات مباشرةً في منطق عرض الواجهة الرسومية للعميل بمساعدة حقن Mixin في الصنفين MixinAdvancementsScreen وMixinAdvancementTab. بدلًا من استخدام ثوابت مُضمَّنة بشكل ثابت، يعترض التعديل تهيئة الواجهة ويقرأ الأبعاد الحالية لنافذة اللعبة. وبناءً على هذه البيانات، يُحسَب الحجم الأمثل لإطار الإنجازات، الذي يتوسّع بشكل تكيّفي ليشغل الجزء الأكبر من الشاشة.
يجمّع النظام تلقائيًا جميع علامات التبويب المسجّلة في صفحات منفصلة (ترقيم الصفحات). تحسب الخوارزمية الحد الأقصى لعدد علامات التبويب التي يمكن أن تتّسع ضمن حدود اللوحتين العلوية والسفلية للنافذة وفق صيغة تأخذ في الاعتبار عرض النافذة والهوامش المحددة. إذا تجاوز عدد فروع الإنجازات حدّ الصفحة، يُنشئ التعديل صفحات افتراضية إضافية ويضيف أزرار أسهم تفاعلية في الجزء السفلي من الواجهة. عند التبديل بين الصفحات، يُخفي العارض علامات التبويب من الصفحات غير النشطة، مما يمنع إثقال الذاكرة العشوائية بالكائنات الرسومية ويزيل تعارضات تداخل العناصر.
الإمكانات والوظائف الرئيسية
الوظيفة الأساسية لـ Paginated Advancements & Custom Frames هي إعادة تنظيم قائمة الإنجازات الرسومية. يقدّم التعديل عدة أدوات عملية للتنقّل:
· ترقيم الصفحات الديناميكي: يضيف أسهم تبديل الصفحات في الزاوية السفلية لنافذة الإنجازات. يمكن للّاعبين تصفّح أي عدد من علامات التبويب، حتى لو كان مُفعّلًا في الحزمة أكثر من خمسين تعديلًا بسلاسل مهامها الخاصة.
· تثبيت علامات التبويب: يمكن للمستخدم إضافة أي علامة تبويب إلى قائمة المفضّلة. ولهذا الغرض خُصِّص زر خاص على شكل نجمة في كل علامة تبويب. تنتقل علامة التبويب المثبَّتة تلقائيًا إلى الصفحة الأولى وتُعرَض في بداية القائمة، بصرف النظر عن ترتيب فرزها الأبجدي أو الداخلي في اللعبة.
· حفظ حالة الجلسة: يتذكّر المود آخر علامة تبويب إنجازات مفتوحة. في حال إغلاق القائمة وإعادة فتحها عبر المفتاح L، ستُظهِر الواجهة علامة التبويب نفسها التي توقّف عندها اللاعب، بدلًا من إعادة التعيين إلى علامة التبويب القياسية الأولى.
· مُنقِّح الإنجازات (Advancement Debugger): وضع خاص لمطوّري الحزم ومؤلّفي المهام. يُفعَّل في الإعدادات أو عند تشغيل التلميحات الموسَّعة (المفاتيح F3 + H). عند تمرير المؤشر فوق أيقونة إنجاز، تُعرَض نافذة تلميح إضافية تحتوي على معلومات تقنية: المعرّف الداخلي (على سبيل المثال، minecraft:adventure/arbalistic) وقائمة المُشغِّلات (الشروط) اللازمة للإكمال. يقوم تركيب المفاتيح Ctrl + C بنسخ معرّف الإنجاز المحدَّد إلى الحافظة.
الإعداد والتوافق والنظام البيئي
يمكن للمستخدم تغيير معاملات عرض قائمة الإنجازات عبر ملف الإعداد. يعتمد موقع الملف وتنسيقه على مُحمِّل التعديلات:
· Fabric وQuilt: لكي تعمل الإعدادات، يلزم تثبيت مكتبة Cloth Config API. تُكتَب المعاملات في الملف paginatedadvancements.json (أو paginatedadvancements.json5) في المجلد config.
· NeoForge: تستخدم إصدارات المود ابتداءً من 2.8.0 نظام الإعداد المدمج في NeoForge، مما يلغي الحاجة إلى مكتبات إضافية. يُنشَأ الملف باسم paginatedadvancements-client.toml في المجلد config.
تتوفر في ملف الإعداد المعاملات الرئيسية التالية:
· showDebugTooltips – قيمة منطقية (true أو false) تتحكم في عرض المعلومات التقنية لتنقيح الإنجازات.
· maxDebugLines – عدد صحيح يحدّ من العدد الأقصى لأسطر المُشغِّلات في نافذة التلميحات، مما يمنع خروج النص عن حدود الشاشة عند وجود عدد كبير من المتطلبات.
· disableBackgroundFade – معامل لتعطيل تعتيم خلفية اللعبة أثناء عرض قائمة الإنجازات.
· spacing – الخطوة بالبكسل لضبط المسافة بين علامات التبويب المتجاورة على اللوحة.
· enablePinning – يسمح للّاعبين بتثبيت علامات التبويب المختارة أو يمنعهم من ذلك.
يدعم التعديل نظامًا لتخصيص الأيقونات عبر آلية Custom Frames (الإطارات المخصّصة). يقدّم Minecraft افتراضيًا ثلاثة أنواع من الإطارات: task (مهمة عادية)، وgoal (هدف)، وchallenge (تحدٍّ). يتيح المود إنشاء أنواع جديدة بمساعدة حزم البيانات.
لإضافة إطار جديد، يلزم إنشاء ملف JSON في حزمة البيانات على المسار التالي:
assets/<معرّف_المود>/advancement_frame_types/<اسم_الإطار>.json
مثال على محتوى الملف:
{ |
تُوضَع رسوم الإطار على المسارات التالية:
· assets/<معرّف_المود>/textures/gui/sprites/advancements/<اسم_الإطار>_unobtained.png – شكل الإطار قبل إكمال الإنجاز.
· assets/<معرّف_المود>/textures/gui/sprites/advancements/<اسم_الإطار>_obtained.png – شكل الإطار بعد الإكمال.
لربط الإطار المُنشَأ بإنجاز محدّد، يُستخدَم ملف ربط في حزمة البيانات على المسار assets/<معرّف_المود>/advancement_frames/<اسم_الملف>.json:
[ |
طُوِّر المود كأداة تعمل على جانب العميل بحتًا، لذا لا يتطلب التثبيت على الخادم. وهو متوافق تمامًا مع المودات الصناعية والسحرية الكبيرة (مثل Create وEnder IO وBotania) التي تضيف أنظمة مهام معقّدة وعلامات تبويب إنجازات عديدة. ولمستخدمي المُحمِّل القديم Forge، يتوفر تكييف غير رسمي للمود باسم ForgedPaginatedAdvancements. ولتشغيل أحدث إصدارات المود على منصة NeoForge 26.1+، يُعدّ استخدام بيئة التشغيل Java 25 إلزاميًا.
الخلاصة
يحلّ Paginated Advancements & Custom Frames بفعالية مشكلة المساحة المحدودة لواجهة الإنجازات الأصلية، التي تصبح حرجة في حزم التعديلات الكبيرة. وخلافًا للنظير Better Advancements، الذي يقيس النافذة في الغالب دون إضافة صفحات، يقدّم هذا المود تقسيمًا واضحًا إلى صفحات وتثبيتًا مريحًا لعلامات التبويب. يُبسِّط التعديل عمل مطوّري الحزم المعدّلة بفضل المُنقِّح المدمج والنظام المرن لتسجيل أنواع إطارات جديدة عبر بُنى JSON لحزم البيانات. والقيد الملحوظ الوحيد هو الحاجة إلى إنشاء حزم موارد إضافية للعميل لعرض الإطارات الرسومية المخصّصة بشكل صحيح.
التثبيت
التثبيت النموذجي يستغرق حوالي 5 دقائق. الخطوات نفسها؛ يختلف فقط المُحمّل والبناء المطابق.
- 1Install a mod loader (Forge, Fabric or NeoForge) that matches your Minecraft version.
- 2Download the mod file (.jar) built for that same version.
- 3Place the .jar into your .minecraft/mods folder.
- 4Launch Minecraft with the modded profile and check the mod loads in-game.











