Unlimited Plugins, WordPress themes, videos & courses! Unlimited asset downloads! From $16.50/m
Advertisement
  1. Code
  2. Android SDK
Code

Google Play Games Service: Menciptakan Event dan Quests

by
Difficulty:IntermediateLength:MediumLanguages:

Indonesian (Bahasa Indonesia) translation by Ari Gustiawan (you can also view the original English article)

Nilai replay tinggi adalah salah satu karakteristik mendefinisikan permainan besar. Bahkan permainan dengan plot sangat sederhana dapat menjadi sukses di Google Play selama mereka memiliki nilai tinggi replay. Jika Anda seorang avid gamer, Anda mungkin sudah tahu apa replay nilai. Jika Anda tidak, Anda dapat menganggapnya sebagai kemungkinan bahwa pengguna akan memainkan permainan lagi bahkan setelah mencapai tujuan utamanya.

Dengan menggunakan event dan quests api, yang merupakan subset dari Google Play Games Service, Anda dapat secara dramatis meningkatkan replay nilai-nilai permainan Anda, bukan untuk menyebutkan membuat mereka lebih menantang dan menyenangkan. Dalam tutorial ini, saya akan menunjukkan kepada Anda bagaimana untuk membuat sebagian besar kedua api.

Sebelum Anda melanjutkan, saya sarankan Anda membaca tutorial saya Pengantar tentang Google Play Game Service, yang menunjukkan Anda bagaimana untuk menggunakan service di Android Studio proyek.

1. memahami Event dan Quests

Apa pun yang terjadi dalam permainan dapat dianggap suatu event. Oleh log event cukup menggunakan event API, Anda dapat erat menganalisis perilaku pengguna. Anda dapat menyimpulkan rincian seperti seberapa jauh pengguna dapat pergi ke permainan Anda, berapa banyak musuh mereka membunuh dan berapa banyak sumber daya dalam permainan yang mereka kumpulkan. Dengan rincian seperti di tangan, Anda akan dapat dengan mudah memperbaiki permainan Anda untuk membuatnya lebih menyenangkan.

event API, namun jarang digunakan sendirian. Sebagian besar pengembang menggunakannya bersama quests API untuk membuat quests. Sebuah quest, seperti namanya, adalah sebuah tujuan sekunder yang pengguna dapat mencapai untuk mendapatkan reward. Misalnya, jika Anda membuat sebuah permainan di mana pengguna sedang mencoba untuk menyelamatkan seorang putri, Anda dapat menambahkan sebuah pencarian quest itu di mana pengguna harus menemukan cincin minimal 100 untuknya.

Jika Anda belum sudah menebak itu, event digunakan untuk menentukan kriteria menyelesaikan quests. Dalam contoh di atas, menemukan sebuah cincin akan peristiwa yang harus terjadi 100 kali untuk quest harus ditandai sebagai lengkap.

Meskipun quests berbagi beberapa kemiripan dengan reward, ada beberapa perbedaan penting antara dua:

  • Anda tidak perlu menulis kode apapun untuk menambahkan sebuah quest baru ke permainan Anda, asalkan itu tergantung pada event yang sudah menjadi bagian dari permainan.
  • Quests terikat waktu. Misalnya, Anda dapat menjadwalkan sebuah quest baru untuk memulai satu minggu sebelum Natal dan tantangan pengguna untuk menyelesaikan sebelum Natal.
  • Pengguna dapat menyelesaikan quest hanya setelah memilih untuk berpartisipasi di dalamnya.

Dengan banyak quests menarik, beberapa di antaranya dijadwalkan untuk mengulang setiap minggu atau bulan, Anda dapat dengan mudah mendapatkan pengguna untuk bermain game beberapa kali.

2. membuat event

Login ke Play Developer Console dan membuka Game Services dengan mengklik ikon gamepad.

Selanjutnya, pilih permainan Anda ingin menambahkan acara untuk dan membuka bagian Events.

Tekan tombol Add event untuk mulai membuat event. Ketika Pop up muncul, memberikan nama yang mudah diingat untuk event. Melanjutkan dengan contoh dari langkah sebelumnya, saya akan menamai event Collect Ring.

Create event dialog

Setelah Anda menekan tombol Save, Anda akan dapat melihat ID dari event. Untuk dapat menggunakan event dalam proyek Android Studio Anda, Anda harus menambahkan ID sebagai baru <string>tag di file games-ids.xml.

3. menciptakan sebuah Quest

Membuat quest sedikit lebih terlibat. Mulai dengan masuk ke bagian Quests dan menekan tombol Add quest. Memberikan quest nama yang menarik dan mudah untuk memahami Deskripsi. Keduanya sangat penting karena mereka akan dibaca oleh pengguna. Sebuah quest yang tidak terlihat menarik mungkin untuk melihat banyak peserta.

Name and description of quest

Selanjutnya, gulir ke bawah ke bagian Completion criteria. Dalam Find an event field, ketik di ID event yang Anda buat sebelumnya. Di bidang masukan berikutnya, Anda harus menentukan berapa kali event harus terjadi untuk quest selesai.

Di bagian Schedule, tentukan tanggal dan waktu quest. Untuk dapat mulai bekerja dengan quest segera, Anda dapat memilih tanggal.

Anda juga harus menentukan durasi quest dengan mengetikkan di bidang Number of days. Opsional, Anda dapat memilih untuk memberitahukan peserta quest ketika mereka hampir kehabisan waktu.

Sebuah quest harus memiliki reward-lain mengapa pengguna memilih untuk berpartisipasi di dalamnya? Anda dapat menentukan apakah hadiah dengan meng-upload sebuah file hadiah, yang dapat menjadi file dari format apapun. Sebagian besar pengembang memilih untuk menggunakan JSON format. Berikut adalah contoh reward file:

Ini penting dicatat bahwa isi dari file hadiah tidak penting ke Play games services APIs. Ini adalah tanggung jawab Anda untuk mengurai dan menggunakannya dalam permainan Anda.

Di bagian Reward data, tekan tombol Browse dan meng-upload file hadiah yang Anda buat.

Completion criteria schedule and reward data sections

Akhirnya, tekan Save untuk menghasilkan ID untuk quest. Opsional, Anda dapat menyalin ID dan menambahkannya ke file games-ids.xml Anda Android Studio proyek lain <string>tag.

4. Menampilkan Quests UI

Quests API menawarkan kegiatan yang dapat menampilkan semua quests yang tersedia dalam permainan Anda. Kegiatan ini juga memungkinkan pengguna untuk bergabung dengan quests.

Untuk membuka kegiatan quest, Anda harus membuat niat untuk menggunakan metode getQuestsIntent() kelas Games.Quests. Sebagai argumen, itu mengharapkan sebuah GoogleApiClient objek dan array int menetapkan jenis quest yang Anda ingin menampilkan. Berikut adalah beberapa nilai-nilai yang populer untuk jenis quest:

  • Quests.SELECT_OPEN, sebuah quest pengguna dapat berpartisipasi dalam segera.
  • Quests.SELECT_UPCOMING, sebuah quest yang belum untuk memulai.
  • Quests.SELECT_COMPLETED, sebuah quest pengguna telah menyelesaikan sudah.
  • Quests.SELECT_ACCEPTED, sebuah quest pengguna saat ini berpartisipasi dalam.

Setelah membuat Intent objek, Anda dapat melewati ke startActivityForResult() metode untuk menampilkan aktivitas quests.

Kode berikut memperlihatkan bagaimana untuk membuka activity quest dan menampilkan empat jenis quest:

Berikut adalah activity quests apa yang tampak seperti:

Available quests

Pengguna menjadi peserta Quest dengan menekan tombol Accept. Selama quest, pengguna dapat kembali ke quests UI untuk melihat berapa banyak Quest yang lengkap.

5. menggunakan Event API

Event API memungkinkan Anda untuk dengan mudah mengelola acara di permainan. Untuk mengubah nilai dari suatu peristiwa, Anda dapat menggunakan metode increment() kelas Games.Events. Sebagai argumen, mengharapkan sebuah objek GoogleApiClient, nama event, dan sejumlah menentukan berapa banyak nilai event harus ditingkatkan.

Kode berikut akan menambahkan nilai event event_collect_ring oleh 1:

Untuk mengambil nilai-nilai saat ini event, Anda harus menggunakan metode load(). Karena nilai yang diambil dari server Google asynchronously, nilai kembali metode adalah sebuah objek PendingResult. Dengan menambahkan sebuah objek ResultCallback, Anda dapat memperoleh pemberitahuan bila hasil tersedia.

Di dalam metode onResult() antarmuka ResultCallback, Anda harus memanggil metode getEvents() objek Events.LoadEventsResult, yang mengembalikan EventBuffer. Setelah Anda menemukan Event dalam buffer, Anda dapat menghubungi getValue() metode untuk mendapatkan nilai saat ini.

Kode berikut memperlihatkan bagaimana untuk mengambil nilai event event_collect_ring:

6. mendeteksi penyelesaian Quest

Ketika pengguna menyelesaikan quest tepat waktu, permainan Anda harus dapat reward pengguna menggunakan file imbalan yang Anda upload di Play developer console. Untuk mendeteksi quest selesai, Anda harus membuat objek QuestUpdateListener dan mendaftarkannya dengan quests API menggunakan metode registerQuestUpdateListener() kelas Games.Quests.

Di dalam metode onQuestCompleted() interface QuestUpdateListener, Anda harus memanggil metode claim() untuk mengklaim hadiah Quest. Anda harus melewati sebuah objek GoogleApiClient, quest ID dan ID tonggak saat ini metode.

Setelah klaim, Anda dapat mengambil file hadiah sebagai byte array dengan memanggil metode getCompletionRewardData(). Karena data hadiah kami hanya file JSON, Anda dapat melewati byte array ke konstruktor kelas String untuk mengubahnya menjadi sebuah string.

Pada titik ini, Anda dapat mengkonversi string ke contoh JSONObject, dan membaca nilai-nilai kunci di dalamnya. Kode berikut memperlihatkan bagaimana untuk mengambil nilai-nilai dua kunci yang disebut points dan max_lives:

Catatan bahwa activity quest secara otomatis update itu sendiri bila quest telah selesai. Berikut adalah apa yang tampak seperti quest selesai:

Completed quest

Kesimpulan

Dalam tutorial ini, Anda belajar bagaimana menggunakan quests dan event api untuk meyakinkan pengguna untuk bermain permainan Anda lagi dan lagi. Namun, perlu diketahui bahwa karena api memiliki batas, Anda harus mencoba untuk menghindari menggunakan mereka terlalu sering dalam aplikasi Anda. Anda dapat merujuk ke bPlay games service quality checklist Periksa halaman untuk mempelajari lebih banyak pembatasan dan praktik terbaik.

Untuk mempelajari lebih lanjut tentang quests dan event, Anda dapat merujuk ke dokumentasi resmi mereka. Dan sementara itu, memeriksa beberapa posting kami di Firebase dan Google Play Service!

Advertisement
Advertisement
Advertisement
Advertisement
Looking for something to help kick start your next project?
Envato Market has a range of items for sale to help get you started.