Right now, it takes forever to end a game. Even if you get the advantage early on, you can't make much progress because of the towers. Even if you kill the enemy Demigod(s), you still only get a few seconds before they respawn, which isn't nearly long enough to do much damage to the towers. Creeps can't help you much, either, since Minotaurs and Archers can't damage towers very well. However, if you just weaken the towers, you have the risk of teams just getting 5 Rooks or something similar and going straight for the Citadel, which also wouldn't be fun. So we need a way to make it worthwhile to kill Demigods without making respawn times really long (since waiting a minute to respawn would not be fun), and we also need to make it possible for better players to win faster (and for normal games to end sooner).
My idea is to set it up so that towers are weakened if a Demigod on their side dies. Say you are playing a 3v3. You take out two of the enemy Demigods and go for their towers, because the towers are now down to maybe 1/3 of their normal health; once the enemy Demigods respawn, the towers go back to normal. You could do it with percentages so that for example a tower with 1000/1500 health changd to 333/500, then was damaged by your side to 100/500, then goes to 300/1500 when the Demigods respawn.
This would also make 1v1 games much more fun; instead of playing for ages until your solitary Demigod gets enough levels and gold to actually make progress, you can kill the enemy Demigod and then destroy some towers. An expert could beat a newer player quickly by killing him/her, then taking out a tower or two, then killing them again, and etc until they win.
Thoughts?