This simple but robust AI system allow's any vehicle class, including custom one's, to move to a destination, going around obstacles that can even change at runtime, as long as it affect's the nav mesh. Very easy to implement using a simple actor component that can be used to set different settings, like a max speed multiplier to a target destination acceptance radius and other performance settings. (See last screenshot for all the options).
Update 1: Added out of the box support to simple vehicle pawns, using the simple vehicle component.
Update 2: Forward obstacles detection added. The vehicles now try to compensate detected obstacles in front of them by adjusting their throttle. This works for any actor that has the correct object type assigned, including other vehicles.
Update 3: Better detection and responses between vehicles, "road" nav modifier so vehicles can prefer a specific path and added 2 more move to modes, loop through a set of path points and a follow target where the vehicle follows a target actor.
Update 4: Added path offsetting so vehicles can distance themselfs from walls and obstacles, without needing to change any settings in the nav mesh radius.
Overview: https://youtu.be/-J20gTrL83U
Multiplayer and Dozens of Vehicles Stress Test: https://youtu.be/frtgMB2dkaA
Update 1: https://youtu.be/X__LKFrhDW0
Update 3: https://youtu.be/yGCnsWjXVCo
Update 4: https://youtu.be/yhpozFaut1M
All my other products: Click Here
Technical Details
Features:
- Works with any vehicle pawn, only requiring a few code changes (See bellow for a short tutorial);
- Makes use of the normal player controlled code and settings of the vehicles, like physics, engine curves, tire settings, etc...;
- Works with the engine's default nav mesh system, like any other AI pawn or character (See important note bellow);
Number of Blueprints: 6 (2 main blueprints and 4 used for testing scene and test vehicle).
Input: None, since it's a AI system.
Network Replicated: Yes.
Supported Development Platforms: Windows, Mac
Windows: Yes
Mac: Yes
Documentation:
- Add to your own Unreal Engine 4 project: https://youtu.be/zNd6wgiBDIg
- Add to Unreal Engine 5 or any custom vehicle class: https://youtu.be/OPoWTcisZdw (NO LONGER NEEDED)
- Combine with pre-determined spline path: https://youtu.be/jGkYGQqWNRI
- Add System To Empty Project: https://youtu.be/EJWFtsa7RLc
- Support Discord: https://discord.gg/PyNzH7N
Important/Additional Notes:
- Pay attention to your nav mesh settings, they reset everytime you re-open your level unless you have those settings set on your project settings (it's a engine related issue). For this reason, make sure you put your agent radious in the nav mesh settings to a high number (recommend 500), so the vehicle doenst try to go through places it can't fit.
- Make sure if you import the system into your own UE5 project, Chaos vehicles plugin must be enabled, if not you will get errors.