diff --git a/src/events/RETS/reSimpleAssault.js b/src/events/RETS/reSimpleAssault.js
index c266226a2b7c3617f48dcc64e6cb59931b43e433..4558a0923ab83f4c633ad814a4603ffc14591718 100644
--- a/src/events/RETS/reSimpleAssault.js
+++ b/src/events/RETS/reSimpleAssault.js
@@ -10,16 +10,17 @@ App.Events.RETSSimpleAssault = class RETSSimpleAssault extends App.Events.BaseEv
 			[ // event slave
 				s => s.fetish !== "mindbroken",
 				hasAnyArms,
-				canWalk,
+				canStand,
 				canTalk,
 				canPenetrate,
 				s => s.devotion > 50
 			],
 			[ // and her sub
 				s => s.fetish !== "mindbroken",
-				canWalk,
+				canStand,
 				canTalk,
 				isSlaveAvailable,
+				s => s.relationship <= 2 || s.relationshipTarget !== this.actors[0],
 				s => (canDoAnal(s) && s.anus !== 0) || (canDoVaginal(s) && s.vagina !== 0),
 				s => s.devotion < 20,
 				s => s.belly < 2000,
@@ -68,8 +69,8 @@ App.Events.RETSSimpleAssault = class RETSSimpleAssault extends App.Events.BaseEv
 			t.push(`nice little butt flexes cutely`);
 		}
 		t.push(`as ${he} thrusts. You can't see much of the slave ${vaginal ? `lying on ${his2} back` : "face-down"} underneath ${domSlave.slaveName}, but you recognize ${him2} as `);
-		t.push(App.UI.DOM.slaveDescriptionDialog(subSlave));
-		t.push(`by ${his2} sobbing. ${He2}'s struggling a little, but ${domSlave.slaveName} has ${him2} pinned to the floor by ${his2} wrists, and ${domSlave.slaveName} is quickly raping the resistance out of the ${SlaveTitle(subSlave)}.`);
+		t.push(contextualIntro(domSlave, subSlave, "DOM"));
+		t.push(`by ${his2} sobbing. ${He2}'s struggling a little, but ${domSlave.slaveName} has ${him2} pinned to the floor by ${his2} ${hasBothArms(subSlave) ? "wrists" : "wrist"}, and ${domSlave.slaveName} is quickly raping the resistance out of the ${SlaveTitle(subSlave)}.`);
 		App.Events.addParagraph(node, t);
 		t = [];
 
@@ -111,7 +112,10 @@ App.Events.RETSSimpleAssault = class RETSSimpleAssault extends App.Events.BaseEv
 		t = [];
 
 		App.Events.addResponses(node, [
-			new App.Events.Result("Slide in behind", behind),
+			((canDoAnal(domSlave) && domSlave.anus !== 0) || (canDoVaginal(domSlave) && domSlave.vagina !== 0)
+				? new App.Events.Result("Slide in behind", behind)
+				: new App.Events.Result()
+			),
 			new App.Events.Result("Slide in alongside", alongside),
 			new App.Events.Result("Put a stop to it", stop)
 		]);
@@ -120,7 +124,7 @@ App.Events.RETSSimpleAssault = class RETSSimpleAssault extends App.Events.BaseEv
 			t = [];
 
 			t.push(`You order ${domSlave.slaveName} to go back to what ${he} was doing. ${He}'s a little disappointed you're not joining in, but ${he} obeys, pounding the crying ${subSlave.slaveName} without mercy. Then ${domSlave.slaveName} feels the head of ${PC.dick ? "your dick" : "a strap-on"} brush ${his} butt. "Ooh!" ${he} squeals, <span class="hotpink">pleased ${he} was wrong after all.</span> "${Spoken(domSlave, `Yes, thank you, ${Master}! Fuck me! Fuck me while I rape ${him2}!`)}" Underneath ${him}, ${subSlave.slaveName} cries harder, even though ${domSlave.slaveName} has to stop ${his} thrusting for a moment to let you inside. In fact, you reflect as you hammer ${domSlave.slaveName}'s`);
-			if (domSlave.vagina != 0 && canDoVaginal(domSlave)) {
+			if (domSlave.vagina !== 0 && canDoVaginal(domSlave)) {
 				if (domSlave.vagina > 2) {
 					t.push(`roomy`);
 				} else if (domSlave.vagina > 1) {