darbycostello / Nav3D

3D Pathfinding and cover system plugin for UE4, using Sparse Voxel Octrees.
MIT License
118 stars 31 forks source link

Path always not found #7

Closed dom452 closed 3 years ago

dom452 commented 3 years ago

So, it's been a while since I've tested the pathing - and it seems something has gone astray?

Whenever I call Find Path Node, and then the delegate fires off, PathFound always returns false. I've tried with default values on the Nav3D component as well as a bunch of variations - the output log says;

LogTemp: Display: AIC_AirUnit_Base_C_0: Find path task called successfully LogTemp: Error: AIC_AirUnit_Base_C_0: Pathfinding failed after 1 iterations

Thoughts?

dom452 commented 3 years ago

Yup, this is weird beyond weird. I can't even get it returning true in a totally fresh project... I'm convinced the universe is just messing with me now. I also checked older versions of the plugin that I know definitely worked like a charm (PIE thing not withstanding) - same issue UE v4.26.2

dom452 commented 3 years ago

Update, Rolled back to version I downloaded from June 7, 2021. The Path is now being found in the fresh project. Update 2 Rolled back to the abovementioned version in the Dropship game project; works with the June7 version.

Total mystery to me what might have changed in any part of the environment between now and then, since I confirmed the pathing still worked after the PIE crash update?

In any case, I'll roll back for now and deal with the PIE crashes :)

dom452 commented 3 years ago

Last one, I promise...

I went through and redid the changes from every update, and note that; NavComponent.cpp Line 604
if (CurrentNode.HasChildren()) {

seems to be the thing that cause the PathFound bool on the delegate event to always return false after 1 iteration.

Also put a validity check at the top of AddPathStartLocation around Line 679 since it threw an exception upon closing and mebe it helped? Haven't had a crash yet - but it could just be luck since I'm groping around in the dark with C++