In my Game digital mist in the Arcade, players have a drone following them about.
The concept I used is on player creation the drone gets created too and gets set with the UID of the player its tied too.
Every tick the moving angle is set towards its player X,Y - 150 (in my game representing the position above the player)
If the distance between player and drone is bigger then a certain distance, the drone moves towards the move angle.