Jump to content
Posted 09 April 2012 - 01:18 AM
Posted 09 April 2012 - 01:44 AM
Posted 09 April 2012 - 10:26 AM
Posted 09 April 2012 - 10:34 PM
Posted 10 April 2012 - 03:44 AM
I have to ask... why generate candidates randomly? It's an unusual approach to pathfinding.
Posted 10 April 2012 - 05:04 AM
@Apoch: I thought of mentioning influence maps, but they seem much less useful when using the "pick x random locations" approach to navigation as opposed to A*. Calculating the influence map would dwarf selecting a location if you only consider a handful of locations each frame and enemies can move.
I do definitely agree that enemy influence needs to drop off. Many functions that are asymptotic to zero would be fine, because otherwise the weights of a few enemies anywhere on the map could totally overwhelm the goal-seeking behaviour.
Lastly I would suggest reconsidering using a better pathfinding method unless there's a good reason. Imagine this scenario:
- Goal G is at (0,0).
- Enemy E1 is at (50,0).
- Enemy E2 is at (0,50).
- Player P is at (50,50).
For values of c >= 0.5, P will almost never reach G, instead being repelled by E1 and E2. In fact the same applies if P starts anywhere on the map outside the triangle G, E1, E2. You may think that tweaking the value of c will fix the problem, but if you keep adding enemies it will break again.
Posted 10 April 2012 - 11:47 AM
Posted 11 April 2012 - 01:24 AM
I'm really honestly puzzled as to why you're using an evolutionary algorithm for pathing, when pathing is a very well understood problem with a number of extremely good solutions.
It kind of strikes me as similar to using a sandwich to hammer in nails. If you're incredibly patient and have really cooperative nails, you might get somewhere before you die of old age... but it seems to me like you should trade the sandwich for a hammer and just get the job done.