Bayangkan boss yang selalu memberikan tantangan pas. Pemain pemula tetap harus berusaha, tetapi tidak langsung dihancurkan.
Pemain berpengalaman juga tidak bisa menang hanya dengan mengulang strategi sederhana. Dynamic Difficulty Adjustment mencoba menciptakan keseimbangan seperti ini dengan mengubah tantangan berdasarkan kemampuan aktual pemain.
Dengan Menggunakan Machine Learning, keputusan tersebut bisa dibuat berdasarkan pola performa dan feedback selama bermain, bukan hanya threshold sederhana.
Namun sistem adaptif tetap membutuhkan kontrol desain yang kuat agar AI membantu menciptakan pengalaman seru, bukan diam-diam membuat permainan terasa tidak adil.
Kapan Rule-Based DDA Mulai Tidak Cukup?
Rule-based difficulty sebenarnya cukup efektif untuk game sederhana.
Contohnya: jika pemain mati lima kali, tambahkan health pickup. Jika pemain menang tanpa terkena damage, tambah satu musuh.
Masalah muncul ketika terdapat banyak indikator yang saling berhubungan.
Pemain mungkin mati sering tetapi sebenarnya memiliki aim bagus. Pemain lain jarang mati karena bermain sangat defensif sehingga waktu setiap level terlalu panjang.
Sistem threshold sederhana sulit memahami pola seperti ini.
Machine learning berguna ketika developer mempunyai banyak telemetry dan ingin menemukan hubungan antara gameplay behavior dengan kemampuan atau kemungkinan sukses pemain.
Systematic literature review terbaru tentang DDA menemukan bahwa AI dan heuristic merupakan pendekatan dominan dalam banyak studi, sementara kebutuhan terhadap sistem yang lebih fleksibel dan modular masih menjadi area pengembagan penting.
Bentuk State yang Mewakili Pemain
Untuk reinforcement learning, developer perlu menentukan state.
State adalah representasi kondisi yang dilihat agent sebelum mengambil keputusan.
Misalnya:
health ratio + death frequency + accuracy + completion time + current difficulty
Jangan memasukkan semua telemetry yang tersedia.
Unity ML-Agents menekankan bahwa observation merupakan informasi yang diberikan kepada policy untuk menentukan action. Desain observation dan reward merupakan bagian sangat penting agar agent dapat mempelajari perilaku yang diinginkan.
Jika observation tidak relevan atau terlalu noisy, proses training dapat menjadi jauh lebih sulit.
Mulailah sederhana.
Tambahkan feature baru hanya ketika eksperimen menunjukkan informasi tersebut benar-benar diperlukan untuk membuat keputusan difficulty yang lebih baik.
Definisikan Action yang Bisa Dikontrol AI
Setelah state, tentukan action space.
Action adalah hal yang boleh diubah model.
Untuk DDA, action dapat berupa menaikkan, mempertahankan, atau menurunkan tingkat difficulty.
Model yang lebih kompleks dapat memilih parameter individual seperti jumlah enemy, projectile speed, enemy aggression, resource availability, atau waktu objective.
Namun action space yang terlalu besar membuat learning problem semakin susah.
Penelitian tahun 2024 mengenai RL-based DDA menyebut large atau continuous action-state spaces sebagai salah satu tantangan dalam membangun reinforcement learning agent untuk penyesuaian difficulty.
Karena itu, jangan memberikan AI 50 slider sekaligus pada eksperimen pertama.
Mulailah dari tiga sampai lima parameter yang benar-benar memiliki dampak terhadap challenge.
Reward Function Menentukan Perilaku Sistem
Inilah bagian yang paling mudah salah.
Reinforcement learning berusaha memaksimalkan reward yang diberikan developer. Jika reward-nya buruk, agent dapat menemukan cara aneh untuk mendapatkan skor tinggi.
Unity ML-Agents bahkan menyebut reward mechanism sebagai bagian penting dalam menentukan apa yang akan dipelajari agent dan menyarankan developer memberi reward pada hasil yang diinginkan, bukan sekadar aksi yang diasumsikan menuju hasil tersebut.
Misalnya developer memberi reward terbesar ketika win rate mendekati 50%.
AI mungkin belajar membuat setiap pertarungan hampir sama sulitnya.
Secara statistik terlihat berhasil, tetapi pemain bisa merasa progression tidak ada.
Reward yang lebih sehat dapat menggabungkan completion rate, challenge target, session continuation, dan perubahan skill pemain.
Pastikan reward mencerminkan pengalaman game, bukan hanya angka yang mudah dihitung.
Reinforcement Learning Tidak Harus Berjalan Online
Mendengar DDA berbasis RL sering membuat developer membayangkan AI terus belajar langsung dari setiap pengguna.
Pendekatan tersebut tidak selalu diperlukan.
Developer dapat melatih agent secara offline menggunakan simulated player, bot dengan berbagai skill, atau telemetry playtest.
Unity ML-Agents menyediakan training menggunakan reinforcement learning seperti PPO dan SAC, kemudian model hasil training dapat digunakan untuk inference di dalam environment.
Keuntungan offline training adalah perilaku model dapat diuji sebelum dikirim kepada pemain.
Online learning memang memungkinkan personalisasi lebih jauh, tetapi risikonya lebih besar karena perilaku model dapat berubah berdasarkan data terbatas.
Sebuah framework RL-based DDA juga menyoroti tantangan belajar dari setiap pemain secara online ketika jumlah sample yang tersedia sedikit.
Gunakan Model Pemain yang Berubah Seiring Waktu
Skill pemain tidak statis.
Seseorang yang kesulitan pada awal game mungkin menguasai mekanik beberapa jam kemudian.
Karena itu, model sebaiknya memberi bobot lebih besar terhadap data terbaru tanpa langsung melupakan sejarah keseluruhan.
Pendekatan temporal player modeling memang dikembangkan untuk memperkirakan bagaimana kemampuan pemain berubah dari waktu ke waktu.
Studi Zook dan Riedl menemukan bahwa prediksi perubahan skill dapat digunakan untuk menyesuaikan challenge secara lebih personal.
Developer dapat menggunakan moving average, recurrent model, atau feature yang membandingkan performa terbaru dengan baseline pemain.
Misalnya:
Accuracy keseluruhan = 52%.
Accuracy lima encounter terakhir = 68%.
Kondisi tersebut menunjukkan pemain mungkin sedang berkembang sehingga sistem dapat menaikkan tantangan secara bertahap.
Hindari AI yang Terlihat “Curang”
Adaptive difficulty punya masalah psikologis yang menarik.
Pemain biasanya ingin menang karena merasa menjadi lebih baik, bukan karena menyadari game diam-diam memudahkan semuanya.
Jika pemain gagal tiga kali lalu boss tiba-tiba kehilangan separuh health, bantuan tersebut terlalu jelas.
Gunakan perubahan yang lebih natural.
Game dapat memberikan resource sedikit lebih banyak, memperlambat frequency serangan tertentu, mengubah komposisi encounter selanjutnya, atau memberi window reaction yang sedikit lebih panjang.
Untuk pemain ahli, jangan memberikan musuh aim tidak manusiawi.
Tambah kompleksitas tactical, kombinasi serangan, posisi enemy, atau keputusan AI.
Difficulty yang baik mengubah challenge, bukan membuat aturan terasa palsu.
Jangan Mengoptimalkan Engagement secara Buta
Machine learning mudah diarahkan pada metric seperti session duration atau retention.
Tetapi bermain lebih lama tidak selalu berarti pengalaman lebih baik.
Pemain bisa terus bermain karena frustrasi, grinding, atau desain yang memaksa.
Google People + AI Guidebook menekankan pentingnya menentukan kebutuhan pengguna dan kriteria sukses sebelum memilih bagaimana sistem AI bekerja, serta menyediakan feedback dan kontrol kepada pengguna.
Untuk DDA, success metric sebaiknya memasukkan ukuran pengalaman.
Gunakan survey singkat setelah playtest: apakah challenge terasa fair? Apakah pemain merasa berkembang? Apakah perubahan difficulty terasa?
Data perilaku dan feedback subjektif perlu dilihat bersama.
A/B Test Melawan Difficulty Tradisional
DDA baru dianggap bermanfaat jika hasilnya lebih baik daripada sistem yang lebih sederhana.
Buat dua kelompok.
Kelompok A menggunakan static difficulty. Kelompok B menggunakan adaptive system.
Bandingkan completion rate, retry frequency, playtime, quit rate, dan feedback mengenai fairness serta challenge.
Penelitian continuous RL untuk visual working memory game menguji 52 partisipan dan melaporkan peningkatan pada beberapa aspek pengalaman dibanding dua pendekatan rule-based dalam kondisi eksperimen mereka.
Studi lain pada single-player action game juga melakukan evaluasi dengan computer-driven serta human player untuk memeriksa apakah sistem memberikan challenge yang menyesuaikan kemampuan.
Intinya, jangan menganggap ML otomatis lebih baik.
Buktikan lewat eksperimen.
Siapkan Fallback saat Prediksi Tidak Meyakinkan
Model machine learning akan selalu memiliki kondisi yang belum pernah ditemui.
Pemain mungkin melakukan strategi yang sangat aneh atau telemetry tidak lengkap.
Sediakan batas aman.
Jika confidence model rendah, kembali ke difficulty default atau gunakan rule-based system.
Adaptive AI juga sebaiknya memiliki minimum dan maximum difficulty agar model tidak menghasilkan kondisi ekstrem.
Pemain yang terus menang tidak berarti enemy damage harus meningkat tanpa batas.
Pendekatan hybrid sering paling praktis: machine learning memilih penyesuaian, sedangkan game design rules menentukan area aman yang tidak boleh dilewati.
Dengan begitu, sistem mendapat fleksibilitas AI tanpa kehilangan kontrol kreatif.
Menggunakan Machine Learning untuk Dynamic Difficulty Adjustment membutuhkan state, action, reward, dan player model yang dirancang dengan hati-hati.
Reinforcement learning dapat membuat penyesuaian lebih adaptif, tetapi model tetap harus tunduk pada aturan gameplay dan fairness.
Mulailah dari parameter sederhana, bandingkan dengan DDA berbasis aturan, lalu lakukan A/B test sebelum memperluas penggunan sistem ke seluruh game.