From 2a8869566e9e503b36d9cdb0406c001f6ee48f5c Mon Sep 17 00:00:00 2001
From: Pregmodder <pregmodder@gmail.com>
Date: Mon, 9 Mar 2020 13:50:56 -0400
Subject: [PATCH] Stud WIP

---
 js/003-data/gameVariableData.js               |   2 +
 .../backwardsCompatibility.js                 |   6 +
 .../backwardsCompatibility/datatypeCleanup.js |   3 +
 src/js/statsChecker/statsChecker.js           |   2 +-
 src/uncategorized/endWeek.tw                  |   2 +-
 src/uncategorized/saLongTermEffects.tw        | 314 ++++++++++++++----
 src/uncategorized/saServeYourOtherSlaves.tw   | 268 +++++++++------
 src/uncategorized/slaveAssignmentsReport.tw   |  32 ++
 8 files changed, 456 insertions(+), 173 deletions(-)

diff --git a/js/003-data/gameVariableData.js b/js/003-data/gameVariableData.js
index aacf42e2c64..dd9c612b8d7 100644
--- a/js/003-data/gameVariableData.js
+++ b/js/003-data/gameVariableData.js
@@ -1364,6 +1364,8 @@ App.Data.resetOnNGPlus = {
 	CoursingAssociation: 0,
 	Lurcher: 0,
 	coursed: 0,
+	Stud: 0,
+	StudCum: 0,
 	RaidingMercenaries: 0,
 	raided: 0,
 	MixedMarriage: 0,
diff --git a/src/data/backwardsCompatibility/backwardsCompatibility.js b/src/data/backwardsCompatibility/backwardsCompatibility.js
index 4ca3c240c98..c3dee04d55d 100644
--- a/src/data/backwardsCompatibility/backwardsCompatibility.js
+++ b/src/data/backwardsCompatibility/backwardsCompatibility.js
@@ -1019,6 +1019,12 @@ App.Update.globalVariables = function() {
 			V.foodConsumption = ((V.lowerClass * V.foodRate.lower) + (V.middleClass * V.foodRate.middle) + (V.upperClass * V.foodRate.upper) + (V.topClass * V.foodRate.top)); /* total amount food consumed per week */
 		}
 	}
+	
+	//Stud stuff
+	{
+		V.Stud = V.Stud || 0;
+		V.StudCum = Math.max(+V.StudCum, 0) || 0;
+	}
 
 	EconomyDatatypeCleanup();
 	ArcologyDatatypeCleanup();
diff --git a/src/data/backwardsCompatibility/datatypeCleanup.js b/src/data/backwardsCompatibility/datatypeCleanup.js
index 2fdc6b01af5..d4e1596aded 100644
--- a/src/data/backwardsCompatibility/datatypeCleanup.js
+++ b/src/data/backwardsCompatibility/datatypeCleanup.js
@@ -1998,6 +1998,9 @@ window.FacilityDatatypeCleanup = (function() {
 		if (V.Lurcher) {
 			V.Lurcher = V.slaves[V.slaveIndices[V.Lurcher.ID]];
 		}
+		if (V.Stud) {
+			V.Stud = V.slaves[V.slaveIndices[V.Stud.ID]];
+		}
 	}
 
 	function FacilityIDArrayCleanup() {
diff --git a/src/js/statsChecker/statsChecker.js b/src/js/statsChecker/statsChecker.js
index 150443db16e..f6a30845da8 100644
--- a/src/js/statsChecker/statsChecker.js
+++ b/src/js/statsChecker/statsChecker.js
@@ -540,7 +540,7 @@ window.isSurgicallyImproved = function(slave) {
 window.isFullyPotent = function(slave) {
 	if (!slave) {
 		return null;
-	} else if (slave.dick > 0 && slave.balls > 0 && slave.ballType !== "sterile" && slave.hormoneBalance < 100 && slave.drugs !== "hormone blockers") {
+	} else if (slave.dick > 0 && slave.balls > 0 && slave.ballType !== "sterile" && slave.hormoneBalance < 100 && slave.drugs !== "hormone blockers" && slave.pubertyXY === 1) {
 		return true;
 	}
 	return false;
diff --git a/src/uncategorized/endWeek.tw b/src/uncategorized/endWeek.tw
index cf6757fce58..28ae617d993 100644
--- a/src/uncategorized/endWeek.tw
+++ b/src/uncategorized/endWeek.tw
@@ -255,7 +255,7 @@
 	<<set $PC.pregWeek++>>
 <</if>>
 
-<<set $HGEnergy = 0, $HGCum = 0, $HGSlaveSuccess = 0, $HeadGirl = 0, $Recruiter = 0, $Madam = 0, $unMadam = 0, $madamCashBonus = 0, $whorePriceAdjustment = {}, $DJ = 0, $unDJ = 0, $DJRepBonus = 0, $Milkmaid = 0, $Farmer = 0, $Collectrix = 0, $Stewardess = 0, $Schoolteacher = 0, $Wardeness = 0, $Concubine = 0, $Attendant = 0, $Matron = 0, $Nurse = 0, $Bodyguard = 0, $fuckSlaves = 0, $freeSexualEnergy = 0, $publicServants = 0, $cumSlaves = 0, $averageDick = 0, $slavesWithWorkingDicks = 0, $slaveJobValues = {}>>
+<<set $HGEnergy = 0, $HGCum = 0, $HGSlaveSuccess = 0, $HeadGirl = 0, $Recruiter = 0, $Madam = 0, $unMadam = 0, $madamCashBonus = 0, $whorePriceAdjustment = {}, $DJ = 0, $unDJ = 0, $DJRepBonus = 0, $Milkmaid = 0, $Farmer = 0, $Collectrix = 0, $Stewardess = 0, $Schoolteacher = 0, $Wardeness = 0, $Concubine = 0, $Attendant = 0, $Matron = 0, $Nurse = 0, $Bodyguard = 0, $Stud = 0, $StudCum = 0, $fuckSlaves = 0, $freeSexualEnergy = 0, $publicServants = 0, $cumSlaves = 0, $averageDick = 0, $slavesWithWorkingDicks = 0, $slaveJobValues = {}>>
 
 /* GAMEOVERS */
 <<if $slaves.length < 1>>
diff --git a/src/uncategorized/saLongTermEffects.tw b/src/uncategorized/saLongTermEffects.tw
index 84f52f1165d..b70c7956926 100644
--- a/src/uncategorized/saLongTermEffects.tw
+++ b/src/uncategorized/saLongTermEffects.tw
@@ -4282,7 +4282,7 @@
 			<<set WombImpregnate($slaves[$i], $slaves[$i].pregType, -1, 1)>>
 			<<set $activeSlave = $slaves[$i]>><<if $slaves[$i].mpreg == 1>><<= VCheck.Anal(10)>><<else>><<= VCheck.Vaginal(10)>><</if>><<set $slaves[$i] = $activeSlave>>
 
-		<<elseif (($slaves[$i].vagina == 0) || (($slaves[$i].anus == 0) && ($slaves[$i].mpreg > 0)))>>
+		<<elseif (($slaves[$i].vagina == 0) || (($slaves[$i].anus == 0) && ($slaves[$i].mpreg > 0))) && ($Stud == 0 || $universalRulesImpregnation != "Stud" || $Stud.career != "a breeding bull" || $Stud.fetish != "mindbroken" || !canWalk($Stud))>>
 		<<elseif ($HeadGirl != 0) && ($HeadGirl.dick > 0) && ($slaves[$i].ID != $HeadGirl.ID) && ($universalRulesImpregnation == "HG") && canPenetrate($HeadGirl)>>
 			<<setLocalPronouns $HeadGirl 2>>
 			<<if $slaves[$i].HGExclude == 1>>
@@ -4293,6 +4293,134 @@
 				It's $HeadGirl.slaveName's responsibility to impregnate fertile slaves, but $HeadGirl.slaveName's sperm is unable to fertilize $slaves[$i].slaveName's ova, so _he2 doesn't waste _his2 seed trying.
 			<<else>>
 				It's $HeadGirl.slaveName's responsibility to get $him pregnant, a task your
+				<<if ($HeadGirl.fetish == "pregnancy") && ($HeadGirl.fetishKnown == 1) && ($HeadGirl.fetishStrength > 60)>>
+					pregnancy fetishist Head Girl is @@.hotpink;extremely pleased@@ to take on.
+					<<set $HeadGirl.devotion += 2>>
+					<<if ($HeadGirl.fetishStrength <= 95)>>
+						The opportunity @@.lightcoral;strengthens _his2 pregnancy fetish@@ by indulgence.
+						<<set $HeadGirl.fetishStrength += 4>>
+					<</if>>
+				<<elseif $HeadGirl.career == "a breeding bull">>
+					Head Girl feels @@.hotpink;_he2 was meant for.@@
+					<<set $HeadGirl.devotion += 1>>
+				<<elseif ($HeadGirl.attrXX > 65) && ($HeadGirl.attrKnown == 1)>>
+					<<if $slaves[$i].mpreg == 1>>ass<<else>>pussy<</if>>-hungry Head Girl is @@.hotpink;happy@@ to take on.
+					<<set $HeadGirl.devotion += 1>>
+				<<else>>
+					Head Girl approaches dutifully.
+				<</if>>
+				<<if ($slaves[$i].fuckdoll == 0) && ($slaves[$i].fetish != "mindbroken")>>
+					<<if $slaves[$i].career == "a dairy cow" && ($slaves[$i].devotion <= 20)>>
+						$slaves[$i].slaveName feels a need to be bred by the Head Girl, and submits $himself to $his superior's virile cock until @@.lime;conception@@ is verified.
+					<<elseif ($slaves[$i].devotion <= 20) && ($slaves[$i].trust >= -20)>>
+						<<if (($HeadGirl.fetish == "sadist") || ($HeadGirl.fetish == "dom")) && ($HeadGirl.fetishKnown == 1) && ($HeadGirl.fetishStrength > 60)>>
+							_His2 interest is piqued, however, when $slaves[$i].slaveName shows signs of resistance. $HeadGirl.slaveName @@.hotpink;enthusiastically@@ @@.mediumorchid;rapes the poor $girl@@ pregnant, ejaculating inside _his2 victim more often than is really necessary for @@.lime;conception.@@
+							<<set $HeadGirl.devotion += 2, $slaves[$i].devotion -= 5>>
+						<<else>>
+							$slaves[$i].slaveName tries to resist _him2, so $HeadGirl.slaveName is forced to @@.mediumorchid;rape the poor $girl@@ pregnant, regularly ejaculating inside $him until @@.lime;conception@@ is confirmed.
+							<<set $slaves[$i].devotion -= 4>>
+						<</if>>
+						<<if ($slaves[$i].sexualFlaw == "none")>>
+							This unpleasant interlude leaves $him @@.red;hating penetration@@ of $his violated <<if $slaves[$i].mpreg == 1>>anus<<else>>pussy<</if>>.
+							<<if $slaves[$i].mpreg == 1>>
+								<<set $slaves[$i].sexualFlaw = "hates anal">>
+							<<else>>
+								<<set $slaves[$i].sexualFlaw = "hates penetration">>
+							<</if>>
+						<</if>>
+					<<elseif ($slaves[$i].devotion <= 20)>>
+						<<if (($HeadGirl.fetish == "sadist") || ($HeadGirl.fetish == "dom")) && ($HeadGirl.fetishKnown == 1) && ($HeadGirl.fetishStrength > 60)>>
+							_His2 interest is piqued, however, when it becomes clear that $slaves[$i].slaveName, though fearfully obedient, is not happy with being bred. $HeadGirl.slaveName @@.hotpink;enthusiastically@@ ensures that _his2 victim @@.mediumorchid;does not enjoy@@ a week of being @@.lime;raped pregnant.@@
+							<<set $HeadGirl.devotion += 2, $slaves[$i].devotion -= 3>>
+						<<else>>
+							$slaves[$i].slaveName, though fearfully obedient, is not happy with being bred, but $HeadGirl.slaveName @@.mediumorchid;rapes the poor $girl@@ pregnant anyway, regularly ejaculating inside $him until @@.lime;conception@@ is confirmed.
+							<<set $slaves[$i].devotion -= 2>>
+						<</if>>
+						<<if ($slaves[$i].sexualFlaw == "none")>>
+							This unpleasant interlude leaves $him @@.red;hating penetration@@ of $his violated <<if $slaves[$i].mpreg == 1>>anus<<else>>pussy<</if>>.
+							<<if $slaves[$i].mpreg == 1>>
+								<<set $slaves[$i].sexualFlaw = "hates anal">>
+							<<else>>
+								<<set $slaves[$i].sexualFlaw = "hates penetration">>
+							<</if>>
+						<</if>>
+					<<elseif ($slaves[$i].devotion < 75)>>
+						<<if ($slaves[$i].fetish == "pregnancy") && ($slaves[$i].fetishKnown == 1) && ($slaves[$i].fetishStrength > 60)>>
+							$slaves[$i].slaveName, a pregnancy fetishist, is @@.hotpink;very willing to be bred@@ by your Head Girl, and eagerly takes $his superior's cock bareback until @@.lime;conception@@ is verified.
+							<<set $slaves[$i].devotion += 2>>
+							<<if ($slaves[$i].fetishStrength <= 95)>>
+								Such total satisfaction of $his pregnancy fantasies @@.lightcoral;strengthens $his fetish.@@
+								<<set $slaves[$i].fetishStrength += 4>>
+							<</if>>
+							<<set $slaves[$i].need = 0>>
+						<<else>>
+							$slaves[$i].slaveName is willing to be bred by the Head Girl, and takes $his superior's cock bareback until @@.lime;conception@@ is verified.
+						<</if>>
+					<<else>>
+						<<if ($slaves[$i].fetish == "pregnancy") && ($slaves[$i].fetishKnown == 1) && ($slaves[$i].fetishStrength > 60)>>
+							$slaves[$i].slaveName, a pregnancy fetishist, considers getting bred by your Head Girl @@.hotpink;a dream come true,@@ and gets fucked bareback daily until @@.lime;conception@@ is verified.
+							<<set $slaves[$i].devotion += 2>>
+							<<if ($slaves[$i].fetishStrength <= 95)>>
+								Such total satisfaction of $his pregnancy fantasies @@.lightcoral;strengthens $his fetish.@@
+								<<set $slaves[$i].fetishStrength += 4>>
+							<</if>>
+							<<set $slaves[$i].need = 0>>
+						<<else>>
+							$slaves[$i].slaveName is @@.hotpink;quite willing to be bred@@ by the Head Girl, whom $he respects, and submissively takes $his superior's cock bareback until @@.lime;conception@@ is verified.
+							<<set $slaves[$i].devotion += 1>>
+						<</if>>
+					<</if>>
+				<</if>> /* closes not Fuckdoll not mindbroken */
+				<<set $slaves[$i].preg = 1, $slaves[$i].pregSource = $HeadGirl.ID, $slaves[$i].pregWeek = 1, $slaves[$i].pregKnown = 1, $HGCum -= 1, $HeadGirl.counter.penetrative += 10, $penetrativeTotal += 10>>
+				<<set $slaves[$i].pregType = setPregType($slaves[$i])>>
+				<<set WombImpregnate($slaves[$i], $slaves[$i].pregType, $HeadGirl.ID, 1)>>
+				<<set $activeSlave = $slaves[$i]>><<if $slaves[$i].mpreg == 1>><<= VCheck.Anal(10)>><<else>><<= VCheck.Vaginal(10)>><</if>><<set $slaves[$i] = $activeSlave>>
+				<<set _saLTE = $slaveIndices[$HeadGirl.ID]>>
+				<<if def _saLTE>>
+					<<set $slaves[_saLTE] = $HeadGirl>>
+				<</if>>
+			<</if>> /* closes HG impregnation */
+		<<elseif ($Stud != 0) && ($universalRulesImpregnation == "Stud")>>
+			<<setLocalPronouns $Stud 2>>
+			<<if ($slaves[$i].HGExclude == 1 || $slaves[$i].breedingMark == 1) && ($Stud.career != "a breeding bull" || $Stud.fetish != "mindbroken" || !canWalk($Stud))>>
+				It's $Stud.slaveName's role to impregnate fertile slaves, but $slaves[$i].slaveName is not included on the list.
+			<<elseif $StudCum == 0>>
+				It's $Stud.slaveName's role to impregnate fertile slaves, but your Stud can only cum enough to ensure impregnation in a limited number of slaves each week.
+			<<elseif !canBreed($slaves[$i], $Stud)>>
+				It's $Stud.slaveName's role to impregnate fertile slaves, but _his2 sperm is unable to fertilize $slaves[$i].slaveName's ova, so there is no point in forcing the union.
+			<<else>>
+				It's $Stud.slaveName's role to impregnate $him, a task your
+				/* stud's reaction to the role */
+				<<if $Stud.fuckdoll > 0>>
+				<<elseif $Stud.fetish == "mindbroken">>
+					<<if $Stud.career == "a breeding bull" && canWalk($Stud)>>
+					<<else>>
+					<</if>>
+				<<elseif $Stud.career == "a breeding bull">>
+					<<if ($Stud.fetish == "pregnancy") && ($Stud.fetishKnown == 1) && ($Stud.fetishStrength > 60)>>
+					<<elseif ($Stud.fetish == "dom") && ($Stud.fetishKnown == 1) && ($Stud.fetishStrength > 60)>>
+					<<else>>
+					<</if>>
+				<<elseif $Stud.devotion <= 20>>
+					<<if $Stud.trust >= -20>>
+						<<if ($Stud.fetish == "pregnancy") && ($Stud.fetishKnown == 1) && ($Stud.fetishStrength > 60)>>
+						<<elseif ($Stud.fetish == "submissive") && ($Stud.fetishKnown == 1) && ($Stud.fetishStrength > 60)>>
+						<<else>>
+						<</if>>
+					<<else>>
+						<<if ($Stud.fetish == "pregnancy") && ($Stud.fetishKnown == 1) && ($Stud.fetishStrength > 60)>>
+						<<elseif ($Stud.fetish == "masochist") && ($Stud.fetishKnown == 1) && ($Stud.fetishStrength > 60)>>
+						<<elseif ($Stud.fetish == "submissive") && ($Stud.fetishKnown == 1) && ($Stud.fetishStrength > 60)>>
+						<<else>>
+						<</if>>
+					<</if>>
+				<<else>>
+					<<if ($Stud.fetish == "pregnancy") && ($Stud.fetishKnown == 1) && ($Stud.fetishStrength > 60)>>
+					<<elseif ($Stud.fetish == "dom") && ($Stud.fetishKnown == 1) && ($Stud.fetishStrength > 60)>>
+					<<else>>
+					<</if>>
+				<</if>>
+
 				<<if ($HeadGirl.fetish == "pregnancy") && ($HeadGirl.fetishKnown == 1) && ($HeadGirl.fetishStrength > 60)>>
 					pregnancy fetishist Head Girl is @@.hotpink;extremely pleased@@ to take on.
 					<<set $HeadGirl.devotion += 2>>
@@ -4309,82 +4437,138 @@
 					<<else>>
 						Head Girl approaches dutifully.
 					<</if>>
-
-					<<if ($slaves[$i].fuckdoll == 0) && ($slaves[$i].fetish != "mindbroken")>>
+				<</if>>
+				/* slave's response to the deed */
+				<<if ($slaves[$i].fuckdoll == 0) && ($slaves[$i].fetish != "mindbroken")>>
+					<<if $Stud.fuckdoll > 0>>
 						<<if $slaves[$i].career == "a dairy cow" && ($slaves[$i].devotion <= 20)>>
-							$slaves[$i].slaveName feels a need to be bred by the Head Girl, and submits $himself to $his superior's virile cock until @@.lime;conception@@ is verified.
 						<<elseif ($slaves[$i].devotion <= 20) && ($slaves[$i].trust >= -20)>>
-							<<if (($HeadGirl.fetish == "sadist") || ($HeadGirl.fetish == "dom")) && ($HeadGirl.fetishKnown == 1) && ($HeadGirl.fetishStrength > 60)>>
-								_His2 interest is piqued, however, when $slaves[$i].slaveName shows signs of resistance. $HeadGirl.slaveName @@.hotpink;enthusiastically@@ @@.mediumorchid;rapes the poor $girl@@ pregnant, ejaculating inside _his2 victim more often than is really necessary for @@.lime;conception.@@
-								<<set $HeadGirl.devotion += 2, $slaves[$i].devotion -= 5>>
-							<<else>>
-								$slaves[$i].slaveName tries to resist _him2, so $HeadGirl.slaveName is forced to @@.mediumorchid;rape the poor $girl@@ pregnant, regularly ejaculating inside $him until @@.lime;conception@@ is confirmed.
-								<<set $slaves[$i].devotion -= 4>>
-							<</if>>
-							<<if ($slaves[$i].sexualFlaw == "none")>>
-								This unpleasant interlude leaves $him @@.red;hating penetration@@ of $his violated <<if $slaves[$i].mpreg == 1>>anus<<else>>pussy<</if>>.
-								<<if $slaves[$i].mpreg == 1>>
-									<<set $slaves[$i].sexualFlaw = "hates anal">>
-								<<else>>
-									<<set $slaves[$i].sexualFlaw = "hates penetration">>
-								<</if>>
-							<</if>>
 						<<elseif ($slaves[$i].devotion <= 20)>>
-							<<if (($HeadGirl.fetish == "sadist") || ($HeadGirl.fetish == "dom")) && ($HeadGirl.fetishKnown == 1) && ($HeadGirl.fetishStrength > 60)>>
-								_His2 interest is piqued, however, when it becomes clear that $slaves[$i].slaveName, though fearfully obedient, is not happy with being bred. $HeadGirl.slaveName @@.hotpink;enthusiastically@@ ensures that _his2 victim @@.mediumorchid;does not enjoy@@ a week of being @@.lime;raped pregnant.@@
-								<<set $HeadGirl.devotion += 2, $slaves[$i].devotion -= 3>>
-							<<else>>
-								$slaves[$i].slaveName, though fearfully obedient, is not happy with being bred, but $HeadGirl.slaveName @@.mediumorchid;rapes the poor $girl@@ pregnant anyway, regularly ejaculating inside $him until @@.lime;conception@@ is confirmed.
-								<<set $slaves[$i].devotion -= 2>>
-							<</if>>
-							<<if ($slaves[$i].sexualFlaw == "none")>>
-								This unpleasant interlude leaves $him @@.red;hating penetration@@ of $his violated <<if $slaves[$i].mpreg == 1>>anus<<else>>pussy<</if>>.
-								<<if $slaves[$i].mpreg == 1>>
-									<<set $slaves[$i].sexualFlaw = "hates anal">>
-								<<else>>
-									<<set $slaves[$i].sexualFlaw = "hates penetration">>
-								<</if>>
-							<</if>>
 						<<elseif ($slaves[$i].devotion < 75)>>
-							<<if ($slaves[$i].fetish == "pregnancy") && ($slaves[$i].fetishKnown == 1) && ($slaves[$i].fetishStrength > 60)>>
-								$slaves[$i].slaveName, a pregnancy fetishist, is @@.hotpink;very willing to be bred@@ by your Head Girl, and eagerly takes $his superior's cock bareback until @@.lime;conception@@ is verified.
-								<<set $slaves[$i].devotion += 2>>
-								<<if ($slaves[$i].fetishStrength <= 95)>>
-									Such total satisfaction of $his pregnancy fantasies @@.lightcoral;strengthens $his fetish.@@
-									<<set $slaves[$i].fetishStrength += 4>>
-								<</if>>
-								<<set $slaves[$i].need = 0>>
+						<<else>>
+						<</if>>
+					<<elseif $Stud.dick == 0>>
+						<<if $slaves[$i].career == "a dairy cow" && ($slaves[$i].devotion <= 20)>>
+						<<elseif ($slaves[$i].devotion <= 20) && ($slaves[$i].trust >= -20)>>
+						<<elseif ($slaves[$i].devotion <= 20)>>
+						<<elseif ($slaves[$i].devotion < 75)>>
+						<<else>>
+						<</if>>
+					<<elseif canPenetrate($Stud)>>
+						<<if $slaves[$i].career == "a dairy cow" && ($slaves[$i].devotion <= 20)>>
+						<<elseif ($slaves[$i].devotion <= 20) && ($slaves[$i].trust >= -20)>>
+						<<elseif ($slaves[$i].devotion <= 20)>>
+						<<elseif ($slaves[$i].devotion < 75)>>
+						<<else>>
+						<</if>>
+					<<elseif canAchieveErection($Stud)>>
+						<<if $slaves[$i].career == "a dairy cow" && ($slaves[$i].devotion <= 20)>>
+						<<elseif ($slaves[$i].devotion <= 20) && ($slaves[$i].trust >= -20)>>
+						<<elseif ($slaves[$i].devotion <= 20)>>
+						<<elseif ($slaves[$i].devotion < 75)>>
+						<<else>>
+						<</if>>
+					<<else>>
+						<<if $slaves[$i].career == "a dairy cow" && ($slaves[$i].devotion <= 20)>>
+						<<elseif ($slaves[$i].devotion <= 20) && ($slaves[$i].trust >= -20)>>
+						<<elseif ($slaves[$i].devotion <= 20)>>
+						<<elseif ($slaves[$i].devotion < 75)>>
+						<<else>>
+						<</if>>
+					<</if>>
+				<<elseif $Stud.career == "a breeding bull" && canPenetrate($Stud)>>
+					<<if $slaves[$i].career == "a dairy cow" && ($slaves[$i].devotion <= 20)>>
+					<<elseif ($slaves[$i].devotion <= 20) && ($slaves[$i].trust >= -20)>>
+					<<elseif ($slaves[$i].devotion <= 20)>>
+					<<elseif ($slaves[$i].devotion < 75)>>
+					<<else>>
+					<</if>>
+				<<elseif $Stud.devotion > 20 && canPenetrate($Stud)>>
+					<<if $slaves[$i].career == "a dairy cow" && ($slaves[$i].devotion <= 20)>>
+					<<elseif ($slaves[$i].devotion <= 20) && ($slaves[$i].trust >= -20)>>
+					<<elseif ($slaves[$i].devotion <= 20)>>
+					<<elseif ($slaves[$i].devotion < 75)>>
+					<<else>>
+					<</if>>
+				<</if>>
+
+
+					<<if $slaves[$i].career == "a dairy cow" && ($slaves[$i].devotion <= 20)>>
+						$slaves[$i].slaveName feels a need to be bred by the Head Girl, and submits $himself to $his superior's virile cock until @@.lime;conception@@ is verified.
+						<<set $slaves[$i].need -= 10>>
+					<<elseif ($slaves[$i].devotion <= 20) && ($slaves[$i].trust >= -20)>>
+						<<if (($HeadGirl.fetish == "sadist") || ($HeadGirl.fetish == "dom")) && ($HeadGirl.fetishKnown == 1) && ($HeadGirl.fetishStrength > 60)>>
+							_His2 interest is piqued, however, when $slaves[$i].slaveName shows signs of resistance. $HeadGirl.slaveName @@.hotpink;enthusiastically@@ @@.mediumorchid;rapes the poor $girl@@ pregnant, ejaculating inside _his2 victim more often than is really necessary for @@.lime;conception.@@
+							<<set $HeadGirl.devotion += 2, $slaves[$i].devotion -= 5>>
+						<<else>>
+							$slaves[$i].slaveName tries to resist _him2, so $HeadGirl.slaveName is forced to @@.mediumorchid;rape the poor $girl@@ pregnant, regularly ejaculating inside $him until @@.lime;conception@@ is confirmed.
+							<<set $slaves[$i].devotion -= 4>>
+						<</if>>
+						<<if ($slaves[$i].sexualFlaw == "none")>>
+							This unpleasant interlude leaves $him @@.red;hating penetration@@ of $his violated <<if $slaves[$i].mpreg == 1>>anus<<else>>pussy<</if>>.
+							<<if $slaves[$i].mpreg == 1>>
+								<<set $slaves[$i].sexualFlaw = "hates anal">>
 							<<else>>
-								$slaves[$i].slaveName is willing to be bred by the Head Girl, and takes $his superior's cock bareback until @@.lime;conception@@ is verified.
+								<<set $slaves[$i].sexualFlaw = "hates penetration">>
 							<</if>>
+						<</if>>
+					<<elseif ($slaves[$i].devotion <= 20)>>
+						<<if (($HeadGirl.fetish == "sadist") || ($HeadGirl.fetish == "dom")) && ($HeadGirl.fetishKnown == 1) && ($HeadGirl.fetishStrength > 60)>>
+							_His2 interest is piqued, however, when it becomes clear that $slaves[$i].slaveName, though fearfully obedient, is not happy with being bred. $HeadGirl.slaveName @@.hotpink;enthusiastically@@ ensures that _his2 victim @@.mediumorchid;does not enjoy@@ a week of being @@.lime;raped pregnant.@@
+							<<set $HeadGirl.devotion += 2, $slaves[$i].devotion -= 3>>
 						<<else>>
-							<<if ($slaves[$i].fetish == "pregnancy") && ($slaves[$i].fetishKnown == 1) && ($slaves[$i].fetishStrength > 60)>>
-								$slaves[$i].slaveName, a pregnancy fetishist, considers getting bred by your Head Girl @@.hotpink;a dream come true,@@ and gets fucked bareback daily until @@.lime;conception@@ is verified.
-								<<set $slaves[$i].devotion += 2>>
-								<<if ($slaves[$i].fetishStrength <= 95)>>
-									Such total satisfaction of $his pregnancy fantasies @@.lightcoral;strengthens $his fetish.@@
-									<<set $slaves[$i].fetishStrength += 4>>
-								<</if>>
-								<<set $slaves[$i].need = 0>>
+							$slaves[$i].slaveName, though fearfully obedient, is not happy with being bred, but $HeadGirl.slaveName @@.mediumorchid;rapes the poor $girl@@ pregnant anyway, regularly ejaculating inside $him until @@.lime;conception@@ is confirmed.
+							<<set $slaves[$i].devotion -= 2>>
+						<</if>>
+						<<if ($slaves[$i].sexualFlaw == "none")>>
+							This unpleasant interlude leaves $him @@.red;hating penetration@@ of $his violated <<if $slaves[$i].mpreg == 1>>anus<<else>>pussy<</if>>.
+							<<if $slaves[$i].mpreg == 1>>
+								<<set $slaves[$i].sexualFlaw = "hates anal">>
 							<<else>>
-								$slaves[$i].slaveName is @@.hotpink;quite willing to be bred@@ by the Head Girl, whom $he respects, and submissively takes $his superior's cock bareback until @@.lime;conception@@ is verified.
-								<<set $slaves[$i].devotion += 1>>
+								<<set $slaves[$i].sexualFlaw = "hates penetration">>
 							<</if>>
 						<</if>>
-					<</if>> /* closes not Fuckdoll not mindbroken */
-
-					<<set $slaves[$i].preg = 1, $slaves[$i].pregSource = $HeadGirl.ID, $slaves[$i].pregWeek = 1, $slaves[$i].pregKnown = 1, $HGCum -= 1, $HeadGirl.counter.penetrative += 10, $penetrativeTotal += 10>>
-					<<set $slaves[$i].pregType = setPregType($slaves[$i])>>
-					<<set WombImpregnate($slaves[$i], $slaves[$i].pregType, $HeadGirl.ID, 1)>>
-					<<set $activeSlave = $slaves[$i]>><<if $slaves[$i].mpreg == 1>><<= VCheck.Anal(10)>><<else>><<= VCheck.Vaginal(10)>><</if>><<set $slaves[$i] = $activeSlave>>
-					<<set _saLTE = $slaveIndices[$HeadGirl.ID]>>
-					<<if def _saLTE>>
-						<<set $slaves[_saLTE] = $HeadGirl>>
+					<<elseif ($slaves[$i].devotion < 75)>>
+						<<if ($slaves[$i].fetish == "pregnancy") && ($slaves[$i].fetishKnown == 1) && ($slaves[$i].fetishStrength > 60)>>
+							$slaves[$i].slaveName, a pregnancy fetishist, is @@.hotpink;very willing to be bred@@ by your Head Girl, and eagerly takes $his superior's cock bareback until @@.lime;conception@@ is verified.
+							<<set $slaves[$i].devotion += 2>>
+							<<if ($slaves[$i].fetishStrength <= 95)>>
+								Such total satisfaction of $his pregnancy fantasies @@.lightcoral;strengthens $his fetish.@@
+								<<set $slaves[$i].fetishStrength += 4>>
+							<</if>>
+							<<set $slaves[$i].need = 0>>
+						<<else>>
+							$slaves[$i].slaveName is willing to be bred by the Head Girl, and takes $his superior's cock bareback until @@.lime;conception@@ is verified.
+							<<set $slaves[$i].need -= 20>>
+						<</if>>
+					<<else>>
+						<<if ($slaves[$i].fetish == "pregnancy") && ($slaves[$i].fetishKnown == 1) && ($slaves[$i].fetishStrength > 60)>>
+							$slaves[$i].slaveName, a pregnancy fetishist, considers getting bred by your Head Girl @@.hotpink;a dream come true,@@ and gets fucked bareback daily until @@.lime;conception@@ is verified.
+							<<set $slaves[$i].devotion += 2>>
+							<<if ($slaves[$i].fetishStrength <= 95)>>
+								Such total satisfaction of $his pregnancy fantasies @@.lightcoral;strengthens $his fetish.@@
+								<<set $slaves[$i].fetishStrength += 4>>
+							<</if>>
+							<<set $slaves[$i].need = 0>>
+						<<else>>
+							$slaves[$i].slaveName is @@.hotpink;quite willing to be bred@@ by the Head Girl, whom $he respects, and submissively takes $his superior's cock bareback until @@.lime;conception@@ is verified.
+							<<set $slaves[$i].devotion += 1>>
+							<<set $slaves[$i].need -= 30>>
+						<</if>>
 					<</if>>
+				<</if>> /* closes not Fuckdoll not mindbroken */
 
-				<</if>> /* closes HG impregnation */
-			<<elseif _conceptionSeed > (50-($reproductionFormula*10))>>
-				<<switch $slaves[$i].assignment>>
+				<<set $slaves[$i].preg = 1, $slaves[$i].pregSource = $Stud.ID, $slaves[$i].pregWeek = 1, $slaves[$i].pregKnown = 1, $StudCum -= 1, $Stud.counter.penetrative += 10, $penetrativeTotal += 10>>
+				<<set $slaves[$i].pregType = setPregType($slaves[$i])>>
+				<<set WombImpregnate($slaves[$i], $slaves[$i].pregType, $Stud.ID, 1)>>
+				<<set $activeSlave = $slaves[$i]>><<if $slaves[$i].mpreg == 1>><<= VCheck.Anal(10)>><<else>><<= VCheck.Vaginal(10)>><</if>><<set $slaves[$i] = $activeSlave>>
+				<<set _saLTE = $slaveIndices[$Stud.ID]>>
+				<<if def _saLTE>>
+					<<set $slaves[_saLTE] = $Stud>>
+				<</if>>
+			<</if>> /* closes stud impregnation */
+		<<elseif _conceptionSeed > (50-($reproductionFormula*10))>>
+			<<switch $slaves[$i].assignment>>
 				<<case "rest" "stay confined" "be confined in the cellblock">>
 					/* these assignments are safe from random impregnation */
 
diff --git a/src/uncategorized/saServeYourOtherSlaves.tw b/src/uncategorized/saServeYourOtherSlaves.tw
index d53e34e24bb..f889e220192 100644
--- a/src/uncategorized/saServeYourOtherSlaves.tw
+++ b/src/uncategorized/saServeYourOtherSlaves.tw
@@ -10,124 +10,180 @@
 <</if>>
 
 <<if ndef _dom>>
-
-<<if $slaves[$i].devotion <= 20>>
-	<<if $slaves[$i].trust >= -20>>
-		is forced to serve your other slaves' sexual needs by constant punishment. Being castigated and raped @@.gold;frightens $him into obedience.@@
-		<<set $slaves[$i].trust -= 5>>
-		<<if $slaves[$i].sexualQuirk == "strugglefuck queen">>
-			$He secretly likes being raped @@.hotpink;and wants more.@@
-			<<set $slaves[$i].devotion += 1>>
-		<<elseif $slaves[$i].sexualQuirk == "gagfuck queen">>
-			$He secretly enjoys the oral abuse @@.hotpink;and wants more.@@
-			<<set $slaves[$i].devotion += 1>>
-		<<elseif $slaves[$i].sexualQuirk == "painal queen">>
-			$He secretly gets off on assrape @@.hotpink;and wants more.@@
-			<<set $slaves[$i].devotion += 1>>
-		<</if>>
-	<<else>>
-		is forced to serve your other slaves' sexual needs by $his fear. Being used on pain of punishment @@.hotpink;habituates $him to subservience@@ and @@.gold;keeps $him fearful.@@
-		<<set $slaves[$i].trust -= 2, $slaves[$i].devotion += 2>>
-		<<if $slaves[$i].sexualQuirk == "strugglefuck queen">>
-			$He privately likes being abused @@.hotpink;and accepts it.@@
-			<<set $slaves[$i].devotion += 1>>
-		<<elseif $slaves[$i].sexualQuirk == "gagfuck queen">>
-			$He privately likes being an oral toy and @@.hotpink;and accepts it.@@
-			<<set $slaves[$i].devotion += 1>>
-		<<elseif $slaves[$i].sexualQuirk == "painal queen">>
-			$He privately likes being an anal toy @@.hotpink;and accepts it.@@
-			<<set $slaves[$i].devotion += 1>>
-		<</if>>
-	<</if>>
-<<else>>
-	obediently serves your other slaves' sexual needs. Being used as a sexual outlet for everyone @@.hotpink;keeps $him in a good frame of mind.@@
-	<<set $slaves[$i].trust += 2>>
-	<<if $slaves[$i].sexualQuirk == "strugglefuck queen">>
-		$He @@.hotpink;openly enjoys@@ how other slaves can take whatever they want from $him.
-		<<set $slaves[$i].devotion += 1>>
-	<<elseif $slaves[$i].sexualQuirk == "gagfuck queen">>
-		$He @@.hotpink;openly enjoys@@ how other slaves can order $him to lick, suck or blow anything at all.
-		<<set $slaves[$i].devotion += 1>>
-	<<elseif $slaves[$i].sexualQuirk == "painal queen">>
-		$He @@.hotpink;openly enjoys@@ how other slaves can shove anything up $his butt without asking first.
-		<<set $slaves[$i].devotion += 1>>
-	<</if>>
-<</if>>
-<<if hasAnyLegs($slaves[$i]) && !canWalk($slaves[$i])>>
-	Since $he's forced to crawl around, $he's especially vulnerable.
-<</if>>
-<<if ($dormitoryPopulation+$roomsPopulation-$subSlaves) > 5>>
-	<<set _load = ($subSlaves/($dormitoryPopulation+$roomsPopulation-$subSlaves))>>
-	<<if _load > .8>>
-		Since there are enough other slaves servicing your stock alongside $him, $he sees limited action.
-	<<elseif _load > .5>>
-		With $his servicing sisters, $his workload is reasonable and $he isn't overworked.
-	<<elseif _load > .2>>
-		While $he may have support in servicing your stock, $he is overwhelmed by their collective need.
-		<<set $slaves[$i].health.tired += 10>>
-		<<if $slaves[$i].sexualFlaw == "self hating">>
-			With so many other slaves taking advantage of $his body, $his life's purpose of @@.hotpink;being nothing more than a piece of meat@@ has come true.
-			<<set $slaves[$i].devotion += 5>>
-		<<elseif $slaves[$i].sexualFlaw == "attention whore">>
-			With little competition for $his body and so many slaves eager to use $him, $his dreams of being the center of attention are @@.hotpink;have come true.@@
-			<<if $slaves[$i].weight < 10 && $slaves[$i].belly < 100>>
-				<<if canDoVaginal($slaves[$i]) && $slaves[$i].vagina > 0 && canDoAnal($slaves[$i]) && $slaves[$i].anus > 0>>
-					$He ends each day cradling $his cum swollen stomach, marveling at the "attention" bestowed upon $him.
-				<<elseif (canDoVaginal($slaves[$i]) && $slaves[$i].vagina > 0) || (canDoAnal($slaves[$i]) && $slaves[$i].anus > 0)>>
-					By the end of the day, $his stomach has a noticeable bulge to it from all the "attention" bestowed upon $him.
+	<<if $slaves[$i].subTarget == -1>>
+		<<if $slaves[$i].fuckdoll > 0>>
+			is positioned as a sperm dispenser for fertile slaves to ride or milk at their discretion.
+		<<elseif $slaves[$i].fetish == "mindbroken">>
+			<<if $slaves[$i].career == "a breeding bull" && canWalk($slaves[$i])>>
+				is allowed to freely breed any fertile slaves $he can find.
+			<<else>>
+				is left as a sperm dispenser for fertile slaves to ride or milk at their discretion.
+			<</if>>
+		<<elseif $slaves[$i].career == "a breeding bull">>
+			sees it as $his duty to impregnate everyone in $his path. A role $he @@.hotpink;appreciates@@ you @@.mediumaquamarine;untrusting $him with.@@
+			<<set $slaves[$i].devotion += 1, $slaves[$i].trust += 1>>
+			<<if $slaves[$i].fetish == "pregnancy">>
+				$He @@.hotpink;thoroughly enjoys@@ $his dream-like, pregnancy-centered life.
+				<<set $slaves[$i].devotion += 1>>
+			<<elseif $slaves[$i].fetish == "dom">>
+				$He @@.hotpink;thoroughly enjoys@@ having permission to mount and breed any slave $he wants.
+				<<set $slaves[$i].devotion += 1>>
+			<</if>>
+		<<elseif $slaves[$i].devotion <= 20>>
+			<<if $slaves[$i].trust >= -20>>
+				is bound and laid out to serve as a source of cum for your fertile slaves. Being tied up and left to the wolves @@.gold;frightens $him into obedience.@@
+				<<set $slaves[$i].trust -= 5>>
+				<<if $slaves[$i].fetish == "pregnancy">>
+					$He secretly gets off at the thought of all the wombs $he will seed @@.hotpink;and can't wait to get to work.@@
+					<<set $slaves[$i].devotion += 1>>
+				<<elseif $slaves[$i].fetish == "submissive">>
+					$He secretly enjoys the prospect of being pinned by mothers-to-be and milked to orgasm; @@.hotpink;$he needs it.@@
+					<<set $slaves[$i].devotion += 1>>
+				<</if>>
+			<<else>>
+				is forced to serve as a sperm dispenser for your fertile slaves. Being taken advantage of in such a way @@.hotpink;habituates $him to subservience@@ and @@.gold;keeps $him fearful.@@
+				<<set $slaves[$i].trust -= 2, $slaves[$i].devotion += 2>>
+					<<if $slaves[$i].fetish == "pregnancy">>
+					$He privately enjoys the prospect of fertilizing so many eggs @@.hotpink;and accepts it.@@
+					<<set $slaves[$i].devotion += 1>>
+				<<elseif $slaves[$i].fetish == "masochist">>
+					$He privately enjoys the prospect of rough treatment @@.hotpink;and accepts it.@@
+					<<set $slaves[$i].devotion += 1>>
+				<<elseif $slaves[$i].fetish == "submissive">>
+					$He privately enjoys the prospect of being treated as a mere tool @@.hotpink;and accepts it.@@
+					<<set $slaves[$i].devotion += 1>>
 				<</if>>
 			<</if>>
-			<<set $slaves[$i].devotion += 5>>
-		<<elseif $slaves[$i].energy > 95>>
-			With so many other slaves using $his body, $his @@.hotpink;burning libido is finally sated.@@
-			<<set $slaves[$i].devotion += 2>>
+		<<else>>
+			obediently seeds your fertile slaves. Being used as a stud @@.hotpink;keeps $him in a good frame of mind@@ and @@.mediumorchid;builds $his trust in you.@@
+			<<set $slaves[$i].devotion += 2, $slaves[$i].trust += 2>>
+			<<if $slaves[$i].fetish == "pregnancy">>
+				$He @@.hotpink;openly enjoys@@ getting the honor of fathering new slaves on your behalf.
+				<<set $slaves[$i].devotion += 1>>
+			<<elseif $slaves[$i].fetish == "dom">>
+				$He @@.hotpink;openly enjoys@@ the prospect of laying claim to any womb that comes $his way.
+				<<set $slaves[$i].devotion += 1>>
+			<</if>>
 		<</if>>
+		<<set $slaves[$i].need -= 50>>
 	<<else>>
-		Since <<if $subSlaves == 1>>$he is the only slave<<else>>there are so few other slaves<</if>> servicing your stock, $he is used to the @@.red;point of exhaustion.@@
-		<<set $slaves[$i].health.tired += 30>>
-		<<run healthDamage($slaves[$i], 10)>>
-		<<if $averageDick > 5>>
-			<<if canDoVaginal($slaves[$i]) && $slaves[$i].vagina > 0 && $slaves[$i].vagina < 4>>
-				<<if ($slaves[$i].vagina*40)-($averageDick*5) < random(1,100)>>
-					So many huge dicks pistoning in and out of $his pussy @@.lime;loosen $him up.@@
-					<<set $slaves[$i].vagina++>>
-					<<set $slaves[$i].counter.vaginal += 3, $vaginalTotal += 3>>
+		<<if $slaves[$i].devotion <= 20>>
+			<<if $slaves[$i].trust >= -20>>
+				is forced to serve your other slaves' sexual needs by constant punishment. Being castigated and raped @@.gold;frightens $him into obedience.@@
+				<<set $slaves[$i].trust -= 5>>
+				<<if $slaves[$i].sexualQuirk == "strugglefuck queen">>
+					$He secretly likes being raped @@.hotpink;and wants more.@@
+					<<set $slaves[$i].devotion += 1>>
+				<<elseif $slaves[$i].sexualQuirk == "gagfuck queen">>
+					$He secretly enjoys the oral abuse @@.hotpink;and wants more.@@
+					<<set $slaves[$i].devotion += 1>>
+				<<elseif $slaves[$i].sexualQuirk == "painal queen">>
+					$He secretly gets off on assrape @@.hotpink;and wants more.@@
+					<<set $slaves[$i].devotion += 1>>
 				<</if>>
-			<</if>>
-			<<if canDoAnal($slaves[$i]) && $slaves[$i].anus > 0 && $slaves[$i].anus < 4>>
-				<<if ($slaves[$i].anus*40)-($averageDick*5) < random(1,100)>>
-					@@.lime;$His asshole is loosened@@ after being pounded by so many giant cocks.
-					<<set $slaves[$i].anus++>>
-					<<set $slaves[$i].counter.anal += 3, $analTotal += 3>>
+			<<else>>
+				is forced to serve your other slaves' sexual needs by $his fear. Being used on pain of punishment @@.hotpink;habituates $him to subservience@@ and @@.gold;keeps $him fearful.@@
+				<<set $slaves[$i].trust -= 2, $slaves[$i].devotion += 2>>
+				<<if $slaves[$i].sexualQuirk == "strugglefuck queen">>
+					$He privately likes being abused @@.hotpink;and accepts it.@@
+					<<set $slaves[$i].devotion += 1>>
+				<<elseif $slaves[$i].sexualQuirk == "gagfuck queen">>
+					$He privately likes being an oral toy and @@.hotpink;and accepts it.@@
+					<<set $slaves[$i].devotion += 1>>
+				<<elseif $slaves[$i].sexualQuirk == "painal queen">>
+					$He privately likes being an anal toy @@.hotpink;and accepts it.@@
+					<<set $slaves[$i].devotion += 1>>
 				<</if>>
 			<</if>>
+		<<else>>
+			obediently serves your other slaves' sexual needs. Being used as a sexual outlet for everyone @@.hotpink;keeps $him in a good frame of mind.@@
+			<<set $slaves[$i].devotion += 2>>
+			<<if $slaves[$i].sexualQuirk == "strugglefuck queen">>
+				$He @@.hotpink;openly enjoys@@ how other slaves can take whatever they want from $him.
+				<<set $slaves[$i].devotion += 1>>
+			<<elseif $slaves[$i].sexualQuirk == "gagfuck queen">>
+				$He @@.hotpink;openly enjoys@@ how other slaves can order $him to lick, suck or blow anything at all.
+				<<set $slaves[$i].devotion += 1>>
+			<<elseif $slaves[$i].sexualQuirk == "painal queen">>
+				$He @@.hotpink;openly enjoys@@ how other slaves can shove anything up $his butt without asking first.
+				<<set $slaves[$i].devotion += 1>>
+			<</if>>
+		<</if>>
+		<<if hasAnyLegs($slaves[$i]) && !canWalk($slaves[$i])>>
+			Since $he's forced to crawl around, $he's especially vulnerable.
 		<</if>>
-		<<if $slaves[$i].sexualFlaw == "self hating">>
-			With so many other slaves taking advantage of $his body, $his life's purpose of @@.hotpink;being nothing more than a piece of meat@@ has come true.
-			<<set $slaves[$i].devotion += 5>>
-		<<elseif $slaves[$i].sexualFlaw == "attention whore">>
-			With little competition for $his body and so many slaves eager to use $him, $his dreams of being the center of attention are @@.hotpink;have come true.@@
-			<<if $slaves[$i].weight < 10 && $slaves[$i].belly < 100>>
-				<<if canDoVaginal($slaves[$i]) && $slaves[$i].vagina > 0 && canDoAnal($slaves[$i]) && $slaves[$i].anus > 0>>
-					$He ends each day cradling $his cum swollen stomach, marveling at the "attention" bestowed upon $him.
-				<<elseif (canDoVaginal($slaves[$i]) && $slaves[$i].vagina > 0) || (canDoAnal($slaves[$i]) && $slaves[$i].anus > 0)>>
-					By the end of the day, $his stomach has a noticeable bulge to it from all the "attention" bestowed upon $him.
+		<<if ($dormitoryPopulation+$roomsPopulation-$subSlaves) > 5>>
+			<<set _load = ($subSlaves/($dormitoryPopulation+$roomsPopulation-$subSlaves))>>
+			<<if _load > .8>>
+				Since there are enough other slaves servicing your stock alongside $him, $he sees limited action.
+			<<elseif _load > .5>>
+				With $his servicing sisters, $his workload is reasonable and $he isn't overworked.
+			<<elseif _load > .2>>
+				While $he may have support in servicing your stock, $he is overwhelmed by their collective need.
+				<<set $slaves[$i].health.tired += 10>>
+				<<if $slaves[$i].sexualFlaw == "self hating">>
+					With so many other slaves taking advantage of $his body, $his life's purpose of @@.hotpink;being nothing more than a piece of meat@@ has come true.
+					<<set $slaves[$i].devotion += 5>>
+				<<elseif $slaves[$i].sexualFlaw == "attention whore">>
+					With little competition for $his body and so many slaves eager to use $him, $his dreams of being the center of attention are @@.hotpink;have come true.@@
+					<<if $slaves[$i].weight < 10 && $slaves[$i].belly < 100>>
+						<<if canDoVaginal($slaves[$i]) && $slaves[$i].vagina > 0 && canDoAnal($slaves[$i]) && $slaves[$i].anus > 0>>
+							$He ends each day cradling $his cum swollen stomach, marveling at the "attention" bestowed upon $him.
+						<<elseif (canDoVaginal($slaves[$i]) && $slaves[$i].vagina > 0) || (canDoAnal($slaves[$i]) && $slaves[$i].anus > 0)>>
+							By the end of the day, $his stomach has a noticeable bulge to it from all the "attention" bestowed upon $him.
+						<</if>>
+					<</if>>
+					<<set $slaves[$i].devotion += 5>>
+				<<elseif $slaves[$i].energy > 95>>
+					With so many other slaves using $his body, $his @@.hotpink;burning libido is finally sated.@@
+					<<set $slaves[$i].devotion += 2>>
+				<</if>>
+			<<else>>
+				Since <<if $subSlaves == 1>>$he is the only slave<<else>>there are so few other slaves<</if>> servicing your stock, $he is used to the @@.red;point of exhaustion.@@
+				<<set $slaves[$i].health.tired += 30>>
+				<<run healthDamage($slaves[$i], 10)>>
+				<<if $averageDick > 5>>
+					<<if canDoVaginal($slaves[$i]) && $slaves[$i].vagina > 0 && $slaves[$i].vagina < 4>>
+						<<if ($slaves[$i].vagina*40)-($averageDick*5) < random(1,100)>>
+							So many huge dicks pistoning in and out of $his pussy @@.lime;loosen $him up.@@
+							<<set $slaves[$i].vagina++>>
+							<<set $slaves[$i].counter.vaginal += 3, $vaginalTotal += 3>>
+						<</if>>
+					<</if>>
+					<<if canDoAnal($slaves[$i]) && $slaves[$i].anus > 0 && $slaves[$i].anus < 4>>
+						<<if ($slaves[$i].anus*40)-($averageDick*5) < random(1,100)>>
+							@@.lime;$His asshole is loosened@@ after being pounded by so many giant cocks.
+							<<set $slaves[$i].anus++>>
+							<<set $slaves[$i].counter.anal += 3, $analTotal += 3>>
+						<</if>>
+					<</if>>
+				<</if>>
+				<<if $slaves[$i].sexualFlaw == "self hating">>
+					With so many other slaves taking advantage of $his body, $his life's purpose of @@.hotpink;being nothing more than a piece of meat@@ has come true.
+					<<set $slaves[$i].devotion += 5>>
+				<<elseif $slaves[$i].sexualFlaw == "attention whore">>
+					With little competition for $his body and so many slaves eager to use $him, $his dreams of being the center of attention are @@.hotpink;have come true.@@
+					<<if $slaves[$i].weight < 10 && $slaves[$i].belly < 100>>
+						<<if canDoVaginal($slaves[$i]) && $slaves[$i].vagina > 0 && canDoAnal($slaves[$i]) && $slaves[$i].anus > 0>>
+							$He ends each day cradling $his cum swollen stomach, marveling at the "attention" bestowed upon $him.
+						<<elseif (canDoVaginal($slaves[$i]) && $slaves[$i].vagina > 0) || (canDoAnal($slaves[$i]) && $slaves[$i].anus > 0)>>
+							By the end of the day, $his stomach has a noticeable bulge to it from all the "attention" bestowed upon $him.
+						<</if>>
+					<</if>>
+					<<set $slaves[$i].devotion += 5>>
+				<<elseif $slaves[$i].energy > 95>>
+					With so many other slaves using $his body, $his @@.hotpink;burning libido is finally sated.@@
+					<<set $slaves[$i].devotion += 2>>
 				<</if>>
 			<</if>>
-			<<set $slaves[$i].devotion += 5>>
-		<<elseif $slaves[$i].energy > 95>>
-			With so many other slaves using $his body, $his @@.hotpink;burning libido is finally sated.@@
-			<<set $slaves[$i].devotion += 2>>
 		<</if>>
+		<<if $subSlaves <= 0>>
+			<<set $subSlaves = 1>>
+		<</if>>
+		<<set _fuckCount = Math.ceil((($dormitoryPopulation+$roomsPopulation)+random((($dormitoryPopulation+$roomsPopulation)*1),($dormitoryPopulation+$roomsPopulation)*7))/$subSlaves)>>
+		<<run SimpleSexAct.Slave($slaves[$i], _fuckCount)>>
+		<<set $slaves[$i].need -= 2*_fuckCount>>
 	<</if>>
-<</if>>
-<<if $subSlaves <= 0>>
-	<<set $subSlaves = 1>>
-<</if>>
-<<set _fuckCount = Math.ceil((($dormitoryPopulation+$roomsPopulation)+random((($dormitoryPopulation+$roomsPopulation)*1),($dormitoryPopulation+$roomsPopulation)*7))/$subSlaves)>>
-<<run SimpleSexAct.Slave($slaves[$i], _fuckCount)>>
-<<set $slaves[$i].need -= 2*_fuckCount>>
-
 <<else>> /* serving a slave */
 
 <<setLocalPronouns $slaves[_dom] 2>>
diff --git a/src/uncategorized/slaveAssignmentsReport.tw b/src/uncategorized/slaveAssignmentsReport.tw
index ad1631c7a1d..a0deb224f88 100644
--- a/src/uncategorized/slaveAssignmentsReport.tw
+++ b/src/uncategorized/slaveAssignmentsReport.tw
@@ -810,6 +810,38 @@ $sexDemandResult.topClass = Math.trunc((($NPCSexSupply.topClass + $slaveJobValue
 	<</if>>
 <</if>>
 
+<<if $Stud>>
+	<<if $slaves[$i].ID == $Stud.ID>>
+		<<set $Stud = $slaves[$i]>>
+		<<if $slaves[$i].balls == 0>>
+			<span class='slave-name'>$Stud.slaveName</span> no longer has sperm @@.yellow;and cannot serve as a Stud any more.@@<br>
+			<<set $Stud = 0>>
+		<<elseif slave.ballType == "sterile">>
+			<span class='slave-name'>$Stud.slaveName</span> no longer produces potent sperm @@.yellow;and cannot serve as a Stud any more.@@<br>
+			<<set $Stud = 0>>
+		<<elseif $slaves[$i].pubertyXY != 1>>
+			<span class='slave-name'>$Stud.slaveName</span> no longer produces mature sperm @@.yellow;and cannot serve as a Stud any more.@@<br>
+			<<set $Stud = 0>>
+		<<elseif $slaves[$i].vasectomy == 1>>
+			<span class='slave-name'>$Stud.slaveName</span> shoots blanks due to a vasectomy @@.yellow;and cannot serve as a Stud any more.@@<br>
+			<<set $Stud = 0>>
+		<</if>>
+		<<if $Stud == 0>>
+			<<set $slaves[$i].subTarget = 0>>
+		<<else>>
+			<<set $StudCum = 2+Math.trunc(($Stud.balls/5)+($Stud.energy/95)+($Stud.health.condition/95)+($Stud.devotion/95)+($reproductionFormula*5)-($Stud.tired/25))>>
+			<<if $Stud.drugs == "hyper testicle enhancement">>
+				<<set $StudCum += 3>>
+			<<elseif $Stud.drugs == "testicle enhancement">>
+				<<set $StudCum += 1>>
+			<</if>>
+			<<if $Stud.diet == "cum production">>
+				<<set $StudCum += 1>>
+			<</if>>
+		<</if>>
+	<</if>>
+<</if>>
+
 <<if $fighterIDs.includes($slaves[$i])>>
 	<<if !canWalk($slaves[$i])>>
 		<span class='slave-name'>$slaves[$i].slaveName</span> is no longer independently mobile @@.yellow;and cannot fight any more.@@ $He has been removed from $pitName roster<br>.
-- 
GitLab