إنشاء ألعاب للويب الحديث
يدرك مطوّرو الألعاب الجيدون أنّه للاستفادة من الفرصة التي يوفّرها نظام أساسي معيّن، من المهم الاستفادة من خصائصه الفريدة. ما هي الخصائص الفريدة للويب؟ وما الذي يعرّف ألعاب الويب؟
في مؤتمر Google I/O لعام 2019، قدّمت أفكاري حول حالة المنظومة المتكاملة لألعاب الويب وأفضل الممارسات الحالية لتطوير ألعاب الويب الحديثة والاتجاهات التي تتّبعها هذه الصناعة. في هذه المشاركة، سألخّص بعض النقاط الرئيسية من محاضرتي التي يمكنك مشاهدتها بالكامل على YouTube:
تحديات ألعاب الويب
قبل الانضمام إلى Google، أنشأتُ لعبة للأجهزة الجوّالة تُعرف باسم Duet تم تنزيلها 20 مليون مرة تقريبًا. من خلال هذه التجربة، تعلمت أنّ العناصر الأساسية الثلاثة لإنشاء نشاط تجاري ناجح من لعبة هي:
- لعبة وظيفية
- المستخدمون
- طريقة لتحقيق الربح من المستخدمين
بدون هذه العناصر الثلاثة، لا يمكن لمطوّر الألعاب تحقيق النجاح. في الوقت الحالي، هاتان النقطتان الأخيرتان هما الأكثر أهمية. أثبتت الأنظمة المتكاملة المغلقة المستندة إلى HTML5، مثل WeChat وFacebook Instant Games وغيرها، أنّه يمكن إنشاء ألعاب باستخدام HTML5.
أفضل الممارسات الحديثة
نقصد بـ "اللعبة الوظيفية" العناصر الأساسية الثلاثة التي تجعل اللعبة تعمل على النحو المطلوب:
- الأداء
- المرئيات
- الصوت
وفي كلّ من هذه المجالات، حقّقت منصة الويب خطوات كبيرة خلال السنوات القليلة الماضية. بالنسبة إلى أداء وحدة المعالجة المركزية (CPU)، يمكننا الوصول إلى معيار جديد فعال يسمى WebAssembly. من ناحية الرسومات، يتمتع WebGL 1.0 بتوافق جيد مع جميع المتصفّحات، كما أنّ المعايير المستقبلية، مثل WebGPU، تضع منصة الويب في موضع يؤهّلها لمستقبل قابل للتوسيع في مجال برمجة الرسومات، مثل Vulkan وMetal. وأخيرًا، بالنسبة إلى المحتوى الصوتي على الويب، لدينا واجهة برمجة تطبيقات Web Audio الشائعة وواجهة برمجة تطبيقات Audio Worklet API.
مؤخرًا، عرضت Unity معاينة لبيئة تشغيل جديدة باسم Project Tiny تركّز على إنشاء ألعاب ثنائية الأبعاد لمنصّات مستندة إلى HTML5. يطبّق Project Tiny تصميمًا وحداتًا جديدًا على بنية محرّك Unity، ما يتيح تقليل حجم محرّك Unity الأساسي إلى أقل من ميغابايت واحد.
من الناحية الفنية، لم يسبق أن كان الوقت مناسبًا لتطوير ألعاب الويب.
الدخول إلى حلقة الألعاب
لا يقتصر دور اللعبة الرائعة على كونها ذات أداء جيد ورسومات وصوت، ولكن يجب أن تكون اللعبة ممتعة حتى لو كانت رائعة.
المرح عنصر يصعب قياسه في المنتج. عندما تكون اللعبة ممتعة أو مثيرة للاهتمام أو مبتكرة بما يكفي، سيريد المستخدمون إخبار أصدقائهم بها، أي أنهم سيريدون مشاركة التجربة. ومن خلال الاستفادة من هذه الفرصة وربطها بالويب، يمكنك الاستفادة من إمكانات كبيرة تتيح لك تحقيق نمو سريع الانتشار. وعلى الويب على وجه الخصوص، بدون منصة مركزية لاستكشاف المحتوى، فإنّ أفضل طريقة للحصول على المستخدمين هي ضمان انتشار ألعابنا على نطاق واسع قدر الإمكان.
يدرك مطوّرو الألعاب الجيدون أنّه للاستفادة من نظام أساسي معيّن، سواء على مستوى البرامج أو الأجهزة، من المهم تبنّي الخصائص الفريدة لتلك المنصة. على سبيل المثال، إذا كنت تنشئ لعبة لوحدة تحكّم تتضمّن عناصر تحكّم بالحركة، عليك التفكير في أفضل طريقة لاستخدام عناصر التحكّم بالحركة هذه.
بعبارة أخرى، يجب مراعاة توقعات مستخدمي المنصة التي تصمّم تطبيقك لها. ما الذي يتوقّعه مستخدمو الويب؟ ويتوقعون أن يتم تحميل محتوى الويب بسرعة وأن يكون تفاعليًا بسرعة. في محاضرتي، ذكرتُ عدة أمثلة على الطرق التي تم بها تصميم الألعاب لتحميلها بسرعة، وجذب المستخدمين إلى عوالمها، وتفاعلهم معها، وتقديم حوافز إضافية لهم لمشاركة تجاربهم، سواء على الويب أو خارجها.
أعتقد شخصيًا أنّ مفتاح إنشاء لعبة ناجحة على الويب هو الاستفادة من هذه الميزة الفريدة للويب. على وجه التحديد، قوة بنية عنوان URL للويب وحلقة المشاركة التي يمكن للمستخدمين الانضمام إليها.
في ما يلي مثال على لعبة ويب أنشأتها باستخدام Construct 3 تستفيد من عنوان URL بطريقة ممتعة وجذابة.
Space Board هي لعبة بسيطة جدًا يمكن تشغيلها على الأجهزة الجوّالة باستخدام عناصر التحكّم باللمس أو على أجهزة الكمبيوتر المكتبي باستخدام لوحة المفاتيح. الهدف هو التنقّل في متاهة من العقبات للوصول إلى هدف في النهاية.
كيف تستفيد لوحة "المساحة" من عنوان URL بطريقة فريدة؟ من خلال ترميز بنية المستوى في عنوان URL نفسه. يتم تعريف جميع المستويات على أنّها شبكة من الكائنات بحجم 10 x 10، مثل الجدران وأبراج العدو والمفاتيح والأبواب المُقفَلة وما إلى ذلك. ويسرد عنوان URL بعد ذلك جميع مواضع الشبكة الفردية ومحتوياتها. يتم تمثيل الجدار بحرف W
. المساحة الفارغة هي حرف شرطة سفلية.
وفي ما يلي مثال لذلك:
https://io-space-board.firebaseapp.com/?gameWorld=_wwwwwwwwww___ww__eww_k__d___ww___ww___ww_wwwww_www_wwwww_www___ww___ww_s_ww_f_ww___ww___wwwwwwwwwwww
إنه قبيح ولكنّه يؤدي الغرض.
عند إكمال مستوى في Space Board، تتوفّر للّاعب فرصة تصميم مستوى خاص به باستخدام محرِّر المستويات البسيط الموضَّح أعلاه. من خلال السماح للاعبين بتصميم مستوياتهم الخاصة، نمنحهم فرصة تخصيصها. عندما يشعر المستخدم بارتباطه بلعبة ويشعر بملكيتها من خلال عملية الإنشاء والتخصيص، من المرجّح أن يرغب في مشاركة هذه "اللعبة" مع العالم.
إنّ الرغبة في مشاركة لعبة هي بداية الانتشار الفيروسي الذي نهدف إلى تحقيقه من خلال ألعاب الويب. إنّ آلية تصميم الألعاب ومشاركتها هذه هي مجرد مثال واحد على الإمكانات المتاحة، ولكن هناك العديد من الإمكانات الأخرى. أنصحك بمشاهدة محادثتي للاطّلاع على المزيد من الأمثلة.
عائدات الاستثمار
في الوقت الحالي، هناك طريقتان أساسيتان يمكن من خلالهما لمطوّر الألعاب تحقيق الربح من خلال ألعاب الويب:
- تحقيق الربح من الألعاب مباشرةً
- التعامل معها بصفتها قناة اكتساب مستخدمين
عند التعامل مع ألعاب الويب كقناة اكتساب، يمكنك الاستفادة من إصدار الويب لألعابك على أجهزة iOS أو Android أو أجهزة الكمبيوتر المكتبي كآلية لجذب انتباه اللاعبين وإقناعهم بتنزيل برنامجك الثنائي الأكبر لأجهزة iOS/Android/الكمبيوتر المكتبي. ويمكنك بعد ذلك تحقيق الأرباح باستخدام الخلفيات المدمجة للدفع والفوترة في منصة iOS/Android/أجهزة الكمبيوتر المكتبي.
يعتمد تحقيق الربح عادةً على الإعلانات والمعاملات الصغيرة. ولا يزال هناك الكثير من العمل الذي ينبغي أن تتنافس الويب مع الأنظمة الأساسية للأجهزة الجوّالة في إعلانات الألعاب. على سبيل المثال، حظيت تنسيقات مثل "الإعلانات المتضمّنة مكافأة" بشعبية كبيرة في الألعاب على الأجهزة الجوّالة لعدة سنوات، ومع ذلك، نرى الآن شبكات المواقع الإعلانية تنشر هذه التنسيقات على الويب.
ومع ذلك، هناك مطوّرو ألعاب يواصلون تحقيق النجاح على الويب المفتوح من خلال الإعلانات عبر إعلانات البانر التقليدية وإعلانات الفيديو البينية. ألقِ نظرة على AdSense للألعاب للحصول على مزيد من المعلومات حول أشكال الإعلانات هذه.
بالنسبة إلى المعاملات الصغيرة، توفّر الويب مرونة كاملة بسبب العدد غير المحدود لاستخدام طرق الدفع التي يمكن تنفيذها. ولكن هذه الجودة سيف ذات حدين. الجانب السلبي من ذلك هو أنّ اللاعبين لا يثقون بشكل ضمني في الموقع الإلكتروني الجديد الذي يكتشفونه مقارنةً بطرق الدفع المألوفة في متجر الأجهزة الجوّالة المخصّص للمنصة.
من بين الحلول التي توفّر واجهة مستخدم أكثر اتساقًا للدفع على الويب، Payment Request API. تستدعي واجهة برمجة التطبيقات هذه واجهة مستخدم يعرضها المتصفّح وتبسّط عملية الحصول على تفاصيل الدفع، مثل بطاقات الائتمان وعناوين إرسال الفواتير. ومع ذلك، فإنّ الحصول على تفاصيل الدفع هو الخطوة الأولى فقط لإجراء معاملة. أنت بحاجة أيضًا إلى منصة فوترة خلفية.
المستقبل
لقد شهدنا خلال السنوات القليلة الماضية العديد من ألعاب الويب الناجحة والمفاجئة. أنشأت Slither.io نشاطًا تجاريًا مختلطًا على الويب وعلى المنصات يُظهر مدى الوصول الهائل وفرص النمو الفيروسي التي يوفّرها الويب. تُقدّم البوابات، مثل Poki.com، تجارب مبتكرة للمستخدمين وتطرح ألعابًا جديدة كل يوم، بما في ذلك عناوين تتطابق مع دقة نظيراتها على الأجهزة الجوّالة، مثل Subway Surfers أو Crossy Road.
بالإضافة إلى ذلك، إذا نظرت خارج نطاق الويب المفتوح، يمكنك أن ترى أنّ ألعاب الويب تحظى بشعبية كبيرة. فهناك منظومات متكاملة مغلقة، مثل WeChat وLINE، تقدّم ألعابًا ممتعة لا يمكن تشغيلها على الويب المفتوح، ولكنّها مبنية على تكنولوجيات الويب، مثل HTML5 وWebViews. هذه علامة واضحة على أنّ الويب قد وصل إلى مستوى من الدقّة يمكنه منافسة ألعاب الأجهزة الجوّالة المخصّصة للمنصّات، ربما ليس في تعريف دقيق للدقّة، ولكن في مقياس أكثر أهمية: انتباه اللاعب.