ساخت بازی برای وب مدرن.
توسعه دهندگان خوب بازی می دانند که برای استفاده از فرصت یک پلتفرم خاص، مهم است که ویژگی های منحصر به فرد آن پلتفرم را در آغوش بگیرید. بنابراین ویژگی های منحصر به فرد وب چیست؟ و چه چیزی یک بازی وب را تعریف می کند؟
در Google I/O 2019، نظرات خود را در مورد وضعیت اکوسیستم بازیهای وب، بهترین شیوههای فعلی برای توسعه بازیهای وب مدرن و اینکه صنعت به کجا میرود، ارائه کردم. در این پست وبلاگ، برخی از نکات کلیدی سخنرانی خود را که می توانید به طور کامل در یوتیوب تماشا کنید، خلاصه می کنم:
چالش های بازی های وب
قبل از پیوستن به گوگل، یک بازی موبایلی به نام Duet ساختم که نزدیک به 20 میلیون بار دانلود شد. از طریق آن تجربه آموختم که سه عنصر ضروری برای ساختن یک تجارت موفق از یک بازی عبارتند از:
- یک بازی کاربردی
- کاربران
- راهی برای کسب درآمد از کاربران
بدون این سه عنصر، یک بازی ساز نمی تواند موفق شود. امروزه این دو نکته آخر حساس ترین هستند. اکوسیستمهای بسته HTML5 مانند WeChat، Facebook Instant Games و موارد دیگر نشان دادهاند که ساخت بازی با استفاده از HTML5 قابل دستیابی است.
بهترین شیوه های مدرن
من با "بازی عملکردی" به سه عنصر اصلی که باعث می شود یک بازی کار کند اشاره می کنم:
- عملکرد
- تصاویری
- صوتی
در هر یک از این زمینه ها، پلتفرم وب در چند سال گذشته پیشرفت های چشمگیری داشته است. برای عملکرد CPU ما به یک استاندارد جدید عملکردی به نام WebAssembly دسترسی داریم. از جنبه گرافیکی، WebGL 1.0 پشتیبانی خوبی از مرورگرهای متقابل دارد و استانداردهای آینده مانند WebGPU پلتفرم وب را برای آینده ای قابل توسعه از برنامه نویسی گرافیکی مشابه Vulkan و Metal قرار می دهند. در نهایت، برای صدای وب، ما API رایج Web Audio و اخیراً Audio Worklet API را داریم.
اخیرا یونیتی پیش نمایش زمان اجرا جدیدی به نام Project Tiny را ارائه کرده است که بر ساخت بازی های دو بعدی برای پلتفرم های مبتنی بر HTML5 متمرکز شده است. Project Tiny یک طراحی ماژولار جدید را در ساختار موتور Unity اعمال می کند که به موتور هسته Unity این امکان را می دهد که اندازه آن کمتر از 1 مگابایت باشد.
از جنبه فنی، هرگز زمان بهتری برای توسعه بازی های تحت وب وجود نداشته است.
حلقه را وارد کنید
بدیهی است که یک بازی عالی بیشتر از عملکرد، گرافیک و صداگذاری خوب است – برای عالی بودن یک بازی باید سرگرم کننده باشد.
اندازه گیری لذت عنصری دشوار در یک محصول است. وقتی یک بازی به اندازه کافی سرگرم کننده، جالب یا نوآورانه باشد، کاربران می خواهند به دوستان خود بگویند - به عبارت دیگر، آنها می خواهند تجربه را به اشتراک بگذارند. بهره برداری از این فرصت و پیوند آن با وب، ترکیبی قدرتمند است که پتانسیل زیادی را برای رشد ویروسی باز می کند. و به ویژه در وب، بدون یک پلتفرم اکتشافی مرکزی، بهترین شرط ما برای جذب کاربران این است که مطمئن شویم بازیهای ما تا حد امکان ویروسی هستند.
توسعهدهندگان خوب بازی میدانند که برای سرمایهگذاری بر روی یک پلتفرم خاص – چه در سطح نرمافزاری یا سختافزاری – مهم است که ویژگیهای منحصربهفرد آن پلتفرم را در نظر بگیرید. برای مثال، اگر در حال ساخت یک بازی برای یک کنسول با کنترلهای حرکتی هستید، احتمالاً باید به بهترین راه برای پذیرش این کنترلهای حرکتی فکر کنید.
به عبارت دیگر، شما باید به انتظارات کاربران پلتفرمی که برای آن می سازید احترام بگذارید. کاربران وب چه انتظاراتی دارند؟ آنها انتظار دارند محتوای وب سریع بارگذاری شود و به سرعت تعامل داشته باشد. در صحبتهایم، چندین نمونه از روشها را پوشش دادم – چه در وب و چه خارج از وب – که بازیها برای بارگذاری سریع، جذب کاربران به دنیای بازیشان، درگیر کردن آن کاربران و ارائه انگیزههای اضافی برای کاربران برای به اشتراک گذاشتن تجربیاتشان طراحی شدهاند.
من شخصاً معتقدم که کلید ساخت یک بازی وب موفق، تکیه بر این ویژگی منحصر به فرد وب است. به طور خاص، قدرت ساختار URL وب و حلقه اشتراک گذاری که کاربران می توانند به آن بپیوندند.
در اینجا نمونهای از یک بازی وب است که من با استفاده از Construct 3 ساختهام که از URL به شیوهای سرگرمکننده و جذاب استفاده میکند.
Space Board یک بازی بسیار ساده است که هم بر روی موبایل با کنترل های لمسی یا روی دسکتاپ با ورودی صفحه کلید قابل اجرا است. هدف این است که در پیچ و خم از موانع برای رسیدن به یک هدف در پایان حرکت کنید.
چگونه Space Board از URL به شیوه ای منحصر به فرد استفاده می کند؟ با رمزگذاری ساختار سطح در خود URL. همه سطوح به عنوان یک شبکه 10 در 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/Desktop خود به عنوان مکانیزمی برای جذب بازیکنان خود و متقاعد کردن آنها برای دانلود باینری بزرگتر iOS/Android/Desktop خود استفاده کنید. سپس با پرداخت و صورتحساب داخلی پلتفرم iOS/Android/Desktop درآمد کسب می کنید.
کسب درآمد معمولاً ترکیبی از تبلیغات و تراکنشهای خرد است. برای رقابت وب با پلتفرم های موبایل در تبلیغات بازی، هنوز کار باید انجام شود. به عنوان مثال، قالبهایی مانند تبلیغات ویدیویی با پاداش چندین سال است که برای بازیهای موبایل بسیار محبوب بودهاند و با این حال ما اکنون شاهد استقرار این قالبها در شبکههای تبلیغاتی در وب هستیم.
با این وجود، توسعه دهندگان بازی وجود دارند که از طریق تبلیغات از طریق تبلیغات بنری سنتی و تبلیغات ویدیویی بینابینی همچنان در وب باز موفق هستند. برای اطلاعات بیشتر در مورد این قالب ها، به Adsense for Games نگاهی بیندازید.
برای تراکنشهای خرد، وب به دلیل تعداد نامحدودی از روشهای پرداخت قابل پیادهسازی، انعطافپذیری کاملی را ارائه میکند. با این حال این کیفیت یک شمشیر دو لبه است. جنبه منفی این موضوع این است که بازیکنان نسبت به وبسایت جدیدی که کشف میکنند، در مقابل آشنایی با روشهای پرداخت فروشگاه تلفن همراه مخصوص پلتفرم، اعتماد ضمنی کمتری دارند.
یکی از راه حل هایی که رابط کاربری پرداخت سازگار تری را به وب ارائه می کند، API درخواست پرداخت است. این API یک رابط کاربری را فراخوانی میکند که توسط مرورگر نشان داده میشود و کسب جزئیات پرداخت مانند کارتهای اعتباری و آدرسهای صورتحساب را ساده میکند. با این حال، به دست آوردن جزئیات پرداخت تنها اولین مرحله از انجام معامله است. شما به یک پلتفرم صورتحساب باطن نیز نیاز دارید.
آینده
ما در چند سال گذشته شاهد چندین بازی تحت وب موفق بوده ایم. Slither.io یک تجارت ترکیبی وب و پلتفرم خاص ایجاد کرده است که دسترسی فوق العاده و فرصت رشد ویروسی را که وب ارائه می دهد را نشان می دهد. پورتال هایی مانند Poki.com در تجربه کاربری خود نوآوری می کنند و هر روز بازی های جدیدی را منتشر می کنند که شامل عناوینی است که با همتایان موبایل خود مطابقت دارد، مانند Subway Surfers یا Crossy Road.
علاوه بر این، اگر به خارج از وب باز نگاه کنید، میتوانید ببینید که بازیهای وب در حال حاضر شروع به کار کردهاند. اکوسیستمهای بسته مانند WeChat و LINE بازیهای رضایتبخشی را ارائه میکنند که قابل پخش در وب باز نیستند، اما بر پایه فناوریهای وب مانند HTML5 و WebViews ساخته شدهاند. این نشانه واضحی است که وب به سطحی از وفاداری رسیده است که میتواند با بازیهای موبایل مخصوص پلتفرم رقابت کند – شاید نه در تعریف کتاب درسی از وفاداری، بلکه در معیار مهمتری: توجه بازیکن.