I think the Enemy must attack you, otherwise you do not have any reason to just wait until you got a strong army. Not interesting at all.
So perhaps have predefined building attacked by the Enemy. That you must defend/repair otherwise you loose.
Your income could depend on time and those building using some multiplier.
Of course balance and diversify troops with melee, range, high fire rate/ low power, low fire rate/high power, etc...
Enemy must defend it-self with some diversify attacks, that it he overtime.
Lots of bullets.
Lots of polish (particles ands sound effects, screen shake, etc...)
Multiple maps leading to different strategies, with an enemy that increase in power at each level.