The Web Games on Facebook and Facebook Gameroom platforms are no longer available for new submissions. This documentation is intended solely for developers with existing games. To learn more, read our blog post.
Game di Facebook di-hosting sebagai portal, konten game sebenarnya di-hosting dari server web Anda sendiri. Dengan mengonfigurasi URL Game Web Facebook, Anda dapat menyediakan game Anda di Facebook.com, yang akan memunculkannya di dalam iframe. Di Facebook, Anda dapat memaksimalkan Pusat Aplikasi dan rekomendasi game agar konten Anda mudah ditemukan, dan menggunakan fitur sosial dari platform Facebook agar game Anda menjadi lebih sosial lagi.
Di pengaturan aplikasi Anda, ada kolom untuk URL Game Web Facebook. Kolom ini mengonfigurasi iframe yang dimuat ketika pemain memuat game Anda. Dengan demikian, Anda memiliki kendali penuh atas game, dan Anda bebas memperbarui versi serta konten pada siklus rilis Anda sendiri. Lihat Pengaturan Aplikasi di sini.
Ketika pemain di Facebook.com memuat game Anda, Facebook akan membuat permintaan HTTP POST
ke URL Game Web Facebook yang disediakan di Pengaturan Aplikasi. Tanggapan terhadap permintaan ini harus berupa tanggapan HTML lengkap yang berisi klien game Anda. Anda dapat menggunakan Facebook SDK untuk JavaScript untuk mengautentikasi pengguna, berinteraksi dengan bingkai, dan mengakses dialog dalam game, jadi pastikan untuk menyertakannya dalam HTML game Anda. Lihat di sini untuk informasi lebih lanjut tentang Login untuk Game di Facebook.
Permintaan HTTP POST yang Anda buat ke URL Game Web Facebook akan berisi parameter tambahan, termasuk parameter signed_request
yang berisi identitas Facebook pemain jika mereka telah memberikan izin dasar ke aplikasi Anda. Jika pemain tersebut adalah pemain baru, nilai parameter signed_request
akan berguna untuk memvalidasi bahwa permintaan ini memang berasal dari Facebook. Baca selengkapnya tentang permintaan yang ditandatangani di panduan Masuk untuk Game di Facebook.
HTTPS diperlukan saat menelusuri Facebook.com, dan persyaratan ini juga berlaku untuk konten game. Oleh karena itu, sertifikat SSL yang valid diperlukan saat menyajikan konten game Anda. Ketika Anda mengonfigurasi server web untuk meng-hosting game, Anda harus memastikan bahwa game tersebut berada di domain yang valid yang Anda miliki, dan bahwa Anda memiliki sertifikat SSL yang valid untuk domain ini.
Anda dapat meneruskan parameter khusus milik Anda sendiri ke kueri peluncuran game. Hal ini berguna untuk melacak kinerja OG Stories, situs rujukan, atau untuk melacak kinerja tautan bersama.
Ada dua cara untuk mencapai hal ini:
URL untuk game Facebook Anda akan selalu https://apps.facebook.com/{namespace}/. Saat menyediakan tautan promosi, baik dari Halaman Aplikasi Anda atau tempat lain di internet, Anda dapat melampirkan parameter kueri di sini. Misalnya
https://apps.facebook.com/{namespace}/?source=mysourceid
Parameter kueri ini akan disimpan pada peluncuran game, dan diteruskan ke server Anda selain signed_request.
Anda juga dapat berbagi tautan yang membawa pemain langsung ke bagian game Anda. Jika Anda menggunakan PHP atau memiliki skrip peluncuran, mengarahkan pemain ke area game di luar alur standar dapat membantu Anda. Jalur lengkap akan disimpan dalam permintaan ke server Anda. Misalnya, jika Anda membagikan tautan ke
https://apps.facebook.com/{namespace}/special_launch.php
Facebook akan membuat permintaan ke
https://{your_web_games_url}/special_launch.php
saat memuat iframe untuk game Anda.
Saat pemain meluncurkan game Anda di Facebook, sebuah parameter kueri signed_request
ditambahkan pada permintaan HTTP ke server Anda. signed_request
ini dapat didekode untuk menyediakan informasi pengguna, dan tanda tangan untuk memverifikasi keamanan serta keaslian data ini. Anda dapat mem-parsing parameter seperti ini:
238fsdfsd.oijdoifjsidf899
)Jika tidak ada kolom user_id
, maka pemain belum memberikan izin public_profile untuk game Anda.
Jika Anda mem-parsing signed_request
dan menemukan bahwa pemain tersebut masih baru dan belum memberikan izin dasar untuk game, Anda dapat meminta izin ini saat game dimuat, melalui Javascript SDK.
FB.login(function(response){ // Handle the response });
Anda bisa meminta izin lainnya, seperti email
, dengan menambahkannya sebagai parameter kedua.
FB.login(function(response) { // Handle the response }, {scope: 'email'});
Informasi penting lainnya dalam payload ini adalah pengaturan usia dan preferensi locale untuk pemain. Lihat Login untuk Game di Facebook untuk informasi lebih lanjut.
Ketika Anda mengembangkan game, Anda mungkin ingin meng-hosting-nya di server web yang berjalan di mesin lokal untuk mempercepat siklus edit-kompilasi-tes. Cara yang paling umum untuk melakukannya adalah dengan menyiapkan tumpukan server seperti XAMPP. Anda juga perlu membuat dan menginstal sertifikat SSL lokal sehingga server ini mendukung HTTPS.
Setelah Anda siap untuk meluncurkan game, Anda harus mengatur hosting pada server web yang dapat diakses publik.
Seiring dengan pertumbuhan traffic, Anda mungkin perlu mempertimbangkan untuk menggunakan jaringan pengiriman konten (CDN) seperti Akamai atau CDNetworks untuk mengurangi biaya hosting Anda dan meningkatkan kinerja. CDN bekerja dengan melakukan caching konten game Anda di berbagai lokasi di internet. Hal ini berarti pemain akan mengirimkan aset game ke klien mereka dari lokasi yang lebih dekat. Para pemain Anda dapat memuat game lebih cepat, dan server Anda terlindungi dari traffic yang berlebihan.