Simpan di cloud

Pemain bermain di beberapa perangkat dan menginstal game di perangkat yang sama beberapa kali. Akibatnya, mereka harus selalu memulai game dari status progres terakhir. Untuk mencapainya, Anda harus menerapkan solusi penyimpanan di cloud dalam game Anda.

Untuk memenuhi pedoman pengalaman pengguna Program Developer Game, game Anda harus menerapkan solusi penyimpanan di cloud yang memiliki dua bagian:

  1. Penyimpanan Cloud

    Simpan status game pemain Anda ke cloud. Ambil saat mereka memulai game. Game Tersimpan Layanan game Play menyediakan layanan untuk hal ini, tetapi Anda dapat menggunakan solusi simpan di cloud pilihan Anda.

  2. Penyelesaian konflik untuk beberapa status game

    Jika pengguna memiliki beberapa akun atau jika ada konflik antara data game tersimpan di perangkat dan di cloud, Anda memerlukan kebijakan penyelesaian konflik. Biasanya, pengguna memutuskan cara menyelesaikan konflik ini. Kebijakan penyelesaian konflik Anda harus menangani skenario utama berikut:

    • Beberapa akun per pengguna: Menangani instance saat satu pengguna berinteraksi dengan aplikasi menggunakan akun yang berbeda.
    • Konflik status: Atasi perbedaan yang muncul antara status game lokal dan status game yang disimpan di cloud.

Game tersimpan

Layanan Game Tersimpan memberi Anda cara mudah untuk menyimpan progres game pemain ke server Google. Game Anda dapat mengambil data game tersimpan agar pemain yang kembali dapat melanjutkan game pada titik simpan terakhir mereka dari perangkat apa pun.

Layanan ini menawarkan beberapa keuntungan utama bagi pemain dan developer:

  • Menyinkronkan data game di beberapa perangkat. Misalnya, pemain dapat memulai game di ponsel Android dan melanjutkan bermain di tablet dengan lancar tanpa kehilangan progres.
  • Memastikan persistensi data. Pemain dapat melanjutkan game mereka meskipun perangkat mereka hilang, dihancurkan, atau ditukartambah dengan model yang lebih baru.

Untuk mempelajari cara mengimplementasikan game tersimpan untuk platform Anda, lihat Implementasi klien.

Dasar-dasar Game Tersimpan

Game tersimpan terdiri dari dua bagian:

  • Blob biner tidak terstruktur - data ini dapat mewakili apa pun yang Anda pilih, dan game Anda bertanggung jawab untuk mengurai dan menulis ke blob biner.
  • Metadata terstruktur - properti tambahan yang terkait dengan data biner yang memungkinkan Layanan game Google Play menampilkan Game Tersimpan secara visual di antarmuka pengguna (UI) daftar Game Tersimpan default, dan menampilkan informasi yang berguna di Aplikasi Google Play Game (misalnya, stempel waktu terakhir diperbarui).

Game dapat menulis berapa pun Game Tersimpan untuk single player sesuai kuota pengguna sehingga tidak ada persyaratan yang sulit untuk membatasi pemain ke satu file simpan.

Gambar sampul

Layanan Game Tersimpan memberikan pengalaman pengguna visual selain fitur persistensi. Sebaiknya kaitkan gambar representasi dengan file penyimpanan yang sesuai. Jika Anda menggunakan antarmuka pengguna (UI) Game Tersimpan default yang disediakan oleh SDK Play Game dalam game, UI akan menampilkan gambar sampul ini. Gambar sampul juga dapat muncul di aplikasi Google Play Game.

Deskripsi

Anda dapat memberikan deskripsi teks singkat tentang konten game tersimpan tertentu. Deskripsi ini akan ditampilkan langsung kepada pemain dan harus merangkum status yang diwakili oleh game tersimpan; misalnya, "Memerangi Goblin di Hutan Gelap".

Kuota

Developer tidak dikenai biaya untuk data game tersimpan apa pun yang disimpan di cloud. Sebaliknya, data ini diperhitungkan dalam kuota Google Drive pemain - Anda tidak perlu khawatir. Satu-satunya kuota yang perlu diperhatikan developer game adalah kuota Google Drive API.

Isolasi Baca Tulis

Semua Game Tersimpan disimpan di Folder Data Aplikasi Google Drive pemain. Folder ini hanya dapat dibaca dan ditulis oleh game Anda. Folder tidak dapat dilihat atau diubah oleh game developer lain, sehingga Anda memiliki perlindungan tambahan terhadap kerusakan data. Selain itu, Game Tersimpan diisolasi dari gangguan langsung yang dilakukan pemain sehingga mereka tidak dapat mengubah setiap Game Tersimpan.

Dukungan offline

Game Anda masih dapat membaca dan menulis ke game tersimpan saat perangkat pemain sedang offline, tetapi tidak akan dapat disinkronkan dengan Layanan game Google Play hingga koneksi jaringan dibuat. Setelah terhubung kembali, Layanan game Google Play akan memperbarui data game tersimpan secara asinkron di server Google.

Penyelesaian konflik

Saat menggunakan layanan Game Tersimpan, game Anda dapat mengalami konflik saat mencoba menyimpan data. Konflik ini dapat terjadi jika pengguna menjalankan lebih dari satu instance aplikasi di perangkat atau komputer yang berbeda. Aplikasi Anda harus dapat mengatasi konflik ini dengan cara yang dapat memberikan pengalaman pengguna terbaik.

Biasanya, konflik data terjadi saat instance aplikasi Anda tidak dapat menjangkau layanan Game Tersimpan saat mencoba memuat data atau menyimpannya. Secara umum, cara terbaik untuk menghindari konflik data adalah selalu memuat data terbaru dari layanan saat aplikasi dimulai atau dilanjutkan, dan menyimpan data ke layanan dengan frekuensi yang wajar. Namun, konflik data tidak selalu dapat dihindari. Aplikasi Anda harus berusaha semaksimal mungkin menangani konflik sehingga data pengguna Anda tetap dipertahankan dan mereka mendapatkan pengalaman yang baik.

Batas

Layanan game Google Play menerapkan batas ukuran pada data biner dan ukuran gambar sampul masing-masing sebesar 3 MB dan 800 KB.

Metadata game tersimpan

Metadata terstruktur untuk game tersimpan berisi properti berikut:

Properti Deskripsi
ID String unik yang dibuat oleh Layanan game Google Play untuk game tersimpan ini. Gunakan ID ini untuk merujuk ke game tersimpan di klien game Anda.
Nama Nama pendek yang disediakan developer untuk game tersimpan, misalnya "Save slot 1" atau "PlayerName_Save1". Nama ini tidak ditampilkan kepada pemain.
Deskripsi Deskripsi yang diberikan developer tentang game tersimpan.
Terakhir diubah Stempel waktu dalam milidetik yang dihasilkan oleh Layanan game Google Play saat game terakhir kali diupdate.
Waktu pemutaran

Waktu yang disediakan oleh developer (dalam milidetik) untuk ditampilkan di game tersimpan. Nilai ini harus mewakili berapa lama pemain telah memainkan game tersimpan terkait.

Misalnya, nilai waktu bermain 3600000 akan ditampilkan oleh Layanan game Google Play sebagai "1 jam".

Gambar sampul Ini adalah properti opsional yang disediakan developer yang berisi informasi tentang gambar sampul.

Implementasi klien

Untuk mempelajari cara mengimplementasikan game tersimpan untuk platform Anda, lihat referensi berikut: