Daripada menyelesaikan masalah Anda, inilah cara untuk mengambil lemon dan membuat limun.
Bertahun-tahun yang lalu seorang teman saya mengerjakan FPS yang sangat terkenal yang memiliki masalah persis seperti yang Anda gambarkan: area terbatas akan memiliki sejumlah karakter AI yang memiliki posisi yang diinginkan tertentu, dan algoritma pencarian jalur terus-menerus menabrak mereka. satu sama lain. Secara khusus, pemain akan, misalnya, melemparkan granat ke sebuah ruangan kecil yang penuh dengan musuh, dan karakter AI di daerah tersebut masing-masing akan mencoba lari ke pintu keluar mereka, tetapi saling berhadapan, dan akhirnya berhenti, berbalik, memukul orang lain, berbalik, dan sebagainya. Ini terlihat sangat tidak realistis.
Upaya untuk membangun algoritme pathfinding yang lebih baik yang dapat berjalan dengan sukses mengingat anggaran komputasi yang ketat gagal. Jadi, alih-alih menyelesaikan masalah pencarian jalan, teman saya menambahkan cek yang sangat murah ke AI: jika AI telah menabrak AI lain dua kali dalam periode waktu yang singkat, berhentilah mencoba mencari jalan keluar dan alih-alih berlindung. Jadi sekarang apa yang terjadi adalah, PC mengambil granat dan melihat sekelompok musuh berlari keluar. Mereka yang saling memukul, berbalik, dan sepertinya mereka menyadari bahwa mereka tidak bisa keluar, jadi mereka menunduk dan menutupi kepala mereka sebelum meledak. Ini terlihat realistis dan sangat memuaskan bagi pemain.
Apakah ada cara serupa yang bisa Anda lakukan untuk mengubah kelemahan dari algoritma penghasil benturan dan mengubahnya menjadi keuntungan?