Web Pemutar yang Siap Pakai

Membuat game untuk web modern.

Tom Greenaway

Developer game yang baik tahu bahwa untuk memanfaatkan peluang platform tertentu, karakteristik unik platform itu penting untuk dirangkul. Jadi, apa karakteristik unik web? Dan apa definisi game web?

Di Google I/O 2019, saya mempresentasikan pendapat tentang kondisi ekosistem game web, praktik terbaik saat ini untuk pengembangan game web modern, dan arah industri. Dalam postingan blog ini, saya akan merangkum beberapa poin penting dari pembicaraan saya yang dapat Anda tonton lengkapnya di YouTube:

Tantangan game web

Sebelum bergabung dengan Google, saya membuat game seluler bernama Duet yang telah diunduh hampir 20 juta kali. Melalui pengalaman tersebut, saya belajar bahwa tiga elemen penting untuk membangun bisnis yang sukses dari game adalah:

  • Game fungsional
  • Pengguna
  • Cara untuk memonetisasi pengguna

Tanpa ketiga elemen ini, developer game tidak dapat berhasil. Saat ini, dua poin terakhir tersebut adalah yang paling penting. Ekosistem HTML5 tertutup seperti WeChat, Facebook Instant Games, dan lain-lain telah menunjukkan bahwa membuat game menggunakan HTML5 dapat dicapai.

Praktik terbaik modern

Yang dimaksud dengan "game fungsional" adalah tiga elemen paling inti yang membuat game berfungsi:

  • Performa
  • Visual
  • Audio

Dalam setiap area tersebut, platform web telah membuat langkah signifikan dalam beberapa tahun terakhir. Untuk performa CPU, kita memiliki akses ke standar baru berperforma tinggi yang disebut WebAssembly. Dari sisi grafis, WebGL 1.0 memiliki dukungan lintas browser yang baik, dan standar masa depan seperti WebGPU menempatkan platform web untuk masa depan pemrograman grafis yang dapat diperluas yang serupa dengan Vulkan dan Metal. Terakhir, untuk audio web, kami memiliki Web Audio API umum dan yang terbaru adalah Audio Worklet API.

Baru-baru ini, Unity melihat pratinjau runtime baru bernama Project Kecil yang berfokus pada pembuatan game 2D untuk platform berbasis HTML5. Project Kecil menerapkan desain modular baru pada struktur mesin Unity sehingga memungkinkan mesin inti Unity berukuran di bawah 1 megabyte.

Dua Tank sedang bertempur.
Demo Tank Unity diekspor melalui HTML5.

Dari sisi teknis, sekarang adalah waktu yang tepat untuk mulai menggunakan pengembangan game web.

Masukkan loop

Game yang hebat jelas lebih dari sekadar performa, grafis, dan suara yang bagus. Agar menjadi game yang hebat, game harus menyenangkan.

Kesenangan adalah elemen yang sulit untuk diukur dalam suatu produk. Apabila sebuah game menyenangkan, menarik, atau cukup inovatif, pengguna pasti ingin memberi tahu teman-teman mereka–dengan kata lain, mereka ingin berbagi pengalaman. Memanfaatkan peluang ini dan menggabungkannya dengan web adalah kombinasi kuat yang membuka banyak potensi untuk pertumbuhan viral. Dan khususnya di web, tanpa platform penemuan terpusat, cara terbaik kami untuk mendapatkan pengguna adalah memastikan game kami se viral mungkin.

Developer game yang baik tahu bahwa untuk memanfaatkan platform tertentu, baik di tingkat software maupun hardware, sangatlah penting untuk merangkul karakteristik unik platform tersebut. Misalnya, jika Anda membuat game untuk konsol dengan kontrol gerakan, Anda mungkin harus memikirkan cara terbaik untuk menggunakan kontrol gerakan tersebut.

Dengan kata lain, Anda harus menghormati ekspektasi pengguna platform yang Anda buat. Apa yang diharapkan pengguna web? Mereka berharap konten web dimuat dengan cepat dan bersifat interaktif dengan cepat. Dalam diskusi saya, saya membahas beberapa contoh cara baik di dalam maupun di luar web, di mana game dirancang untuk dimuat dengan cepat, menarik pengguna ke dunia game mereka, melibatkan pengguna tersebut, dan memberikan insentif tambahan kepada pengguna untuk membagikan pengalaman mereka.

Tiga game dengan gaya seni minimalis.

Saya pribadi percaya bahwa kunci untuk membuat game web yang sukses adalah dengan memanfaatkan karakteristik web yang unik ini. Secara khusus, kekuatan struktur URL web dan loop berbagi tempat pengguna dapat bergabung.

Berikut ini contoh game web yang saya buat menggunakan Konstruksi 3 yang memanfaatkan URL dengan cara yang menyenangkan dan menarik.

Antarmuka editor level untuk game.

Space Board adalah game sangat sederhana yang dapat dimainkan di perangkat seluler dengan kontrol sentuh atau di desktop dengan input keyboard. Tujuannya adalah menavigasi labirin rintangan untuk mencapai sasaran di akhir.

Bagaimana cara Space Board memanfaatkan URL dengan cara yang unik? Dengan mengenkode struktur level ke dalam URL itu sendiri. Semua level didefinisikan sebagai petak objek berukuran 10 kali 10–misalnya, dinding, menara musuh, kunci, pintu yang terkunci, dll. Kemudian, URL akan mencantumkan semua posisi petak individu dan kontennya. Dinding diwakili oleh karakter W. Spasi kosong adalah karakter garis bawah.

Berikut contohnya:

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

Hasil ini jelek tapi sudah berfungsi.

Setelah menyelesaikan level di Space Board, pemain berkesempatan mendesain levelnya sendiri menggunakan editor level sederhana yang ditampilkan di atas. Dengan memungkinkan pemain mendesain level mereka sendiri, kami memberi mereka kesempatan untuk personalisasi. Ketika pengguna merasakan hubungan dengan game dan rasa memiliki melalui pembuatan dan penyesuaian, mereka cenderung ingin berbagi 'hal' itu dengan dunia.

Keinginan untuk berbagi game merupakan awal dari loop viral yang ingin kami capai dengan game web kami. Mekanisme berbagi dan desain game ini hanyalah salah satu contoh yang mungkin, tetapi masih ada banyak kemungkinan lainnya. Saya mendorong Anda untuk menonton video saya untuk mengetahui contoh-contohnya.

Laba atas investasi

Saat ini, terdapat dua pemikiran terkait cara developer game dapat menghasilkan pendapatan melalui game web:

  • Memonetisasi game secara langsung
  • Memperlakukan mereka sebagai saluran akuisisi

Memperlakukan game web sebagai saluran akuisisi berarti memanfaatkan versi web game iOS/Android/desktop sebagai mekanisme untuk membuat pemain tertarik dan meyakinkan mereka untuk mendownload biner iOS/Android/desktop yang lebih besar. Selanjutnya, Anda akan menghasilkan pendapatan dengan backend pembayaran dan penagihan bawaan platform iOS/Android/desktop.

Monetisasi biasanya berupa campuran iklan dan transaksi mikro. Masih ada pekerjaan yang harus dilakukan agar web dapat bersaing dengan platform seluler dalam iklan game. Misalnya, format seperti Iklan Video Reward telah sangat populer untuk game seluler selama beberapa tahun, tetapi sekarang kami hanya melihat jaringan iklan menerapkan format ini di web.

Meskipun demikian, ada developer game yang terus sukses di web terbuka melalui iklan melalui iklan banner tradisional dan iklan video interstisial. Lihat AdSense untuk Game untuk informasi selengkapnya tentang format ini.

Untuk transaksi mikro, web menawarkan fleksibilitas penuh karena banyaknya metode pembayaran yang dapat diterapkan. Namun, kualitas ini adalah pedang bermata dua. Sisi negatif dari hal ini adalah pemain memiliki kepercayaan yang kurang implisit terhadap situs baru yang mereka temukan dibandingkan dengan biasanya metode pembayaran toko seluler khusus platform.

Salah satu solusi yang menghadirkan UI pembayaran yang lebih konsisten ke web adalah Payment Request API. API ini memanggil UI yang ditampilkan oleh browser dan menyederhanakan perolehan detail pembayaran seperti kartu kredit dan alamat penagihan. Namun, mendapatkan detail pembayaran hanyalah langkah pertama dalam melakukan transaksi. Anda juga memerlukan platform penagihan backend.

Acara mendatang

Kami telah melihat beberapa game web yang mengejutkan sukses selama beberapa tahun terakhir. Slither.io telah membangun beragam bisnis khusus web dan platform yang menunjukkan jangkauan yang luar biasa dan peluang pertumbuhan viral yang ditawarkan web. Portal seperti Poki.com berinovasi dalam pengalaman pengguna dan merilis game baru setiap hari, termasuk judul yang cocok dengan game sejenis di perangkat seluler, seperti Subway Surfers atau Crossy Road.

Selain itu, jika Anda melihat ke luar web terbuka, Anda dapat melihat bahwa game web sudah berkembang pesat. Ekosistem tertutup seperti WeChat dan LINE menawarkan game yang memuaskan yang tidak dapat dimainkan di web terbuka tetapi dibuat di atas teknologi web seperti HTML5 dan WebViews. Hal ini merupakan tanda yang jelas bahwa web telah mencapai tingkat fidelitas yang mampu menyaingi game seluler khusus platform–mungkin bukan dalam definisi buku pelajaran tentang fidelitas, tetapi dalam metrik yang lebih penting: perhatian pemain.