I’m trying to make a simple AI that just walk around or move to target points. Right now there’s a lot of actors in a small space and they pile up without much space between them.
I don’t know how to change that, I if just change the collision radius they’re stuck (and can’t go through doors). I would like them to keep walking but staying at a distance from each other AND the player.
Right now if the player tries to walk through the crowd they don’t let him go through easily, I wish they could avoid him and still follow their path.
Btw I did check the RVO avoidance on my AI character but it doesn’t seem to do much
I am no programmer so If anyone can help it would be much appreciated
That is not easy problem to solve. There is no button “do avoiding AI”. However there is somewhat working (up to 5-6 pawns) solution, change AI parent class to “detour AI”. You need to turn it on somewhere in preferences, then change AI controller class to be inherited from Detour AI. It somehow works in narrow places, works quite well in open areas.
Also for AI play with EQS, its quite good system. You can use EQS with behavior trees, or after some magic (esp getting results out of it) you can pick best spots for ai from EQS query.
I found out (or rather I am in process of finding best implementations for AI) that for simple aI like some animals wandering behavior trees are best. Ie for everything that does one task at a time, like go somewhere, scratch ***, find ne spot etc. For more complicated AI best is mix of blueprints with EQS. By more complicated AI i mean bots that needd to find cover, keep formation (do not go ahead of other bots) and shoot all at once. For that it is better to use normal blueprints and call EQS. Behavior trees get ugly when you try to multitask there.
I was dealing with a lot of AI characters at first but since we have to drastically reduce their number the Detour controller might be enough.
I will take a look at que EQS, I saw that while searching for AI tutorials but didn’t spend much time on it because it seemed way to complex for what I was trying to achieve.