diff --git a/src/interaction/slaveInteract.js b/src/interaction/slaveInteract.js
index de04b7fde1e4268c0c5d36f06a511ecff121d9a6..ae78eca65a23fb5f8761004d2fd86a17c427e90e 100644
--- a/src/interaction/slaveInteract.js
+++ b/src/interaction/slaveInteract.js
@@ -1,12 +1,13 @@
 /* eslint-disable no-unused-vars */ // TODO: remove after testing
 App.UI.SlaveInteract = {};
 
-App.UI.SlaveInteract.placeInLine = function(slaveIndex) {
+App.UI.SlaveInteract.placeInLine = function(slave) {
 	let slavesInLine = [];
+	let activeSlaveIndex = V.slaveIndices[slave.ID];
 	let SL = V.slaves.length;
 
 	if (assignmentVisible(slave)) {
-		for (let pil = slaveIndex - 1; pil !== slaveIndex; pil--) {
+		for (let pil = activeSlaveIndex - 1; pil !== activeSlaveIndex; pil--) {
 			/* loops backwards through the V.slaves array */
 			if (pil < 0) {
 				pil = SL;
@@ -17,7 +18,7 @@ App.UI.SlaveInteract.placeInLine = function(slaveIndex) {
 				break;
 			}
 		}
-		for (let pil = slaveIndex + 1; pil !== slaveIndex; pil++) {
+		for (let pil = activeSlaveIndex + 1; pil !== activeSlaveIndex; pil++) {
 			/* this loops forwards through the V.slaves array */
 			if (pil === SL) {
 				pil = -1;
@@ -29,7 +30,7 @@ App.UI.SlaveInteract.placeInLine = function(slaveIndex) {
 			}
 		}
 	} else {
-		for (let pil = slaveIndex - 1; pil !== slaveIndex; pil--) {
+		for (let pil = activeSlaveIndex - 1; pil !== activeSlaveIndex; pil--) {
 			/* loops backwards through the V.slaves array */
 			if (pil < 0) {
 				pil = SL;
@@ -40,7 +41,7 @@ App.UI.SlaveInteract.placeInLine = function(slaveIndex) {
 				break;
 			}
 		}
-		for (let pil = slaveIndex + 1; pil !== slaveIndex; pil++) {
+		for (let pil = activeSlaveIndex + 1; pil !== activeSlaveIndex; pil++) {
 			/* this loops forwards through the V.slaves array */
 			if (pil === SL) {
 				pil = -1;
@@ -55,8 +56,8 @@ App.UI.SlaveInteract.placeInLine = function(slaveIndex) {
 
 	if (slavesInLine.length === 0) {
 		/* if there are no other slaves available, set previous/next slave to self */
-		slavesInLine[0] = slaveIndex;
-		slavesInLine[1] = slaveIndex;
+		slavesInLine[0] = activeSlaveIndex;
+		slavesInLine[1] = activeSlaveIndex;
 	}
 	return slavesInLine;
 };
diff --git a/src/uncategorized/slaveInteract.tw b/src/uncategorized/slaveInteract.tw
index f76d1b72ce0b39830cb0ff121ca539c421325578..237dd14d7fac9d1869a3a9a51b43b9854394649a 100644
--- a/src/uncategorized/slaveInteract.tw
+++ b/src/uncategorized/slaveInteract.tw
@@ -51,7 +51,7 @@
 	<<set $showEncyclopedia = 1, $encyclopedia = "Gender">>
 <</if>>
 
-<<set _slavesInLine = App.UI.SlaveInteract.placeInLine(_i)>>
+<<set _slavesInLine = App.UI.SlaveInteract.placeInLine($slaves[_i])>>
 
 <<set _desc = `<<set $activeSlave = $slaves[_i]>><<include "Long Slave Description">>`>>