🎉 Celebrating 25 Years of GameDev.net! 🎉
Not many can claim 25 years on the Internet! Join us in celebrating this milestone. Learn more about our history, and thank you for being a part of our community!
How a to abstract character movement....
I have a 2D grid with A*... but how to i go about abstracting movement?
I can tell a character to goto(spot) at the most basic level, but i'm not sure what context to give the abstraction. my game at its most basic sense could be described as a dungeon crawler like torchlight/diablo.
Do the monsters "see hero (hero enters sight radius, etc)" and then "Move Toward Hero(finds a path to the hero and takes it)" then "attacks hero (when in range)" .
Is there a better way to abstract monster movement? for example... wandering, exploring, grouping!....
i guess i could replace "hero" with "point of interest" and the AI figures out if the point of interest is a hero and attacks it.
I want this to be simple but not preclude me from doing more advanced stuff later.
-J
I can tell a character to goto(spot) at the most basic level, but i'm not sure what context to give the abstraction. my game at its most basic sense could be described as a dungeon crawler like torchlight/diablo.
Do the monsters "see hero (hero enters sight radius, etc)" and then "Move Toward Hero(finds a path to the hero and takes it)" then "attacks hero (when in range)" .
Is there a better way to abstract monster movement? for example... wandering, exploring, grouping!....
i guess i could replace "hero" with "point of interest" and the AI figures out if the point of interest is a hero and attacks it.
I want this to be simple but not preclude me from doing more advanced stuff later.
-J
"Move to" should always be a parameterized function that takes a location. When you pass in the location, you can certainly get that from an object. (e.g. MoveTo(Object.Location);)
I see, do you think i should be enforcing that my characters strictly adhere to my AStar grid when moving around?
Like moveTo(object.location) would be turned into the nearest grid spot location? or should i just have them "occupy" the gridspot that they are located in.
Like moveTo(object.location) would be turned into the nearest grid spot location? or should i just have them "occupy" the gridspot that they are located in.
If you aren't having them occupy a grid space, then A* is probably not your best choice. Have you looked into a navmesh with local steering?
I definitely do have them occupying a space right now ie.......
https://pbs.twimg.com/media/A2214V6CUAAZ-D8.png:large
at the end of that path the character "occupies" that grid space. What i was saying is that if I do end up using MoveTo(location) i will have to convert that to a grid space so it an "occupy" it.
I have not looked into that yet...
Right now my system allows an AI to aquire a path to a target and it is notified when it reaches the end of that path. This may break down once the target moves.
I do like the local steering idea (just from some intial searches)... can you recommend any tutorials? Not sure ill do navmesh generation just because that is more complicated than i really need i think. (I dont see myself having a problem with just using a grid of squares.
-J
https://pbs.twimg.com/media/A2214V6CUAAZ-D8.png:large
at the end of that path the character "occupies" that grid space. What i was saying is that if I do end up using MoveTo(location) i will have to convert that to a grid space so it an "occupy" it.
I have not looked into that yet...
Right now my system allows an AI to aquire a path to a target and it is notified when it reaches the end of that path. This may break down once the target moves.
I do like the local steering idea (just from some intial searches)... can you recommend any tutorials? Not sure ill do navmesh generation just because that is more complicated than i really need i think. (I dont see myself having a problem with just using a grid of squares.
-J
This topic is closed to new replies.
Advertisement
Popular Topics
Advertisement