DoN's 3D-Pathfinding / Flying-AI system (with full source!)

I don’t think voxel based, full-3D navmesh is any more optimized than a regular, tri-based 2D one. Quite the contrary, in fact.

Hi ,
first of all thanks to bring us this amazing plugin, it’s awesome.
I used for some tests on 4.18 and it work perfectly, but yesterday i try it on 4.20 and now if a pawn exit from the nav bound and call the FlyTo node in the Behaviour Tree the editor crash with this exception:
Access violation - code c0000005 (first/second not available) There is something i can do for fix it? Thanks

Hi, any news on a 4.21 version?

Thanks!

Wondering if there’s a trick I’m missing in getting the flying unit to navigate correctly to a moving target point, such as the player.

Currently I’m spawning a Target Point at the player’s socket location. Then using the FlyTo node to fly an actor, however the actors seem to orbit a random amount of times before straightening out, and I’m wondering if there’s a setting I’m missing to have the target point be spawned or moving.

Is there any function like AI Move To (I mean in the blueprint, not in the BT)? Or must be programed manually using Schedule Pathfinding Task?

Thank you.

I am trying to figure out if I need this. I need a flying AI that can chase a point in 3D space, this point will be moving, because it’s attached to the player, who is also flying. I don’t need any obstacle avoidance. I would like to use behavior tree.

I have this installed and it can move the AI, but I feel like I want to just have 1 gigantic voxel and disable obstacle avoidance/pathfinding. I only need to go straight and the maps are big (over 100km).

Should I just use waypoints?

You just need to give that AI flyer direction vector to player (or point attached to player) all the time. Like in picture. You can add speed changes depending on distance if you wish, also some “too close” distance limit check (not in pic):

Here is the image to the picture.

Everything is set up correct and neat, Also the Behaviour tree goes through Fly To Node, but still, my mesh doesn’t fly to the given location. Help me out
Thanks. :slight_smile:

umm Hi, thanks for the plugin but…

in .4.20, “is location within navigable World” blueprint node always return true, is it a bug?

Otherwise the navigation is blocked with triggers and is not able to pass through.
and the clamp function does not clap to the nearest site

Is it all like this, or I have not known how to use it?

Hi. Yesterday got a bunch of crashes using FlyTo in nested BTs (run behaviour) in FlyTo::OnBlackboardValueChange. Looks like slight miss of nullptr check, but it helped. The nullptr hit was at myMemory->BBObserverDelegateHandle.Reset();

Greetings! A big thank you for giving out your hard work for free to budding developers!

I know essentially nothing about C++, compiling, editing files, etc (I work 100% in blueprint) and I was wondering if you could help me make a change to the source code.

Essentially all I am after is a way to add a small delay in the “Fly To” node whenever the actor reaches the end of a straight line (so taking corners, changing direction, etc). I have my behaviour tree working as I’d like so far with a helicopter that rotates towards it’s velocity direction, however the sudden changes in direction during pathfinding make the whole thing look haphazard.

I’ve taken a look at the source files, but as I’ve said I know nothing about C++. I tried making some changes (to menu names only, nothing major) but then couldn’t get UE4 to compile with my changes. :confused:

Any help from anyone in this thread is much appreciated!

Hey! How soon will the plugin be available for version 4.23?

Someone knows anything about the upgrade for 4.23? It will be very important for me.

Creator of this plugin, you aren’t initializing your variables in DonNavigationManager.h properly and I kept getting warnings. Please change these lines to prevent the initialization warnings. Thanks for your work!

\Plugins\DonAINavigation\Source\DonAINavigation\Classes\DonNavigationManager.h : 365

FVector Origin;

to

FVector Origin = FVector(0.0f, 0.0f, 0.0f);

\Plugins\DonAINavigation\Source\DonAINavigation\Classes\DonNavigationManager.h : 368

FVector Destination;

to

FVector Destination = FVector(0.0f, 0.0f, 0.0f);

Any update for 4.24?

Is the developer dead?

Please, if possible, someone re-make this for 4.24+ ? Thank You…

It updates to 4.24 fine, I got everything working after transferring input ini. (was to lazy to update settings hahahaha). Everything works as expected. I have not tried packaging yet though.(if fails may need to toss the plugins intermediate and rebuild etc).
Anyone using this for non-BT AI? I am scrapping all behaviour trees and going to attempt a Utility AI BP. Would to love to hear anyones experience with doing this.

You can have the physics volume be there and not be evaluated within the DonManagerBounds. I have crazy anti gravity physics working well with this plugin.