البداية — دليلك الأول لكتابة قصة تفاعلية
هذا الدليل يبني معك قصة من الصفر، خطوة بخطوة. كل رمز جديد نشرحه عند الحاجة إليه فقط. لا تحتاج إلى معرفة مسبقة بالبرمجة.
بنهاية هذا الدليل ستكون قد كتبت قصتك الأولى المكونة من ثلاثة مشاهد، فيها خيارات ومتغيرات وشرط.
الخطوة ١: أول مقطع
افتح المحرر وامسح كل شيء. اكتب هذا السطر:
=== البداية ===
العلامة === تعني "بداية مقطع جديد". المقطع مثل صفحة في كتاب — هو ما يراه القارئ على الشاشة دفعة واحدة. اسم المقطع هنا هو البداية. يمكنك تسميته أي شيء بالعربية.
الآن أضف نصًا تحت العنوان:
=== البداية ===
تستيقظ في غرفة مظلمة. ضوء خافت يتسلل من تحت الباب.
لا تتذكر كيف وصلت إلى هنا.
كل سطر لا يبدأ برمز خاص هو نص عادي — سيظهر للقارئ كما هو. اضغط ▶ شغّل لتجرب. سترى النص يظهر في لوحة المشغّل.
الخطوة ٢: خيار
القصة التفاعلية تحتاج إلى خيارات. أضف هذه الأسطر بعد النص:
* [افتح الباب]
تفتح الباب بحذر. الممر طويل ومظلم.
العلامة * تعني "خيار". النص بين [ ] هو ما يراه القارئ على الزر. النص بعد ] هو ما يظهر عندما يضغط القارئ على الزر.
القصة الآن:
=== البداية ===
تستيقظ في غرفة مظلمة. ضوء خافت يتسلل من تحت الباب.
لا تتذكر كيف وصلت إلى هنا.
* [افتح الباب]
تفتح الباب بحذر. الممر طويل ومظلم.
جرّبها. عندما تضغط على الزر، يختفي ويظهر النص "تفتح الباب بحذر..."
الخطوة ٣: الانتقال إلى مقطع آخر
الخيار الواحد ينتهي عنده. لكن القصة تنتقل بين المقاطع. أضف مقطعًا ثانيًا واجعل الخيار ينتقل إليه:
=== البداية ===
تستيقظ في غرفة مظلمة. ضوء خافت يتسلل من تحت الباب.
لا تتذكر كيف وصلت إلى هنا.
* [افتح الباب]
تفتح الباب بحذر. الممر طويل ومظلم.
-> الممر
=== الممر ===
الممر طويل. في نهايته ضوء خافت.
تسمع صوت همسات من بعيد.
العلامة -> تعني "اذهب إلى". -> الممر تعني: بعد هذا الخيار، انتقل إلى مقطع اسمه الممر.
جرّب. ستنتقل من البداية إلى الممر. لاحظ أن المقطع الثاني ليس فيه خيارات — القصة تنتهي عنده.
الخطوة ٤: متغير — تذكّر شيء قرأه القارئ
القصة تصبح أقوى عندما تتذكّر ما فعله القارئ. أضف هذا قبل المقطع الأول (في أي مكان قبل أول ===):
متغير أخذ_المفتاح = خطأ
هذا يعلن عن "متغير" اسمه أخذ_المفتاح. قيمته خطأ (لا). المتغير مثل صندوق صغير تخزّن فيه معلومة. خطأ و صح هما القيمتان المنطقيتان — مثل "لا" و "نعم".
الآن أضف خيارًا جديدًا في المقطع الأول وخيارًا في المقطع الثاني يعتمد على المتغير:
متغير أخذ_المفتاح = خطأ
=== البداية ===
تستيقظ في غرفة مظلمة. ضوء خافت يتسلل من تحت الباب.
لا تتذكر كيف وصلت إلى هنا.
* [افتح الباب]
تفتح الباب بحذر. الممر طويل ومظلم.
-> الممر
* [خذ المفتاح من الطاولة]
تلتقط مفتاحًا صدئًا من على الطاولة. قد يكون مفيدًا.
~ أخذ_المفتاح = صح
-> البداية
=== الممر ===
الممر طويل. في نهايته ضوء خافت.
{أخذ_المفتاح: المفتاح في يدك. تشعر ببعض الاطمئنان.}
{أخذ_المفتاح:
- أخذ_المفتاح: المفتاح في يدك. تشعر ببعض الاطمئنان.
- غير_ذلك: يدك فارغة. كان عليك أن تأخذ المفتاح.
}
العلامة ~ تعني "تغيير قيمة متغير". ~ أخذ_المفتاح = صح تغير قيمة المتغير من خطأ إلى صح.
العلامة { } التي بداخلها : تعني "شرط". إذا كان أخذ_المفتاح يساوي صح، يظهر النص الذي بعد النقطتين. لاحظ أن غير_ذلك تعني "في كل الحالات الأخرى".
الخطوة ٥: القصة الكاملة — ثلاثة مشاهد
لنجمع كل شيء في قصة كاملة. هذا هو النص النهائي:
عنوان: "الغرفة المظلمة"
مؤلف: "أنت"
متغير أخذ_المفتاح = خطأ
=== البداية ===
تستيقظ في غرفة مظلمة. ضوء خافت يتسلل من تحت الباب.
لا تتذكر كيف وصلت إلى هنا.
ثمة طاولة صغيرة في الزاوية، عليها مفتاح صدئ.
* [افتح الباب]
تفتح الباب بحذر. الممر طويل ومظلم.
-> الممر
* [خذ المفتاح من الطاولة]
تلتقط المفتاح الصدئ. ثقيل في يدك.
~ أخذ_المفتاح = صح
-> البداية
=== الممر ===
الممر طويل، جدرانه حجرية رطبة.
تسمع صوت خطوات من بعيد.
{أخذ_المفتاح:
- أخذ_المفتاح: تشعر ببعض الاطمئنان والمفتاح في قبضتك.
- غير_ذلك: تتمنى لو كان معك شيء تدافع به عن نفسك.
}
* [اتبع الصوت]
تمشي نحو مصدر الصوت. الظلام يحيط بك من كل جانب.
-> النهاية
* [اختبئ]
تجد فجوة في الجدار وتختبئ فيها. الصوت يقترب ثم يبتعد.
-> النهاية
=== النهاية ===
النفق ينتهي فجأة. أمامك باب حجري ضخم عليه نقوش غريبة.
{أخذ_المفتاح:
- أخذ_المفتاح: تدخل المفتاح في القفل. يدار بسهولة. الباب ينفتح.
- غير_ذلك: الباب مقفل. لا يمكنك فتحه.
}
هذه قصتك الأولى. فيها:
- عنوان و مؤلف (اختياري، يظهران للمشغّل)
- ثلاثة مقاطع: البداية، الممر، النهاية
- متغير واحد:
أخذ_المفتاح - خيارات تنتقل بين المقاطع
- شرط يغير النص حسب قيمة المتغير
ملخص الرموز
| الرمز | ماذا يفعل | مثال |
|---|---|---|
=== | بداية مقطع جديد | === البداية === |
* | خيار (يختفي بعد أول استخدام) | * [افتح الباب] |
-> | الانتقال إلى مقطع | -> الممر |
متغير | تعريف متغير جديد | متغير س = ٠ |
~ | تغيير قيمة متغير | ~ س = س + ١ |
{ } مع : | شرط — يظهر إذا تحقق | {س > ٣: النص} |
{ } دون : | إدراج قيمة متغير في النص | لديك {س} نقاط |
إلى أين الآن؟
- جرّب تغيير النصوص والأسماء في القصة أعلاه
- أضف مقطعًا رابعًا
- اقرأ المرجع لترى كل الإمكانيات
- إذا ظهر خطأ، راجع دليل الأخطاء