ذكرتُ في مقابلة قديمة أجراها معي السيد أحمد دعدوش على موقع أفكاركم، ذكرتُ فيها لعبة هي ربما أول لعبة كنتُ قد أنجزتها في مسيرتي البرمجية وأعرضها أمام الجمهور. هذه اللعبة هي مونوبولي، وقد كانت هذه اللعبة هي مفتاحي للانتقال إلى لغة C فيما بعد.
أنهيتُ كتابة هذه اللعبة في الثانوية العامة، تقريباً عام 1418 هـ أو 1997 مـ، ولا أذكر بصراحة متى بدأتُ بالمشروع ككل. لكني أرجح أن ذلك كان خلال السنة الدراسية السابقة (الصف الثاني الثانوي).
هذه لقطة للعبة كما تظهر على شاشة الحاسوب القديمة :
حسناً، أنا في الواقع لم أنهِ إنجاز اللعبة، لكن انتظر لحظة قبل أن تتهمني بالكذب والادعاء. فإليك ملابسات القصة.
كتبتُ اللعبة باستخدام لغة بيسك، ضمن بيئة مايكروسوفت كيوبيسك Microsoft QBasic، وهي بيئة كانت تأتي مضمنة مع إصدارات نظام تشغيل دوس آنذاك، وصاحبكم كان مبتدئاً جداً بأساليب كتابة الكود المختصر، فكنت أكرر الكثير من الأسطر بدلاً من وضعها في إجراء وحيد ومناداة ذاك الإجراء كلما احتجتها. هذا واحد.
ثانياً، كامل رسوميات اللعبة "مبرمجة" وليست محفوظة في ملف صورة كما نفعل هذه الأيام. أي أنك ستجد في الكود أسطراً تقوم بكتابة الكلمات نقطة بنقطة، ورسم وتلوين الأشكال بأسلوب تحديد الشكل ثم تعبئته باللون المطلوب (Flood Fill).
الآن بأخذ هذه الحقائق بعين الاعتبار نستطيع فهم سبب تضخم كود اللعبة ليصل إلى حد أقصى تفرضه بيئة كيوبيسك على المبرمجين. للأسف وصلتُ إلى هذا الحد ولم يكن قد بقي لي سوى إنهاء كود بيع وشراء الأراضي كي تكتمل اللعبة تماماً.
إذن بوضعها الأخير، يستطيع اللاعبون (4 كحد أقصى) اللعب بها والتنقل بين الخانات وفتح بطاقات صندوق الجماعة والفرصة والدخول إلى السجن والخروج منه، لكنهم لا يستطيعون بيع أو شراء الأراضي (يع!!!)
حسناً، الآن كما ترى وقد بررتُ لك موقفي، لن تستطيع أن تتهمني بالكذب والادعاء، لكنك تستطيع أن تتهمني بعدم الخبرة والغباء لن أعترض على ذلك
هذه لقطة من كود اللعبة على شاشة كيوبيسك:
على أنني كنتُ قد بذلتُ جهداً جاداً آنذاك لمحاولة الفكاك من قيد حجم الكود هذا، وقد وجدتُ تعليمة تسمح لك بتنفيذ برنامج كيوبيسك آخر من خلال برنامجك (تدعى CHAIN)، لكن ضريبتها أن البرنامج الأول سيتوقف تماماً عن العمل وستفقد متغيراته كافة قيمها لتبدأ من الصفر مرة أخرى.
ما علينا، المهم أن هذه الورطة كانت سبب انتقالي للغة C حيثُ لا توجد هذه المحدودية (لكني أيضاً توقفت عن عادة تكرار أسطر الكود!).
قدّمتُ اللعبة كمشروع للمعرض العلمي للطلاب في الرياض، وقد حازت على المركز الثاني (أعتقد أن هذا جزاء عادل لعدم إتمامي اللعبة). هذه صورة من الدرع الذي أهدِيتُه في آخر يوم دراسي:
(تباً! لقد أخطؤوا الخطأ الكريه بأن وضعوا نقطتين تحت الألف المقصورة ليتحول حرف الجر "على" إلى "علي"!!!)
أنتهز الفرصة هنا لأشكر أساتذتي الذين رعوني ورعوا هذا العمل في المدرسة الأستاذ عبد الله الدهمش مدرس مادة الحاسب، والأستاذ سعيد عبد الله بالبيد مدرس مادة الكيمياء (ومؤلف كتاب المساعد في الكيمياء) في مدرسة الجزيرة الثانوية، حفظهم الله وبارك لهم في أعمارهم وجزاهم خير الأجر عني.
لمن يودّ الاطلاع على الكود أو حتى تجريب اللعبة (لا أنصح بذلك إطلاقاً)، يمكنكم تحميله كاملاً من هنا كما وجدته في أرشيفي، عس�� أن يكون دافعاً لمن يواجه موقفاً مماثلاً في حياته.
والسلام عليكم ورحمة الله وبركاته