Well, I don't know if there is a rule of when you should use which word. But, what I do know, that these prepositions have different meanings. Let me explain.
Я строю планы для будущего - This sentence actually conveys that you make plans so that the future can use them and benefit from them, which makes no sense. However, if you say:
Я строю планы для него - it would work okay, because he can be the one who will use the plans and benefit from them.
Я строю планы за будущее - This sentence sounds as if the future was supposed to make those plans, but you make them instead of the future. Let's compose a correct sentence with за:
Я работаю сегодня за Тома - means that you do Tom's work today instead of Tom or, for some reason, Tom couldn't come to work today and you replaced him at his work for today.
Я строю планы на будущее - It looks okay, because, in this case, на implies moving towards something, so that means that your plans are going to go towards the future, when they have reached the future the time to use the plans comes. Another correct example with на for you:
Я иду на пляж - I'm going towards/to the beech.
I hope it helps in any way