Quote:

I know you've touched on this before, but could you recap what algorhythms you're using for the pathfinding routines? I was just going over George's AUM articles on Pefect AI and it's really impressive, so I'm wondering if you're building on those concepts, or going a different direction, etc.




Sure. I use Dijkstra and Points of Visibility for Pathfinding. I've posted a demo somewhere in this thread...<looking>
here it is: http://www.coniserver.net/ubbthreads/showthreaded.php?Cat=0&Number=585083&page=0&vc=1

although I have only browsed through the Perfect Ai tutorial, I think we're using the same Techniques. I've read he also uses Points Of Visibility(maybe he calls it waypoints or nodes?) and a combination of Dijsktra and A*? lol, I dunno how he did that, A* is essentially Dijkstra with heuristics(two more lines of code in the algorithm), so does he uses heuristics or not? I don't know...

Anyhow, the differences between Perfect Ai and mine is that I don't precalculate all the possible paths between all nodes, but I let Dijkstra calculate every path at runtime. Since this requires no Line of Site checks(c_trace), Dijkstra works instantly, even with hundreds of bots inside. By doing the Dijkstra at runtime though, I get to turn some Nodes OFF and ON if I like, and let the algorithm do a new search with the modified search space(turned off Nodes). This way I can represent a Door closing and opening, a wall being demolished and generally more dynamic enviroments, that you won't be able to do with precalculated paths.

The other thing that may differ from Perfect AI is, I'm not sure how George is handling 3d enviroments. A Line of Sight between two waypoints for example, doesn't guarantee that it is or it's not possible for an agent to walk between these two waypoints. for example..

Code:


-
A / \ B
---- ---



in that example, there's no LOS between waypoints A and B, but an agent may still be able to climb/jump over that hill.

and again..

Code:


_A__ __B_
| | | |
| | | |
| |LAVA| |



and again in this case, there is los between A and B, but if the agent attempts to walk he'll fall into the hot lava..

So more computation needs to be done when precompiling the graph than simple LOS checks.

Here's how my graph looks like in a 3d level


Each edge(red line) doesn't actually represent the actualy path between two points, but it merely indicates that there actually is one, although it may appear that a straight LOS check could have predicted otherwise.

And here's a path. Hopefully you can see the red line, the little gray guy in the middle of the screen and the big red X with the hand pointer where I ordered the bot to move to.


Other than that, I think Intense Ai and Perfect Ai are pretty much based on the same pathfinding algorithm. I intend to scrap Points of Visibility altogether though and Work on a NavMesh Pathfinding for better flexibility, in the later versions of Intense Ai.

Quote:

For meelee attacks: zombies , goblins and ogres are stupid and not use tactics, so I suggest you to release a demo with a solid , basic melee attacks .




will do..

Quote:

Speaking of zombies, what about hitpoints?




You mean those hitzones that identify where you hit your enemy? There aren't any in the Standard version. Hopefully I'll have time to work on it in later versions. I know it's a really important feature for some people..


INTENSE AI: Use the Best AI around for your games!
Join our Forums now! | Get Intense Pathfinding 3 Free!