برمجة لعبة وردلي بالاكسيل ولغة vba
ما هو Wordle؟
هي عبارة عن لعبة تخمين تسطيع ان تخمن الكلمة المطلوبة فقط بست محاولات استأثرت لعبة "ووردل" (Wordle) على اهتمام عدد كبير من مستخدمي الشبكات الاجتماعية، وسُجّل إقبال واسع عليها في الأسابيع الأخيرة، وتقوم على مبدأ بسيط يتمثل في اكتشاف كلمة كل يوم من 5 أحرف، في 6 محاولات بحد أقصى
ويبدو مبدأ اللعبة سهلًا، ويتمثل في العثور على الكلمة الأنسب المكونة من 5 أحرف، في 6 محاولات بحد أقصى.
· ويظهر كل حرف في مكانه الصحيح باللون الأخضر،
· وإذا كان الحرف في غير مكانه يظهر باللون الأصفر.
· والحرف الغير موجود بالكلمة باللون الرمادي
وينبغي لكل لاعب إيجاد كلمة واحدة يوميا، هي نفسها للجميع، وإذا أخفق في ذلك لا يمكنه إعادة المحاولة إلا في اليوم التالي
رابط اللعبة باللغة الإنكليزية
https://www.nytimes.com/games/wordle/index.html
النسخة العربية Wordle:
خلال الأسابيع الماضية، كان من الصعب أن تتصفح تويتر أو فيسبوك بدون مشاهدة تلك المربعات الخضراء والصفراء والبيضاء المرتبطة بلعبة "wordle " لعبة الكلمات التي استقطبت عشرات اللاعبين إلى مئات الآلاف في غضون بضعة أشهر. تم إنشاء هذه اللعبة بواسطة جوش واردل، مهندس برمجيات في بروكلين.
قوانين اللعبة بسيطة:
عليك أن تخمن كلمة من خمسة أحرف، تخبرك اللعبة ما إذا كان أي من أحرفك مكتوباً في الكلمة السرية وما إذا كانت في المكان الصحيح. لديك ست محاولات لفهمها بشكل صحيح. هناك كلمة جديدة كل يوم، ويجتمع الناس على هواتفهم المحمولة ليخمنوا الكلمة، وينشروا نتائجهم على وسائل التواصل و يقارنها مع نتائج أصدقائهم.
ورغم أن اللعبة العربية صدرت منذ بداية 2022، إلا أنها وصلت على صفحة التريندنغ في كل من مصر، لبنان، الأردن، السعودية، الإمارات العربية المتحدة وعُمان وقطر. خلقت هذه اللعبة مساحة للعرب المهتمين بلغتهم الأم وأثبتت أن جيلنا، على عكس ما يقال عننا، تربطه علاقة قوية باللغة العربية.
عبد اللطيف شاب سوريّ يقيم في السويد ويعمل في مجال البرمجيّات،
وعمرو شاب مصريّ يقيم في اسكتلندا حيث يتخصص بدكتوراه تحليل اللغات الطبيعية في جامعة إيدنبيرج قاما ببرمجة اللعبة
رابط اللعبة الإصدار العربي
-------------------------------
برمجة اللعبة بالاكسيل ولغة vba
أسئلة قبل البرمجة:
- يجب ان يكون لدينا ست محاولات لكلمة واحدة فقط كل يوم اثناء التخمين
- يجب ان يوجد كل الحروف باللغة العربية كل حرف على زر معين بحيث اذا تم النقر على الحرف يتم كتابته في اول مربع نصي عند النقر على زر اخر يتم انتقال تلقائيا إلى المربع الثاني وهكذا حتى اول خمس مربعات نص textbox
مثال
اذا نقرنا على حرف الميم(الزر الذي عنوانه م ) فيجب ان يتم كتابة الحرف في مربع النص textbox حيث يتم الكتابة من اليمين إلى اليسار كون لعبتنا باللغة العربية
- يجب اين يكون هناك زر للمسح وزر للإدخال
4- بعد كتابة المحاول الأولى والنقر على زر الادخال يتم هنا فحص الكلمة الأولى string1
- اذا الحرف كان في الموقع المناسب يصبح لونه اخضر
- اذا الحرف موجود في الكلمة (اللغز المراد معرفتها) لكن ليس في مكان يصبح اللون احمر او (برتقالي)
- في مثالنا السابق جميع الحروف غير موجودة وتأخذ اللون الرمادي
- اذا الكلمة كانت خاطئة لغويا مثلا وضعنا كلمة ليس لا معنى مثلا "شسيبل" هنا يجب رفضها من قبل البرنامج
- يجب ان يحوي البرنامج على قاموس
القاموس عبارة عن صفحة في الاكسيل تحوي على جميع الكلمات العربية باللغة الفصحى وهذا اصعب شيئ في اللعبة لينتج لدينا سؤال كبير
كيف نريد ان نعرف اذا كانت الكلمة عربية ام لا ؟
لابد من وجود كل الكلمات العربية في قاموس على صفحة اكسيل
كم عدد المفردات العربية :
اكثر من 12 مليون مفردة للغة العربية ام الإنكليزية فأقل من ذلك بكثير
كم عدد الجذور اللغوية ؟
اكثر من 15 الف جذر لغوي عربي
هل هذه اللعبة البسيطة تنطوي على كم كبير من التعقيد ؟
مثال :ليكن لدينا الجذر اللغوي ز-ه-ر المفردات المتشكلة من هذا الجذر كثيرة ومنها
مزهر – زهور – أزهار- مزهرة – زهير-أزهر-....الخ
لكن ليس كل الكلمات مقبولة مثلا كلمة "زهمر" مع انها تحوي على الجذر زهر
2- بعد ما تم اظهار رسالة تؤكد ان الكلمة ليست موجودة بالقاموس لابد من مسح الحروف وذلك بالنقر على زر المسح حيث يتم مسح حرف ثم حرف تلو الاخر للخلف
ملاحظة: اثناء المسح لا يجوز مسح حروف من الكلمة السابقة التي تم قبولها وفي مثالنا "مراسم"
- لنفرض اننا قمنا بالمسح ونريد ان نضع تخمين اخر حيث نكتب كلمة عربية جديدة وصحيحة وننقر على زر الادخال اذا قبلها القاموس لابد من تلوين الازرار (الحروف ) بنفس لون الإجابة
- رمادي غير موجود الحرف
- برتقالي الحرف موجود وليس في مكانه
- اخضر الحرف موجود وفي مكانه
تابع الفيديو حيث تم برمجة اللعبة من خلال الاكسيل
------------------------------------------------
https://docs.google.com/spreadsheets/d/1r92SgegpxJCpx-Nq1QwNMypMSU_MEBtVzLvDyXi3zQo/edit?usp=drivesdk
ردحذف