diff --git a/src/SecExp/attackGenerator.tw b/src/SecExp/attackGenerator.tw
index ce924cd7c20aa8ad774b8a992eab3f9adf786c75..65fa49c2d45f9b2616604938ba6bb90ac2cc61ce 100644
--- a/src/SecExp/attackGenerator.tw
+++ b/src/SecExp/attackGenerator.tw
@@ -131,88 +131,88 @@
 	<<if $attackType == "raiders">>
 		<<set $attackTroops = random(40,80)>>
 		<<if $week < 30>>
-			<<set $attackTroops *= Math.ceil(random( (1*(2+($week/40))), (2*(4+($week/30))) ))>>
+			<<set $attackTroops *= Math.ceil(random( (1*(.15+($week/203))), (2*(1+($week/149))) ))>>
 		<<elseif $week < 60>>
-			<<set $attackTroops *= Math.ceil(random( (1*(2+($week/40))), (3*(4+($week/30))) ))>>
+			<<set $attackTroops *= Math.ceil(random( (1*(1.25+($week/135))), (3*(1.5+($week/99))) ))>>
 		<<elseif $week < 90>>
-			<<set $attackTroops *= Math.ceil(random( (2*(2+($week/40))), (3*(4+($week/30))) ))>>
+			<<set $attackTroops *= Math.ceil(random( (2*(1.35+($week/90))), (3*(2+($week/66))) ))>>
 		<<elseif $week < 120>>
-			<<set $attackTroops *= Math.ceil(random( (2*(2+($week/40))), (4*(4+($week/30))) ))>>
+			<<set $attackTroops *= Math.ceil(random( (2*(1.5+($week/60))), (4*(3+($week/45))) ))>>
 		<<else>>
 			<<set $attackTroops *= Math.ceil(random( (3*(2+($week/40))), (5*(4+($week/30))) ))>>
 		<</if>>
 		<<if $week < 60>>
-			<<set $attackEquip = Math.ceil(random( (0, (1*(4+($week/25))>>
+			<<set $attackEquip = Math.ceil(random( (0, (1*(4+($week/99))>>
 		<<elseif $week < 90>>
-			<<set $attackEquip = Math.ceil(random( (0, (2*(4+($week/30))) ))>>
+			<<set $attackEquip = Math.ceil(random( (0, (2*(4+($week/66))) ))>>
 		<<elseif $week < 120>>
-			<<set $attackEquip = Math.ceil(random( (0, (3*(4+($week/30))) ))>>
+			<<set $attackEquip = Math.ceil(random( (0, (3*(3+($week/45))) ))>>
 		<<else>>
 			<<set $attackEquip = Math.ceil(random( (1*(2+($week/40))), (3*(4+($week/30))) ))>>
 		<</if>>
 	<<elseif $attackType == "free city">>
 		<<set $attackTroops = random(20,40)>>
 		<<if $week < 30>>
-			<<set $attackTroops *= Math.ceil(random( (1*(2+($week/40))), (2*(4+($week/30))) ))>>
+			<<set $attackTroops *= Math.ceil(random( (1*(.15+($week/203))), (2*(1+($week/149))) ))>>
 		<<elseif $week < 60>>
-			<<set $attackTroops *= Math.ceil(random( (1*(2+($week/40))), (3*(4+($week/30))) ))>>
+			<<set $attackTroops *= Math.ceil(random( (1*(1.25+($week/135))), (3*(1.5+($week/99))) ))>>
 		<<elseif $week < 90>>
-			<<set $attackTroops *= Math.ceil(random( (2*(2+($week/40))), (3*(4+($week/30)))) )>>
+			<<set $attackTroops *= Math.ceil(random( (2*(1.35+($week/90))), (3*(2+($week/66)))) )>>
 		<<elseif $week < 120>>
-			<<set $attackTroops *= Math.ceil(random( (2*(2+($week/40))), (4*(4+($week/30)))) )>>
+			<<set $attackTroops *= Math.ceil(random( (2*(1.5+($week/60))), (4*(3+($week/45)))) )>>
 		<<else>>
 			<<set $attackTroops *= Math.ceil(random( (3*(2+($week/40))), (5*(4+($week/30))) ))>>
 		<</if>>
 		<<if $week < 60>>
-			<<set $attackEquip = Math.ceil(random( (0, (1*(4+($week/30))) ))>>
+			<<set $attackEquip = Math.ceil(random( (0, (1*(1.5+($week/99))) ))>>
 		<<elseif $week < 90>>
-			<<set $attackEquip = Math.ceil(random( (0, (3*(4+($week/30))) ))>>
+			<<set $attackEquip = Math.ceil(random( (0, (3*(2+($week/66))) ))>>
 		<<elseif $week < 120>>
-			<<set $attackEquip = Math.ceil(random( (1*(2+($week/40))), (3*(4+($week/30))) ))>>
+			<<set $attackEquip = Math.ceil(random( (1*(1+($week/60))), (3*(3+($week/45))) ))>>
 		<<else>>
 			<<set $attackEquip = Math.ceil(random( (2*(2+($week/40))), (4*(4+($week/30))) ))>>
 		<</if>>
 	<<elseif $attackType == "old world">>
 		<<set $attackTroops = random(25,50)>>
 		<<if $week < 30>>
-			<<set $attackTroops *= Math.ceil(random( (1*(2+($week/40))), (2*(4+($week/30))) ))>>
+			<<set $attackTroops *= Math.ceil(random( (1*(.15+($week/203))), (2*(1+($week/149))) ))>>
 		<<elseif $week < 60>>
-			<<set $attackTroops *= Math.ceil(random( (1*(2+($week/40))), (3*(4+($week/30))) ))>>
+			<<set $attackTroops *= Math.ceil(random( (1*(1.25+($week/135))), (3*(1.5+($week/99))) ))>>
 		<<elseif $week < 90>>
-			<<set $attackTroops *= Math.ceil(random( (2*(2+($week/40))), (3*(4+($week/30))) ))>>
+			<<set $attackTroops *= Math.ceil(random( (2*(1.35+($week/90))), (3*(2+($week/66))) ))>>
 		<<elseif $week < 120>>
-			<<set $attackTroops *= Math.ceil(random( (2*(2+($week/40))), (4*(4+($week/30))) ))>>
+			<<set $attackTroops *= Math.ceil(random( (2*(1.5+($week/60))), (4*(3+($week/45))) ))>>
 		<<else>>
 			<<set $attackTroops *= Math.ceil(random( (3*(2+($week/40))), (5*(4+($week/30))) ))>>
 		<</if>>
 		<<if $week < 60>>
-			<<set $attackEquip = Math.ceil(random( (0, (1*(4+($week/30))) ))>>
+			<<set $attackEquip = Math.ceil(random( (0, (1*(1.5+($week/99))) ))>>
 		<<elseif $week < 90>>
-			<<set $attackEquip = Math.ceil(random( (0, (3*(4+($week/30))) ))>>
+			<<set $attackEquip = Math.ceil(random( (0, (3*(2+($week/66))) ))>>
 		<<elseif $week < 120>>
-			<<set $attackEquip = Math.ceil(random( (1,3*(4+($week/30))) ))>>
+			<<set $attackEquip = Math.ceil(random( (1,3*(3+($week/45))) ))>>
 		<<else>>
 			<<set $attackEquip = Math.ceil(random( (2*(2+($week/40))), (4*(4+($week/30))) ))>>
 		<</if>>
 	<<elseif $attackType == "freedom fighters">>
 		<<set $attackTroops = random(30,60)>>
 		<<if $week < 30>>
-			<<set $attackTroops *= Math.ceil(random( (1*(2+($week/40))), (2*(4+($week/30))) ))>>
+			<<set $attackTroops *= Math.ceil(random( (1*(.15+($week/203))), (2*(1+($week/149))) ))>>
 		<<elseif $week < 60>>
-			<<set $attackTroops *= Math.ceil(random( (1*(2+($week/40))), (3*(4+($week/30))) ))>>
+			<<set $attackTroops *= Math.ceil(random( (1*(1.25+($week/135))), (3*(1.5+($week/99))) ))>>
 		<<elseif $week < 90>>
-			<<set $attackTroops *= Math.ceil(random( (2*(2+($week/40))), (3*(4+($week/30))) ))>>
+			<<set $attackTroops *= Math.ceil(random( (2*(1.35+($week/90))), (3*(2+($week/66))) ))>>
 		<<elseif $week < 120>>
-			<<set $attackTroops *= Math.ceil(random( (2*(2+($week/40))), (4*(4+($week/30))) ))>>
+			<<set $attackTroops *= Math.ceil(random( (2*(1.5+($week/60))), (4*(3+($week/45))) ))>>
 		<<else>>
 			<<set $attackTroops *= Math.ceil(random( (3*(2+($week/40))), (5*(4+($week/30))) ))>>
 		<</if>>
 		<<if $week < 60>>
-			<<set $attackEquip = Math.ceil(random( (0, (1*(4+($week/30))) ))>>
+			<<set $attackEquip = Math.ceil(random( (0, (1*(1.5+($week/99))) ))>>
 		<<elseif $week < 90>>
-			<<set $attackEquip = Math.ceil(random( (0, (3*(4+($week/30))) ))>>
+			<<set $attackEquip = Math.ceil(random( (0, (3*(2+($week/66))) ))>>
 		<<elseif $week < 120>>
-			<<set $attackEquip = Math.ceil(random( (1*(2+($week/40))), (3*(4+($week/30))) ))>>
+			<<set $attackEquip = Math.ceil(random( (1*(1+($week/60))), (3*(3+($week/45))) ))>>
 		<<else>>
 			<<set $attackEquip = Math.ceil(random( (2*(2+($week/40))), (4*(4+($week/30))) ))>>
 		<</if>>