In video I am using Nav Mesh ray tracing to find the edge nav polys that are near the current chosen goal!
enables me to give each AI unit better instructions about the best way to jump to reach their current goal, if gaps are detected!
I’ve already got my gap detection system working
**Nav Mesh Ray Tracing**
Nav Mesh ray tracing is very efficient! It is much less expensive than 3D world tracing :)
It's the same concept as regular traces but only operates within the nav mesh polys.
AI Performance
Notice how in my video my AI reaches me everywhere I go, including sequential isolated platforms!
**No Extra Helpers in Level**
The only thing in level is the basic nav mesh volume!
I have not provided any assistance to the AI in the level itself! No nav links!
The idea is that in my games I need support for runtime generated platforms and gaps, so the AI must figure everything out dynamically each time they wish to path, without any extra helpers.
C++ Core, BP Accessibility and Control
Everything you see in the video is me doing C++ calculations to find the best jumping paths
I have exposed all the key variables of my algorithms to blueprints though, so that anyone can tweak the AI jumping, per creature!
That’s right! Anyone using my system can adjust my algorithms per individual creature!
I am new to UE4 but have a lot of experience coding AI in Neverwinter Nights 1 so the AI behaves more intelligently and huge performance increases. What you are doing with is incredible!
would be a great AI system base for both Enemy and Companions. Give players a few hundred things to think about.
In video I am demoing the progress of my Jump Path algorithm where I am finding jump pathways for the AI unit to follow, which necessarily involve switching between different sections of nav mesh that are not contiguous.
**Comparison**
Regular AI pathing requires navlinks to do , but I am writing my own system so I can have runtime generated geometry that the AI unit can still do jump pathing over, and there is no extra work for the level designers, I am doing it all in C++!
Efficiency?
In video you see the radial line checks I am doing.
These are not traces!
is very low level simple math calculations!
The line is being checked against a box using UE4’s related math functions, and it is very efficient!
**Tick Speed**
I am slowing down the algorithm in the video so you can see it better, and also so I can debug it as I am making it, visually seeing each phase of what it is doing.
Algorithm Overview
First I am getting all of the Edge nav areas, as seen in prior videos, then I am doing radial traces from each edge to find nearby nav areas that are facing away from the start point of where I am testing.
These found nav areas are highlighted in green!
Again no traces or even nav mesh raycasts are involved, just simple box/line math calculations!
**Next step:**
Next step will be to make check run itself over each successive step in the path, find the best points for the AI unit to path to and then jump from to get to the next point
Enjoy!
https://youtube.com/WMnGyMSfbIk
Please tell me that you’re planning to finish whole system and either get it into a future version of Unreal Engine 4 or turn it into a plugin and upload it to the marketplace!?!?! I would die of excitement if either of those two were to happen! Good work !
I can’t wait till you make all your cutting edge animation research public! * hint hint*
Hey there !
Sorry I will check out that large map you sent me at some point soon, been rather busy lately
Making my AI system into a plugin would not be too hard, given that I am developing around a single class, the character class, and it is just a series of AI components + all of my C++ code
But Epic is changing the whole AI component system in the very near future, so I need to see what changes in 4.5 and also wait for Marketplace plugins to be allowed by Epic!
**Update**
I am putting the jump pathing on hold at the moment to work on other aspects of Abatron, which Devero has just publicly announced here on the forums!
https://forums.unrealengine.com/showthread.php?45059-Abatron-the-making-of-a-UE4-Hybrid-game-)&p=151952&viewfull=1#post151952
He's done some amazing work with UE4 curves driven by C++ and Anim Blueprints!
Hey sorry it has been a while, but really love the progress you have made on your system! Also congrats on becoming ‘Elite’ with your 1000th post!
Have you done any analysis on the performance difference between using the nav system and your implementation, with your code only I mean, not slowing it down for so you can see how the AI is deciding it’s path (I think I read you had to slow it down for showing in video a while ago, correct me if I am wrong though)? If you are able to compare it, your system may be too advanced for a real comparison!
Actually my current implementation is a hybrid of my own systems + UE4 nav mesh system, I am basically extending the UE4 system to do fancier things!
By subclassing and extending the base UE4 nav components I can use all of their functions and the nav mesh functions as tools to build my own complex AI systems!
It’s going very very well actually!
I even got the UE4 nav system to work for the AI units in my game that is a physics-based multiplayer game, where the AI unit is always simulating physics! I had to also use a custom character movement component for that though
is a very sophisticated high tech demo of ranged AI units using a very special mesh provided to me by forum member !
After the first round of Sheer Intensity, you will see 's animation skills at work to animate the co…I mean ranged unit!
Many thanks to for the ranged unit model, you can find a download link to it earlier in thread!
Thanks !
**Gameplay Balance**
**Please be aware, I've carefully balanced unit, though it may require a bit more testing.**
Team Based Area of Effect Explosions
video also is a demonstration of Team-based AOE damage, where the melee allies of the ranged unit dont take damage, but opposing units are sent flying in all directions if they are not out right returned to their natural Tree-dom.
For those of you new to thread, video below and the description explains one of the core aspects of what I’ve been doing with AI in UE4, which is setting up targeting system and completely automated behavior where a human player is not even involved!
Here below you see my RTS units going and attacking RTS buildings, picking paths and spreading out to cover more surface area!