diff --git a/devNotes/twine JS.txt b/devNotes/twine JS.txt
index e6b71eb7c3eab92f34e61689e9bfee95172e501a..01af823ff5f5004b21b6b1f85731182dec5b5478 100644
--- a/devNotes/twine JS.txt	
+++ b/devNotes/twine JS.txt	
@@ -16201,87 +16201,94 @@ window.SimpleSlaveFucking = function SimpleSlaveFucking(slave, count) {
  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".
 */
-window.SimpleSlaveSlaveFucking = function SimpleSlaveSlaveFucking(subslave, domslave, count) {
-	const V = State.variables;
-	const fuckTarget = jsRandom(1,100);
-	let fuckCount = 1;
-	let r = ``;
-	if (count) {
-		fuckCount = count;
-	}
-	for (var i = 0; i < fuckCount; i++) {
-		if (subslave.nipples === "fuckable" && V.PC.dick === 1 && fuckTarget > 80) {
-			if (passage() === "SA serve your other slaves") {
-				if (subslave.ID == V.slaves[i].ID) {
-					V.mammaryUse++;
-					V.penetrativeTotal++;
-					domslave.penetrativeCount++;
-				}
-				else {
-					V.mammaryTotal++;
-					V.penetrativeUse++;
-					subslave.mammaryCount++;
-				}
-			}
-			else {
-				V.mammaryTotal++;
-				V.penetrativeTotal++;
-				subslave.mammaryCount++;
-				domslave.penetrativeCount++;
-			}
-		}
-		else if (canDoVaginal(subslave) && subslave.vagina > 0 && canPenetrate(domslave) && fuckTarget > 33) {
-			if (passage() === "SA serve your other slaves") {
-				if (subslave.ID == V.slaves[i].ID) {
-					V.vaginalUse++;
-					V.penetrativeTotal++;
-					domslave.penetrativeCount++;
-				}
-				else {
-					V.penetrativeUse++;
-					V.vaginalTotal++;
-					subslave.vaginalCount++;
-				}
-			}
-			else {
-				V.vaginalTotal++;
-				subslave.vaginalCount++;
-				V.penetrativeTotal++;
-				domslave.penetrativeCount++;
-			}
-			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, 1, domslave.ID, 1);
-			}
-			if (passage() === "SA serve your other slaves") {
-				if (subslave.ID == V.slaves[i].ID) {
-					V.analUse++;
-					V.penetrativeTotal++;
-					domslave.penetrativeCount++;
-				}
-				else {
-					V.penetrativeUse++;
-					V.analTotal++;
-					subslave.analCount++;
-				}
-			}
-			else {
-				V.analTotal++;
-				subslave.analCount++;
-				V.penetrativeTotal++;
-				domslave.penetrativeCount++;
-			}
-		}
-		else {
-			V.oralTotal++;
-			subslave.oralCount++;
-		}
-	}
-	return r;
+window.SimpleSexAct = function SimpleSlaveSlaveFucking(subslave, domslave, count) {
+    const V = State.variables;
+    let fuckTarget = 0;
+    let fuckCount = 1;
+    let r = ``;
+    if (count) {
+        fuckCount = count;
+    }
+    for (var i = 0; i < fuckCount; i++) {
+        //there is a reason randomization happens inside cycle - to spread fuck around, otherwise cycle isn't even needed
+        fuckTarget = jsRandom(1,100);
+        //why PC.dick? it's not PC doing any fucking
+        if (subslave.nipples === "fuckable" && canPenetrate(domslave) && fuckTarget > 80) {
+            if (passage() === "SA serve your other slaves") {
+                //number of current slave in State.variables.slaves array is not going to be visible from function, even if it was $i is shadowed by 'for (var i = 0; i < fuckCount; i++)'
+                //also not sure if xxxUse variables even exist in this scope? i guess they do, actual dev will know for sure
+                //don't know how to properly convert this, but slaves[i] is definitely wrong
+                if (subslave.ID == V.slaves[i].ID) {
+                    V.mammaryUse++;
+                    V.penetrativeTotal++;
+                    domslave.penetrativeCount++;
+                }
+                else {
+                    V.mammaryTotal++;
+                    V.penetrativeUse++;
+                    subslave.mammaryCount++;
+                }
+            }
+            else {
+                V.mammaryTotal++;
+                V.penetrativeTotal++;
+                subslave.mammaryCount++;
+                domslave.penetrativeCount++;
+            }
+        }
+        else if (canDoVaginal(subslave) && subslave.vagina > 0 && canPenetrate(domslave) && fuckTarget > 33) {
+            if (passage() === "SA serve your other slaves") {
+                if (subslave.ID == V.slaves[i].ID) {
+                    V.vaginalUse++;
+                    V.penetrativeTotal++;
+                    domslave.penetrativeCount++;
+                }
+                else {
+                    V.penetrativeUse++;
+                    V.vaginalTotal++;
+                    subslave.vaginalCount++;
+                }
+            }
+            else {
+                V.vaginalTotal++;
+                subslave.vaginalCount++;
+                V.penetrativeTotal++;
+                domslave.penetrativeCount++;
+            }
+            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[i].ID) {
+                    V.analUse++;
+                    V.penetrativeTotal++;
+                    domslave.penetrativeCount++;
+                }
+                else {
+                    V.penetrativeUse++;
+                    V.analTotal++;
+                    subslave.analCount++;
+                }
+            }
+            else {
+                V.analTotal++;
+                subslave.analCount++;
+                V.penetrativeTotal++;
+                domslave.penetrativeCount++;
+            }
+        }
+        else {
+            V.oralTotal++;
+            subslave.oralCount++;
+        }
+    }
+    return r;
 }
 
 /*:: PenthouseNaming [script]*/
diff --git a/src/js/sexActsJS.tw b/src/js/sexActsJS.tw
index 860b2a8c6d19437c55f10d6bc41e98567c46f17e..77152bf983026d7b6543e395b1aebb4b5153cab4 100644
--- a/src/js/sexActsJS.tw
+++ b/src/js/sexActsJS.tw
@@ -445,85 +445,92 @@ window.SimpleSlaveFucking = function SimpleSlaveFucking(slave, count) {
  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".
 */
-window.SimpleSlaveSlaveFucking = function SimpleSlaveSlaveFucking(subslave, domslave, count) {
-	const V = State.variables;
-	const fuckTarget = jsRandom(1,100);
-	let fuckCount = 1;
-	let r = ``;
-	if (count) {
-		fuckCount = count;
-	}
-	for (var i = 0; i < fuckCount; i++) {
-		if (subslave.nipples === "fuckable" && V.PC.dick === 1 && fuckTarget > 80) {
-			if (passage() === "SA serve your other slaves") {
-				if (subslave.ID == V.slaves[i].ID) {
-					V.mammaryUse++;
-					V.penetrativeTotal++;
-					domslave.penetrativeCount++;
-				}
-				else {
-					V.mammaryTotal++;
-					V.penetrativeUse++;
-					subslave.mammaryCount++;
-				}
-			}
-			else {
-				V.mammaryTotal++;
-				V.penetrativeTotal++;
-				subslave.mammaryCount++;
-				domslave.penetrativeCount++;
-			}
-		}
-		else if (canDoVaginal(subslave) && subslave.vagina > 0 && canPenetrate(domslave) && fuckTarget > 33) {
-			if (passage() === "SA serve your other slaves") {
-				if (subslave.ID == V.slaves[i].ID) {
-					V.vaginalUse++;
-					V.penetrativeTotal++;
-					domslave.penetrativeCount++;
-				}
-				else {
-					V.penetrativeUse++;
-					V.vaginalTotal++;
-					subslave.vaginalCount++;
-				}
-			}
-			else {
-				V.vaginalTotal++;
-				subslave.vaginalCount++;
-				V.penetrativeTotal++;
-				domslave.penetrativeCount++;
-			}
-			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, 1, domslave.ID, 1);
-			}
-			if (passage() === "SA serve your other slaves") {
-				if (subslave.ID == V.slaves[i].ID) {
-					V.analUse++;
-					V.penetrativeTotal++;
-					domslave.penetrativeCount++;
-				}
-				else {
-					V.penetrativeUse++;
-					V.analTotal++;
-					subslave.analCount++;
-				}
-			}
-			else {
-				V.analTotal++;
-				subslave.analCount++;
-				V.penetrativeTotal++;
-				domslave.penetrativeCount++;
-			}
-		}
-		else {
-			V.oralTotal++;
-			subslave.oralCount++;
-		}
-	}
-	return r;
+window.SimpleSexAct = function SimpleSlaveSlaveFucking(subslave, domslave, count) {
+    const V = State.variables;
+    let fuckTarget = 0;
+    let fuckCount = 1;
+    let r = ``;
+    if (count) {
+        fuckCount = count;
+    }
+    for (var i = 0; i < fuckCount; i++) {
+        //there is a reason randomization happens inside cycle - to spread fuck around, otherwise cycle isn't even needed
+        fuckTarget = jsRandom(1,100);
+        //why PC.dick? it's not PC doing any fucking
+        if (subslave.nipples === "fuckable" && canPenetrate(domslave) && fuckTarget > 80) {
+            if (passage() === "SA serve your other slaves") {
+                //number of current slave in State.variables.slaves array is not going to be visible from function, even if it was $i is shadowed by 'for (var i = 0; i < fuckCount; i++)'
+                //also not sure if xxxUse variables even exist in this scope? i guess they do, actual dev will know for sure
+                //don't know how to properly convert this, but slaves[i] is definitely wrong
+                if (subslave.ID == V.slaves[i].ID) {
+                    V.mammaryUse++;
+                    V.penetrativeTotal++;
+                    domslave.penetrativeCount++;
+                }
+                else {
+                    V.mammaryTotal++;
+                    V.penetrativeUse++;
+                    subslave.mammaryCount++;
+                }
+            }
+            else {
+                V.mammaryTotal++;
+                V.penetrativeTotal++;
+                subslave.mammaryCount++;
+                domslave.penetrativeCount++;
+            }
+        }
+        else if (canDoVaginal(subslave) && subslave.vagina > 0 && canPenetrate(domslave) && fuckTarget > 33) {
+            if (passage() === "SA serve your other slaves") {
+                if (subslave.ID == V.slaves[i].ID) {
+                    V.vaginalUse++;
+                    V.penetrativeTotal++;
+                    domslave.penetrativeCount++;
+                }
+                else {
+                    V.penetrativeUse++;
+                    V.vaginalTotal++;
+                    subslave.vaginalCount++;
+                }
+            }
+            else {
+                V.vaginalTotal++;
+                subslave.vaginalCount++;
+                V.penetrativeTotal++;
+                domslave.penetrativeCount++;
+            }
+            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[i].ID) {
+                    V.analUse++;
+                    V.penetrativeTotal++;
+                    domslave.penetrativeCount++;
+                }
+                else {
+                    V.penetrativeUse++;
+                    V.analTotal++;
+                    subslave.analCount++;
+                }
+            }
+            else {
+                V.analTotal++;
+                subslave.analCount++;
+                V.penetrativeTotal++;
+                domslave.penetrativeCount++;
+            }
+        }
+        else {
+            V.oralTotal++;
+            subslave.oralCount++;
+        }
+    }
+    return r;
 }
\ No newline at end of file