Please post your questions in the how do I section ...
For the timer , I think the timer fires once and then starts counting
I'm not sure about this ...
You could try and fix it by adding a global boolean (TimerSet) to the object
And add the following script to your game
Ontop of your every X seconds condition
Add Is TimerSet
and just below your spawning scripts
-- Set TimerSet to true
I am not sure if that fixes the problem , but you could try it out !