اللغة
Anvil · لبُناة اللوحاتقراءة 8 دقيقة

ابنِ لوحة تتابع نفسها

المربع وعدٌ بأن شيئًا ما سيُلاحَظ. وهذا ما يستطيع كل نوع رؤيته فعلًا، وكيف تكتب مئتين منها دون أن تضيّع أمسيتك، والأخطاء القليلة التي تفشل بصمت — فلا يعمل المربع أبدًا، ولا يكتشف أحد ذلك حتى اليوم الرابع.

15 نوعًا نوع واحد لكل مربع، بلا خلط1000 مربع لكل لوحة، عبر جدول بياناتبصمت هكذا يفشل المربع السيئ
لم يراجع هذه الترجمة إلى العربية أحدٌ لغته الأم بعد. إذا بدت جملة خاطئة، فإن الصفحة الإنجليزية هي الأصل — وإخبارنا هو ما يصلحها.
الخطوة 1

مربع واحد، نوع واحد

#

كل مربع هو نوع واحد بالضبط، والنوع هو السؤال كله: فهو يحدد ما تراقبه الإضافة أو مسح الـ hiscores، ومن ثمّ هل يستطيع المربع أن يكتمل وحده أصلًا. وخلط حقول من نوعين يُرفض عند الباب بدل قبوله وتركه معطّلًا.

وتقع الأنواع في ثلاث عائلات، والعائلة أهم من الاسم:

يدويينظر إنسان إلى لقطة شاشة ويقول نعم. متاح دائمًا، ويعمل دائمًا، ويكلّف أحدهم أمسيته دائمًا. استخدمه لما لا تستطيع البرمجيات رؤيته.
من الـ HiscoresXP المهارات وعدد قتلى الـ bosses، تُقرأ من Hiscores الرسمية في مسح كل 15 دقيقة. لا تحتاج إضافة وتعمل لكل من في السجل — لكنها لا ترى إلا ما تحصيه الـ Hiscores، وبعد تسجيل اللاعب الخروج فقط.
من الإضافةكل ما عدا ذلك: الـ drops، وقتل الـ NPC، والإنهاء ضمن وقت، والـ diaries، والـ combat tasks، واللفات، وقيمة الـ loot. تمنح الرصيد خلال ثوانٍ وتدمج لقطة إثبات — لكن للاعبين الذين يشغّلون الإضافة فقط.

القائمة كاملةً، بالترتيب الذي يعرضه منتقي الأنواع:

قياسيمربع يدوي — يعلّمه قائد على أنه منجَز. بلا تتبّع تلقائي.
مهارةيكتمل تلقائيًا حين تبلغ مهارة هدف XP (يُقرأ من الـ hiscores).
عدد قتلى bossيكتمل تلقائيًا حين يبلغ boss هدف عدد القتلى (يُقرأ من الـ hiscores).
DropN من drops عنصر ما (أو أي عنصر من مجموعة) — ترصده الإضافة مع لقطة مدمجة.
مجموعة عناصرعدة عناصر، لكل منها عدده المطلوب — واحد من كل لطقم كامل.
عدد القتلىN من قتلى NPC — حتى ما لا تحصيه الـ hiscores (الدجاج والأبقار). ترصده الإضافة.
لفات AgilityN لفة على مسار agility، أو N طابقًا / جولة كاملة في Hallowed Sepulchre — تُحصى مباشرةً من عدّاد اللعبة. ولا تُحتسب إلا اللفات التي جرت أثناء الفعالية.
قتل PvPاقتل لاعبين — أي أحد، أو فرقًا منافسة، أو هدفًا مسمّى — في الـ Wilderness أو عوالم PvP. والألعاب الآمنة لا تُحتسب أبدًا.
مكسب عناصراصطد أو اطبخ أو اجمع N من عنصر — يُحصى مما يدخل الحقيبة. ترصده الإضافة.
ضمن وقتأنهِ نشاطًا تحت سقف زمني (Inferno، والـ raids، والـ Colosseum). الإضافة تحسب الوقت.
بلا موتأنهِ raid بصفر حالات موت في الفريق، N مرة. تحصي الإضافة كل موتة داخل النسخة.
LMSاحتل مركزًا ضمن أفضل N في Last Man Standing (1 = فوز)، M مرة. ترصده الإضافة عند نهاية اللعبة.
قيمة الـ lootloot بقيمة X من الذهب — حصيلة واحدة أو حصائل تبلغ مجموعها الهدف. الإضافة تسعّر الحصيلة.
Diaryأنجز مستويات achievement diary أثناء الفعالية. ترصدها الإضافة من رسالة الإنجاز.
Combat taskأنجز مهام Combat Achievement أثناء الفعالية. ترصدها الإضافة من رسالة الإنجاز.
سؤال الإضافة، يُطرح مرة واحدة

المربع الذي ترصده الإضافة غير مرئي للاعب لا يشغّلها. وهذا ليس خللًا يمكنك ضبطه — لا شيء يراقب أصلًا. فإن كان جزء من عشيرتك يلعب على الهاتف أو العميل الرسمي، فإما أن تُبعد تلك المربعات عن طريق الفوز، أو تقرنها ببديل يدوي وتتوقع مراجعة لقطات شاشة.

الخطوة 2

اختر النوع الذي سيعمل فعلًا

#

معظم المربعات سيئة السلوك فكرة صحيحة عُبِّر عنها بالنوع الخطأ. وهذه الأربعة هي التي توقع الناس:

هدف عدد قتلى bossليس مربع kill. مربعات الـ kill تراقب موت الـ NPC عبر الإضافة؛ أما هدف عدد القتلى فهو رقم من الـ hiscores ويحتاج trackedStat + statType=boss + statGoal. استخدم مربع kill لما لم تحصه الـ Hiscores قط — الأبقار، والدجاج، ووحش slayer بعينه.
خانة في الـ collection logمربع drop. فتح الخانة يمنح الرصيد، فيعمل المربع حتى على نسخة مكررة يملكها اللاعب سلفًا — وهو غالبًا ما قصدته.
“احصل على واحد من كل”مربع drop بقائمة عناصر وبلا requiredAmount. أضف requiredAmount فيتحول بصمت إلى “احصل على أي N منها” — الصف نفسه، ومربع مختلف تمامًا.
diary أو combat taskلا يمنح الرصيد إلا من رسالة الإنجاز داخل اللعبة، وهي لا تظهر إلا لحظة إتمام المستوى أو المهمة. وما يملكه اللاعب سلفًا لا يمكن أن يُطلقها مجددًا — إلا في الـ combat task، حيث يتيح له Settings → Combat Achievements → Repeat completion إطلاقها من جديد.
مربعات bosses مركّبة

قد تحمل الإحصائية المتتبَّعة لمربع boss عدة مفاتيح hiscores مفصولة بفواصل، وتُجمع المكاسب عبرها. فـ chambersOfXeric,chambersOfXericChallengeMode مربع واحد يحصي CoX و CM معًا — وهو تقريبًا ما يعنيه أي مربع raid.

الخطوة 3

ألّفها بالجملة، لا في المتصفح

#

النقر لإنشاء شبكة من 25 مربعًا مقبول. أما النقر لإنشاء لوحة Leagues من 200 مهمة فلا، ولا مراجعتها بعد ذلك. وتبويبة Tiles فيها رحلة ذهاب وإياب مبنية لهذا تحديدًا.

  1. Download spreadsheet في تبويبة Tiles بالفعالية. تحصل على ملف .xlsx للوحة كما هي، مع قوائم منسدلة وقائمة العناصر وتعليمات الأعمدة كلٌّ في ورقة خاصة.
  2. عدّله. صف واحد لكل مربع؛ وترتيب الصفوف هو ترتيب المربعات.
  3. Upload CSV / Excel في التبويبة نفسها. ولا تُقرأ إلا ورقة Tiles.
الرحلة لا تفقد شيئًانزّل الملف وارفعه دون تغيير فلا يحدث شيء — تُبلَّغ الصفوف المطابقة على أنها دون تغيير ولا تُختم بوقت أصلًا. وهذا يجعل التصدير آمنًا كنسخة احتياطية قبل تعديل كبير.
الصفوف تتبع المواضعالصف 1 هو المربع 1. وتُحدَّث المربعات القائمة في مكانها، والعمود الذي تحذفه يُترك كما هو بدل تفريغه — فيمكنك إرسال ورقة بعمودين تعدّل النقاط وحدها.
اللوحات الديناميكية وحدها تنموالصفوف الزائدة تنشئ مربعات جديدة على لوحة Leagues أو سباق مربعات، قبل بدء الفعالية، حتى 1000. أما الشبكة الكلاسيكية N×N فشكلها ثابت وتتجاهلها. ولتوليد مئات المهام، اجعلها فعالية Leagues.
الكل أو لا شيءتُتحقَّق كل الصفوف أولًا. واسم عنصر واحد لا يمكن حلّه يُفشل الاستيراد كله، ويسمّي المخالفين، ولا يغيّر شيئًا — فلن تحصل أبدًا على نصف لوحة.
بعض الحقول تُقفل عند البدءالاسم والنوع والعدد المطلوب وإعداد العناصر لا تُطبَّق إلا قبل بدء الفعالية. أما الوصف والنقاط والفئة وعلامة “اختياري” فتبقى قابلة للتعديل طوال الوقت، فيمكنك إصلاح خطأ مطبعي أثناء الفعالية دون إعادة فتح اللوحة.
الخطوة 4

الأخطاء التي تفشل بصمت

#

كل واحد من هذه يُستورد بنجاح، ويجلس على اللوحة بمظهر سليم، ولا يعمل أبدًا. ويستحق أن تقرأها قبل الرفع لا بعده.

مربعات المهارات والـ bosses هي type=standardلا وجود لـ type=skill. فالنوع يأتي من trackedStat + statType + statGoal على صف قياسي بخلاف ذلك. وكتابة type=boss تُرفض؛ أما كتابة type=standard ونسيان أعمدة الإحصائية فلا — فتحصل على مربع يدوي لن يوافق عليه أحد أبدًا.
الفواصل تختلف باختلاف العمودitems يستخدم الفاصلة المنقوطة (فالفاصلة هي فاصل CSV). وtargetNpcs يستخدم الشرطة العمودية. وفي صف combat task تكون الشرطة العمودية الخيار الوحيد، لأن أسماء المهام الحقيقية تحوي فواصل — فـ Nylocas, On the Rocks مهمة واحدة.
أسماء الـ raids تُطابق حرفيًامربع deathless أو مربع بوقت يحمل الوضع كما يُكتب في اللعبة: Chambers of Xeric: Challenge Mode، وTheatre of Blood: Hard Mode، وTombs of Amascut: Expert Mode. وأي هجاء قريب هو مربع لن يكتمل أبدًا. وجولات Entry Mode لا تمنح رصيدًا لمربع raid أساسي أبدًا؛ أما الأوضاع الأصعب فتفعل.
أسماء العناصر يجب أن تكون دقيقةالهجاء كما في اللعبة، وإلا فشل الاستيراد وسرد ما تعذّر حلّه. وحين يكون الاسم ملتبسًا، ثبّته كـ Name#id وكفّ عن التخمين.
timeThresholdSeconds يعني أربعة أشياءسقفًا زمنيًا في مربع بوقت، وحدّ مركز في مربع LMS (1 = فوز)، وحجم فريق دقيقًا في مربع deathless، وحجم فريق raid دقيقًا في مربع drop. العمود نفسه، وأربعة معانٍ — فتحقق أنك تملأ المعنى الذي يقرأه نوعك.
عدد مطلوب على النوع الخطأمكانه صفوف drop و kill و gain و lap و PvP و deathless و LMS. وفي صف إحصائية أو صف بوقت لا يفعل شيئًا، وفي صف drop يحوّل مجموعة عناصر إلى مجموعة “أي N”.
جرّب واحدًا قبل أن تكتب مئتين

ألّف مربعًا واحدًا من النوع الذي تشك فيه، واكشفه في فعالية تجريبية، واذهب وافعل الأمر. خمس دقائق هناك أفضل من اكتشاف موت فئة كاملة في ليلة bingo العشيرة.

الخطوة 5

النقاط والدرجات وهل هذا عادل

#

على لوحة بالنقاط يحمل كل مربع قيمته الخاصة، وتُترجَم تلك القيم إلى نطاقات صعوبة مسمّاة — من easy إلى elite — يمكنك تعديلها في Advanced settings إن كانت عشيرتك تصنّف بطريقة أخرى. النطاق هو ما يقرأه اللاعبون؛ والرقم هو ما يحتسب.

وعلّم مربعًا optional فيتوقف عن الاحتساب في مجموع اللوحة، وهكذا تضيف أهدافًا طموحة دون أن تجعل الـ blackout مستحيلًا.

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

الخطوة 6

لا يراها أحد حتى تقول أنت

#

اللوحات الجديدة تبدأ مخفية. الطاقم يراها دائمًا؛ واللاعبون لا يرون شيئًا إطلاقًا حتى تكشفها — فيمكن بناء لوحة في العلن، على مدى أيام، في قناة يقرأها أعضاؤك، دون إفساد أي شيء.

وذلك المفتاح الرئيسي هو الأرضية تحت كل ما عداه. فعلى لوحة ذات سياسة كشف — مجدولة، أو دورية، أو جائزة، أو متناوبة — لا تبدأ الآلية بقلب المربعات إلا بعد كشف اللوحة نفسها، فتسليح اللوحة فعل متعمّد دائمًا. وأي سياسة تختار له صفحته الخاصة: الصيغ، وكيف تُفتح المربعات.

والمهام هي الاستثناء الجدير بالمعرفة: مربعات مؤلَّفة مسبقًا لكنها محجوزة، تُعلَن أثناء الفعالية من مجموعتها الخاصة بينما تبقى بقية اللوحة مرئية.

الخطوة 7

قبل أن تكشف

#

يستحق المرور عليها مرة لكل لوحة. ومعظمها خمس دقائق.

  • كل مربع من النوع الذي قصدته، لا من النوع الذي استُورد بنجاح
  • أوضاع الـ raids وأسماء العناصر وأسماء المهام تطابق هجاء اللعبة حرفًا بحرف
  • المربعات التي ترصدها الإضافة ليست الطريق الوحيد للفوز، إن كان جزء من عشيرتك يلعب بدونها
  • النقاط مضبوطة ومدقّق التوازن راضٍ، أو أنت تخالفه عن قصد
  • المربعات الاختيارية معلّمة على أنها اختيارية
  • نزّلت جدول البيانات مرة كنسخة احتياطية تستطيع رفعها مجددًا
من يستطيع هذا

تأليف اللوحات هو المهمة الإدارية الوحيدة التي لها دور خاص. فالـ editor يستطيع تأليف المربعات ولا شيء غير ذلك، ويمكن حصره بلوحات بعينها — فيحصل بنّاء لوحة زائر من عشيرة أخرى على الفعالية التي سلّمتها له بالضبط، دون أي وصول إلى أي شيء آخر تديره.

صيغة جدول البيانات موصوفة كاملةً في docs/tile-authoring.md، وهي مكتوبة لمن (أو ما) يولّد الصفوف. وهذه الصفحة هي النصف الإنساني: أي نوع تختار، وما الذي يفسد.