قضيت مئات الساعات في الألعاب وفقًا لإحصائيات Steam ، والآلاف ، إذا كنت تعتمد على جميع الأنظمة الأساسية. ولكن ما أدهشني هو نسبة الوقت في بعض الحالات. استغرق الأمر 8.5 ساعة لإكمال Bioshock Infinite الرائع ، لكن Sacura Clicker استغرق 12 دقيقة أخرى. لدى Clicker Heroes أكثر من أربعين ساعة ، تقريبًا نفس Torchlight 2. والحيلة هي أنني تذكرت وكان لدي فكرة جيدة عن الوقت الذي أمضيته في الألعاب الكبيرة. لكن الألعاب الصغيرة لم تتذكرها تمامًا ، لقد سرقت وقتي دون أن يلاحظها أحد ، حيث استغرقت خمس إلى عشر دقائق لأسابيع وشهور.
عندما أدركت هذا ، اعتقدت أنه سيكون من اللطيف ربط التوربين بهذه الباليه. هذا هو ، لجعل الوقت القاتل مفيدًا - لعبة بسيطة لن تسرق ، ولكن تستثمر وقتي لمدة خمس إلى عشر دقائق. على سبيل المثال ، في المفردات الإنجليزية.

بمجرد أن اشتريت مجموعة من البطاقات مع الكلمات الإنجليزية وقراءتها في حافلة صغيرة في الطريق إلى المكتب. ثم استقال من المكتب واختفت العادة ، نسيت البطاقات. لقد هز حقيبة ظهره ، وعندما سقطت كلمات مختلفة من جيب الجانب العلوي مع مروحة ، أدركت - هذه هي المباراة 2! لعبة تحتاج فيها إلى تكوين أزواج (على عكس المباراة 3 ، حيث تأخذ ثلاثة أو أكثر).
تم التعرف على مدمني الوقت بمبدأ "اصنع زوجين" لفترة طويلة - على سبيل المثال ، لعبة الكمبيوتر mahjong solitaire (لا يجب الخلط بينها وبين لعبة المقامرة الصينية الكلاسيكية ، والتي لعبتها Sammo Hung في أفلام الحركة في هونغ كونغ).
ألعاب كيدي جونغيحتوي Mahjong solitaire على تنوع مبسط في Mahjong Connect ، حيث يتم وضع الرقائق في تخطيط بسيط ، بدون أهرامات مجعدة. على ويكيبيديا ، يمكنك أن تقرأ أنه يسمى Shisen-Sho ، ولكن إذا كنت تريد عينات من google ، فسيكون الاسم الأول أكثر ملاءمة.
أظن أن الإصدار الأول تم صنعه من قبل مبرمج مثلي ، لم يكن لديه خبرة في برمجة mahjong كاملة مع تخطيط معقد - ولكن اللعبة أصبحت فجأة شائعة وأنتجت فرعها الخاص من الحيوانات المستنسخة.
ألعاب KDE Shiseen-sho أو Mahjong Connect شعبياانظر إلى بطاقات الكلمات و Mahjong Connect - تتناسب تمامًا معًا - وهناك أزواج. يبقى فقط لتحويل كل بطاقة إلى زوج من الرقائق.
الرقائق وتصميم اللعب
خمس كلمات جديدة في كل جلسة وعدد قليل من الكلمات المتكررة من الكلمات السابقة - هذه هي الفكرة التي بدأت منها. هذا يعني أنه يجب مشاركة ما لا يقل عن 20 شريحة في اللعبة.
على كل شريحة كان من الضروري وضع كلمة واحدة على الأقل مع سهولة القراءة. تسمح لك البطاقات الورقية بوضع الكثير من النص ، ولكن الرقائق ذات هذه النسب ستكون كبيرة جدًا. بالإضافة إلى ذلك ، كنت أرغب حقًا في الحفاظ على شعور "كما لو أن mahjong" ، وهذا يعني أن رقاقة ألعاب واحدة يجب أن تكون مضغوطة جدًا من حيث الشكل والنص. إذا أدرت مفصل mahjong 90 درجة ، فستحصل على مساحة كافية للنص.
بعد أن صممت تخطيطًا للعبة باستخدام مثل هذه المفاصل في محرر رسومية (Fireworks 2003 ، إذا كنت فضوليًا) ، رأيت أن اللعبة تبدو مملة جدًا. بعد أن نظرت مرة أخرى إلى لقطات الشاشة باستخدام mahjongs ، حاولت إضافة عناصر رسومية مختلفة لإحياء الصورة. ثم بزغ لي - يمكنك فقط إضافة جوهرة لكل زوج. ثم ستعمل ليس فقط كعنصر متحرك ، مما يعطي على الأقل تشابهًا خارجيًا مع الألعاب العرضية ، ولكن أيضًا كإشارة.
نسخة مسودة من الملعب مع خيارات مختلفة للرقائقتحولت النسخة النهائية على هذا النحو - ثلاث جواهر لكل 10-11 زوج من الكلمات. أعطى هذا إشارة إلى احتمال مصادفة عشوائية تبلغ حوالي 25 ٪. إذا نسيت الكلمة - يمكنك عرض الرقائق بنفس الكلمات.
عنصر تصميم إضافي يسرع الاتجاه هو العلم الرمادي الذي يشير إلى جميع الكلمات بلغة واحدة (الروسية). كانت الفكرة الأصلية هي تسمية عنصر واحد من زوج ، وليس علامة وطنية ، لذلك لم أفعل الالوان الثلاثة أو أي شيء آخر من هذا القبيل.

يبدو الأمر وكأنه خداع تقريبًا ، لكنني لم أرغب في إجراء اختبار أو اختبار معرفة كامل. الامتحان مرهق ، وكنت بحاجة إلى اللعب الأسهل والأكثر متعة بحيث تم تكوين شعور بالنصر والثقة بالنفس أثناء اللعبة. أعتقد أن هذه هي واحدة من أهم صفات قاتل الوقت مثل Bejeweled أو Zuma. يذهب اللاعب على طول الحدود المثلى بين مهارته وعدم قدرته ، ويلهون ويعود إلى اللعبة مرارًا وتكرارًا.
ماذا عن القواعد - لقد اتخذت خطوة أخرى في التبسيط من Mahjong Connect وسمحت لي بعمل أزواج من أي رقائق مطابقة ، وليس فقط تلك التي تم فتحها. هناك سببان لحدوث ذلك. الأول هو أنني لم يكن لدي كود جونغ جاهز في متناول اليد واختبرت فقط الاقتران. والثاني هو أنني وجدت أن الرقائق بالكلمات بلغات مختلفة في حد ذاتها تعقّد طريقة اللعب ويخلق الاقتران بها بالفعل شعورًا باللعبة.
التطلع إلى المستقبل - إذا قمت بإجراء اتصال كامل و mahjong بنفس الرقائق ، فسيصبح اللعب أسهل كثيرًا. والحقيقة هي أن القيود الإضافية على الرقائق ستضيق الاختيار ويمكن للاعب التحقق فقط من جميع الرقائق المناسبة للأحجار الكريمة المجانية للأحجار الكريمة - وهذا سيعطي زيادة حادة في احتمال المصادفة من 25 ٪ إلى 50 أو حتى مائة ، اعتمادًا على التخطيط.
ولكن بغض النظر عن مدى سهولة اللعب أو الغش ، فإن الهدف الرئيسي في هذه اللعبة سيظل يتحقق - فدماغ اللاعب سيطابق باستمرار بضع كلمات في لغاتهم الأصلية والأجنبية. إذا تمكن شخص ما من صنع مثل هذا الوقت القاتل ، فستتحول عشرات الساعات فيه إلى فائدة للاعبين ، بغض النظر عن كيفية خداعهم. على الرغم من أن التعلم الواعي هو الأفضل دائمًا بالتأكيد.
برمجة
لهذا المشروع ، استخدمت جافا سكريبت العادية ومحرك اللعبة Phaser.io 2.10.2. لماذا تعتبر ألعاب HTML5 جيدة - فهي تتيح لك توفير الوصول بسرعة لاختبار النماذج الأولية وتشغيلها. لقد نجحت بالفعل في التأكد من المشاريع الأخرى التي تعتبر كوسيلة لإنشاء لعبة HTML5 عبر الأنظمة الأساسية ليست جيدة جدًا (انخفاض ملحوظ في FPS على الهواتف الضعيفة ، مشاكل التوافق عبر المتصفح ، الحاجة إلى التفكير في الجسور إلى واجهة برمجة التطبيقات الأصلية في بعض الحالات). ولكن كأداة لبناء النماذج الأولية للويب وألعاب الويب ، فإنه خيار جيد.
كما هو الحال في
قافلة ما بعد الطاقة النووية ، بدأت في التطور من خلال تجميع نموذج لحالة اللعبة - أي فئة بيانات تحتوي على حقول تعكس ببساطة التقدم الحالي للاعب.
function GameState() { this.pairKey = "ru-en";
لحفظ وتحميل حالة اللعبة في JS المستندة إلى المستعرض ، يكفي ببساطة إجراء تسلسل لهذا النموذج وإلغاء تسلسله عند الكتابة والقراءة إلى وحدة التخزين المحلية - وبالتالي نحصل على التقدم المحفوظ على كمبيوتر المستخدم في سطرين فقط.
يتم تنفيذ وضع الرقائق في الميدان ومعالجة نقرات الماوس وشاشة تعمل باللمس في Phaser بكل بساطة. يحتوي على فئة Group ، والتي تسمح لك بمحاذاة جميع الكائنات المرئية المضافة إليها تلقائيًا وفقًا لشبكة معينة.
ومع ذلك ، يمكن فقط القيام بالمستطيلات العادية (أو الشبكات ، إذا قمت بتعيين خطوة كبيرة) بهذه الطريقة ، والتي تبدو بدائية جدًا. لذلك ، كتبت وظيفة التخطيط الخاصة بي ، حيث يتم تحويل كل صف ثان بمقدار نصف الرقائق - يتضح تخطيط "الطوب".
ولكن كان علي حل القضايا الرئيسية في القاموس.
ألعاب القاموس والخط
أول شيء يلفت انتباه الجميع ، إذا لم يندفعوا بالفعل - طول الرقائق لا يكفي لعرض جميع الكلمات في القاموس بشكل ملائم. يمكنك حل هذه المشكلة عن طريق تغيير حجم الخط بشكل تعسفي اعتمادًا على طول الكلمة.
حجم خط مختلف لأطوال مختلفة - يبدو مجنونا بعض الشيء ، في رأييلكن هذا الخيار بدا لي سيئًا للغاية ، لذلك قررت فقط تصفية القاموس وترك الكلمات فقط التي لا تزيد عن 9 أحرف في كلتا الحالتين (الروسية والإنجليزية). في حالتي ، كان هذا مسموحًا ، لأنني أخذت قاموس الترددات كأساس - أي ، الكلمات التي تم فرزها حسب تكرار الاستخدام. في أول ألف كلمة أطول من 9 أحرف ، كان هناك عدد قليل جدًا ، وفي العشرة الأوائل ، أي الأكثر تكرارًا ، لم يكن هناك أي شيء على الإطلاق.
الحد الأقصى المكون من 9 أحرف مناسب في مرحلة التحقق من المفهوم للكلمات الأكثر شيوعًا ، ولكن إذا قمت بتطوير نموذج أولي ، فسوف يتعين عليك فعل شيء حيال ذلك عاجلاً أم آجلاً. على الأرجح ، قم بتغيير نسب رقائق البطاطس أو زيادة حجمها. بالنسبة للغة الألمانية ، يجب القيام بذلك حتى في إطار أول مئات الكلمات الأكثر شعبية - وأريد أيضًا اختبار اللغة الألمانية ، تذكر سنوات الدراسة.
النقطة الثانية هي المصادفة البصرية للحروف باللغتين الإنجليزية والروسية. الروسية "لا" والإنجليزية التي يتطابق بحروف كبيرة في كثير من الأحيان مع بكسل فقط. يعزز قاموس التردد هذا التأثير لأن هذه الكلمات القصيرة تنتهي في درس واحد تقريبًا في البداية.
الروسية NOT والإنجليزية HE في الأحرف الكبيرة تبدو متشابهةساعد العلم الرمادي بشكل ضعيف ، وكانت الخلط بين الكلمات. بعد الشكاوى الأولى من المختبرين ، قمت بتغيير حالة النقوش إلى الأحرف الصغيرة المعتادة. ثم رأيت الخطأ التالي - بدأت الحروف بالرقص ، في بعض الكلمات تطفو عموديًا ببكسل كامل.

كان السبب هو أنني استخدمت خطًا نقطيًا واحدًا للإخراج (تم تشكيله كمجموعة من صور الحروف بنفس الحجم) ، وقم بتغيير حجمه حسب الحاجة. في معظم الحالات ، يتم ذلك بسلاسة ، لكن الحروف المستديرة تظهر بأحرف صغيرة - في بعض الأحيان يتم أكل بكسل واحد ، مما يعطي تأثير الرقص.
الأخلاق: يجب إعداد خط نقطي للنصوص الصغيرة على الفور بالحجم الصحيح
بعد إعداد خط منفصل ، توقف الجميع عن الرقص ووقفوا بصرامة على طول خط الأساس.

إذا كنت ستستخدم Phaser أو محرك HTML5 آخر في مشاريعك ، فإليك نصيحة أخرى: اعرض الخط النقطي على الفور باللون الذي سيتم استخدامه في اللعبة. خلاف ذلك ، يضع هذا ضغطًا إضافيًا على المعالج ، والذي يمكن أن يؤدي في الألعاب التي تحتوي على مجموعة من الإجراءات والتأثيرات إلى هبوط قوي من FPS. بالإضافة إلى ذلك ، حتى في أحدث إصدار من متصفح Chrome على بعض الأجهزة اللوحية التي تعمل بنظام Android ، قد لا يتم عرض اللون "غير الأصلي" الذي تم تعيينه بواسطة الخط النقطي برمجيًا على الإطلاق - سيكون الناتج افتراضيًا.
وبالطبع ، فإن القاموس لمثل هذه اللعبة هو أفضل اتصال كملف قابل للتنزيل بشكل منفصل - وهذا سيسمح بتحديثه إذا لوحظت أخطاء مطبعية أو خيارات مشكوك فيها.
على سبيل المثال ، يبدو أن نسختي من القاموس قد تم تجميعها من مصفوفات النصوص المترجمة ، مع مراعاة السياق ، لذلك تمت ترجمة "ماذا" في الدروس الأولى على أنها "ذلك". من الواضح أنه بهذا المعنى ، يتم استخدام هذا الجسيم في كثير من الأحيان أكثر من السؤال ، ولكن للتعلم بدون سياق فهو غير مناسب.
استنتاجي الرئيسي من المفردات هو أن الجسيمات والكلمات الأخرى شديدة الحساسية للسياق ليست مناسبة للتعلم في مثل هذه الأزواج النقية. خيارات الحل التي أراها هي صنع لعبة منفصلة في جزيئات أو إنشاء رقائق بنصوص أطول. يبدو الخيار الثاني أكثر منطقية ، لأنك لن تعرف القراءة والكتابة بكلمة واحدة فقط وتحتاج إلى تعلم اللغة بشكل كامل مع السياق ، على الأقل بمساعدة التعبيرات الصغيرة. وهذا يعني - لا يزال هناك الكثير من التجارب المقبلة!
البرنامج التعليمي
في البداية ، قمت باختبار لعبة تم فيها وضع الرقائق ببساطة - وكان الأمر مثيرًا للاهتمام ، حيث تم اختزال طريقة اللعب إلى استدعاء التعبيرات المعروفة بالفعل بفرح ، وهذا أعطى شعورًا بانتصار سهل ، وهو أمر مطلوب. ولكن بعد ذلك أدركت أن هذا لن يعمل مع لغة غير مألوفة تمامًا. لذلك ، اضطررت إلى إضافة خيار التعلم - قبل بداية الدرس ، تعرض اللعبة الرقائق في الأزواج الصحيحة ، ثم تقوم بخلطها.

من الناحية الفنية ، يتم تنفيذ ذلك على النحو التالي - يتم تحديد المستوى في البداية كالمعتاد ، أي بترتيب عشوائي. بعد ذلك ، إذا تم تشغيل خيار البرنامج التعليمي ، يتم تشغيل وظيفة تتذكر الإحداثيات الأولية للرقائق ، وتضيف الرسوم المتحركة للرحلة وتخطيطات لها في أزواج العمل ، ثم يعود كل شيء إلى مكانه. نظرًا لأن حساب البرنامج التعليمي وإعداده يتم قبل بدء دورة التحديث الأولى (إعادة رسم الشاشة) ، يبدو للمستخدم أن اللعبة تعرض الشرائح أولاً بالترتيب الصحيح ، ثم تقوم بتبديلها عشوائيًا.
في محرك Phaser ، لدى Group طريقة خلط تعمل مثل خلط صفيف عادي ، ولكنها تقوم في نفس الوقت بتحديث فهرس Z. هذه وظيفة مريحة للغاية ، والتي ستكون مفيدة بالتأكيد لتنفيذ لعبة mahjong الكاملة وغيرها من الألعاب حيث يوجد بعد ثالث مشروط على الأقل وتتداخل العناصر مع بعضها البعض.
تبدو خوارزمية بداية اللعبة بسيطة - فنحن نأخذ أزواج N من قاموس الأزواج لدرس معين ، ونشكل عناصر شرائح بصرية منها ، ثم نقوم بعمل خلط عشوائي وننشئه في شبكة - نحصل على تخطيط عشوائي عشوائي.
تتم العملية العكسية في البرنامج التعليمي - يتم استدعاء وظيفة الفرز على صفيف الشريحة ، حيث يكون معرف الزوج من القاموس معلمة مهمة - وبهذه الطريقة يتم ترتيب الرقائق واحدة تلو الأخرى في أزواج ، وبعد ذلك يبقى وضعها في عمودين.
تقدم
لرصد التقدم ، أضفت مؤشرات صغيرة إلى قائمة البداية وعلامة النجمة ، والتي يجب أن تظهر عند اكتمال جميع المستويات في مائة كلمة. تظهر لقطة الشاشة حالة مصطنعة مع نجمة اختبار.

أخذت السلطان بوجه كارتمان على Craftpix.net - مشى في نفس المجموعة المجانية مثل الماس. فقط لتوابل شاشة التوقف. على الرغم من أنك إذا كنت لا تحب السلاطين أو كارتمان ، فأنا أعترف بأن هذه الخطوة ليست ناجحة بشكل خاص.
الاستنتاجات والآفاق
أنا متأكد من أن مهلة التدريب هي مهارة زمنية حقيقية ، وليس هذا النموذج الأولي الذي قمت به ممكنًا. وعندما تظهر بأعداد كبيرة ، يمكن للعالم أن يتغير للأفضل. كحد أدنى ، لن يضيع ملايين الأشخاص مئات الساعات.
إذا كان لديك رمزًا للعبة عادية معًا وبضعة أيام مجانية ، فجرّب التجربة ، على الأقل ببضع كلمات. يمكنك أخذ
ملف JSON النهائي هنا . لديها أكثر من ألف زوج ، شكلت مع الهامش.
جميع ألعاب match3 و match2 - مع الكرات ، والماس ، ورقائق mahjong ، والأسماك والأشبال ، مع تخطيط ديناميكي كسوري مثل Zuma أو حقل ثابت ، كما هو الحال في معظم الألعاب - هذه هي في الأساس مهمة لإنشاء مجموعات ، لتحديد المجموعات وفقًا لبعض المعايير .
في الألعاب الحالية ، لا تحمل هذه اللافتة أي حمولة ، يجمع الناس ببساطة الكرات الحمراء والخضراء والحلويات الهلامية المخططة الشفافة وأشبال البرتقال اللزجة. ولكن ماذا لو كانت هذه الأشبال مشبعة بالفيتامينات الصحية؟ أتذكر أنني تعلمت عددًا من الكلمات الإنجليزية من Fallout و Heroes Might and Magic ، مما يعني أن مثل هذه الفيتامينات موجودة.
يمكن اختبار نموذجي الأولي للعبة
هنا . هناك الاختيار من بين المئات والمستويات المختلفة ، والحفظ ، والتقدم ، وألف من الكلمات الإنجليزية الأكثر شيوعًا. تم تصميم التخطيط لشاشات سطح المكتب أو الأجهزة اللوحية. تم تصميم كل مستوى لعدة دقائق ، ويحتوي على 5 كلمات جديدة و 6 كلمات مكررة من الكلمات السابقة (وفقًا لصيغة أخذ العينات العشوائية 3 ، 2 ، 1).
تحديث 06.13.18 : التحولات المضافة بين مئات الكلمات
والتحية عند اجتياز المستوى الأخير في كل مائة. تمت إزالة أيضًا من القاموس بعض الأزواج السياقية التي لا معنى لها في الترجمات الفردية. العمل الأمثل مع الذاكرة.