C++ AI without blueprints? (New UE4 Developer)

I’ve been looking at tutorials for AI, but most are in blueprints and using behavioral trees.
Is it possible to develop an AIBot/Controller without a Behavioral Tree? As in, say I want to make a test project and implement Craig Reynold’s Steering Behavior for Wander and more.
I have an understanding of implementing such without trees but would this be possible in pure code and drag the resulting class blueprint into the level and it should be fine?
Is there a function similar to update() in Unity? close I can find is Tick().

Don’t hesitate to link tutorials and such. Thanks.

Of course it’s possible! The most convenient way to implement boids behavior would be to implement your own movement components and control agent’s movement in its TickComponent function.

The proper solution however would be to implement one system that does flocking simulation and applies the results on individual agents.

I’m afraid there’s not tutorial on this topic, as far as I know (I might be mistaken!). So I suggest you build sources in debug config and did some investigation. Best way to learn anyway!

Cheers,

–mieszko

Thank!. The game that I’m working on with a group of undergraduates requires many NPC that automate themselves through a Town(like walking to different buildings or gathering at a fountain etc) so this is helpful.
However, I need slight clarification. Are you referring to the Flocking Steering Behavior or some sort of Flocking simulation that applies various steering behaviors to individual NPCs? Say there were some sort of provoked action on the NPCs. Would flocking behavior itself apply to all boids as they flee?

Also, as a system, wouldn’t something like a Hierarchical Finite State Machine mixed with steering behaviors suffice?

If we’re talking about a NPC town then you don’t need flocking/boids. You can just use RVO or Detour Crowds integration we support out of the box. Regarding NPC logic controlling HFSM should be fine (lots of complex games shipped with AI based on HFSM).