الأخطاء — رموز الخطأ وطريقة إصلاحها

كل خطأ في محرك أقلامنا له رمز ثابت (مثل E101) ورسالة عربية. هذا المرجع يشرح كل رمز: ما سببه، وكيف تصلحه.


أخطاء التحليل — الأخطاء التركيبية

هذه الأخطاء تظهر قبل أن تعمل القصة. سببها خطأ في كتابة الرموز.


E101 — مقطع غير موجود

الرسالة: لا يوجد مقطع بهذا الاسم: {name}

السبب: أحلت إلى مقطع (-> اسم) لكن هذا المقطع غير موجود في الملف.

مثال الخطأ:

=== البداية ===

-> القصر

لا يوجد === القصر === في الملف.

الحل: تأكد أن اسم المقطع مكتوب بشكل مطابق. تذكر أن التشكيل يُنزع تلقائيًا.


E102 — اسم مقطع مكرر

الرسالة: اسم المقطع مكرّر: {name}

السبب: عرّفت مقطعين أو أكثر بنفس الاسم.

مثال الخطأ:

=== الغابة ===
الأشجار كثيفة.

=== الغابة ===
نفس الاسم مرة أخرى.

الحل: غيّر اسم أحد المقاطع. كل مقطع يحتاج اسمًا فريدًا.


E103 — ترويسة مقطع غير مغلقة

الرسالة: ترويسة المقطع غير مغلقة؛ أضف === في نهاية السطر.

السبب: بدأت سطرًا بـ === لكن لم تغلقه بـ ===.

مثال الخطأ:

=== البداية

الحل: أضف === في نهاية السطر:

=== البداية ===

E104 — خيار خارج أي مقطع

الرسالة: خيار خارج أيّ مقطع؛ ابدأ مقطعًا بـ === قبل كتابة الخيارات.

السبب: كتبت * أو + قبل أن تفتح مقطعًا بـ ===.

مثال الخطأ:

* [افتح الباب]
  -> الممر

الحل: افتح مقطعًا أولاً:

=== البداية ===

* [افتح الباب]
  -> تابع

E105 — شرط غير مكتمل

الرسالة: شرط غير مكتمل؛ القوس { لم يُغلق.

السبب: فتحت { لكن لم تغلقه بـ }.

مثال الخطأ:

{نقاط > ٥: أحسنت!

الحل: أضف } في نهاية الشرط:

{نقاط > ٥: أحسنت!}

أخطاء التجميع — أخطاء المعنى

هذه الأخطاء تظهر بعد التحليل. سببها مشكلة في المنطق أو المتغيرات.


E201 — تعبير غير مدعوم في الإسناد

الرسالة: تعبير غير مدعوم في الإسناد: {expr}. المدعوم: رقم أو نصّ أو صح/خطأ أو قيمة من قائمة.

السبب: حاولت إسناد قيمة معقدة إلى متغير.

مثال الخطأ:

متغير س = ٠
~ س = ص + ع

الحل: استخدم قيمة بسيطة:

متغير س = ٠
~ س = ٥

E202 — متغير غير معرف

الرسالة: متغير غير معرّف: {name}. أعلنه بـ متغير قبل استخدامه.

السبب: استخدمت متغيرًا لم تعلن عنه بـ متغير.

مثال الخطأ:

=== البداية ===

لديك {نقاط} نقطة.

الحل: أضف تعريف المتغير قبل المقاطع:

متغير نقاط = ٠

=== البداية ===

لديك {نقاط} نقطة.

E203 — نوع غير متطابق

الرسالة: نوع غير متطابق: المتغير {name} نوعه {expected}، والقيمة المسندة {got}.

السبب: حاولت إسناد قيمة من نوع مختلف عن النوع الذي عرّفت به المتغير.

مثال الخطأ:

متغير نقاط = ٠
~ نقاط = "كثير"

الحل: أسند قيمة من نفس النوع:

متغير نقاط = ٠
~ نقاط = ١٠

ملخص سريع

الرمزالمشكلةأين تبحث
E101مقطع غير موجودتأكد من كتابة === الاسم ===
E102اسم مقطع مكررتأكد من فرادة أسماء المقاطع
E103ترويسة غير مغلقةأضف === في نهاية السطر
E104خيار خارج مقطعافتح مقطعًا بـ === أولاً
E105قوس غير مغلقأضف } لإغلاق الشرط
E201تعبير غير مدعوماستخدم قيمة بسيطة
E202متغير غير معرفأعلن بـ متغير أولاً
E203نوع غير متطابقأسند قيمة من نفس النوع