Simpan di cloud

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

Untuk memenuhi pedoman pengalaman pengguna Level Up Google Play Game, game Anda harus menerapkan solusi simpan di cloud yang memiliki dua bagian:

  1. Simpan di Cloud

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

  2. Resolusi konflik untuk beberapa status game

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

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

Akun tamu

Saat pemain di akun tamu login dan menautkan ke ID Pemain dengan progres yang disimpan di cloud, game Anda mungkin tidak sengaja menimpa data historis yang signifikan. Jika pemain memiliki akun tamu lokal dengan progres yang signifikan dan cadangan cloud dari Akun Dalam Game (IGA) yang terakhir dimainkan dan ditautkan ke Layanan game Play, game Anda tidak boleh otomatis menimpa data lokal. Sebagai gantinya, minta pemain untuk memilih antara kedua status tersebut.

Dengan mempertimbangkan hal ini, Anda memiliki dua opsi:

  • Opsi 1: Pertahankan alur saat ini saat progres cloud dipulihkan. Pesan peringatan akan ditampilkan untuk menunjukkan bahwa akun yang ada terdeteksi, dan progresnya akan digunakan.
  • Opsi 2 (Direkomendasikan): Tampilkan pesan yang memberi tahu pemain bahwa akun yang ada dengan progres terdeteksi. Menautkan akun tamu akan mengganti progres cloud dengan progres tamu saat ini. Pesan yang ditampilkan untuk progres lokal dan yang disimpan di cloud sehingga pemain dapat membuat keputusan yang tepat.
Alur penyelesaian konflik antara progres akun Tamu dan Cloud Save
Alur resolusi konflik antara Simpan di Cloud dan progres akun Tamu.

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 keunggulan utama bagi pemain dan developer:

  • Sinkronkan data game di beberapa perangkat. Misalnya, pemain dapat memulai game di ponsel Android dan melanjutkan bermain di tablet tanpa kehilangan progres.
  • Pastikan persistensi data. Pemain dapat melanjutkan game meskipun perangkatnya hilang, rusak, 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 batasan ukuran file size sehingga tidak ada persyaratan untuk membatasi pemain ke satu file simpan.

Resolusi 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.

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".

Batas ukuran

Anda tidak dikenai biaya untuk data game tersimpan di Google Cloud, tetapi setiap file game tersimpan memiliki ukuran maksimum 3 MB.

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.

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: