Oyunumun düşmanları için yol bulmayı geliştirmeye çalışıyorum. Şu anda, kendileri ve oyuncular arasındaki açıyı hesaplayıp bu yönde hareket ederek oyuncunun tam konumuna doğru sürekli hareket ediyorlar. Ayrıca düşmanların üst üste istiflenmesini önleyen bir akın algoritması var, bu yüzden birbirlerinden geçmektense gruplara dönüşecekler.
Ancak, şimdi kiremit tabanlı bir harita eklediğime göre, örneğin engeller ve duvarlar etrafında da yol alabilmek için düşmanlara ihtiyacım var. Başlangıçta akın algoritması, duvarları ve engelleri uzaklaşmak için nesneler olarak düşünecek şekilde "yürüyemeyen" fayanslara ayırma değeri eklemeyi denedim. İlk testim düşmanlara, yürünemez fayansların olmadığı görünmez bir "duvara" çarptığını gösterdi, ancak bir nedenden dolayı vurdular ve spazzing yapmaya başladılar.
A * kullanarak oyuncuya bir yol hesaplamak ve sonra topaklanmayı önlemek için akın algoritmasını kullanmak için çok ağır bir performans olup olmadığını merak ediyordum. Başlangıçta oyunum dalga tabanlı bir nişancı olacaktı, ama bunun yerine Hotline Miami damarında seviye tabanlı yapmaya karar verdim, bu yüzden ara sıra kalabalıkla daha az düşmana sahip olacağım ve daha güçlü.
Bu uygun bir çözüm müdür? Oyun motorum olarak Slick2D ile Java kullanıyorum. Yoksa her iki sorunu da ele alan daha iyi bir çözüm / algoritma var mı?