diff --git a/devNotes/Useful JS Function Documentation.txt b/devNotes/Useful JS Function Documentation.txt
index 6af61a39b62511c24abb6a59fb2a6c0661055f61..5860fa2665f6511ef396d3e2e10c65969df37271 100644
--- a/devNotes/Useful JS Function Documentation.txt	
+++ b/devNotes/Useful JS Function Documentation.txt	
@@ -294,11 +294,11 @@ VCheck.Simple(count) - Calls either VaginalVCheck or VCheck.Anal() count times.
 
 VCheck.Partner(countAnal, countBoth) - Attempts to increment $partner's anal count by countAnal and attempts to increment vaginal by countBoth. Defaults to 1. Attempts to take virginities.
 
-SimpleSexAct(slave, count) - Runs a player on slave sex act count times. (randomly chooses hole based off availability.)
+SimpleSexAct.Player(slave, count) - Runs a player on slave sex act count times. (randomly chooses hole based off availability.)
 
-SimpleSlaveFucking(slave, count) - Runs a slave on slave sex act count times. (randomly chooses hole based off availability.)
+SimpleSexAct.Slave(slave, count) - Runs a slave on slave sex act count times. (randomly chooses hole based off availability.)
 
-SimpleSlaveSlaveFucking(slave1, slave2, count) - Runs a slave2 on slave1 sex act count times. (randomly chooses hole based off availability.)
+SimpleSexAct.Slaves(slave1, slave2, count) - Runs a slave2 on slave1 sex act count times. (randomly chooses hole based off availability.)
 
 UtilJS [script]
 
diff --git a/src/js/sexActsJS.js b/src/js/sexActsJS.js
index 79f31c38772d6e908354732ac6e99379394f66c2..75f76bfd3f9ecc147ec584d1f4e82062547affac 100644
--- a/src/js/sexActsJS.js
+++ b/src/js/sexActsJS.js
@@ -313,162 +313,172 @@ window.VCheck = (function() {
 	}
 })();
 
-/**
- * fuckCount is how many times to increment either the Vaginal, Anal, or Oral counts, depending on availability of slave.
- * If count is left undefined it will assume it to be 1.
- * Intended to be a simple "I want to fuck x and not have to code a bunch of logic for it".
- * @param {App.Entity.SlaveState} slave
- * @param {number} [fuckCount=1]
- * @returns {string}
- */
-window.SimpleSexAct = function SimpleSexAct(slave, fuckCount = 1) {
-	const V = State.variables;
-	let fuckTarget = 0;
-	let r = "";
+window.SimpleSexAct = (function() {
+	"use strict";
 
-	for (let i = 0; i < fuckCount; i++) {
-		fuckTarget = jsRandom(1, 100);
-		if (slave.nipples === "fuckable" && V.PC.dick === 1 && fuckTarget > 80) {
-			V.mammaryTotal += 1;
-			slave.counter.mammary += 1;
-		} else if (canDoVaginal(slave) && slave.vagina > 0 && fuckTarget > 33) {
-			V.vaginalTotal += 1;
-			slave.counter.vaginal += 1;
-			if (canImpreg(slave, V.PC)) {
-				r += knockMeUp(slave, 10, 0, -1, 1);
-			}
-		} else if (canDoAnal(slave) && slave.anus > 0 && fuckTarget > 10) {
-			V.analTotal += 1;
-			slave.counter.anal += 1;
-			if (canImpreg(slave, V.PC)) {
-				r += knockMeUp(slave, 10, 1, -1, 1);
+	return {
+		Player: SimpleSexActPlayer,
+		Slave: SimpleSlaveFucking,
+		Slaves: SimpleSlaveSlaveFucking,
+	};
+
+	/**
+	 * fuckCount is how many times to increment either the Vaginal, Anal, or Oral counts, depending on availability of slave.
+	 * If count is left undefined it will assume it to be 1.
+	 * Intended to be a simple "I want to fuck x and not have to code a bunch of logic for it".
+	 * @param {App.Entity.SlaveState} slave
+	 * @param {number} [fuckCount=1]
+	 * @returns {string}
+	 */
+	function SimpleSexActPlayer(slave, fuckCount = 1) {
+		const V = State.variables;
+		let fuckTarget = 0;
+		let r = "";
+
+		for (let i = 0; i < fuckCount; i++) {
+			fuckTarget = jsRandom(1, 100);
+			if (slave.nipples === "fuckable" && V.PC.dick === 1 && fuckTarget > 80) {
+				V.mammaryTotal += 1;
+				slave.counter.mammary += 1;
+			} else if (canDoVaginal(slave) && slave.vagina > 0 && fuckTarget > 33) {
+				V.vaginalTotal += 1;
+				slave.counter.vaginal += 1;
+				if (canImpreg(slave, V.PC)) {
+					r += knockMeUp(slave, 10, 0, -1, 1);
+				}
+			} else if (canDoAnal(slave) && slave.anus > 0 && fuckTarget > 10) {
+				V.analTotal += 1;
+				slave.counter.anal += 1;
+				if (canImpreg(slave, V.PC)) {
+					r += knockMeUp(slave, 10, 1, -1, 1);
+				}
+			} else {
+				V.oralTotal += 1;
+				slave.counter.oral += 1;
 			}
-		} else {
-			V.oralTotal += 1;
-			slave.counter.oral += 1;
 		}
+		return r;
 	}
-	return r;
-};
 
-/**
- * count is how many times to increment either the Vaginal, Anal, or Oral counts, depending on availability of slave.
- * If count is left undefined it will assume it to be 1.
- * Intended to be a simple "x got fucked y times and I don't want to keep coding it".
- * Pregnancy chance is handled in saLongTermEffects.tw.
- * @param {App.Entity.SlaveState} slave
- * @param {number} fuckCount
- */
-window.SimpleSlaveFucking = function SimpleSlaveFucking(slave, fuckCount = 1) {
-	const V = State.variables;
-	let fuckTarget = 0;
+	/**
+	 * count is how many times to increment either the Vaginal, Anal, or Oral counts, depending on availability of slave.
+	 * If count is left undefined it will assume it to be 1.
+	 * Intended to be a simple "x got fucked y times and I don't want to keep coding it".
+	 * Pregnancy chance is handled in saLongTermEffects.tw.
+	 * @param {App.Entity.SlaveState} slave
+	 * @param {number} fuckCount
+	 */
+	function SimpleSlaveFucking(slave, fuckCount = 1) {
+		const V = State.variables;
+		let fuckTarget = 0;
 
-	for (let i = 0; i < fuckCount; i++) {
-		fuckTarget = jsRandom(1, 100);
-		if (slave.nipples === "fuckable" && fuckTarget > 80) {
-			V.mammaryTotal += 1;
-			slave.counter.mammary += 1;
-		} else if (canDoVaginal(slave) && slave.vagina > 0 && fuckTarget > 33) {
-			V.vaginalTotal += 1;
-			slave.counter.vaginal += 1;
-		} else if (canDoAnal(slave) && slave.anus > 0 && fuckTarget > 10) {
-			V.analTotal += 1;
-			slave.counter.anal += 1;
-		} else {
-			V.oralTotal += 1;
-			slave.counter.oral += 1;
+		for (let i = 0; i < fuckCount; i++) {
+			fuckTarget = jsRandom(1, 100);
+			if (slave.nipples === "fuckable" && fuckTarget > 80) {
+				V.mammaryTotal += 1;
+				slave.counter.mammary += 1;
+			} else if (canDoVaginal(slave) && slave.vagina > 0 && fuckTarget > 33) {
+				V.vaginalTotal += 1;
+				slave.counter.vaginal += 1;
+			} else if (canDoAnal(slave) && slave.anus > 0 && fuckTarget > 10) {
+				V.analTotal += 1;
+				slave.counter.anal += 1;
+			} else {
+				V.oralTotal += 1;
+				slave.counter.oral += 1;
+			}
 		}
 	}
-};
 
-/**
- * count is how many times to increment either the Vaginal, Anal, or Oral counts, depending on availability of slave.
- * If count is left undefined it will assume it to be 1.
- * Intended to be a simple "x got fucked y times by z and I don't want to keep coding it".
- * @param {App.Entity.SlaveState} subslave
- * @param {App.Entity.SlaveState} domslave
- * @param {number} fuckCount
- * @returns {string}
- */
-window.SimpleSlaveSlaveFucking = function SimpleSlaveSlaveFucking(subslave, domslave, fuckCount = 1) {
-	const V = State.variables;
-	let fuckTarget = 0;
-	let r = "";
+	/**
+	 * count is how many times to increment either the Vaginal, Anal, or Oral counts, depending on availability of slave.
+	 * If count is left undefined it will assume it to be 1.
+	 * Intended to be a simple "x got fucked y times by z and I don't want to keep coding it".
+	 * @param {App.Entity.SlaveState} subslave
+	 * @param {App.Entity.SlaveState} domslave
+	 * @param {number} fuckCount
+	 * @returns {string}
+	 */
+	function SimpleSlaveSlaveFucking(subslave, domslave, fuckCount = 1) {
+		const V = State.variables;
+		let fuckTarget = 0;
+		let r = "";
 
-	for (let j = 0; j < fuckCount; j++) {
+		for (let j = 0; j < fuckCount; j++) {
 		// there is a reason randomization happens inside cycle - to spread fuck around, otherwise cycle isn't even needed
-		fuckTarget = jsRandom(1, 100);
-		if (subslave.nipples === "fuckable" && canPenetrate(domslave) && fuckTarget > 80) {
-			if (passage() === "SA serve your other slaves") {
-				if (subslave.ID === V.slaves[V.i].ID) {
-					V.slaves[V.i].counter.mammary++;
-					V.mammaryTotal++;
-					domslave.counter.penetrative++;
-					V.penetrativeTotal++;
+			fuckTarget = jsRandom(1, 100);
+			if (subslave.nipples === "fuckable" && canPenetrate(domslave) && fuckTarget > 80) {
+				if (passage() === "SA serve your other slaves") {
+					if (subslave.ID === V.slaves[V.i].ID) {
+						V.slaves[V.i].counter.mammary++;
+						V.mammaryTotal++;
+						domslave.counter.penetrative++;
+						V.penetrativeTotal++;
+					} else {
+						subslave.counter.mammary++;
+						V.mammaryTotal++;
+						V.slaves[V.i].counter.penetrative++;
+						V.penetrativeTotal++;
+					}
 				} else {
-					subslave.counter.mammary++;
 					V.mammaryTotal++;
-					V.slaves[V.i].counter.penetrative++;
 					V.penetrativeTotal++;
+					subslave.counter.mammary++;
+					domslave.counter.penetrative++;
 				}
-			} else {
-				V.mammaryTotal++;
-				V.penetrativeTotal++;
-				subslave.counter.mammary++;
-				domslave.counter.penetrative++;
-			}
-		} else if (canDoVaginal(subslave) && subslave.vagina > 0 && canPenetrate(domslave) && fuckTarget > 33) {
-			if (passage() === "SA serve your other slaves") {
-				if (subslave.ID === V.slaves[V.i].ID) {
-					V.slaves[V.i].counter.vaginal++;
+			} else if (canDoVaginal(subslave) && subslave.vagina > 0 && canPenetrate(domslave) && fuckTarget > 33) {
+				if (passage() === "SA serve your other slaves") {
+					if (subslave.ID === V.slaves[V.i].ID) {
+						V.slaves[V.i].counter.vaginal++;
+						V.vaginalTotal++;
+						V.penetrativeTotal++;
+						domslave.counter.penetrative++;
+					} else {
+						V.slaves[V.i].counter.penetrative++;
+						V.penetrativeTotal++;
+						subslave.counter.vaginal++;
+						V.vaginalTotal++;
+					}
+				} else {
 					V.vaginalTotal++;
+					subslave.counter.vaginal++;
 					V.penetrativeTotal++;
 					domslave.counter.penetrative++;
-				} else {
-					V.slaves[V.i].counter.penetrative++;
-					V.penetrativeTotal++;
-					subslave.counter.vaginal++;
-					V.vaginalTotal++;
 				}
-			} else {
-				V.vaginalTotal++;
-				subslave.counter.vaginal++;
-				V.penetrativeTotal++;
-				domslave.counter.penetrative++;
-			}
-			if (canImpreg(subslave, domslave)) {
-				r += knockMeUp(subslave, 3, 0, domslave.ID, 1);
-			}
-		} else if (canDoAnal(subslave) && subslave.anus > 0 && canPenetrate(domslave) && fuckTarget > 10) {
+				if (canImpreg(subslave, domslave)) {
+					r += knockMeUp(subslave, 3, 0, domslave.ID, 1);
+				}
+			} else if (canDoAnal(subslave) && subslave.anus > 0 && canPenetrate(domslave) && fuckTarget > 10) {
 			// i think would impregnate from anal here even without .mpreg? same in original widget too
-			if (canImpreg(subslave, domslave) && subslave.mpreg === 1) {
-				r += knockMeUp(subslave, 3, 1, domslave.ID, 1);
-			}
-			if (passage() === "SA serve your other slaves") {
-				if (subslave.ID === V.slaves[V.i].ID) {
-					V.slaves[V.i].counter.anal++;
-					V.analTotal++;
-					V.penetrativeTotal++;
-					domslave.counter.penetrative++;
+				if (canImpreg(subslave, domslave) && subslave.mpreg === 1) {
+					r += knockMeUp(subslave, 3, 1, domslave.ID, 1);
+				}
+				if (passage() === "SA serve your other slaves") {
+					if (subslave.ID === V.slaves[V.i].ID) {
+						V.slaves[V.i].counter.anal++;
+						V.analTotal++;
+						V.penetrativeTotal++;
+						domslave.counter.penetrative++;
+					} else {
+						V.slaves[V.i].counter.penetrative++;
+						V.penetrativeTotal++;
+						V.analTotal++;
+						subslave.counter.anal++;
+					}
 				} else {
-					V.slaves[V.i].counter.penetrative++;
-					V.penetrativeTotal++;
 					V.analTotal++;
 					subslave.counter.anal++;
+					V.penetrativeTotal++;
+					domslave.counter.penetrative++;
 				}
 			} else {
-				V.analTotal++;
-				subslave.counter.anal++;
-				V.penetrativeTotal++;
-				domslave.counter.penetrative++;
+				V.oralTotal++;
+				subslave.counter.oral++;
 			}
-		} else {
-			V.oralTotal++;
-			subslave.counter.oral++;
 		}
+		return r;
 	}
-	return r;
-};
+})();
 
 /**
  * @param {App.Entity.SlaveState} slave
diff --git a/src/uncategorized/REFI.tw b/src/uncategorized/REFI.tw
index 73c4a2c31523d8fe022c9c848c0a9ad590d9700e..78975625b88e0094c6f454744d71baaa10b3f5ad 100644
--- a/src/uncategorized/REFI.tw
+++ b/src/uncategorized/REFI.tw
@@ -1799,7 +1799,7 @@ There was a glint of envy <<if canSee($activeSlave)>>in $his eyes when $he saw<<
 	<<elseif canDoAnal($activeSlave) && $activeSlave.anus > 0>>
 		<<= VCheck.Anal()>>
 	<<else>>
-		<<= SimpleSexAct($activeSlave)>>
+		<<= SimpleSexAct.Player($activeSlave)>>
 	<</if>>
 	<<set $activeSlave.devotion += 4>>
 	<</replace>>
diff --git a/src/uncategorized/masterSuiteReport.tw b/src/uncategorized/masterSuiteReport.tw
index 35c3e2c886e6d9e58619dd34e30a826ff99f5ba8..acb42232b40ba592b604e47d22e3b5c28119b3db 100644
--- a/src/uncategorized/masterSuiteReport.tw
+++ b/src/uncategorized/masterSuiteReport.tw
@@ -226,7 +226,7 @@
 		/% Both Concubine and other slaves %/
 		<<if $masterSuiteUpgradeLuxury == 2 && $masterSuiteAverageEnergy > random(50,90)>>
 			<<set _energy = (Math.ceil($slaves[$i].energy/5)*7)>>
-			<<run SimpleSlaveFucking($slaves[$i], _energy)>>
+			<<run SimpleSexAct.Slave($slaves[$i], _energy)>>
 			<<if canPenetrate($slaves[$i])>>
 				<<set _fuckCount = (random(1,3)*_energy)>>
 				<<set $slaves[$i].counter.penetrative += _fuckCount, $penetrativeTotal += _fuckCount>>
diff --git a/src/uncategorized/saLongTermEffects.tw b/src/uncategorized/saLongTermEffects.tw
index edb7444b1dbcfbf6f2c754c30d5b36b603afc944..71ccbdfe336b14cf5872f8829859062220f8a9d1 100644
--- a/src/uncategorized/saLongTermEffects.tw
+++ b/src/uncategorized/saLongTermEffects.tw
@@ -6460,7 +6460,7 @@
 	<<if (def _j) && isSlaveAvailable($slaves[$i]) && isSlaveAvailable($slaves[_j])>> /* rape time */
 		<<set _fuckCount = random(1,(Math.ceil($slaves[$i].energy/10)+1))>>
 		<<set $slaves[$i].need -= _fuckCount*10>>
-		<<= SimpleSlaveSlaveFucking($slaves[_j], $slaves[$i], _fuckCount)>>
+		<<= SimpleSexAct.Slaves($slaves[_j], $slaves[$i], _fuckCount)>>
 	<</if>>
 <</if>>
 <<if $slaves[$i].relationship > 2>>
@@ -6484,7 +6484,7 @@
 		<</if>>
 		<<set _fuckCount = random(Math.min(4,Math.ceil($slaves[$i].energy/20)),5)>>
 		<<set $slaves[$i].need = 0>>
-		<<= SimpleSlaveSlaveFucking($slaves[_j], $slaves[$i], _fuckCount)>>
+		<<= SimpleSexAct.Slaves($slaves[_j], $slaves[$i], _fuckCount)>>
 	<</if>>
 <</if>>
 
diff --git a/src/uncategorized/saRules.tw b/src/uncategorized/saRules.tw
index 8e5a35424bf0952b4439ff354ac751c1fff5f432..4cdf572d300621c2d6bfe9c0bd6e42f2601df605 100644
--- a/src/uncategorized/saRules.tw
+++ b/src/uncategorized/saRules.tw
@@ -1541,7 +1541,7 @@
 				<</if>>
 			<<elseif $slaves[$i].need < $slaves[$i].needCap*0.5>>
 				<<if $Wardeness != 0 && canPenetrate($Wardeness)>>
-					<<run SimpleSlaveFucking($slaves[$i], _wardenFunTimes)>>
+					<<run SimpleSexAct.Slave($slaves[$i], _wardenFunTimes)>>
 					<<set $slaves[_FLs].counter.penetrative += _wardenFunTimes, $penetrativeTotal += _wardenFunTimes>>
 					<<if _wardenFunTimes > 0 && canImpreg($slaves[$i], $Wardeness) && ($cellblockWardenCumsInside == 1 || $Wardeness.fetish == "mindbroken") && (($slaves[$i].vagina > 0 && $slaves[$i].ovaries == 1) || ($slaves[$i].anus > 0 && $slaves[$i].mpreg == 1))>>
 						<<if ($slaves[$i].vagina > 0 && $slaves[$i].ovaries == 1)>>
@@ -1566,7 +1566,7 @@
 				<</if>>
 			<<else>>
 				<<if $Wardeness != 0 && canPenetrate($Wardeness)>>
-					<<run SimpleSlaveFucking($slaves[$i], _wardenFunTimes)>>
+					<<run SimpleSexAct.Slave($slaves[$i], _wardenFunTimes)>>
 					<<set $slaves[_FLs].counter.penetrative += _wardenFunTimes, $penetrativeTotal += _wardenFunTimes>>
 					<<if _wardenFunTimes > 0 && canImpreg($slaves[$i], $Wardeness) && ($cellblockWardenCumsInside == 1 || $Wardeness.fetish == "mindbroken") && (($slaves[$i].vagina > 0 && $slaves[$i].ovaries == 1) || ($slaves[$i].anus > 0 && $slaves[$i].mpreg == 1))>>
 						<<if ($slaves[$i].vagina > 0 && $slaves[$i].ovaries == 1)>>
diff --git a/src/uncategorized/saServeYourOtherSlaves.tw b/src/uncategorized/saServeYourOtherSlaves.tw
index 50feecef4febcae589d85305ab96fbe97441c066..9fbaaee5420df37826d6411e21500f3800638ce9 100644
--- a/src/uncategorized/saServeYourOtherSlaves.tw
+++ b/src/uncategorized/saServeYourOtherSlaves.tw
@@ -119,7 +119,7 @@
 	<<set $subSlaves = 1>>
 <</if>>
 <<set _fuckCount = Math.ceil((($dormitoryPopulation+$roomsPopulation)+random((($dormitoryPopulation+$roomsPopulation)*1),($dormitoryPopulation+$roomsPopulation)*7))/$subSlaves)>>
-<<run SimpleSlaveFucking($slaves[$i], _fuckCount)>>
+<<run SimpleSexAct.Slave($slaves[$i], _fuckCount)>>
 <<set $slaves[$i].need -= 2*_fuckCount>>
 
 <<else>> /* serving a slave */
@@ -382,10 +382,10 @@ is serving ''$slaves[_dom].slaveName'' this week.
 	<</if>>
 	<<if canPenetrate($slaves[_dom])>>
 		<<set _fuckCount = random(15,25)>>
-		<<= SimpleSlaveSlaveFucking($slaves[$i], $slaves[_dom], _fuckCount)>>
+		<<= SimpleSexAct.Slaves($slaves[$i], $slaves[_dom], _fuckCount)>>
 	<<elseif canPenetrate($slaves[$i]) && ((canDoVaginal($slaves[_dom]) && $slaves[_dom].vagina > 0) || (canDoAnal($slaves[_dom]) && $slaves[_dom].anus > 0))>> /* yes, that means $he rides _him2 */
 		<<set _fuckCount = random(15,25)>>
-		<<= SimpleSlaveSlaveFucking($slaves[_dom], $slaves[$i], _fuckCount)>>
+		<<= SimpleSexAct.Slaves($slaves[_dom], $slaves[$i], _fuckCount)>>
 	<<else>>
 		<<set _oralUse = random(15,25)>>
 	<</if>>
@@ -398,7 +398,7 @@ is serving ''$slaves[_dom].slaveName'' this week.
 		$slaves[_dom].slaveName doesn't get to use _his2 still-functional cock as much as _he2 would like; it often stands stiff and untended while _he2's being used. Not this week: $slaves[$i].slaveName spends the week with $slaves[_dom].slaveName's _domRace dick thrusting in and out of $his _subRace body, whenever _he2 feels like having an enthusiastic fuck. @@.hotpink;$slaves[_dom].slaveName loves having someone to tend to _his2 prick at last.@@
 	<</if>>
 	<<set _fuckCount = random(9,12)>>
-	<<= SimpleSlaveSlaveFucking($slaves[$i], $slaves[_dom], _fuckCount)>>
+	<<= SimpleSexAct.Slaves($slaves[$i], $slaves[_dom], _fuckCount)>>
 <<elseif ($slaves[_dom].amp != 1) && ($slaves[_dom].attrXX > 85) && ($slaves[$i].dick == 0) && ($slaves[$i].vagina > -1)>>
 	<<if ($slaves[$i].devotion < -20)>>
 		Since $slaves[_dom].slaveName loves girls, $slaves[$i].slaveName finds $himself groped, fingered, and toyed with. $He spends the week trying to avoid $slaves[_dom].slaveName's playful _domRace hands, but they rove across $his _subRace body anyway. @@.hotpink;$slaves[_dom].slaveName enjoys having a nice little toy right at hand,@@ even if $he does have to be forced.
@@ -409,7 +409,7 @@ is serving ''$slaves[_dom].slaveName'' this week.
 	<</if>>
 	<<if canPenetrate($slaves[_dom])>>
 		<<set _fuckCount = random(9,12)>>
-		<<= SimpleSlaveSlaveFucking($slaves[$i], $slaves[_dom], _fuckCount)>>
+		<<= SimpleSexAct.Slaves($slaves[$i], $slaves[_dom], _fuckCount)>>
 	<<else>>
 		<<set _oralUse = random(9,12)>>
 	<</if>>
@@ -440,19 +440,19 @@ is serving ''$slaves[_dom].slaveName'' this week.
 		<</if>>
 	<</if>>
 	<<set _fuckCount = random(9,12)>>
-	<<= SimpleSlaveSlaveFucking($slaves[_dom], $slaves[$i], _fuckCount)>>
+	<<= SimpleSexAct.Slaves($slaves[_dom], $slaves[$i], _fuckCount)>>
 <<elseif $slaves[$i].amp == 1>>
 	$slaves[_dom].slaveName doesn't have any special desires, so _he2 simply uses the helpless $slaves[$i].slaveName for comfort and convenience. $slaves[$i].slaveName finds $his helpless _subRace torso being used as a bath toy, a bedwarmer, and for sexual convenience. @@.hotpink;$slaves[_dom].slaveName enjoys the ease and companionship.@@
 	<<set _fuckCount = random(9,12)>>
-	<<= SimpleSlaveSlaveFucking($slaves[$i], $slaves[_dom], _fuckCount)>>
+	<<= SimpleSexAct.Slaves($slaves[$i], $slaves[_dom], _fuckCount)>>
 <<else>>
 	$slaves[_dom].slaveName doesn't have any special desires $slaves[$i].slaveName can satisfy, so _he2 simply uses $slaves[$i].slaveName for comfort and convenience. $slaves[$i].slaveName washes $his superior's _domRace body thoroughly and uses $his own _subRace body to warm $slaves[_dom].slaveName's bed at night. @@.hotpink;$slaves[_dom].slaveName enjoys the ease and companionship.@@
 	<<set _fuckCount = random(9,12)>>
-	<<= SimpleSlaveSlaveFucking($slaves[$i], $slaves[_dom], _fuckCount)>>
+	<<= SimpleSexAct.Slaves($slaves[$i], $slaves[_dom], _fuckCount)>>
 <</if>>
 
 <<set _oralUse = $slaves[$i].counter.oral - _oralUse, _analUse = $slaves[$i].counter.anal - _analUse, _vaginalUse = $slaves[$i].counter.vaginal - _vaginalUse, _mammaryUse = $slaves[$i].counter.mammary - _mammaryUse, _penetrativeUse = $slaves[$i].counter.penetrative - _penetrativeUse>>
-/% This is here because SimpleSlaveSlaveFucking doesn't update _analUse, etc. and that is needed to calculate _cervixPump %/
+/% This is here because SimpleSexAct.Slaves doesn't update _analUse, etc. and that is needed to calculate _cervixPump %/
 
 <<set _cervixPump = 0>>
 <<if $slaves[$i].cervixImplant == 1 || $slaves[$i].cervixImplant == 3>>
diff --git a/src/utility/saRulesWidgets.tw b/src/utility/saRulesWidgets.tw
index 436d925848fafb656da934691198d0ef4f870c60..e1441f393515d67e0f96a51cbb168c65b952c739 100644
--- a/src/utility/saRulesWidgets.tw
+++ b/src/utility/saRulesWidgets.tw
@@ -96,19 +96,19 @@ and
 			@@.hotpink;eagerly looks forward@@ to each climax $he shares with you.
 		<</if>>
 		<<set $slaves[$i].devotion += 2, $slaves[$i].need = 0>>
-		<<= SimpleSexAct($slaves[$i], 10)>>
+		<<= SimpleSexAct.Player($slaves[$i], 10)>>
 	<<elseif $freeSexualEnergy == 2>>
 		You have surplus sexual energy to fuck $him whenever <<if $slaves[$i].relationship == -3>> you notice $his need<<else>>$he forces $himself to ask<</if>>, and $he is @@.hotpink;sexually dependent@@ on you.
 		<<set $slaves[$i].devotion += 1, $slaves[$i].need -= 40>>
-		<<= SimpleSexAct($slaves[$i], 5)>>
+		<<= SimpleSexAct.Player($slaves[$i], 5)>>
 	<<elseif $slaves[$i].relationship == -3>>
 		You have little surplus sexual energy, but you make sure to keep your wife's needs in mind<<if $slaves[$i].devotion < -20>>, even if $he doesn't want it<</if>>.
 		<<set $slaves[$i].need -= 40>>
-		<<= SimpleSexAct($slaves[$i], 5)>>
+		<<= SimpleSexAct.Player($slaves[$i], 5)>>
 	<<else>>
 		You have little surplus sexual energy, and occasionally, $he asks in vain.
 		<<set $slaves[$i].need -= 20>>
-		<<= SimpleSexAct($slaves[$i], 2)>>
+		<<= SimpleSexAct.Player($slaves[$i], 2)>>
 	<</if>>
 <<else>>
 	You have no surplus sexual energy, and $he asks in vain, @@.gold;reducing $his trust@@ in you.
@@ -430,7 +430,7 @@ and
 				<</if>>
 			<</if>>
 		<</if>>
-		<<run SimpleSlaveFucking($slaves[$i], 7)>>
+		<<run SimpleSexAct.Slave($slaves[$i], 7)>>
 	<<elseif ($slaves[$i].fetish == "cumslut")>>
 		suck or be sucked by any slave $he fancies.
 		<<set _fuckCount = random(5,15)>>
@@ -448,7 +448,7 @@ and
 								<<if $slaves[_j].trust < -20>>
 									Craving a rush, $he repeatedly forces a reluctant <<= SlaveFullName($slaves[_j])>> to have sex with $him in public. $slaves[_j].slaveName resents this, and $slaves[$i].slaveName's ongoing sexual abuse @@.lightsalmon;starts a rivalry@@ between them.
 									<<set $slaves[$i].rivalry = 1, $slaves[_j].rivalry = 1, $slaves[$i].rivalryTarget = $slaves[_j].ID, $slaves[_j].rivalryTarget = $slaves[$i].ID>>
-									<<run SimpleSlaveFucking($slaves[_j], 4)>>
+									<<run SimpleSexAct.Slave($slaves[_j], 4)>>
 									<<if canPenetrate($slaves[_j])>>
 										<<set _fuckCount = random(1,3)>>
 										<<set $slaves[_j].counter.penetrative += _fuckCount, $penetrativeTotal += _fuckCount>>
@@ -461,7 +461,7 @@ and
 				<</for>>
 			<</if>>
 		<</if>>
-		<<run SimpleSlaveFucking($slaves[$i], 4)>>
+		<<run SimpleSexAct.Slave($slaves[$i], 4)>>
 		<<if canPenetrate($slaves[$i])>>
 			<<set _fuckCount = random(1,3)>>
 			<<set $slaves[$i].counter.penetrative += _fuckCount, $penetrativeTotal += _fuckCount>>
@@ -517,7 +517,7 @@ and
 									and the sexual abuse @@.lightsalmon;starts a rivalry@@ between them.
 									<<set $slaves[$i].rivalry = 1, $slaves[_j].rivalry = 1, $slaves[$i].rivalryTarget = $slaves[_j].ID, $slaves[_j].rivalryTarget = $slaves[$i].ID>>
 									<<break>>
-									<<run SimpleSlaveFucking($slaves[_j], 4)>>
+									<<run SimpleSexAct.Slave($slaves[_j], 4)>>
 									<<if canPenetrate($slaves[_j])>>
 										<<set _fuckCount = random(1,3)>>
 										<<set $slaves[_j].counter.penetrative += _fuckCount, $penetrativeTotal += _fuckCount>>
@@ -529,7 +529,7 @@ and
 				<</for>>
 			<</if>>
 		<</if>>
-		<<run SimpleSlaveFucking($slaves[$i], 4)>>
+		<<run SimpleSexAct.Slave($slaves[$i], 4)>>
 		<<if canPenetrate($slaves[$i])>>
 			<<set _fuckCount = random(1,3)>>
 			<<set $slaves[$i].counter.penetrative += _fuckCount, $penetrativeTotal += _fuckCount>>
@@ -554,7 +554,7 @@ and
 				<</if>>
 			<</if>>
 		<</if>>
-		<<run SimpleSlaveFucking($slaves[$i], 12)>>
+		<<run SimpleSexAct.Slave($slaves[$i], 12)>>
 	<<elseif ($slaves[$i].fetish == "dom")>>
 		force other slaves to submit to $him.
 		<<if $slaves[$i].assignmentVisible>>
@@ -569,7 +569,7 @@ and
 									$He repeatedly rapes a reluctant <<= SlaveFullName($slaves[_j])>>; $he can't seem to keep $his hands off the poor slave, who can't avoid $him. Not surprisingly, $slaves[_j].slaveName resents this, and $slaves[$i].slaveName's ongoing sexual abuse @@.lightsalmon;starts a rivalry@@ between them.
 									<<set $slaves[$i].rivalry = 1, $slaves[_j].rivalry = 1, $slaves[$i].rivalryTarget = $slaves[_j].ID, $slaves[_j].rivalryTarget = $slaves[$i].ID>>
 									<<break>>
-									<<run SimpleSlaveFucking($slaves[_j], 4)>>
+									<<run SimpleSexAct.Slave($slaves[_j], 4)>>
 								<</if>>
 							<</if>>
 						<</if>>
@@ -577,7 +577,7 @@ and
 				<</for>>
 			<</if>>
 		<</if>>
-		<<run SimpleSlaveFucking($slaves[$i], 7)>>
+		<<run SimpleSexAct.Slave($slaves[$i], 7)>>
 		<<if canPenetrate($slaves[$i])>>
 			<<set _fuckCount = random(6,9)>>
 			<<set $slaves[$i].counter.penetrative += _fuckCount, $penetrativeTotal += _fuckCount>>
@@ -629,14 +629,14 @@ and
 				<</if>>
 			<</if>>
 		<</if>>
-		<<run SimpleSlaveFucking($slaves[$i], 7)>>
+		<<run SimpleSexAct.Slave($slaves[$i], 7)>>
 		<<if canPenetrate($slaves[$i])>>
 			<<set _fuckCount = random(3,6)>>
 			<<set $slaves[$i].counter.penetrative += _fuckCount, $penetrativeTotal += _fuckCount>>
 		<</if>>
 	<<else>>
 		demand that other slaves have sex with $him.
-		<<run SimpleSlaveFucking($slaves[$i], 7)>>
+		<<run SimpleSexAct.Slave($slaves[$i], 7)>>
 		<<if canPenetrate($slaves[$i])>>
 			<<set _fuckCount = random(3,6)>>
 			<<set $slaves[$i].counter.penetrative += _fuckCount, $penetrativeTotal += _fuckCount>>
@@ -644,7 +644,7 @@ and
 	<</if>>
 <<else>>
 	demand that other slaves have sex with $him.
-	<<run SimpleSlaveFucking($slaves[$i], 7)>>
+	<<run SimpleSexAct.Slave($slaves[$i], 7)>>
 	<<if canPenetrate($slaves[$i])>>
 		<<set _fuckCount = random(3,6)>>
 		<<set $slaves[$i].counter.penetrative += _fuckCount, $penetrativeTotal += _fuckCount>>
@@ -676,14 +676,14 @@ and
 				<</if>>
 			<</if>>
 		<</if>>
-		<<run SimpleSlaveFucking($slaves[$i], 7)>>
+		<<run SimpleSexAct.Slave($slaves[$i], 7)>>
 	<<elseif ($slaves[$i].fetish == "cumslut")>>
 		and is popular for $his willingness to give oral.
 		<<set _fuckCount = random(5,15)>>
 		<<set $slaves[$i].counter.oral += _fuckCount, $oralTotal += _fuckCount>>
 	<<elseif ($slaves[$i].fetish == "humiliation")>>
 		usually asking them to fuck out in the open.
-		<<run SimpleSlaveFucking($slaves[$i], 7)>>
+		<<run SimpleSexAct.Slave($slaves[$i], 7)>>
 		<<if canPenetrate($slaves[$i])>>
 			<<set _fuckCount = random(1,3)>>
 			<<set $slaves[$i].counter.penetrative += _fuckCount, $penetrativeTotal += _fuckCount>>
@@ -723,7 +723,7 @@ and
 		<<set $slaves[$i].counter.mammary += _fuckCount, $mammaryTotal += _fuckCount>>
 	<<elseif ($slaves[$i].fetish == "sadist")>>
 		usually pairing off with a masochistic slave willing to accept $his abuse.
-		<<run SimpleSlaveFucking($slaves[$i], 7)>>
+		<<run SimpleSexAct.Slave($slaves[$i], 7)>>
 		<<if canPenetrate($slaves[$i])>>
 			<<set _fuckCount = random(1,3)>>
 			<<set $slaves[$i].counter.penetrative += _fuckCount, $penetrativeTotal += _fuckCount>>
@@ -748,10 +748,10 @@ and
 				<</if>>
 			<</if>>
 		<</if>>
-		<<run SimpleSlaveFucking($slaves[$i], 6)>>
+		<<run SimpleSexAct.Slave($slaves[$i], 6)>>
 	<<elseif ($slaves[$i].fetish == "dom")>>
 		usually pairing off with a submissive bitch.
-		<<run SimpleSlaveFucking($slaves[$i], 6)>>
+		<<run SimpleSexAct.Slave($slaves[$i], 6)>>
 		<<if canPenetrate($slaves[$i])>>
 			<<set _fuckCount = random(1,3)>>
 			<<set $slaves[$i].counter.penetrative += _fuckCount, $penetrativeTotal += _fuckCount>>
@@ -779,7 +779,7 @@ and
 				<</if>>
 			<</if>>
 		<</if>>
-		<<run SimpleSlaveFucking($slaves[$i], 7)>>
+		<<run SimpleSexAct.Slave($slaves[$i], 7)>>
 		<<if canPenetrate($slaves[$i])>>
 			<<set _fuckCount = random(6,9)>>
 			<<set $slaves[$i].counter.penetrative += _fuckCount, $penetrativeTotal += _fuckCount>>
@@ -804,14 +804,14 @@ and
 				<</if>>
 			<</if>>
 		<</if>>
-		<<run SimpleSlaveFucking($slaves[$i], 7)>>
+		<<run SimpleSexAct.Slave($slaves[$i], 7)>>
 		<<if canPenetrate($slaves[$i])>>
 			<<set _fuckCount = random(3,6)>>
 			<<set $slaves[$i].counter.penetrative += _fuckCount, $penetrativeTotal += _fuckCount>>
 		<</if>>
 	<<else>>
 		doing $his best to get off and move on.
-		<<run SimpleSlaveFucking($slaves[$i], 7)>>
+		<<run SimpleSexAct.Slave($slaves[$i], 7)>>
 		<<if canPenetrate($slaves[$i])>>
 			<<set _fuckCount = random(3,6)>>
 			<<set $slaves[$i].counter.penetrative += _fuckCount, $penetrativeTotal += _fuckCount>>
@@ -819,7 +819,7 @@ and
 	<</if>>
 <<else>>
 	doing $his best to get off and move on.
-	<<run SimpleSlaveFucking($slaves[$i], 7)>>
+	<<run SimpleSexAct.Slave($slaves[$i], 7)>>
 	<<if canPenetrate($slaves[$i])>>
 		<<set _fuckCount = random(3,6)>>
 		<<set $slaves[$i].counter.penetrative += _fuckCount, $penetrativeTotal += _fuckCount>>