To expand it further, the nodes are divided into zones so when the ball passes by another area its targets are now new nodes. Works quite well most of the time :D
Well done creating such a robust system!