diff --git a/src/events/reRelativeRecruiter.js b/src/events/reRelativeRecruiter.js
index 2ae1d79f83f416f249407864054c6fbe48947805..3baf75e5d99f01a010f4da3da8ba0d393640db04 100644
--- a/src/events/reRelativeRecruiter.js
+++ b/src/events/reRelativeRecruiter.js
@@ -174,9 +174,9 @@ App.Events.RERelativeRecruiter = class RERelativeRecruiter extends App.Events.Ba
 		function eventText() {
 			let frag = document.createDocumentFragment();
 
-			V.activeSlave = makeSlave();
-			cost = slaveCost(V.activeSlave);
-			const {He: He2, him: him2, his: his2, he: he2, daughter: daughter2, sister: sister2} = getPronouns(V.activeSlave);
+			const newSlave = makeSlave();
+			cost = slaveCost(newSlave);
+			const {He: He2, him: him2, his: his2, he: he2, daughter: daughter2, sister: sister2} = getPronouns(newSlave);
 
 			const {title: Master} = getEnunciation(eventSlave);
 
@@ -214,7 +214,7 @@ App.Events.RERelativeRecruiter = class RERelativeRecruiter extends App.Events.Ba
 			if (!canTalk(eventSlave)) {
 				t.push(`${He} urgently gestures for permission to write. It's unusual, but ${he} seems quite serious, so you grant it. ${He} writes,`);
 			}
-			t.push(Spoken(eventSlave, `"You've been so good to me, ${Master}. I'm sure ${he2} looks like I did when you bought me. Please, ${Master}, will you buy ${V.activeSlave.slaveName} like you bought me? I'm afraid ${he2}'ll go to a cruel master."`));
+			t.push(Spoken(eventSlave, `"You've been so good to me, ${Master}. I'm sure ${he2} looks like I did when you bought me. Please, ${Master}, will you buy ${newSlave.slaveName} like you bought me? I'm afraid ${he2}'ll go to a cruel master."`));
 			t.push(`${He} bites ${his} lip.`);
 			t.push(Spoken(eventSlave, `"And, ${Master}, I'm sure ${he2}'d learn to love`));
 
@@ -228,7 +228,7 @@ App.Events.RERelativeRecruiter = class RERelativeRecruiter extends App.Events.Ba
 				t.push(Spoken(eventSlave, `the feeling of your cock in ${his2} butt`));
 			} else if (eventSlave.fetish === "sadist") {
 				t.push(Spoken(eventSlave, `hurting your other slaves`));
-			} else if (eventSlave.fetish === "pregnancy" && V.activeSlave.genes !== "XY") {
+			} else if (eventSlave.fetish === "pregnancy" && newSlave.genes !== "XY") {
 				t.push(Spoken(eventSlave, `being pregnant`));
 			} else if (eventSlave.fetish === "masochist") {
 				t.push(Spoken(eventSlave, `being beaten`));
@@ -238,9 +238,9 @@ App.Events.RERelativeRecruiter = class RERelativeRecruiter extends App.Events.Ba
 				t.push(Spoken(eventSlave, `being a good nympho slut`));
 			} else if (eventSlave.addict > 2) {
 				t.push(Spoken(eventSlave, `being a druggie whore`));
-			} else if (eventSlave.counter.birthsTotal > 3 && V.activeSlave.genes !== "XY") {
+			} else if (eventSlave.counter.birthsTotal > 3 && newSlave.genes !== "XY") {
 				t.push(Spoken(eventSlave, `bearing children`));
-			} else if (eventSlave.bellyPreg >= 50 && eventSlave.pregKnown === 1 && V.activeSlave.genes !== "XY") {
+			} else if (eventSlave.bellyPreg >= 50 && eventSlave.pregKnown === 1 && newSlave.genes !== "XY") {
 				t.push(Spoken(eventSlave, `swelling with life`));
 			} else if (eventSlave.anus > 2) {
 				t.push(Spoken(eventSlave, `getting ${his2} butt stretched out`));
@@ -259,7 +259,7 @@ App.Events.RERelativeRecruiter = class RERelativeRecruiter extends App.Events.Ba
 				t.push(Spoken(eventSlave, `You could make us fuck each other in public, ${Master}!"`));
 			} else if (eventSlave.fetish === "buttslut") {
 				t.push(Spoken(eventSlave, `You could fuck our butts right next to each other, ${Master}!"`));
-			} else if (eventSlave.fetish === "pregnancy" && V.activeSlave.genes !== "XY") {
+			} else if (eventSlave.fetish === "pregnancy" && newSlave.genes !== "XY") {
 				t.push(Spoken(eventSlave, `You could knock us up next to each other, ${Master}!"`));
 			} else if (eventSlave.fetish === "sadist") {
 				t.push(Spoken(eventSlave, `I'm sure ${he2}'d love to help me, ${Master}!"`));
@@ -269,13 +269,13 @@ App.Events.RERelativeRecruiter = class RERelativeRecruiter extends App.Events.Ba
 				t.push(Spoken(eventSlave, `I'm sure ${he2}'d love to help me use other slaves, ${Master}!"`));
 			} else if (eventSlave.energy > 95) {
 				t.push(Spoken(eventSlave, `I'm sure ${he2}'d love to have threesomes, ${Master}!"`));
-			} else if (eventSlave.counter.birthsTotal > 3 && V.activeSlave.genes !== "XY") {
+			} else if (eventSlave.counter.birthsTotal > 3 && newSlave.genes !== "XY") {
 				if (V.PC.dick !== 0) {
 					t.push(Spoken(eventSlave, `We could compete over who carried more of your children, ${Master}!"`));
 				} else {
 					t.push(Spoken(eventSlave, `We could compete over who carried more children for you, ${Master}!"`));
 				}
-			} else if (eventSlave.bellyPreg >= 50 && eventSlave.pregKnown === 1 && V.activeSlave.genes !== "XY") {
+			} else if (eventSlave.bellyPreg >= 50 && eventSlave.pregKnown === 1 && newSlave.genes !== "XY") {
 				t.push(Spoken(eventSlave, `You could compare how big our bellies are next to each other, ${Master}!"`));
 			} else {
 				t.push(Spoken(eventSlave, `You could fuck us together, ${Master}!"`));
@@ -286,7 +286,7 @@ App.Events.RERelativeRecruiter = class RERelativeRecruiter extends App.Events.Ba
 
 			t = [];
 			t.push(`You look up the ${_this.params.relative}. ${He2} costs ${cashFormat(cost)}, a bargain, but you won't be able to inspect ${him2} beyond ${his2} likely resemblance to ${eventSlave.slaveName}.`);
-			t.push(_this._getBackgroundDescription(V.activeSlave, _this.params.background));
+			t.push(_this._getBackgroundDescription(newSlave, _this.params.background));
 			App.Events.addParagraph(frag, t);
 
 			App.Events.addResponses(frag, [
@@ -606,19 +606,19 @@ App.Events.RERelativeRecruiter = class RERelativeRecruiter extends App.Events.Ba
 			// the new slave is already set up to be related to the existing slave, but we're responsible for making sure the existing slave (and any others in our stable) gets *their* relatives set correctly
 			switch (_this.params.relative) {
 				case "mother": {
-					setUnknownParents(eventSlave, {mother: V.activeSlave.ID} );
+					setUnknownParents(eventSlave, {mother: newSlave.ID} );
 					for (const slave of V.slaves) {
 						if (sameDad(eventSlave, slave)) {
-							setUnknownParents(slave, {mother: V.activeSlave.ID} );
+							setUnknownParents(slave, {mother: newSlave.ID} );
 						}
 					}
 					break;
 				}
 				case "father": {
-					setUnknownParents(eventSlave, {father: V.activeSlave.ID} );
+					setUnknownParents(eventSlave, {father: newSlave.ID} );
 					for (const slave of V.slaves) {
 						if (sameMom(eventSlave, slave)) {
-							setUnknownParents(slave, {father: V.activeSlave.ID} );
+							setUnknownParents(slave, {father: newSlave.ID} );
 						}
 					}
 					break;
@@ -630,10 +630,10 @@ App.Events.RERelativeRecruiter = class RERelativeRecruiter extends App.Events.Ba
 				case "twin": { // siblings
 					if (eventSlave.father === 0 && eventSlave.mother === 0) {
 						setMissingParents(eventSlave);
-						setUnknownParents(V.activeSlave, {mother: eventSlave.mother, father: eventSlave.father});
+						setUnknownParents(newSlave, {mother: eventSlave.mother, father: eventSlave.father});
 					} else if (eventSlave.father === 0) {
 						setMissingParents(eventSlave);
-						setUnknownParents(V.activeSlave, {father: eventSlave.father});
+						setUnknownParents(newSlave, {father: eventSlave.father});
 						for (const slave of V.slaves) {
 							if (sameMom(eventSlave, slave)) {
 								setUnknownParents(slave, {father: eventSlave.father});
@@ -641,7 +641,7 @@ App.Events.RERelativeRecruiter = class RERelativeRecruiter extends App.Events.Ba
 						}
 					} else if (eventSlave.mother === 0) {
 						setMissingParents(eventSlave);
-						setUnknownParents(V.activeSlave, {mother: eventSlave.mother});
+						setUnknownParents(newSlave, {mother: eventSlave.mother});
 						for (const slave of V.slaves) {
 							if (sameDad(eventSlave, slave)) {
 								setUnknownParents(slave, {mother: eventSlave.mother});
@@ -653,19 +653,18 @@ App.Events.RERelativeRecruiter = class RERelativeRecruiter extends App.Events.Ba
 				default: // nothing needed for son/daughter
 			}
 
-			cashX(forceNeg(cost), "slaveTransfer", V.activeSlave);
+			cashX(forceNeg(cost), "slaveTransfer", newSlave);
 
 			// replace slave art
 			$(artDiv).empty();
-			App.Events.drawEventArt(artDiv, [V.activeSlave, eventSlave]);
+			App.Events.drawEventArt(artDiv, [newSlave, eventSlave]);
 
-			const {he: he2} = getPronouns(V.activeSlave);
+			const {he: he2} = getPronouns(newSlave);
 
 			let elements = [];
-			elements.push(`You complete the legalities and biometric scanning quickly and without fuss. ${V.activeSlave.slaveName} arrives shortly. The two slaves remember each other only dimly — they parted a long time ago — but they embrace. The devoted ${SlaveTitle(eventSlave)} explains the situation and encourages ${his} ${_this.params.relative} to be a good slave to you. ${V.activeSlave.slaveName} looks a little fearful but clearly realizes that ${he2}'s lucky to be here.`);
+			elements.push(`You complete the legalities and biometric scanning quickly and without fuss. ${newSlave.slaveName} arrives shortly. The two slaves remember each other only dimly — they parted a long time ago — but they embrace. The devoted ${SlaveTitle(eventSlave)} explains the situation and encourages ${his} ${_this.params.relative} to be a good slave to you. ${newSlave.slaveName} looks a little fearful but clearly realizes that ${he2}'s lucky to be here.`);
 
-			V.eventSlave = eventSlave; // New Slave Intro uses global $eventSlave, so set it here
-			elements.push(App.UI.newSlaveIntro(V.activeSlave));
+			elements.push(App.UI.newSlaveIntro(newSlave, eventSlave));
 
 			return elements;
 		}