Need help understanding how to implement efficient client-side pathfinding for npcs

Okay, I’ve rewritten my script a little. Now, when a player enters the chase range of the npc, that player becomes the network owner of the npc model. Then, in a localscript, pathfinding and humanoid:moveto() are performed. If the player leaves the chase range of the npc, the server becomes the network owner again. It looks way smoother, but I am unsure of the implications of this setup.