Advertisement

Simple AI for 2D grid based game.

Started by January 26, 2012 11:39 AM
8 comments, last by Wilhelm van Huyssteen 12 years, 9 months ago
Hi.

im creating a dead simple 2D game. the game consists of a grid that is15x11. each entity takes up 1 square on the grid. The AI for one particular type of enemy should find a path to the player and move to him. each square in the grid is either open or the enemy to pass through or its not. Enemies pass through each other so they can ignore each others existance.

What method would i use to implement this path finding? simplicity over performance. its a tiny game world after all.
If there are obstacles (walls) then A*. Otherwise just check to see left/right up/down and move 1 space in the right direction.

Dave Mark - President and Lead Designer of Intrinsic Algorithm LLC
Professional consultant on game AI, mathematical modeling, simulation modeling
Co-founder and 10 year advisor of the GDC AI Summit
Author of the book, Behavioral Mathematics for Game AI
Blogs I write:
IA News - What's happening at IA | IA on AI - AI news and notes | Post-Play'em - Observations on AI of games I play

"Reducing the world to mathematical equations!"

Advertisement
There is walls. sorry i didnt type that very clearly in the OP. im having trouble googling A* since google ignores the *. is there a full name for it?
There is walls. sorry i didnt type that very clearly in the OP. im having trouble googling A* since google ignores the *. is there a full name for it?[/quote]
A star.

“If I understand the standard right it is legal and safe to do this but the resulting value could be anything.”

google "A* pathfinding algorithm"
A* is easily one of the most documented techniques in game AI. You'll find it.

Dave Mark - President and Lead Designer of Intrinsic Algorithm LLC
Professional consultant on game AI, mathematical modeling, simulation modeling
Co-founder and 10 year advisor of the GDC AI Summit
Author of the book, Behavioral Mathematics for Game AI
Blogs I write:
IA News - What's happening at IA | IA on AI - AI news and notes | Post-Play'em - Observations on AI of games I play

"Reducing the world to mathematical equations!"

Advertisement
A* is very good, though slightly advanced. What i did in my game is giving my tiles an extra int for path numbering. Then from the destination put all adjacent tile n=1, then from these adjacent tiles n+1 for there adjacent tiles and repeat this. Stop when you are calculating the tile your standing on. Then move to the lowest number in the adjacent tiles. This technnique works surprisingly well.

But then again, A* can do a lot more once you get the hang of it.
Here's an A* javascript script http://www.battlefor...pathFinding.php demonstration and source.

I haven't used it because I haven't figured out which way I'm going with the map yet(generated tiles vs single image, top down vs isometric[in an html5 game]). Currently I just run around on a background image and use tangent/sin/cosine to move objects on layers above while sliding the bg sprite images based on the sin/cos the object is moving...
http://www.policyalm...tarTutorial.htm

i find this to be the absolute best article for learning A*.

@menyo, A* is not very advanced imo, and from the sound of what he's making, it'd be absolutly perfect for his needs, also, your method sounds like A* without a heuristic, and every tile has an equal movement cost(regardless if diagonal or not.).
Check out https://www.facebook.com/LiquidGames for some great games made by me on the Playstation Mobile market.
Thnx a lot!

This topic is closed to new replies.

Advertisement