الأخطاء — رموز الخطأ وطريقة إصلاحها
كل خطأ في محرك أقلامنا له رمز ثابت (مثل E101) ورسالة عربية. هذا المرجع يشرح كل رمز: ما سببه، وكيف تصلحه.
أخطاء التحليل — الأخطاء التركيبية
هذه الأخطاء تظهر قبل أن تعمل القصة. سببها خطأ في كتابة الرموز.
E101 — مقطع غير موجود
الرسالة: لا يوجد مقطع بهذا الاسم: {name}
السبب: أحلت إلى مقطع (-> اسم) لكن هذا المقطع غير موجود في الملف.
مثال الخطأ:
=== البداية ===
-> القصر
لا يوجد === القصر === في الملف.
الحل: تأكد أن اسم المقطع مكتوب بشكل مطابق. تذكر أن التشكيل يُنزع تلقائيًا.
E102 — اسم مقطع مكرر
الرسالة: اسم المقطع مكرّر: {name}
السبب: عرّفت مقطعين أو أكثر بنفس الاسم.
مثال الخطأ:
=== الغابة ===
الأشجار كثيفة.
=== الغابة ===
نفس الاسم مرة أخرى.
الحل: غيّر اسم أحد المقاطع. كل مقطع يحتاج اسمًا فريدًا.
E103 — ترويسة مقطع غير مغلقة
الرسالة: ترويسة المقطع غير مغلقة؛ أضف === في نهاية السطر.
السبب: بدأت سطرًا بـ === لكن لم تغلقه بـ ===.
مثال الخطأ:
=== البداية
الحل: أضف === في نهاية السطر:
=== البداية ===
E104 — خيار خارج أي مقطع
الرسالة: خيار خارج أيّ مقطع؛ ابدأ مقطعًا بـ === قبل كتابة الخيارات.
السبب: كتبت * أو + قبل أن تفتح مقطعًا بـ ===.
مثال الخطأ:
* [افتح الباب]
-> الممر
الحل: افتح مقطعًا أولاً:
=== البداية ===
* [افتح الباب]
-> تابع
E105 — شرط غير مكتمل
الرسالة: شرط غير مكتمل؛ القوس { لم يُغلق.
السبب: فتحت { لكن لم تغلقه بـ }.
مثال الخطأ:
{نقاط > ٥: أحسنت!
الحل: أضف } في نهاية الشرط:
{نقاط > ٥: أحسنت!}
أخطاء التجميع — أخطاء المعنى
هذه الأخطاء تظهر بعد التحليل. سببها مشكلة في المنطق أو المتغيرات.
E201 — تعبير غير مدعوم في الإسناد
الرسالة: تعبير غير مدعوم في الإسناد: {expr}. المدعوم: رقم أو نصّ أو صح/خطأ أو قيمة من قائمة.
السبب: حاولت إسناد قيمة معقدة إلى متغير.
مثال الخطأ:
متغير س = ٠
~ س = ص + ع
الحل: استخدم قيمة بسيطة:
متغير س = ٠
~ س = ٥
E202 — متغير غير معرف
الرسالة: متغير غير معرّف: {name}. أعلنه بـ متغير قبل استخدامه.
السبب: استخدمت متغيرًا لم تعلن عنه بـ متغير.
مثال الخطأ:
=== البداية ===
لديك {نقاط} نقطة.
الحل: أضف تعريف المتغير قبل المقاطع:
متغير نقاط = ٠
=== البداية ===
لديك {نقاط} نقطة.
E203 — نوع غير متطابق
الرسالة: نوع غير متطابق: المتغير {name} نوعه {expected}، والقيمة المسندة {got}.
السبب: حاولت إسناد قيمة من نوع مختلف عن النوع الذي عرّفت به المتغير.
مثال الخطأ:
متغير نقاط = ٠
~ نقاط = "كثير"
الحل: أسند قيمة من نفس النوع:
متغير نقاط = ٠
~ نقاط = ١٠
ملخص سريع
| الرمز | المشكلة | أين تبحث |
|---|---|---|
| E101 | مقطع غير موجود | تأكد من كتابة === الاسم === |
| E102 | اسم مقطع مكرر | تأكد من فرادة أسماء المقاطع |
| E103 | ترويسة غير مغلقة | أضف === في نهاية السطر |
| E104 | خيار خارج مقطع | افتح مقطعًا بـ === أولاً |
| E105 | قوس غير مغلق | أضف } لإغلاق الشرط |
| E201 | تعبير غير مدعوم | استخدم قيمة بسيطة |
| E202 | متغير غير معرف | أعلن بـ متغير أولاً |
| E203 | نوع غير متطابق | أسند قيمة من نفس النوع |