diff --git a/devNotes/twine JS.txt b/devNotes/twine JS.txt
index 448fdd8ed629a29651c5e1e400d0d646f72617bf..fdaf38e1fa2bf8b30de67e8e74602881e4c82364 100644
--- a/devNotes/twine JS.txt	
+++ b/devNotes/twine JS.txt	
@@ -6906,40 +6906,43 @@ window.properTitle = function properTitle() {
 window.newSlave = function newSlave(slave) {
 	const V = State.variables;
 
-	switch (slave.eyeColor) {
-		case "blind blue":
-			slave.origEye = "deep blue";
-			break;
-		case "milky white":
-		case "implant":
-			slave.origEye = jsEither(["blue", "green", "brown", "hazel", "light blue", "light green", "dark green", "dark blue"]);
-			break;
-		default:
-			slave.origEye = slave.eyeColor;
-			break;
+	if (slave.override_Eye_Color != 1) {
+		switch (slave.eyeColor) {
+			case "blind blue":
+				slave.origEye = "deep blue";
+				break;
+			case "milky white":
+			case "implant":
+				slave.origEye = jsEither(["blue", "green", "brown", "hazel", "light blue", "light green", "dark green", "dark blue"]);
+				break;
+			default:
+				slave.origEye = slave.eyeColor;
+				break;
+		}
 	}
 
-	if (V.override_Race != 1) {
+	if (slave.override_Race != 1) {
 		slave.origRace = slave.race;
 	}
-	if (V.override_H_Color != 1) {
+	if (slave.override_H_Color != 1) {
 		slave.origHColor = slave.hColor;
 	}
-	if (V.override_Arm_H_Color != 1) {
+	if (slave.override_Arm_H_Color != 1) {
 		slave.underArmHColor = slave.hColor;
 	}
-	if (V.override_Pubic_H_Color != 1) {
+	if (slave.override_Pubic_H_Color != 1) {
 		slave.pubicHColor = slave.hColor;
 	}
-	if (V.override_Skin != 1) {
+	if (slave.override_Skin != 1) {
 		slave.origSkin = slave.skin;
 	}
-	
+
 	slave.override_Race = 0;
 	slave.override_H_Color = 0;
 	slave.override_Arm_H_Color = 0;
 	slave.override_Pubic_H_Color = 0;
 	slave.override_Skin = 0;
+	slave.override_Eye_Color = 0;
 
 	if (V.surnamesForbidden === 1) {
 		slave.slaveSurname = 0;
diff --git a/src/js/assayJS.tw b/src/js/assayJS.tw
index ed9ac3929550be2b16c1248e5a13644af307b869..4df4084f19a0c80c948e4e7aeb0dc1f106b9faba 100644
--- a/src/js/assayJS.tw
+++ b/src/js/assayJS.tw
@@ -239,17 +239,19 @@ window.properTitle = function properTitle() {
 window.newSlave = function newSlave(slave) {
 	const V = State.variables;
 
-	switch (slave.eyeColor) {
-		case "blind blue":
-			slave.origEye = "deep blue";
-			break;
-		case "milky white":
-		case "implant":
-			slave.origEye = jsEither(["blue", "green", "brown", "hazel", "light blue", "light green", "dark green", "dark blue"]);
-			break;
-		default:
-			slave.origEye = slave.eyeColor;
-			break;
+	if (slave.override_Eye_Color != 1) {
+		switch (slave.eyeColor) {
+			case "blind blue":
+				slave.origEye = "deep blue";
+				break;
+			case "milky white":
+			case "implant":
+				slave.origEye = jsEither(["blue", "green", "brown", "hazel", "light blue", "light green", "dark green", "dark blue"]);
+				break;
+			default:
+				slave.origEye = slave.eyeColor;
+				break;
+		}
 	}
 
 	if (slave.override_Race != 1) {
@@ -273,6 +275,7 @@ window.newSlave = function newSlave(slave) {
 	slave.override_Arm_H_Color = 0;
 	slave.override_Pubic_H_Color = 0;
 	slave.override_Skin = 0;
+	slave.override_Eye_Color = 0;
 
 	if (V.surnamesForbidden === 1) {
 		slave.slaveSurname = 0;