Exploratory Data Analysis on Genshin Impact Character with R
Based on Genshin Impact Version 2.4
Genshin Impact merupakan sebuah game dengan genre open-world dan action RPG. Game ini dipublikasikan oleh developer bernama miHoYo untuk platform PC, iOS/Android, dan PS4/PS5 yang dirilis pada tanggal 28 September 2020 dan menjadi salah satu “most popular new games”. Hingga saat ini, Genshin Impact telah diunduh sebanyak 10 juta kali melalui Google Play Store. Keuntungan yang mereka hasilkan sebesar 1 milyar USD hanya dalam waktu 6 bulan.
Sangat banyak hal yang membuat kepopuleran Genshin Impact meroket. Salah satunya adalah karena desain untuk masing-masing playable characters yang sangat memukau. Semua playable characters dalam game ini memiliki keunikannya tersendiri sehingga mudah dikenali. Selain dari penampilannya, tiap karakter juga memiliki kepribadian yang bervariasi, ada yang feminim, pemalu, ceria, suka jahil, dan *ehem* tsundere. Kemudian, dari segi gameplay, Genshin Impact menawarkan sistem bertarung yang luar biasa. Untuk memeperoleh damage output yang besar diperlukan berbagai faktor seperti weapon, artifacts, skill, dll. Dengan demikian, pemain dapat berkreasi tanpa batas dengan mengkombinasikan faktor tersebut sehingga membuat game ini semakin menyenangkan.
Pada artikel kali ini, saya ingin memperlihatkan karakter yang memiliki status terkuat. Dengan mengabaikan faktor penunjang yang disediakan oleh game (weapon, talent, artifacts, dsb.), kita akan menggunakan atribut status yang biasa digunakan untuk mengukur kekuatan karakter, yaitu ATK dan DEF. Data yang digunakan adalah data seluruh playable characters yang telah dirilis hingga versi 2.4 dengan status dasar karakter pada level 90.
Preparations
Untuk melakukan EDA (Exploratory Data Analysis), penulis menggunakan 4 jenis package, yaitu rvest
yang digunakan untuk mengimpor data dari website, dplyr
yang digunakan untuk editing data, ggplot2
yang digunakan untuk visualisasi, dan ggpubr
yang digunakan untuk mengatur posisi grafik.
Importing Data
Data yang digunakan adalah data yang disediakan pada laman Genshin Impact Wiki, yaitu:
Untuk mengambil data yang ditampilkan di atas, kita gunakan sintaks sebagai berikut.
Perintah read_html
digunakan untuk mengambil kode HTML dari suatu website yang kemudian dipersempit menjadi tag HTML tertentu dengan menggunakan html_elements
. Karena pada website terdapat lebih dari satu tag HTML untuk table, maka perlu disesuaikan kembali sehingga didapatkan data yang diinginkan (pada kasus ini, data yang diperlukan terdapat pada urutan kedua) dan mengubah class dari objek menjadi data frame menggunakan as.data.frame
untuk mempermudah dalam melakukan EDA. Kemudian, kita hapus variabel atau kolom yang tidak diperlukan. Setelah melakukan langkah diatas untuk memperoleh data dari website tujuan, kedua data frame tersebut kita gabungkan menggunakan perintah merge
dan mengganti missing values menjadi “Unknown” pada variabel Nation karena karakter-karakkter tersebut bukan berasal dari Teyvat (Aloy merupakan karakter kolaborasi dan Traveler merupakan pengelana dari dunia lain). Berikut data yang berhasil didapatkan.
Visualizing Data in General
Sekarang, data yang diperlukan sudah terkumpul, saatnya menjalankan tujuan utama. Berikut sintaks yang kita gunakan untuk memvisualisasikan data secara umum.
Fungsi count
merupakan salah satu fungsi dari package dplyr
yang berfungsi untuk menghitung jumlah kejadian dari masing-masing kategori dalam variabel yang telah ditentukan pada suatu data frame. Fungsi geom_bar
digunakan untuk memberitahu program untuk membuat bar chart. Argumen stat = "identity"
digunakan untuk memberitahu program untuk mengatur ketinggian masing-masing kategori (x) berdasarkan jumlah kejadian (y) yang telah ditentukan pada baris sebelumnya. Fungsi ggarrange
digunakan untuk mengatur susunan grafik yang dapat ditampilkan dalam satu layar. Dari sintaks diatas akan diperoleh output sebagai berikut.
Dari 46 playable characters, sebagian besar karakter berasal dari Mondstadt. Hal ini mungkin disebabkan oleh region Mondstadt merupakan region tempat memulai petualangan dalam game ini. Namun, tidak menutup kemungkinan pada versi-versi berikutnya, kota Mondstadt akan tetap berada di puncak. Saat ini, region Inazuma masih dalam pengembangan sehingga mungkin akan banyak karakter yang berasal dari region ini. Selain itu, dengan dirilisnya karakter Yun Jin yang berasal dari Liyue juga membuktikan bahwa developer tidak hanya berfokus untuk memperbanyak karakter dari region baru saja. Kemudian, berdasarkan senjata yang digunakan, sepertinya developer ingin menyeimbangkan seluruh tipe senjata yang digunakan tiap karakter karena selisih masing-masing tipe senjata sangat sedikit. Untuk element (vision), saat ini masih dipimpin oleh element Cryo dan Pyro. Sedangkan pada sudut pandang gender karakter tentu saja karakter dengan gender perempuan lebih banyak dimana berjumlah dua kali dari karakter dengan gender laki-laki.
Comparing Characters Stats
Dari sini kita akan mulai membandingkan atribut status (ATK dan DEF) dari masing-masing playable characters pada game Genshin Impact Versi 2.4. Karakter manakah yang paling ideal? Dari region manakah karakter tersebut? Senjata apa yang dia gunakan? Vision/element apa yang dimilikinya? Mari kita lihat jawabannya.
[ Mondstadt Characters ]
Sintaks yang digunakan adalah:
Dan hasil yang didapatkan adalah:
Seperti yang terlihat diatas, region Mondstadt memiliki dua karakter ideal, yaitu Eula dan Diluc. Kedua karakter ini merupakan pengguna Claymore dengan element masing-masing berupa Cryo dan Pyro. Mereka dikatakan ideal karena memiliki poin ATK yang paling tinggi diantara karakter Mondstadt lainnya dan poin DEF yang cukup tinggi. Di sisi lain, kita memiliki Barbara dan Diona sebagai karakter dengan stat yang lumayan rendah. Barbara yang merupakan pengguna Catalyst dengan element Hydro ini memiliki poin ATK terendah, tetapi poin DEF miliknya masih bisa dibilang tidak terlalu rendah apabila dibandingkan dengan karakter Mondstadt lainnya. Sedangkan Diona yang bersenjatakan Bow dengan element Cryo memiliki poin DEF yang hampir menyentuh posisi terendah dan poin ATK yang lebih rendah dari kebanyakan karakter Mondstadt lainnya.
[ Liyue Characters ]
Sintaks yang digunakan adalah sebagai berikut:
Dan hasilnya:
Berdasarkan plot di atas, karakter ideal untuk region Liyue adalah Xiao, Ganyu, dan Keqing. Xiao dan Keqing, pengguna Polearm dengan element Anemo dan pengguna Sword dengan element Electro memiliki poin DEF yang melampaui kebanyakan karakter Liyue dan menempati posisi pertama dan ketiga untuk karakter dengan poin ATK tertinggi sehingga menjadikan keduaya karakter ideal untuk region Liyue. Bagaimana dengan Ganyu? Ganyu yang merupakan karakter bersenjatakan Bow dengan element Cryo memiliki poin ATK tertinggi kedua, tetapi memiliki poin DEF yang rendah dibandingkan dengan kebanyakan karakter Liyue lainnya. Kenapa Ganyu juga tergolong karakter ideal padahal poin DEF miliknya rendah? Hal ini dikarenakan senjata yang dia gunakan. Ganyu dapat memberikan luka yang cukup besar kepada musuh dalam jarak jauh dan memiliki kemungkinan terluka jauh lebih kecil daripada pengguna senjata lainnya sehingga menjadikannya karakter ideal meskipun memiliki poin DEF yang rendah. Di sisi lain dari grafik, kita bisa melihat Hu Tao dan Ningguang sebagai karakter yang kurang ideal. Hu Tao merupakan pengguna Polearm dengan element Pyro yang memiliki poin ATK paling rendah, tetapi poin DEF miliknya menempati posisi kedua tertinggi. Sedangkan Ningguang yang merupakan karakter bersenjatakan Catalyst dengan element Geo memiliki poin ATK yang masing bisa dibilang cukup, tetapi dia merupakan pemegang poin DEF terendah di Liyue.
[ Inazuma Characters ]
Sintaks yang digunakan adalah:
Dengan hasil:
Terlihat pada plot di atas, region Inazuma memiliki Kamisato Ayaka, Raiden Shogun, dan Yoimiya sebagai karakter ideal. Kamisato Ayaka merupakan pengguna pedang dengan element Cryo, Raiden Shogun merupakan pengguna Polearm dengan element Electro, dan Yoimiya. Dua karakter pertama menjadi ideal karena mereka merupakan karakter dengan poin ATK tertinggi dan poin DEF yang cukup tinggi pula. Sedangkan alasan Yoimiya menjadi karakter ideal meskipun memiliki poin ATK yang tinggi, tetapi paling rendah untuk poin DEF adalah sama seperti Ganyu, yaitu dapat memberikan luka yang cukup besar kepada musuh dalam jarak jauh dan memiliki kemungkinan terluka jauh lebih kecil daripada pengguna senjata lainnya. Untuk karakter yang kurang ideal, ditampilkan Gorou dan Kujou Sara. Keduanya merupakan pengguna Bow dengan element masing-masing berupa Geo dan Electro. Mereka merupakan dua karakter dengan poin ATK dan DEF terendah di Inazuma.
[ All Characters ]
Akhirnya kita sampai di tempat yang berisi jawaban dari pertanyaan yang disampaikan di awal artikel ini. Dengan menggunakan sintaks:
Maka dihasilkan:
Pada plot diatas, seluruh playable characters dari Genshin Impact Versi 2.4 ditampilkan. Tiga karakter yang paling ideal diberikan kepada Xiao, Kamisato Ayaka, dan Eula. Xiao merupakan karakter yang berasal dari Liyue, bersenjatakan Polearm, dan memiliki element Anemo. Berikutnya, Kamisato Ayaka merupakan karakter yang berasal dari Inazuma, pengguna Sword, dan pemilik element Cryo. Terakhir, Eula merupakan karakter dari Mondstadt yang bersenjatakan Claymore dengan element Cryo. Di sisi lain, kita dapat melihat sesuatu yang menurut saya pribadi cukup mengejutkan. Karakter Hu Tao yang berasal dari Liyue ini memiliki poin ATK paling rendah dimana jika dibandingkan dengan karakter yang memiliki poin ATK terendah kedua selisihnya dapat dibilang cukup jauh. Meskipun demikian, Hu Tao dengan senjata Polearm dan element Pyro miliknya dapat mengungguli kebanyakan karakter dalam segi poin DEF.
Personal Opinion
Pada mulanya, artikel ini dibuat untuk membuktikan hipotesis saya tentang jenis karakter seperti apa yang paling kuat. Hipotesis ini didasarkan pada pengalaman saya dalam bermain beberapa game (selain Genshin Impact). Saya berpikir bahwa karakter terkuat adalah pengguna Claymore (Two-Handed Sword) dengan element Pyro (Api). Sedangkan untuk karakter terlemah merupakan pengguna Polearm (Spear/Lance) dengan element Hydro (Air) atau Anemo (Angin). Selain itu, saya juga beranggapan bahwa karakter sekelas Archon (Dewa) di Genshin Impact akan mendapatkan salah satu dari karakter yang memiliki ATK atau DEF tertinggi.
Berdasarkan apa yang telah dijelaskan diatas, ternyata tidak semua hipotesis saya benar. Contohnya, hipotesis ternyata terbukti benar mengenai salah satu karakter terkuat merupakan karakter sekelas Archon, yaitu Raiden Shogun. Ada juga hipotesis yang salah seperti karakter terkuat yang ternyata pengguna Polearm dengan element Anemo dimana saya mengira karakter dengan senjata dan element tersebut akan menjadi karakter paling lemah dalam game.
Demikianlah artikel seputar karakter dalam Genshin Impact versi 2.4. Penulis akan sangat menghargai apabila ada masukkan terhadap artikel diatas. Berikut penulis lampirkan sintaks beserta output secara keseluruhan. Terima kasih.