I'm a hobbyist programmer creating an engine to diablo like game. I would like to create an AI for my monsters which would make them move in a realistic (or at least semi realistic) way.
It's quite easy to detect player, find the shortest way towards him and make monsters to charge at that direction. In my experience moving everything linearly it's not the best AI behaviour in terms of reality. Are there any well known algorithms / approaches to make the movement more realistic (or even synchronised to make the monsters work together)?