Checklist Kualitas untuk Layanan game Google Play

Kualitas game Anda memengaruhi kesuksesan jangka panjang game tersebut -- dari segi jumlah penginstalan, ulasan dan rating pemain, engagement, dan retensi pemain. Sebelum memublikasikan game, penting untuk memastikan bahwa game Anda memenuhi ekspektasi dasar pemain game melalui fitur yang menarik dan UI yang intuitif dan didesain dengan baik.

Dokumen ini membantu Anda berfokus pada aspek utama kualitas, set fitur, dan UI yang dapat memiliki dampak signifikan terhadap kesuksesan game Anda. Setiap area fokus disajikan dengan checklist persyaratan minimum, praktik terbaik, dan penyempurnaan yang disarankan. Sebagai upaya memberikan produk terbaik kepada pemain, ikuti rekomendasi checklist semaksimal mungkin.

1. Login

Tugas checklist berikut berlaku pada penerapan fungsionalitas login pemain dalam game Anda. Pelajari lebih lanjut cara kerja login dan cara menerapkannya dalam Konsep login. Untuk contoh kode terkait cara menerapkan fungsionalitas login di game seluler, lihat Menerapkan Login di Android.

ID Tingkat Kepentingan Deskripsi
1.1 Wajib Buat pemain login dengan layanan game Google Play.
1.1.1. Buat pemain login secara otomatis saat game diluncurkan; gunakan login manual sebagai cadangan

Game harus menerapkan login senyap untuk membantu pemain mendapatkan autentikasi dengan cepat dan diberi otorisasi untuk menggunakan rangkaian fitur lengkap yang disediakan oleh layanan game Google Play. Jika login otomatis gagal, aplikasi Anda akan meminta pemain untuk login secara interaktif. Dengan login manual, pemain dapat memilih untuk login ke game dan Play Game akan memastikan profilnya dikonfigurasi dengan benar untuk digunakan dalam game Anda. Menggabungkan login otomatis dan interaktif menghasilkan rasio login tertinggi dengan friksi pengguna yang minimal.

Jika pemain memilih untuk tidak login, ingatlah hal ini dan jangan meminta pemain lagi. Sebagai gantinya, sediakan tombol login. Tombol login harus mudah ditemukan oleh pemain; misalnya, tombol harus dapat diakses dari layar utama Anda atau terletak di layar Setelan. Tombol ini tidak boleh tersembunyi beberapa tingkat di dalam menu game. Terus coba membuat pemain login secara otomatis setiap kali mereka memulai game Anda. Mereka dapat mengubah preferensi dan login secara otomatis.

1,2 Wajib Jangan meminta cakupan non-Play Game saat membuat klien login. Dengan demikian, pemain dapat otomatis login ke game Anda, karena meminta cakupan non-Play Game akan memaksa pengguna untuk login secara interaktif.

Jika Anda sudah meminta cakupan non-Play Game, hapus cakupan yang tidak diperlukan dari konstruksi GoogleSignInOptions beserta API yang tidak lagi digunakan. Jika Anda perlu meminta cakupan lain (misalnya, jika Anda ingin melihat email pengguna untuk tujuan pemasaran), lakukan pada waktu yang relevan dan bukan sebagai bagian dari proses login.

// This is the proper way to do it
GoogleSignInOptions signInOption = GoogleSignInOptions.DEFAULT_GAMES_SIGN_IN;
1,3 Wajib Izinkan pemain tetap login.

Setelah pemain berhasil login ke game Anda, hubungkan mereka secara otomatis setiap kali game dimulai, hingga pemain logout secara eksplisit.

1,4 Wajib Tampilkan pop-up 'Menghubungkan ke' dengan tepat selama login.

Di perangkat Android, pop-up 'Menghubungkan' Google Play Game harus ditampilkan setiap kali alur login dipanggil. Hal ini mengharuskan Anda memanggil metode setViewForPopups() dari class GamesClient. Pastikan pop-up ini ditampilkan saat Anda membuat pemain login secara otomatis di awal game Anda. Hal ini memungkinkan pemain mengetahui bahwa mereka login ke game dengan benar.

Contoh berikut menunjukkan tampilan pop-up 'Menghubungkan ke' dalam game Android selama proses login, diikuti dengan animasi singkat logo Layanan game Google Play.

Screeshot menampilkan pop-up 'Menghubungkan ke'.
1,5 Wajib Berikan opsi logout kepada pemain.

Setelah login, pemain harus selalu memiliki opsi untuk logout.

Pertimbangkan untuk menyediakan tombol logout pada layar game yang relevan di aplikasi Anda (misalnya, di layar Setelan pemain).

1,6 Praktik terbaik Ingat jika pemain menolak login.

Jika pemain menolak login saat game memulai alur login untuk pertama kalinya (misalnya jika pemain mengklik Batal pada UI login), Anda harus tetap mengizinkan pemain tersebut untuk melanjutkan gameplay.

Saat pemain meluncurkan game Anda lagi, jangan panggil alur login interaktif secara otomatis. Pemain ini dapat memilih untuk login nanti menggunakan tombol Login yang harus ada di sistem Setelan. Dengan demikian, pemain tidak perlu menolak login berulang kali setiap kali memulai game Anda.

Satu pengecualian adalah jika pemain mencoba mengakses fitur gameplay yang bergantung pada proses login (misalnya, mengirimkan skor ke papan peringkat). Dalam hal ini, minta pengguna untuk login sebelum melanjutkan gameplay.

1,7 Praktik terbaik Maksimalkan jumlah pemain yang login.

Memiliki lebih banyak pemain yang login ke layanan game Google Play akan menguntungkan pemain Anda dengan meningkatkan peluang untuk gameplay yang kolaboratif dan kompetitif. Untuk memaksimalkan jumlah pemain yang login ke layanan game Google Play, Anda disarankan untuk otomatis meminta pemain agar login, seperti yang dijelaskan di atas.

Jika tidak, arahkan pemain ke alur login sesegera mungkin dari salah satu titik berikut (yang paling direkomendasikan terlebih dahulu):

  • Segera setelah game Anda dimulai.
  • Segera setelah pengalaman pengantar, seperti cutscene atau tutorial.
  • Saat pemain mengklik tombol login dengan Google di mana pun dalam game Anda.
1.8 Disarankan Ikuti pedoman branding Google.

Untuk memberi pemain pengalaman menyeluruh yang menarik dan konsisten, terapkan pedoman branding layanan game Google Play.

1.9 Disarankan Ingatkan pemain bahwa mereka telah login.

Berikan pengingat atau petunjuk yang sesuai kepada pemain yang telah login saat game menjalankan tindakan atas nama mereka. Misalnya, saat pemain menyelesaikan level, Anda dapat menampilkan pesan seperti ini untuk menunjukkan bahwa skor dan pencapaian pemain tersebut otomatis diupload: "Anda login dengan Google. Pencapaian dan skor Anda akan otomatis disimpan."

1,10 Wajib Cadangkan progres pemain menggunakan ID Layanan game Play.

Untuk memastikan pemain tidak kehilangan progresnya saat beralih atau mereset perangkat, atau jika bermain di beberapa perangkat, pastikan progres mereka telah dicadangkan ke solusi Simpan di Cloud, dan gunakan ID Layanan game Play sebagai kunci, jika menggunakan server game backend Anda sendiri dengan aman. Saat pemain login dengan ID Layanan game Play, periksa apakah ada progres untuk akun tersebut dan jika ya, izinkan pemain melanjutkan bermain game. Anda dapat menggunakan solusi simpan di cloud Anda sendiri atau Game Tersimpan Layanan game Play.

Jika pengguna tidak login, cobalah untuk mempertahankan progres pemain secara lokal, lalu sinkronkan progres tersebut saat pemain login nantinya. Hal ini agar pemain tidak kehilangan progres jika mereka menunda login ke game Anda.

2. Pencapaian

Tugas checklist berikut berlaku pada penerapan fitur Pencapaian dalam game Anda.

ID Tingkat Kepentingan Deskripsi
2.1 Wajib Pastikan semua pencapaian dapat dicapai.

Pemain harus dapat membuka semua pencapaian yang Anda buat.

2.2 Praktik terbaik Tampilkan pencapaian secara menonjol.

Semua gambar, teks, dan deskripsi di semua pencapaian harus unik.

2.3 Praktik terbaik Berikan skor pencapaian secara proporsional.

Poin pencapaian harus sebanding dengan jumlah waktu atau keahlian yang diperlukan untuk mendapatkan pencapaian tersebut.

2.4 Praktik terbaik Desain pencapaian untuk berbagai tingkat kesulitan.

Sertakan beberapa pencapaian mudah yang dapat diperoleh pemain melalui alur game biasa, beberapa pencapaian dengan tingkat kesulitan menengah yang dapat diperoleh dengan keterampilan atau keuletan pemain, dan satu atau dua pencapaian yang sangat sulit diperoleh untuk pemain yang paling ulet.

Misalnya, screenshot berikut menampilkan pencapaian dengan tingkat kesulitan tinggi yang membantu memotivasi dan mempertahankan penggemar game tersebut.

pencapaian sulit diperoleh yang mengharuskan 5.000 berlian
2.5 Disarankan Jangan berikan terlalu banyak pencapaian di awal.

Hindari memberikan lebih dari satu pencapaian dalam 5 menit pertama gameplay, karena pemain yang baru memainkan game Anda tidak akan memiliki investasi yang cukup untuk peduli.

Jangan menetapkan pencapaian sehingga tidak sengaja diberikan terlalu awal dalam gameplay. Misalnya, perhatikan pencapaian yang mungkin akan mudah diperoleh di awal game, seperti "Menyelesaikan level tanpa merusak".

2.6 Disarankan Tetapkan pencapaian untuk aktivitas dalam game yang menarik.

Pilih metrik pencapaian yang menjadikan game Anda lebih menarik dan menantang untuk dimainkan ulang (misalnya, metrik “jumlah zombie yang dibunuh” lebih menarik dibanding “jumlah kilometer yang ditempuh karakter Anda”).

2.7 Disarankan Gunakan ikon berwarna untuk pencapaian.

Layanan game Google Play menggunakan ikon pencapaian versi hitam putih untuk menunjukkan apakah pencapaian berhasil diperoleh atau tidak. Jika Anda hanya diperbolehkan untuk menggunakan ikon pencapaian hitam saja (atau putih saja), tampilkan ikon dengan latar belakang berwarna.

2.8 Disarankan Minimalkan penggunaan pencapaian tersembunyi.

Pencapaian tersembunyi hanya boleh digunakan untuk menghindari spoiler dalam game; pencapaian tersebut sebaiknya jangan dijadikan standar.

2.9 Disarankan Hindari pencapaian yang terlalu mengandalkan peluang kemungkinan.

"Temukan 100 peti harta karun" adalah pencapaian yang lebih baik daripada "Temukan item yang memiliki 1% peluang untuk muncul di peti harta karun".

2,10 Disarankan Berpikirlah seperti 'Pemburu Pencapaian'.

Beberapa pemain akan mencoba mendapatkan setiap pencapaian yang Anda buat. Coba berikan pencapaian yang sesuai dengan kategori pemain ini. Hindari membuat pencapaian yang terlalu mengandalkan elemen di luar kontrol pemain, atau tidak dapat diperoleh setelah pemain membuat keputusan dalam game.

2,11 Disarankan Pastikan ikon pencapaian muncul dengan tepat.

Saat ditampilkan dalam toast Android, ikon pencapaian akan ditempatkan dalam lingkaran dan sudut-sudut luarnya tersembunyi. Pastikan ikon Anda masih terlihat bagus dalam kondisi ini.

3. Papan peringkat

Tugas checklist berikut berlaku pada penerapan fitur Papan Peringkat dalam game Anda.

ID Tingkat Kepentingan Deskripsi
3.1 Praktik terbaik Buat papan peringkat terlihat di menu utama dan setelah transisi penting.

Papan peringkat harus bisa diakses dengan mudah saat pemuatan game. Setelah transisi penting dalam game (misalnya pada akhir level atau saat pemain mati), pemain harus segera melihat link ke papan peringkat yang relevan.

3.2 Praktik terbaik Tetapkan batas atas untuk skor yang dapat dikirimkan.

Jika memungkinkan, tambahkan batas saat menentukan papan peringkat sehingga skor yang jelas-jelas palsu akan dihapus.

3.3 Praktik terbaik Gunakan ikon khusus.

Buat ikon khusus untuk setiap papan peringkat yang Anda tentukan; jangan hanya menggunakan ikon game, karena ikon tersebut akan ditampilkan dengan buruk di aplikasi Google Play Game.

3.4 Praktik terbaik Pertahankan agar frekuensi pengiriman skor tetap masuk akal.

Kirim skor setelah transisi penting dalam game, seperti pada akhir level atau saat karakter game pemain mati. Untuk game tanpa transisi penting (misalnya jenis game "berlari tanpa henti"), gunakan penilaian yang baik terkait frekuensi pengiriman skor. Skor tidak boleh dikirim secara terus-menerus atau setiap detik.

3,5 Disarankan Manfaatkan scoretag.

Skor tag adalah bit data tambahan yang dapat dikirim dengan pengiriman skor Anda. Misalnya, Anda dapat menerapkan scoretag sebagai tanda untuk mengonfirmasi bahwa skor yang dikirimkan oleh pemain adalah valid.

Papan peringkat kustom juga dapat membaca data tag ini. Misalnya, jika skortag terdiri dari ID untuk video YouTube yang berisi gameplay pemain tersebut, game Anda dapat membuat link untuk melihat video tersebut dalam papan peringkat.

3.6 Disarankan Desain UI papan peringkat dengan kreatif

Jika Anda memiliki resource, buat tampilan papan peringkat kustom Anda sendiri di atas data papan peringkat sosial. Papan peringkat sosial biasanya bisa menciptakan pengalaman pengguna yang lebih menarik daripada papan peringkat publik biasa. Periksa terlebih dahulu untuk mengetahui apakah ada entri di papan peringkat sosial. Jika tidak, gunakan papan peringkat publik sebagai gantinya.

3,7 Disarankan Tampilkan kepada pemain posisi mereka dalam kompetisi.

API papan peringkat memungkinkan Anda menampilkan beberapa jendela skor (misalnya peringkat seorang pemain di +/-10 tempat). Jika Anda membuat tampilan kustom, ini bisa menjadi cara efektif untuk memotivasi engagement pemain. Posisi pemain bisa ditampilkan tepat setelah transisi penting dalam game (misalnya pada akhir level atau saat karakter game yang dijalankan pemain mati). Hindari menempatkan tombol yang tidak perlu di antara pemain dan informasi peringkat.

4. Teman

Tugas checklist berikut berlaku pada penerapan Friends API dalam game Anda.

ID Tingkat Kepentingan Deskripsi
4.1 Wajib Saat pemain ditampilkan dalam daftar, tampilkan ikon Play Game di samping pengguna yang memiliki profil Play Game.

Daftar ini dapat berupa daftar teman yang sudah ada, daftar teman yang baru diputar, atau daftar teman lainnya.

4.1.1. Ikon Play Game harus dapat diklik.
Jika pengguna menekan ikon, game harus memanggil getCompareProfileIntent() atau getCompareProfileIntentWithAlternativeNameHints() untuk menampilkan UI tempat pengguna dapat membandingkan diri mereka dengan profil pemain lain.
4.1.2. Dukungan profil pemain dan undangan teman, untuk nama pemain dalam game yang dapat disesuaikan.
Jika pemain menetapkan nama yang berbeda dalam game (dan tidak menggunakan nama profil Play Game), gunakan getCompareProfileIntentWithAlternativeNameHints() untuk memberikan nama dalam game alternatif tersebut bagi pemain saat ini dan pemain yang mereka lihat, sebagai konteks untuk tampilan profil dan undangan teman apa pun yang dikirim dari sana. Hanya teruskan nama pemain global yang persisten untuk nilai, bukan konten pengguna arbitrer. Persyaratan ini berarti bahwa undangan teman yang dikirim dari dalam game akan memberikan konteks untuk kedua pemain:
  • Penerima akan melihat nama dalam game milik pengirim undangan, bersama dengan nama game.
  • Saat melihat pertemanan, pengirim masih akan melihat nama dalam game penerima, serta game tempat mereka memulai.
4.2 Praktik terbaik Gunakan ikon yang berbeda untuk menunjukkan pengguna Play Game mana yang sudah berteman, dan yang belum menjadi teman Play Game tetapi telah login dengan Play Game. Gunakan dua ikon untuk pengguna Play Game, satu untuk "Teman" dan satu untuk "Bukan teman" (atau saat status pertemanan tidak diketahui).
Ikon Teman
Ikon Bukan Teman
4.3 Praktik terbaik Panggil loadFriends() setiap kali Anda login dan menampilkan daftar teman untuk memastikan daftar teman tersebut sudah yang terbaru. Pastikan pemain melihat daftar yang diperbarui.
4.4 Praktik terbaik Jika game Anda sudah berisi teman dalam game, gunakan Friends API untuk menambah daftar teman dengan menambahkan teman Play Game. Jika pemain ada dalam daftar teman dalam game dan mereka juga merupakan teman Play Game, tampilkan ikon "Teman".
4.5 Praktik terbaik Jika pemain menolak permintaan untuk mengakses daftar temannya, jangan tampilkan dialog yang meminta akses lagi, kecuali jika pengguna mengambil tindakan untuk menunjukkan bahwa mereka ingin memberikan akses (misalnya, menekan tombol "Impor Teman Play Game").
4,6 Praktik terbaik Jika pemain menolak akses ke daftar teman, beri mereka cara untuk memberikan akses kepada daftar teman di masa mendatang (misalnya, setelah menekan tombol "Impor Teman Game Play").
4,7 Praktik terbaik Jika menggunakan ID pemain atau daftar teman dengan server backend, Anda harus mengakses ID atau daftar tersebut dengan aman. Selain itu, untuk beberapa game dan pemain lama, ID pemain yang ditampilkan oleh Android SDK untuk pemain mungkin bukan ID yang sama dengan yang dilihat pemain lain saat melihat pemain tersebut di game yang sama; ini sangat relevan saat menggunakan daftar teman. Namun, player_id yang ditampilkan dalam REST API selalu konsisten dan selalu merupakan ID yang terlihat oleh pemain lain.

5. Pembatasan kuota dan kapasitas

Tugas checklist berikut berlaku pada pengelolaan pembatasan kapasitas dan kuota dalam game Anda. Untuk mempelajari cara mengelola kuota game dan mendeteksi kapan batas kapasitas ini terlampaui, lihat Mengelola Pembatasan Kuota dan Tarif.

ID Tingkat Kepentingan Deskripsi
5.1 Praktik terbaik Gunakan library klien.

Library klien seluler menggunakan sejumlah strategi untuk mengurangi panggilan yang Anda lakukan ke layanan. Misalnya, data untuk pencapaian dan papan peringkat di-cache, sehingga pemain dapat melihat pencapaian mereka sesering yang mereka suka tanpa mengharuskan layanan melakukan beberapa panggilan.

Library klien Android tidak akan mengirim skor pemain ke server jika skor tersebut tidak sebagus yang baru-baru ini Anda kirimkan. Library Android juga akan otomatis menggabungkan panggilan yang sering ke pencapaian inkremental jika mendeteksi bahwa game Anda dikenai pembatasan kapasitas.

5.2 Disarankan Gabungkan panggilan yang sering ke pencapaian inkremental.

Jika Anda membuat game perkelahian dan menetapkan pencapaian 'Melepaskan 5000 pukulan', jangan kirim panggilan pencapaian inkremental setiap kali seseorang melepaskan pukulan. Tunggu hingga ronde berakhir, lalu kirim satu increment(xxx) panggilan (dengan xxx adalah jumlah total pukulan yang dilempar), atau tunggu hingga 50 pukulan dilempar sebelum mengirimkan satu pukulan increment(50) telepon.

5.3 Disarankan Perhatikan penggunaan Anda.

Cermati jumlah panggilan yang Anda lakukan ke Layanan game Google Play. Meskipun tidak melampaui batas kapasitas, panggilan yang sering dapat meningkatkan traffic jaringan, dan menyebabkan baterai perangkat lebih cepat habis. Untuk menghindari hal ini, Anda dapat menggunakan teknik berikut:

  • Saat melakukan game tersimpan, pertahankan frekuensinya sekali setiap beberapa menit, bukan setiap klik tombol.
  • Tunggu hingga game pemain selesai sebelum mengirimkan skor tinggi.
  • Tinjau kuota harian aplikasi Anda dengan membuka dasbor project Anda di Google Cloud Platform.

6. Game tersimpan

Tugas checklist berikut berlaku pada penerapan fitur Game Tersimpan dalam game Anda.

ID Tingkat Kepentingan Deskripsi
6.1 Wajib Tambahkan metadata untuk memberikan konteks tambahan untuk game tersimpan.

Setidaknya, Anda harus menyertakan metadata berikut saat melakukan game tersimpan:

  • Gambar sampul - Screenshot yang menampilkan progres game dan mengingatkan pemain saat mereka keluar dari game.
  • Deskripsi - Deskripsi singkat yang memberikan konteks tambahan untuk gambar sampul.
  • Stempel waktu - Menunjukkan berapa lama pemain telah memainkan game tersimpan ini.
6.2 Wajib Izinkan pemain memuat game tersimpan.

Muat game tersimpan yang tepat saat pemain memilih dari aplikasi Play Game atau UI pemilihan Game Tersimpan default.