# How do I create my own paths for a.i. that are not restricted to walking on the terrain

**URL:** <https://discourse.stonehearth.net/t/how-do-i-create-my-own-paths-for-a-i-that-are-not-restricted-to-walking-on-the-terrain/38331>\
**Category:** Scripting & Code\
**Created:** [October 6, 2018, 9:03pm UTC](https://discourse.stonehearth.net/t/how-do-i-create-my-own-paths-for-a-i-that-are-not-restricted-to-walking-on-the-terrain/38331 "2018-10-06T21:03:26Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![BrunoSupremo](https://sea2.discourse-cdn.com/flex022/user_avatar/discourse.stonehearth.net/brunosupremo/32/54819_2.png) [@BrunoSupremo](https://discourse.stonehearth.net/u/BrunoSupremo)\
**Post date:** [October 6, 2018, 9:03pm UTC](https://discourse.stonehearth.net/t/how-do-i-create-my-own-paths-for-a-i-that-are-not-restricted-to-walking-on-the-terrain/38331/1 "2018-10-06T21:03:26Z")

</div>

I want to have a controlled path where I can feed the A.I. my own set of points it should follow. But I want this path to not be restrict to the terrain. For example, I want to be able to go up in the air, or through objects.  
Anyone know how?

---

<div class="post-metadata">

**Author:** ![paulthegreat](https://sea2.discourse-cdn.com/flex022/user_avatar/discourse.stonehearth.net/paulthegreat/32/62395_2.png) [@paulthegreat](https://discourse.stonehearth.net/u/paulthegreat)\
**Post date:** [October 6, 2018, 10:12pm UTC](https://discourse.stonehearth.net/t/how-do-i-create-my-own-paths-for-a-i-that-are-not-restricted-to-walking-on-the-terrain/38331/2 "2018-10-06T22:12:57Z")

</div>

I would look at `ai/actions/follow_path_action.lua` and `ai/lib/follow_path.lua`, as well as the `pathfinder_component`, to see how paths that are generated by things like `_radiant.sim.create_direct_path_finder(...)` actually get used. Then you could modify (or create your own) `follow_path.lua` to allow for the type of movement you want, if it doesn’t already allow for it, and generate path objects that contain the necessary fields/values to accomplish that.

It would certainly be nice to have more transparency about those data structures and functions though.
