diff --git a/src/SecExp/attackHandler.tw b/src/SecExp/attackHandler.tw
index 005093e0502d6165f5a7e53776250b7b13e44f51..e1c18744e8a3a8bc7e8918fa0ccd62b5abf52052 100644
--- a/src/SecExp/attackHandler.tw
+++ b/src/SecExp/attackHandler.tw
@@ -27,9 +27,9 @@
 		<<set _slaveMod -= 0.10>>
 	<<elseif $authority <= 1000>>
 		<<set _slaveMod -= 0.25>>
-	<<elseif $authority >= 5000 && $authority < 10000>>
+	<<elseif $authority >= 5000 && $authority < 15000>>
 		<<set _slaveMod += 0.10>>
-	<<elseif $authority >= 10000>>
+	<<elseif $authority >= 15000>>
 		<<set _slaveMod += 0.25>>
 	<</if>>
 	<<if $PC.career == "escort" || $PC.career == "servant">>
@@ -41,9 +41,9 @@
 		<<set _militiaMod -= 0.10>>
 	<<elseif $rep <= 1000>>
 		<<set _militiaMod -= 0.25>>
-	<<elseif $rep >= 5000 && $rep < 10000>>
+	<<elseif $rep >= 5000 && $rep < 15000>>
 		<<set _militiaMod += 0.10>>
-	<<elseif $rep >= 10000>>
+	<<elseif $rep >= 15000>>
 		<<set _militiaMod += 0.25>>
 	<</if>>
 	<<if $PC.career == "celebrity" || $PC.career == "capitalist">>
@@ -79,7 +79,6 @@
 		<<set _atkMod += 0.20>>
 		<<set _defMod += 0.10>>
 	<</if>>
-/*personal assistant*/
 <<elseif $leadingTroops == "assistant">>
 	<<if $rep < 15000 && $authority < 15000>>
 		<<set _militiaMod -= 0.15>>
@@ -94,11 +93,84 @@
 		<<set _defMod += 0.15>>
 	<</if>>
 <<elseif $leadingTroops == "bodyguard">>
-	<<set _slaveMod += 0.15>>
-	<<if $rep < 15000 && $authority < 15000>>
+	<<if $Bodyguard.devotion < -20>>
+		<<set _slaveMod -= 0.15>>
+	<<elseif $Bodyguard.devotion > 51>>
+		<<set _slaveMod += 0.15>>
+	<</if>>
+	<<if $rep < 15000 && $authority < 15000 || $Bodyguard.prestige < 1>>
+		<<set _militiaMod -= 0.15>>
+		<<set _mercMod -= 0.15>>
+	<<elseif $Bodyguard.prestige >= 2>>
+		<<set _militiaMod += 0.10>>
+		<<set _mercMod += 0.10>>
+	<</if>>
+	<<if !(setup.bodyguardCareers.includes($Bodyguard.career) && setup.HGCareers.includes($Bodyguard.career)) || $Bodyguard.intelligence <= -2>>
+		<<set _atkMod -= 0.15>>
+		<<set _defMod -= 0.15>>
+	<<if !(setup.bodyguardCareers.includes($Bodyguard.career) && setup.HGCareers.includes($Bodyguard.career)) || $Bodyguard.intelligence <= -1>>
+		<<set _atkMod -= 0.10>>
+		<<set _defMod -= 0.10>>
+	<<elseif setup.bodyguardCareers.includes($Bodyguard.career) || setup.HGCareers.includes($Bodyguard.career) || $Bodyguard.intelligence == 2>>
+		<<set _atkMod += 0.10>>
+		<<set _defMod += 0.10>>
+	<<elseif (setup.bodyguardCareers.includes($Bodyguard.career) || setup.HGCareers.includes($Bodyguard.career)) && $Bodyguard.intelligence == 2>>
+		<<set _atkMod += 0.15>>
+		<<set _defMod += 0.10>>
+	<<elseif (setup.bodyguardCareers.includes($Bodyguard.career) || setup.HGCareers.includes($Bodyguard.career)) && $Bodyguard.intelligence == 3>>
+		<<set _atkMod += 0.20>>
+		<<set _defMod += 0.15>>
+	<</if>>
+<<elseif $leadingTroops == "headGirl">>
+	<<if $HeadGirl.devotion < -20>>
+		<<set _slaveMod -= 0.15>>
+	<<elseif $HeadGirl.devotion > 51>>
+		<<set _slaveMod += 0.15>>
+	<</if>>
+	<<if ($rep < 15000 && $authority < 15000) || $HeadGirl.prestige < 1>>
 		<<set _militiaMod -= 0.15>>
 		<<set _mercMod -= 0.15>>
+	<<elseif $HeadGirl.prestige >= 2>>
+		<<set _militiaMod += 0.10>>
+		<<set _mercMod += 0.10>>
 	<</if>>
+	<<if !(setup.bodyguardCareers.includes($HeadGirl.career) && setup.HGCareers.includes($HeadGirl.career)) || $HeadGirl.intelligence <= -2>>
+		<<set _atkMod -= 0.15>>
+		<<set _defMod -= 0.15>>
+	<<if !(setup.bodyguardCareers.includes($HeadGirl.career) && setup.HGCareers.includes($HeadGirl.career)) || $HeadGirl.intelligence <= -1>>
+		<<set _atkMod -= 0.10>>
+		<<set _defMod -= 0.10>>
+	<<elseif setup.bodyguardCareers.includes($HeadGirl.career) || setup.HGCareers.includes($HeadGirl.career) || $HeadGirl.intelligence == 2>>
+		<<set _atkMod += 0.10>>
+		<<set _defMod += 0.10>>
+	<<elseif (setup.bodyguardCareers.includes($HeadGirl.career) || setup.HGCareers.includes($HeadGirl.career)) && $HeadGirl.intelligence == 2>>
+		<<set _atkMod += 0.15>>
+		<<set _defMod += 0.10>>
+	<<elseif (setup.bodyguardCareers.includes($HeadGirl.career) || setup.HGCareers.includes($HeadGirl.career)) && $HeadGirl.intelligence == 3>>
+		<<set _atkMod += 0.20>>
+		<<set _defMod += 0.15>>
+	<</if>>
+<<elseif $leadingTroops == "citizen">>
+	<<if $arcologies[0].FSDegradationist == "unset" && $arcologies[0].FSPaternalist == "unset">>
+		<<set _militiaMod += 0.15>>
+		<<set _slaveMod -= 0.15>>
+	<<elseif $arcologies[0].FSPaternalist != "unset">>
+		<<set _militiaMod += 0.15>>
+		<<set _slaveMod += 0.10>>
+	<<elseif $arcologies[0].FSDegradationist != "unset">>
+		<<set _militiaMod += 0.15>>
+		<<set _slaveMod -= 0.35>>
+	<</if>>
+	<<if $arcologies[0].FSRomanRevivalist != "unset">>
+		<<set _mercMod += 0.10>>
+	<<else>>
+		<<set _mercMod -= 0.10>>
+	<</if>>
+	<<set _atkMod += either(-1,1) * random(10) * 0.1>>
+	<<set _defMod += either(-1,1) * random(10) * 0.1>>
+<<elseif $leadingTroops == "mercenary">>
+
+<</if>>
 
 /* calculates PC army stats */
 <<if $secBots.isDeployed == 1>>
diff --git a/src/SecExp/attackOptions.tw b/src/SecExp/attackOptions.tw
index 400143b2f2588d3ffbb8d47ffb0db8f49d43ad39..c3483c3feb809f87084516afb9b08dd4ddacb1a3 100644
--- a/src/SecExp/attackOptions.tw
+++ b/src/SecExp/attackOptions.tw
@@ -189,7 +189,7 @@ You quickly lay down a plan of action:
 	<</if>>
 	<<if $HeadGirl != 0 && $slavesInArmy == 1>>
 	|
-	<<if $leadingTroops != "headgirl">>
+	<<if $leadingTroops != "headGirl">>
 		<<link "Let your head girl lead your troops">>
 			<<set $leadingTroops = "headGirl">>
 			<<replace "#leader">><strong><<print $HeadGirl.slaveName>></strong><</replace>>