I used to have a plugin that made the bot watch a certain area for the ball. If the ball entered or was carried in, the bot would go in a ship, steal the ball from the carrier and put it in the specified coordinate. However, for ball spawning you don't need to steal it, you only have to make the bot move the ball when it's going to spawn (after a goal or a soccer game reset).