المستويات والخبرة
كل رسالة تُكتب في قناة تكسب بين 15 و25 نقطة خبرة، تُسحب
عشوائيًا. ولا يُحتسب سوى مكسب واحد في الدقيقة ولكل عضو: فكتابة عشر رسائل
متتالية لا تكسب أكثر من رسالة واحدة. أما البوتات والرسائل الخاصة ورسائل النظام (الانضمام،
التثبيت) فلا تكسب شيئًا.
والانتقال من المستوى L إلى الذي يليه يكلّف 5 × L² + 50 × L + 100 نقطة خبرة.
فالكلفة ترتفع إذن عند كل مرتبة، ولا يُخزَّن سوى إجمالي الخبرة: أما المستوى فيُشتقّ منه.
ويفترض العمود الأخير محادثة عادية، عند متوسط المكسب. فهو يعطي رتبة المقدار.
أما الزمن الحقيقي فيتوقف على تباعد الرسائل، ما دام العدّاد لا يحفظ سوى
مكسب واحد في الدقيقة.
وعند كل ارتقاء في المستوى، يجيب البوت في القناة التي كُتبت فيها الرسالة.
ويُضبط الإعلان من لوحة التحكم: بطاقة أو نص عادي، وعنوان، ووصف، ولون، إضافة
إلى المتغيّرين {level} و{xp} فوق المعتادة. وقناة لا يستطيع البوت الكتابة
فيها لا تعطّل شيئًا: فالمستوى مكتسب، ولا يسقط سوى الإعلان.
والوحدة مفعّلة افتراضيًا. وتعطيلها يوقف المكاسب والإعلانات دون
محو أي شيء: فلوحة الترتيب تبقى في قاعدة البيانات وتعود سليمة عند إعادة التفعيل.
ولتصحيح حالة بعينها، يضيف /xp نقاط خبرة عضو أو يخصمها أو يضبطها؛
ويعرض /rank و
/leaderboard النتيجة.
العقوبات والسجل والملاحظات
كل عقوبة يصدرها البوت تُسجَّل: حظر، وحظر مؤقت، وطرد، وإسكات مؤقت، وتحذير، وحتى
عمليات الرفع (رفع الحظر، إلغاء التحذير). ويحصل كل منها على رمزه ذي الاثني عشر حرفًا.
وترتيب العمليات ليس عرضيًا. فالرسالة الخاصة تخرج قبل العقوبة.
إذ بعد الحظر، لا يعود البوت يشترك مع الشخص في خادم ولا يستطيع مراسلته.
أما التسجيل فيسبق النداء إلى ديسكورد كي يوجد الرمز؛ فإن رفض ديسكورد
الإجراء، تراجع التسجيل، ولم تبقَ في الملف عقوبة وهمية.
والحظر المؤقت يجدول رفعه بنفسه. وعند حلول الأجل، يتحقّق البوت من أن الحظر لم
يُعد تطبيقه في الأثناء من مشرف: فإن كان قد أُعيد، لم يرفعه. كما أن
/ban دائمًا صدر خلال المدة يلغي الرفع المجدول.
والملاحظات (/note، 25 لكل عقوبة) لا تُعرض أبدًا على
العضو المعني: فهي تخدم الحوار بين المشرفين، بعد أشهر، حين لا يتذكّر
أحد السياق.
الحماية عند الباب
ثلاث آليات مستقلة، تتراكم أو تُستخدم منفردة:
-
اختبار التحقّق: عند القدوم، على العضو حل تحدٍّ للحصول على دوره.
وافتراضيًا: 3 محاولات، و5 دقائق، والطرد عند الفشل. ويمر الطلب
عبر رسالة خاصة؛ فإن كان العضو قد أغلق رسائله، أنشأ له البوت قناة تحقّق
مؤقتة في الفئة التي عيّنتها، لا يراها سواه، وتُحذف بعد ذلك.
-
التحقّق عبر الموقع: يضغط العضو زرًا، ويُنهي الأمر على
الموقع، ويجد دوره عند عودته. ولا يمنح البوت شيئًا بنفسه هنا: بل الموقع
هو من يتحقّق من الهوية لدى ديسكورد، ثم يُسند الدور.
-
الحماية من الهجمات: وهي لا تستهدف الفرد بل التدفّق. فبتجاوز
8 انضمام في 10 ثانية (القيم الافتراضية)، تنبّه أو تحجر أو
تطرد. ومرشّح عمر الحساب يُمرّر الأعضاء المعتادين ممن علقوا في الموجة.
ودور الحجر هو القاسم المشترك بين الثلاثة: يُطبَّق عند القدوم، فيحدّ
مما يراه القادم الجديد وما يفعله، ويُزال بمجرد اجتياز التحقّق. وما دام
قائمًا، تبقى أنت المتحكم، ولا شيء يمنعك من تجاوز ذلك يدويًا لمن تشاء.
التذاكر
لوحة تُنشر في قناة، و25 نوعًا من الطلبات كحد أقصى (وهو حد القائمة المنسدلة
في ديسكورد)، ولكل نوع: رمزه التعبيري، ولونه، ورسالة ترحيبه، واستمارة فتحه، والفريق
الذي يصل إليه. والفتح يُنشئ قناة خاصة بين صاحب الطلب وذلك الفريق. وعند
الإغلاق، تُؤرشف المحادثة بصيغة HTML في قناة الأرشيف، ويبقى التبادل مقروءًا
بعد زوال القناة.
الموسيقى وأدوار المنسّقين
يستند التشغيل إلى بنية تحتية صوتية مخصّصة. فإن كانت غير متاحة، قالت أوامر
الموسيقى ذلك وظلّ كل ما عداها في البوت يعمل.
أما الأوامر التي تتحكم في التشغيل الجاري (/pause، و/resume،
و/stop، و/loop، و/volume) فهي لمنسّقي الموسيقى وحدهم. والمنسّق هو: مالك
الخادم، أو مسؤول، أو عضو يحمل «إدارة الخادم»، أو عضو يحمل دورًا أُضيف بـ
/dj add. وما دام لا يوجد دور منسّق مضبوط، فإن هذه الأوامر
لا تجيب إذن سوى هذه الصفات الثلاث. والأدوار الإدارية قائمة منفصلة:
فهي لا تمنح صفة المنسّق.
أما أوامر الاطلاع (/queue، و/nowplaying، و/lyrics) وإضافة
المقاطع (/play) فتبقى مفتوحة للجميع.
المسابقات
المدة المقبولة: من 10 ثانية إلى 28 يومًا، تُكتب بحرية
(30m، و1h30m، و2d). وحتى 20 مسابقة جارية
و20 فائزًا في السحب الواحد.
والسحب يجريه البوت دائمًا، لا الموقع أبدًا: فهو وحده القادر على التحقّق، لحظة السحب،
من أن الفائزين ما زالوا على الخادم ويحملون الدور المطلوب عند المشاركة. وإن لم يتقدّم
أحد، أعاد /giveaway reroll السحب.
السجلات
21 نوعًا من الأحداث، موزّعة على 5 فئات (الرسائل, الأعضاء, الإشراف, الصوت, الخادم)، يُفعَّل كل منها
على حدة. ويمكن لكل فئة أن تشير إلى قناتها الخاصة: الإشراف في جهة،
والرسائل في أخرى.
ومحتوى الرسائل لا يُخزَّن في قاعدة البيانات أبدًا. فحين تُحذف رسالة، ينشر
البوت بطاقة في القناة التي عيّنتها، وهذا كل ما يحدث. أما الإجراء الذي يتخذه
البوت نفسه (حظر عبر /ban) فيُسجَّل مرة واحدة فقط، في سجل الإشراف الذي يذكر
المشرف.
النسخ الاحتياطية
تلتقط النسخة الاحتياطية صورة بنية الخادم (الأدوار والقنوات والصلاحيات)
وتعيد رمزًا خاصًا، يُرسل برسالة خاصة. وتُحفظ 3 نسخ لكل مالك. وهي
لا تتضمّن أي رسالة: فليست سجل محادثات. والرمز يستعيد تلك
البنية في الخادم الحالي، فيمكنه بذلك استنساخ خادم باستيراده في مكان آخر.
القنوات الصوتية المؤقتة
الانضمام إلى القناة المُطلِقة يُنشئ قناة يملكها العضو: فيستطيع إعادة تسميتها، وتقييد الوصول
إليها، أو تحديد سعتها. وتختفي القناة بمجرد خلوّها، دون أي تنظيف يُذكر.