А когда follow чего он посылает клиенту?Finite State Machine.
Есть состояния и переключения между ними.
Например FSM для NPC
state: "idle" (Если задача стоять то стоим. Если патрулировать то следующее состояние "move"
state: "move"
state: "move"
state: "move" (Если дошли то точки то переключаемся в idle)
state: "idle" (Если NPC ударили то атакуем)
state: "attack" (Если цель далеко то преследуем)
state: "follow"
state: "follow"
state: "follow" (Если дошли до цели и задача атаковать то следующее состояние "attack"
state: "attack"
И т.д.
Состояний может быть масса и логика переключения масштабируется.