Need to start adding custom AI, but not sure what class to choose as parent.

Unfortunately my level is generated 100% at runtime, and I have NEVER been able to get a NavMesh to work on it, and all my inquiries on the subject have gone unanswered, and my searches have all come up empty handed.

SO, Let me go about this another way. I’m going to do my own AI without NavMeshes, but not sure if I should parent from Actor or Pawn. Just wondering which one will come back to haunt me the least down the road. Actor would be more generic, but are there benefits I would have by using Pawn as the base class? What is easier to reference from other BPs? I’ve never been able to successfully reference any actors I’ve created except for using a “Get All Actors of Class” node and referencing them through the array.

Or maybe I should just program my own C++ class and use that as my base and do all my movement programming in there. I’d rather keep things in BP if possible, but at this point, I’m looking for Pros and Cons of doing things different ways. (And again: Unless you have a method for me to get a navmesh working on a 100% runtime generated level, I do NOT want any suggestions that require one.)



This may be a silly question, but, did you build the collision? The Pawn class is the base class of all Actors that can be controlled by players or AI.

NavMeshes work fine with generated levels. Just stick one in the level, make sure it’s large enough. It will work when you spawn the level stuff in.

For now I’m making my Guardian bots derived from a base Pawn class. I’m doing my own AI in BP using states (an Enum) and mostly “VInterp To” to move them around. It really isn’t that much BP to deal with. I’m just missing the Dying and Scanning states. I’m completely happy doing things this way. I find I have the most control. Though, it would be nice to get the NavMesh working. I guess I can’t spawn it through the level Generator, but will have to just create one HUGE mesh to encompass the largest size I envision the levels to get. (There is no in-game pre-programmed limit. Just however far the player happens to get.)

BP AI.png

That’s what I do, it works.