From c25442c781e8034aaf565463bf90e435111d24b3 Mon Sep 17 00:00:00 2001
From: Pregmodder <pregmodder@gmail.com>
Date: Mon, 10 Dec 2018 17:41:08 -0500
Subject: [PATCH] lactation changes

---
 devNotes/VersionChangeLog-Premod+LoliMod.txt  |  3 +
 devNotes/twine JS.txt                         | 12 ++--
 src/SecExp/securityReport.tw                  |  6 +-
 .../mod_EditChildCheatDatatypeCleanupNew.tw   |  5 ++
 .../mod_EditSlaveCheatDatatypeCleanup.tw      |  5 ++
 .../mod_EditSlaveCheatDatatypeCleanupNew.tw   |  5 ++
 src/gui/Encyclopedia/encyclopedia.tw          |  2 +-
 src/init/storyInit.tw                         |  1 +
 src/js/eventSelectionJS.tw                    |  4 +-
 src/js/storyJS.tw                             |  2 +-
 src/npc/acquisition.tw                        |  8 +--
 src/npc/databases/cheatmodeDatabase.tw        |  4 +-
 src/npc/databases/dSlavesDatabase.tw          |  8 +--
 src/npc/databases/ddSlavesDatabase.tw         | 10 +--
 src/npc/descriptions/fBoobs.tw                |  7 ++
 src/npc/fFeelings.tw                          | 10 +--
 src/npc/startingGirls/startingGirls.tw        |  8 +--
 src/player/actions/fondleBoobs.tw             |  7 ++
 src/pregmod/FSuckle.tw                        |  5 ++
 src/pregmod/eliteSlave.tw                     |  3 +
 src/pregmod/fNippleFuck.tw                    |  7 ++
 src/pregmod/fSlaveFeed.tw                     |  4 ++
 src/pregmod/managePersonalAffairs.tw          | 14 ++++
 src/pregmod/newChildIntro.tw                  |  4 +-
 src/pregmod/personalNotes.tw                  | 57 ++++++++++++++++
 src/pregmod/saAgent.tw                        |  2 +-
 src/pregmod/saInflation.tw                    |  9 +++
 src/pregmod/seFCTVshows.tw                    |  1 +
 src/pregmod/sePlayerBirth.tw                  |  2 +-
 src/pregmod/widgets/bodySwapReaction.tw       |  6 ++
 src/pregmod/widgets/bodyswapWidgets.tw        |  3 +
 .../widgets/playerDescriptionWidgets.tw       | 36 +++++-----
 src/pregmod/widgets/pregmodWidgets.tw         |  2 +-
 src/societies/aztec/slaveSacrifice.tw         | 16 ++---
 src/uncategorized/BackwardsCompatibility.tw   |  3 +
 src/uncategorized/REFI.tw                     | 14 ++++
 src/uncategorized/RESS.tw                     | 68 +++++++++++++++++--
 src/uncategorized/RETS.tw                     | 13 +++-
 .../freeRangeDairyAssignmentScene.tw          |  4 +-
 src/uncategorized/genericPlotEvents.tw        | 10 +++
 .../industrialDairyAssignmentScene.tw         |  2 +
 src/uncategorized/lawCompliance.tw            |  2 +-
 src/uncategorized/masterSuiteReport.tw        |  4 ++
 src/uncategorized/newSlaveIntro.tw            |  3 +-
 src/uncategorized/pRivalryActions.tw          |  9 +++
 src/uncategorized/pRivalryCapture.tw          |  2 +
 src/uncategorized/pRivalryHostage.tw          |  2 +
 src/uncategorized/reBoomerang.tw              |  2 +-
 src/uncategorized/reFSAcquisition.tw          |  2 +
 src/uncategorized/reMalefactor.tw             | 17 ++++-
 src/uncategorized/reRecruit.tw                |  4 ++
 src/uncategorized/reRelativeRecruiter.tw      | 10 +++
 src/uncategorized/recETS.tw                   | 10 +++
 src/uncategorized/remoteSurgery.tw            |  4 +-
 src/uncategorized/resFailure.tw               |  2 +
 src/uncategorized/saChoosesOwnJob.tw          |  4 ++
 src/uncategorized/saDrugs.tw                  |  4 +-
 src/uncategorized/saLongTermEffects.tw        |  9 ++-
 src/uncategorized/saPleaseYou.tw              | 13 ++++
 src/uncategorized/saRecruitGirls.tw           |  5 ++
 src/uncategorized/saServeThePublic.tw         |  1 +
 src/uncategorized/saServeYourOtherSlaves.tw   | 17 +++++
 src/uncategorized/saWhore.tw                  |  1 +
 src/uncategorized/seRecruiterSuccess.tw       |  3 +
 src/uncategorized/theSlavegirlSchool.tw       |  2 +-
 src/utility/saRulesWidgets.tw                 | 40 +++++++++++
 src/utility/slaveCreationWidgets.tw           | 16 ++++-
 67 files changed, 489 insertions(+), 91 deletions(-)

diff --git a/devNotes/VersionChangeLog-Premod+LoliMod.txt b/devNotes/VersionChangeLog-Premod+LoliMod.txt
index d97801e75c2..c3700724489 100644
--- a/devNotes/VersionChangeLog-Premod+LoliMod.txt
+++ b/devNotes/VersionChangeLog-Premod+LoliMod.txt
@@ -3,6 +3,9 @@
 0.10.7.1-1.3.x
 
 	-pregnancy size/progress tracking overhauled
+	-natural lactation overhauled
+	-natural lactation can be induced from excessive breast play and will dry up if unsed
+	-ignored natural lactation causes breast to engorge
 	-added new repop related trendsetting policies
 	-more art from deepmurk
 	-fixes
diff --git a/devNotes/twine JS.txt b/devNotes/twine JS.txt
index 0b3bc24c4e3..33ff3390675 100644
--- a/devNotes/twine JS.txt	
+++ b/devNotes/twine JS.txt	
@@ -655,7 +655,7 @@ window.milkAmount = function(slave) {
 		milk *= (1+(slave.health/50))
 		milk *= (1+(slave.weight/500))
 		milk *= (1+(slave.lactationAdaptation/500))
-		milk += (slave.boobsMilk/10)
+		milk += (slave.boobsMilk/100)
 		milk = Math.trunc(milk)
 		milk = Math.clamp(milk,1,1000000000000000000)
 		return milk
@@ -5587,7 +5587,7 @@ if(eventSlave.fetish != "mindbroken") {
 			}
 		}
 
-		if(eventSlave.labia > 1) {
+		if(eventSlave.labia > 1 && eventSlave.vagina >= 0) {
 			if(eventSlave.muscles > 5 || eventSlave.diet == "muscle building") {
 				if(eventSlave.belly < 10000) {
 					if(eventSlave.devotion > 20) {
@@ -6979,7 +6979,7 @@ if(eventSlave.fetish != "mindbroken") {
 			}
 		}
 
-		if(eventSlave.labia > 1) {
+		if(eventSlave.labia > 1 && eventSlave.vagina >= 0) {
 			if(eventSlave.muscles > 5 || eventSlave.diet == "muscle building") {
 				if(eventSlave.belly < 10000) {
 					if(eventSlave.devotion > 20) {
@@ -7612,13 +7612,13 @@ window.TatScore = function(slave) {
 		tatScore += 1;
 	}
 	if (slave.bellyTat !== 0) {
-		if (((slave.preg > $activeSlave.pregData.normalBirth/1.33) && (slave.pregType >= 20)) || (slave.belly >= 300000)) {
+		if (((slave.preg > slave.pregData.normalBirth/1.33) && (slave.pregType >= 20)) || (slave.belly >= 300000)) {
 			tatScore += 0.75;
-		} else if (((slave.preg > $activeSlave.pregData.normalBirth/2) && (slave.pregType >= 20)) || ((slave.preg > $activeSlave.pregData.normalBirth/1.33) && (slave.pregType >= 10)) || (slave.belly >= 150000)) {
+		} else if (((slave.preg > slave.pregData.normalBirth/2) && (slave.pregType >= 20)) || ((slave.preg > slave.pregData.normalBirth/1.33) && (slave.pregType >= 10)) || (slave.belly >= 150000)) {
 			tatScore += 1;
 		} else if ((slave.belly >= 10000) || (slave.bellyImplant >= 8000)) {
 			tatScore += 1;
-		} else if (((slave.preg >= $activeSlave.pregData.normalBirth/4) && (slave.pregType >= 20)) || ((slave.preg > $activeSlave.pregData.normalBirth/4) && (slave.pregType >= 10)) || (slave.belly >= 5000)) {
+		} else if (((slave.preg >= slave.pregData.normalBirth/4) && (slave.pregType >= 20)) || ((slave.preg > slave.pregData.normalBirth/4) && (slave.pregType >= 10)) || (slave.belly >= 5000)) {
 			tatScore += 0.5;
 		} else if (slave.belly >= 1500) {
 			tatScore += 0.25;
diff --git a/src/SecExp/securityReport.tw b/src/SecExp/securityReport.tw
index cb48bc883b6..aa6e0755196 100644
--- a/src/SecExp/securityReport.tw
+++ b/src/SecExp/securityReport.tw
@@ -2,11 +2,9 @@
 
 /* init */
 <<if $ACitizens > $oldACitizens>>
-	<<set _immigration = $ACitizens - $oldACitizens,
-	_emigration = 0>>
+	<<set _immigration = $ACitizens - $oldACitizens, _emigration = 0>>
 <<else>>
-	<<set _emigration = $oldACitizens - $ACitizens, /*takes into account citizens leaving and those getting enslaved*/
-	_immigration = 0>>
+	<<set _emigration = $oldACitizens - $ACitizens, _immigration = 0>> /*takes into account citizens leaving and those getting enslaved*/
 <</if>>
 <<set _secGrowth = 0>>
 <<set _secRest = 0>>
diff --git a/src/cheats/mod_EditChildCheatDatatypeCleanupNew.tw b/src/cheats/mod_EditChildCheatDatatypeCleanupNew.tw
index 7190bb770c2..a9152069dc1 100644
--- a/src/cheats/mod_EditChildCheatDatatypeCleanupNew.tw
+++ b/src/cheats/mod_EditChildCheatDatatypeCleanupNew.tw
@@ -315,6 +315,11 @@
 	<<print "Prestige set too high, reset to 3">><br>
 	<<set $tempSlave.prestige = 3>>
 <</if>>
+<<if $tempSlave.lactation > 0 && $tempSlave.lactationDuration == 0>>
+	<<set $tempSlave.lactationDuration = 2>>
+<<elseif $tempSlave.lactation == 0 && $tempSlave.lactationDuration > 0>>
+	<<set $tempSlave.lactationDuration = 0>>
+<</if>>
 <<run SetBellySize($tempSlave)>>
 
 <br>
diff --git a/src/cheats/mod_EditSlaveCheatDatatypeCleanup.tw b/src/cheats/mod_EditSlaveCheatDatatypeCleanup.tw
index 1a50994b1a0..e3e6a737e39 100644
--- a/src/cheats/mod_EditSlaveCheatDatatypeCleanup.tw
+++ b/src/cheats/mod_EditSlaveCheatDatatypeCleanup.tw
@@ -24,6 +24,11 @@
 <<else>>
 	<<set $tempSlave.pregKnown = 0, $tempSlave.pregWeek = 0>>
 <</if>>
+<<if $tempSlave.lactation > 0 && $tempSlave.lactationDuration == 0>>
+	<<set $tempSlave.lactationDuration = 2>>
+<<elseif $tempSlave.lactation == 0 && $tempSlave.lactationDuration > 0>>
+	<<set $tempSlave.lactationDuration = 0>>
+<</if>>
 <<run SlaveDatatypeCleanup($tempSlave)>> /* will break cheated pregnancies if run before the above block of code */
 
 You perform the dark rituals, pray to the dark gods and sold your soul for the power to change and mold slaves to your will.
diff --git a/src/cheats/mod_EditSlaveCheatDatatypeCleanupNew.tw b/src/cheats/mod_EditSlaveCheatDatatypeCleanupNew.tw
index 14b7412839a..4f1dd73ed08 100644
--- a/src/cheats/mod_EditSlaveCheatDatatypeCleanupNew.tw
+++ b/src/cheats/mod_EditSlaveCheatDatatypeCleanupNew.tw
@@ -177,6 +177,11 @@
 	<<print "Eugenics Breeding Marked slave detected in questionable use, defaulting slave assignment to 'rest'">><br>
 	<<= assignJob($tempSlave, "rest")>>
 <</if>>
+<<if $tempSlave.lactation > 0 && $tempSlave.lactationDuration == 0>>
+	<<set $tempSlave.lactationDuration = 2>>
+<<elseif $tempSlave.lactation == 0 && $tempSlave.lactationDuration > 0>>
+	<<set $tempSlave.lactationDuration = 0>>
+<</if>>
 <<run SetBellySize($tempSlave)>>
 
 <br>
diff --git a/src/gui/Encyclopedia/encyclopedia.tw b/src/gui/Encyclopedia/encyclopedia.tw
index df3e996ccf9..3dd3100fbaf 100644
--- a/src/gui/Encyclopedia/encyclopedia.tw
+++ b/src/gui/Encyclopedia/encyclopedia.tw
@@ -959,7 +959,7 @@ SLAVE BODY:
 
 
 <<case "Lactation">>
-	Slaves can begin to ''lactate'' two ways: naturally due to pregnancy, or artificially, through surgical implantation of a slow-release lactation-inducing drug pellet. Drug-induced lactation is more copious, but may damage [[health|Encyclopedia][$encyclopedia = "Health"]]. Larger [[breasts|Encyclopedia][$encyclopedia = "Breasts"]] will produce more milk, but not linearly: diminishing returns apply to bigger tits. Happy and [[healthy|Encyclopedia][$encyclopedia = "Health"]] cows are also more productive, and slaves with [[ovaries|Encyclopedia][$encyclopedia = "Ovaries"]] enjoy a bonus to milk production.
+	Slaves can begin to ''lactate'' two ways: naturally due to pregnancy or constant stimulation, or artificially, through surgical implantation of a slow-release lactation-inducing drug pellet. Drug-induced lactation is more copious, but may damage [[health|Encyclopedia][$encyclopedia = "Health"]]. Larger [[breasts|Encyclopedia][$encyclopedia = "Breasts"]] will produce more milk, but not linearly: diminishing returns apply to bigger tits. Happy and [[healthy|Encyclopedia][$encyclopedia = "Health"]] cows are also more productive, and slaves with [[ovaries|Encyclopedia][$encyclopedia = "Ovaries"]] enjoy a bonus to milk production. Natural lactation will dry up over time if not constantly maintained.
 
 
 <<case "Lips">>
diff --git a/src/init/storyInit.tw b/src/init/storyInit.tw
index c22bfac2e8b..71a5aeb030f 100644
--- a/src/init/storyInit.tw
+++ b/src/init/storyInit.tw
@@ -841,6 +841,7 @@ DairyRestraintsSetting($dairyRestraintsSetting)
 <<set $pregSpeedControl = 0>>
 <<set $clinicSpeedGestation = 0>>
 <<set $playerSurgery = 0>>
+<<set $playerGetsMilked = 0>>
 <<set $bodyswapAnnounced = 0>>
 <<set $surnamesForbidden = 0>>
 <<set $menstruation = 0>>
diff --git a/src/js/eventSelectionJS.tw b/src/js/eventSelectionJS.tw
index 0823008fbb3..62ec1f1d498 100644
--- a/src/js/eventSelectionJS.tw
+++ b/src/js/eventSelectionJS.tw
@@ -1117,7 +1117,7 @@ if(eventSlave.fetish != "mindbroken") {
 			}
 		}
 
-		if(eventSlave.labia > 1) {
+		if(eventSlave.labia > 1 && eventSlave.vagina >= 0) {
 			if(eventSlave.muscles > 5 || eventSlave.diet == "muscle building") {
 				if(eventSlave.belly < 10000) {
 					if(eventSlave.devotion > 20) {
@@ -2509,7 +2509,7 @@ if(eventSlave.fetish != "mindbroken") {
 			}
 		}
 
-		if(eventSlave.labia > 1) {
+		if(eventSlave.labia > 1 && eventSlave.vagina >= 0) {
 			if(eventSlave.muscles > 5 || eventSlave.diet == "muscle building") {
 				if(eventSlave.belly < 10000) {
 					if(eventSlave.devotion > 20) {
diff --git a/src/js/storyJS.tw b/src/js/storyJS.tw
index a14f4920853..217a3805a45 100644
--- a/src/js/storyJS.tw
+++ b/src/js/storyJS.tw
@@ -653,7 +653,7 @@ window.milkAmount = function(slave) {
 		milk *= (1+(slave.health/50))
 		milk *= (1+(slave.weight/500))
 		milk *= (1+(slave.lactationAdaptation/500))
-		milk += (slave.boobsMilk/10)
+		milk += (slave.boobsMilk/100)
 		milk = Math.trunc(milk)
 		milk = Math.clamp(milk,1,1000000000000000000)
 		return milk
diff --git a/src/npc/acquisition.tw b/src/npc/acquisition.tw
index e8915d07d44..4ce529e1c7e 100644
--- a/src/npc/acquisition.tw
+++ b/src/npc/acquisition.tw
@@ -288,7 +288,7 @@ The previous owner seems to have left in something of a hurry.
 		<<include "Generate XX Slave">>
 		<<set $activeSlave.devotion = random(25,45), $activeSlave.trust = random(-25,-45), $activeSlave.health = random(55,65)>>
 		<<set $activeSlave.face = random(15,100)>>
-		<<set $activeSlave.preg = random(1,40), $activeSlave.lactation = 1>>
+		<<set $activeSlave.preg = random(1,40), $activeSlave.lactation = 1, $activeSlave.lactationDuration = 2>>
 		<<run SetBellySize($activeSlave)>>
 		<<if $activeSlave.vagina > -1>>
 			<<if $activeSlave.vagina == 0>><<set $activeSlave.vagina++>><</if>>
@@ -428,7 +428,7 @@ The previous owner seems to have left in something of a hurry.
 		<<set $activeSlave.devotion = random(25,45), $activeSlave.trust = random(-25,-45), $activeSlave.health = random(25,45)>>
 		<<set $activeSlave.boobs += 100*random(10,20)>>
 		<<if $activeSlave.balls > 0>><<set $activeSlave.balls++>><</if>>
-		<<set $activeSlave.lactation = 2>>
+		<<set $activeSlave.lactation = 2, $activeSlave.lactationDuration = 2>>
 		<<set $activeSlave.clothes = "Western clothing", $activeSlave.collar = "leather with cowbell", $activeSlave.shoes = "flats">>
 		<<set $activeSlave.assignment = "get milked">>
 	<<case "PhysicalIdealist">>
@@ -559,7 +559,7 @@ The previous owner seems to have left in something of a hurry.
 		<<include "Generate XX Slave">>
 		<<set $activeSlave.devotion = random(25,45), $activeSlave.trust = random(-25,-45), $activeSlave.health = random(55,65)>>
 		<<set $activeSlave.face = random(15,100)>>
-		<<set $activeSlave.preg = random(10,40), $activeSlave.pregType = random(3,8), $activeSlave.lactation = 1>>
+		<<set $activeSlave.preg = random(10,40), $activeSlave.pregType = random(3,8), $activeSlave.lactation = 1, $activeSlave.lactationDuration = 2>>
 		<<run SetBellySize($activeSlave)>>
 		<<set $activeSlave.birthsTotal = 5>>
 		<<set $activeSlave.bellySag = 20, $activeSlave.bellySagPreg = 20>>
@@ -626,7 +626,7 @@ The previous owner seems to have left in something of a hurry.
 		<<elseif $activeSlave.energy > 95>>
 			$activeSlave.slaveName is a remarkable sexual addict, and I believe she will be very happy to meet you.
 		<<elseif $activeSlave.fetish == "pregnancy">>
-			<<if $activeSlave.preg > $activeSlave.pregData.normalBirth/4>>
+			<<if $activeSlave.preg > 10>> /* this is fine as it is so general and avoids having to deal with all the issues trying to define heroslaves brings */ 
 				$activeSlave.slaveName is currently in the dormitory masturbating over her growing pregnancy, and <<if $PC.belly >= 5000>>will certainly be eager to meet you<<else>>I believe she will be happy to show it to you<</if>>.
 			<<else>>
 				$activeSlave.slaveName is currently in the dormitory examining herself to try to discern her fertility, and I believe she will be <<if $PC.belly >= 5000>>eager to get acquainted with you<<else>>happy to meet you<</if>>.
diff --git a/src/npc/databases/cheatmodeDatabase.tw b/src/npc/databases/cheatmodeDatabase.tw
index 26e3bb4eb41..d797156c685 100644
--- a/src/npc/databases/cheatmodeDatabase.tw
+++ b/src/npc/databases/cheatmodeDatabase.tw
@@ -33,7 +33,7 @@
 //_HS.slaveName,//
 
 <<set _HS = clone($activeSlave)>>
-<<set _HS.slaveName = "Cornflower", _HS.birthName = "Alysa", _HS.ID = 990003, _HS.relation = "daughter", _HS.relationTarget = 990005, _HS.relationship = 3, _HS.relationshipTarget = 990005, _HS.assignment = "get milked", _HS.birthWeek = random(0,51), _HS.health = 20, _HS.devotion = 12, _HS.muscles = 50, _HS.height = 190, _HS.race = "black", _HS.hColor = "black", _HS.pubicHColor = "black", _HS.skin = "brown", _HS.hLength = 0, _HS.hStyle = "shaved bald", _HS.pubicHStyle = "waxed", _HS.waist = -100, _HS.heels = 1, _HS.voice = 0, _HS.boobs = 6000, _HS.nipples = "huge", _HS.areolae = 2, _HS.boobsTat = "bovine patterns", _HS.lactation = 2, _HS.butt = 3, _HS.buttTat = "bovine patterns", _HS.face = 15, _HS.lips = 35, _HS.lipsTat = "bovine patterns", _HS.anus = 3, _HS.anusTat = "bovine patterns", _HS.makeup = 1, _HS.nails = 1, _HS.earPiercing = 1, _HS.nosePiercing = 2, _HS.shouldersTat = "bovine patterns", _HS.armsTat = "bovine patterns", _HS.legsTat = "bovine patterns", _HS.stampTat = "bovine patterns", _HS.oralSkill = 15, _HS.analSkill = 35, _HS.energy = 65, _HS.attrXY = 40, _HS.fetish = "boobs", _HS.fetishKnown = 1, _HS.customTat = "A pretty blue cornflower is tattooed on each of her cheeks.", _HS.customDesc = "She once spoke with the demeaning accent of slaves from the Old South.", _HS.mother = 990005>>
+<<set _HS.slaveName = "Cornflower", _HS.birthName = "Alysa", _HS.ID = 990003, _HS.relation = "daughter", _HS.relationTarget = 990005, _HS.relationship = 3, _HS.relationshipTarget = 990005, _HS.assignment = "get milked", _HS.birthWeek = random(0,51), _HS.health = 20, _HS.devotion = 12, _HS.muscles = 50, _HS.height = 190, _HS.race = "black", _HS.hColor = "black", _HS.pubicHColor = "black", _HS.skin = "brown", _HS.hLength = 0, _HS.hStyle = "shaved bald", _HS.pubicHStyle = "waxed", _HS.waist = -100, _HS.heels = 1, _HS.voice = 0, _HS.boobs = 6000, _HS.nipples = "huge", _HS.areolae = 2, _HS.boobsTat = "bovine patterns", _HS.lactation = 2, _HS.lactationDuration = 2, _HS.butt = 3, _HS.buttTat = "bovine patterns", _HS.face = 15, _HS.lips = 35, _HS.lipsTat = "bovine patterns", _HS.anus = 3, _HS.anusTat = "bovine patterns", _HS.makeup = 1, _HS.nails = 1, _HS.earPiercing = 1, _HS.nosePiercing = 2, _HS.shouldersTat = "bovine patterns", _HS.armsTat = "bovine patterns", _HS.legsTat = "bovine patterns", _HS.stampTat = "bovine patterns", _HS.oralSkill = 15, _HS.analSkill = 35, _HS.energy = 65, _HS.attrXY = 40, _HS.fetish = "boobs", _HS.fetishKnown = 1, _HS.customTat = "A pretty blue cornflower is tattooed on each of her cheeks.", _HS.customDesc = "She once spoke with the demeaning accent of slaves from the Old South.", _HS.mother = 990005>>
 <<if $seeDicks != 100>>
 	<<set _HS.genes = "XX", _HS.vagina = 1, _HS.vaginaTat = "bovine patterns", _HS.ovaries = 1, _HS.vaginalSkill = 15, _HS.pubertyXX = 1>>
 <<else>>
@@ -54,7 +54,7 @@
 //_HS.slaveName,//
 
 <<set _HS = clone($activeSlave)>>
-<<set _HS.slaveName = "Lilac", _HS.birthName = "Lillian", _HS.ID = 990005, _HS.relation = "mother", _HS.relationTarget = 990003, _HS.relationship = 3, _HS.relationshipTarget = 990003, _HS.assignment = "get milked", _HS.birthWeek = random(0,51), _HS.actualAge = 36, _HS.physicalAge = 36, _HS.visualAge = 36, _HS.ovaryAge = 36, _HS.health = 20, _HS.devotion = 12, _HS.muscles = 50, _HS.height = 190, _HS.race = "black", _HS.hColor = "black", _HS.pubicHColor = "black", _HS.skin = "brown", _HS.hLength = 0, _HS.hStyle = "shaved bald", _HS.pubicHStyle = "waxed", _HS.waist = -55, _HS.heels = 1, _HS.boobs = 8000, _HS.nipples = "huge", _HS.areolae = 2, _HS.boobsTat = "bovine patterns", _HS.lactation = 2, _HS.butt = 4, _HS.buttTat = "bovine patterns", _HS.face = 15, _HS.lips = 35, _HS.lipsTat = "bovine patterns", _HS.anus = 3, _HS.anusTat = "bovine patterns", _HS.makeup = 1, _HS.nails = 1, _HS.earPiercing = 1, _HS.nosePiercing = 2, _HS.shouldersTat = "bovine patterns", _HS.armsTat = "bovine patterns", _HS.legsTat = "bovine patterns", _HS.stampTat = "bovine patterns", _HS.oralSkill = 15, _HS.analSkill = 35, _HS.energy = 65, _HS.attrXY = 40, _HS.fetish = "boobs", _HS.fetishKnown = 1, _HS.customTat = "A pretty purple lilac is tattooed on each of her cheeks.", _HS.customDesc = "She once spoke with the demeaning accent of slaves from the Old South.">>
+<<set _HS.slaveName = "Lilac", _HS.birthName = "Lillian", _HS.ID = 990005, _HS.relation = "mother", _HS.relationTarget = 990003, _HS.relationship = 3, _HS.relationshipTarget = 990003, _HS.assignment = "get milked", _HS.birthWeek = random(0,51), _HS.actualAge = 36, _HS.physicalAge = 36, _HS.visualAge = 36, _HS.ovaryAge = 36, _HS.health = 20, _HS.devotion = 12, _HS.muscles = 50, _HS.height = 190, _HS.race = "black", _HS.hColor = "black", _HS.pubicHColor = "black", _HS.skin = "brown", _HS.hLength = 0, _HS.hStyle = "shaved bald", _HS.pubicHStyle = "waxed", _HS.waist = -55, _HS.heels = 1, _HS.boobs = 8000, _HS.nipples = "huge", _HS.areolae = 2, _HS.boobsTat = "bovine patterns", _HS.lactation = 2, _HS.lactationDuration = 2, _HS.butt = 4, _HS.buttTat = "bovine patterns", _HS.face = 15, _HS.lips = 35, _HS.lipsTat = "bovine patterns", _HS.anus = 3, _HS.anusTat = "bovine patterns", _HS.makeup = 1, _HS.nails = 1, _HS.earPiercing = 1, _HS.nosePiercing = 2, _HS.shouldersTat = "bovine patterns", _HS.armsTat = "bovine patterns", _HS.legsTat = "bovine patterns", _HS.stampTat = "bovine patterns", _HS.oralSkill = 15, _HS.analSkill = 35, _HS.energy = 65, _HS.attrXY = 40, _HS.fetish = "boobs", _HS.fetishKnown = 1, _HS.customTat = "A pretty purple lilac is tattooed on each of her cheeks.", _HS.customDesc = "She once spoke with the demeaning accent of slaves from the Old South.">>
 <<if $seeDicks != 100>>
 	<<set _HS.genes = "XX", _HS.vagina = 1, _HS.vaginaTat = "bovine patterns", _HS.ovaries = 1, _HS.vaginalSkill = 15, _HS.pubertyXX = 1>>
 <<else>>
diff --git a/src/npc/databases/dSlavesDatabase.tw b/src/npc/databases/dSlavesDatabase.tw
index b59d72de32e..4dbe9f74d82 100644
--- a/src/npc/databases/dSlavesDatabase.tw
+++ b/src/npc/databases/dSlavesDatabase.tw
@@ -333,7 +333,7 @@
 /* set nipples to pierced, changed fetish from bisexual to submissive, increased anal skill, dunno how to handle all the techno-implants her tits etc. have as they don't seem to be size-increasing-focused, lowered health */
 
 <<set _HS = {}>>
-<<set _HS.slaveName = "Asha", _HS.birthName = "Asha", _HS.ID = _i++, _HS.birthWeek = random(0,51), _HS.actualAge = 23, _HS.physicalAge = 23, _HS.visualAge = 23, _HS.ovaryAge = 23, _HS.health = 20, _HS.devotion = 60, _HS.weight = -20, _HS.nationality = "Russian", _HS.race = "white", _HS.hColor = "blonde", _HS.pubicHColor = "blonde", _HS.skin = "white", _HS.hLength = 170, _HS.hStyle = "floor length", _HS.waist = -55, _HS.heels = 1, _HS.boobs = 1200, _HS.boobsImplant = 800, _HS.nipplesPiercing = 2, _HS.lactation = 1, _HS.butt = 6, _HS.buttImplant = 3, _HS.face = 15, _HS.faceImplant = 15, _HS.lips = 35, _HS.lipsImplant = 10, _HS.lipsPiercing = 1, _HS.tonguePiercing = 1, _HS.vagina = 1, _HS.vaginaLube = 1, _HS.clitPiercing = 1, _HS.anus = 1, _HS.ovaries = 1, _HS.earPiercing = 2, _HS.vaginalSkill = 35, _HS.oralSkill = 35, _HS.analSkill = 15, _HS.attrXY = 40, _HS.fetishKnown = 1, _HS.customTat = "She has many girly tattoos.", _HS.customDesc = "She loves hair play.", _HS.navelPiercing = 1>>
+<<set _HS.slaveName = "Asha", _HS.birthName = "Asha", _HS.ID = _i++, _HS.birthWeek = random(0,51), _HS.actualAge = 23, _HS.physicalAge = 23, _HS.visualAge = 23, _HS.ovaryAge = 23, _HS.health = 20, _HS.devotion = 60, _HS.weight = -20, _HS.nationality = "Russian", _HS.race = "white", _HS.hColor = "blonde", _HS.pubicHColor = "blonde", _HS.skin = "white", _HS.hLength = 170, _HS.hStyle = "floor length", _HS.waist = -55, _HS.heels = 1, _HS.boobs = 1200, _HS.boobsImplant = 800, _HS.nipplesPiercing = 2, _HS.lactation = 1, _HS.lactationDuration = 2, _HS.butt = 6, _HS.buttImplant = 3, _HS.face = 15, _HS.faceImplant = 15, _HS.lips = 35, _HS.lipsImplant = 10, _HS.lipsPiercing = 1, _HS.tonguePiercing = 1, _HS.vagina = 1, _HS.vaginaLube = 1, _HS.clitPiercing = 1, _HS.anus = 1, _HS.ovaries = 1, _HS.earPiercing = 2, _HS.vaginalSkill = 35, _HS.oralSkill = 35, _HS.analSkill = 15, _HS.attrXY = 40, _HS.fetishKnown = 1, _HS.customTat = "She has many girly tattoos.", _HS.customDesc = "She loves hair play.", _HS.navelPiercing = 1>>
 <<set $heroSlaves.push(_HS)>>
 /*Reduced weight, increased face and faceimplant, added piercings, corrected tattoo and customdesc syntax -BoneyM*/
 
@@ -472,7 +472,7 @@
 
 <<if $seePreg != 0>>
 <<set _HS = {}>>
-<<set _HS.slaveName = "'Milkmaid' Megan", _HS.birthName = "Megan", _HS.origin = "She was sold to you from the public slave market, and was probably kidnapped or otherwise forced into slavery.", _HS.ID = _i++, _HS.birthWeek = random(0,51), _HS.actualAge = 34, _HS.physicalAge = 34, _HS.visualAge = 34, _HS.ovaryAge = 34, _HS.health = 100, _HS.devotion = 100, _HS.nationality = "American", _HS.skin = "lightened", _HS.hStyle = "long", _HS.pubicHStyle = "bushy", _HS.waist = -55, _HS.boobs = 1350, _HS.lactation = 1, _HS.butt = 3, _HS.vagina = 2, _HS.vaginaLube = 1, _HS.vaginaPiercing = 1, _HS.preg = 27, _HS.pregType = 1, _HS.pregWeek = 27, _HS.pregKnown = 1, _HS.belly = 5000, _HS.bellyPreg = 5000, _HS.births = 1, _HS.birthsTotal = 1, _HS.anus = 3, _HS.ovaries = 1, _HS.brand = "SLAVE", _HS.brandLocation = "buttocks", _HS.earPiercing = 1, _HS.vaginalSkill = 100, _HS.oralSkill = 100, _HS.analSkill = 100, _HS.whoreSkill = 100, _HS.entertainSkill = 35, _HS.combatSkill = 0, _HS.collar = "heavy gold", _HS.shoes = "flats", _HS.energy = 100, _HS.attrXY = 40, _HS.fetishKnown = 1>>
+<<set _HS.slaveName = "'Milkmaid' Megan", _HS.birthName = "Megan", _HS.origin = "She was sold to you from the public slave market, and was probably kidnapped or otherwise forced into slavery.", _HS.ID = _i++, _HS.birthWeek = random(0,51), _HS.actualAge = 34, _HS.physicalAge = 34, _HS.visualAge = 34, _HS.ovaryAge = 34, _HS.health = 100, _HS.devotion = 100, _HS.nationality = "American", _HS.skin = "lightened", _HS.hStyle = "long", _HS.pubicHStyle = "bushy", _HS.waist = -55, _HS.boobs = 1350, _HS.lactation = 1, _HS.lactationDuration = 4, _HS.butt = 3, _HS.vagina = 2, _HS.vaginaLube = 1, _HS.vaginaPiercing = 1, _HS.preg = 27, _HS.pregType = 1, _HS.pregWeek = 27, _HS.pregKnown = 1, _HS.belly = 5000, _HS.bellyPreg = 5000, _HS.births = 1, _HS.birthsTotal = 1, _HS.anus = 3, _HS.ovaries = 1, _HS.brand = "SLAVE", _HS.brandLocation = "buttocks", _HS.earPiercing = 1, _HS.vaginalSkill = 100, _HS.oralSkill = 100, _HS.analSkill = 100, _HS.whoreSkill = 100, _HS.entertainSkill = 35, _HS.combatSkill = 0, _HS.collar = "heavy gold", _HS.shoes = "flats", _HS.energy = 100, _HS.attrXY = 40, _HS.fetishKnown = 1, _HS.face = 0, _HS.intelligence = 0>>
 <<set $heroSlaves.push(_HS)>>
 <</if>>
 
@@ -501,7 +501,7 @@
 <<set $heroSlaves.push(_HS)>>
 
 <<set _HS = {}>>
-<<set _HS.slaveName = "'Creamy' Mayu", _HS.birthName = "Mayu", _HS.ID = _i++, _HS.birthWeek = random(0,51), _HS.actualAge = 19, _HS.physicalAge = 19, _HS.visualAge = 19, _HS.ovaryAge = 19, _HS.health = 100, _HS.devotion = 100, _HS.weight = 20, _HS.height = 190, _HS.nationality = "Japanese", _HS.race = "asian", _HS.eyeColor = "blue", _HS.hColor = "black", _HS.pubicHColor = "black", _HS.skin = "pale", _HS.hStyle = "long", _HS.waist = -55, _HS.boobs = 7500, _HS.nipples = "huge", _HS.areolae = 3, _HS.boobsTat = "bovine patterns", _HS.lactation = 2, _HS.butt = 7, _HS.buttTat = "bovine patterns", _HS.face = 15, _HS.faceImplant = 65, _HS.lips = 35, _HS.lipsTat = "bovine patterns", _HS.vagina = 2, _HS.vaginaLube = 1, _HS.vaginaTat = "bovine patterns", _HS.births = 1, _HS.birthsTotal = 1, _HS.anus = 1, _HS.ovaries = 1, _HS.anusTat = "bovine patterns", _HS.earPiercing = 1, _HS.shouldersTat = "bovine patterns", _HS.armsTat = "bovine patterns", _HS.legsTat = "bovine patterns", _HS.stampTat = "bovine patterns", _HS.vaginalSkill = 100, _HS.oralSkill = 100, _HS.livingRules = "luxurious", _HS.speechRules = "permissive", _HS.releaseRules = "permissive", _HS.relationshipRules = "permissive", _HS.clothes = "a nice maid outfit", _HS.collar = "leather with cowbell", _HS.shoes = "flats", _HS.intelligence = 30, _HS.attrXY = 40, _HS.fetish = "boobs", _HS.fetishKnown = 1, _HS.customDesc = "She is quite sweaty, often soaking though any clothing she is wearing.">>
+<<set _HS.slaveName = "'Creamy' Mayu", _HS.birthName = "Mayu", _HS.ID = _i++, _HS.birthWeek = random(0,51), _HS.actualAge = 19, _HS.physicalAge = 19, _HS.visualAge = 19, _HS.ovaryAge = 19, _HS.health = 100, _HS.devotion = 100, _HS.weight = 20, _HS.height = 190, _HS.nationality = "Japanese", _HS.race = "asian", _HS.eyeColor = "blue", _HS.hColor = "black", _HS.pubicHColor = "black", _HS.skin = "pale", _HS.hStyle = "long", _HS.waist = -55, _HS.boobs = 7500, _HS.nipples = "huge", _HS.areolae = 3, _HS.boobsTat = "bovine patterns", _HS.lactation = 2, _HS.lactationDuration = 2, _HS.butt = 7, _HS.buttTat = "bovine patterns", _HS.face = 15, _HS.faceImplant = 65, _HS.lips = 35, _HS.lipsTat = "bovine patterns", _HS.vagina = 2, _HS.vaginaLube = 1, _HS.vaginaTat = "bovine patterns", _HS.births = 1, _HS.birthsTotal = 1, _HS.anus = 1, _HS.ovaries = 1, _HS.anusTat = "bovine patterns", _HS.earPiercing = 1, _HS.shouldersTat = "bovine patterns", _HS.armsTat = "bovine patterns", _HS.legsTat = "bovine patterns", _HS.stampTat = "bovine patterns", _HS.vaginalSkill = 100, _HS.oralSkill = 100, _HS.livingRules = "luxurious", _HS.speechRules = "permissive", _HS.releaseRules = "permissive", _HS.relationshipRules = "permissive", _HS.clothes = "a nice maid outfit", _HS.collar = "leather with cowbell", _HS.shoes = "flats", _HS.intelligence = 30, _HS.attrXY = 40, _HS.fetish = "boobs", _HS.fetishKnown = 1, _HS.customDesc = "She is quite sweaty, often soaking though any clothing she is wearing.">>
 <<set $heroSlaves.push(_HS)>>
 
 <<set _HS = {}>>
@@ -532,7 +532,7 @@
 
 <<if $seePreg != 0>>
 <<set _HS = {}>>
-<<set _HS.slaveName = "'Fucknugget' Pillow", _HS.birthName = "Anika", _HS.origin = "She sold herself into slavery to escape life on the streets.", _HS.ID = _i++, _HS.birthWeek = random(0,51), _HS.actualAge = 37, _HS.physicalAge = 37, _HS.visualAge = 37, _HS.ovaryAge = 37, _HS.health = 80, _HS.devotion = 100, _HS.weight = 40, _HS.origRace = "white", _HS.override_Race = 1, _HS.race = "latina", _HS.eyeColor = "blue", _HS.hColor = "red", _HS.pubicHColor = "red", _HS.hStyle = "long", _HS.waist = -100, _HS.amp = 1, _HS.boobs = 6260, _HS.boobsImplant = 4200, _HS.nipplesPiercing = 2, _HS.areolae = 3, _HS.boobsTat = "flowers", _HS.lactation = 2, _HS.butt = 12, _HS.buttImplant = 1, _HS.buttTat = "flowers", _HS.face = 55, _HS.faceImplant = 15, _HS.lips = 55, _HS.lipsImplant = 10, _HS.lipsPiercing = 2, _HS.lipsTat = "flowers", _HS.tonguePiercing = 2, _HS.vagina = 3, _HS.vaginaLube = 1, _HS.vaginaPiercing = 2, _HS.vaginaTat = "flowers", _HS.preg = 37, _HS.pregType = 1, _HS.pregWeek = 37, _HS.pregKnown = 1, _HS.belly = 13000, _HS.bellyPreg = 13000, _HS.births = 2, _HS.birthsTotal = 2, _HS.clitPiercing = 3, _HS.clitSetting = "boobs", _HS.anus = 2, _HS.ovaries = 1, _HS.anusPiercing = 2, _HS.anusTat = "flowers", _HS.makeup = 3, _HS.earPiercing = 2, _HS.nosePiercing = 2, _HS.eyebrowPiercing = 2, _HS.navelPiercing = 2, _HS.shouldersTat = "advertisements", _HS.stampTat = "flowers", _HS.vaginalSkill = 100, _HS.oralSkill = 100, _HS.analSkill = 100, _HS.whoreSkill = 15, _HS.aphrodisiacs = 1, _HS.addict = 99, _HS.clothes = "restrictive latex", _HS.collar = "leather with cowbell", _HS.intelligence = -70, _HS.intelligenceImplant = 30, _HS.attrXY = 40, _HS.fetish = "boobs", _HS.fetishKnown = 1>>
+<<set _HS.slaveName = "'Fucknugget' Pillow", _HS.birthName = "Anika", _HS.origin = "She sold herself into slavery to escape life on the streets.", _HS.ID = _i++, _HS.birthWeek = random(0,51), _HS.actualAge = 37, _HS.physicalAge = 37, _HS.visualAge = 37, _HS.ovaryAge = 37, _HS.health = 80, _HS.devotion = 100, _HS.weight = 40, _HS.origRace = "white", _HS.override_Race = 1, _HS.race = "latina", _HS.eyeColor = "blue", _HS.hColor = "red", _HS.pubicHColor = "red", _HS.hStyle = "long", _HS.waist = -100, _HS.amp = 1, _HS.boobs = 6260, _HS.boobsImplant = 4200, _HS.nipplesPiercing = 2, _HS.areolae = 3, _HS.boobsTat = "flowers", _HS.lactation = 2, _HS.lactationDuration = 2, _HS.butt = 12, _HS.buttImplant = 1, _HS.buttTat = "flowers", _HS.face = 55, _HS.faceImplant = 15, _HS.lips = 55, _HS.lipsImplant = 10, _HS.lipsPiercing = 2, _HS.lipsTat = "flowers", _HS.tonguePiercing = 2, _HS.vagina = 3, _HS.vaginaLube = 1, _HS.vaginaPiercing = 2, _HS.vaginaTat = "flowers", _HS.preg = 37, _HS.pregType = 1, _HS.pregWeek = 37, _HS.pregKnown = 1, _HS.belly = 13000, _HS.bellyPreg = 13000, _HS.births = 2, _HS.birthsTotal = 2, _HS.clitPiercing = 3, _HS.clitSetting = "boobs", _HS.anus = 2, _HS.ovaries = 1, _HS.anusPiercing = 2, _HS.anusTat = "flowers", _HS.makeup = 3, _HS.earPiercing = 2, _HS.nosePiercing = 2, _HS.eyebrowPiercing = 2, _HS.navelPiercing = 2, _HS.shouldersTat = "advertisements", _HS.stampTat = "flowers", _HS.vaginalSkill = 100, _HS.oralSkill = 100, _HS.analSkill = 100, _HS.whoreSkill = 15, _HS.aphrodisiacs = 1, _HS.addict = 99, _HS.clothes = "restrictive latex", _HS.collar = "leather with cowbell", _HS.intelligence = -70, _HS.intelligenceImplant = 30, _HS.attrXY = 40, _HS.fetish = "boobs", _HS.fetishKnown = 1>>
 <<set $heroSlaves.push(_HS)>>
 <</if>>
 
diff --git a/src/npc/databases/ddSlavesDatabase.tw b/src/npc/databases/ddSlavesDatabase.tw
index 3c4ba5150a4..e40627a9171 100644
--- a/src/npc/databases/ddSlavesDatabase.tw
+++ b/src/npc/databases/ddSlavesDatabase.tw
@@ -69,7 +69,7 @@
 /*Removed customdesc copied over from previous slave -BoneyM*/
 
 <<set _HS = {}>>
-<<set _HS.slaveName = "Kai", _HS.birthName = "Mordecai", _HS.genes = "XY", _HS.ID = _i++, _HS.birthWeek = random(0,51), _HS.actualAge = 23, _HS.physicalAge = 23, _HS.visualAge = 23, _HS.ovaryAge = 23, _HS.health = 20, _HS.devotion = 60, _HS.height = 191, _HS.nationality = "Russian", _HS.race = "white", _HS.hColor = "black", _HS.pubicHColor = "black", _HS.skin = "white", _HS.hLength = 140, _HS.hStyle = "knee length", _HS.waist = -55, _HS.heels = 1, _HS.boobs = 1000, _HS.boobsImplant = 600, _HS.nipplesPiercing = 2, _HS.lactation = 1, _HS.butt = 5, _HS.buttImplant = 3, _HS.lips = 35, _HS.lipsImplant = 10, _HS.lipsPiercing = 1, _HS.vagina = 1, _HS.preg = -2, _HS.dick = 5, _HS.anus = 1, _HS.prostate = 1, _HS.balls = 2, _HS.scrotum = 2, _HS.oralSkill = 35, _HS.analSkill = 15, _HS.clothes = "restrictive latex", _HS.intelligence = 25, _HS.intelligenceImplant = 30, _HS.attrXX = 40, _HS.attrXY = 40, _HS.fetishKnown = 1, _HS.customTat = "She has many girly tattoos.", _HS.customDesc = "She likes hair play.", _HS.navelPiercing = 1>>
+<<set _HS.slaveName = "Kai", _HS.birthName = "Mordecai", _HS.genes = "XY", _HS.ID = _i++, _HS.birthWeek = random(0,51), _HS.actualAge = 23, _HS.physicalAge = 23, _HS.visualAge = 23, _HS.ovaryAge = 23, _HS.health = 20, _HS.devotion = 60, _HS.height = 191, _HS.nationality = "Russian", _HS.race = "white", _HS.hColor = "black", _HS.pubicHColor = "black", _HS.skin = "white", _HS.hLength = 140, _HS.hStyle = "knee length", _HS.waist = -55, _HS.heels = 1, _HS.boobs = 1000, _HS.boobsImplant = 600, _HS.nipplesPiercing = 2, _HS.lactation = 1, _HS.lactationDuration = 2, _HS.butt = 5, _HS.buttImplant = 3, _HS.lips = 35, _HS.lipsImplant = 10, _HS.lipsPiercing = 1, _HS.vagina = 1, _HS.preg = -2, _HS.dick = 5, _HS.anus = 1, _HS.prostate = 1, _HS.balls = 2, _HS.scrotum = 2, _HS.oralSkill = 35, _HS.analSkill = 15, _HS.clothes = "restrictive latex", _HS.intelligence = 25, _HS.intelligenceImplant = 30, _HS.attrXX = 40, _HS.attrXY = 40, _HS.fetishKnown = 1, _HS.customTat = "She has many girly tattoos.", _HS.customDesc = "She likes hair play.", _HS.navelPiercing = 1>>
 <<set $heroSlaves.push(_HS)>>
 /*Increased height and balls size -BoneyM*/
 
@@ -116,12 +116,12 @@
 <<set $heroSlaves.push(_HS)>>
 
 <<set _HS = {}>>
-<<set _HS.slaveName = "Mistress Izzy", _HS.birthName = "Isabella", _HS.genes = "XY", _HS.ID = _i++, _HS.birthWeek = random(0,51), _HS.health = 70, _HS.devotion = 100, _HS.eyeColor = "black", _HS.hColor = "sparkling and shiny golden red", _HS.pubicHColor = "blonde", _HS.skin = "tanned", _HS.hLength = 60, _HS.hStyle = "in thick long heavy braids", _HS.waist = -100, _HS.boobs = 9200, _HS.boobsImplant = 6000, _HS.nipplesPiercing = 2, _HS.boobsTat = "bovine patterns", _HS.lactation = 2, _HS.milk = 3010, _HS.butt = 8, _HS.buttImplant = 1, _HS.buttTat = "bovine patterns", _HS.face = 55, _HS.faceImplant = 65, _HS.lips = 55, _HS.lipsImplant = 2, _HS.lipsPiercing = 2, _HS.lipsTat = "bovine patterns", _HS.tonguePiercing = 2, _HS.vagina = 2, _HS.vaginaPiercing = 2, _HS.vaginaTat = "bovine patterns", _HS.preg = -2, _HS.clitPiercing = 3, _HS.anus = 2, _HS.dick = 5, _HS.prostate = 1, _HS.balls = 3, _HS.scrotum = 2, _HS.anusPiercing = 2, _HS.anusTat = "bovine patterns", _HS.makeup = 2, _HS.nails = 2, _HS.brand = "SLUT", _HS.brandLocation = "buttocks", _HS.earPiercing = 2, _HS.nosePiercing = 2, _HS.eyebrowPiercing = 2, _HS.navelPiercing = 2, _HS.shouldersTat = "bovine patterns", _HS.armsTat = "bovine patterns", _HS.legsTat = "bovine patterns", _HS.stampTat = "bovine patterns", _HS.vaginalSkill = 35, _HS.oralSkill = 100, _HS.analSkill = 100, _HS.whoreSkill = 100, _HS.entertainSkill = 35, _HS.collar = "leather with cowbell", _HS.shoes = "heels", _HS.intelligence = 20, _HS.energy = 100, _HS.attrXX = 40, _HS.attrXY = 40, _HS.fetishKnown = 1, _HS.customTat = "She has tattoos of teasing, enticing messages begging others to come taste her addictive milk.", _HS.customDesc = "Her musky milky aura drives men and women around her giggly and dumb with lust.">>
+<<set _HS.slaveName = "Mistress Izzy", _HS.birthName = "Isabella", _HS.genes = "XY", _HS.ID = _i++, _HS.birthWeek = random(0,51), _HS.health = 70, _HS.devotion = 100, _HS.eyeColor = "black", _HS.hColor = "sparkling and shiny golden red", _HS.pubicHColor = "blonde", _HS.skin = "tanned", _HS.hLength = 60, _HS.hStyle = "in thick long heavy braids", _HS.waist = -100, _HS.boobs = 9200, _HS.boobsImplant = 6000, _HS.nipplesPiercing = 2, _HS.boobsTat = "bovine patterns", _HS.lactation = 2, _HS.lactationDuration = 2, _HS.milk = 3010, _HS.butt = 8, _HS.buttImplant = 1, _HS.buttTat = "bovine patterns", _HS.face = 55, _HS.faceImplant = 65, _HS.lips = 55, _HS.lipsImplant = 2, _HS.lipsPiercing = 2, _HS.lipsTat = "bovine patterns", _HS.tonguePiercing = 2, _HS.vagina = 2, _HS.vaginaPiercing = 2, _HS.vaginaTat = "bovine patterns", _HS.preg = -2, _HS.clitPiercing = 3, _HS.anus = 2, _HS.dick = 5, _HS.prostate = 1, _HS.balls = 3, _HS.scrotum = 2, _HS.anusPiercing = 2, _HS.anusTat = "bovine patterns", _HS.makeup = 2, _HS.nails = 2, _HS.brand = "SLUT", _HS.brandLocation = "buttocks", _HS.earPiercing = 2, _HS.nosePiercing = 2, _HS.eyebrowPiercing = 2, _HS.navelPiercing = 2, _HS.shouldersTat = "bovine patterns", _HS.armsTat = "bovine patterns", _HS.legsTat = "bovine patterns", _HS.stampTat = "bovine patterns", _HS.vaginalSkill = 35, _HS.oralSkill = 100, _HS.analSkill = 100, _HS.whoreSkill = 100, _HS.entertainSkill = 35, _HS.collar = "leather with cowbell", _HS.shoes = "heels", _HS.intelligence = 20, _HS.energy = 100, _HS.attrXX = 40, _HS.attrXY = 40, _HS.fetishKnown = 1, _HS.customTat = "She has tattoos of teasing, enticing messages begging others to come taste her addictive milk.", _HS.customDesc = "Her musky milky aura drives men and women around her giggly and dumb with lust.">>
 <<set $heroSlaves.push(_HS)>>
 /*Dropped desc = She has two cute horns protruding from her forehead. A few addicted milkslaves of her own tag along behind her. */
 
 <<set _HS = {}>>
-<<set _HS.slaveName = "Joan", _HS.birthName = "Mila", _HS.genes = "XY", _HS.ID = _i++, _HS.birthWeek = random(0,51), _HS.actualAge = 28, _HS.physicalAge = 28, _HS.visualAge = 28, _HS.ovaryAge = 28, _HS.health = 100, _HS.devotion = 25, _HS.weight = 20, _HS.height = 175, _HS.hColor = "dark brown", _HS.pubicHColor = "brown", _HS.skin = "pale", _HS.hLength = 30, _HS.hStyle = "shoulder-length, done up in a ponytail", _HS.pubicHStyle = "bushy", _HS.boobs = 650, _HS.nipplesPiercing = 1, _HS.areolae = 2, _HS.lactation = 2, _HS.butt = 7, _HS.lips = 35, _HS.vagina = -1, _HS.preg = -2, _HS.clitPiercing = 3, _HS.dick = 4, _HS.prostate = 1, _HS.balls = 5, _HS.scrotum = 4, _HS.anusPiercing = 1, _HS.makeup = 1, _HS.nails = 1, _HS.earPiercing = 1, _HS.entertainSkill = 35, _HS.clothes = "cutoffs and a t-shirt", _HS.collar = "pretty jewelry", _HS.shoes = "heels", _HS.intelligence = -40, _HS.intelligenceImplant = 30, _HS.attrXX = 80, _HS.attrXY = 40, _HS.fetishKnown = 1, _HS.behavioralFlaw = "odd", _HS.customTat = "She has a blood red, faux brand tattoo on her left ass cheek.", _HS.customDesc = "She has a nearly faded pockmark on the skin above her left eyebrow, the last reminder of her awkward past.">>
+<<set _HS.slaveName = "Joan", _HS.birthName = "Mila", _HS.genes = "XY", _HS.ID = _i++, _HS.birthWeek = random(0,51), _HS.actualAge = 28, _HS.physicalAge = 28, _HS.visualAge = 28, _HS.ovaryAge = 28, _HS.health = 100, _HS.devotion = 25, _HS.weight = 20, _HS.height = 175, _HS.hColor = "dark brown", _HS.pubicHColor = "brown", _HS.skin = "pale", _HS.hLength = 30, _HS.hStyle = "shoulder-length, done up in a ponytail", _HS.pubicHStyle = "bushy", _HS.boobs = 650, _HS.nipplesPiercing = 1, _HS.areolae = 2, _HS.lactation = 2, _HS.lactationDuration = 2, _HS.butt = 7, _HS.lips = 35, _HS.vagina = -1, _HS.preg = -2, _HS.clitPiercing = 3, _HS.dick = 4, _HS.prostate = 1, _HS.balls = 5, _HS.scrotum = 4, _HS.anusPiercing = 1, _HS.makeup = 1, _HS.nails = 1, _HS.earPiercing = 1, _HS.entertainSkill = 35, _HS.clothes = "cutoffs and a t-shirt", _HS.collar = "pretty jewelry", _HS.shoes = "heels", _HS.intelligence = -40, _HS.intelligenceImplant = 30, _HS.attrXX = 80, _HS.attrXY = 40, _HS.fetishKnown = 1, _HS.behavioralFlaw = "odd", _HS.customTat = "She has a blood red, faux brand tattoo on her left ass cheek.", _HS.customDesc = "She has a nearly faded pockmark on the skin above her left eyebrow, the last reminder of her awkward past.">>
 <<set $heroSlaves.push(_HS)>>
 
 <<set _HS = {}>>
@@ -145,7 +145,7 @@
 <<set $heroSlaves.push(_HS)>>
 
 <<set _HS = {}>>
-<<set _HS.slaveName = "'Demon Whore' Yuzuki", _HS.birthName = "Yuri", _HS.genes = "XY", _HS.origin = "Her origins are unknown, but rumor has it that she is a literal demon.", _HS.ID = _i++, _HS.birthWeek = random(0,51), _HS.actualAge = 19, _HS.physicalAge = 19, _HS.visualAge = 19, _HS.ovaryAge = 19, _HS.health = 60, _HS.devotion = 90.4, _HS.muscles = 20, _HS.height = 190, _HS.nationality = "Japanese", _HS.race = "asian", _HS.eyeColor = "green", _HS.hColor = "black", _HS.pubicHColor = "black", _HS.skin = "pale", _HS.hStyle = "long", _HS.pubicHStyle = "in a strip", _HS.waist = -100, _HS.boobs = 10000, _HS.boobsImplant = 4800, _HS.areolae = 2, _HS.lactation = 2, _HS.butt = 9, _HS.face = 55, _HS.faceImplant = 65, _HS.lips = 35, _HS.vagina = 1, _HS.clitPiercing = 3, _HS.clitSetting = "humiliation", _HS.anus = 1, _HS.dick = 5, _HS.prostate = 1, _HS.balls = 5, _HS.scrotum = 4, _HS.ovaries = 1, _HS.makeup = 2, _HS.nails = 2, _HS.vaginalSkill = 15, _HS.oralSkill = 100, _HS.analSkill = 15, _HS.whoreSkill = 15, _HS.entertainSkill = 15, _HS.combatSkill = 1, _HS.clothes = "a string bikini", _HS.collar = "pretty jewelry", _HS.shoes = "boots", _HS.attrXX = 40, _HS.attrXY = 40, _HS.fetish = "humiliation", _HS.fetishKnown = 1, _HS.pupil = "demonic">>
+<<set _HS.slaveName = "'Demon Whore' Yuzuki", _HS.birthName = "Yuri", _HS.genes = "XY", _HS.origin = "Her origins are unknown, but rumor has it that she is a literal demon.", _HS.ID = _i++, _HS.birthWeek = random(0,51), _HS.actualAge = 19, _HS.physicalAge = 19, _HS.visualAge = 19, _HS.ovaryAge = 19, _HS.health = 60, _HS.devotion = 90.4, _HS.muscles = 20, _HS.height = 190, _HS.nationality = "Japanese", _HS.race = "asian", _HS.eyeColor = "green", _HS.hColor = "black", _HS.pubicHColor = "black", _HS.skin = "pale", _HS.hStyle = "long", _HS.pubicHStyle = "in a strip", _HS.waist = -100, _HS.boobs = 10000, _HS.boobsImplant = 4800, _HS.areolae = 2, _HS.lactation = 2, _HS.lactationDuration = 2, _HS.butt = 9, _HS.face = 55, _HS.faceImplant = 65, _HS.lips = 35, _HS.vagina = 1, _HS.clitPiercing = 3, _HS.clitSetting = "humiliation", _HS.anus = 1, _HS.dick = 5, _HS.prostate = 1, _HS.balls = 5, _HS.scrotum = 4, _HS.ovaries = 1, _HS.makeup = 2, _HS.nails = 2, _HS.vaginalSkill = 15, _HS.oralSkill = 100, _HS.analSkill = 15, _HS.whoreSkill = 15, _HS.entertainSkill = 15, _HS.combatSkill = 1, _HS.clothes = "a string bikini", _HS.collar = "pretty jewelry", _HS.shoes = "boots", _HS.attrXX = 40, _HS.attrXY = 40, _HS.fetish = "humiliation", _HS.fetishKnown = 1, _HS.pupil = "demonic">>
 <<set $heroSlaves.push(_HS)>>
 
 <<set _HS = {}>>
@@ -176,7 +176,7 @@
 /*dickskilled*/
 
 <<set _HS = {}>>
-<<set _HS.slaveName = "'Udders' Erika", _HS.birthName = "Erika", _HS.genes = "XY", _HS.ID = _i++, _HS.birthWeek = random(0,51), _HS.actualAge = 28, _HS.physicalAge = 28, _HS.visualAge = 28, _HS.ovaryAge = 28, _HS.health = -10, _HS.devotion = 55, _HS.height = 145, _HS.eyeColor = "blue", _HS.skin = "fair", _HS.hStyle = "long", _HS.pubicHStyle = "in a strip", _HS.boobs = 1250, _HS.areolae = 2, _HS.boobsTat = "bovine patterns", _HS.lactation = 2, _HS.butt = 2, _HS.buttTat = "bovine patterns", _HS.lips = 55, _HS.lipsImplant = 10, _HS.lipsTat = "bovine patterns", _HS.vagina = -1, _HS.vaginaTat = "bovine patterns", _HS.preg = -3, _HS.clitPiercing = 3, _HS.clitSetting = "boobs", _HS.anus = 2, _HS.dick = 1, _HS.dickTat = "bovine patterns", _HS.prostate = 1, _HS.anusTat = "bovine patterns", _HS.nosePiercing = 2, _HS.shouldersTat = "bovine patterns", _HS.armsTat = "bovine patterns", _HS.legsTat = "bovine patterns", _HS.stampTat = "bovine patterns", _HS.oralSkill = 100, _HS.analSkill = 100, _HS.entertainSkill = 35, _HS.collar = "leather with cowbell", _HS.attrXX = 40, _HS.attrXY = 40, _HS.fetish = "boobs", _HS.fetishKnown = 1, _HS.customDesc = "Though her vocal cords have been altered to keep her from speaking, she is still capable of the occasional moo.">>
+<<set _HS.slaveName = "'Udders' Erika", _HS.birthName = "Erika", _HS.genes = "XY", _HS.ID = _i++, _HS.birthWeek = random(0,51), _HS.actualAge = 28, _HS.physicalAge = 28, _HS.visualAge = 28, _HS.ovaryAge = 28, _HS.health = -10, _HS.devotion = 55, _HS.height = 145, _HS.eyeColor = "blue", _HS.skin = "fair", _HS.hStyle = "long", _HS.pubicHStyle = "in a strip", _HS.boobs = 1250, _HS.areolae = 2, _HS.boobsTat = "bovine patterns", _HS.lactation = 2, _HS.lactationDuration = 2, _HS.butt = 2, _HS.buttTat = "bovine patterns", _HS.lips = 55, _HS.lipsImplant = 10, _HS.lipsTat = "bovine patterns", _HS.vagina = -1, _HS.vaginaTat = "bovine patterns", _HS.preg = -3, _HS.clitPiercing = 3, _HS.clitSetting = "boobs", _HS.anus = 2, _HS.dick = 1, _HS.dickTat = "bovine patterns", _HS.prostate = 1, _HS.anusTat = "bovine patterns", _HS.nosePiercing = 2, _HS.shouldersTat = "bovine patterns", _HS.armsTat = "bovine patterns", _HS.legsTat = "bovine patterns", _HS.stampTat = "bovine patterns", _HS.oralSkill = 100, _HS.analSkill = 100, _HS.entertainSkill = 35, _HS.collar = "leather with cowbell", _HS.attrXX = 40, _HS.attrXY = 40, _HS.fetish = "boobs", _HS.fetishKnown = 1, _HS.customDesc = "Though her vocal cords have been altered to keep her from speaking, she is still capable of the occasional moo.">>
 <<set $heroSlaves.push(_HS)>>
 
 <<set _HS = {}>>
diff --git a/src/npc/descriptions/fBoobs.tw b/src/npc/descriptions/fBoobs.tw
index d2f95eb1df2..3738a706b01 100644
--- a/src/npc/descriptions/fBoobs.tw
+++ b/src/npc/descriptions/fBoobs.tw
@@ -192,6 +192,13 @@ tits.
 	<</if>>
 <</if>>
 
+<<if $activeSlave.lactation > 0>>
+	<<set $activeSlave.lactationDuration = 2>>
+	<<set $activeSlave.boobs -= $activeSlave.boobsMilk, $activeSlave.boobsMilk = 0>>
+<<else>>
+	<<= induceLactation($activeSlave)>>
+<</if>>
+
 <<if ($activeSlave.amp !== 1)>>
 <<switch $activeSlave.assignment>>
 <<case "work in the dairy">>
diff --git a/src/npc/fFeelings.tw b/src/npc/fFeelings.tw
index 0c68f80f6e1..5a09e2fd13b 100644
--- a/src/npc/fFeelings.tw
+++ b/src/npc/fFeelings.tw
@@ -44,7 +44,7 @@
 
 <<if ($activeSlave.devotion <= 50)>>
 	<<if !canTalk($activeSlave)>>
-		$He gestures that you're $his <<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>master<<else>>mistress<</if>>, and $he will do $his best to obey you. $He continues to sign<<if $activeSlave.accent == 3>>, using gestures to supplant $his poor $language<</if>>:
+		$He gestures that you're $his <<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>master<<else>>mistress<</if>>, and $he will do $his best to obey you. $He continues to sign<<if $activeSlave.accent == 3 && $activeSlave.voice != 0>>, using gestures to supplant $his poor $language<</if>>:
 	<<else>>
 		"You're my <<Master>>, and I'll do my be<<s>>t to obey you," $he says
 	<</if>>
@@ -215,8 +215,9 @@ My favorite part of my body i<<s>>
 		<<elseif ($activeSlave.boobs > 2000)>>
 			my huge boobie<<s>>, <<Master>>. <<S>>ometime<<s>>, I think I //am// my boobie<<s>>. I mean, they're <<s>>o much more me than the re<<s>>t of 'me,' right? <<S>>o big, and <<s>>o beautiful, and <<s>>o heavy… I'm <<s>>orry, <<Master>>, what were we talking about? Oh, ye<<s>>!
 		<<elseif ($activeSlave.nipples == "fuckable")>>
-		<<elseif ($activeSlave.lactation > 0)>>
 			my nipple pu<<ss>>ie<<s>> of cour<<s>>e. It'<<s>> <<s>>o hot when they get abu<<s>>ed and I'm alway<<s>> trying to think of new way<<s>> to u<<s>>e them to plea<<s>>ure you.
+		<<elseif ($activeSlave.lactation > 0)>>
+			my milky nipple<<s>> of cour<<s>>e. E<<s>>pe<<c>>ially when you don't touch them for awhile and my brea<<s>>t<<s>> bloat up ni<<c>>e and big.
 		<<elseif ($activeSlave.nipples != "tiny")>>
 			my big nipple<<s>>, it'<<s>> like having clit<<s>> on my che<<s>>t. My only wi<<s>>h is that they were even bigger.
 		<<elseif ($activeSlave.boobs > 700)>>
@@ -336,8 +337,9 @@ My favorite part of my body i<<s>>
 		<<if ($activeSlave.boobs > 2000)>>
 			my huge tit<<s>>, I like how they're <<s>>o big they're the center of attention.
 		<<elseif ($activeSlave.nipples == "fuckable")>>
-		<<elseif ($activeSlave.lactation > 0)>>
 			my nipple pu<<ss>>ie<<s>> of cour<<s>>e.
+		<<elseif ($activeSlave.lactation > 0)>>
+			my milky nipple<<s>> of cour<<s>>e.
 		<<elseif ($activeSlave.nipples != "tiny")>>
 			my big nipple<<s>>, it'<<s>> like having clit<<s>> on my che<<s>>t.
 		<<elseif ($activeSlave.boobs > 700)>>
@@ -1157,7 +1159,7 @@ My favorite part of my body i<<s>>
 	<</if>>
 
 <<elseif ($activeSlave.relationship == -2)>>
-	I'm good friend<<s>> with <<s>>ome of the other <<s>>lave<<s>>," $he mutters hesitantly, looking suddenly embarrassed. "I really like you, though, <<Master>>. Like, //like// you, like you." $He clears $his throat nervously before hurrying on to safer subjects. "Yeah.
+	I'm good friend<<s>> with <<s>>ome of the other <<s>>lave<<s>>," $he <<if !canTalk($activeSlave)>>gestures<<else>>mutters<</if>> hesitantly, looking suddenly embarrassed. "I really like you, though, <<Master>>. Like, //like// you, like you." $He clears $his throat <<if !canTalk($activeSlave)>>silently and pointlessly<<else>>nervously<</if>> before hurrying on to safer subjects. "Yeah.
 <<elseif ($activeSlave.relationship == -1)>>
 	A<<s>> far a<<s>> relationships go, <<Master>>," $he laughs, "I'm <<s>>uch a fucking <<s>>lut. It's <<s>>o liberating, not having to worry about any of that crap anymore.
 <</if>>
diff --git a/src/npc/startingGirls/startingGirls.tw b/src/npc/startingGirls/startingGirls.tw
index afd3419634f..625fcc714de 100644
--- a/src/npc/startingGirls/startingGirls.tw
+++ b/src/npc/startingGirls/startingGirls.tw
@@ -850,9 +850,9 @@ Her nationality is $activeSlave.nationality.
 <<else>>None.
 <</if>>
 </span>
-<<link "Artificial">><<set $activeSlave.lactation = 2>><<replace "#lactation">>Artificial.<</replace>><<StartingGirlsCost>><</link>> |
-<<link "Natural">><<set $activeSlave.lactation = 1>><<replace "#lactation">>Natural.<</replace>><<StartingGirlsCost>><</link>> |
-<<link "None">><<set $activeSlave.lactation = 0>><<replace "#lactation">>None.<</replace>><<StartingGirlsCost>><</link>>
+<<link "Artificial">><<set $activeSlave.lactation = 2, $activeSlave.lactationDuration = 2>><<replace "#lactation">>Artificial.<</replace>><<StartingGirlsCost>><</link>> |
+<<link "Natural">><<set $activeSlave.lactation = 1, $activeSlave.lactationDuration = 2>><<replace "#lactation">>Natural.<</replace>><<StartingGirlsCost>><</link>> |
+<<link "None">><<set $activeSlave.lactation = 0, $activeSlave.lactationDuration = 0>><<replace "#lactation">>None.<</replace>><<StartingGirlsCost>><</link>>
 
 <br>''Nipples:'' <span id="nipples">$activeSlave.nipples</span>.
 <<link "Tiny">><<set $activeSlave.nipples = "tiny">><<replace "#nipples">>$activeSlave.nipples<</replace>><<StartingGirlsCost>><</link>> |
@@ -1604,7 +1604,7 @@ Her nationality is $activeSlave.nationality.
 <br>&nbsp;&nbsp;&nbsp;&nbsp;
 <<link "Wellspring">>
 	<<StartingGirlsWorkaround>>
-	<<set $activeSlave.analSkill = 0, $activeSlave.oralSkill = 0, $activeSlave.vaginalSkill = 0, $activeSlave.whoreSkill = 0, $activeSlave.entertainSkill = 0, $activeSlave.combatSkill = 0, $activeSlave.actualAge = 18, $activeSlave.visualAge = 18, $activeSlave.physicalAge = 18, $activeSlave.fetishKnown = 0, $activeSlave.attrKnown = 0, $activeSlave.health = 10, $activeSlave.intelligence = -100, $activeSlave.intelligenceImplant = 0, $activeSlave.vagina = 3, $activeSlave.anus = 3, $activeSlave.ovaries = 1, $activeSlave.dick = 5, $activeSlave.balls = 5, $activeSlave.prostate = 1, $activeSlave.lactation = 2, $activeSlave.nipples = "huge", $activeSlave.boobs = 10000>>
+	<<set $activeSlave.analSkill = 0, $activeSlave.oralSkill = 0, $activeSlave.vaginalSkill = 0, $activeSlave.whoreSkill = 0, $activeSlave.entertainSkill = 0, $activeSlave.combatSkill = 0, $activeSlave.actualAge = 18, $activeSlave.visualAge = 18, $activeSlave.physicalAge = 18, $activeSlave.fetishKnown = 0, $activeSlave.attrKnown = 0, $activeSlave.health = 10, $activeSlave.intelligence = -100, $activeSlave.intelligenceImplant = 0, $activeSlave.vagina = 3, $activeSlave.anus = 3, $activeSlave.ovaries = 1, $activeSlave.dick = 5, $activeSlave.balls = 5, $activeSlave.prostate = 1, $activeSlave.lactation = 2, $activeSlave.lactationDuration = 2, $activeSlave.nipples = "huge", $activeSlave.boobs = 10000>>
 	<<StartingGirlsRefresh>>
 	<<SaleDescription>>
 	<<StartingGirlsCost>>
diff --git a/src/player/actions/fondleBoobs.tw b/src/player/actions/fondleBoobs.tw
index a8f6dc6d70c..5ff73964630 100644
--- a/src/player/actions/fondleBoobs.tw
+++ b/src/player/actions/fondleBoobs.tw
@@ -423,3 +423,10 @@ You call $him over so you can fondle $his
 	<</if>>
 	When you finally stop, $he shakes uncontrollably, apprehensive at what you are going to do next.
 <</if>>
+
+<<if $activeSlave.lactation > 0>>
+	<<set $activeSlave.lactationDuration = 2>>
+	<<set $activeSlave.boobs -= $activeSlave.boobsMilk, $activeSlave.boobsMilk = 0>>
+<<else>>
+	<<= induceLactation($activeSlave)>>
+<</if>>
diff --git a/src/pregmod/FSuckle.tw b/src/pregmod/FSuckle.tw
index 4096926e6eb..fd3da668f25 100644
--- a/src/pregmod/FSuckle.tw
+++ b/src/pregmod/FSuckle.tw
@@ -398,6 +398,11 @@ $his other breast<<if $PC.dick == 1>><<if $PC.balls > 1>> and backflowing hard f
 	<</if>>
 <</if>>
 
+<<if $activeSlave.lactation > 0>>
+	<<set $activeSlave.lactationDuration = 2>>
+	<<set $activeSlave.boobs -= $activeSlave.boobsMilk, $activeSlave.boobsMilk = 0>>
+<</if>>
+
 Once you <<if _mood == 1>>wake and slowly rise to your feet, you help $him clean up<<else>>are done, you allow $him to clean up<</if>>
 <<switch $activeSlave.assignment>>
 <<case "work in the brothel">>
diff --git a/src/pregmod/eliteSlave.tw b/src/pregmod/eliteSlave.tw
index e8ced09b7df..c9c4efc5af7 100644
--- a/src/pregmod/eliteSlave.tw
+++ b/src/pregmod/eliteSlave.tw
@@ -161,6 +161,9 @@ You check to see if any potential breeding slaves are on auction. <<if $eliteAuc
 <<else>>
 	<<set $activeSlave.lactation = either(0, 0, 0 , 0, 1)>>
 <</if>>
+<<if $activeSlave.lactation > 0>>
+	<<set $activeSlave.lactationDuration = 2>>
+<</if>>
 <<if $activeSlave.birthsTotal > 0>>
 	<<set $activeSlave.vagina = random(2,3)>>
 	<<set $activeSlave.pregWeek = either(-4, -3, -2, -1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)>>
diff --git a/src/pregmod/fNippleFuck.tw b/src/pregmod/fNippleFuck.tw
index 1860a77a3c6..f496ef658e4 100644
--- a/src/pregmod/fNippleFuck.tw
+++ b/src/pregmod/fNippleFuck.tw
@@ -69,4 +69,11 @@ As your orgasm begins to build, you roughly grasp $his shoulders and begin to pi
 
 It only takes few more thrusts before you bottom out inside $his breast and release your load deep inside $him. You pull yourself free with a lewd sound and proudly survey what you've wrought. Cum<<if $activeSlave.lactation > 0>> and milk dribble<<else>> dribbles <</if>> from $his gaping nipple. Enjoying the sight, you begin to feel yourself hardening and line up your dick at $his left nipple for a repeat performance.
 
+<<if $activeSlave.lactation > 0>>
+	<<set $activeSlave.lactationDuration = 2>>
+	<<set $activeSlave.boobs -= $activeSlave.boobsMilk, $activeSlave.boobsMilk = 0>>
+<<else>>
+	<<= induceLactation($activeSlave)>>
+<</if>>
+
 Once both $his breasts have been thoroughly fucked, you send $him away to clean $himself up.
diff --git a/src/pregmod/fSlaveFeed.tw b/src/pregmod/fSlaveFeed.tw
index 5ba2c39886c..403e33ea12e 100644
--- a/src/pregmod/fSlaveFeed.tw
+++ b/src/pregmod/fSlaveFeed.tw
@@ -361,6 +361,10 @@ Next, you see to $activeSlave.slaveName.
 
 <</if>>
 
+<<if $milkTap.lactation > 0>>
+	<<set $milkTap.lactationDuration = 2>>
+	<<set $milkTap.boobs -= $milkTap.boobsMilk, $milkTap.boobsMilk = 0>>
+<</if>>
 
 <<else>> /* cum variant */
 <<set $activeSlave.cumSource = $milkTap.ID>>
diff --git a/src/pregmod/managePersonalAffairs.tw b/src/pregmod/managePersonalAffairs.tw
index d4ff0727a0a..eda4670f974 100644
--- a/src/pregmod/managePersonalAffairs.tw
+++ b/src/pregmod/managePersonalAffairs.tw
@@ -560,6 +560,20 @@ In total, you have given birth to:
 
 <</if>>
 
+<<if $PC.lactation == 1>>
+	<br><br>
+	__Lactation__
+	<br>
+	Your breasts are laden with milk.
+	<<if $playerGetsMilked == 2>>
+		You are spending time with the penthouse milkers and making a quick ¤ from your efforts. [[Stop milking yourself|Manage Personal Affairs][$playerGetsMilked = 0]] | [[Stop using the milkers|Manage Personal Affairs][$playerGetsMilked = 1]]
+	<<elseif $playerGetsMilked == 1>>
+		You are taking the time to keep yourself lactating. [[Stop milking yourself|Manage Personal Affairs][$playerGetsMilked = 0]]<<if $servantMilkers == 1>> | [[Use the penthouse milkers|Manage Personal Affairs][$playerGetsMilked = 2]]<</if>>
+	<<else>>
+		You are currently letting nature run its course. [[Keep yourself milked|Manage Personal Affairs][$playerGetsMilked = 1]]<<if $servantMilkers == 1>> | [[Use the penthouse milkers|Manage Personal Affairs][$playerGetsMilked = 2]]<</if>>
+	<</if>>
+<</if>>
+
 <br><br>
 __Drugs__
 <br>
diff --git a/src/pregmod/newChildIntro.tw b/src/pregmod/newChildIntro.tw
index efe153806b3..07dd3929ff0 100644
--- a/src/pregmod/newChildIntro.tw
+++ b/src/pregmod/newChildIntro.tw
@@ -723,7 +723,7 @@ You slowly strip down, gauging $his reactions to your show, until you are fully
 
 <br><<link "Tease $his nipples">>
 <<replace "#result">>
-	You pull the curious $desc atop your desk in front of you and go back to business. After a few minutes, you extend an idle hand and begin to fondle $his <<if $activeSlave.boobs > 2000>>massive tits<<elseif $activeSlave.boobs > 400>>healthy breasts<<else>>cute little boobs<</if>>, continuing your work with your other hand. You quickly focus your fiddling on $his $activeSlave.nipples nipples, the stimulation bringing them quickly erect. $He accepts your groping, even becoming aroused by it, but might not be a breast fetishist, though $he @@.hotpink;certainly enjoys the attention.@@ By the feel of $his nipples between your fingers, $he may certainly develop into one.<<if $incubatorReproductionSetting == 2 && $activeSlave.boobs > 400>> A loud moan and a distinct wetness in your hand quickly draw your attention to $him. It seems @@.green;$he is lactating!@@<<set $activeSlave.lactation = 1>><</if>>
+	You pull the curious $desc atop your desk in front of you and go back to business. After a few minutes, you extend an idle hand and begin to fondle $his <<if $activeSlave.boobs > 2000>>massive tits<<elseif $activeSlave.boobs > 400>>healthy breasts<<else>>cute little boobs<</if>>, continuing your work with your other hand. You quickly focus your fiddling on $his $activeSlave.nipples nipples, the stimulation bringing them quickly erect. $He accepts your groping, even becoming aroused by it, but might not be a breast fetishist, though $he @@.hotpink;certainly enjoys the attention.@@ By the feel of $his nipples between your fingers, $he may certainly develop into one.<<if $incubatorReproductionSetting == 2 && $activeSlave.boobs > 400>> A loud moan and a distinct wetness in your hand quickly draw your attention to $him. It seems @@.green;$he is lactating!@@<<set $activeSlave.lactation = 1, $activeSlave.lactationDuration = 2>><</if>>
 	<<set $activeSlave.devotion += 4>>
 	<<if random(1,100) > 60 && $activeSlave.fetish == "none">>
 		<<set $activeSlave.fetish = "boobs">>
@@ -860,7 +860,7 @@ As $he begins to moan with lust, you grip down tightly and force $him to the flo
 <<if $PC.boobsBonus == 3>>
 <br><<link "Permit $him to explore your expansive bust">>
 <<replace "#result">>
-You beckon the curious girl to your hefty breasts, having noticed how hungrily $he has been eying them. $He eagerly places $his hands to them and begins squeezing and massaging them, quickly becoming aroused $himself. $He pays close attention to your nipples, <<if $PC.preg > 20>> squealing happily when milk begins to flow from them<<else>> grumbling unhappily when $he finds no milk within<</if>>.
+You beckon the curious girl to your hefty breasts, having noticed how hungrily $he has been eying them. $He eagerly places $his hands to them and begins squeezing and massaging them, quickly becoming aroused $himself. $He pays close attention to your nipples, <<if $PC.lactation > 0>> squealing happily when milk begins to flow from them<<set $PC.lactationDuration = 2>><<else>> grumbling unhappily when $he finds no milk within<</if>>.
 <<if $activeSlave.muscles > 30 && $incubatorReproductionSetting > 0 && canAchieveErection($activeSlave)>>
 	Suddenly, $he shoves you onto your back and begins enthusiastically fucking your breasts. Before you can push $him off, $he thrusts hard and unloads $his pent up orgasm deep into your cleavage and across your face. $He sits back with a huge smile on $his face and a @@.hotpink;new connection to you@@. $He @@.gold;recoils in surprise and fear@@ when you respond by slapping $him across the face for $his impudence. $He might not look like a dom, but $he may turn into one.
 	<<set $activeSlave.devotion += 5>>
diff --git a/src/pregmod/personalNotes.tw b/src/pregmod/personalNotes.tw
index ec348303cbd..66857657790 100644
--- a/src/pregmod/personalNotes.tw
+++ b/src/pregmod/personalNotes.tw
@@ -42,6 +42,45 @@
 		<</if>>
 	<</if>>
 <</if>>
+<<if $PC.lactation > 0>>
+	<<if $playerGetsMilked > 0>>
+		<<set $PC.lactationDuration = 2>>
+		<<if $playerGetsMilked == 2>>
+			<<set _milk = 10+($PC.boobsBonus*10)>>
+			<<if $PC.boobsImplant == 1>>
+				<<set _milk *= .9>>
+			<</if>>
+			<<set _milk = Math.trunc(_milk)>>
+			<<if _milk < 1>>
+				<<set _milk = 1>>
+			<</if>>
+
+			When ever you have a free moment and a chest swollen with milk, you spend your time attached to the nearest milker. As a result, you produce _milk liters of sellable milk over the week.
+
+			<<if ($arcologies[0].FSPastoralistLaw == 1)>>
+				<<set _milkSale = _milk*(28+Math.trunc($arcologies[0].FSPastoralist/30))>>
+				Since breast milk is $arcologies[0].name's only legal dairy product, and yours is in a class all of its own, society can't get enough of it and you make @@.yellowgreen;<<print cashFormat(_milkSale)>>.@@
+			<<elseif ($arcologies[0].FSPastoralist != "unset")>>
+				<<set _milkSale = _milk*(12+Math.trunc($arcologies[0].FSPastoralist/30))>>
+				Since milk is fast becoming a major part of the $arcologies[0].name's dietary culture, and yours is in a class all of its own, you make @@.yellowgreen;<<print cashFormat(_milkSale)>>.@@
+			<<else>>
+				<<set _milkSale = _milk*8>>
+				Your milk is sold for @@.yellowgreen;<<print cashFormat(_milkSale)>>.@@
+			<</if>>
+			<<set $cash += _milkSale>>
+		<<else>>
+			You regularly see to your breasts to make sure your milk production doesn't dry up; be it by hand, milker or mouth, you keep yourself comfortably drained.
+		<</if>>
+	<<else>>
+		<<if $PC.belly < 1500>>
+			<<set $PC.lactationDuration-->>
+			<<if $PC.lactationDuration == 0>>
+				With no reason to continue production, your @@.yellow;lactation has stopped.@@
+				<<set $PC.lactation = 0>>
+			<</if>>
+		<</if>>
+	<</if>>
+<</if>>
 <<if $PC.preg > 0>>
 	<<set _oldCount = $PC.pregType>>
 	<<if $PC.preg <= 2>>
@@ -63,4 +102,22 @@
 		<<set WombFlush($PC), $PC.pregKnown = 0, $PC.pregWeek = 0>>
 		<<run SetBellySize($PC)>>
 	<</if>>
+	<<if $PC.preg == 15>>
+		<<if $PC.pregKnown == 0>>
+			Your areolae have gotten dark. Some cursory tests reveal @@.lime;you are about fifteen weeks pregnant.@@ How did that manage to slip past you?
+			<<set $PC.pregKnown = 1>>
+		<<else>>
+			Your areolae have gotten dark. Just another step along your pregnancy.
+		<</if>>
+	<<elseif $PC.belly >= 1500>>
+		<<if ($PC.preg > 20) && ($PC.lactation == 0)>>
+			<<if $PC.preg > random(18,30)>>
+				A moist sensation on your breasts draws your attention; @@.lime;your milk has come in.@@
+				<<set $slaves[$i].lactation = 1>>
+			<</if>>
+		<</if>>
+		<<if $slaves[$i].lactation == 1>>
+			<<set $slaves[$i].lactationDuration = 2>>
+		<</if>>
+	<</if>>
 <</if>>
\ No newline at end of file
diff --git a/src/pregmod/saAgent.tw b/src/pregmod/saAgent.tw
index af25ce2c304..830825b21fb 100644
--- a/src/pregmod/saAgent.tw
+++ b/src/pregmod/saAgent.tw
@@ -450,7 +450,7 @@
 	<</if>>
 <<elseif $slaves[$i].lactation == 2>>
 	<<set $slaves[$i].lactationDuration = 2>>
-<<elseif $slaves[$i].fetish == "boobs" && $slaves[$i].boobs-$slaves[$i].boobsImplants >= 2000>>
+<<elseif $slaves[$i].fetish == "boobs" && $slaves[$i].boobs-$slaves[$i].boobsImplant >= 2000>>
 	<<set $slaves[$i].induceLactation += 2>>
 	<<if $slaves[$i].lactationDuration >= 20>>
 		<<set $slaves[$i].induceLactation = 0, $slaves[$i].lactationDuration = 2, $slaves[$i].lactation = 1>>
diff --git a/src/pregmod/saInflation.tw b/src/pregmod/saInflation.tw
index 1645ead7761..838e054b3e8 100644
--- a/src/pregmod/saInflation.tw
+++ b/src/pregmod/saInflation.tw
@@ -243,12 +243,15 @@
 			<<elseif $slaves[$i].inflation == 3>>
 				Throughout the week, $he @@.mediumorchid;reluctantly@@ suckles from $slaves[_saf].slaveName until $his stomach is @@.red;painfully bloated@@ with nearly two gallons of milk, leaving $him looking ready to burst. $He struggles to keep $his fatty, liquid meal down, @@.gold;fearing@@ punishment otherwise.
 				<<set $slaves[$i].health -= 10, $slaves[$i].devotion -= 8, $slaves[$i].trust -= 8>>
+				<<set $slaves[_saf].lactationDuration = 2, $slaves[_saf].boobs -= $slaves[_saf].boobsMilk, $slaves[_saf].boobsMilk = 0>>
 			<<elseif $slaves[$i].inflation == 2>>
 				Throughout the week, $he @@.mediumorchid;reluctantly@@ suckles from $slaves[_saf].slaveName until $his stomach is bloated with nearly four liters of milk, leaving $him looking pregnant. $He struggles to keep $his fatty, liquid meal down, @@.gold;fearing@@ punishment otherwise.
 				<<set $slaves[$i].devotion -= 5, $slaves[$i].trust -= 5>>
+				<<set $slaves[_saf].lactationDuration = 2, $slaves[_saf].boobs -= $slaves[_saf].boobsMilk, $slaves[_saf].boobsMilk = 0>>
 			<<elseif $slaves[$i].inflation == 1>>
 				Throughout the week, $he @@.mediumorchid;reluctantly@@ suckles from $slaves[_saf].slaveName until $his stomach is bloated with nearly two liters of milk, leaving $his belly noticeably distended. $He struggles to keep $his fatty, liquid meal down, @@.gold;fearing@@ punishment otherwise.
 				<<set $slaves[$i].devotion -= 3, $slaves[$i].trust -= 3>>
+				<<set $slaves[_saf].lactationDuration = 2, $slaves[_saf].boobs -= $slaves[_saf].boobsMilk, $slaves[_saf].boobsMilk = 0>>
 			<</if>>
 		<</if>>
 	<<elseif $slaves[$i].behavioralFlaw == "gluttonous">>
@@ -288,12 +291,15 @@
 			<<elseif $slaves[$i].inflation == 3>>
 				Throughout the week, $he @@.hotpink;eagerly@@ sucks from $slaves[_saf].slaveName until $his stomach is @@.red;painfully bloated@@ with nearly two gallons of milk, leaving $him looking ready to burst. $He rubs $his full belly @@.mediumaquamarine;contently,@@ anticipating $his next gorging.
 				<<set $slaves[$i].health -= 10, $slaves[$i].devotion += 5, $slaves[$i].trust += 5>>
+				<<set $slaves[_saf].lactationDuration = 2, $slaves[_saf].boobs -= $slaves[_saf].boobsMilk, $slaves[_saf].boobsMilk = 0>>
 			<<elseif $slaves[$i].inflation == 2>>
 				Throughout the week, $he @@.hotpink;eagerly@@ sucks from $slaves[_saf].slaveName until $his stomach is bloated with nearly four liters of milk, leaving $him looking pregnant. $He rubs $his taut belly @@.mediumaquamarine;contently,@@ anticipating $his next feeding.
 				<<set $slaves[$i].devotion += 4, $slaves[$i].trust += 4>>
+				<<set $slaves[_saf].lactationDuration = 2, $slaves[_saf].boobs -= $slaves[_saf].boobsMilk, $slaves[_saf].boobsMilk = 0>>
 			<<elseif $slaves[$i].inflation == 1>>
 				Throughout the week, $he @@.hotpink;eagerly@@ sucks from $slaves[_saf].slaveName until $his stomach is bloated with nearly two liters of milk, leaving $his belly noticeably distended. $He rubs $his sloshing belly @@.mediumaquamarine;contently,@@ anticipating $his next meal.
 				<<set $slaves[$i].devotion += 3, $slaves[$i].trust += 3>>
+				<<set $slaves[_saf].lactationDuration = 2, $slaves[_saf].boobs -= $slaves[_saf].boobsMilk, $slaves[_saf].boobsMilk = 0>>
 			<</if>>
 		<</if>>
 	<<else>>
@@ -329,10 +335,13 @@
 			<<elseif $slaves[$i].inflation == 3>>
 				Throughout the week, $he makes sure keep suckling from $slaves[_saf].slaveName until $he is filled with nearly two gallons of milk, leaving $him looking ready to give birth. $He keeps $himself @@.red;painfully full@@ for you.
 				<<set $slaves[$i].health -= 10>>
+				<<set $slaves[_saf].lactationDuration = 2, $slaves[_saf].boobs -= $slaves[_saf].boobsMilk, $slaves[_saf].boobsMilk = 0>>
 			<<elseif $slaves[$i].inflation == 2>>
 				Throughout the week, $he makes sure keep suckling from $slaves[_saf].slaveName until $he is filled with nearly four liters of milk, leaving $him looking pregnant. $He is full enough to be distended but not enough to grow taut.
+				<<set $slaves[_saf].lactationDuration = 2, $slaves[_saf].boobs -= $slaves[_saf].boobsMilk, $slaves[_saf].boobsMilk = 0>>
 			<<elseif $slaves[$i].inflation == 1>>
 				Throughout the week, $he makes sure keep suckling from $slaves[_saf].slaveName until $he is filled with nearly two liters of milk, leaving $his belly noticeably distended. $He is full enough to be swollen but not enough to visibly jiggle.
+				<<set $slaves[_saf].lactationDuration = 2, $slaves[_saf].boobs -= $slaves[_saf].boobsMilk, $slaves[_saf].boobsMilk = 0>>
 			<</if>>
 		<</if>>
 	<</if>>
diff --git a/src/pregmod/seFCTVshows.tw b/src/pregmod/seFCTVshows.tw
index c0504273a6c..9e5b61006a2 100644
--- a/src/pregmod/seFCTVshows.tw
+++ b/src/pregmod/seFCTVshows.tw
@@ -197,6 +197,7 @@ Tired after a long day, you tell <<if $Concubine != 0>>@@.pink;$Concubine.slaveN
 		<<set $activeSlave.vaginaLube = 2>>
 		<<set $activeSlave.boobs = (random(10,30)*50)>>
 		<<set $activeSlave.lactation = 1>>
+		<<set $activeSlave.lactationDuration = 2>>
 		<<set $activeSlave.hips = 3>>
 		<<set $activeSlave.hipsImplant = 1>>
 		<<set $activeSlave.butt = random(7,9)>>
diff --git a/src/pregmod/sePlayerBirth.tw b/src/pregmod/sePlayerBirth.tw
index 51a82d36656..85b1e357b1d 100644
--- a/src/pregmod/sePlayerBirth.tw
+++ b/src/pregmod/sePlayerBirth.tw
@@ -638,7 +638,7 @@ You arrange yourself to give birth, relaxing until your body urges you to begin
 <</if>> /*closes gaveBirth*/
 <</if>> /*closes SE*/
 
-<<set _badBirth = 0, $PC.pregSource = 0, $PC.pregType = 0, $babyGender = 0, $PC.belly = 2000, WombFlush($PC)>>
+<<set _badBirth = 0, $PC.pregSource = 0, $PC.pregType = 0, $PC.belly = 2000, WombFlush($PC)>>
 <<if $PC.geneticQuirks.fertility == 2>>
 	<<set $PC.pregWeek = -3>>
 <<else>>
diff --git a/src/pregmod/widgets/bodySwapReaction.tw b/src/pregmod/widgets/bodySwapReaction.tw
index 184beabea80..1004fb768bb 100644
--- a/src/pregmod/widgets/bodySwapReaction.tw
+++ b/src/pregmod/widgets/bodySwapReaction.tw
@@ -618,6 +618,9 @@ Now you only have to wait for $him to wake up.
 		<<elseif $args[0].lactation > 0 && $args[1].lactation > 0>>
 			The familiar feeling of fullness in $his breasts tells $him $he's producing as much milk as ever.
 		<</if>>
+		<<if $args[0].boobsMilk > 0>>
+			$He groans as $he discovers just how badly $he needs to be milked.
+		<</if>>
 
 		<<if $args[0].nipples != $args[1].nipples && $args[0].fetish != "mindbroken">> /*(if nipples have changed shape)*/
 			Once $he is satisfied with $his tits, $he shifts $his chest to get a better <<if canSee($args[0])>>view of<<else>>feel of<</if>> $his nipples, having noticed that they don't <<if canSee($args[0])>>look<<else>>seem<</if>> quite the same as before.
@@ -2110,6 +2113,9 @@ Now you only have to wait for $him to wake up.
 		<<elseif $args[0].lactation > 0 && $args[1].lactation > 0>>
 			The familiar feeling of fullness in $his breasts tells $him $he's producing as much milk as ever.
 		<</if>>
+		<<if $args[0].boobsMilk > 0>>
+			$He groans as $he discovers just how badly $he needs to be milked.
+		<</if>>
 
 		<<if $args[0].nipples != $args[1].nipples && $args[0].fetish != "mindbroken">> /*(if nipples have changed shape)*/
 			Once $he is satisfied with $his tits, $he shifts $himself to get a better view of $his nipples, having noticed that they don't look quite the same as before.
diff --git a/src/pregmod/widgets/bodyswapWidgets.tw b/src/pregmod/widgets/bodyswapWidgets.tw
index fb2317905be..faa5cbc92b9 100644
--- a/src/pregmod/widgets/bodyswapWidgets.tw
+++ b/src/pregmod/widgets/bodyswapWidgets.tw
@@ -97,6 +97,9 @@
 <<set $args[0].areolaeShape = $args[1].areolaeShape>>
 <<set $args[0].boobsTat = $args[1].boobsTat>>
 <<set $args[0].lactation = $args[1].lactation>>
+<<set $args[0].lactationDuration = $args[1].lactationDuration>>
+<<set $args[0].induceLactation = $args[1].induceLactation>>
+<<set $args[0].boobsMilk = $args[1].boobsMilk>>
 <<set $args[0].lactationAdaptation = $args[1].lactationAdaptation>>
 <<set $args[0].hips = $args[1].hips>>
 <<set $args[0].hipsImplant = $args[1].hipsImplant>>
diff --git a/src/pregmod/widgets/playerDescriptionWidgets.tw b/src/pregmod/widgets/playerDescriptionWidgets.tw
index edafdb39b97..0a9a393d656 100644
--- a/src/pregmod/widgets/playerDescriptionWidgets.tw
+++ b/src/pregmod/widgets/playerDescriptionWidgets.tw
@@ -12,7 +12,7 @@
 		<<else>>
 			They are all natural, heavy, and a bit saggy though they have some perk to them. Once they get going, it's hard to make them stop.
 		<</if>>
-		<<if $PC.preg > 30 || $PC.births > 0>>
+		<<if $PC.lactation > 0>>
 			Your breasts feel even more enormous lately; likely a side effect of your lactation.
 		<</if>>
 		<<if $PC.markings == "freckles">>
@@ -27,7 +27,7 @@
 		<<else>>
 			They are all natural and a little heavy. The bounce everywhere when you fuck your slaves.
 		<</if>>
-		<<if $PC.preg > 30 || $PC.births > 0>>
+		<<if $PC.lactation > 0>>
 			Your breasts feel even more huge lately; likely a side effect of your lactation.
 		<</if>>
 		<<if $PC.markings == "freckles">>
@@ -42,7 +42,7 @@
 		<<else>>
 			They are nice and perky, despite their size. They bounce lewdly as you fuck your slaves.
 		<</if>>
-		<<if $PC.preg > 30 || $PC.births > 0>>
+		<<if $PC.lactation > 0>>
 			Your breasts feel bigger lately; likely a side effect of your lactation.
 		<</if>>
 		<<if $PC.markings == "freckles">>
@@ -52,7 +52,7 @@
 		<</if>>
 	<<elseif $PC.boobsBonus == -1>>
 		you have a @@.orange;pair of D-cup breasts.@@ They are nice, perky and bounce pleasantly as you fuck your slaves.
-		<<if $PC.preg > 30 || $PC.births > 0>>
+		<<if $PC.lactation > 0>>
 			Your breasts feel bigger lately; likely a side effect of your lactation.
 		<</if>>
 		<<if $PC.markings == "freckles">>
@@ -62,7 +62,7 @@
 		<</if>>
 	<<elseif $PC.boobsBonus == -2>>
 		you have a @@.orange;pair of C-cup breasts.@@ They are nice and perky, with just a little bounce when you fuck your slaves.
-		<<if $PC.preg > 30 || $PC.births > 0>>
+		<<if $PC.lactation > 0>>
 			Your breasts feel bigger lately; likely a side effect of your lactation.
 		<</if>>
 		<<if $PC.markings == "freckles">>
@@ -72,7 +72,7 @@
 		<</if>>
 	<<elseif $PC.boobsBonus == -3>>
 		you have a @@.orange;pair of B-cup breasts.@@ They are nice and perky, with almost no bounce when you fuck your slaves.
-		<<if $PC.preg > 30 || $PC.births > 0>>
+		<<if $PC.lactation > 0>>
 			Your breasts feel bigger lately; likely a side effect of your lactation.
 		<</if>>
 		<<if $PC.markings == "freckles">>
@@ -82,7 +82,7 @@
 		<</if>>
 	<<elseif $PC.boobs == 1>>
 		you have a @@.orange;healthy pair of DD breasts.@@ They are nice, perky and jiggle pleasantly with your every move.
-		<<if $PC.preg > 30 || $PC.births > 0>>
+		<<if $PC.lactation > 0>>
 			Your breasts feel fuller lately; likely a side effect of your lactation.
 		<</if>>
 		<<if $PC.markings == "freckles">>
@@ -92,7 +92,7 @@
 		<</if>>
 	<<elseif $PC.title == 1>>
 		you have a @@.orange;masculine chest.@@
-		<<if $PC.preg > 30 || $PC.births > 0>>
+		<<if $PC.lactation > 0>>
 			Your chest feels swollen; the beads of milk forming on your nipples tells you why.
 		<</if>>
 		<<if $PC.markings == "freckles">>
@@ -102,7 +102,7 @@
 		<</if>>
 	<<else>>
 		@@you're flat.@@ You have nothing in the breast department.
-		<<if $PC.preg > 30 || $PC.births > 0>>
+		<<if $PC.lactation > 0>>
 			Your nipples cap a pair of painfully swollen bumps; milk beads from them at the slightest provocation.
 		<</if>>
 		<<if $PC.markings == "freckles">>
@@ -158,7 +158,7 @@
 		<<else>>
 			They are all natural, heavy, and a bit saggy though they retain some perk. Every single move you make sends ripples through your cleavage. You catch yourself watching them move in the mirror every so often.
 		<</if>>
-		<<if $PC.preg > 30 || $PC.births > 0>>
+		<<if $PC.lactation > 0>>
 			Your breasts feel even more enormous lately; likely a side effect of your lactation, though you could do without the wet spots forming over your nipples.
 		<</if>>
 	<<elseif $PC.boobsBonus == 2>>
@@ -175,7 +175,7 @@
 		<<else>>
 			They are all natural and a little heavy. They bounce lewdly when you shake them and take a little too long to calm down.
 		<</if>>
-		<<if $PC.preg > 30 || $PC.births > 0>>
+		<<if $PC.lactation > 0>>
 			Your breasts feel even more huge lately; likely a side effect of your lactation, though you could do without the wet spots forming over your nipples.
 		<</if>>
 	<<elseif $PC.boobsBonus == 1>>
@@ -192,7 +192,7 @@
 		<<else>>
 			They are nice and perky, despite their size. They bounce lewdly when you shake them.
 		<</if>>
-		<<if $PC.preg > 30 || $PC.births > 0>>
+		<<if $PC.lactation > 0>>
 			Your breasts feel bigger lately; likely a side effect of your lactation, though you could do without the wet spots forming over your nipples.
 		<</if>>
 	<<elseif $PC.boobsBonus == -1>>
@@ -205,7 +205,7 @@
 			eye-catching.
 		<</if>>
 		They are nice and perky, with just the right amount of bounce when you shake them.
-		<<if $PC.preg > 30 || $PC.births > 0>>
+		<<if $PC.lactation > 0>>
 			Your breasts feel bigger lately; likely a side effect of your lactation, though you could do without the wet spots forming over your nipples.
 		<</if>>
 	<<elseif $PC.boobsBonus == -2>>
@@ -218,7 +218,7 @@
 			standards.
 		<</if>>
 		They are very perky, but aren't big enough to have a nice bounce when you shake them.
-		<<if $PC.preg > 30 || $PC.births > 0>>
+		<<if $PC.lactation > 0>>
 			Your breasts feel bigger lately; likely a side effect of your lactation, though you could do without the wet spots forming over your nipples.
 		<</if>>
 	<<elseif $PC.boobsBonus == -3>>
@@ -231,20 +231,20 @@
 			standards.
 		<</if>>
 		Their size makes them extremely perky, at the cost of having little to no bounce.
-		<<if $PC.preg > 30 || $PC.births > 0>>
+		<<if $PC.lactation > 0>>
 			Your breasts feel bigger lately; likely a side effect of your lactation, though you could do without the wet spots forming over your nipples.
 		<</if>>
 	<<elseif $PC.boobs == 1>>
-		Your breasts are on the larger side of things<<if $PC.preg > 30 || $PC.births > 0>>, though you could do without the wet spots forming over your nipples<</if>>.
+		Your breasts are on the larger side of things<<if $PC.lactation > 0>>, though you could do without the wet spots forming over your nipples<</if>>.
 		<<if $PC.markings == "freckles">>
 			The tops of your breasts and your cleavage are lightly freckled.
 		<<elseif $PC.markings == "heavily freckled">>
 			They are covered in freckles, which are particularly dense in the cleft between them.
 		<</if>>
 	<<elseif $PC.title == 1>>
-		Your chest is quite masculine<<if $PC.preg > 30 || $PC.births > 0>>, though the pair of wet spots forming over your nipples suggest otherwise,<</if>><<if $PC.markings == "freckles">> and covered in a light spray of freckles<<elseif $PC.markings == "heavily freckled">> and covered in dense freckles<</if>>.
+		Your chest is quite masculine<<if $PC.lactation > 0>>, though the pair of wet spots forming over your nipples suggest otherwise,<</if>><<if $PC.markings == "freckles">> and covered in a light spray of freckles<<elseif $PC.markings == "heavily freckled">> and covered in dense freckles<</if>>.
 	<<else>>
-		Your chest is non-existent<<if $PC.preg > 30 || $PC.births > 0>>, save for the pair of bulging milk glands beneath your nipples,<</if>><<if $PC.markings == "freckles">> and covered in a light spray of freckles<<elseif $PC.markings == "heavily freckled">> and covered in dense freckles<</if>>.
+		Your chest is non-existent<<if $PC.lactation > 0>>, save for the pair of bulging milk glands beneath your nipples,<</if>><<if $PC.markings == "freckles">> and covered in a light spray of freckles<<elseif $PC.markings == "heavily freckled">> and covered in dense freckles<</if>>.
 	<</if>>
 <</if>>
 
diff --git a/src/pregmod/widgets/pregmodWidgets.tw b/src/pregmod/widgets/pregmodWidgets.tw
index be3c144bb0a..4b44a09f521 100644
--- a/src/pregmod/widgets/pregmodWidgets.tw
+++ b/src/pregmod/widgets/pregmodWidgets.tw
@@ -1285,6 +1285,6 @@ extremely pale -5
 			s.geneMods.rapidCellGrowth = 0;
 		}
 	}
-	WombInit(s);
+	/*WombInit(s);*/
 })>>
 <</widget>>
diff --git a/src/societies/aztec/slaveSacrifice.tw b/src/societies/aztec/slaveSacrifice.tw
index 9595e2633eb..102e643e1d6 100644
--- a/src/societies/aztec/slaveSacrifice.tw
+++ b/src/societies/aztec/slaveSacrifice.tw
@@ -244,14 +244,14 @@
 	<</if>>
 
 	Once the time for penance is over, $he is carried out of the cage, as $he is too weak to support $his own weight. After a short ceremony, $he is taken back to the penthouse to rest.
-	<<if $activeSlave.geneMods.NCS != 1>>
-		<<if $activeSlave.lactation > 1>>
-			$His breasts are grotesquely bloated, super sensitive and leaking milk from a week of neglected hyper-lactation.
-			<<set $activeSlave.boobs += 500>>
-		<<elseif $activeSlave.lactation > 0>>
-			$His breasts are hugely swollen from a week of pent up lactation.
-			<<set $activeSlave.boobs += 200>>
-		<</if>>
+	<<if $activeSlave.lactation > 1>>
+		$His breasts are grotesquely bloated, super sensitive and leaking milk from a week of neglected hyper-lactation.
+		<<set $activeSlave.boobsMilk += 50*$activeSlave.lactationAdaptation>>
+		<<set $sactiveSlave.boobs += $activeSlave.boobsMilk>>
+	<<elseif $activeSlave.lactation > 0>>
+		$His breasts are hugely swollen from a week of pent up lactation.
+		<<set $activeSlave.boobsMilk += 10*$activeSlave.lactationAdaptation>>
+		<<set $sactiveSlave.boobs += $activeSlave.boobsMilk>>
 	<</if>>
 	<<set $activeSlave.health -= 20>>
 		The penance put $his body through great stress @@.red;which impacted $his health.@@
diff --git a/src/uncategorized/BackwardsCompatibility.tw b/src/uncategorized/BackwardsCompatibility.tw
index 490a8f183aa..559318ba2a9 100644
--- a/src/uncategorized/BackwardsCompatibility.tw
+++ b/src/uncategorized/BackwardsCompatibility.tw
@@ -573,6 +573,9 @@
 <<if ndef $playerSurgery>>
 	<<set $playerSurgery = 0>>
 <</if>>
+<<if ndef $playerGetsMilked>>
+	<<set $playerGetsMilked = 0>>
+<</if>>
 <<if ndef $bodyswapAnnounced>>
 	<<set $bodyswapAnnounced = 0>>
 <</if>>
diff --git a/src/uncategorized/REFI.tw b/src/uncategorized/REFI.tw
index 7e2c44d07d8..051532bcc80 100644
--- a/src/uncategorized/REFI.tw
+++ b/src/uncategorized/REFI.tw
@@ -48,6 +48,13 @@
 	<<case "boobs">>
 		<<set $activeSlave = getSlave($boobsInterestTargetID)>>
 		<<set _refi = $slaveIndices[$boobsID]>>
+		<<if $slaves[_refi].lactation > 0>>
+			<<set $slaves[_refi].lactationDuration = 2>>
+			<<set $slaves[_refi].boobs -= $slaves[_refi].boobsMilk, $slaves[_refi].boobsMilk = 0>>
+		<<else>>
+			<<set $slaves[_refi].induceLactation += 4>>
+			<<run induceLactation($slaves[_refi])>>
+		<</if>>
 	<<case "submissive">>
 		<<set $activeSlave = getSlave($submissiveInterestTargetID)>>
 		<<set _refi = $slaveIndices[$subID]>>
@@ -1275,6 +1282,13 @@ There was a glint of envy <<if canSee($activeSlave)>>in $his eyes when $he saw<<
 	<<set $activeSlave.devotion += 4>>
 	<<set $activeSlave.mammaryCount++, $mammaryTotal++>>
 	<<set $activeSlave.fetish = "boobs", $activeSlave.fetishKnown = 1, $activeSlave.fetishStrength = 65>>
+	<<if $activeSlave.lactation > 0>>
+		<<set $activeSlave.lactationDuration = 2>>
+		<<set $activeSlave.boobs -= $activeSlave.boobsMilk, $activeSlave.boobsMilk = 0>>
+	<<else>>
+		<<set $activeSlave.induceLactation += 5>>
+		<<= induceLactation($activeSlave)>>
+	<</if>>
 	<</replace>>
 <</link>>
 <br><<link "Steer $him away from breast obsession for the moment">>
diff --git a/src/uncategorized/RESS.tw b/src/uncategorized/RESS.tw
index 9ab36514ef9..d904e446cca 100644
--- a/src/uncategorized/RESS.tw
+++ b/src/uncategorized/RESS.tw
@@ -440,8 +440,12 @@ provides just enough stimulation that $he climaxes. $His hands ball into fists a
 	the strong muscles around $his big cunt visibly contracting with the force as $he squirts a jet of girlcum out onto $his legs and the floor.
 <<elseif ($activeSlave.lactation > 1)>>
 	a surprising <<if $activeSlave.nipples != "fuckable">>jet<<else>>gush<</if>> of milk issuing from both of $his nipples.
+	<<set $activeSlave.lactationDuration = 2>>
+	<<set $activeSlave.boobs -= $activeSlave.boobsMilk, $activeSlave.boobsMilk = 0>>
 <<elseif ($activeSlave.lactation > 0)>>
 	drops of milk <<if $activeSlave.nipples != "fuckable">>appearing at each of $his motherly nipples only to be flung onto the floor<<else>>running from each of $his nipples and down $his breasts<</if>>.
+	<<set $activeSlave.lactationDuration = 2>>
+	<<set $activeSlave.boobs -= $activeSlave.boobsMilk, $activeSlave.boobsMilk = 0>>
 <<elseif ($activeSlave.belly >= 2000)>>
 	<<if $activeSlave.bellyFluid >= 2000>>
 		forcing a grunt out of $him as $he bends against $his _belly <<print $activeSlave.inflationType>>-filled belly
@@ -1597,6 +1601,13 @@ $He stops and <<if canSee($activeSlave)>>stares<<else>>faces you<</if>>, struggl
 <<if canDoVaginal($activeSlave)>> $His <<if ($activeSlave.labia > 1)>>generous<<else>>poor<</if>> pussylips are puffy, and you have no doubt $his vagina is quite sore.<</if>><<if canDoAnal($activeSlave)>> The awkward way $he's standing suggests that $his <<if ($activeSlave.anus > 2)>>gaping<<elseif ($activeSlave.anus > 1)>>big<<else>>tight<</if>> asshole has had more than one dick up it recently.<</if>>
 <<if $activeSlave.nipples != "fuckable">>
 	Even $his nipples are pinker than usual, having been cruelly pinched<<if $activeSlave.lactation > 0>> and milked<</if>>.
+	<<if $activeSlave.lactation > 0>>
+		<<set $activeSlave.lactationDuration = 2>>
+		<<set $activeSlave.boobs -= $activeSlave.boobsMilk, $activeSlave.boobsMilk = 0>>
+	<<else>>
+		<<set $activeSlave.induceLactation += 2>>
+		<<= induceLactation($activeSlave)>>
+	<</if>>
 <<else>>
 	Even $his nipples show signs of wear, having prolapsed slightly from heavy use.
 <</if>>
@@ -2148,25 +2159,25 @@ You complete the final rep of your first workout of the day, rack the bar, and j
 <<elseif $PC.belly >= 5000>>
 	greatly swollen middle and its stretched abdominal muscles with almost painful intensity. You can't really blame $him; despite how big you've gotten, you still have some abs left.
 <<elseif $PC.boobsBonus > 2>>
-	sports bra clad boobs with almost painful intensity. You can't really blame $him; the bra's three sizes too small, forcing your enormous <<if $PC.boobsImplant == 1>>fake breasts to balloon around the strained material<<else>>breasts to lewdly bulge around the strained material<</if>>, soaked in your sweat<<if $PC.preg > 30 || $PC.births > 0>>and breast milk<</if>>, and your nipples are clearly defined through the stretched thin fabric.
+	sports bra clad boobs with almost painful intensity. You can't really blame $him; the bra's three sizes too small, forcing your enormous <<if $PC.boobsImplant == 1>>fake breasts to balloon around the strained material<<else>>breasts to lewdly bulge around the strained material<</if>>, soaked in your sweat<<if $PC.lactation > 0>>and breast milk<</if>>, and your nipples are clearly defined through the stretched thin fabric.
 <<elseif $PC.boobsBonus == 2>>
-	sports bra clad boobs with almost painful intensity. You can't really blame $him; the bra's two sizes too small, allowing your huge <<if $PC.boobsImplant == 1>>fake <</if>>breasts to lewdly bulge out of them, soaked in your sweat<<if $PC.preg > 30 || $PC.births > 0>>and breast milk<</if>>, and your nipples are clearly visible as bumps in the strained material.
+	sports bra clad boobs with almost painful intensity. You can't really blame $him; the bra's two sizes too small, allowing your huge <<if $PC.boobsImplant == 1>>fake <</if>>breasts to lewdly bulge out of them, soaked in your sweat<<if $PC.lactation > 0>>and breast milk<</if>>, and your nipples are clearly visible as bumps in the strained material.
 <<elseif $PC.boobsBonus == 1>>
-	sports bra clad boobs with almost painful intensity. You can't really blame $him; the bra's one size too small, allowing your big <<if $PC.boobsImplant == 1>>fake <</if>>breasts to bulge out of them, soaked in your sweat<<if $PC.preg > 30 || $PC.births > 0>>and breast milk<</if>>, and your nipples are clearly visible as bumps in the taut material.
+	sports bra clad boobs with almost painful intensity. You can't really blame $him; the bra's one size too small, allowing your big <<if $PC.boobsImplant == 1>>fake <</if>>breasts to bulge out of them, soaked in your sweat<<if $PC.lactation > 0>>and breast milk<</if>>, and your nipples are clearly visible as bumps in the taut material.
 <<elseif $PC.boobs == 1>>
-	sports bra clad boobs with almost painful intensity. You can't really blame $him; the bra's soaked in your sweat<<if $PC.preg > 30 || $PC.births > 0>>and breast milk<</if>> and your nipples are clearly visible as bumps in the tight material.
+	sports bra clad boobs with almost painful intensity. You can't really blame $him; the bra's soaked in your sweat<<if $PC.lactation > 0>>and breast milk<</if>> and your nipples are clearly visible as bumps in the tight material.
 <<elseif $PC.belly >= 1500>>
 	swollen middle and its abdominal muscles with almost painful intensity. You can't really blame $him; despite your growing child<<if $PC.pregType > 1>>ren<</if>>, they're still pretty cut.
 <<elseif $PC.belly >= 100>>
 	<<if $PC.title == 0>>
-		slightly distended abdominal muscles and flat chest with almost painful intensity. You can't really blame $him; they're pretty cut, and your sports bra's soaked in your sweat and your nipples are clearly visible as bumps in the tight material.
+		slightly distended abdominal muscles and flat chest with almost painful intensity. You can't really blame $him; they're pretty cut, and your sports bra's soaked in your sweat<<if $PC.lactation > 0>>and breast milk<</if>> and your nipples are clearly visible as bumps in the tight material.
 	<<else>>
 		slightly distended abdominal muscles with almost painful intensity. You can't really blame $him; they're pretty cut, and your bare chest is coated in a light sheen of glistening sweat.
 	<</if>>
 	<<if $PC.pregKnown == 1>>You doubt $he realizes that the slight swell to your middle is a child.<</if>>
 <<else>>
 	<<if $PC.title == 0>>
-		abdominal muscles and flat chest with almost painful intensity. You can't really blame $him; they're pretty cut, and your sports bra's soaked in your sweat and your nipples are clearly visible as bumps in the tight material.
+		abdominal muscles and flat chest with almost painful intensity. You can't really blame $him; they're pretty cut, and your sports bra's soaked in your sweat<<if $PC.lactation > 0>>and breast milk<</if>> and your nipples are clearly visible as bumps in the tight material.
 	<<else>>
 		abdominal muscles with almost painful intensity. You can't really blame $him; they're pretty cut, and your bare chest is coated in a light sheen of glistening sweat.
 	<</if>>
@@ -10923,6 +10934,13 @@ You tell her kindly that you understand, and that $he'll be trained to address t
 	<<case "boobs">>
 		lie atop your desk. You don't bother specifying that $he's to lie on her back, since the boob slut jumps up and presents $his tits without instructions. You keep working with one hand while you idly tease and <<if $activeSlave.nipples != "fuckable">>flick<<else>>finger<</if>> the nearest <<if $activeSlave.lactation > 0>>milky <</if>> nipple with the other. $He's so horny that $he immediately experiences an immodest orgasm, her back arching away from the cool glass desktop as $he rides its waves. $He giggles a little, and then gasps as you resume playing with $him.
 		<<set $activeSlave.mammaryCount++, $mammaryTotal++>>
+		<<if $activeSlave.lactation > 0>>
+			<<set $activeSlave.lactationDuration = 2>>
+			<<set $activeSlave.boobs -= $activeSlave.boobsMilk, $activeSlave.boobsMilk = 0>>
+		<<else>>
+			<<set $activeSlave.induceLactation += 4>>
+			<<= induceLactation($activeSlave)>>
+		<</if>>
 	<<case "pregnancy">>
 		<<if !canDoAnal($activeSlave) && !canDoVaginal($activeSlave)>>
 			join you on the couch. Since <<if ($activeSlave.vagina >= 0)>>you're saving $his pussy<<else>>this slave $girl doesn't have a pussy<</if>>, and her tight little rosebud is off limits, your options are a bit limited. But you work with what you have, playing with her
@@ -13471,6 +13489,13 @@ You tell her kindly that you understand, and that $he'll be trained to address t
 	<</if>>
 	gently massaging her massive tits. They get sore from swinging around as $he moves, works, and fucks, and soon $he's groaning with pleasure at the attention. You finally manage to bring $him to orgasm with almost nothing but delicate stimulation of $his nipples. @@.mediumaquamarine;$He has become more trusting of you.@@
 	<<set $activeSlave.trust += 4, $activeSlave.mammaryCount++, $mammaryTotal++>>
+	<<if $activeSlave.lactation > 0>>
+		<<set $activeSlave.lactationDuration = 2>>
+		<<set $activeSlave.boobs -= $activeSlave.boobsMilk, $activeSlave.boobsMilk = 0>>
+	<<else>>
+		<<set $activeSlave.induceLactation += 3>>
+		<<= induceLactation($activeSlave)>>
+	<</if>>
 	<</replace>>
 <</link>>
 <<if canDoAnal($activeSlave) || canDoVaginal($activeSlave) && $activeSlave.belly < 100000>>
@@ -15242,6 +15267,10 @@ You tell her kindly that you understand, and that $he'll be trained to address t
 	<</switch>>
 	Satisfied, you leave $him to get back to sleep as best $he can.
 	<<set $activeSlave.devotion += 4>>
+	<<if $activeSlave.lactation > 0>>
+		<<set $activeSlave.lactationDuration = 2>>
+		<<set $activeSlave.boobs -= $activeSlave.boobsMilk, $activeSlave.boobsMilk = 0>>
+	<</if>>
 	<</replace>>
 <</link>>
 <<if $activeSlave.belly >= 5000 || $activeSlave.weight > 30>>
@@ -16246,6 +16275,8 @@ You tell her kindly that you understand, and that $he'll be trained to address t
 	<</if>>
 	When $he's done, $he leans back into you for a moment before setting the milk bucket down, a wordless gesture of @@.mediumaquamarine;considerable trust.@@ It means a lot to $him that you would milk her yourself.
 	<<set $activeSlave.trust += 4, $activeSlave.mammaryCount++, $mammaryTotal++>>
+	<<set $activeSlave.lactationDuration = 2>>
+	<<set $activeSlave.boobs -= $activeSlave.boobsMilk, $activeSlave.boobsMilk = 0>>
 	<</replace>>
 <</link>>
 <br><<link "Treat her like a cow">>
@@ -16278,6 +16309,8 @@ You tell her kindly that you understand, and that $he'll be trained to address t
 	and ask her what cows say. "Um, moo?" $he responds in a small,
 	@@.hotpink;submissive@@ voice.
 	<<set $activeSlave.devotion += 4, $activeSlave.mammaryCount++, $mammaryTotal++>>
+	<<set $activeSlave.lactationDuration = 2>>
+	<<set $activeSlave.boobs -= $activeSlave.boobsMilk, $activeSlave.boobsMilk = 0>>
 	<</replace>>
 <</link>><<if $PC.dick == 1>><<if canDoVaginal($activeSlave) && ($activeSlave.vagina == 0)>>//This option will take virginity//<<elseif !canDoVaginal($activeSlave) && canDoAnal($activeSlave) && ($activeSlave.anus == 0)>> //This option will take anal virginity//<</if>><</if>>
 
@@ -17249,6 +17282,13 @@ You tell her kindly that you understand, and that $he'll be trained to address t
 				<<for _ress = 0; _ress < $slaves.length; _ress++>><<if $slaves[_ress].origin == _origin>><<set $slaves[_ress].oralCount += 10>><</if>><</for>>
 				<<set $slaves[$slaveIndices[$eventSlave.ID]].mammaryCount += 10>>
 				<<set $oralTotal += 30, $mammaryTotal += 30>>
+				<<if $activeSlave.lactation > 0>>
+					<<set $activeSlave.lactationDuration = 2>>
+					<<set $activeSlave.boobs -= $activeSlave.boobsMilk, $activeSlave.boobsMilk = 0>>
+				<<else>>
+					<<set $activeSlave.induceLactation += 5>>
+					<<= induceLactation($activeSlave)>>
+				<</if>>
 			<<case "pregnancy">>
 				$He doesn't have permission to impregnate them, but they don't know that, and $he lies shamelessly. <<if canPenetrate($eventSlave)>>They beg her not to cum inside them, but $he does anyway,<<else>>$He uses a strap-on with a reservoir to fill them with cum,<</if>> and they cry themselves to sleep every night.
 				<<for _ress = 0; _ress < $slaves.length; _ress++>><<if $slaves[_ress].origin == _origin>><<set $slaves[_ress].vaginalCount += 10>><</if>><</for>>
@@ -17311,6 +17351,13 @@ You tell her kindly that you understand, and that $he'll be trained to address t
 	<</if>>
 	$He expects to get fucked, but you just massage $his breasts thoroughly, give her <<if $activeSlave.pregKnown == 1>>belly<<else>>butt<</if>> a possessive pat, and continue on your way. $He thanks you <<if $activeSlave.devotion > 50>>with touching sincerity<<elseif $activeSlave.devotion > 20>>sincerely<<else>>hesitantly<</if>> and returns to her business, @@.mediumaquamarine;smiling a little.@@
 	<<set $activeSlave.trust += 4>>
+	<<if $activeSlave.lactation > 0>>
+		<<set $activeSlave.lactationDuration = 2>>
+		<<set $activeSlave.boobs -= $activeSlave.boobsMilk, $activeSlave.boobsMilk = 0>>
+	<<else>>
+		<<set $activeSlave.induceLactation += 3>>
+		<<= induceLactation($activeSlave)>>
+	<</if>>
 	<</replace>>
 <</link>>
 <<if canDoAnal($activeSlave) || canDoVaginal($activeSlave)>>
@@ -18099,6 +18146,13 @@ You tell her kindly that you understand, and that $he'll be trained to address t
 		<</if>>
 		you reach around $him and take over the breast-cradling responsibilities. You say nothing for a while, just hefting her weighty udders, rolling them from side to side slightly. After letting her get used to the gentle treatment, you tell $him that you're her owner, and you find big breasts very attractive. You tell $him that you understand that they can be uncomfortable at times, but you expect $him to tolerate that without complaint. It isn't easy to be pretty, but it's easier to be a pretty slave than to be a homely one. This last point affects $him, and $he seems to @@.mediumaquamarine;take heart in the idea that you're improving her,@@ at least from your perspective. After all, $he's sitting atop <<if $PC.dick == 1>>your hard dick, which $he can definitely feel<<else>>your hot cunt, which $he can probably detect<</if>> through your clothes. $He does understand that having her <<= WrittenMaster()>> enjoy touching her boobs will be advantageous to $him.
 		<<set $activeSlave.trust += 5>>
+		<<if $activeSlave.lactation > 0>>
+			<<set $activeSlave.lactationDuration = 2>>
+			<<set $activeSlave.boobs -= $activeSlave.boobsMilk, $activeSlave.boobsMilk = 0>>
+		<<else>>
+			<<set $activeSlave.induceLactation += 3>>
+			<<= induceLactation($activeSlave)>>
+		<</if>>
 	<</replace>>
 <</link>>
 <<if $activeSlave.nipples != "fuckable">>
@@ -20101,6 +20155,8 @@ You tell her kindly that you understand, and that $he'll be trained to address t
 	<<if $activeSlave.boobs > 25000 || ($activeSlave.boobs > 10000 && $activeSlave.lactation > 1)>>Your clothes feel tight around your middle for the rest of the day, you may have indulged a little too much.<</if>>
 	<<set $activeSlave.devotion += 5>>
 	<<EventFetish $activeSlave "boobs">>
+	<<set $activeSlave.lactationDuration = 2>>
+	<<set $activeSlave.boobs -= $activeSlave.boobsMilk, $activeSlave.boobsMilk = 0>>
 	<</replace>>
 <</link>>
 <</if>>
diff --git a/src/uncategorized/RETS.tw b/src/uncategorized/RETS.tw
index 1937f6c8a53..918c1267465 100644
--- a/src/uncategorized/RETS.tw
+++ b/src/uncategorized/RETS.tw
@@ -773,6 +773,8 @@ Early in the morning, you run across $subSlave.slaveName using one of the pentho
 		_his2 lactation is natural, but it's still enough that _he2 wakes up most days with full, sore breasts.
 	<</if>>
 	But _his2 udders aren't the only thing producing creamy liquid. The machine is applying generous prostate stimulation to drain _his2 balls, too.
+	<<set $subSlave.lactationDuration = 2>>
+	<<set $subSlave.boobs -= $subSlave.boobsMilk, $subSlave.boobsMilk = 0>>
 <</if>>
 But the cum is about to be intercepted. There's another slave lying on the floor under $subSlave.slaveName, intertwined with the machine<<if $subSlave.lactation == 0>>; its cum receptacle lying unused<<else>>. The nipple milkers are attached to each of the human cow's nipples, and they're pumping away industriously, keeping the clear lines running away from each udder white with cream. On the other hand, the cum receptacle is lying unused<</if>>.
 <br><br>
@@ -990,7 +992,10 @@ while _he2 nurses. $activeSlave.slaveName notices you first, of course, and <<if
 	"I know milk i<<s>>n't a big part of my daughter'<<s>> diet, but thi<<s>> i<<s>> mo<<s>>tly for fun,"
 <</if>>
 $he adds impishly. Hearing this, $subSlave.slaveName lets the breast pop free of _his2 <<if $subSlave.lips > 95>>facepussy<<elseif $subSlave.lipsImplant > 0>>fake lips<<elseif $subSlave.lips > 20>>big lips<<else>>mouth<</if>> so _he2 can turn around and greet you too, but _he2 hurries back to the nipple afterward, and doesn't stop stimulating _his2 _mother for a moment.
-
+<<if $activeSlave.lactation > 0>>
+	<<set $activeSlave.lactationDuration = 2>>
+	<<set $activeSlave.boobs -= $activeSlave.boobsMilk, $activeSlave.boobsMilk = 0>>
+<</if>>
 
 <<default>>
 	<br>ERROR: bad RETS event $RETSevent
@@ -1806,6 +1811,10 @@ $he adds impishly. Hearing this, $subSlave.slaveName lets the breast pop free of
 		<<if canImpreg($activeSlave, $PC)>>
 			<<= knockMeUp($activeSlave, 5, 1, -1, 1)>>
 		<</if>>
+		<<if $activeSlave.lactation > 0>>
+			<<set $activeSlave.lactationDuration = 2>>
+			<<set $activeSlave.boobs -= $activeSlave.boobsMilk, $activeSlave.boobsMilk = 0>>
+		<</if>>
 	<<else>>
 		"Plea<<s>>e, plea<<s>>e let me drink your<<s>>, too," $he moans, and gets down on $his knees, opening $his mouth and sticking out $his tongue, begging for <<if $PC.dick>>your cock. You stick it straight down $his throat, and soon add a second load of cum<<else>>you to mount $his face. You do, and soon add a generous helping of femcum<</if>> to $his breakfast.
 		<<set $activeSlave.oralCount++, $oralTotal++>>
@@ -1950,6 +1959,8 @@ $he adds impishly. Hearing this, $subSlave.slaveName lets the breast pop free of
 		loves to be inseminated,
 		<<if $subSlave.pregKnown == 1>>
 			even though _he2's already pregnant. "Come on, you know you want my <<s>>emen," <<say>>s $activeSlave.slaveName, idly toying with the precum gathering at $his tip. "<<if _vaginal>>I'll do my be<<s>>t to shoot it all the way up into your womb. I might even make you pregnant twi<<c>>e, I'll cum in you <<s>>o hard<<else>>I'll fill your a<<ss>> up<</if>>."
+			<<set $subSlave.lactationDuration = 2>>
+			<<set $subSlave.boobs -= $subSlave.boobsMilk, $subSlave.boobsMilk = 0>>
 		<<else>>
 			regardless of whether _he2 can actually get pregnant <<if _vaginal>>right this second<<else>>in _his2 anus<</if>>. "Come on, you know you want my <<s>>emen," <<say>>s $activeSlave.slaveName, idly toying with the precum gathering at $his tip. "I'll fill you up."
 		<</if>>
diff --git a/src/uncategorized/freeRangeDairyAssignmentScene.tw b/src/uncategorized/freeRangeDairyAssignmentScene.tw
index e74ce0c3eec..398014ac454 100644
--- a/src/uncategorized/freeRangeDairyAssignmentScene.tw
+++ b/src/uncategorized/freeRangeDairyAssignmentScene.tw
@@ -362,7 +362,9 @@ $He grins madly around the phallus $he stuffed in $his mouth.
 	$He gets comfortable around $his cum-bloated belly as the impregantor continues its task.
 <</if>>
 <<if $activeSlave.lactation > 0>>
-The milking cups <<if $activeSlave.nipples == "fuckable">>over<<else>>on<</if>> $his nipples pulse slower and with less vigor. The lactation never fully subsides. The steady but gentle suction helps increasing milk production without actually draining the breasts.
+	The milking cups <<if $activeSlave.nipples == "fuckable">>over<<else>>on<</if>> $his nipples pulse slower and with less vigor. The lactation never fully subsides. The steady but gentle suction helps increasing milk production without actually draining the breasts.
+	<<set $activeSlave.lactationDuration = 2>>
+	<<set $activeSlave.boobs -= $activeSlave.boobsMilk, $activeSlave.boobsMilk = 0>>
 <</if>>
 <<if $activeSlave.dick > 0>>
 The suction on $his dick stops, allowing $his abused member to go soft and have some rest.
diff --git a/src/uncategorized/genericPlotEvents.tw b/src/uncategorized/genericPlotEvents.tw
index 1736db5a7d9..89c8558be00 100644
--- a/src/uncategorized/genericPlotEvents.tw
+++ b/src/uncategorized/genericPlotEvents.tw
@@ -375,6 +375,7 @@ When the aircraft lands at your penthouse pad, the would-be escapees are still u
 		<<set $activeSlave.vagina = random(1,3)>>
 		<<set $activeSlave.boobs += 100*random(0,2)>>
 		<<set $activeSlave.lactation = 1>>
+		<<set $activeSlave.lactationDuration = 2>>
 		<<set $activeSlave.nipples = either("cute", "puffy", "partially inverted", "inverted")>>
 		<<set _newSlaves.push($activeSlave)>>
 	<</for>>
@@ -531,6 +532,7 @@ When the aircraft lands at your penthouse pad, the would-be escapees are still u
 	<<set $activeSlave.bellySagPreg = 5>>
 	<<set $activeSlave.boobs += 100*random(1,3)>>
 	<<set $activeSlave.lactation = 1>>
+	<<set $activeSlave.lactationDuration = 2>>
 	<<set $activeSlave.boobShape = "saggy">>
 	<<set $activeSlave.nipples = "huge">>
 	<<set _newSlaves.push($activeSlave)>>
@@ -579,6 +581,7 @@ When the aircraft lands at your penthouse pad, the would-be escapees are still u
 	<<set $activeSlave.bellySagPreg = 5>>
 	<<set $activeSlave.boobs += 100*random(0,2)>>
 	<<set $activeSlave.lactation = 1>>
+	<<set $activeSlave.lactationDuration = 2>>
 	<<set $activeSlave.boobShape = "saggy">>
 	<<set $activeSlave.nipples = either("cute", "puffy")>>
 	<<set _newSlaves.push($activeSlave)>>
@@ -618,6 +621,9 @@ When the aircraft lands at your penthouse pad, the would-be escapees are still u
 	<<set $activeSlave.bellySagPreg = 5>>
 	<<set $activeSlave.boobs += 100*random(1,3)>>
 	<<set $activeSlave.lactation = 1>>
+	<<set $activeSlave.lactationDuration = 1>>
+	<<set $activeSlave.boobsMilk = 200>>
+	<<set $activeSlave.boobs += $activeSlave.boobsMilk>>
 	<<set $activeSlave.boobShape = "saggy">>
 	<<set $activeSlave.nipples = either("cute", "puffy")>>
 	<<set _newSlaves.push($activeSlave)>>
@@ -679,6 +685,7 @@ When the aircraft lands at your penthouse pad, the would-be escapees are still u
 		<<set $activeSlave.boobs += 100>>
 	<</if>>
 	<<set $activeSlave.lactation = 1>>
+	<<set $activeSlave.lactationDuration = 2>>
 	<<set $activeSlave.boobShape = either("perky", "torpedo-shaped")>>
 	<<set $activeSlave.nipples = either("cute", "puffy")>>
 	<<set _newSlaves.push($activeSlave)>>
@@ -871,6 +878,7 @@ A screen opposite your desk springs to life, <<if $assistant == 0>>showing your
 			<<run SetBellySize($slaves[$i])>>
 		<<elseif $slaves[$i].drugs == "breast injections">>
 			<<set $slaves[$i].lactation = 1>>
+			<<set $activeSlave.lactationDuration = 2>>
 			<<if ($slaves[$i].geneMods.NCS == 0) && ($slaves[$i].hips < 1)>>
 				<<set $slaves[$i].hips += 1>>
 				<<set $slaves[$i].butt += 1>>
@@ -903,6 +911,7 @@ A screen opposite your desk springs to life, <<if $assistant == 0>>showing your
 			<<run SetBellySize($slaves[$i])>>
 		<<elseif $slaves[$i].drugs == "intensive breast injections">>
 			<<set $slaves[$i].lactation = 1>>
+			<<set $activeSlave.lactationDuration = 2>>
 			<<if ($slaves[$i].geneMods.NCS == 0) && ($slaves[$i].hips < 1)>>
 				<<set $slaves[$i].hips += 1>>
 				<<set $slaves[$i].butt += 1>>
@@ -935,6 +944,7 @@ A screen opposite your desk springs to life, <<if $assistant == 0>>showing your
 			<<run SetBellySize($slaves[$i])>>
 		<<elseif $slaves[$i].drugs == "hyper breast injections">>
 			<<set $slaves[$i].lactation = 1>>
+			<<set $activeSlave.lactationDuration = 2>>
 			<<if ($slaves[$i].geneMods.NCS == 0) && ($slaves[$i].hips < 1)>>
 				<<set $slaves[$i].hips += 1>>
 				<<set $slaves[$i].butt += 2>>
diff --git a/src/uncategorized/industrialDairyAssignmentScene.tw b/src/uncategorized/industrialDairyAssignmentScene.tw
index 6d70f814036..4efa0c5d545 100644
--- a/src/uncategorized/industrialDairyAssignmentScene.tw
+++ b/src/uncategorized/industrialDairyAssignmentScene.tw
@@ -378,6 +378,8 @@ Fluids begin to come out of her. The drugs are strong, and despite everything sh
 <</if>>
 <<if ($activeSlave.lactation > 0)>>
 	The cups sucking her nipples work away ceaselessly, her milk whitening the clear piping running into the machine.
+	<<set $activeSlave.lactationDuration = 2>>
+	<<set $activeSlave.boobs -= $activeSlave.boobsMilk, $activeSlave.boobsMilk = 0>>
 <</if>>
 The machine continues fucking her despite her climax.
 <<if $activeSlave.devotion > 95>>
diff --git a/src/uncategorized/lawCompliance.tw b/src/uncategorized/lawCompliance.tw
index 619d885eee6..98b05a47dd1 100644
--- a/src/uncategorized/lawCompliance.tw
+++ b/src/uncategorized/lawCompliance.tw
@@ -197,7 +197,7 @@
 <<if $arcologies[0].FSPastoralistSMR == 1>>
 	<<if $activeSlave.lactation == 0>>
 	$He was implanted with permanent lactation drugs in order to qualify for sale, and was kept in the slave pens until $he could be put up on the block with dripping nipples.
-	<<set $activeSlave.lactation = 2>>
+	<<set $activeSlave.lactation = 2, $activeSlave.lactationDuration = 2>>
 	<</if>>
 <</if>>
 <<if $arcologies[0].FSChattelReligionistSMR == 1>>
diff --git a/src/uncategorized/masterSuiteReport.tw b/src/uncategorized/masterSuiteReport.tw
index 4bf64a06175..98042403105 100644
--- a/src/uncategorized/masterSuiteReport.tw
+++ b/src/uncategorized/masterSuiteReport.tw
@@ -306,6 +306,10 @@
 					<</if>>
 				<</if>>
 			<</if>>
+			<<if $slaves[$i].lactation > 0>>
+				<<set $slaves[$i].lactationDuration = 2>>
+				<<set $slaves[$i].boobs -= $slaves[$i].boobsMilk, $slaves[$i].boobsMilk = 0>>
+			<</if>>
 			<<if $slaves[$i].energy > 40 && $slaves[$i].energy < 95>>
 				Being a constant part of the fuckpit orgy @@.green;greatly heightens her libido.@@
 				<<set $slaves[$i].energy += 2>>
diff --git a/src/uncategorized/newSlaveIntro.tw b/src/uncategorized/newSlaveIntro.tw
index 1582f45e5fc..c929ee9953c 100644
--- a/src/uncategorized/newSlaveIntro.tw
+++ b/src/uncategorized/newSlaveIntro.tw
@@ -1491,7 +1491,7 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
 				<<set $activeSlave.oralCount++, $oralTotal++>>
 			<</replace>>
 		<</link>>
-	<<elseif $PC.pregMood == 1>>
+	<<elseif $PC.pregMood == 1 && $PC.lactation > 0>>
 		|
 		<<link "Take $him to your breast">>
 			<<replace "#introResult">>
@@ -1524,6 +1524,7 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
 					Reluctantly $he begins to suckle from your swollen breast. You gently brush $his head as you try to hold back your pleasure, but it is too much. As $he drinks deeper, you begin moaning with relief. At first $he tenses at the sound, fearing punishment, but soon realizes you have no intent on @@.mediumaquamarine;harming $him.@@ $He allows you to dote over $him as if $he were your child, carefully moving to your other breast once the first runs dry. As $he drinks, $he begins to massage your taut middle; $his touch soft and gentle. When you both finish, you push $him to $his feet and send $him on $his way. @@.hotpink;$He stays and offers a hand to help you to your feet.@@ You are surprised by this display; it might be obedience, but $he also may view you in your gravid state as someone weak. As $he helps you back to your desk, $he shoulders all of your weight. It would appear $he is putting you first, for now.
 					<<set $activeSlave.devotion += 5, $activeSlave.trust += 5>>
 				<</if>>
+				<<set $PC.lactationDuration = 2>>
 			<</replace>>
 		<</link>>
 	<</if>>
diff --git a/src/uncategorized/pRivalryActions.tw b/src/uncategorized/pRivalryActions.tw
index a4cb90db4b8..e7c0d783a37 100644
--- a/src/uncategorized/pRivalryActions.tw
+++ b/src/uncategorized/pRivalryActions.tw
@@ -187,6 +187,7 @@ Your inter-arcology war with the arcology owner behind the Daughters of Liberty
 		being weighed and measured to document her trim body.
 	<<case "Physical IdealismOLD">>
 		<<set $hostage.lactation = 2>>
+		<<set $hostage.lactationDuration = 2>>
 		<<set $hostage.trust -= 5>>
 		<<set $hostage.devotion -= 5>>
 		<<set $hostage.boobs += 1000>>
@@ -596,6 +597,7 @@ Your inter-arcology war with the arcology owner behind the Daughters of Liberty
 		<<set $hostage.vagina = 3>>
 		<<set $hostage.boobs += 100>>
 		<<set $hostage.lactation = 1>>
+		<<set $hostage.lactationDuration = 2>>
 		<<set $hostage.oralCount += 100>>
 		<<set $hostage.vaginalCount += 100>>
 		<<set $hostage.analCount += 100>>
@@ -618,6 +620,7 @@ Your inter-arcology war with the arcology owner behind the Daughters of Liberty
 		<<set $hostage.vagina = 3>>
 		<<set $hostage.boobs += 300>>
 		<<set $hostage.lactation = 1>>
+		<<set $hostage.lactationDuration = 2>>
 		<<set $hostage.oralCount += 100>>
 		<<set $hostage.vaginalCount += 100>>
 		<<set $hostage.analCount += 100>>
@@ -903,6 +906,7 @@ Your inter-arcology war with the arcology owner behind the Daughters of Liberty
 		<<set $hostage.vagina = 4>>
 		<<set $hostage.boobs += 100>>
 		<<set $hostage.lactation = 1>>
+		<<set $hostage.lactationDuration = 2>>
 		<<set $hostage.oralCount += 100>>
 		<<set $hostage.vaginalCount += 100>>
 		<<set $hostage.analCount += 100>>
@@ -922,6 +926,7 @@ Your inter-arcology war with the arcology owner behind the Daughters of Liberty
 		<<set $hostage.vagina = 4>>
 		<<set $hostage.boobs += 400>>
 		<<set $hostage.lactation = 1>>
+		<<set $hostage.lactationDuration = 2>>
 		<<set $hostage.oralCount += 100>>
 		<<set $hostage.vaginalCount += 100>>
 		<<set $hostage.analCount += 100>>
@@ -1117,6 +1122,7 @@ Your inter-arcology war with the arcology owner behind the Daughters of Liberty
 		<<set $hostage.analCount += 50>>
 		<<set $hostage.mammaryCount += 50>>
 		<<set $hostage.lactation = 1>>
+		<<set $hostage.lactationDuration = 2>>
 		<<set $hostage.fetish = "mindbroken">>
 		<<set $hostage.fetishStrength = 10>>
 		with a pair of slavers threatening her pregnancy. She keeps blocking the blows, again and again, until she can barely stay upright. With a final, brutal kick to the head, she falls to the floor, unmoving. Several seconds later, she struggles upright, a blank expression across her bloodied face.
@@ -2296,6 +2302,7 @@ Your inter-arcology war with the arcology owner behind the Daughters of Liberty
 		<<set $hostage.devotion -= 5>>
 		<<set $hostage.boobs += 100>>
 		<<set $hostage.lactation = 1>>
+		<<set $hostage.lactationDuration = 2>>
 		<<set $hostage.fetishStrength += 5>>
 		<<set $hostage.oralCount += 100>>
 		<<set $hostage.vaginalCount += 100>>
@@ -2307,6 +2314,7 @@ Your inter-arcology war with the arcology owner behind the Daughters of Liberty
 		<<set $hostage.devotion -= 5>>
 		<<set $hostage.boobs += 100>>
 		<<set $hostage.lactation = 1>>
+		<<set $hostage.lactationDuration = 2>>
 		<<set $hostage.oralCount += 100>>
 		<<set $hostage.vaginalCount += 100>>
 		<<set $hostage.analCount += 100>>
@@ -2706,6 +2714,7 @@ Your inter-arcology war with the arcology owner behind the Daughters of Liberty
 	<<case "Cummunism">>
 	<<if $rivalryDuration <= 5>>
 		<<set $hostage.lactation = 2>>
+		<<set $hostage.lactationDuration = 2>>
 		<<set $hostage.trust -= 5>>
 		<<set $hostage.devotion -= 5>>
 		<<set $hostage.weight += 5>>
diff --git a/src/uncategorized/pRivalryCapture.tw b/src/uncategorized/pRivalryCapture.tw
index 566884590d4..93f330f3bf7 100644
--- a/src/uncategorized/pRivalryCapture.tw
+++ b/src/uncategorized/pRivalryCapture.tw
@@ -260,6 +260,7 @@ the delicious moment of finding your rival on her knees in front of you with a b
 	<<set $activeSlave.boobs = 5000>>
 	<<set $activeSlave.nipples = "huge">>
 	<<set $activeSlave.lactation = 1>>
+	<<set $activeSlave.lactationDuration = 2>>
 	<<set $activeSlave.anus = 1>>
 	<<set $activeSlave.preg = 25>>
 	<<if $seeHyperPreg == 1>>
@@ -343,6 +344,7 @@ the delicious moment of finding your rival on her knees in front of you with a b
 	<<set $activeSlave.weight = random(100,160)>>
 	<<set $activeSlave.nipples = "huge">>
 	<<set $activeSlave.lactation = 2>>
+	<<set $activeSlave.lactationDuration = 2>>
 	<<set $activeSlave.anus = 1>>
 	<<set $activeSlave.vagina = 2>>
 	<<set $activeSlave.preg = 0>>
diff --git a/src/uncategorized/pRivalryHostage.tw b/src/uncategorized/pRivalryHostage.tw
index 90db6a447e1..62e5d2207e2 100644
--- a/src/uncategorized/pRivalryHostage.tw
+++ b/src/uncategorized/pRivalryHostage.tw
@@ -23,6 +23,8 @@
 <<set $activeSlave.behavioralQuirk = "none">>
 <<set $activeSlave.sexualQuirk = "none">>
 <<set $activeSlave.waist = Math.clamp($activeSlave.waist,-55,15)>>
+<<set $activeSlave.lactation = 0>>
+<<set $activeSlave.lactationDuration = 0>>
 <<set $activeSlave.hips = 0>>
 <<set $activeSlave.shoulders = -1>>
 <<if $activeSlave.vagina <= 0>><<set $activeSlave.vagina = 1>><</if>>
diff --git a/src/uncategorized/reBoomerang.tw b/src/uncategorized/reBoomerang.tw
index 36ea23f9639..8b43549baf6 100644
--- a/src/uncategorized/reBoomerang.tw
+++ b/src/uncategorized/reBoomerang.tw
@@ -100,7 +100,7 @@ brings up the relevant feeds. There's a naked body crumpled pathetically against
 	effects of living there have changed $his body greatly. It's surprising $he managed to make it up here at all. "Plea<<s>>e," $he begs. "I d-don't want to <<s>>pend the r-re<<s>>t of my life being raped by a machine."
 	<<if $activeSlave.amp == 0>>$He shifts uncomfortably on $his feet. The soles of the feet are a convenient place to beat a whore, since it's agonizingly painful, doesn't bruise badly, and won't inconvenience a slave that spends all $his time kneeling or lying down.<</if>>
 	<<set $activeSlave.anus = 4>>
-	<<set $activeSlave.lactation = 2, $activeSlave.lactationAdaptation = 100>>
+	<<set $activeSlave.lactation = 2, $activeSlave.lactationDuration = 2, $activeSlave.lactationAdaptation = 100>>
 	<<set $activeSlave.boobs = Math.clamp($activeSlave.boobs+2000+50*random(-20,20),0,10000)>>
 	<<set $activeSlave.boobShape = "saggy">>
 	<<if $seePreg != 0>><<if $activeSlave.ovaries>><<set $activeSlave.preg = random(5,_pregWeeks-1), $activeSlave.pregtype = random(2,4), $activeSlave.vagina = 4, $activeSlave.pregWeek = $activeSlave.preg, $activeSlave.pregKnown = 1, SetBellySize($activeSlave)>><</if>><</if>>
diff --git a/src/uncategorized/reFSAcquisition.tw b/src/uncategorized/reFSAcquisition.tw
index bb17c4f799e..ac12bc0479f 100644
--- a/src/uncategorized/reFSAcquisition.tw
+++ b/src/uncategorized/reFSAcquisition.tw
@@ -41,6 +41,7 @@
 <<set $activeSlave.pregKnown = 1>>
 <<run SetBellySize($activeSlave)>>
 <<set $activeSlave.lactation = 1>>
+<<set $activeSlave.lactationDuration = 2>>
 <<set $activeSlave.vagina = 1>>
 <<set $activeSlave.boobs += 200*random(2,5)>>
 <<slaveCost $activeSlave>>
@@ -60,6 +61,7 @@
 <<set $activeSlave.devotion = random(-15,15)>>
 <<set $activeSlave.trust = random(5,15)>>
 <<set $activeSlave.lactation = 1>>
+<<set $activeSlave.lactationDuration = 2>>
 <<set $activeSlave.vagina = 1>>
 <<set $activeSlave.boobs += 200*random(2,5)>>
 <<set $activeSlave.birthsTotal = random(1,3)>>
diff --git a/src/uncategorized/reMalefactor.tw b/src/uncategorized/reMalefactor.tw
index 45c8f3f5547..124df56b947 100644
--- a/src/uncategorized/reMalefactor.tw
+++ b/src/uncategorized/reMalefactor.tw
@@ -81,6 +81,7 @@
 <<set $activeSlave.accent = 3>>
 <<set $activeSlave.boobs += 200>>
 <<set $activeSlave.lactation = 1>>
+<<set $activeSlave.lactationDuration = 2>>
 <<set $activeSlave.ovaries = 1>>
 <<if $activeSlave.vagina < 2>>
 	<<set $activeSlave.vagina += 3>>
@@ -102,7 +103,11 @@
 <<set $activeSlaveOneTimeMaxAge = 12>>
 <<set $oneTimeDisableDisability = 1>>
 <<include "Generate New Slave">>
-<<set $activeSlave.origin = "You sentenced her to enslavement as a punishment for suspected escapism.">>
+<<if $arcologies[0].FSPaternalist != "unset">>
+	<<set $activeSlave.origin = "She was an orphan forced to live and steal on the streets until you adopted her.">>
+<<else>>
+	<<set $activeSlave.origin = "You sentenced her to enslavement as a punishment for suspected escapism.">>
+<</if>>
 <<set $activeSlave.career = "an orphan">>
 <<set $activeSlave.devotion = random(-15,0)>>
 <<set $activeSlave.trust = random(-75,-60)>>
@@ -505,8 +510,14 @@ She is easily taken into custody and her contraband confiscated once the jeering
 		<<set $activeSlave.trust = 25>>
 		<<set $cash -= $contractCost>>
 		<<replace "#result">>
-			You sit down and talk to the exhausted girl, handing her a contract cleverly altered to resemble adoption papers. Once she comprehends what she is looking at, she eagerly signs it. Only once she has reached the penthouse and been introduced to the slave life does she realize she willingly signed away her freedom. Though she can't complain. A warm cot and plenty of food await, which to her is a huge improvement over a slow death on the streets. The public @@.red;feels you let this criminal off too easy.@@
-		<<set $rep -= 100>>
+			You sit down and talk to the exhausted girl, handing her a contract cleverly altered to resemble adoption papers. Once she comprehends what she is looking at, she eagerly signs it. Only once she has reached the penthouse and been introduced to the slave life does she realize she willingly signed away her freedom. Though she can't complain. A warm cot and plenty of food await, which to her is a huge improvement over a slow death on the streets. The public
+			<<if $arcologies[0].FSPaternalist != "unset">>
+				@@.green;is impressed by your act,@@ even if it is a trick.
+				<<set $rep += 100>>
+			<<else>>
+				@@.red;feels you let this criminal off too easy.@@
+				<<set $rep -= 100>>
+			<</if>>
 		<<include "New Slave Intro">>
 		<</replace>>
 	<</link>>
diff --git a/src/uncategorized/reRecruit.tw b/src/uncategorized/reRecruit.tw
index 2ac1736b8bb..5397c7425cd 100644
--- a/src/uncategorized/reRecruit.tw
+++ b/src/uncategorized/reRecruit.tw
@@ -196,6 +196,7 @@
 <<set $activeSlave.trust = random(0,15)>>
 <<set $activeSlave.boobs += 100>>
 <<set $activeSlave.lactation = 1>>
+<<set $activeSlave.lactationDuration = 2>>
 <<set $activeSlave.butt += 1>>
 <<set $activeSlave.vagina = 1>>
 <<set $activeSlave.anus = 0>>
@@ -1249,6 +1250,8 @@
 <<set $activeSlave.pregKnown = 1>>
 <<run SetBellySize($activeSlave)>>
 <<set $activeSlave.birthsTotal += 3>>
+<<set $activeSlave.lactation = 1>>
+<<set $activeSlave.lactationDuration = 2>>
 <<set $activeSlave.pubicHStyle = "waxed">>
 <<set $activeSlave.underArmHStyle = "waxed">>
 <<set $activeSlave.hips = random(0,2)>>
@@ -1714,6 +1717,7 @@
 <<set $activeSlave.boobShape = "torpedo-shaped">>
 <<set $activeSlave.nipples = "puffy">>
 <<set $activeSlave.lactation = 1>>
+<<set $activeSlave.lactationDuration = 2>>
 <<set $activeSlave.vaginaLube = 1>>
 <<set $activeSlave.butt = 3>>
 <<set $activeSlave.tired = 1>>
diff --git a/src/uncategorized/reRelativeRecruiter.tw b/src/uncategorized/reRelativeRecruiter.tw
index 201c26befa0..74c05df0b23 100644
--- a/src/uncategorized/reRelativeRecruiter.tw
+++ b/src/uncategorized/reRelativeRecruiter.tw
@@ -128,6 +128,9 @@
 	<<if $activeSlave.nipples == "fuckable">>
 		<<set $activeSlave.nipples = either("cute", "inverted", "partially inverted", "puffy")>>
 	<</if>>
+	<<set $activeSlave.lactationDuration = 0>>
+	<<set $activeSlave.boobsMilk = 0>>
+	<<set $activeSlave.induceLactation = 0>>
 	<<set $activeSlave.preg = 0>>
 	<<set $activeSlave.pregType = 0>>
 	<<set $activeSlave.pregWeek = 0>>
@@ -163,6 +166,7 @@
 	<<set $activeSlave.butt = random(4,6)>>
 	<<set $activeSlave.boobShape = "saggy">>
 	<<set $activeSlave.lactation = 1>>
+	<<set $activeSlave.lactationDuration = 2>>
 	<<set $activeSlave.markings = "birthmark">>
 	<<set $activeSlave.hLength = random(50,100)>>
 	<<set $activeSlave.hStyle = either("bun", "neat", "up", "luxurious")>>
@@ -879,6 +883,9 @@ You look up the _relationType. _He2 costs <<print cashFormat($slaveCost)>>, a ba
 	<<set $activeSlave.entertainSkill = 0>>
 	<<set $activeSlave.whoreSkill = 0>>
 	<<set $activeSlave.lactation = 0>>
+	<<set $activeSlave.lactationDuration = 0>>
+	<<set $activeSlave.boobsMilk = 0>>
+	<<set $activeSlave.induceLactation = 0>>
 	<<set $activeSlaveOneTimeMaxAge = Math.max($minimumSlaveAge, Math.min(18, ($activeSlave.actualAge - Math.min(11, $fertilityAge))))>>
 	<<set $activeSlaveOneTimeMinAge = Math.max($minimumSlaveAge, Math.min(14, $activeSlaveOneTimeMaxAge))>>
 	<<if $pedo_mode == 1>><<set $activeSlaveOneTimeMinAge = $minimumSlaveAge>><</if>>
@@ -896,6 +903,9 @@ You look up the _relationType. _He2 costs <<print cashFormat($slaveCost)>>, a ba
 	<<set $activeSlave.entertainSkill += random(0,20)>>
 	<<set $activeSlave.whoreSkill += random(0,20)>>
 	<<set $activeSlave.lactation = 0>>
+	<<set $activeSlave.lactationDuration = 0>>
+	<<set $activeSlave.boobsMilk = 0>>
+	<<set $activeSlave.induceLactation = 0>>
 	<<set $activeSlave.actualAge += random(15,20)>>
 <<case "older sister">>
 	<<set $activeSlave.origin = "She was recruited into your service by her older sister.">>
diff --git a/src/uncategorized/recETS.tw b/src/uncategorized/recETS.tw
index a597af7adb1..7f1406ec3e0 100644
--- a/src/uncategorized/recETS.tw
+++ b/src/uncategorized/recETS.tw
@@ -131,6 +131,7 @@
 <<set $activeSlave.anus = 1>>
 <<set $activeSlave.boobs += 600>>
 <<set $activeSlave.lactation = 1>>
+<<set $activeSlave.lactationDuration = 2>>
 <<set $activeSlave.boobsImplant = 0>>
 <<set $activeSlave.butt += 2>>
 <<set $activeSlave.buttImplant = 0>>
@@ -202,6 +203,7 @@
 <<set $activeSlave.vaginalSkill = 15>>
 <<set $activeSlave.anus = 1>>
 <<set $activeSlave.lactation = 1>>
+<<set $activeSlave.lactationDuration = 2>>
 <<set $activeSlave.clothes = "cutoffs and a t-shirt">>
 <<set $activeSlave.health = random(20,40)>>
 <<set $activeSlave.pubicHStyle = "in a strip">>
@@ -404,6 +406,7 @@
 <<set $activeSlave.anus = 1>>
 <<set $activeSlave.boobs += 600>>
 <<set $activeSlave.lactation = 1>>
+<<set $activeSlave.lactationDuration = 2>>
 <<set $activeSlave.boobsImplant = 0>>
 <<set $activeSlave.butt += 2>>
 <<set $activeSlave.buttImplant = 0>>
@@ -717,6 +720,7 @@
 <<set $activeSlave.boobShape = "saggy">>
 <<set $activeSlave.nipples = "huge">>
 <<set $activeSlave.lactation = 1>>
+<<set $activeSlave.lactationDuration = 2>>
 <<set $activeSlave.lactationAdaptation = 30>>
 <<set $activeSlave.hips = 2>>
 <<set $activeSlave.vaginaLube = 1>>
@@ -848,6 +852,7 @@
 <<set $activeSlave.boobs = 0>>
 <<set $activeSlave.birthsTotal = 0>>
 <<set $activeSlave.lactation = 0>>
+<<set $activeSlave.lactationDuration = 0>>
 <<set $activeSlave.anus = 0>>
 <<set $activeSlave.butt -= 2>>
 <<set $activeSlave.behavioralQuirk = "none">>
@@ -950,6 +955,7 @@
 <<set $activeSlave.faceShape = "masculine">>
 <<set $activeSlave.boobs = 0>>
 <<set $activeSlave.lactation = 0>>
+<<set $activeSlave.lactationDuration = 0>>
 <<set $activeSlave.anus = 0>>
 <<set $activeSlave.pubicHStyle = "bushy">>
 <<set $activeSlave.behavioralQuirk = "none">>
@@ -1061,6 +1067,7 @@
 <<set $activeSlave.faceShape = "masculine">>
 <<set $activeSlave.boobs = 0>>
 <<set $activeSlave.lactation = 0>>
+<<set $activeSlave.lactationDuration = 0>>
 <<set $activeSlave.anus = 0>>
 <<set $activeSlave.pubicHStyle = "bushy">>
 <<set $activeSlave.behavioralQuirk = "none">>
@@ -1101,6 +1108,7 @@
 <<set $activeSlave.anus = 0>>
 <<set $activeSlave.boobs -= 300>>
 <<set $activeSlave.lactation = 0>>
+<<set $activeSlave.lactationDuration = 0>>
 <<set $activeSlave.boobsImplant = 0>>
 <<set $activeSlave.butt -= 2>>
 <<if $familyTesting == 1>>
@@ -1274,6 +1282,7 @@
 	<<set $activeSlave.boobShape = "perky">>
 	<<set $activeSlave.nipples = "tiny">>
 	<<set $activeSlave.lactation = 0>>
+	<<set $activeSlave.lactationDuration = 0>>
 	<<set $activeSlave.lactationAdaptation = 0>>
 	<<set $activeSlave.hips = -2>>
 	<<set $activeSlave.shoulders = -2>>
@@ -1332,6 +1341,7 @@
 	<<set $activeSlave.boobShape = "perky">>
 	<<set $activeSlave.nipples = "tiny">>
 	<<set $activeSlave.lactation = 0>>
+	<<set $activeSlave.lactationDuration = 0>>
 	<<set $activeSlave.lactationAdaptation = 0>>
 	<<set $activeSlave.hips = -2>>
 	<<set $activeSlave.shoulders = -2>>
diff --git a/src/uncategorized/remoteSurgery.tw b/src/uncategorized/remoteSurgery.tw
index 642407500e0..bbf6e154d56 100644
--- a/src/uncategorized/remoteSurgery.tw
+++ b/src/uncategorized/remoteSurgery.tw
@@ -538,11 +538,11 @@ Work on her chest:
 <</if>>
 <<if $activeSlave.lactation < 2>>
 	<<if $activeSlave.indentureRestrictions < 2>>
-	[[Implant slow-release pro-lactation drugs|Surgery Degradation][$activeSlave.lactation = 2,$cash -= $surgeryCost, $activeSlave.health -= 10,$surgeryType = "lactation"]] //This may increase $his natural breast size//
+	[[Implant slow-release pro-lactation drugs|Surgery Degradation][$activeSlave.lactation = 2, $activeSlave.lactationDuration = 2, $activeSlave.induceLactation = 0, $activeSlave.boobs -= $activeSlave.boobsMilk, $activeSlave.boobsMilk = 0,$cash -= $surgeryCost, $activeSlave.health -= 10,$surgeryType = "lactation"]] //This may increase $his natural breast size//
 	<</if>>
 <</if>>
 <<if $activeSlave.lactation > 1>>
-	| [[Remove lactation implant|Surgery Degradation][$activeSlave.lactation = 0,$cash -= $surgeryCost, $surgeryType = "endlac"]]
+	| [[Remove lactation implant|Surgery Degradation][$activeSlave.lactation = 0, $activeSlave.lactationDuration = 0,$cash -= $surgeryCost, $surgeryType = "endlac"]]
 <</if>>
 
 <br><br>
diff --git a/src/uncategorized/resFailure.tw b/src/uncategorized/resFailure.tw
index 1c84b9ed2cc..1c298ceb16a 100644
--- a/src/uncategorized/resFailure.tw
+++ b/src/uncategorized/resFailure.tw
@@ -101,6 +101,7 @@
 		<<set $activeSlave.butt = either(5, 6, 6, 7, 7, 8, 9)>>
 		<<set $activeSlave.boobs = 30000>>
 		<<set $activeSlave.lactation = 1>>
+		<<set $activeSlave.lactationDuration = 2>>
 		<<set $activeSlave.lactationAdaptation = 100>>
 		<<set $activeSlave.origin = "She is a prized dairy cow given to you by a failed local pasture of The Cattle Ranch.">>
 		<<set $activeSlave.anus = 1>>
@@ -177,6 +178,7 @@
 		<<if $GRI.schoolUpgrade == 2>>
 			<<set $activeSlave.boobs = 200*random(15,30)>>
 			<<set $activeSlave.lactation = 2>>
+			<<set $activeSlave.lactationDuration = 2>>
 		<<else>>
 			<<set $activeSlave.boobs = 200*random(4,20)>>
 		<</if>>
diff --git a/src/uncategorized/saChoosesOwnJob.tw b/src/uncategorized/saChoosesOwnJob.tw
index 0c252f9029f..c85bc0a336e 100644
--- a/src/uncategorized/saChoosesOwnJob.tw
+++ b/src/uncategorized/saChoosesOwnJob.tw
@@ -28,6 +28,10 @@
 			<<= removeJob($slaves[$i], $slaves[$i].assignment)>>
 		<</if>>
 
+	<<elseif ($slaves[$i].boobsMilk > 0)>>
+		<<set $slaves[$i].choosesOwnAssignmentText += " rushes to get milked since $his breasts have become painfully engorged.">>
+		<<= assignJob($slaves[$i], "get milked")>>
+
 	<<elseif ($slaves[$i].intelligenceImplant < 15)>>
 		<<if ($universalRulesAssignsSelfFacility == 1) && ($schoolroom > $schoolroomSlaves)>>
 			<<set $slaves[$i].choosesOwnAssignmentText += " is uneducated, so $he sits $himself down in $schoolroomName.">>
diff --git a/src/uncategorized/saDrugs.tw b/src/uncategorized/saDrugs.tw
index 07d5efc425b..e118f832074 100644
--- a/src/uncategorized/saDrugs.tw
+++ b/src/uncategorized/saDrugs.tw
@@ -810,7 +810,7 @@
 	<<if $slaves[$i].geneMods.NCS == 0>>
 		<<if $slaves[$i].lactation == 0 && random(0,50) < $slaves[$i].health>>
 			The hormonal changes produced by the fertility drugs have the side effect of @@.lime;inducing lactation,@@ indistinguishable from natural lactation.
-			<<set $slaves[$i].lactation = 1>>
+			<<set $slaves[$i].lactation = 1, $slaves[$i].lactationDuration = 1>>
 		<</if>>
 	<</if>>
 	<<if $slaves[$i].attrXY < 100 && random(0,10) < $slaves[$i].health>>
@@ -850,7 +850,7 @@
 	<<if $slaves[$i].geneMods.NCS == 0>>
 		<<if $slaves[$i].lactation == 0 && random(0,100) < $slaves[$i].health>>
 			The hormonal changes produced by the fertility drugs have the side effect of @@.lime;inducing lactation,@@ indistinguishable from natural lactation.
-			<<set $slaves[$i].lactation = 1>>
+			<<set $slaves[$i].lactation = 1, $slaves[$i].lactationDuration = 1>>
 		<</if>>
 	<</if>>
 
diff --git a/src/uncategorized/saLongTermEffects.tw b/src/uncategorized/saLongTermEffects.tw
index cb635885b40..40ff7151908 100644
--- a/src/uncategorized/saLongTermEffects.tw
+++ b/src/uncategorized/saLongTermEffects.tw
@@ -6601,7 +6601,14 @@
 		<<set $slaves[$i].boobsMilk = 0, $slaves[$i].lactation = 0>>
 	<<elseif $slaves[$i].lactationDuration == 1>>
 		Without release, $his breasts have become @@.lime;<<if $slaves[$i].lactationAdaptation > 50>>massively <</if>>engorged@@ with pent-up milk.
-		<<set $slaves[$i].boobsMilk += 10*$slaves[$i].lactationAdaptation>>
+		<<set $slaves[$i].boobsMilk = 10*$slaves[$i].lactationAdaptation>>
+		<<if $slaves[$i].boobs+$slaves[$i].boobsMilk > $slaves[$i].boobs*2>>
+			Being bloated to the point of bursting is @@.red;incredibly painful.@@
+			<<set $slaves[$i].health -= 20>>
+		<<elseif $slaves[$i].boobs+$slaves[$i].boobsMilk > $slaves[$i].boobs*.5>>
+			Being so swollen is @@.red;very uncomfortable.@@
+			<<set $slaves[$i].health -= 5>>
+		<</if>>
 		<<set $slaves[$i].boobs += $slaves[$i].boobsMilk>>
 	<<else>>
 		<<set $slaves[$i].lactationDuration-->>
diff --git a/src/uncategorized/saPleaseYou.tw b/src/uncategorized/saPleaseYou.tw
index a5db5202221..0169f96f439 100644
--- a/src/uncategorized/saPleaseYou.tw
+++ b/src/uncategorized/saPleaseYou.tw
@@ -1081,6 +1081,14 @@ serves you this week.
 			<</if>>
 		<</if>>
 	<</if>>
+	
+	<<if $slaves[$i].lactation > 0 && _mammaryUse > 0>>
+		<<set $slaves[$i].lactationDuration = 2>>
+		<<if $slaves[$i].boobsMilk > 0>>
+			<<set $slaves[$i].boobs -= $slaves[$i].boobsMilk, $slaves[$i].boobsMilk = 0>>
+		<</if>>
+	<</if>>
+	
 <</if>>
 
 <<if $slaves[$i].need>>
@@ -1102,6 +1110,11 @@ serves you this week.
 				$He got tremendous sexual satisfaction from the _penetrativeUse times $he got to fuck you this week.
 				<<set $slaves[$i].need = 0>>
 			<</if>>
+		<<case "boobs">>
+			<<if _mammaryUse > 0>>
+				$He got tremendous sexual satisfaction from the _mammaryUse times you groped $his breasts to orgasm this week.
+				<<set $slaves[$i].need = 0>>
+			<</if>>
 		<<case "sadist">>
 		<<case "cumslut">>
 			<<if _oralUse > 0>>
diff --git a/src/uncategorized/saRecruitGirls.tw b/src/uncategorized/saRecruitGirls.tw
index 6b4b29f796c..da57b71eb26 100644
--- a/src/uncategorized/saRecruitGirls.tw
+++ b/src/uncategorized/saRecruitGirls.tw
@@ -25,6 +25,11 @@
 	<<set _idleTarget = Infinity>>
 <</if>>
 
+<<if $slaves[$i].lactation && $arcologies[0].FSPastoralist != "unset">>
+	<<set $slaves[$i].lactationDuration = 2>>
+	<<set $slaves[$i].boobs -= $slaves[$i].boobsMilk, $slaves[$i].boobsMilk = 0>>
+<</if>>
+
 <<if $recruiterTarget == "other arcologies">>
 
 	<<set _influenced = 0>>
diff --git a/src/uncategorized/saServeThePublic.tw b/src/uncategorized/saServeThePublic.tw
index 53f500a21a8..24b2994ea96 100644
--- a/src/uncategorized/saServeThePublic.tw
+++ b/src/uncategorized/saServeThePublic.tw
@@ -765,6 +765,7 @@ $His appearance attracted $beauty members of the public (<<print Math.trunc($bea
 
 <<if $slaves[$i].lactation > 0>>
 	$He appeals to citizens who like lactation play, or just like sluts they can drink milk from.
+	<<set $slaves[$i].lactationDuration = 2, $slaves[$i].boobs -= $slaves[$i].boobsMilk, $slaves[$i].boobsMilk = 0>>
 <</if>>
 
 <<if $slaves[$i].bellyPreg >= 1500 || setup.fakeBellies.includes($bellyAccessory) || $slaves[$i].bellyImplant >= 1500>>
diff --git a/src/uncategorized/saServeYourOtherSlaves.tw b/src/uncategorized/saServeYourOtherSlaves.tw
index d4571a22fe6..d776ea38117 100644
--- a/src/uncategorized/saServeYourOtherSlaves.tw
+++ b/src/uncategorized/saServeYourOtherSlaves.tw
@@ -348,6 +348,10 @@ is serving ''$slaves[_dom].slaveName'' this week.
 			Since $slaves[_dom].slaveName loves having _his2 breasts attended to, $slaves[$i].slaveName pampers _his2 breasts shamelessly. $He spends the week devotedly massaging $slaves[_dom].slaveName's _domRace breasts with $his _subRace <<if $slaves[$i].amp == 1>>face<<else>>hands<</if>>, sucking lovingly at _his2 nipples, and caring for everything with lotions and oils<<if $slaves[$i].amp == 1>> (as best $he can without hands)<</if>>. They sleep together so that $slaves[$i].slaveName can <<if $slaves[$i].amp == 1>>snuggle into _his2 bust<<else>>hold _his2 boobs<</if>> as $he goes to sleep, which sometimes results in less sleep for both as the breast play continues long into the night. @@.hotpink;$slaves[_dom].slaveName enjoys having $slaves[$i].slaveName to see to _his2 tits.@@
 		<</if>>
 	<</if>>
+	<<if $slaves[_dom].lactation > 0>>
+		<<set $slaves[_dom].lactationDuration = 2>>
+		<<set $slaves[_dom].boobs -= $slaves[_dom].boobsMilk, $slaves[_dom].boobsMilk = 0>>
+	<</if>>
 	<<set _oralUse = random(9,12)>>
 	<<set $slaves[_dom].mammaryCount += _oralUse, $mammaryTotal += _oralUse>>
 <<elseif ($slaves[$i].dick > 0) && ($slaves[$i].balls != 0) && !canAchieveErection($slaves[$i]) && !["chastity", "combined chastity"].includes($slaves[$i].dickAccessory) && ($slaves[_dom].fetishKnown == 1) && ($slaves[_dom].fetishStrength > 60) && ($slaves[_dom].fetish == "cumslut")>>
@@ -451,6 +455,13 @@ is serving ''$slaves[_dom].slaveName'' this week.
 <<set _cervixPump = _vaginalUse>>
 <<set $slaves[$i].need -= ((_penetrativeUse+_vaginalUse+_analUse)*5)>>
 
+<<if $slaves[$i].lactation > 0 && _mammaryUse > 0>>
+	<<set $slaves[$i].lactationDuration = 2>>
+	<<if $slaves[$i].boobsMilk > 0>>
+		<<set $slaves[$i].boobs -= $slaves[$i].boobsMilk, $slaves[$i].boobsMilk = 0>>
+	<</if>>
+<</if>>
+
 <<if $slaves[$i].fetishKnown>>
 	<<switch $slaves[$i].fetish>>
 	<<case "submissive" "masochist">>
@@ -488,6 +499,12 @@ is serving ''$slaves[_dom].slaveName'' this week.
 	<<case "humiliation">>
 		Having all the other slaves see $him in such a humiliating role really satisfies $slaves[$i].slaveName.
 		<<set $slaves[$i].need = 0>>
+	<<case "boobs">>
+		<<if _mammaryUse > 0>>
+			Having $his tits serve as someone's toy really satisfies $slaves[$i].slaveName.
+			<<set $slaves[$i].need = 0, $slaves[$i].induceLactation += 2>>
+			<<= induceLactation($slaves[$i])>>
+		<</if>>
 	<</switch>>
 <</if>>
 
diff --git a/src/uncategorized/saWhore.tw b/src/uncategorized/saWhore.tw
index 9abcc2eb28b..25a50ffd404 100644
--- a/src/uncategorized/saWhore.tw
+++ b/src/uncategorized/saWhore.tw
@@ -780,6 +780,7 @@ $His appearance attracted $beauty customers (<<print Math.trunc($beauty/7)>> a d
 
 <<if $slaves[$i].lactation > 0>>
 	$He appeals to customers who like lactation play, or just want a whore they can drink milk from.
+	<<set $slaves[$i].lactationDuration = 2, $slaves[$i].boobs -= $slaves[$i].boobsMilk, $slaves[$i].boobsMilk = 0>>
 <</if>>
 
 <<if $slaves[$i].bellyPreg >= 1500 || setup.fakeBellies.includes($bellyAccessory) || $slaves[$i].bellyImplant >= 1500>>
diff --git a/src/uncategorized/seRecruiterSuccess.tw b/src/uncategorized/seRecruiterSuccess.tw
index f74bac5fed5..95f101257d0 100644
--- a/src/uncategorized/seRecruiterSuccess.tw
+++ b/src/uncategorized/seRecruiterSuccess.tw
@@ -153,6 +153,9 @@ Your recruiter $Recruiter.slaveName has succeeded; she's convinced an old world
 <<run SetBellySize($activeSlave)>>
 <<set $activeSlave.boobs += 50*random(0,6)>>
 <<set $activeSlave.lactation = random(0,1)>>
+<<if $activeSlave.lactation > 0>>
+	<<set $activeSlave.lactationDuration = 2>>
+<</if>>
 <<set $activeSlave.weight = random(0,50)>>
 <<if $recruiterEugenics == 1>>
 	<<if $IntelligenceEugenicsSMR == 1>>
diff --git a/src/uncategorized/theSlavegirlSchool.tw b/src/uncategorized/theSlavegirlSchool.tw
index 47a2a8af617..317724691a7 100644
--- a/src/uncategorized/theSlavegirlSchool.tw
+++ b/src/uncategorized/theSlavegirlSchool.tw
@@ -34,7 +34,7 @@
 <<else>>
 	//You lack the necessary funds to buy this slave.//
 <</if>>
-<br>[["Decline to purchase " + $him + " and check out another slave|The Slavegirl School][$slavesSeen += 1]]
+<br>[["Decline to purchase " + $him + " and check out another slave"|The Slavegirl School][$slavesSeen += 1]]
 <<if $newSlaves.length > 0>>
 	<br>[[Finish your order of slaves|Bulk Slave Intro]]
 <</if>>
diff --git a/src/utility/saRulesWidgets.tw b/src/utility/saRulesWidgets.tw
index db081d223d3..047707e8a0a 100644
--- a/src/utility/saRulesWidgets.tw
+++ b/src/utility/saRulesWidgets.tw
@@ -56,6 +56,10 @@ and
 							fuck $his butt
 						<<case "boobs">>
 							fondle $his breasts
+							<<if $slaves[$i].lactation > 0>>
+								<<set $slaves[$i].lactationDuration = 2>>
+								<<set $slaves[$i].boobs -= $slaves[$i].boobsMilk, $slaves[$i].boobsMilk = 0>>
+							<</if>>
 						<<case "sadist">>
 							let $him help you abuse other slaves
 						<<case "masochist">>
@@ -248,6 +252,12 @@ and
 								<</if>>
 							<<elseif ($slaves[$i].fetish == "boobs")>>
 								pays extra attention to $his breasts and nipples.
+								<<if $slaves[$i].lactation > 0>>
+									<<set $slaves[$i].lactationDuration = 2>>
+									<<set $slaves[$i].boobs -= $slaves[$i].boobsMilk, $slaves[$i].boobsMilk = 0>>
+								<<else>>
+									<<= induceLactation($slaves[$i])>>
+								<</if>>
 							<<elseif ($slaves[$i].fetish == "sadist")>>
 								frequently poses threats at $himself.
 							<<elseif ($slaves[$i].fetish == "masochist")>>
@@ -300,6 +310,12 @@ and
 								$he always pays special attention to $his butthole; @@.lightcoral;$he's an anal slut!@@
 							<<elseif ($slaves[$i].fetish == "boobs")>>
 								$he always has a hand to $his nipples; @@.lightcoral;$he's a boob fetishist!@@
+								<<if $slaves[$i].lactation > 0>>
+									<<set $slaves[$i].lactationDuration = 2>>
+									<<set $slaves[$i].boobs -= $slaves[$i].boobsMilk, $slaves[$i].boobsMilk = 0>>
+								<<else>>
+									<<= induceLactation($slaves[$i])>>
+								<</if>>
 							<<elseif ($slaves[$i].fetish == "sadist")>>
 								$he tends to threaten $his toys; @@.lightcoral;$he's a sadist!@@
 							<<elseif ($slaves[$i].fetish == "masochist")>>
@@ -457,6 +473,12 @@ and
 									<<set $slaves[$i].analCount += _fuckCount, $analTotal += _fuckCount>>
 								<<elseif ($slaves[$i].fetish == "boobs")>>
 									demand that other slaves massage $his breasts.
+									<<if $slaves[$i].lactation > 0>>
+										<<set $slaves[$i].lactationDuration = 2>>
+										<<set $slaves[$i].boobs -= $slaves[$i].boobsMilk, $slaves[$i].boobsMilk = 0>>
+									<<else>>
+										<<= induceLactation($slaves[$i])>>
+									<</if>>
 									<<set _fuckCount = random(10,25)>>
 									<<set $slaves[$i].mammaryCount += _fuckCount, $mammaryTotal += _fuckCount>>
 								<<elseif ($slaves[$i].fetish == "sadist")>>
@@ -683,6 +705,12 @@ and
 									<</if>>
 								<<elseif ($slaves[$i].fetish == "boobs")>>
 									seeing to anyone who will show $his breasts some love.
+									<<if $slaves[$i].lactation > 0>>
+										<<set $slaves[$i].lactationDuration = 2>>
+										<<set $slaves[$i].boobs -= $slaves[$i].boobsMilk, $slaves[$i].boobsMilk = 0>>
+									<<else>>
+										<<= induceLactation($slaves[$i])>>
+									<</if>>
 									<<set _fuckCount = random(10,25)>>
 									<<set $slaves[$i].mammaryCount += _fuckCount, $mammaryTotal += _fuckCount>>
 								<<elseif ($slaves[$i].fetish == "sadist")>>
@@ -813,6 +841,12 @@ and
 										@@.lightcoral;$he's an anal slut!@@
 									<<elseif ($slaves[$i].fetish == "boobs")>>
 										fondles $his breasts, and $he loves it; @@.lightcoral;$he's a boob fetishist!@@
+										<<if $slaves[$i].lactation > 0>>
+											<<set $slaves[$i].lactationDuration = 2>>
+											<<set $slaves[$i].boobs -= $slaves[$i].boobsMilk, $slaves[$i].boobsMilk = 0>>
+										<<else>>
+											<<= induceLactation($slaves[$i])>>
+										<</if>>
 									<<elseif ($slaves[$i].fetish == "sadist")>>
 										asks $slaves[$i].slaveName to hit $him, which $slaves[$i].slaveName enjoys doing; @@.lightcoral;$he's a sadist!@@
 									<<elseif ($slaves[$i].fetish == "masochist")>>
@@ -852,6 +886,12 @@ and
 									@@.lightcoral;$he's an anal slut!@@
 								<<elseif ($slaves[$i].fetish == "boobs")>>
 									fondle $his breasts; @@.lightcoral;$he's a boob fetishist!@@
+									<<if $slaves[$i].lactation > 0>>
+										<<set $slaves[$i].lactationDuration = 2>>
+										<<set $slaves[$i].boobs -= $slaves[$i].boobsMilk, $slaves[$i].boobsMilk = 0>>
+									<<else>>
+										<<= induceLactation($slaves[$i])>>
+									<</if>>
 								<<elseif ($slaves[$i].fetish == "sadist")>>
 									let $him abuse them; @@.lightcoral;$he's a sadist!@@
 								<<elseif ($slaves[$i].fetish == "masochist")>>
diff --git a/src/utility/slaveCreationWidgets.tw b/src/utility/slaveCreationWidgets.tw
index 4f1ec312804..a5adfbdec69 100644
--- a/src/utility/slaveCreationWidgets.tw
+++ b/src/utility/slaveCreationWidgets.tw
@@ -2191,7 +2191,7 @@
 		<<set $activeSlave.butt = Math.clamp($activeSlave.butt+random(2,3), 0, 10)>>
 		<<set $activeSlave.boobs = Math.clamp($activeSlave.boobs+(100*random(60,80)), 0, 10000)>>
 		<<set $activeSlave.nipples = either("huge", "inverted")>>
-		<<set $activeSlave.lactation = 2>>
+		<<set $activeSlave.lactation = 2, $activeSlave.lactationDuration = 2>>
 		<<if $activeSlave.dick > 0>>
 			<<set $activeSlave.dick = Math.clamp($activeSlave.dick+random(6,8), 0, 10)>>
 		<</if>>
@@ -2298,6 +2298,9 @@
 			<<run SetBellySize($activeSlave)>>
 		<</if>>
 		<<set $activeSlave.lactation = random(0,1)>>
+		<<if $activeSlave.lactation > 0>>
+			<<set $activeSlave.lactationDuration = 2>>
+		<</if>>
 	<<elseif $arcologies[_market].FSRestart > 50>>
 		They have all been rendered unable to reproduce.
 		<<if $activeSlave.ovaries == 1>>
@@ -2387,6 +2390,9 @@
 			<<set $activeSlave.pregType = setPregType($activeSlave)>>
 			<<run SetBellySize($activeSlave)>>
 			<<set $activeSlave.lactation = random(0,1)>>
+			<<if $activeSlave.lactation > 0>>
+				<<set $activeSlave.lactationDuration = 2>>
+			<</if>>
 		<</if>>
 	<</if>>
 
@@ -2581,6 +2587,9 @@
 		<<if $activeSlave.lactation == 0>>
 			<<set $activeSlave.lactation = either(0,1,1,1,1,2)>>
 		<</if>>
+		<<if $activeSlave.lactation > 0>>
+			<<set $activeSlave.lactationDuration = 2>>
+		<</if>>
 		<<if $activeSlave.weight < -10>>
 			<<set $activeSlave.weight += random(0,20)>>
 		<</if>>
@@ -3085,7 +3094,7 @@
 	<<set $activeSlave.butt = random(4,10)>>
 	<<if $GRI.schoolUpgrade == 2>>
 		<<set $activeSlave.boobs = 200*random(15,30)>>
-		<<set $activeSlave.lactation = 2>>
+		<<set $activeSlave.lactation = 2, $activeSlave.lactationDuration = 2>>
 	<<else>>
 		<<set $activeSlave.boobs = 200*random(4,20)>>
 	<</if>>
@@ -3312,6 +3321,7 @@
 		<<set $activeSlave.boobs = (($activeSlave.physicalAge*100)*2)+either(-100, -100, 0, 0, 100, 100, 200, 200, 300, 500)>>
 		<<set $activeSlave.lactation = 0>>
 		<<set $activeSlave.lactationAdaptation = 0>>
+		<<set $activeSlave.lactationDuration = 0>>
 		<<set $activeSlave.anus = 0>>
 		<<set $activeSlave.vagina = 0>>
 		<<set $activeSlave.trueVirgin = 1>>
@@ -3396,7 +3406,7 @@
 		<<set $activeSlave.career = "a dairy cow">>
 		<<set $activeSlave.butt = either(3, 3, 4, 4, 4, 5, 6)>>
 		<<set $activeSlave.boobs = (($activeSlave.physicalAge*100)*2)+either(-100, -100, 0, 0, 100, 100, 200, 200, 300, 500)>>
-		<<set $activeSlave.lactation = 1>>
+		<<set $activeSlave.lactation = 1, $activeSlave.lactationDuration = 2>>
 		<<set $activeSlave.lactationAdaptation = 100>>
 		<<set $activeSlave.anus = 1>>
 		<<set $activeSlave.vagina = 3>>
-- 
GitLab