
TAB — Minecraft Java Edition 1.7.10 – 1.21.11+
الاعتماديات: · المُحمِّل: Bukkit, Spigot, Paper, Folia, Purpur, BungeeCord, Velocity, Fabric, Forge, NeoForge · إصدار Minecraft: 1.7.10…
الاعتماديات: · المُحمِّل: Bukkit, Spigot, Paper, Folia, Purpur, BungeeCord, Velocity, Fabric, Forge, NeoForge · إصدار Minecraft: 1.7.10 - 1.21.11+ · إصدار الإضافة: 6.0.2 تعرض قائمة اللاعبين الافتراضية (قائمة TAB ) في Mi
الاعتماديات:
· المُحمِّل: Bukkit, Spigot, Paper, Folia, Purpur, BungeeCord, Velocity, Fabric, Forge, NeoForge
· إصدار Minecraft: 1.7.10 - 1.21.11+
· إصدار الإضافة: 6.0.2
تعرض قائمة اللاعبين الافتراضية (قائمة TAB) في Minecraft رؤوس وألقاب المستخدمين فقط بترتيب أبجدي بسيط. لا يدعم العميل الأصلي تخصيص رأس القائمة أو تذييلها، أو إنشاء لوحات جانبية ديناميكية (Scoreboard) أو أشرطة تقدم (BossBar) دون استخدام سلاسل معقدة من كتل الأوامر التي تُثقل تكّة اللعبة. علاوة على ذلك، لا تسمح الأدوات القياسية بترتيب اللاعبين حسب الرتب داخل اللعبة أو صلاحيات الوصول، مما يُعقّد الإدارة. تحل إضافة TAB هذه المهام عبر توفير أداة غير متزامنة لإعادة بناء واجهة عرض المعلومات بالكامل. وبفضل البنية المعيارية، يتم إيقاف أي وظيفة غير نشطة بالكامل في الكود ولا تستهلك موارد المعالجة الخاصة بالخادم.
الترتيب حسب الأولوية للاعبين في قائمة TAB
إحدى الوظائف الأساسية للإضافة هي إمكانية توزيع اللاعبين في القائمة وفق تسلسل هرمي معين. تتحكم TAB في الترتيب باستخدام scoreboard teams (فِرَق لوحة النتائج). تُنشئ الإضافة فِرَقًا مخفية تلقائيًا في اللعبة وتضيف إليها اللاعبين لإجبار عميل Minecraft على عرضهم بالترتيب المطلوب.
لتحديد الأولوية، يُستخدم المُعامل sorting-types في الإعدادات. تُقيّم الإضافة الشروط من الأعلى إلى الأسفل: إذا كان لاعبان لهما الأولوية نفسها وفق المعيار الأول، تنتقل الأولوية إلى المعيار التالي.
يفرض Minecraft قيدًا صارمًا على طول اسم فريق scoreboard — إذ لا يمكن أن يتجاوز 16 حرفًا. لهذا السبب تضغط TAB القيم النصية للمجموعات والصلاحيات داخل اللعبة إلى فهارس حرفية قصيرة (على سبيل المثال، تتحول المجموعة owner إلى الحرف a، و admin إلى b وهكذا)، وتُختصر المؤشرات الرقمية إلى رموز من ثلاثة أرقام. هذا يسمح بالبقاء ضمن حد حِزَم العميل
أنواع الترتيب المدعومة
نوع الترتيب | الوصف | مثال على الإعداد |
| يرتّب اللاعبين وفق قائمة رتب LuckPerms أو أي مدير صلاحيات آخر. |
|
| الترتيب بناءً على امتلاك الصلاحيات. الأولوية للصلاحية المذكورة أولًا. |
|
| ترتيب أبجدي وفق المخرجات النصية للمتغير النائب (placeholder). |
|
| ترتيب أبجدي عكسي وفق المخرجات النصية للمتغير النائب (placeholder). |
|
| ترتيب رقمي من الأصغر إلى الأكبر (يتطلب متغيرًا نائبًا رقميًا). |
|
| ترتيب رقمي من الأكبر إلى الأصغر (على سبيل المثال، رصيد عملة اللعبة). |
|
| تجميع مخصص وفق قيم نصية محددة للمتغير النائب (placeholder). |
|
إعداد ملفات تكوين الإضافة
بعد التشغيل الأول، يتم إنشاء بنية ملفات التكوين داخل المجلد plugins/TAB/:
· config.yml — الملف الرئيسي (انظر لقطة الشاشة). يتحكم في تفعيل الوحدات المنفصلة (على سبيل المثال، scoreboard-teams للبادئات والترتيب فوق الرأس، و tablist-name-formatting للألوان في القائمة، و header-footer للنصوص). كما تُضبط هنا اللوحات الجانبية وأشرطة البوس العامة.
· animations.yml — مُخصص لوصف التأثيرات النصية الدورية. تُعرّف الرسوم المتحركة بفاصل زمني لتحديث الإطارات بالمللي ثانية وقائمة من السلاسل النصية. يمكن عرض الرسم المتحرك المُنشأ في أي ملف تكوين آخر عبر المتغير النائب %animation:الاسم%.
· groups.yml — يخزّن صيغ عرض البادئات واللواحق لمجموعات LuckPerms أو الألقاب الشخصية.
· advanced-config.yml — يحتوي على إعدادات فترات تحديث متغيرات PlaceholderAPI (لمنع الطلبات المفرطة إلى قاعدة البيانات)، ومُعاملات التوافق مع RedisBungee، وأعلام التصحيح.
مثال على إنشاء رسم متحرك في الملف animations.yml:
server-name: |
أوامر الإدارة وصلاحيات الوصول
تُنفَّذ جميع عمليات الإدارة عبر طرفية الخادم أو مباشرةً داخل اللعبة من قِبل اللاعبين الذين يمتلكون الصلاحيات المناسبة:
· /tab reload — يعيد تحميل جميع ملفات التكوين من القرص دون إعادة تشغيل الخادم.
· /tab dump — يُنشئ تقريرًا عن حالة التكوين وإصدار المنصة والمتغيرات النائبة المثبتة والأخطاء النشطة، مع تقديم رابط للوحة الويب لأغراض التشخيص. حل هذا الأمر محل الأداة القديمة /tab debug.
· /tab cpu — يعرض إحصائيات مفصلة عن الحمل على المعالج. يُظهر النسبة المئوية لزمن معالجة الحِزَم لكل وحدة من وحدات الإضافة، مما يساعد على تحديد مصادر التأخر.
· /tab parse <اللاعب> <المتغير النائب> — يُجري فحصًا لمخرجات متغير PlaceholderAPI معين للمستخدم المحدد، مما يتيح التأكد من صحة إعداد عمليات الدمج.
· /tab scoreboard [on/off] — يُفعّل أو يُعطّل قسرًا عرض اللوحة الجانبية للإحصائيات للاعب.
· /btab — نسخة الأمر لخوادم البروكسي Velocity أو BungeeCord (تُستخدم للتحكم العام في القوائم بين جميع الخوادم المتصلة بالشبكة).
الخصائص المعمارية والتحسين في الإصدار 6.0.2
الإضافة موجهة نحو الأداء العالي تحت الأحمال الكبيرة. في الإصدار 6.0.2، تم تطبيق تحسينات مهمة:
· تصفية حِزَم الفِرَق (Scoreboard Teams): في السابق كانت تحديثات الفِرَق تُرسَل إلى جميع اللاعبين المتصلين دون استثناء، مما يخلق علاقة تربيعية بين حجم البيانات وعدد المستخدمين. الآن تُرسَل التحديثات حصريًا إلى اللاعبين الذين يرون اللاعب المستهدف مباشرةً في قائمة الـ TAB الخاصة بهم. على الخوادم الكبيرة، يقلل هذا الحمل على مسار معالجة الأسماء بنسبة 80%.
· الفصل بين نسختي Vanilla و Modded: بسبب انتقال Fabric و NeoForge إلى Java 25، نشأت مشكلة توافق. يدعم Remapper الإضافات في Paper للإصدارات 1.20.5 - 1.21.4 الكود حتى Java 23 فقط. لحل هذا التعارض، تُقدَّم الإضافة في نسختين:
· TAB v6.0.2 - Fabric, NeoForge.jar (إصدار كامل للمودات والخوادم الحديثة على Java 25).
· TAB v6.0.2 - Vanilla.jar (إصدار خاص بدون اعتماديات المودات، متوافق مع Paper 1.20.5 - 1.21.4).
· التوافق مع Folia: تدعم TAB بالكامل البنية الإقليمية متعددة المسارات الخاصة بـ Folia، مستخدمةً مُجدوِلات غير متزامنة لجمع المعلومات وتحديث المتغيرات النائبة %tps% و %mspt% دون الإخلال بمزامنة المناطق.
الخلاصة
TAB (tab-was-taken) هو المعيار الصناعي لتصميم واجهة خوادم Minecraft. فهو يحل محل عدة إضافات منفصلة للوحات الجانبية وأشرطة البوس والبادئات، موحّدًا إياها في خدمة واحدة محسّنة وغير متزامنة. القيد الرئيسي هو التعارضات مع إضافات أخرى تحاول إنشاء scoreboard teams خاصة بها (على سبيل المثال، بعض الإضافات الخاصة بالألقاب المخصصة فوق الرأس أو إضافات الدردشة)، مما قد يُعطّل الترتيب. كذلك يوجد في إصدار Minecraft 26.1 خلل من Mojang يجعل نص belowname مرئيًا على جميع الكيانات (حوامل الطاقة، الوحوش)، مما يجعل هذه الوظيفة بالتحديد إشكالية في الاستخدام. يُوصى باستخدام TAB لجميع أنواع الخوادم — من المشاريع المحلية الـ Vanilla إلى شبكات BungeeCord/Velocity الكبيرة.
التثبيت
التثبيت النموذجي يستغرق حوالي 5 دقائق. الخطوات نفسها؛ يختلف فقط المُحمّل والبناء المطابق.
- 1Stop your Minecraft server.
- 2Drop the plugin .jar into the server /plugins folder.
- 3Start the server once so the plugin generates its config files.
- 4Edit /plugins/<name>/config.yml as needed, then run /reload confirm or restart.








