From d8a11f5ebebc247c6d89a0adadb0f73a4e30168e Mon Sep 17 00:00:00 2001
From: Pregmodder <pregmodder@gmail.com>
Date: Fri, 5 Oct 2018 05:53:57 -0400
Subject: [PATCH] completed overhaul

---
 devNotes/twine JS.txt                       | 227 +++++++++-----------
 slave variables documentation - Pregmod.txt |   5 +-
 src/SecExp/attackReport.tw                  |   2 +-
 src/endWeek/saServant.tw                    |   2 +-
 src/events/intro/introSummary.tw            |  43 ++--
 src/js/DefaultRules.tw                      |   6 +-
 src/js/assayJS.tw                           |   8 +-
 src/js/eventSelectionJS.tw                  |  18 +-
 src/js/rulesAssistantOptions.tw             |   4 +-
 src/js/slaveSummaryWidgets.tw               | 152 ++++++-------
 src/js/vignettes.tw                         |  34 +--
 src/npc/databases/dSlavesDatabase.tw        |  14 +-
 src/npc/databases/ddSlavesDatabase.tw       |   2 +-
 src/uncategorized/BackwardsCompatibility.tw |   2 +-
 src/uncategorized/PESS.tw                   |   2 +-
 src/uncategorized/PETS.tw                   |   2 +-
 src/uncategorized/RESS.tw                   | 113 +++++++---
 src/uncategorized/RETS.tw                   |   2 +-
 src/uncategorized/arcmgmt.tw                |   8 +-
 src/uncategorized/brothelReport.tw          |   6 +-
 src/uncategorized/cellblockReport.tw        |   2 +-
 src/uncategorized/clinicReport.tw           |   4 +-
 src/uncategorized/clubReport.tw             |   6 +-
 src/uncategorized/dairyReport.tw            |  28 ++-
 src/uncategorized/generateXXSlave.tw        |   2 +-
 src/uncategorized/generateXYSlave.tw        |   2 +-
 src/uncategorized/longSlaveDescription.tw   |  32 ++-
 src/uncategorized/remoteSurgery.tw          |   9 +-
 src/uncategorized/saBeYourHeadGirl.tw       |   4 +-
 src/uncategorized/saChoosesOwnJob.tw        |   2 +-
 src/uncategorized/saDevotion.tw             |  14 +-
 src/uncategorized/saDrugs.tw                |  12 +-
 src/uncategorized/saGuardsYou.tw            |  10 +-
 src/uncategorized/saLongTermEffects.tw      |  42 ++--
 src/uncategorized/saPleaseYou.tw            |   2 +-
 src/uncategorized/saRecruitGirls.tw         |  79 +++----
 src/uncategorized/saRelationships.tw        |   2 +-
 src/uncategorized/saRivalries.tw            |   2 +-
 src/uncategorized/saRules.tw                |   8 +-
 src/uncategorized/saServeThePublic.tw       |  16 +-
 src/uncategorized/saTakeClasses.tw          | 107 ++++-----
 src/uncategorized/saWhore.tw                |  16 +-
 src/uncategorized/schoolroomReport.tw       |   8 +-
 src/uncategorized/servantsQuartersReport.tw |   6 +-
 src/uncategorized/slaveInteract.tw          |   2 +-
 src/uncategorized/spaReport.tw              |  10 +-
 src/uncategorized/surgeryDegradation.tw     |  22 +-
 src/utility/assayWidgets.tw                 |  28 ++-
 src/utility/descriptionWidgetsFlesh.tw      | 136 +++++++-----
 src/utility/slaveCreationWidgets.tw         |  16 +-
 50 files changed, 705 insertions(+), 576 deletions(-)

diff --git a/devNotes/twine JS.txt b/devNotes/twine JS.txt
index ff009d2b75f..c347dddefd7 100644
--- a/devNotes/twine JS.txt	
+++ b/devNotes/twine JS.txt	
@@ -4043,9 +4043,9 @@ if(eventSlave.fetish != "mindbroken") {
 				}
 			}
 
-			if(eventSlave.intelligence > 1) {
+			if(eventSlave.intelligence+eventSlave.intelligenceImplant > 50) {
 				if(eventSlave.devotion > 50) {
-					if(eventSlave.intelligenceImplant > 0) {
+					if(eventSlave.intelligenceImplant >= 15) {
 						if(eventSlave.accent < 4) {
 							State.variables.RESSevent.push("devoted educated slave");
 						}
@@ -4125,7 +4125,7 @@ if(eventSlave.fetish != "mindbroken") {
 							if(eventSlave.trust > 75) {
 								if(eventSlave.devotion > 50) {
 									if(eventSlave.oralSkill > 30) {
-										if(eventSlave.intelligence >= State.variables.HeadGirl.intelligence) {
+										if(eventSlave.intelligence+eventSlave.intelligenceImplant >= State.variables.HeadGirl.intelligence+State.variables.HeadGirl.intelligenceImplant) {
 											if(eventSlave.oralSkill > State.variables.HeadGirl.oralSkill) {
 												State.variables.events.push("RE HG replacement");
 											}
@@ -4403,7 +4403,7 @@ if(eventSlave.fetish != "mindbroken") {
 
 			if(eventSlave.assignment == "be a servant" || eventSlave.assignment == "work as a servant") {
 				if(eventSlave.devotion <= 95) {
-					if(eventSlave.intelligence < -1) {
+					if(eventSlave.intelligence+eventSlave.intelligenceImplant < -50) {
 						State.variables.RESSevent.push("cooler lockin");
 					}
 				}
@@ -4684,7 +4684,7 @@ if(eventSlave.fetish != "mindbroken") {
 							if(eventSlave.devotion >= -50) {
 								if(eventSlave.trust >= -50) {
 									if(eventSlave.fetish != "boobs") {
-										if(eventSlave.intelligence > -2) {
+										if(eventSlave.intelligence+eventSlave.intelligenceImplant >= -50) {
 											State.variables.RESSevent.push("breast expansion blues");
 										}
 									}
@@ -5419,7 +5419,7 @@ if(eventSlave.fetish != "mindbroken") {
 		}
 
 		if(eventSlave.speechRules == "restrictive") {
-			if(eventSlave.intelligence > 0) {
+			if(eventSlave.intelligence > 15) {
 				if(eventSlave.trust >= -20) {
 					if(eventSlave.devotion <= 20) {
 						State.variables.RESSevent.push("restricted smart");
@@ -5465,7 +5465,7 @@ if(eventSlave.fetish != "mindbroken") {
 	} /* closes mute exempt */
 
 	if(State.variables.cockFeeder == 0) {
-		if(eventSlave.intelligence < -1) {
+		if(eventSlave.intelligence+eventSlave.intelligenceImplant < -50) {
 			if(eventSlave.devotion <= 50) {
 				if(eventSlave.devotion >= -20 || eventSlave.trust < -20) {
 					State.variables.RESSevent.push("obedient idiot");
@@ -5995,7 +5995,7 @@ if(eventSlave.fetish != "mindbroken") {
 
 			if(eventSlave.assignment == "be a servant" || eventSlave.assignment == "work as a servant") {
 				if(eventSlave.devotion <= 95) {
-					if(eventSlave.intelligence < -1) {
+					if(eventSlave.intelligence+eventSlave.intelligenceImplant < -50) {
 						State.variables.RESSevent.push("cooler lockin");
 					}
 				}
@@ -6706,7 +6706,7 @@ if(eventSlave.fetish != "mindbroken") {
 	} /* closes mute exempt */
 
 	if(State.variables.cockFeeder == 0) {
-		if(eventSlave.intelligence < -1) {
+		if(eventSlave.intelligence+eventSlave.intelligenceImplant < -50) {
 			if(eventSlave.devotion <= 50) {
 				if(eventSlave.devotion >= -20 || eventSlave.trust < -20) {
 					State.variables.RESSevent.push("obedient idiot");
@@ -8086,9 +8086,9 @@ window.PoliteRudeTitle = function PoliteRudeTitle(slave) {
 			r += (PC.surname ? PC.surname : `${PC.name}${s}an`);
 		}
 	} else {
-		if (slave.intelligence < -2) {
+		if (slave.intelligence+slave.intelligenceImplant < -95) {
 			r += V.titleEnunciate;
-		} else if (slave.intelligence > 1) {
+		} else if (slave.intelligence+slave.intelligenceImplant > 50) {
 			r += (PC.title > 0 ? `Ma${s}ter` : `Mi${s}tre${ss}`);
 		} else if (slave.trust > 0) {
 			r += PC.name;
@@ -8653,12 +8653,12 @@ window.DegradingName = function DegradingName(slave) {
 		if (slave.analSkill > 95) {
 			suffixes.push("Asspussy", "Sphincter");
 		}
-		if (slave.intelligence > 1) {
+		if (slave.intelligence+slave.intelligenceImplant > 50) {
 			names.push("Bright", "Clever", "Smart");
 			if (slave.intelligenceImplant === 1) {
 				names.push("College", "Graduate", "Nerdy");
 			}
-		} else if (slave.intelligence < -1) {
+		} else if (slave.intelligence+slave.intelligenceImplant < -50) {
 			names.push("Cretin", "Dumb", "Retarded", "Stupid");
 		}
 		if (slave.vagina === 1 && slave.vaginaSkill <= 10) {
@@ -11275,7 +11275,7 @@ window.saServant = function saServant(slave) {
 	} else if (slave.skillS >= V.masteredXP) {
 		t += ` ${He} has experience with house keeping from working for you, making ${him} more effective.`;
 	} else {
-		slave.skillS += jsRandom(1, (slave.intelligence + 4) * 2);
+		slave.skillS += jsRandom(1, ((slave.intelligence+slave.intelligenceImplant) / 10));
 	}
 
 	if (slave.fetishStrength > 60) {
@@ -12641,7 +12641,7 @@ window.DefaultRules = (function() {
 
 			case "learn in the schoolroom":
 				if ((V.schoolroomSlaves < V.schoolroom && slave.fetish != "mindbroken" && (slave.devotion >= -20 || slave.trust < -50 || (slave.devotion >= -50 && slave.trust < -20))))
-					if ((slave.intelligenceImplant < 1) || (slave.voice !== 0 && slave.accent+V.schoolroomUpgradeLanguage > 2) || (slave.oralSkill <= 10+V.schoolroomUpgradeSkills*20) || (slave.whoreSkill <= 10+V.schoolroomUpgradeSkills*20) || (slave.entertainSkill <= 10+V.schoolroomUpgradeSkills*20) || (slave.analSkill < 10+V.schoolroomUpgradeSkills*20) || ((slave.vagina >= 0) && (slave.vaginalSkill < 10+V.schoolroomUpgradeSkills*20)))
+					if ((slave.intelligenceImplant < 30) || (slave.voice !== 0 && slave.accent+V.schoolroomUpgradeLanguage > 2) || (slave.oralSkill <= 10+V.schoolroomUpgradeSkills*20) || (slave.whoreSkill <= 10+V.schoolroomUpgradeSkills*20) || (slave.entertainSkill <= 10+V.schoolroomUpgradeSkills*20) || (slave.analSkill < 10+V.schoolroomUpgradeSkills*20) || ((slave.vagina >= 0) && (slave.vaginalSkill < 10+V.schoolroomUpgradeSkills*20)))
 						break;
 					else {
 						RAFacilityRemove(slave,rule); // before deleting rule.setAssignment 
@@ -12663,7 +12663,7 @@ window.DefaultRules = (function() {
 				break;
 
 			case "take classes":
-				if (slave.intelligenceImplant !== 1 && slave.fetish != "mindbroken" && (slave.devotion >= -20 || slave.trust < -50 || (slave.trust < -20 && slave.devotion >= -50)))
+				if (slave.intelligenceImplant < 15 && slave.fetish != "mindbroken" && (slave.devotion >= -20 || slave.trust < -50 || (slave.trust < -20 && slave.devotion >= -50)))
 					break;
 				else
 					delete rule.setAssignment;
@@ -13648,7 +13648,7 @@ window.DefaultRules = (function() {
 				break;
 				
 			case "psychosuppressants":
-				if (!(slave.intelligence > -2 && slave.indentureRestrictions < 1))
+				if (!(slave.intelligence > -100 && slave.indentureRestrictions < 1))
 					flag = false;
 				break;
 			
@@ -15610,8 +15610,8 @@ window.rulesAssistantOptions = (function() {
 				"pregType": "Fetus count, known only after the 10th week of pregnancy",
 				"bellyImplant": "Volume in CCs. None: -1",
 				"belly": "Volume in CCs, any source",
-				"intelligenceImplant": "Education level. 0: uneducated, 1: educated, (0, 1): incomplete education.",
-				"intelligence": "From moronic to brilliant: [-3, 3]",
+				"intelligenceImplant": "Education level. 0: uneducated, 15: educated, 30: advanced education, (0, 15): incomplete education.",
+				"intelligence": "From moronic to brilliant: [-100, 100]",
 				"accent": "No accent: 0, Nice accent: 1, Bad accent: 2, Can't speak language: 3 and above",
 				"waist": "Masculine waist: (95, ∞), Ugly waist: (40, 95], Unattractive waist: (10, 40], Average waist: [-10, 10], Feminine waist: [-40, -10), Wasp waist: [-95, -40), Absurdly narrow: (-∞, -95)",
 			}[attribute] || " ");
@@ -22007,59 +22007,46 @@ window.SlaveSummaryUncached = (function(){
 	}
 
 	function short_intelligence(slave) {
+		var intelligence = slave.intelligence + slave.intelligenceImplant;
 		if (slave.fetish === "mindbroken") {
 			return;
 		} else if (slave.intelligenceImplant === 1) {
-			switch (slave.intelligence) {
-				case 3:
-					r += `<span class="deepskyblue">I+++(e)</span>`;
-					break;
-				case 2:
-					r += `<span class="deepskyblue">I++(e)</span>`;
-					break;
-				case 1:
-					r += `<span class="deepskyblue">I+(e)</span>`;
-					break;
-				case -1:
-					r += `<span class="orangered">I-(e)</span>`;
-					break;
-				case -2:
-					r += `<span class="orangered">I--(e)</span>`;
-					break;
-				case -3:
-					r += `<span class="orangered">I---(e)</span>`;
-					break;
-				default:
-					r += `I(e)`;
-					break;
+			if (intelligence >= 130) {
+				r += `<span class="deepskyblue">I++++(e)</span>`;
+			} else if (intelligence > 95) {
+				r += `<span class="deepskyblue">I+++(e)</span>`;
+			} else if (intelligence > 50) {
+				r += `<span class="deepskyblue">I++(e)</span>`;
+			} else if (intelligence > 15) {
+				r += `<span class="deepskyblue">I+(e)</span>`;
+			} else if (intelligence >= -15) {
+				r += `I(e)`;
+			} else if (intelligence >= -50) {
+				r += `<span class="orangered">I-(e)</span>`;
+			} else if (intelligence >= -95) {
+				r += `<span class="orangered">I--(e)</span>`;
+			} else {
+				r += `<span class="orangered">I---(e)</span>`;
 			}
 		} else {
-			switch (slave.intelligence) {
-				case 3:
-					r += `<span class="deepskyblue">I+++</span>`;
-					break;
-				case 2:
-					r += `<span class="deepskyblue">I++</span>`;
-					break;
-				case 1:
-					r += `<span class="deepskyblue">I+</span>`;
-					break;
-				case -1:
-					r += `<span class="orangered">I-</span>`;
-					break;
-				case -2:
-					r += `<span class="orangered">I--</span>`;
-					break;
-				case -3:
-					r += `<span class="orangered">I---</span>`;
-					break;
-				default:
-					r += `I`;
-					break;
+			if (intelligence > 95) {
+				r += `<span class="deepskyblue">I+++</span>`;
+			} else if (intelligence > 50) {
+				r += `<span class="deepskyblue">I++</span>`;
+			} else if (intelligence > 15) {
+				r += `<span class="deepskyblue">I+</span>`;
+			} else if (intelligence >= -15) {
+				r += `I(e)`;
+			} else if (intelligence >= -50) {
+				r += `<span class="orangered">I-</span>`;
+			} else if (intelligence >= -95) {
+				r += `<span class="orangered">I--</span>`;
+			} else {
+				r += `<span class="orangered">I---</span>`;
 			}
 		}
 		r += " ";
-	} 
+	}
 
 	function short_sex_skills(slave) {
 		let _SSkills = slave.analSkill + slave.oralSkill;
@@ -22146,55 +22133,42 @@ window.SlaveSummaryUncached = (function(){
 	}
 
 	function long_intelligence(slave) {
+		var intelligence = slave.intelligence + slave.intelligenceImplant;
 		if (slave.fetish === "mindbroken") {
 			return;
 		} else if (slave.intelligenceImplant === 1) {
-			switch (slave.intelligence) {
-				case 3:
-					r += `<span class="deepskyblue">Brilliant, educated.</span>`;
-					break;
-				case 2:
-					r += `<span class="deepskyblue">Very smart, educated.</span>`;
-					break;
-				case 1:
-					r += `<span class="deepskyblue">Smart, educated.</span>`;
-					break;
-				case -1:
-					r += `<span class="orangered">Slow, educated.</span>`;
-					break;
-				case -2:
-					r += `<span class="orangered">Very slow, educated.</span>`;
-					break;
-				case -3:
-					r += `<span class="orangered">Moronic, educated.</span>`;
-					break;
-				default:
-					r += `Average intelligence, educated.`;
-					break;
+			if (intelligence >= 130) {
+				r += `<span class="deepskyblue">Genius.</span>`;
+			} else if (intelligence > 95) {
+				r += `<span class="deepskyblue">Brilliant, educated.</span>`;
+			} else if (intelligence > 50) {
+				r += `<span class="deepskyblue">Very smart, educated.</span>`;
+			} else if (intelligence > 15) {
+				r += `<span class="deepskyblue">Smart, educated.</span>`;
+			} else if (intelligence >= -15) {
+				r += `Average intelligence, educated.`;
+			} else if (intelligence >= -50) {
+				r += `<span class="orangered">Slow, educated.</span>`;
+			} else if (intelligence >= -95) {
+				r += `<span class="orangered">Very slow, educated.</span>`;
+			} else {
+				r += `<span class="orangered">Moronic, educated.</span>`;
 			}
 		} else {
-			switch (slave.intelligence) {
-				case 3:
-					r += `<span class="deepskyblue">Brilliant.</span>`;
-					break;
-				case 2:
-					r += `<span class="deepskyblue">Very smart.</span>`;
-					break;
-				case 1:
-					r += `<span class="deepskyblue">Smart.</span>`;
-					break;
-				case -1:
-					r += `<span class="orangered">Slow.</span>`;
-					break;
-				case -2:
-					r += `<span class="orangered">Very slow.</span>`;
-					break;
-				case -3:
-					r += `<span class="orangered">Moronic.</span>`;
-					break;
-				default:
-					r += `Average intelligence.`;
-					break;
+			if (intelligence > 95) {
+				r += `<span class="deepskyblue">Brilliant.</span>`;
+			} else if (intelligence > 50) {
+				r += `<span class="deepskyblue">Very smart.</span>`;
+			} else if (intelligence > 15) {
+				r += `<span class="deepskyblue">Smart.</span>`;
+			} else if (intelligence >= -15) {
+				r += `Average intelligence.`;
+			} else if (intelligence >= -50) {
+				r += `<span class="orangered">Slow.</span>`;
+			} else if (intelligence >= -95) {
+				r += `<span class="orangered">Very slow.</span>`;
+			} else {
+				r += `<span class="orangered">Moronic.</span>`;
 			}
 		}
 		r += " ";
@@ -24275,6 +24249,9 @@ window.removeActiveSlave = function removeActiveSlave() {
 					keep = true;
 				}
 			}
+			if (isImpregnatedBy(V.PC, V.activeSlave)) { /* did we impregnate the PC */
+				keep = true;
+			}
 			if (!keep) { /* avoid going through this loop if possible */
 				keep = V.slaves.some(slave => {
 					/* have we impregnated a slave that is not ourself? */
@@ -26966,7 +26943,7 @@ window.GetVignette = function GetVignette(slave) {
 					type: "rep",
 					effect: -1,
 				});
-				if (slave.behavioralQuirk === "cutting" && slave.intelligence >= 2) {
+				if (slave.behavioralQuirk === "cutting" && slave.intelligence+slave.intelligenceImplant > 50) {
 					vignettes.push({
 						text: `${he} helped a customer discover a new fetish by making cutting remarks when their cock was too small for ${his} big cunt,`,
 						type: "rep",
@@ -27203,7 +27180,7 @@ window.GetVignette = function GetVignette(slave) {
 				effect: 1,
 			});
 		}
-		if (slave.intelligence <= -2) {
+		if (slave.intelligence+slave.intelligenceImplant < -50) {
 			vignettes.push({
 				text: `a customer managed to trick ${him} into fucking him without payment,`,
 				type: "cash",
@@ -27283,7 +27260,7 @@ window.GetVignette = function GetVignette(slave) {
 				effect: -1,
 			});
 		}
-		if (slave.relationship <= -2 && slave.intelligence < 1) {
+		if (slave.relationship <= -2 && slave.intelligence+slave.intelligenceImplant <= 15) {
 			vignettes.push({
 				text: `${he} accidentally mentions how much ${he} loves you during intercourse with a customer who doesn't like to share,`,
 				type: "rep",
@@ -27394,7 +27371,7 @@ window.GetVignette = function GetVignette(slave) {
 			}
 		}
 		if (V.arcologies[0].FSPaternalist !== "unset") {
-			if (slave.intelligence > 1) {
+			if (slave.intelligence+slave.intelligenceImplant > 50) {
 				vignettes.push({
 					text: `${he} got repeat business from a customer who likes to chat with intelligent prostitutes while fucking,`,
 					type: "cash",
@@ -27524,7 +27501,7 @@ window.GetVignette = function GetVignette(slave) {
 			}
 		}
 		if (V.arcologies[0].FSAztecRevivalist !== "unset") {
-			if (slave.devotion > 75 && slave.intelligence >= 2) {
+			if (slave.devotion > 75 && slave.intelligence+slave.intelligenceImplant > 50) {
 				vignettes.push({
 					text: `${he} indulged a citizen by following a fertility ritual completely,`,
 					type: "rep",
@@ -27540,7 +27517,7 @@ window.GetVignette = function GetVignette(slave) {
 			});
 		}
 		if (V.arcologies[0].FSEdoRevivalist !== "unset") {
-			if (slave.face > 40 && slave.intelligence > 1) {
+			if (slave.face > 40 && slave.intelligence+slave.intelligenceImplant > 50) {
 				vignettes.push({
 					text: `${he} got repeat business from a customer who wished to do nothing more than converse with a beautiful and intelligent ${boy},`,
 					type: "cash",
@@ -28542,7 +28519,7 @@ window.GetVignette = function GetVignette(slave) {
 					type: "rep",
 					effect: -1,
 				});
-				if (slave.behavioralQuirk === "cutting" && slave.intelligence >= 2) {
+				if (slave.behavioralQuirk === "cutting" && slave.intelligence+slave.intelligenceImplant > 50) {
 					vignettes.push({
 						text: `${he} helped a citizen discover a new fetish by making cutting remarks when their cock was too small for ${his} big cunt,`,
 						type: "rep",
@@ -28772,7 +28749,7 @@ window.GetVignette = function GetVignette(slave) {
 				effect: 1,
 			});
 		}
-		if (slave.intelligence <= -2) {
+		if (slave.intelligence+slave.intelligenceImplant < -50) {
 			vignettes.push({
 				text: `a low-class citizen who had no business fucking ${him} managed to trick ${him} into fucking him anyway,`,
 				type: "rep",
@@ -28852,7 +28829,7 @@ window.GetVignette = function GetVignette(slave) {
 				effect: -1,
 			});
 		}
-		if (slave.relationship <= -2 && slave.intelligence < 1) {
+		if (slave.relationship <= -2 && slave.intelligence+slave.intelligenceImplant <= 15) {
 			vignettes.push({
 				text: `${he} accidentally mentions how much ${he} loves you during intercourse with a citizen who doesn't like to share,`,
 				type: "rep",
@@ -28963,7 +28940,7 @@ window.GetVignette = function GetVignette(slave) {
 			}
 		}
 		if (V.arcologies[0].FSPaternalist !== "unset") {
-			if (slave.intelligence > 1) {
+			if (slave.intelligence+slave.intelligenceImplant > 50) {
 				vignettes.push({
 					text: `${he} gratified a citizen who likes to chat with intelligent prostitutes as they fuck ${him},`,
 					type: "rep",
@@ -29093,7 +29070,7 @@ window.GetVignette = function GetVignette(slave) {
 			}
 		}
 		if (V.arcologies[0].FSAztecRevivalist !== "unset") {
-			if (slave.devotion > 75 && slave.intelligence >= 2) {
+			if (slave.devotion > 75 && slave.intelligence+slave.intelligenceImplant > 50) {
 				vignettes.push({
 					text: `${he} indulged a citizen by following a fertility ritual completely,`,
 					type: "rep",
@@ -29109,7 +29086,7 @@ window.GetVignette = function GetVignette(slave) {
 			});
 		}
 		if (V.arcologies[0].FSEdoRevivalist !== "unset") {
-			if (slave.face > 40 && slave.intelligence > 1) {
+			if (slave.face > 40 && slave.intelligence+slave.intelligenceImplant > 50) {
 				vignettes.push({
 					text: `${he} gratified a citizen who wished to do nothing more than converse with a beautiful and intelligent ${boy},`,
 					type: "rep",
@@ -29238,13 +29215,13 @@ window.GetVignette = function GetVignette(slave) {
 				effect: 1,
 			});
 		}
-		if (slave.intelligence >= 2) {
+		if (slave.intelligence+slave.intelligenceImplant > 50) {
 			vignettes.push({
 				text: `${he} devised a highly efficient way to get ${his} entire week's worth of work done in only three days. As a reward, ${he} was given - you guessed it - more work,`,
 				type: "cash",
 				effect: 1,
 			});
-		} else if (slave.intelligence <= -2) {
+		} else if (slave.intelligence+slave.intelligenceImplant < -50) {
 			vignettes.push({
 				text: `after being told all ${he} needed was some 'elbow grease', ${he} wasted an obscene amount of time searching for it,`,
 				type: "cash",
@@ -29338,7 +29315,7 @@ window.GetVignette = function GetVignette(slave) {
 			});
 		}
 		if (slave.devotion > 50) {
-			if (slave.intelligence >= 2) {
+			if (slave.intelligence+slave.intelligenceImplant > 50) {
 				vignettes.push({
 					text: `${he} spends some of ${his} downtime figuring out a new way for you to make money,`,
 					type: "cash",
@@ -29356,7 +29333,7 @@ window.GetVignette = function GetVignette(slave) {
 			}
 		}
 		if (slave.devotion < -50) {
-			if (slave.intelligence >= 2) {
+			if (slave.intelligence+slave.intelligenceImplant > 50) {
 				vignettes.push({
 					text: `${he} spends some of ${his} downtime figuring out a way to sabotage your profits,`,
 					type: "cash",
@@ -29408,7 +29385,7 @@ window.GetVignette = function GetVignette(slave) {
 				effect: 0,
 			});
 		}
-		if (slave.intelligence >= 2) {
+		if (slave.intelligence+slave.intelligenceImplant > 50) {
 			vignettes.push({
 				text: `${he} immerses ${himself} in classics of literature at an arcology library, giving ${him} uncomfortable ideas about society,`,
 				type: "devotion",
diff --git a/slave variables documentation - Pregmod.txt b/slave variables documentation - Pregmod.txt
index f32b2191c03..3266f30c0b3 100644
--- a/slave variables documentation - Pregmod.txt	
+++ b/slave variables documentation - Pregmod.txt	
@@ -2466,7 +2466,10 @@ slave intelligence
 intelligenceImplant:
 
 Degree of slave's education
-0 - 30
+0   - uneducated
+1+  - partial education (not really used)
+15+ - educated
+30  - well educated
 
 energy:
 
diff --git a/src/SecExp/attackReport.tw b/src/SecExp/attackReport.tw
index 7a1648bf41c..a22dd5afcca 100644
--- a/src/SecExp/attackReport.tw
+++ b/src/SecExp/attackReport.tw
@@ -1038,7 +1038,7 @@
 		<</if>>
 		<<if (setup.bodyguardCareers.includes($HeadGirl.career) || setup.HGCareers.includes($HeadGirl.career)) && $HeadGirl.intelligence+$HeadGirl.intelligenceImplant > 95>>
 			With her experience and her great intellect, she is able to exploits the smallest of tactical advantages, making your troops greatly effective.
-		<<elseif $HeadGirl.+$HeadGirl.intelligenceImplant > 95>>
+		<<elseif $HeadGirl.intelligence+$HeadGirl.intelligenceImplant > 95>>
 			While she lacks experience, her great intellect allows her to seize and exploit any tactical advantage the battlefield offers her.
 		<<elseif (setup.bodyguardCareers.includes($HeadGirl.career) || setup.HGCareers.includes($HeadGirl.career)) && $HeadGirl.intelligence+$HeadGirl.intelligenceImplant > 50>>
 			Having both the experience and the intelligence, she performs admirably as your commander. Her competence greatly increases the efficiency of your troops.
diff --git a/src/endWeek/saServant.tw b/src/endWeek/saServant.tw
index 271eb60f0b3..72499caedac 100644
--- a/src/endWeek/saServant.tw
+++ b/src/endWeek/saServant.tw
@@ -75,7 +75,7 @@ window.saServant = function saServant(slave) {
 	} else if (slave.skillS >= V.masteredXP) {
 		t += ` ${He} has experience with house keeping from working for you, making ${him} more effective.`;
 	} else {
-		slave.skillS += jsRandom(1, (slave.intelligence + 4) * 2);
+		slave.skillS += jsRandom(1, ((slave.intelligence+slave.intelligenceImplant) / 10));
 	}
 
 	if (slave.fetishStrength > 60) {
diff --git a/src/events/intro/introSummary.tw b/src/events/intro/introSummary.tw
index 82dfb0acb7a..9fe71b5d97d 100644
--- a/src/events/intro/introSummary.tw
+++ b/src/events/intro/introSummary.tw
@@ -406,14 +406,14 @@ Should you be able to surgically attach a penis to your female slaves and starti
 <</if>>
 
 <<if $seeDicks != 0>>
-<br>
-<<if $seeCircumcision == 1>>
-	Circumcision is ''enabled''.
-	[[Disable|Intro Summary][$seeCircumcision = 0]]
-<<else>>
-	Circumcision is ''disabled''.
-	[[Enable|Intro Summary][$seeCircumcision = 1]]
-<</if>>
+	<br>
+	<<if $seeCircumcision == 1>>
+		Circumcision is ''enabled''.
+		[[Disable|Intro Summary][$seeCircumcision = 0]]
+	<<else>>
+		Circumcision is ''disabled''.
+		[[Enable|Intro Summary][$seeCircumcision = 1]]
+	<</if>>
 <</if>>
 
 <br><br>
@@ -425,17 +425,22 @@ The Free City features ''$neighboringArcologies'' arcologies in addition to your
 //Setting this to 0 will disable most content involving the rest of the Free City.//
 
 <<if $targetArcology.type == "New">>
-<br>
-The Free City is located on ''$terrain'' terrain.
-[[Urban|Intro Summary][$terrain = "urban"]] |
-[[Rural|Intro Summary][$terrain = "rural"]] |
-[[Ravine|Intro Summary][$terrain = "ravine"]] |
-[[Marine|Intro Summary][$terrain = "marine"]] |
-[[Oceanic|Intro Summary][$terrain = "oceanic"]]
-<<if $terrain != "oceanic">>
-<br>
-The Free City is located in ''$continent''.
-[[North America|Intro Summary][$continent = "North America", $language = "English"]] | [[South America|Intro Summary][$continent = "South America", $language = "Spanish"]] | [[Brazil|Intro Summary][$continent = "Brazil", $language = "Portuguese"]] | [[Europe|Intro Summary][$continent = "Europe", $language = "English"]] | [[the Middle East|Intro Summary][$continent = "the Middle East", $language = "Arabic"]] | [[Africa|Intro Summary][$continent = "Africa", $language = "Arabic"]] | [[Asia|Intro Summary][$continent = "Asia", $language = "Chinese"]] | [[Australia|Intro Summary][$continent = "Australia", $language = "English"]] | [[Japan|Intro Summary][$continent = "Japan", $language = "Japanese", $PC.race = "asian", $PC.nationality = "Japanese", $PC.hColor = "black", $PC.eyeColor = "brown"]]
+	<br>
+	The Free City is located on ''$terrain'' terrain.
+	[[Urban|Intro Summary][$terrain = "urban"]] |
+	[[Rural|Intro Summary][$terrain = "rural"]] |
+	[[Ravine|Intro Summary][$terrain = "ravine"]] |
+	[[Marine|Intro Summary][$terrain = "marine"]] |
+	[[Oceanic|Intro Summary][$terrain = "oceanic"]]
+	<<if $terrain != "oceanic">>
+	<br>
+	The Free City is located in ''$continent''.
+	[[North America|Intro Summary][$continent = "North America", $language = "English"]] | [[South America|Intro Summary][$continent = "South America", $language = "Spanish"]] | [[Brazil|Intro Summary][$continent = "Brazil", $language = "Portuguese"]] | [[Europe|Intro Summary][$continent = "Europe", $language = "English"]] | [[the Middle East|Intro Summary][$continent = "the Middle East", $language = "Arabic"]] | [[Africa|Intro Summary][$continent = "Africa", $language = "Arabic"]] | [[Asia|Intro Summary][$continent = "Asia", $language = "Chinese"]] | [[Australia|Intro Summary][$continent = "Australia", $language = "English"]] |
+	<<if $freshPC == 1 || $saveImported == 0>>
+		[[Japan|Intro Summary][$continent = "Japan", $language = "Japanese", $PC.race = "asian", $PC.nationality = "Japanese", $PC.hColor = "black", $PC.eyeColor = "brown"]]
+	<<else>>
+		[[Japan|Intro Summary][$continent = "Japan", $language = "Japanese"]]
+	<</if>>
 <</if>>
 <</if>>
 
diff --git a/src/js/DefaultRules.tw b/src/js/DefaultRules.tw
index 59257311c25..a2719b91ada 100644
--- a/src/js/DefaultRules.tw
+++ b/src/js/DefaultRules.tw
@@ -198,7 +198,7 @@ window.DefaultRules = (function() {
 
 			case "learn in the schoolroom":
 				if ((V.schoolroomSlaves < V.schoolroom && slave.fetish != "mindbroken" && (slave.devotion >= -20 || slave.trust < -50 || (slave.devotion >= -50 && slave.trust < -20))))
-					if ((slave.intelligenceImplant < 1) || (slave.voice !== 0 && slave.accent+V.schoolroomUpgradeLanguage > 2) || (slave.oralSkill <= 10+V.schoolroomUpgradeSkills*20) || (slave.whoreSkill <= 10+V.schoolroomUpgradeSkills*20) || (slave.entertainSkill <= 10+V.schoolroomUpgradeSkills*20) || (slave.analSkill < 10+V.schoolroomUpgradeSkills*20) || ((slave.vagina >= 0) && (slave.vaginalSkill < 10+V.schoolroomUpgradeSkills*20)))
+					if ((slave.intelligenceImplant < 30) || (slave.voice !== 0 && slave.accent+V.schoolroomUpgradeLanguage > 2) || (slave.oralSkill <= 10+V.schoolroomUpgradeSkills*20) || (slave.whoreSkill <= 10+V.schoolroomUpgradeSkills*20) || (slave.entertainSkill <= 10+V.schoolroomUpgradeSkills*20) || (slave.analSkill < 10+V.schoolroomUpgradeSkills*20) || ((slave.vagina >= 0) && (slave.vaginalSkill < 10+V.schoolroomUpgradeSkills*20)))
 						break;
 					else {
 						RAFacilityRemove(slave,rule); // before deleting rule.setAssignment 
@@ -220,7 +220,7 @@ window.DefaultRules = (function() {
 				break;
 
 			case "take classes":
-				if (slave.intelligenceImplant !== 1 && slave.fetish != "mindbroken" && (slave.devotion >= -20 || slave.trust < -50 || (slave.trust < -20 && slave.devotion >= -50)))
+				if (slave.intelligenceImplant < 15 && slave.fetish != "mindbroken" && (slave.devotion >= -20 || slave.trust < -50 || (slave.trust < -20 && slave.devotion >= -50)))
 					break;
 				else
 					delete rule.setAssignment;
@@ -1205,7 +1205,7 @@ window.DefaultRules = (function() {
 				break;
 				
 			case "psychosuppressants":
-				if (!(slave.intelligence > -2 && slave.indentureRestrictions < 1))
+				if (!(slave.intelligence > -100 && slave.indentureRestrictions < 1))
 					flag = false;
 				break;
 			
diff --git a/src/js/assayJS.tw b/src/js/assayJS.tw
index f3c239ac12f..17c094de836 100644
--- a/src/js/assayJS.tw
+++ b/src/js/assayJS.tw
@@ -1123,9 +1123,9 @@ window.PoliteRudeTitle = function PoliteRudeTitle(slave) {
 			r += (PC.surname ? PC.surname : `${PC.name}${s}an`);
 		}
 	} else {
-		if (slave.intelligence < -2) {
+		if (slave.intelligence+slave.intelligenceImplant < -95) {
 			r += V.titleEnunciate;
-		} else if (slave.intelligence > 1) {
+		} else if (slave.intelligence+slave.intelligenceImplant > 50) {
 			r += (PC.title > 0 ? `Ma${s}ter` : `Mi${s}tre${ss}`);
 		} else if (slave.trust > 0) {
 			r += PC.name;
@@ -1690,12 +1690,12 @@ window.DegradingName = function DegradingName(slave) {
 		if (slave.analSkill > 95) {
 			suffixes.push("Asspussy", "Sphincter");
 		}
-		if (slave.intelligence > 1) {
+		if (slave.intelligence+slave.intelligenceImplant > 50) {
 			names.push("Bright", "Clever", "Smart");
 			if (slave.intelligenceImplant === 1) {
 				names.push("College", "Graduate", "Nerdy");
 			}
-		} else if (slave.intelligence < -1) {
+		} else if (slave.intelligence+slave.intelligenceImplant < -50) {
 			names.push("Cretin", "Dumb", "Retarded", "Stupid");
 		}
 		if (slave.vagina === 1 && slave.vaginaSkill <= 10) {
diff --git a/src/js/eventSelectionJS.tw b/src/js/eventSelectionJS.tw
index 37895f85372..0a11c06ae9a 100644
--- a/src/js/eventSelectionJS.tw
+++ b/src/js/eventSelectionJS.tw
@@ -54,9 +54,9 @@ if(eventSlave.fetish != "mindbroken") {
 				}
 			}
 
-			if(eventSlave.intelligence > 1) {
+			if(eventSlave.intelligence+eventSlave.intelligenceImplant > 50) {
 				if(eventSlave.devotion > 50) {
-					if(eventSlave.intelligenceImplant > 0) {
+					if(eventSlave.intelligenceImplant >= 15) {
 						if(eventSlave.accent < 4) {
 							State.variables.RESSevent.push("devoted educated slave");
 						}
@@ -136,7 +136,7 @@ if(eventSlave.fetish != "mindbroken") {
 							if(eventSlave.trust > 75) {
 								if(eventSlave.devotion > 50) {
 									if(eventSlave.oralSkill > 30) {
-										if(eventSlave.intelligence >= State.variables.HeadGirl.intelligence) {
+										if(eventSlave.intelligence+eventSlave.intelligenceImplant >= State.variables.HeadGirl.intelligence+State.variables.HeadGirl.intelligenceImplant) {
 											if(eventSlave.oralSkill > State.variables.HeadGirl.oralSkill) {
 												State.variables.events.push("RE HG replacement");
 											}
@@ -414,7 +414,7 @@ if(eventSlave.fetish != "mindbroken") {
 
 			if(eventSlave.assignment == "be a servant" || eventSlave.assignment == "work as a servant") {
 				if(eventSlave.devotion <= 95) {
-					if(eventSlave.intelligence < -1) {
+					if(eventSlave.intelligence+eventSlave.intelligenceImplant < -50) {
 						State.variables.RESSevent.push("cooler lockin");
 					}
 				}
@@ -695,7 +695,7 @@ if(eventSlave.fetish != "mindbroken") {
 							if(eventSlave.devotion >= -50) {
 								if(eventSlave.trust >= -50) {
 									if(eventSlave.fetish != "boobs") {
-										if(eventSlave.intelligence > -2) {
+										if(eventSlave.intelligence+eventSlave.intelligenceImplant >= -50) {
 											State.variables.RESSevent.push("breast expansion blues");
 										}
 									}
@@ -1430,7 +1430,7 @@ if(eventSlave.fetish != "mindbroken") {
 		}
 
 		if(eventSlave.speechRules == "restrictive") {
-			if(eventSlave.intelligence > 0) {
+			if(eventSlave.intelligence > 15) {
 				if(eventSlave.trust >= -20) {
 					if(eventSlave.devotion <= 20) {
 						State.variables.RESSevent.push("restricted smart");
@@ -1476,7 +1476,7 @@ if(eventSlave.fetish != "mindbroken") {
 	} /* closes mute exempt */
 
 	if(State.variables.cockFeeder == 0) {
-		if(eventSlave.intelligence < -1) {
+		if(eventSlave.intelligence+eventSlave.intelligenceImplant < -50) {
 			if(eventSlave.devotion <= 50) {
 				if(eventSlave.devotion >= -20 || eventSlave.trust < -20) {
 					State.variables.RESSevent.push("obedient idiot");
@@ -2006,7 +2006,7 @@ if(eventSlave.fetish != "mindbroken") {
 
 			if(eventSlave.assignment == "be a servant" || eventSlave.assignment == "work as a servant") {
 				if(eventSlave.devotion <= 95) {
-					if(eventSlave.intelligence < -1) {
+					if(eventSlave.intelligence+eventSlave.intelligenceImplant < -50) {
 						State.variables.RESSevent.push("cooler lockin");
 					}
 				}
@@ -2717,7 +2717,7 @@ if(eventSlave.fetish != "mindbroken") {
 	} /* closes mute exempt */
 
 	if(State.variables.cockFeeder == 0) {
-		if(eventSlave.intelligence < -1) {
+		if(eventSlave.intelligence+eventSlave.intelligenceImplant < -50) {
 			if(eventSlave.devotion <= 50) {
 				if(eventSlave.devotion >= -20 || eventSlave.trust < -20) {
 					State.variables.RESSevent.push("obedient idiot");
diff --git a/src/js/rulesAssistantOptions.tw b/src/js/rulesAssistantOptions.tw
index 1e430e4f3b5..d559508c784 100644
--- a/src/js/rulesAssistantOptions.tw
+++ b/src/js/rulesAssistantOptions.tw
@@ -725,8 +725,8 @@ window.rulesAssistantOptions = (function() {
 				"pregType": "Fetus count, known only after the 10th week of pregnancy",
 				"bellyImplant": "Volume in CCs. None: -1",
 				"belly": "Volume in CCs, any source",
-				"intelligenceImplant": "Education level. 0: uneducated, 1: educated, (0, 1): incomplete education.",
-				"intelligence": "From moronic to brilliant: [-3, 3]",
+				"intelligenceImplant": "Education level. 0: uneducated, 15: educated, 30: advanced education, (0, 15): incomplete education.",
+				"intelligence": "From moronic to brilliant: [-100, 100]",
 				"accent": "No accent: 0, Nice accent: 1, Bad accent: 2, Can't speak language: 3 and above",
 				"waist": "Masculine waist: (95, ∞), Ugly waist: (40, 95], Unattractive waist: (10, 40], Average waist: [-10, 10], Feminine waist: [-40, -10), Wasp waist: [-95, -40), Absurdly narrow: (-∞, -95)",
 			}[attribute] || " ");
diff --git a/src/js/slaveSummaryWidgets.tw b/src/js/slaveSummaryWidgets.tw
index 112722f5b5c..5108abda289 100644
--- a/src/js/slaveSummaryWidgets.tw
+++ b/src/js/slaveSummaryWidgets.tw
@@ -2518,59 +2518,46 @@ window.SlaveSummaryUncached = (function(){
 	}
 
 	function short_intelligence(slave) {
+		var intelligence = slave.intelligence + slave.intelligenceImplant;
 		if (slave.fetish === "mindbroken") {
 			return;
 		} else if (slave.intelligenceImplant === 1) {
-			switch (slave.intelligence) {
-				case 3:
-					r += `<span class="deepskyblue">I+++(e)</span>`;
-					break;
-				case 2:
-					r += `<span class="deepskyblue">I++(e)</span>`;
-					break;
-				case 1:
-					r += `<span class="deepskyblue">I+(e)</span>`;
-					break;
-				case -1:
-					r += `<span class="orangered">I-(e)</span>`;
-					break;
-				case -2:
-					r += `<span class="orangered">I--(e)</span>`;
-					break;
-				case -3:
-					r += `<span class="orangered">I---(e)</span>`;
-					break;
-				default:
-					r += `I(e)`;
-					break;
+			if (intelligence >= 130) {
+				r += `<span class="deepskyblue">I++++(e)</span>`;
+			} else if (intelligence > 95) {
+				r += `<span class="deepskyblue">I+++(e)</span>`;
+			} else if (intelligence > 50) {
+				r += `<span class="deepskyblue">I++(e)</span>`;
+			} else if (intelligence > 15) {
+				r += `<span class="deepskyblue">I+(e)</span>`;
+			} else if (intelligence >= -15) {
+				r += `I(e)`;
+			} else if (intelligence >= -50) {
+				r += `<span class="orangered">I-(e)</span>`;
+			} else if (intelligence >= -95) {
+				r += `<span class="orangered">I--(e)</span>`;
+			} else {
+				r += `<span class="orangered">I---(e)</span>`;
 			}
 		} else {
-			switch (slave.intelligence) {
-				case 3:
-					r += `<span class="deepskyblue">I+++</span>`;
-					break;
-				case 2:
-					r += `<span class="deepskyblue">I++</span>`;
-					break;
-				case 1:
-					r += `<span class="deepskyblue">I+</span>`;
-					break;
-				case -1:
-					r += `<span class="orangered">I-</span>`;
-					break;
-				case -2:
-					r += `<span class="orangered">I--</span>`;
-					break;
-				case -3:
-					r += `<span class="orangered">I---</span>`;
-					break;
-				default:
-					r += `I`;
-					break;
+			if (intelligence > 95) {
+				r += `<span class="deepskyblue">I+++</span>`;
+			} else if (intelligence > 50) {
+				r += `<span class="deepskyblue">I++</span>`;
+			} else if (intelligence > 15) {
+				r += `<span class="deepskyblue">I+</span>`;
+			} else if (intelligence >= -15) {
+				r += `I(e)`;
+			} else if (intelligence >= -50) {
+				r += `<span class="orangered">I-</span>`;
+			} else if (intelligence >= -95) {
+				r += `<span class="orangered">I--</span>`;
+			} else {
+				r += `<span class="orangered">I---</span>`;
 			}
 		}
 		r += " ";
-	} 
+	}
 
 	function short_sex_skills(slave) {
 		let _SSkills = slave.analSkill + slave.oralSkill;
@@ -2657,55 +2644,42 @@ window.SlaveSummaryUncached = (function(){
 	}
 
 	function long_intelligence(slave) {
+		var intelligence = slave.intelligence + slave.intelligenceImplant;
 		if (slave.fetish === "mindbroken") {
 			return;
 		} else if (slave.intelligenceImplant === 1) {
-			switch (slave.intelligence) {
-				case 3:
-					r += `<span class="deepskyblue">Brilliant, educated.</span>`;
-					break;
-				case 2:
-					r += `<span class="deepskyblue">Very smart, educated.</span>`;
-					break;
-				case 1:
-					r += `<span class="deepskyblue">Smart, educated.</span>`;
-					break;
-				case -1:
-					r += `<span class="orangered">Slow, educated.</span>`;
-					break;
-				case -2:
-					r += `<span class="orangered">Very slow, educated.</span>`;
-					break;
-				case -3:
-					r += `<span class="orangered">Moronic, educated.</span>`;
-					break;
-				default:
-					r += `Average intelligence, educated.`;
-					break;
+			if (intelligence >= 130) {
+				r += `<span class="deepskyblue">Genius.</span>`;
+			} else if (intelligence > 95) {
+				r += `<span class="deepskyblue">Brilliant, educated.</span>`;
+			} else if (intelligence > 50) {
+				r += `<span class="deepskyblue">Very smart, educated.</span>`;
+			} else if (intelligence > 15) {
+				r += `<span class="deepskyblue">Smart, educated.</span>`;
+			} else if (intelligence >= -15) {
+				r += `Average intelligence, educated.`;
+			} else if (intelligence >= -50) {
+				r += `<span class="orangered">Slow, educated.</span>`;
+			} else if (intelligence >= -95) {
+				r += `<span class="orangered">Very slow, educated.</span>`;
+			} else {
+				r += `<span class="orangered">Moronic, educated.</span>`;
 			}
 		} else {
-			switch (slave.intelligence) {
-				case 3:
-					r += `<span class="deepskyblue">Brilliant.</span>`;
-					break;
-				case 2:
-					r += `<span class="deepskyblue">Very smart.</span>`;
-					break;
-				case 1:
-					r += `<span class="deepskyblue">Smart.</span>`;
-					break;
-				case -1:
-					r += `<span class="orangered">Slow.</span>`;
-					break;
-				case -2:
-					r += `<span class="orangered">Very slow.</span>`;
-					break;
-				case -3:
-					r += `<span class="orangered">Moronic.</span>`;
-					break;
-				default:
-					r += `Average intelligence.`;
-					break;
+			if (intelligence > 95) {
+				r += `<span class="deepskyblue">Brilliant.</span>`;
+			} else if (intelligence > 50) {
+				r += `<span class="deepskyblue">Very smart.</span>`;
+			} else if (intelligence > 15) {
+				r += `<span class="deepskyblue">Smart.</span>`;
+			} else if (intelligence >= -15) {
+				r += `Average intelligence.`;
+			} else if (intelligence >= -50) {
+				r += `<span class="orangered">Slow.</span>`;
+			} else if (intelligence >= -95) {
+				r += `<span class="orangered">Very slow.</span>`;
+			} else {
+				r += `<span class="orangered">Moronic.</span>`;
 			}
 		}
 		r += " ";
diff --git a/src/js/vignettes.tw b/src/js/vignettes.tw
index e6d05ea7c6b..925bebce6bc 100644
--- a/src/js/vignettes.tw
+++ b/src/js/vignettes.tw
@@ -944,7 +944,7 @@ window.GetVignette = function GetVignette(slave) {
 					type: "rep",
 					effect: -1,
 				});
-				if (slave.behavioralQuirk === "cutting" && slave.intelligence >= 2) {
+				if (slave.behavioralQuirk === "cutting" && slave.intelligence+slave.intelligenceImplant > 50) {
 					vignettes.push({
 						text: `${he} helped a customer discover a new fetish by making cutting remarks when their cock was too small for ${his} big cunt,`,
 						type: "rep",
@@ -1181,7 +1181,7 @@ window.GetVignette = function GetVignette(slave) {
 				effect: 1,
 			});
 		}
-		if (slave.intelligence <= -2) {
+		if (slave.intelligence+slave.intelligenceImplant < -50) {
 			vignettes.push({
 				text: `a customer managed to trick ${him} into fucking him without payment,`,
 				type: "cash",
@@ -1261,7 +1261,7 @@ window.GetVignette = function GetVignette(slave) {
 				effect: -1,
 			});
 		}
-		if (slave.relationship <= -2 && slave.intelligence < 1) {
+		if (slave.relationship <= -2 && slave.intelligence+slave.intelligenceImplant <= 15) {
 			vignettes.push({
 				text: `${he} accidentally mentions how much ${he} loves you during intercourse with a customer who doesn't like to share,`,
 				type: "rep",
@@ -1372,7 +1372,7 @@ window.GetVignette = function GetVignette(slave) {
 			}
 		}
 		if (V.arcologies[0].FSPaternalist !== "unset") {
-			if (slave.intelligence > 1) {
+			if (slave.intelligence+slave.intelligenceImplant > 50) {
 				vignettes.push({
 					text: `${he} got repeat business from a customer who likes to chat with intelligent prostitutes while fucking,`,
 					type: "cash",
@@ -1502,7 +1502,7 @@ window.GetVignette = function GetVignette(slave) {
 			}
 		}
 		if (V.arcologies[0].FSAztecRevivalist !== "unset") {
-			if (slave.devotion > 75 && slave.intelligence >= 2) {
+			if (slave.devotion > 75 && slave.intelligence+slave.intelligenceImplant > 50) {
 				vignettes.push({
 					text: `${he} indulged a citizen by following a fertility ritual completely,`,
 					type: "rep",
@@ -1518,7 +1518,7 @@ window.GetVignette = function GetVignette(slave) {
 			});
 		}
 		if (V.arcologies[0].FSEdoRevivalist !== "unset") {
-			if (slave.face > 40 && slave.intelligence > 1) {
+			if (slave.face > 40 && slave.intelligence+slave.intelligenceImplant > 50) {
 				vignettes.push({
 					text: `${he} got repeat business from a customer who wished to do nothing more than converse with a beautiful and intelligent ${boy},`,
 					type: "cash",
@@ -2520,7 +2520,7 @@ window.GetVignette = function GetVignette(slave) {
 					type: "rep",
 					effect: -1,
 				});
-				if (slave.behavioralQuirk === "cutting" && slave.intelligence >= 2) {
+				if (slave.behavioralQuirk === "cutting" && slave.intelligence+slave.intelligenceImplant > 50) {
 					vignettes.push({
 						text: `${he} helped a citizen discover a new fetish by making cutting remarks when their cock was too small for ${his} big cunt,`,
 						type: "rep",
@@ -2750,7 +2750,7 @@ window.GetVignette = function GetVignette(slave) {
 				effect: 1,
 			});
 		}
-		if (slave.intelligence <= -2) {
+		if (slave.intelligence+slave.intelligenceImplant < -50) {
 			vignettes.push({
 				text: `a low-class citizen who had no business fucking ${him} managed to trick ${him} into fucking him anyway,`,
 				type: "rep",
@@ -2830,7 +2830,7 @@ window.GetVignette = function GetVignette(slave) {
 				effect: -1,
 			});
 		}
-		if (slave.relationship <= -2 && slave.intelligence < 1) {
+		if (slave.relationship <= -2 && slave.intelligence+slave.intelligenceImplant <= 15) {
 			vignettes.push({
 				text: `${he} accidentally mentions how much ${he} loves you during intercourse with a citizen who doesn't like to share,`,
 				type: "rep",
@@ -2941,7 +2941,7 @@ window.GetVignette = function GetVignette(slave) {
 			}
 		}
 		if (V.arcologies[0].FSPaternalist !== "unset") {
-			if (slave.intelligence > 1) {
+			if (slave.intelligence+slave.intelligenceImplant > 50) {
 				vignettes.push({
 					text: `${he} gratified a citizen who likes to chat with intelligent prostitutes as they fuck ${him},`,
 					type: "rep",
@@ -3071,7 +3071,7 @@ window.GetVignette = function GetVignette(slave) {
 			}
 		}
 		if (V.arcologies[0].FSAztecRevivalist !== "unset") {
-			if (slave.devotion > 75 && slave.intelligence >= 2) {
+			if (slave.devotion > 75 && slave.intelligence+slave.intelligenceImplant > 50) {
 				vignettes.push({
 					text: `${he} indulged a citizen by following a fertility ritual completely,`,
 					type: "rep",
@@ -3087,7 +3087,7 @@ window.GetVignette = function GetVignette(slave) {
 			});
 		}
 		if (V.arcologies[0].FSEdoRevivalist !== "unset") {
-			if (slave.face > 40 && slave.intelligence > 1) {
+			if (slave.face > 40 && slave.intelligence+slave.intelligenceImplant > 50) {
 				vignettes.push({
 					text: `${he} gratified a citizen who wished to do nothing more than converse with a beautiful and intelligent ${boy},`,
 					type: "rep",
@@ -3216,13 +3216,13 @@ window.GetVignette = function GetVignette(slave) {
 				effect: 1,
 			});
 		}
-		if (slave.intelligence >= 2) {
+		if (slave.intelligence+slave.intelligenceImplant > 50) {
 			vignettes.push({
 				text: `${he} devised a highly efficient way to get ${his} entire week's worth of work done in only three days. As a reward, ${he} was given - you guessed it - more work,`,
 				type: "cash",
 				effect: 1,
 			});
-		} else if (slave.intelligence <= -2) {
+		} else if (slave.intelligence+slave.intelligenceImplant < -50) {
 			vignettes.push({
 				text: `after being told all ${he} needed was some 'elbow grease', ${he} wasted an obscene amount of time searching for it,`,
 				type: "cash",
@@ -3316,7 +3316,7 @@ window.GetVignette = function GetVignette(slave) {
 			});
 		}
 		if (slave.devotion > 50) {
-			if (slave.intelligence >= 2) {
+			if (slave.intelligence+slave.intelligenceImplant > 50) {
 				vignettes.push({
 					text: `${he} spends some of ${his} downtime figuring out a new way for you to make money,`,
 					type: "cash",
@@ -3334,7 +3334,7 @@ window.GetVignette = function GetVignette(slave) {
 			}
 		}
 		if (slave.devotion < -50) {
-			if (slave.intelligence >= 2) {
+			if (slave.intelligence+slave.intelligenceImplant > 50) {
 				vignettes.push({
 					text: `${he} spends some of ${his} downtime figuring out a way to sabotage your profits,`,
 					type: "cash",
@@ -3386,7 +3386,7 @@ window.GetVignette = function GetVignette(slave) {
 				effect: 0,
 			});
 		}
-		if (slave.intelligence >= 2) {
+		if (slave.intelligence+slave.intelligenceImplant > 50) {
 			vignettes.push({
 				text: `${he} immerses ${himself} in classics of literature at an arcology library, giving ${him} uncomfortable ideas about society,`,
 				type: "devotion",
diff --git a/src/npc/databases/dSlavesDatabase.tw b/src/npc/databases/dSlavesDatabase.tw
index 2196d826ff8..e6bbaad758a 100644
--- a/src/npc/databases/dSlavesDatabase.tw
+++ b/src/npc/databases/dSlavesDatabase.tw
@@ -60,7 +60,7 @@
 <<set $heroSlaves.push(_HS)>>
 
 <<set _HS = {}>>
-<<set _HS.slaveName = "Erica", _HS.birthName = "Erica", _HS.origin = "She was sold into slavery after her father was killed by political rivals.", _HS.ID = _i++, _HS.birthWeek = random(0,51), _HS.actualAge = 19, _HS.physicalAge = 19, _HS.visualAge = 19, _HS.ovaryAge = 19, _HS.health = -10, _HS.devotion = 15, _HS.weight = -20, _HS.height = 152, _HS.markings = "freckled", _HS.eyes = 1, _HS.eyeColor = "blue", _HS.hColor = "blonde", _HS.pubicHColor = "blonde", _HS.skin = "fair", _HS.hLength = 30, _HS.hStyle = "shoulder length", _HS.boobs = 300, _HS.nipplesPiercing = 1, _HS.butt = 1, _HS.vagina = 1, _HS.vaginaLube = 1, _HS.clit = 4, _HS.anus = 1, _HS.ovaries = 1, _HS.anusTat = "tribal patterns", _HS.vaginalSkill = 15, _HS.oralSkill = 15, _HS.analSkill = 15, _HS.intelligence = 100, _HS.intelligenceImplant = 30, _HS.attrXX = 80, _HS.attrXY = 40, _HS.fetishKnown = 1>>
+<<set _HS.slaveName = "Erica", _HS.birthName = "Erica", _HS.origin = "She was sold into slavery after her father was killed by political rivals.", _HS.ID = _i++, _HS.birthWeek = random(0,51), _HS.actualAge = 19, _HS.physicalAge = 19, _HS.visualAge = 19, _HS.ovaryAge = 19, _HS.health = -10, _HS.devotion = 15, _HS.weight = -20, _HS.height = 152, _HS.markings = "freckled", _HS.eyes = 1, _HS.eyeColor = "blue", _HS.hColor = "blonde", _HS.pubicHColor = "blonde", _HS.skin = "fair", _HS.hLength = 30, _HS.hStyle = "shoulder length", _HS.boobs = 300, _HS.nipplesPiercing = 1, _HS.butt = 1, _HS.vagina = 1, _HS.vaginaLube = 1, _HS.clit = 4, _HS.anus = 1, _HS.ovaries = 1, _HS.anusTat = "tribal patterns", _HS.vaginalSkill = 15, _HS.oralSkill = 15, _HS.analSkill = 15, _HS.intelligence = random(96,99), _HS.intelligenceImplant = 30, _HS.attrXX = 80, _HS.attrXY = 40, _HS.fetishKnown = 1>>
 <<set $heroSlaves.push(_HS)>>
 /*corrected eyes, changed skin to 'freckled', tweaked height downward, added pseudophallus clit, added origin -BoneyM*/
 /% corrected skin to fair?, changed markings to 'freckled' Bane70 %/
@@ -151,7 +151,7 @@
 /*Is 'rapey' a quirk? Guess so. Added odd. Changed eye color, added nympho, added origin. -BoneyM*/
 
 <<set _HS = {}>>
-<<set _HS.slaveName = "Sophia", _HS.birthName = "Sophia", _HS.origin = "A former head girl of a rich man's harem, she is used to being in charge of others.", _HS.ID = _i++, _HS.birthWeek = random(0,51), _HS.actualAge = 27, _HS.physicalAge = 27, _HS.visualAge = 27, _HS.ovaryAge = 27, _HS.health = 20, _HS.devotion = 25, _HS.height = 175, _HS.hColor = "brown", _HS.pubicHColor = "brown", _HS.skin = "white", _HS.hLength = 35, _HS.hStyle = "shoulder length", _HS.boobs = 1000, _HS.butt = 4, _HS.vagina = 2, _HS.vaginaLube = 1, _HS.ovaries = 1, _HS.vaginalSkill = 35, _HS.oralSkill = 35, _HS.analSkill = 35, _HS.intelligence = 100, _HS.intelligenceImplant = 30, _HS.attrXX = 0, _HS.attrXY = 40, _HS.fetish = "buttslut", _HS.behavioralFlaw = "arrogant">>
+<<set _HS.slaveName = "Sophia", _HS.birthName = "Sophia", _HS.origin = "A former head girl of a rich man's harem, she is used to being in charge of others.", _HS.ID = _i++, _HS.birthWeek = random(0,51), _HS.actualAge = 27, _HS.physicalAge = 27, _HS.visualAge = 27, _HS.ovaryAge = 27, _HS.health = 20, _HS.devotion = 25, _HS.height = 175, _HS.hColor = "brown", _HS.pubicHColor = "brown", _HS.skin = "white", _HS.hLength = 35, _HS.hStyle = "shoulder length", _HS.boobs = 1000, _HS.butt = 4, _HS.vagina = 2, _HS.vaginaLube = 1, _HS.ovaries = 1, _HS.vaginalSkill = 35, _HS.oralSkill = 35, _HS.analSkill = 35, _HS.intelligence = random(96,99), _HS.intelligenceImplant = 30, _HS.attrXX = 0, _HS.attrXY = 40, _HS.fetish = "buttslut", _HS.behavioralFlaw = "arrogant">>
 <<set $heroSlaves.push(_HS)>>
 /*dislikes women*/
 /*Added 'arrogant' and origin -BoneyM*/
@@ -241,7 +241,7 @@
 /*Changed eyes to hazel, increased clit, added a lot of piercings, changed fetish to nympho, fixed customdesc syntax -BoneyM*/
 
 <<set _HS = {}>>
-<<set _HS.slaveName = "Anneliese", _HS.birthName = "Anneliese", _HS.origin = "She is a former Head Girl that fetishizes her own degradation.", _HS.ID = _i++, _HS.birthWeek = random(0,51), _HS.actualAge = 31, _HS.physicalAge = 31, _HS.visualAge = 31, _HS.ovaryAge = 31, _HS.health = 20, _HS.devotion = 100, _HS.race = "white", _HS.eyeColor = "blue", _HS.hColor = "golden", _HS.pubicHColor = "golden", _HS.skin = "pale", _HS.hStyle = "long", _HS.boobs = 800, _HS.nipplesPiercing = 1, _HS.butt = 4, _HS.vagina = 2, _HS.vaginaLube = 1, _HS.vaginaPiercing = 2, _HS.anus = 2, _HS.ovaries = 1, _HS.earPiercing = 1, _HS.vaginalSkill = 100, _HS.oralSkill = 100, _HS.analSkill = 100, _HS.clothes = "slutty jewelry", _HS.intelligence = 100, _HS.intelligenceImplant = 30, _HS.attrXY = 40, _HS.fetish = "humiliation", _HS.fetishKnown = 1, _HS.customDesc = "She has the air of a princess.">>
+<<set _HS.slaveName = "Anneliese", _HS.birthName = "Anneliese", _HS.origin = "She is a former Head Girl that fetishizes her own degradation.", _HS.ID = _i++, _HS.birthWeek = random(0,51), _HS.actualAge = 31, _HS.physicalAge = 31, _HS.visualAge = 31, _HS.ovaryAge = 31, _HS.health = 20, _HS.devotion = 100, _HS.race = "white", _HS.eyeColor = "blue", _HS.hColor = "golden", _HS.pubicHColor = "golden", _HS.skin = "pale", _HS.hStyle = "long", _HS.boobs = 800, _HS.nipplesPiercing = 1, _HS.butt = 4, _HS.vagina = 2, _HS.vaginaLube = 1, _HS.vaginaPiercing = 2, _HS.anus = 2, _HS.ovaries = 1, _HS.earPiercing = 1, _HS.vaginalSkill = 100, _HS.oralSkill = 100, _HS.analSkill = 100, _HS.clothes = "slutty jewelry", _HS.intelligence = random(96,99), _HS.intelligenceImplant = 30, _HS.attrXY = 40, _HS.fetish = "humiliation", _HS.fetishKnown = 1, _HS.customDesc = "She has the air of a princess.">>
 <<set $heroSlaves.push(_HS)>>
 /*Changed eyes to blue, added origin, pierced ears, fixed customdesc syntax -BoneyM*/
 
@@ -310,7 +310,7 @@
 /*Fetish was set to 'arrogant' instead of quirk, corrected tattoo syntax -BoneyM*/
 
 <<set _HS = {}>>
-<<set _HS.slaveName = "Aya", _HS.birthName = "Aya", _HS.ID = _i++, _HS.birthWeek = random(0,51), _HS.actualAge = 21, _HS.physicalAge = 21, _HS.visualAge = 21, _HS.ovaryAge = 21, _HS.health = 20, _HS.devotion = -25, _HS.race = "white", _HS.override_H_Color = 1, _HS.override_Brow_H_Color = 1, _HS.override_Arm_H_Color = 1, _HS.override_Pubic_H_Color = 1, _HS.origHColor = "red", _HS.hColor = "bright red", _HS.eyebrowHColor = "red", _HS.pubicHColor = "red", _HS.underArmHColor = "red", _HS.skin = "white", _HS.hStyle = "long", _HS.boobs = 400, _HS.butt = 3, _HS.vagina = 1, _HS.vaginaLube = 1, _HS.clitPiercing = 1, _HS.anus = 1, _HS.ovaries = 1, _HS.earPiercing = 2, _HS.nosePiercing = 1, _HS.vaginalSkill = 15, _HS.oralSkill = 35, _HS.analSkill = 15, _HS.clothes = "attractive lingerie", _HS.intelligence = 100, _HS.attrXY = 40, _HS.fetishKnown = 1, _HS.behavioralFlaw = "bitchy", _HS.customDesc = "She has piercings along her collarbones and corset piercings with red ribbons down her lower back and thighs.", _HS.height = 168>>
+<<set _HS.slaveName = "Aya", _HS.birthName = "Aya", _HS.ID = _i++, _HS.birthWeek = random(0,51), _HS.actualAge = 21, _HS.physicalAge = 21, _HS.visualAge = 21, _HS.ovaryAge = 21, _HS.health = 20, _HS.devotion = -25, _HS.race = "white", _HS.override_H_Color = 1, _HS.override_Brow_H_Color = 1, _HS.override_Arm_H_Color = 1, _HS.override_Pubic_H_Color = 1, _HS.origHColor = "red", _HS.hColor = "bright red", _HS.eyebrowHColor = "red", _HS.pubicHColor = "red", _HS.underArmHColor = "red", _HS.skin = "white", _HS.hStyle = "long", _HS.boobs = 400, _HS.butt = 3, _HS.vagina = 1, _HS.vaginaLube = 1, _HS.clitPiercing = 1, _HS.anus = 1, _HS.ovaries = 1, _HS.earPiercing = 2, _HS.nosePiercing = 1, _HS.vaginalSkill = 15, _HS.oralSkill = 35, _HS.analSkill = 15, _HS.clothes = "attractive lingerie", _HS.intelligence = random(96,99), _HS.attrXY = 40, _HS.fetishKnown = 1, _HS.behavioralFlaw = "bitchy", _HS.customDesc = "She has piercings along her collarbones and corset piercings with red ribbons down her lower back and thighs.", _HS.height = 168>>
 <<set $heroSlaves.push(_HS)>>
 /*masochist*/
 /*Added piercings, corrected customdesc syntax, added bitchy to fit with her smart-ass masochist personality. -BoneyM*/
@@ -338,7 +338,7 @@
 /*Reduced weight, increased face and faceimplant, added piercings, corrected tattoo and customdesc syntax -BoneyM*/
 
 <<set _HS = {}>>
-<<set _HS.slaveName = "Emily", _HS.birthName = "Emily", _HS.origin = "Before she was made a slave, she was a wealthy, popular honor student.", _HS.ID = _i++, _HS.birthWeek = random(0,51), _HS.actualAge = 19, _HS.physicalAge = 19, _HS.visualAge = 19, _HS.ovaryAge = 19, _HS.health = 20, _HS.devotion = -25, _HS.height = 155, _HS.race = "white", _HS.hColor = "blonde", _HS.pubicHColor = "blonde", _HS.skin = "white", _HS.hLength = 10, _HS.boobs = 400, _HS.butt = 3, _HS.vaginaLube = 1, _HS.ovaries = 1, _HS.vaginalSkill = 15, _HS.oralSkill = 15, _HS.analSkill = 15, _HS.intelligence = 100, _HS.intelligenceImplant = 30, _HS.attrXY = 40, _HS.fetishKnown = 1, _HS.behavioralFlaw = "arrogant", _HS.customDesc = "She has a short nose and is very intelligent.">>
+<<set _HS.slaveName = "Emily", _HS.birthName = "Emily", _HS.origin = "Before she was made a slave, she was a wealthy, popular honor student.", _HS.ID = _i++, _HS.birthWeek = random(0,51), _HS.actualAge = 19, _HS.physicalAge = 19, _HS.visualAge = 19, _HS.ovaryAge = 19, _HS.health = 20, _HS.devotion = -25, _HS.height = 155, _HS.race = "white", _HS.hColor = "blonde", _HS.pubicHColor = "blonde", _HS.skin = "white", _HS.hLength = 10, _HS.boobs = 400, _HS.butt = 3, _HS.vaginaLube = 1, _HS.ovaries = 1, _HS.vaginalSkill = 15, _HS.oralSkill = 15, _HS.analSkill = 15, _HS.intelligence = random(96,100), _HS.intelligenceImplant = 30, _HS.attrXY = 40, _HS.fetishKnown = 1, _HS.behavioralFlaw = "arrogant", _HS.customDesc = "She has a short nose and is very intelligent.">>
 <<set $heroSlaves.push(_HS)>>
 /*Added origin, reduced age, fetish was 'arrogant', changed it to quirk, fixed customdesc syntax. -BoneyM*/
 
@@ -381,7 +381,7 @@
 /*Increased height, reduced weight, reduced butt, fixed customdesc syntax -BoneyM*/
 
 <<set _HS = {}>>
-<<set _HS.slaveName = "No Name", _HS.birthName = "No Name", _HS.origin = "A previous owner cultivated her desire to escape slavery for his own amusement.", _HS.ID = _i++, _HS.birthWeek = random(0,51), _HS.actualAge = 21, _HS.physicalAge = 21, _HS.visualAge = 21, _HS.ovaryAge = 21, _HS.health = 50, _HS.devotion = -100, _HS.height = 165, _HS.weight = -20, _HS.muscles = 20, _HS.race = "mixed race", _HS.eyeColor = "blue", _HS.hColor = "blonde", _HS.pubicHColor = "blonde", _HS.skin = "white", _HS.hStyle = "long", _HS.pubicHStyle = "neat", _HS.boobs = 300, _HS.nipplesPiercing = 1, _HS.butt = 3, _HS.vaginaLube = 1, _HS.clitPiercing = 3, _HS.clitSetting = "oral", _HS.anus = 2, _HS.ovaries = 1, _HS.oralSkill = 35, _HS.analSkill = 35, _HS.intelligence = 100, _HS.intelligenceImplant = 30, _HS.attrXY = 40, _HS.fetish = "cumslut", _HS.fetishKnown = 1, _HS.customDesc = "She is fit and athletic.", _HS.behavioralFlaw = "arrogant", _HS.hips = 1>>
+<<set _HS.slaveName = "No Name", _HS.birthName = "No Name", _HS.origin = "A previous owner cultivated her desire to escape slavery for his own amusement.", _HS.ID = _i++, _HS.birthWeek = random(0,51), _HS.actualAge = 21, _HS.physicalAge = 21, _HS.visualAge = 21, _HS.ovaryAge = 21, _HS.health = 50, _HS.devotion = -100, _HS.height = 165, _HS.weight = -20, _HS.muscles = 20, _HS.race = "mixed race", _HS.eyeColor = "blue", _HS.hColor = "blonde", _HS.pubicHColor = "blonde", _HS.skin = "white", _HS.hStyle = "long", _HS.pubicHStyle = "neat", _HS.boobs = 300, _HS.nipplesPiercing = 1, _HS.butt = 3, _HS.vaginaLube = 1, _HS.clitPiercing = 3, _HS.clitSetting = "oral", _HS.anus = 2, _HS.ovaries = 1, _HS.oralSkill = 35, _HS.analSkill = 35, _HS.intelligence = random(96,99), _HS.intelligenceImplant = 30, _HS.attrXY = 40, _HS.fetish = "cumslut", _HS.fetishKnown = 1, _HS.customDesc = "She is fit and athletic.", _HS.behavioralFlaw = "arrogant", _HS.hips = 1>>
 <<set $heroSlaves.push(_HS)>>
 *//*hypno-anal/cum*/
 /*Reduced weight, changed eyes, corrected customdesc syntax, added origin, increased rebelliousness, changed clitsetting to oral. -BoneyM*/
@@ -477,7 +477,7 @@
 <</if>>
 
 <<set _HS = {}>>
-<<set _HS.slaveName = "Horsepussy", _HS.birthName = "Amber", _HS.origin = "She was sold to you from the public slave market, and was probably kidnapped or otherwise forced into slavery.", _HS.ID = _i++, _HS.birthWeek = random(0,51), _HS.actualAge = 35, _HS.physicalAge = 35, _HS.visualAge = 35, _HS.ovaryAge = 35, _HS.health = 80, _HS.devotion = 55.7, _HS.height = 170, _HS.race = "white", _HS.nationality = "American", _HS.eyeColor = "blue", _HS.skin = "pale", _HS.hLength = 10, _HS.boobs = 500, _HS.butt = 5, _HS.vagina = 3, _HS.vaginaLube = 1, _HS.vaginaPiercing = 2, _HS.clitPiercing = 3, _HS.clitSetting = "vanilla", _HS.anus = 3, _HS.ovaries = 1, _HS.anusPiercing = 1, _HS.makeup = 1, _HS.brand = "SLAVE", _HS.brandLocation = "buttocks", _HS.earPiercing = 1, _HS.vaginalSkill = 100, _HS.oralSkill = 100, _HS.analSkill = 100, _HS.whoreSkill = 100, _HS.entertainSkill = 35, _HS.collar = "heavy gold", _HS.shoes = "heels", _HS.intelligence = 100, _HS.intelligenceImplant = 30, _HS.attrXY = 40, _HS.fetishKnown = 1, _HS.customTat = "Her nickname, 'Horsepussy,' is tattooed on her forehead.", _HS.customDesc = "Her pussy has been extensively surgically altered. Her labia are large and puffy, sticking out nearly an inch from her crotch. Her cunt is exquisitely pink at the center, but her large labia are dark at the edges, almost black.", _HS.labia = 3>>
+<<set _HS.slaveName = "Horsepussy", _HS.birthName = "Amber", _HS.origin = "She was sold to you from the public slave market, and was probably kidnapped or otherwise forced into slavery.", _HS.ID = _i++, _HS.birthWeek = random(0,51), _HS.actualAge = 35, _HS.physicalAge = 35, _HS.visualAge = 35, _HS.ovaryAge = 35, _HS.health = 80, _HS.devotion = 55.7, _HS.height = 170, _HS.race = "white", _HS.nationality = "American", _HS.eyeColor = "blue", _HS.skin = "pale", _HS.hLength = 10, _HS.boobs = 500, _HS.butt = 5, _HS.vagina = 3, _HS.vaginaLube = 1, _HS.vaginaPiercing = 2, _HS.clitPiercing = 3, _HS.clitSetting = "vanilla", _HS.anus = 3, _HS.ovaries = 1, _HS.anusPiercing = 1, _HS.makeup = 1, _HS.brand = "SLAVE", _HS.brandLocation = "buttocks", _HS.earPiercing = 1, _HS.vaginalSkill = 100, _HS.oralSkill = 100, _HS.analSkill = 100, _HS.whoreSkill = 100, _HS.entertainSkill = 35, _HS.collar = "heavy gold", _HS.shoes = "heels", _HS.intelligence = 96, _HS.intelligenceImplant = 30, _HS.attrXY = 40, _HS.fetishKnown = 1, _HS.customTat = "Her nickname, 'Horsepussy,' is tattooed on her forehead.", _HS.customDesc = "Her pussy has been extensively surgically altered. Her labia are large and puffy, sticking out nearly an inch from her crotch. Her cunt is exquisitely pink at the center, but her large labia are dark at the edges, almost black.", _HS.labia = 3>>
 <<set $heroSlaves.push(_HS)>>
 
 <<set _HS = {}>>
diff --git a/src/npc/databases/ddSlavesDatabase.tw b/src/npc/databases/ddSlavesDatabase.tw
index 66cd4fc138f..3c4ba5150a4 100644
--- a/src/npc/databases/ddSlavesDatabase.tw
+++ b/src/npc/databases/ddSlavesDatabase.tw
@@ -74,7 +74,7 @@
 /*Increased height and balls size -BoneyM*/
 
 <<set _HS = {}>>
-<<set _HS.slaveName = "Mackenzie", _HS.birthName = "Mackenzie", _HS.genes = "XY", _HS.ID = _i++, _HS.birthWeek = random(0,51), _HS.actualAge = 21, _HS.physicalAge = 21, _HS.visualAge = 21, _HS.ovaryAge = 21, _HS.health = 40, _HS.devotion = 60, _HS.markings = "freckled", _HS.eyeColor = "blue", _HS.hColor = "red", _HS.pubicHColor = "red", _HS.skin = "pale", _HS.hStyle = "long", _HS.boobs = 1800, _HS.nipplesPiercing = 1, _HS.butt = 4, _HS.lips = 35, _HS.vagina = -1, _HS.preg = -2, _HS.dick = 3, _HS.anus = 1, _HS.prostate = 1, _HS.balls = 2, _HS.scrotum = 2, _HS.oralSkill = 15, _HS.analSkill = 15, _HS.intelligence = 100, _HS.intelligenceImplant = 30, _HS.attrXX = 40, _HS.attrXY = 40, _HS.fetish = "submissive", _HS.fetishKnown = 1, _HS.customDesc = "She has a slim and perfectly feminine frame except for big feet and ears. She's very intelligent and well learned.">>
+<<set _HS.slaveName = "Mackenzie", _HS.birthName = "Mackenzie", _HS.genes = "XY", _HS.ID = _i++, _HS.birthWeek = random(0,51), _HS.actualAge = 21, _HS.physicalAge = 21, _HS.visualAge = 21, _HS.ovaryAge = 21, _HS.health = 40, _HS.devotion = 60, _HS.markings = "freckled", _HS.eyeColor = "blue", _HS.hColor = "red", _HS.pubicHColor = "red", _HS.skin = "pale", _HS.hStyle = "long", _HS.boobs = 1800, _HS.nipplesPiercing = 1, _HS.butt = 4, _HS.lips = 35, _HS.vagina = -1, _HS.preg = -2, _HS.dick = 3, _HS.anus = 1, _HS.prostate = 1, _HS.balls = 2, _HS.scrotum = 2, _HS.oralSkill = 15, _HS.analSkill = 15, _HS.intelligence = random(96,99), _HS.intelligenceImplant = 30, _HS.attrXX = 40, _HS.attrXY = 40, _HS.fetish = "submissive", _HS.fetishKnown = 1, _HS.customDesc = "She has a slim and perfectly feminine frame except for big feet and ears. She's very intelligent and well learned.">>
 <<set $heroSlaves.push(_HS)>>
 /*intelligent, classy, devoted to Master*/
 /*Increased ball size, changed eye color, changed skin to freckled, increased health, corrected customdesc syntax -BoneyM*/
diff --git a/src/uncategorized/BackwardsCompatibility.tw b/src/uncategorized/BackwardsCompatibility.tw
index f038e297b9d..bc543fc28b3 100644
--- a/src/uncategorized/BackwardsCompatibility.tw
+++ b/src/uncategorized/BackwardsCompatibility.tw
@@ -2708,7 +2708,7 @@ Setting missing slave variables:
 	<<elseif _Slave.intelligence == 2>>
 		<<set _Slave.intelligence = 60>>
 	<<else>>
-		<<set _Slave.intelligence = 100>>
+		<<set _Slave.intelligence = 99>>
 	<</if>>
 	<<if _Slave.intelligenceImplant == 1>>
 		<<set _Slave.intelligenceImplant = 30>>
diff --git a/src/uncategorized/PESS.tw b/src/uncategorized/PESS.tw
index 97b96a5c1f9..7c431edb947 100644
--- a/src/uncategorized/PESS.tw
+++ b/src/uncategorized/PESS.tw
@@ -186,7 +186,7 @@ $He sees you examining at $him, and looks back at you submissively, too tired to
 	<</replace>>
 <</link>>
 <</if>> 
-<<if ($activeSlave.intelligence < 0)>>
+<<if ($activeSlave.intelligence+$activeSlave.intelligenceImplant < -15)>>
 	<br>//Your bodyguard lacks the intellect required to de-escalate the situation with tact.//
 <<else>> 
 <br><<link "$He de-escalates the situation with tact">>
diff --git a/src/uncategorized/PETS.tw b/src/uncategorized/PETS.tw
index 172b160b45a..97b0f8bdb51 100644
--- a/src/uncategorized/PETS.tw
+++ b/src/uncategorized/PETS.tw
@@ -278,7 +278,7 @@ You decide to knit up care's raveled sleave with a break in the spa. You have yo
 	<<replace "#result">>
 	You lean against the doorway of the classroom. $activeSlave.slaveName glances at you, but you subtly let $him know to continue with $his business. When $he finishes the lesson and, around the same time, climaxes, you clear your throat. The students all start with surprise and turn to you with trepidation. You observe in a conversational tone of voice that $activeSlave.slaveName is making great sacrifices here, performing an unsexy, boring job, and that any slave that does not work hard to learn will find themselves at the teacher's sexual disposal. Several of the least attentive students @@.green;try to look studious,@@ though a few of the better ones can't hide a certain anticipation.
 	<<run $slaves.forEach(function(s) {
-		if (s.assignment == "learn in the schoolroom") {
+		if (s.assignment == "learn in the schoolroom" && s.intelligenceImplant < 30) {
 			s.intelligenceImplant += 0.1;
 			s.oralCount += 1;
 		};
diff --git a/src/uncategorized/RESS.tw b/src/uncategorized/RESS.tw
index b0fa8f60566..3d303e2b8c2 100644
--- a/src/uncategorized/RESS.tw
+++ b/src/uncategorized/RESS.tw
@@ -2572,7 +2572,14 @@ $He's sleeping soundly, $his breaths coming deep and slow. Most slaves where $he
 
 You cross paths with <<EventNameLink $activeSlave>> as $he moves from the living area to $activeSlave.assignment, just starting $his day. $He's full of energy, and $his succubus outfit is delightful. $He <<if canSee($activeSlave)>>sees your glance<<else>>recognizes your whistle<</if>> and greets you with a <<if canSee($activeSlave)>>wicked glint in $his eye<<else>>wicked smirk on $his face<</if>>, bowing a bit to show off $his <<if $activeSlave.boobs > 6000>>bare, inhumanly large breasts<<elseif $activeSlave.lactation > 0>>bare udders, heavy with milk<<elseif $activeSlave.boobsImplant > 0>>naked fake tits<<elseif $activeSlave.boobs > 800>>heavy, naked breasts<<elseif $activeSlave.boobs > 300>>naked little tits<<else>>pretty chest<</if>> and then continuing towards you with a pirouette. $His tail bounces flirtily, holding the back of $his skirt up to show off <<if $activeSlave.butt > 8>>$his absurdly wide bottom<<elseif $activeSlave.analArea > 3>>the broad area of puckered skin around $his slutty asspussy<<elseif $activeSlave.buttImplant > 0>>$his butt implants<<elseif $activeSlave.butt > 5>>$his big butt<<elseif $activeSlave.anus > 1>>a hint of $his asshole, which $his cute buttocks don't quite conceal<<else>>$his cute bottom<</if>>.
 <br><br>
-$He looks like <<if $activeSlave.bellyPreg >= 1500 || $activeSlave.bellyImplant >= 1500>>a lusty, pregnant, hungry<<elseif $activeSlave.bellyFluid >= 1500>>a gluttonous, over-fed but still hungry<<elseif $activeSlave.height > 180>>an imposing, hungry<<elseif $activeSlave.muscles > 30>>a muscular, hungry<<elseif $activeSlave.weight > 10>>a well-fed but still hungry<<elseif $activeSlave.energy > 95>>desperately hungry<<else>>cute, hungry little<</if>> sex demon, and you tell $him so. <<if $activeSlave.intelligence > 1>>The clever $girl knows all about succubi<<elseif $activeSlave.intelligenceImplant > 0>>$He's been taught the basics about succubi<<else>>$He quickly searches $his memory for the basic information about succubi that came with $his outfit<</if>>.
+$He looks like <<if $activeSlave.bellyPreg >= 1500 || $activeSlave.bellyImplant >= 1500>>a lusty, pregnant, hungry<<elseif $activeSlave.bellyFluid >= 1500>>a gluttonous, over-fed but still hungry<<elseif $activeSlave.height > 180>>an imposing, hungry<<elseif $activeSlave.muscles > 30>>a muscular, hungry<<elseif $activeSlave.weight > 10>>a well-fed but still hungry<<elseif $activeSlave.energy > 95>>desperately hungry<<else>>cute, hungry little<</if>> sex demon, and you tell $him so.
+<<if $activeSlave.intelligence > 50>>
+	The clever $girl knows all about succubi.
+<<elseif $activeSlave.intelligenceImplant >= 15>>
+	$He's been taught the basics about succubi.
+<<else>>
+	$He quickly searches $his memory for the basic information about succubi that came with $his outfit.
+<</if>>
 <<if SlaveStatsChecker.checkForLisp($activeSlave)>>
 	"Oh <<Master>> I'm thtarving," $he lisps,
 <<else>>
@@ -3124,7 +3131,7 @@ and flirting with passersby. Or $he would be, if $he weren't surrounded by a hos
 	"That dick is so disgusting,"
 <<elseif $activeSlave.weight > 130>>
 	"What a cow, how can you be so proud of being such a fat slob?"
-<<elseif $activeSlave.intelligence < 0>>
+<<elseif $activeSlave.intelligence+$activeSlave.intelligenceImplant < -15>>
 	"$He looks retarded,"
 <<elseif $activeSlave.lips > 40>>
 	"Those lips make $him look like a cartoon,"
@@ -3194,7 +3201,7 @@ against the edge of the counter as $he leans forward a little to <<if $activeSla
 
 You are inspecting the slave feeding area early in the week, watching your slaves as they come and go to get their required nourishment for the morning. You see <<EventNameLink $activeSlave>><<if $cockFeeder == 1>> as $he kneels in front of the feeder phallus with a look of disgust on $his face <<else>> as $he <<if canSee($activeSlave)>>stares into $his cup of nutritional fluid with a look of disgust on $his face<<else>>grimaces at $his cup of nutritional fluid<</if>>.<</if>> You quickly check your records and $assistantName confirms that $activeSlave.slaveName is required to ingest<<if $activeSlave.dietCum == 2>> an extreme diet based almost entirely on human ejaculate.<<else>> a large amount of human ejaculate as part of $his diet.<</if>>
 <br><br>
-As you watch $activeSlave.slaveName unpleasantly retch as $he<<if $cockFeeder == 1>> stimulates the feeder phallus with $his mouth<<else>> tentatively drinks from $his cup<</if>> and chokes $his food down, knowing that if $he doesn't eat it willingly, $he will be forced to, you can almost see $his <<if $activeSlave.intelligence > 0>> intelligent mind <<else>> stupid mind<</if>> working through the reality of what $his life has become. $He is now a receptacle for <<if $activeSlave.dietCum == 2>> concentrated <</if>>human ejaculate, and for no other reason than the perverse amusement of $his owner. Almost as soon as $he swallows $his food, $he whimpers, burps, and then <<if $activeSlave.belly >= 10000>>hastily waddles<<else>>quickly runs<</if>> to a nearby bathroom to vomit it back up. This is a common reaction for unbroken slaves on cum diets,<<if $activeSlave.weight > 0>> and can also be an effective, if unhealthy, way of forcing them to lose weight.<<else>> but it can also prevent slaves that are already too thin from gaining weight.<</if>>
+As you watch $activeSlave.slaveName unpleasantly retch as $he<<if $cockFeeder == 1>> stimulates the feeder phallus with $his mouth<<else>> tentatively drinks from $his cup<</if>> and chokes $his food down, knowing that if $he doesn't eat it willingly, $he will be forced to, you can almost see $his <<if $activeSlave.intelligence+$activeSlave.intelligenceImplant > 15>> intelligent mind <<else>> stupid mind<</if>> working through the reality of what $his life has become. $He is now a receptacle for <<if $activeSlave.dietCum == 2>> concentrated <</if>>human ejaculate, and for no other reason than the perverse amusement of $his owner. Almost as soon as $he swallows $his food, $he whimpers, burps, and then <<if $activeSlave.belly >= 10000>>hastily waddles<<else>>quickly runs<</if>> to a nearby bathroom to vomit it back up. This is a common reaction for unbroken slaves on cum diets,<<if $activeSlave.weight > 0>> and can also be an effective, if unhealthy, way of forcing them to lose weight.<<else>> but it can also prevent slaves that are already too thin from gaining weight.<</if>>
 
 <<case "subjugation blues">>
 
@@ -3345,7 +3352,7 @@ $He's a good $desc, and remains obediently before your desk, filling your office
 
 <<case "breast expansion blues">>
 
-During $his routine weekly inspection, <<EventNameLink $activeSlave>> cradles $his huge breasts with $his arms whenever the maneuvers of being inspected allow $him to do so. It's not an unusual gesture for a $desc on breast growth drugs, since slaves whose tits are expanding are, by definition, not used to their weight yet. But $activeSlave.slaveName is more than just uncomfortable. $He seems to regard $his weighty mammaries with distaste. <<if $activeSlave.intelligence > -1>>$He's not stupid, and quickly realizes<<else>>$He's an idiot, but $he's not dumb enough to completely miss<</if>> that you've noticed $his feelings about $his boobs. $He bites $his lower lip, not sure if $he should say anything, so you follow your usual policy during slave inspections and ask $him about it. <<if $PC.slaving >= 100>>If you learned one thing from your long career of slave training, it's that it's<<else>>It's<</if>> typically best to suss these things out.
+During $his routine weekly inspection, <<EventNameLink $activeSlave>> cradles $his huge breasts with $his arms whenever the maneuvers of being inspected allow $him to do so. It's not an unusual gesture for a $desc on breast growth drugs, since slaves whose tits are expanding are, by definition, not used to their weight yet. But $activeSlave.slaveName is more than just uncomfortable. $He seems to regard $his weighty mammaries with distaste. <<if $activeSlave.intelligence+$activeSlave.intelligenceImplant >= -15>>$He's not stupid, and quickly realizes<<else>>$He's an idiot, but $he's not dumb enough to completely miss<</if>> that you've noticed $his feelings about $his boobs. $He bites $his lower lip, not sure if $he should say anything, so you follow your usual policy during slave inspections and ask $him about it. <<if $PC.slaving >= 100>>If you learned one thing from your long career of slave training, it's that it's<<else>>It's<</if>> typically best to suss these things out.
 <br><br>
 "<<Master>>," $he mumbles, "can I plea<<s>>e be taken off the brea<<s>>t expan<<s>>ion drug<<s>>?" $He swallows, nervous that $he's crossed a line, but $he presses on, hefting $his tits a little higher to show $he's talking about them. "They're <<s>>o heavy and awkward. I'm <<s>>ore every night, and my back hurt<<s>>. I feel like a cow with boob<<s>> thi<<s>> big, and I can't imagine what it'll be like if they get any bigger."
 In one sense, it's amusing that $he feels that way, because<<if ($arcologies[0].FSAssetExpansionist != "unset") || ($arcologies[0].FSTransformationFetishist != "unset" && $arcologies[0].FSSlimnessEnthusiast == "unset") || ($arcologies[0].FSPastoralist != "unset")>> as many slaves in this very arcology know quite well,<</if>> it's possible for the miracles of modern medicine to grow a $desc's tits until they're so heavy they immobilize $him completely.
@@ -3888,7 +3895,7 @@ and flirting with passersby. Or $he would be, if $he weren't surrounded by a gro
 	"I didn't know <<= $girl>>s could have lips like that,"
 <<elseif $activeSlave.face > 60>>
 	"$He's just so gorgeous,"
-<<elseif $activeSlave.intelligence > 1>>
+<<elseif $activeSlave.intelligence+$activeSlave.intelligenceImplant > 50>>
 	"$He looks like $he's really clever,"
 <<else>>
 	"$He looks like $he's down to fuck,"
@@ -3923,7 +3930,7 @@ in front of you, awaiting further direction.
 	Clad in an antique T-Shirt referencing some defunct old world website, $his P-Limbs stand in stark contrast - gyros and servomotors against simple thread and cloth. With such tangible examples of the technological prowess of the Free Cities serving as $his limbs, $his <<if $activeSlave.belly >= 5000>>taut <</if>>shirt is an amusing testimonial to how far behind the old world stands in contrast to the new.
 <<elseif $activeSlave.boobs > 4000>>
 	$His breasts are so massive that the front of $his loose pyjama top must be unbuttoned. Even so, the protrusion of $his immense breasts<<if $activeSlave.belly >= 5000>> and _belly rounded belly<</if>> from $his chest strains the soft pyjama top to it's breaking point.
-<<elseif $activeSlave.intelligence > 1>>
+<<elseif $activeSlave.intelligence+$activeSlave.intelligenceImplant > 50>>
 	As a clever $girl, $his simple<<if $activeSlave.belly >= 5000>>, yet tight around the middle,<</if>> summer dress evokes memories of bygone warm weather days at elite old world colleges - and the sexual conquest of their youthful residents.
 <<elseif $activeSlave.muscles > 30>>
 	$His simple sports bra and compression shorts ensemble does little to conceal $his incredible musculature, <<if $activeSlave.belly >= 1500 && $activeSlave.belly < 5000>>straining to hold up against $his swelling middle and<<elseif $activeSlave.belly >= 5000>>straining to hold up against $his swelling middle and <</if>>glistening with sweat from a recent workout. Despite $his recent exertions, $he's able to maintain utter stillness in the perfect posture of an obedient slave.
@@ -5144,7 +5151,7 @@ $He cranes $his neck, glancing over $his shoulder to give you a pleading look.
 <<link "Yes">>
 	<<EventNameDelink $activeSlave>>
 	<<replace "#result">>
-		<<if ($activeSlave.diet == "fattening" || $activeSlave.dietMilk > 0) && $activeSlave.intelligence > 0>>
+		<<if ($activeSlave.diet == "fattening" || $activeSlave.dietMilk > 0) && $activeSlave.intelligence+$activeSlave.intelligenceImplant > 15>>
 			<<if canTalk($activeSlave)>>
 				"<<S>>o the diet i<<s>> working well, <<Master>>? That'<<s>> good, I <<s>>uppo<<s>>e. I'm ju<<s>>t a bit <<sh>>ocked at how hone<<s>>t you were, people u<<s>>ually try to dodge that que<<s>>tion or outright lie."
 			<<else>>
@@ -5182,7 +5189,7 @@ $He cranes $his neck, glancing over $his shoulder to give you a pleading look.
 <br><<link "No">>
 	<<EventNameDelink $activeSlave>>
 	<<replace "#result">>
-		<<if ($activeSlave.diet == "fattening" || $activeSlave.dietMilk > 0) && $activeSlave.intelligence > 0>>
+		<<if ($activeSlave.diet == "fattening" || $activeSlave.dietMilk > 0) && $activeSlave.intelligence+$activeSlave.intelligenceImplant > 15>>
 			<<if canTalk($activeSlave)>>
 				"I know you want me to gain weight, <<Master>>, <<s>>o you don't need to <<s>>pare my feeling<<s>>. It'<<s>> a ni<<c>>e ge<<s>>ture, though."
 			<<else>>
@@ -10244,7 +10251,7 @@ You tell her kindly that you understand, and that $he'll be trained to address t
 	<<EventNameDelink $activeSlave>>
 	<<replace "#result">>
 	You observe, noncommittally, that $he seems ready to get off.
-	"Ye<<s>> <<Master>>!" $he squeals, too <<if $activeSlave.intelligence > -2>>horny<<else>>stupid<</if>> to notice the sarcasm. Sighing inwardly, you slide yourself back from your desk and glance downward significantly, indicating your <<if $PC.dick == 1>>dick<<if $PC.vagina == 1>> and pussy<</if>><<else>>girl parts<</if>>. $He hurries over, almost throwing $himself at your feet in her eagerness. Touch yourself, you say, making it an imperious command rather than kind permission. $He moans into your <<if $PC.dick == 1>>cock<<else>>cunt<</if>> with gratitude as $he
+	"Ye<<s>> <<Master>>!" $he squeals, too <<if $activeSlave.intelligence+$activeSlave.intelligenceImplant >= -50>>horny<<else>>stupid<</if>> to notice the sarcasm. Sighing inwardly, you slide yourself back from your desk and glance downward significantly, indicating your <<if $PC.dick == 1>>dick<<if $PC.vagina == 1>> and pussy<</if>><<else>>girl parts<</if>>. $He hurries over, almost throwing $himself at your feet in her eagerness. Touch yourself, you say, making it an imperious command rather than kind permission. $He moans into your <<if $PC.dick == 1>>cock<<else>>cunt<</if>> with gratitude as $he
 	<<if canDoVaginal($activeSlave)>>
 		<<if $activeSlave.dick > 0 && !["chastity", "combined chastity"].includes($activeSlave.dickAccessory)>>
 			wraps one hand around her dick and slips the other into $his pussy.
@@ -11473,9 +11480,9 @@ You tell her kindly that you understand, and that $he'll be trained to address t
 		mouth
 	<</if>>
 	today.
-	<<if ($activeSlave.intelligence > 1)>>
+	<<if ($activeSlave.intelligence+$activeSlave.intelligenceImplant > 50)>>
 		$He's witty and holds up her end of the conversation without straying from her role as a slave.
-	<<elseif ($activeSlave.intelligence > -1)>>
+	<<elseif ($activeSlave.intelligence+$activeSlave.intelligenceImplant >= -15)>>
 		$He has a few juicy items to share, and even gossiping, $he's mindful of her role as a slave.
 	<<else>>
 		$He may be an idiot, but her babble is amusing enough.
@@ -14752,7 +14759,7 @@ You tell her kindly that you understand, and that $he'll be trained to address t
 		<<elseif $activeSlave.anus == 0>>
 			her girly little butthole is still virgin
 		<</if>>
-		$he's going to have to find an amazingly thorough way to please a dick if $he's going to earn her throat a reprieve. $He looks<<if $activeSlave.intelligence < 0>> uncharacteristically<</if>> thoughtful for a moment before bending over before you, spitting in $his hand
+		$he's going to have to find an amazingly thorough way to please a dick if $he's going to earn her throat a reprieve. $He looks<<if $activeSlave.intelligence+$activeSlave.intelligenceImplant < -15>> uncharacteristically<</if>> thoughtful for a moment before bending over before you, spitting in $his hand
 		<<if $activeSlave.vagina == 0>>
 			and thoroughly coating her inner thighs with her saliva.
 		<<else>>
@@ -15182,7 +15189,15 @@ You tell her kindly that you understand, and that $he'll be trained to address t
 	<<else>>
 		You're massaging and squeezing her flat chest.
 	<</if>>
-	$His face contorts with surprise and then outrage, but then $he <<if !canSee($activeSlave)>>recognizes your familiar smell and <</if>>realizes whose hand it is that's taking liberties with $him. <<if $activeSlave.intelligence > 1>>Though $he's smart,<<elseif $activeSlave.intelligence > -1>>Though $he's not dumb,<<else>>$He's an idiot, and<</if>> in her drowsy state $he can't figure out what to do. $He settles for @@.hotpink;freezing submissively@@ and letting you do what you like. You test her compliance by
+	$His face contorts with surprise and then outrage, but then $he <<if !canSee($activeSlave)>>recognizes your familiar smell and <</if>>realizes whose hand it is that's taking liberties with $him.
+	<<if $activeSlave.intelligence+$activeSlave.intelligenceImplant > 50>>
+		Though $he's smart,
+	<<elseif $activeSlave.intelligence+$activeSlave.intelligenceImplant >= -15>>
+		Though $he's not dumb,
+	<<else>>
+		$He's an idiot, and
+	<</if>>
+	in her drowsy state $he can't figure out what to do. $He settles for @@.hotpink;freezing submissively@@ and letting you do what you like. You test her compliance by
 	<<switch $activeSlave.nipples>>
 	<<case "inverted">>
 		painfully protruding her fully inverted nipple. $He puts up with even that, though $he cries a little as it pops out.
@@ -15212,7 +15227,15 @@ You tell her kindly that you understand, and that $he'll be trained to address t
 		<<else>>
 			You're massaging and teasing her taut belly.
 		<</if>>
-		$His face contorts with surprise and then outrage, but then $he <<if !canSee($activeSlave)>>recognizes your familiar smell and <</if>>realizes whose hand it is that's taking liberties with $him. <<if $activeSlave.intelligence > 1>>Though $he's smart,<<elseif $activeSlave.intelligence > -1>>Though $he's not dumb,<<else>>$He's an idiot, and<</if>> in her drowsy state $he can't figure out what to do. $He settles for @@.hotpink;freezing submissively@@ and letting you do what you like. You test her compliance by
+		$His face contorts with surprise and then outrage, but then $he <<if !canSee($activeSlave)>>recognizes your familiar smell and <</if>>realizes whose hand it is that's taking liberties with $him.
+		<<if $activeSlave.intelligence+$activeSlave.intelligenceImplant > 50>>
+			Though $he's smart,
+		<<elseif $activeSlave.intelligence+$activeSlave.intelligenceImplant >= -15>>
+			Though $he's not dumb,
+		<<else>>
+			$He's an idiot, and
+		<</if>>
+		in her drowsy state $he can't figure out what to do. $He settles for @@.hotpink;freezing submissively@@ and letting you do what you like. You test her compliance by
 		<<if $activeSlave.weight > 10>>
 			sinking your hands into her fat to get a good feel of the life growing within.
 		<<else>>
@@ -15235,7 +15258,15 @@ You tell her kindly that you understand, and that $he'll be trained to address t
 		<<else>>
 			You're massaging and teasing her taut belly.
 		<</if>>
-		$His face contorts with surprise and then outrage, but then $he <<if !canSee($activeSlave)>>recognizes your familiar smell and <</if>>realizes whose hand it is that's taking liberties with $him. <<if $activeSlave.intelligence > 1>>Though $he's smart,<<elseif $activeSlave.intelligence > -1>>Though $he's not dumb,<<else>>$He's an idiot, and<</if>> in her drowsy state $he can't figure out what to do. $He settles for @@.hotpink;freezing submissively@@ and letting you do what you like. You test her compliance by
+		$His face contorts with surprise and then outrage, but then $he <<if !canSee($activeSlave)>>recognizes your familiar smell and <</if>>realizes whose hand it is that's taking liberties with $him.
+		<<if $activeSlave.intelligence+$activeSlave.intelligenceImplant > 50>>
+			Though $he's smart,
+		<<elseif $activeSlave.intelligence+$activeSlave.intelligenceImplant >= -15>>
+			Though $he's not dumb,
+		<<else>>
+			$He's an idiot, and
+		<</if>>
+		in her drowsy state $he can't figure out what to do. $He settles for @@.hotpink;freezing submissively@@ and letting you do what you like. You test her compliance by
 		<<if $activeSlave.weight > 10>>
 			sinking your hands into her fat to get a good feel of the implant hidden within.
 		<<else>>
@@ -15258,7 +15289,15 @@ You tell her kindly that you understand, and that $he'll be trained to address t
 		<<else>>
 			You're massaging and jiggling her taut belly, enjoying the sounds it makes as you move it.
 		<</if>>
-		$His face contorts with surprise and then outrage, but then $he <<if !canSee($activeSlave)>>recognizes your familiar smell and <</if>>realizes whose hand it is that's taking liberties with $him. <<if $activeSlave.intelligence > 1>>Though $he's smart,<<elseif $activeSlave.intelligence > -1>>Though $he's not dumb,<<else>>$He's an idiot, and<</if>> in her drowsy state $he can't figure out what to do. $He settles for @@.hotpink;freezing submissively@@ and letting you do what you like. You test her compliance by
+		$His face contorts with surprise and then outrage, but then $he <<if !canSee($activeSlave)>>recognizes your familiar smell and <</if>>realizes whose hand it is that's taking liberties with $him.
+		<<if $activeSlave.intelligence+$activeSlave.intelligenceImplant > 50>>
+			Though $he's smart,
+		<<elseif $activeSlave.intelligence+$activeSlave.intelligenceImplant >= -15>>
+			Though $he's not dumb,
+		<<else>>
+			$He's an idiot, and
+		<</if>>
+		in her drowsy state $he can't figure out what to do. $He settles for @@.hotpink;freezing submissively@@ and letting you do what you like. You test her compliance by
 		<<if $activeSlave.weight > 10>>
 			sinking your hands into her fat to get a good grip
 		<<else>>
@@ -15278,7 +15317,15 @@ You tell her kindly that you understand, and that $he'll be trained to address t
 		<<else>>
 			chubby middle. You're massaging and jiggling her tiny gut.
 		<</if>>
-		$His face contorts with surprise and then outrage, but then $he <<if !canSee($activeSlave)>>recognizes your familiar smell and <</if>>realizes whose hand it is that's taking liberties with $him. <<if $activeSlave.intelligence > 1>>Though $he's smart,<<elseif $activeSlave.intelligence > -1>>Though $he's not dumb,<<else>>$He's an idiot, and<</if>> in her drowsy state $he can't figure out what to do. $He settles for @@.hotpink;freezing submissively@@ and letting you do what you like. You test her compliance by roughly kneading her pliant flesh, testing how well it can be molded into pleasurable valleys and ravines. Satisfied,
+		$His face contorts with surprise and then outrage, but then $he <<if !canSee($activeSlave)>>recognizes your familiar smell and <</if>>realizes whose hand it is that's taking liberties with $him.
+		<<if $activeSlave.intelligence+$activeSlave.intelligenceImplant > 50>>
+			Though $he's smart,
+		<<elseif $activeSlave.intelligence+$activeSlave.intelligenceImplant >= -15>>
+			Though $he's not dumb,
+		<<else>>
+			$He's an idiot, and
+		<</if>>
+		in her drowsy state $he can't figure out what to do. $He settles for @@.hotpink;freezing submissively@@ and letting you do what you like. You test her compliance by roughly kneading her pliant flesh, testing how well it can be molded into pleasurable valleys and ravines. Satisfied,
 	<</if>>
 	you leave $him to get back to sleep as best $he can.
 	<<set $activeSlave.devotion += 4>>
@@ -15289,7 +15336,15 @@ You tell her kindly that you understand, and that $he'll be trained to address t
 <br><<link "Cum on her face">>
 	<<EventNameDelink $activeSlave>>
 	<<replace "#result">>
-	You stand over $him, quietly masturbating while watching her sleep. Several of her fellow slaves come and go as you do so, but if they're surprised by the sight, they have the presence of mind not to show it. You fancy yourself a bit of a marks<<if $PC.title == 1>>man<<else>>woman<</if>>, and you don't feel the need to bend over $him to score good hits. Your load comes in three main jets: the first hits her on the nipple, the second tracks up her sternum and throat, and the third splashes full across her face as $his eyes fly open<<if $PC.vagina == 1>>, each of these accompanied by some less directionally perfect girlcum<</if>>. $He sputters with surprise and then outrage, but <<if !canSee($activeSlave)>>once $he recognizes your taste and<<else>>then $he<</if>> realizes who it is standing over her <<if canSee($activeSlave)>>and<<else>>does $he<</if>> @@.gold;freezes in terror.@@ <<if $activeSlave.intelligence > 1>>$He's quick, and $he immediately realizes<<elseif $activeSlave.intelligence > -1>>$He's not dumb, and $he quickly realizes<<else>>$He gradually manages to calculate<</if>> that doing anything other than thanking you would be phenomenally stupid. "Thank you, <<Master>>," $he <<if SlaveStatsChecker.checkForLisp($activeSlave)>>lisps<<else>>mumbles<</if>> blearily. You leave $him to @@.hotpink;puzzle over her own submissiveness,@@ covered in your cum.
+	You stand over $him, quietly masturbating while watching her sleep. Several of her fellow slaves come and go as you do so, but if they're surprised by the sight, they have the presence of mind not to show it. You fancy yourself a bit of a marks<<if $PC.title == 1>>man<<else>>woman<</if>>, and you don't feel the need to bend over $him to score good hits. Your load comes in three main jets: the first hits her on the nipple, the second tracks up her sternum and throat, and the third splashes full across her face as $his eyes fly open<<if $PC.vagina == 1>>, each of these accompanied by some less directionally perfect girlcum<</if>>. $He sputters with surprise and then outrage, but <<if !canSee($activeSlave)>>once $he recognizes your taste and<<else>>then $he<</if>> realizes who it is standing over her <<if canSee($activeSlave)>>and<<else>>does $he<</if>> @@.gold;freezes in terror.@@
+	<<if $activeSlave.intelligence+$activeSlave.intelligenceImplant > 50>>
+		$He's quick, and $he immediately realizes
+	<<elseif $activeSlave.intelligence+$activeSlave.intelligenceImplant >= -15>>
+		$He's not dumb, and $he quickly realizes
+	<<else>>
+		$He gradually manages to calculate
+	<</if>>
+	that doing anything other than thanking you would be phenomenally stupid. "Thank you, <<Master>>," $he <<if SlaveStatsChecker.checkForLisp($activeSlave)>>lisps<<else>>mumbles<</if>> blearily. You leave $him to @@.hotpink;puzzle over her own submissiveness,@@ covered in your cum.
 	<<set $activeSlave.devotion += 4, $activeSlave.trust -= 2>>
 	<</replace>>
 <</link>>
@@ -15297,7 +15352,15 @@ You tell her kindly that you understand, and that $he'll be trained to address t
 <br><<link "Squirt on her face">>
 	<<EventNameDelink $activeSlave>>
 	<<replace "#result">>
-	You stand over $him, quietly masturbating while watching her sleep. Several of her fellow slaves come and go as you do so, but if they're surprised by the sight, they have the presence of mind not to show it. You're on excellent terms with your cunt, and you know just what it takes to make yourself squirt. When you feel the heat building just right, you quickly straddle her face without touching $him, angling yourself carefully and increasing the pace of your schlicking. In no time at all, a jet of femcum splashes onto her face and down across $his chest. $He sputters with surprise and then outrage, but then $he <<if canSee($activeSlave)>>realizes whose pussy $he's staring straight into<<else>>recognizes your flavor<</if>> and @@.gold;freezes in terror.@@ <<if $activeSlave.intelligence > 1>>$He's quick, and $he immediately realizes<<elseif $activeSlave.intelligence > -1>>$He's not dumb, and $he quickly realizes<<else>>$He gradually manages to calculate<</if>> that doing anything other than thanking you would be phenomenally stupid. "Thank you, <<Master>>," $he <<if SlaveStatsChecker.checkForLisp($activeSlave)>>lisps<<else>>mumbles<</if>> blearily. You leave $him to @@.hotpink;puzzle over her own submissiveness,@@ covered in your pussyjuice.
+	You stand over $him, quietly masturbating while watching her sleep. Several of her fellow slaves come and go as you do so, but if they're surprised by the sight, they have the presence of mind not to show it. You're on excellent terms with your cunt, and you know just what it takes to make yourself squirt. When you feel the heat building just right, you quickly straddle her face without touching $him, angling yourself carefully and increasing the pace of your schlicking. In no time at all, a jet of femcum splashes onto her face and down across $his chest. $He sputters with surprise and then outrage, but then $he <<if canSee($activeSlave)>>realizes whose pussy $he's staring straight into<<else>>recognizes your flavor<</if>> and @@.gold;freezes in terror.@@
+	<<if $activeSlave.intelligence+$activeSlave.intelligenceImplant > 50>>
+		$He's quick, and $he immediately realizes
+	<<elseif $activeSlave.intelligence+$activeSlave.intelligenceImplant >= -15>>
+		$He's not dumb, and $he quickly realizes
+	<<else>>
+		$He gradually manages to calculate
+	<</if>>
+	that doing anything other than thanking you would be phenomenally stupid. "Thank you, <<Master>>," $he <<if SlaveStatsChecker.checkForLisp($activeSlave)>>lisps<<else>>mumbles<</if>> blearily. You leave $him to @@.hotpink;puzzle over her own submissiveness,@@ covered in your pussyjuice.
 	<<set $activeSlave.devotion += 4, $activeSlave.trust -= 2>>
 	<</replace>>
 <</link>>
@@ -17305,7 +17368,7 @@ You tell her kindly that you understand, and that $he'll be trained to address t
 		advantageous to $him, as it is generally unpopular to enslave a girl of the superior race.
 	<</if>>
 	However, $he's about to learn that $his racial appearance isn't immutable, and in your arcology, it can make a big difference in how $he is treated. You escort the struggling <<if $activeSlave.pregKnown == 1 && $activeSlave.bellyPreg >= 1500>>mother-to-be<<else>>$girl<</if>> to the surgery center and instruct $assistantName to alter $his appearance so that $he appears to be <<print $arcologies[0].FSSubjugationistRace>>. The full meaning of your instructions
-	<<if $activeSlave.intelligence < 0>>
+	<<if $activeSlave.intelligence+$activeSlave.intelligenceImplant < -15>>
 		slowly start to dawn on <<print $activeSlave.slaveName>>'s stupid face
 	<<else>>
 		spark a quick reaction <<if canSee($activeSlave)>>from <<print $activeSlave.slaveName>>'s intelligent eyes<<else>>on <<print $activeSlave.slaveName>>'s intelligent face<</if>>
@@ -17404,7 +17467,7 @@ You tell her kindly that you understand, and that $he'll be trained to address t
 		you take $him over to the glory hole area, where distinct labels adorn the holes reserved for members of the slave race, and $arcologies[0].FSSubjugationistRace fuck-holes are afforded "special attention" by "sympathetic" citizens of the arcology.
 	<</if>>
 	<br><br>
-	At first $activeSlave.slaveName is confused as to why you are showing $him these things, but you soon make your point clear. You explain that if $he doesn't start accepting her role, you can easily alter her appearance and force $him to accept a much different role instead. You see her <<if $activeSlave.intelligence < 0>> stupid <<if canSee($activeSlave)>>eyes<<else>>face<</if>> finally start to show signs of understanding<<else>>intelligent <<if canSee($activeSlave)>>eyes<<else>>face<</if>> quickly realize what you are talking about<</if>> and $he starts to whimper helplessly, begging you not to turn $him into a $arcologies[0].FSSubjugationistRace sub-human. By the end of the tour $he better realizes exactly what it means to be a slave. $He is starting to understand the @@.hotpink;power you have over her@@, and @@.gold;$he fears you even more because of it.@@
+	At first $activeSlave.slaveName is confused as to why you are showing $him these things, but you soon make your point clear. You explain that if $he doesn't start accepting her role, you can easily alter her appearance and force $him to accept a much different role instead. You see her <<if $activeSlave.intelligence+$activeSlave.intelligenceImplant < -15>> stupid <<if canSee($activeSlave)>>eyes<<else>>face<</if>> finally start to show signs of understanding<<else>>intelligent <<if canSee($activeSlave)>>eyes<<else>>face<</if>> quickly realize what you are talking about<</if>> and $he starts to whimper helplessly, begging you not to turn $him into a $arcologies[0].FSSubjugationistRace sub-human. By the end of the tour $he better realizes exactly what it means to be a slave. $He is starting to understand the @@.hotpink;power you have over her@@, and @@.gold;$he fears you even more because of it.@@
 	<<set $activeSlave.devotion += 5, $activeSlave.trust -= 10>>
 	<</replace>>
 <</link>>
@@ -18118,7 +18181,7 @@ You tell her kindly that you understand, and that $he'll be trained to address t
 <<link "Follow $him">>
 	<<EventNameDelink $activeSlave>>
 	<<replace "#result">>
-		$His sheer joie de vivre is irresistible, and it certainly draws you out of your office. You're not slow, and of course you know where $he's going, so you catch up quickly. $He gives you the careful measuring glance of a devoted sex slave who's checking whether $his owner wants to fuck her right now, and correctly decides that that isn't your intent, at least right this minute. Instead, you continue the direction $he was going, and $he follows. "<<Master>>," $he <<say>>s hesitantly, "I hope that wa<<s>> an okay thing for me to do." You assure her it was. "Thank<<s>>, <<Master>>," $he beams, grinning like an idiot. Smiling at her infectious enthusiasm for life, you ask her why $he's so happy this morning. $He looks momentarily perplexed<<if $activeSlave.intelligence > 1>>, not a common look for a slave as smart as her<</if>>. "I don't know! I just woke up thi<<s>> morning feeling really, really good. <<if $activeSlave.intelligence > 1>>I'm sure the fact that I'm benefiting from incredibly advanced medi<<c>>ine ha<<s>> <<s>>omething to do with it; thank you very much for that, <<Master>>. Other than that,<</if>>
+		$His sheer joie de vivre is irresistible, and it certainly draws you out of your office. You're not slow, and of course you know where $he's going, so you catch up quickly. $He gives you the careful measuring glance of a devoted sex slave who's checking whether $his owner wants to fuck her right now, and correctly decides that that isn't your intent, at least right this minute. Instead, you continue the direction $he was going, and $he follows. "<<Master>>," $he <<say>>s hesitantly, "I hope that wa<<s>> an okay thing for me to do." You assure her it was. "Thank<<s>>, <<Master>>," $he beams, grinning like an idiot. Smiling at her infectious enthusiasm for life, you ask her why $he's so happy this morning. $He looks momentarily perplexed<<if $activeSlave.intelligence+$activeSlave.intelligenceImplant > 50>>, not a common look for a slave as smart as her<</if>>. "I don't know! I just woke up thi<<s>> morning feeling really, really good. <<if $activeSlave.intelligence+$activeSlave.intelligenceImplant > 50>>I'm sure the fact that I'm benefiting from incredibly advanced medi<<c>>ine ha<<s>> <<s>>omething to do with it; thank you very much for that, <<Master>>. Other than that,<</if>>
 		I ju<<s>>t feel happy." This has to be some sort of milestone for $him, and for you, and maybe for slavery in general: if $he can be this pleased with life, something must be going right. You walk $him to where $he's going
 		<<switch $activeSlave.assignment>>
 		<<case "whore">>(one of the arcology's nicer streets, where $he'll spend the day selling $his body),
@@ -18486,12 +18549,12 @@ You tell her kindly that you understand, and that $he'll be trained to address t
 <<link "Let her do what $he wants">>
 	<<EventNameDelink $activeSlave>>
 	<<replace "#result">>
-		You tell $him to sit down if $he'd like to. $He looks at you quizzically, <<if $activeSlave.intelligence < 0>>her dim mind slowly <</if>>realizing that you're letting her choose what to do. <<if canTalk($activeSlave)>>
+		You tell $him to sit down if $he'd like to. $He looks at you quizzically, <<if $activeSlave.intelligence+$activeSlave.intelligenceImplant < -15>>her dim mind slowly <</if>>realizing that you're letting her choose what to do. <<if canTalk($activeSlave)>>
 			"Oh, thank you, <<Master>>," $he <<say>>s,
 		<<else>>
 			$He gestures her thanks,
 		<</if>>
-		and then makes a show of deciding. $He <<if $activeSlave.intelligence < 0>>doesn't have to pretend<<else>>cheekily pretends<</if>> to be an airheaded bimbo puzzling over how $he wants to approach a fuck, bouncing
+		and then makes a show of deciding. $He <<if $activeSlave.intelligence+$activeSlave.intelligenceImplant < -15>>doesn't have to pretend<<else>>cheekily pretends<</if>> to be an airheaded bimbo puzzling over how $he wants to approach a fuck, bouncing
 		<<if Math.floor($activeSlave.boobsImplant/$activeSlave.boobs) >= .60>>
 			her fake tits a little,
 		<<elseif $activeSlave.boobs > 4000>>
@@ -19263,7 +19326,7 @@ You tell her kindly that you understand, and that $he'll be trained to address t
 		the lucky winner with a pair of plush lips wrapped around his cock, his hands gripping onto a $activeSlave.hColor-haired head for dear life as $activeSlave.slaveName sucks him dry.
 	<<elseif $activeSlave.face > 60>>
 		the lucky winner staring in awe at the beautiful face of $activeSlave.slaveName, as $he rides him tenderly.
-	<<elseif $activeSlave.intelligence > 1>>
+	<<elseif $activeSlave.intelligence+$activeSlave.intelligenceImplant > 50>>
 		the lucky winner engaged in a lively debate with $activeSlave.slaveName as he takes her from behind.
 	<<else>>
 		the lucky winner taking $activeSlave.slaveName in every position he can think of, which is amusingly not very many at all.
diff --git a/src/uncategorized/RETS.tw b/src/uncategorized/RETS.tw
index 7117133cc45..b21d76b03b2 100644
--- a/src/uncategorized/RETS.tw
+++ b/src/uncategorized/RETS.tw
@@ -613,7 +613,7 @@ $activeSlave.slaveName chuckles into $subSlave.slaveName's ear, crooning,
 	"You poor big bitch. You think all the<<s>>e mu<<s>>cle<<s>> can <<s>>ave you? You're gonna get raped."
 <<elseif $subSlave.weight > 10>>
 	"You fat <<s>>lut. You've got a chubby belly, haven't you? Being fat and ugly won't <<s>>ave you. You're gonna get raped."
-<<elseif $subSlave.intelligenceImplant > 0>>
+<<elseif $subSlave.intelligenceImplant >= 15>>
 	"You book-<<s>>mart <<s>>lut. You think any of the cla<<ss>>e<<s>> you pa<<ss>>ed i<<s>> going to <<s>>ave you from getting raped?"
 <<else>>
 	"You <<s>>tupid <<s>>lut. Too bad you never went to <<s>>chool, maybe you could have learned <<s>>omething and not ended up a<<s>> a fuck <<s>>lave."
diff --git a/src/uncategorized/arcmgmt.tw b/src/uncategorized/arcmgmt.tw
index 090a11f48ae..a1fa76c5cf6 100644
--- a/src/uncategorized/arcmgmt.tw
+++ b/src/uncategorized/arcmgmt.tw
@@ -118,9 +118,9 @@ This week, <<if _flux >= 20>>many<<elseif _flux >= 5>>some<<else>>few to none<</
 			<<else>>
 				''__@@.pink;<<= SlaveFullName($Recruiter)>>@@__'' is able to further boost your immigration campaign from her PR hub office.
 				<<if $propCampaignBoost == 0>>
-					<<set _immigrants += random(2,5+$Recruiter.intelligence+$Recruiter.intelligenceImplant) * $propCampaign>>
+					<<set _immigrants += random(2,5+Math.floor(($Recruiter.intelligence+$Recruiter.intelligenceImplant)/32)) * $propCampaign>>
 				<<else>>
-					<<set _immigrants += random(2,6+$Recruiter.intelligence+$Recruiter.intelligenceImplant) * $propCampaign>>
+					<<set _immigrants += random(2,6+Math.floor(($Recruiter.intelligence+$Recruiter.intelligenceImplant)/32)) * $propCampaign>>
 				<</if>>
 			<</if>>
 		<</if>>
@@ -374,9 +374,9 @@ earning you @@.yellowgreen;<<print cashFormat(_earnings)>>.@@
 		<<else>>
 			''__@@.pink;<<= SlaveFullName($Recruiter)>>@@__'' is able to further boost your self-enslavement campaign from her PR hub office.
 			<<if $propCampaignBoost == 1>>
-				<<set _refugees += random(0,5+$Recruiter.intelligence+$Recruiter.intelligenceImplant)>>
+				<<set _refugees += random(0,5+Math.floor(($Recruiter.intelligence+$Recruiter.intelligenceImplant)/32))>>
 			<<else>>
-				<<set _refugees += random(0,3+$Recruiter.intelligence+$Recruiter.intelligenceImplant)>>
+				<<set _refugees += random(0,3+Math.floor(($Recruiter.intelligence+$Recruiter.intelligenceImplant)/32))>>
 			<</if>>
 		<</if>>
 	<<else>>
diff --git a/src/uncategorized/brothelReport.tw b/src/uncategorized/brothelReport.tw
index 14a140b1174..02a7e9d3223 100644
--- a/src/uncategorized/brothelReport.tw
+++ b/src/uncategorized/brothelReport.tw
@@ -84,11 +84,11 @@
 		She has experience from working for you that helps her in the seedy business of selling other people's bodies for sex.
 		<<set $madamCashBonus += 0.05>>
 	<<else>>
-		<<set $slaves[_FLs].skillMD += random(1,($Madam.intelligence+4)*2)>>
+		<<set $slaves[_FLs].skillMD += random(1,($Madam.intelligence+$Madam.intelligenceImplant)/10)>>
 	<</if>>
-	<<if ($Madam.intelligence > 0)>>
+	<<if ($Madam.intelligence+$Madam.intelligenceImplant > 15)>>
 		She is a clever manager.
-		<<set $madamCashBonus += 0.05*$Madam.intelligence>>
+		<<set $madamCashBonus += 0.05*Math.floor(($Madam.intelligence+$Madam.intelligenceImplant)/32)>>
 	<</if>>
 	<<if ($Madam.dick > 2) && (canPenetrate($Madam))>>
 		Her turgid dick helps her manage the bitches.
diff --git a/src/uncategorized/cellblockReport.tw b/src/uncategorized/cellblockReport.tw
index 051f8cb82b4..fe286c49522 100644
--- a/src/uncategorized/cellblockReport.tw
+++ b/src/uncategorized/cellblockReport.tw
@@ -63,7 +63,7 @@
 		<<set _devBonus++, _trustMalus++, _idleBonus++>>
 		She has experience with detecting security issues and grinding down potential miscreants from working for you, making her more effective.
 	<<else>>
-		<<set $slaves[_FLs].skillWA += random(1,($Wardeness.intelligence+4)*2)>>
+		<<set $slaves[_FLs].skillWA += random(1,($Wardeness.intelligence+$Wardeness.intelligenceImplant)/10)>>
 	<</if>>
 	<<if $Wardeness.fetish == "sadist">>
 		She uses the prisoners to gratify her sadism, terrifying them and quickly breaking their resistance.
diff --git a/src/uncategorized/clinicReport.tw b/src/uncategorized/clinicReport.tw
index 0fd1a8f962d..761f9f1df5c 100644
--- a/src/uncategorized/clinicReport.tw
+++ b/src/uncategorized/clinicReport.tw
@@ -56,7 +56,7 @@
 		She has experience with medicine from working for you, and can often recognize conditions before even the medical scanners can.
 		<<set _idleBonus++, _healthBonus++>>
 	<<else>>
-		<<set $slaves[_FLs].skillNU += random(1,($Nurse.intelligence+4)*2)>>
+		<<set $slaves[_FLs].skillNU += random(1,($Nurse.intelligence+$Nurse.intelligenceImplant)/10)>>
 	<</if>>
 	<<if ($Nurse.fetish == "dom")>>
 		She raps out commands with the confidence of long and partly sexual experience, so patients are inclined to follow even unpleasant medical instructions.
@@ -66,7 +66,7 @@
 		She's strong enough to gently but firmly restrain resistant slaves, allowing her to be sparing with the inescapable but less healthy restraints.
 		<<set _idleBonus++>>
 	<</if>>
-	<<if ($Nurse.intelligence > 1)>>
+	<<if ($Nurse.intelligence+$Nurse.intelligenceImplant > 50)>>
 		The diagnostic equipment is state-of-the-art, but she's smart and perceptive enough that on occasion, she can add meaningfully to its medical scans.
 		<<set _idleBonus++, _healthBonus++>>
 	<</if>>
diff --git a/src/uncategorized/clubReport.tw b/src/uncategorized/clubReport.tw
index cf7d4e3e89b..83f4167cdb4 100644
--- a/src/uncategorized/clubReport.tw
+++ b/src/uncategorized/clubReport.tw
@@ -79,9 +79,9 @@
 		Her toned body helps her lead her fellow club girls by letting her dance all night.
 		<<set $DJRepBonus += 0.05>>
 	<</if>>
-	<<if ($DJ.intelligence > 0)>>
+	<<if ($DJ.intelligence+$DJ.intelligenceImplant > 15)>>
 		She's smart enough to make an actual contribution to the music, greatly enhancing the entire experience.
-		<<set $DJRepBonus += 0.05*$DJ.intelligence>>
+		<<set $DJRepBonus += 0.05*Math.floor(($DJ.intelligence+$DJ.intelligenceImplant)/32)>>
 	<</if>>
 	<<if ($DJ.face > 95)>>
 		Her great beauty is a further draw, even when she's in her DJ booth, but especially when she comes out to dance.
@@ -94,7 +94,7 @@
 		She has musical experience from working for you, giving her tracks actual depth.
 		<<set $DJRepBonus += 0.05>>
 	<<else>>
-		<<set $slaves[_FLs].skillDJ += random(1,($DJ.intelligence+4)*2)>>
+		<<set $slaves[_FLs].skillDJ += random(1,($DJ.intelligence+$DJ.intelligenceImplant)/10)>>
 	<</if>>
 	<<if (_DL < 10)>>
 		<<set $slavesGettingHelp = 0>>
diff --git a/src/uncategorized/dairyReport.tw b/src/uncategorized/dairyReport.tw
index 8d20fa6015d..989bfa1ae26 100644
--- a/src/uncategorized/dairyReport.tw
+++ b/src/uncategorized/dairyReport.tw
@@ -161,7 +161,7 @@
 		<<set $milkmaidHealthBonus++>>
 		She has experience dealing with milk animals from working for you.
 	<<else>>
-		<<set $slaves[_FLs].skillMM += random(1,($Milkmaid.intelligence+4)*2)>>
+		<<set $slaves[_FLs].skillMM += random(1,($Milkmaid.intelligence+$Milkmaid.intelligenceImplant)/10)>>
 	<</if>>
 	<<if ($dairyStimulatorsSetting < 2) && ($Milkmaid.dick > 4) && (canPenetrate($Milkmaid))>>
 		<<for _dI = 0; _dI < _DL; _dI++>>
@@ -704,8 +704,10 @@
 					<<set $slaves[$i].analSkill -= 10, _skillsLost++>>
 				<<elseif ($slaves[$i].career != "a bioreactor")>>
 					<<set $slaves[$i].career = "a bioreactor", _careerForgotten++>>
-				<<elseif ($slaves[$i].intelligence > -1)>>
-					<<set $slaves[$i].intelligence--, _intelligenceLost++>>
+				<<elseif ($slaves[$i].intelligenceImplant > 0)>>
+					<<set $slaves[$i].intelligenceImplant -= Math.clamp($slaves[$i].intelligenceImplant-5, 0, 30), _skillsLost++>>
+				<<elseif ($slaves[$i].intelligence >= -15)>>
+					<<set $slaves[$i].intelligence -= 5, _intelligenceLost++>>
 				<<elseif ($slaves[$i].devotion >= -20)>>
 					<<set $slaves[$i].devotion -= 10>>
 				<<elseif ($slaves[$i].trust >= -20)>>
@@ -714,8 +716,11 @@
 					<<set $slaves[$i].whoreSkill -= 10, _skillsLost++>>
 				<<elseif ($slaves[$i].entertainSkill > 0)>>
 					<<set $slaves[$i].entertainSkill -= 10, _skillsLost++>>
-				<<elseif ($slaves[$i].intelligence > -2)>>
-					<<set $slaves[$i].intelligence--, _stupidified++>>
+				<<elseif ($slaves[$i].intelligence >= -50)>>
+					<<set $slaves[$i].intelligence -= 5>>
+					<<if $slaves[$i].intelligence < -50>>
+						<<set _stupidified++>>
+					<</if>>
 				<<elseif ($slaves[$i].fetish != "mindbroken")>>
 					<<set $slaves[$i].fetish = "mindbroken", _mindbroken++>>
 				<</if>>
@@ -749,8 +754,10 @@
 				<<set $slaves[$i].analSkill -= 10, _skillsLost++>>
 			<<elseif ($slaves[$i].career != "a bioreactor")>>
 				<<set $slaves[$i].career = "a bioreactor", _careerForgotten++>>
-			<<elseif ($slaves[$i].intelligence > -1)>>
-				<<set $slaves[$i].intelligence--, $intelligenceLost++>>
+			<<elseif ($slaves[$i].intelligenceImplant > 0)>>
+				<<set $slaves[$i].intelligenceImplant -= Math.clamp($slaves[$i].intelligenceImplant-5, 0, 30), _skillsLost++>>
+			<<elseif ($slaves[$i].intelligence >= -15)>>
+				<<set $slaves[$i].intelligence -= 5, $intelligenceLost++>>
 			<<elseif ($slaves[$i].devotion >= -20)>>
 				<<set $slaves[$i].devotion -= 8>>
 			<<elseif ($slaves[$i].trust >= -20)>>
@@ -759,8 +766,11 @@
 				<<set $slaves[$i].whoreSkill -= 10, _skillsLost++>>
 			<<elseif ($slaves[$i].entertainSkill >= 20)>>
 				<<set $slaves[$i].entertainSkill -= 10, _skillsLost++>>
-			<<elseif ($slaves[$i].intelligence > -2)>>
-				<<set $slaves[$i].intelligence--, _stupidified++>>
+			<<elseif ($slaves[$i].intelligence >= -50)>>
+				<<set $slaves[$i].intelligence -= 5>>
+				<<if $slaves[$i].intelligence < -50>>
+					<<set _stupidified++>>
+				<</if>>
 			<<elseif ($slaves[$i].fetish != "mindbroken")>>
 				<<set $slaves[$i].fetish = "mindbroken", _mindbroken++>>
 			<</if>>
diff --git a/src/uncategorized/generateXXSlave.tw b/src/uncategorized/generateXXSlave.tw
index f9ede61e68e..d37a79497c0 100644
--- a/src/uncategorized/generateXXSlave.tw
+++ b/src/uncategorized/generateXXSlave.tw
@@ -30,7 +30,7 @@
 <<set $activeSlave.intelligence = random(-100,100)>>
 <<if random(10,110) < $activeSlave.intelligence>>
 	<<set $activeSlave.intelligenceImplant = 15>>
-	<<if <<if random(50,150) < $activeSlave.intelligence>>
+	<<if random(50,150) < $activeSlave.intelligence>>
 		<<set $activeSlave.intelligenceImplant = 30>>
 	<</if>>
 <</if>>
diff --git a/src/uncategorized/generateXYSlave.tw b/src/uncategorized/generateXYSlave.tw
index 523c7ad4d3b..c2399f4df28 100644
--- a/src/uncategorized/generateXYSlave.tw
+++ b/src/uncategorized/generateXYSlave.tw
@@ -29,7 +29,7 @@
 <<set $activeSlave.intelligence = random(-100,100)>>
 <<if random(10,110) < $activeSlave.intelligence>>
 	<<set $activeSlave.intelligenceImplant = 15>>
-	<<if <<if random(50,150) < $activeSlave.intelligence>>
+	<<if random(50,150) < $activeSlave.intelligence>>
 		<<set $activeSlave.intelligenceImplant = 30>>
 	<</if>>
 <</if>>
diff --git a/src/uncategorized/longSlaveDescription.tw b/src/uncategorized/longSlaveDescription.tw
index cc014aba83e..2f6ad5725ad 100644
--- a/src/uncategorized/longSlaveDescription.tw
+++ b/src/uncategorized/longSlaveDescription.tw
@@ -948,25 +948,37 @@ is
 <<else>> /* FUCKDOLL MENTAL REPORT */
 
 	It's impossible to tell what intelligence or inclinations a fuckdoll might have by looking at it, but the most recent records indicate that this one is
-	<<if ($activeSlave.intelligence >= 3)>>
+	<<if ($activeSlave.intelligence+$activeSlave.intelligenceImplant > 95)>>
 		@@.deepskyblue;brilliant@@
-	<<elseif ($activeSlave.intelligence >= 2)>>
+	<<elseif ($activeSlave.intelligence+$activeSlave.intelligenceImplant > 50)>>
 		@@.deepskyblue;highly intelligent@@
-	<<elseif ($activeSlave.intelligence >= 1)>>
+	<<elseif ($activeSlave.intelligence+$activeSlave.intelligenceImplant > 15)>>
 		of @@.deepskyblue;above average intelligence@@
-	<<elseif ($activeSlave.intelligence >= 0)>>
+	<<elseif ($activeSlave.intelligence+$activeSlave.intelligenceImplant >= -15)>>
 		of average intelligence
-	<<elseif ($activeSlave.intelligence >= -1)>>
+	<<elseif ($activeSlave.intelligence+$activeSlave.intelligenceImplant >= -50)>>
 		of @@.orangered;below average intelligence@@
-	<<elseif ($activeSlave.intelligence >= -2)>>
+	<<elseif ($activeSlave.intelligence+$activeSlave.intelligenceImplant >= -95)>>
 		@@.orangered;very stupid@@
-	<<elseif ($activeSlave.intelligence >= -3)>>
+	<<elseif ($activeSlave.intelligence+$activeSlave.intelligenceImplant >= -100)>>
 		@@.orangered;a moron@@
 	<</if>>
-	<<if ($activeSlave.intelligence >= 0)>>
-		<<if ($activeSlave.intelligenceImplant != 1)>>but is uneducated<<else>>and is educated<</if>>.
+	<<if ($activeSlave.intelligence >= -15)>>
+		<<if ($activeSlave.intelligenceImplant < 15)>>
+			but is uneducated.
+		<<elseif $activeSlave.intelligenceImplant >= 30>>
+			and is well educated.
+		<<else>>
+			and is educated.
+		<</if>>
 	<<else>>
-		<<if ($activeSlave.intelligenceImplant != 1)>>and is uneducated<<else>>but is educated<</if>>.
+		<<if ($activeSlave.intelligenceImplant < 15)>>
+			and is uneducated.
+		<<elseif $activeSlave.intelligenceImplant >= 30>>
+			but is well educated.
+		<<else>>
+			but is educated.
+		<</if>>
 	<</if>>
 
 	<<if ($activeSlave.behavioralFlaw != "none") ||($activeSlave.sexualFlaw != "none") ||($activeSlave.behavioralQuirk != "none") ||($activeSlave.sexualQuirk != "none")>>
diff --git a/src/uncategorized/remoteSurgery.tw b/src/uncategorized/remoteSurgery.tw
index 6b46ee39178..832936159ed 100644
--- a/src/uncategorized/remoteSurgery.tw
+++ b/src/uncategorized/remoteSurgery.tw
@@ -1125,13 +1125,20 @@ Apply a retro-virus treatment:
 Deal with $his hair:
 
 <br>&nbsp;&nbsp;&nbsp;&nbsp;
-<<if $activeSlave.bald == 0 || $activeSlave.hStyle != "bald" || $activeSlave.eyebrowHStyle != "hairless">>
+<<if $activeSlave.bald == 0 && $activeSlave.hStyle != "bald">>
 	$He naturally grows $activeSlave.origHColor hair from $his head.
 	[["Surgically remove " + $his + " ability to grow hair"|Surgery Degradation][$cash -= $surgeryCost,$activeSlave.bald = 1,$surgeryType = "hair removal"]]
 <<else>>
 	$He is no longer capable of growing hair on $his head.
 <</if>>
 <br>&nbsp;&nbsp;&nbsp;&nbsp;
+<<if ($activeSlave.eyebrowStyle != "bald" && $activeSlave.eyebrowStyle != "hairless")>>
+	$He has $activeSlave.origHColor eyebrows.
+	[["Surgically remove " + $his + " ability to grow eyebrows"|Surgery Degradation][$cash -= $surgeryCost,$surgeryType = "eyebrow removal"]]
+<<else>>
+	$He is no longer capable of growing eyebrow hair.
+<</if>>
+<br>&nbsp;&nbsp;&nbsp;&nbsp;
 <<if ($activeSlave.underArmHStyle != "bald" && $activeSlave.underArmHStyle != "hairless") || ($activeSlave.pubicHStyle != "bald" && $activeSlave.pubicHStyle != "hairless")>>
 	$He <<if $activeSlave.physicalAge >= 12>>naturally grows<<else>>will someday grow<</if>> $activeSlave.origHColor body hair.
 	[["Surgically remove " + $his + " ability to grow body hair"|Surgery Degradation][$cash -= $surgeryCost,$surgeryType = "body hair removal"]]
diff --git a/src/uncategorized/saBeYourHeadGirl.tw b/src/uncategorized/saBeYourHeadGirl.tw
index 1adb927b066..a18fd46af5d 100644
--- a/src/uncategorized/saBeYourHeadGirl.tw
+++ b/src/uncategorized/saBeYourHeadGirl.tw
@@ -160,7 +160,7 @@
 <</if>>
 
 <<if $slaves[$i].prestige == 0>>
-<<if $HGTimeInGrade+($slaves[$i].intelligence*5)+($slaves[$i].devotion/10)+($slaves[$i].trust/10) > 50>>
+<<if $HGTimeInGrade+(($slaves[$i].intelligence+$slaves[$i].intelligenceImplant)/10)+($slaves[$i].devotion/10)+($slaves[$i].trust/10) > 50>>
 	$slaves[$i].slaveName has rendered such long and competent service as your Head Girl that many of your citizens have come to rely on her word as an extension of yours, trusting that if she does something, it's because you trust her to. @@.green;She has become prestigious on her own merits, a remarkable achievement for a slave!@@
 	<<set $slaves[$i].prestige += 1>>
 	<<set $slaves[$i].prestigeDesc = "Many citizens respect her long and able service as your Head Girl.">>
@@ -168,5 +168,5 @@
 <</if>>
 
 <<if !setup.HGCareers.includes($slaves[$i].career) && $slaves[$i].skillWA < $masteredXP>>
-	<<set $slaves[$i].skillHG += random(1,($slaves[$i].intelligence+4)*2)>>
+	<<set $slaves[$i].skillHG += random(1,($slaves[$i].intelligence+$slaves[$i].intelligenceImplant)/10)>>
 <</if>>
diff --git a/src/uncategorized/saChoosesOwnJob.tw b/src/uncategorized/saChoosesOwnJob.tw
index 2bff9cda366..70a86c4d097 100644
--- a/src/uncategorized/saChoosesOwnJob.tw
+++ b/src/uncategorized/saChoosesOwnJob.tw
@@ -28,7 +28,7 @@
 			<<= removeJob($slaves[$i], $slaves[$i].assignment)>>
 		<</if>>
 
-	<<elseif ($slaves[$i].intelligenceImplant != 1)>>
+	<<elseif ($slaves[$i].intelligenceImplant < 15)>>
 		<<if ($universalRulesAssignsSelfFacility == 1) && ($schoolroom > $schoolroomSlaves)>>
 			<<set $slaves[$i].choosesOwnAssignmentText += " is uneducated, so $he sits $himself down in $schoolroomName.">>
 			<<= assignJob($slaves[$i], "learn in the schoolroom")>>
diff --git a/src/uncategorized/saDevotion.tw b/src/uncategorized/saDevotion.tw
index d25c1f8502c..4efccbe2dc4 100644
--- a/src/uncategorized/saDevotion.tw
+++ b/src/uncategorized/saDevotion.tw
@@ -97,8 +97,7 @@
 	<</if>>
 <</if>>
 
-<<if $slaves[$i].intelligence != 0>>
-<<if $slaves[$i].intelligence >= 3>>
+<<if $slaves[$i].intelligence+$slaves[$i].intelligenceImplant > 95>>
 	<<if Array.isArray($personalAttention) && $personalAttention.findIndex(function(s) { return s.ID == $slaves[$i].ID; }) != -1>>
 		$slaves[$i].slaveName's @@.deepskyblue;brilliant mind@@ strongly resists slavery, but since you are giving $him personal attention you are able to compensate for $his genius.
 	<<else>>
@@ -110,7 +109,7 @@
 			<<set $slaves[$i].trust -= 2>>
 		<</if>>
 	<</if>>
-<<elseif $slaves[$i].intelligence >= 2>>
+<<elseif $slaves[$i].intelligence+$slaves[$i].intelligenceImplant > 50>>
 	<<if Array.isArray($personalAttention) && $personalAttention.findIndex(function(s) { return s.ID == $slaves[$i].ID; }) != -1>>
 		$slaves[$i].slaveName's @@.deepskyblue;highly acute mind@@ naturally resists slavery, but since you are giving $him personal attention you are able to compensate for $his intelligence.
 	<<else>>
@@ -122,7 +121,7 @@
 			<<set $slaves[$i].trust -= 2>>
 		<</if>>
 	<</if>>
-<<elseif $slaves[$i].intelligence >= 1>>
+<<elseif $slaves[$i].intelligence+$slaves[$i].intelligenceImplant > 15>>
 	<<if Array.isArray($personalAttention) && $personalAttention.findIndex(function(s) { return s.ID == $slaves[$i].ID; }) != -1>>
 		$slaves[$i].slaveName's @@.deepskyblue;intelligent mind@@ naturally resists slavery, but since you are giving $him personal attention you are able to compensate for $his cleverness.
 	<<else>>
@@ -133,17 +132,16 @@
 			<<set $slaves[$i].devotion -= 2>>
 		<</if>>
 	<</if>>
-<<elseif $slaves[$i].intelligence <= -3>>
+<<elseif $slaves[$i].intelligence+$slaves[$i].intelligenceImplant < -95>>
 	$slaves[$i].slaveName's @@.orangered;moronic mind@@ naturally @@.hotpink;accepts@@ slavery, and $he's imbecile enough to instinctively @@.mediumaquamarine;trust you@@ to know what's best for $him.
 	<<set $slaves[$i].devotion += 2, $slaves[$i].trust += 2>>
-<<elseif $slaves[$i].intelligence <= -2>>
+<<elseif $slaves[$i].intelligence+$slaves[$i].intelligenceImplant < -50>>
 	$slaves[$i].slaveName's @@.orangered;idiotic mind@@ naturally @@.hotpink;accepts@@ slavery, and $he's stupid enough to instinctively @@.mediumaquamarine;trust you@@ to know what's best.
 	<<set $slaves[$i].devotion += 1, $slaves[$i].trust += 1>>
-<<elseif $slaves[$i].intelligence <= -1>>
+<<elseif $slaves[$i].intelligence+$slaves[$i].intelligenceImplant < -15>>
 	$slaves[$i].slaveName's @@.orangered;unintelligent mind@@ naturally @@.hotpink;accepts@@ slavery.
 	<<set $slaves[$i].devotion += 1>>
 <</if>>
-<</if>>
 
 <</if>>
 
diff --git a/src/uncategorized/saDrugs.tw b/src/uncategorized/saDrugs.tw
index f241c619632..80a74c0ccb8 100644
--- a/src/uncategorized/saDrugs.tw
+++ b/src/uncategorized/saDrugs.tw
@@ -18,11 +18,11 @@
 	<<if ($slaves[$i].fetish != "mindbroken")>>
 		The psychosuppressants @@.hotpink;reduce $his ability to question $his role@@ or @@.mediumaquamarine;think independently.@@
 		<<set $slaves[$i].devotion += 4, $slaves[$i].trust += 4>>
-		<<if ($slaves[$i].intelligence > -2)>>
+		<<if ($slaves[$i].intelligence >= -95)>>
 			They @@.orange;negatively impact $his intelligence,@@ as well.
-			<<set $slaves[$i].intelligence -= 1>>
+			<<set $slaves[$i].intelligence -= 5>>
 		<</if>>
-		<<if $slaves[$i].fuckdoll == 0 && $slaves[$i].intelligence < 0 && $slaves[$i].fetishStrength <= 60 && $slaves[$i].fetish != "submissive" && fetishChangeChance($slaves[$i]) > random(0,100)>>
+		<<if $slaves[$i].fuckdoll == 0 && $slaves[$i].intelligence < -15 && $slaves[$i].fetishStrength <= 60 && $slaves[$i].fetish != "submissive" && fetishChangeChance($slaves[$i]) > random(0,100)>>
 			The willingness to @@.lightcoral;submit@@ created by the drugs invades $his sexuality, too.
 			<<set $slaves[$i].fetish = "submissive", $slaves[$i].fetishKnown = 1, $slaves[$i].fetishStrength = 10>>
 		<</if>>
@@ -1326,8 +1326,8 @@
 		<<set $slaves[$i].balls = Math.clamp($slaves[$i].balls,0,2), $slaves[$i].drugs = "no drugs">>
 	<</if>>
 <<case "psychosuppressants">>
-	<<if ($slaves[$i].intelligence <= -2)>>
-	$He is so moronic that drug treatment can't really make $him more willing to obey others than $he already is. @@.yellow;$His drug regimen has been ended.@@
-	<<set $slaves[$i].drugs = "no drugs">>
+	<<if ($slaves[$i].intelligence < -95)>>
+		$He is so moronic that drug treatment can't really make $him more willing to obey others than $he already is. @@.yellow;$His drug regimen has been ended.@@
+		<<set $slaves[$i].drugs = "no drugs">>
 	<</if>>
 <</switch>>
diff --git a/src/uncategorized/saGuardsYou.tw b/src/uncategorized/saGuardsYou.tw
index 4bceee00454..4a266666b0e 100644
--- a/src/uncategorized/saGuardsYou.tw
+++ b/src/uncategorized/saGuardsYou.tw
@@ -17,7 +17,7 @@ carries arms in your defense.
 <<elseif $slaves[$i].skillBG >= $masteredXP>>
 	$He has experience in personal defense from working for you.
 <<else>>
-	<<set $slaves[$i].skillBG += random(1,($slaves[$i].intelligence+4)*2)>>
+	<<set $slaves[$i].skillBG += random(1,($slaves[$i].intelligence+$slaves[$i].intelligenceImplant)/10)>>
 <</if>>
 
 <<if ($slaves[$i].muscles > 30) && ($slaves[$i].muscles <= 95)>>
@@ -145,7 +145,7 @@ carries arms in your defense.
 	$His sharp teeth add nothing to $his actual effectiveness, but they're certainly intimidating.
 <</if>>
 
-<<if ($slaves[$i].combatSkill < 1) && (random(1,100) < 50+($slaves[$i].intelligence*20))>>
+<<if ($slaves[$i].combatSkill < 1) && (random(-100,150) <= ($slaves[$i].intelligence+$slaves[$i].intelligenceImplant))>>
 	After some experience guarding you, and diligent practice in the armory, @@.green;$his combat skills increase.@@
 	<<set $slaves[$i].combatSkill += 1>>
 <<elseif $slaves[$i].combatSkill >= 1>>
@@ -178,7 +178,7 @@ Being continually trusted with your life @@.hotpink;increases $his devotion to y
 	<<set $slaves[$i].devotion += 1>>
 <</if>>
 
-<<if $bodyguardTrains == 1 && $slaves[$i].devotion > 95 && $slaves[$i].trust > 50 && $slaves[$i].combatSkill > 0 && $slaves[$i].intelligence > 0>>
+<<if $bodyguardTrains == 1 && $slaves[$i].devotion > 95 && $slaves[$i].trust > 50 && $slaves[$i].combatSkill > 0 && $slaves[$i].intelligence+$slaves[$i].intelligenceImplant > 15>>
 	$He's confident in $his martial skills, but smart enough to know that $he isn't immortal, and devoted enough to worry about who will protect you should $he die.
 	<<set _successorCandidates = $slaves.filter( function(s) { return (s.assignmentVisible == 1 || s.assignment == "be your Concubine" || s.assignment == "be the Wardeness" || s.assignment == "be your Head Girl" || s.assignment == "work as a servant" || s.assignment == "serve in the master suite") && bodyguardSuccessorEligible(s); } )>>
 	<<set _combatSkilled = _successorCandidates.filter( function(s) { return s.combatSkill > 0; })>>
@@ -204,7 +204,7 @@ Being continually trusted with your life @@.hotpink;increases $his devotion to y
 				$He does $his best to train $Concubine.slaveName whenever $he can, hoping that your Concubine can be made capable of stepping into $his place.
 				<<if $Concubine.boobs >= 8000 || $Concubine.butt >= 10 || $Concubine.belly >= 5000 || $Concubine.balls >= 10 || $Concubine.dick >= 10 || $Concubine.muscles < 0 || $Concubine.weight >= 100>>
 					$His body is poorly suited for combat, but $he can learn to work around it with enough effort.
-					<<set _flawedTrainee = either(0,0,0,1,1,2)>>
+					<<set _flawedTrainee = random(0,50)>>
 				<</if>>
 				<<set $subSlave = $Concubine>>
 			<</if>>
@@ -222,7 +222,7 @@ Being continually trusted with your life @@.hotpink;increases $his devotion to y
 			<</if>>
 		<</if>>
 		<<if def $subSlave>>
-			<<if ($slaves[$i].intelligence + $slaves[$i].intelligenceImplant - _flawedTrainee) > random(1,10)>>
+			<<if ($slaves[$i].intelligence + $slaves[$i].intelligenceImplant - _flawedTrainee) > random(1,500)>>
 				By the end of the week, $he is satisfied that $subSlave.slaveName @@.green;has the combat skill@@ to contribute to your defense.
 				<<set _sgy = $slaveIndices[$subSlave.ID]>>
 				<<set $slaves[_sgy].combatSkill = 1>>
diff --git a/src/uncategorized/saLongTermEffects.tw b/src/uncategorized/saLongTermEffects.tw
index b1a3597d487..3829289cc75 100644
--- a/src/uncategorized/saLongTermEffects.tw
+++ b/src/uncategorized/saLongTermEffects.tw
@@ -74,9 +74,9 @@
 				$He @@.coral;no longer retains any sexual preferences@@ at all. $He just wants to be penetrated.
 				<<set $slaves[$i].fetish = "none", $slaves[$i].fetishStrength = 0>>
 			<</if>>
-			<<if $slaves[$i].intelligence > 1>>
+			<<if $slaves[$i].intelligence+$slaves[$i].intelligenceImplant > 50>>
 				$He was once highly intelligent, but total concentration of all $his mental abilities on simple tonal commands @@.red;dulls $his intelligence.@@
-				<<set $slaves[$i].intelligence = 1>>
+				<<set $slaves[$i].intelligence -= 30>>
 			<</if>>
 		<<elseif $slaves[$i].fuckdoll <= 85>>
 			This week $he @@.green;learns some more advanced commands@@ from $his suit. <<if $slaves[$i].amp == 1>>If $his limbless torso is placed atop a dick and a command is given, $he is to do $his best to bounce on it.<<else>>$He learns a special command, on which $he is to slowly squat down, impaling $himself on any phallus beneath $him. Once $his hole is filled, $he is to bounce up and down, using $his hole to milk the phallus.<</if>>
@@ -88,11 +88,19 @@
 				$He @@.red;cannot remember prostitution@@ at all. $He can barely remember anything but being fucked.
 				<<set $slaves[$i].whoreSkill = 15>>
 			<</if>>
+			<<if $slaves[$i].intelligence+$slaves[$i].intelligenceImplant > 15>>
+				$His @@.red;mind steadily degrades@@ under the stress of this treatment.
+				<<set $slaves[$i].intelligence -= 40>>
+			<</if>>
+			<<if $slaves[$i].intelligenceImplant > 0>>
+				An education holds no bearing for $his new skillset, so it @@.red;wastes away.@@
+				<<set $slaves[$i].intelligenceImplant = 0>>
+			<</if>>
 		<<elseif $slaves[$i].fuckdoll <= 95>>
 			This week $he @@.green;begins $his final adaptation@@ into a perfect living sex toy. $His suit starts to actively punish any detectable mental activity when $him is not obeying commands or being used.
-			<<if $slaves[$i].intelligence > -1>>
+			<<if  $slaves[$i].intelligence > -50>>
 				$He was once reasonably intelligent, but the incredible stress of this treatment @@.red;suppresses $his ability to think coherently.@@
-				<<set $slaves[$i].intelligence = -1>>
+				<<set $slaves[$i].intelligence = -50>>
 			<</if>>
 		<</if>>
 		<<set $slaves[$i].fuckdoll = Math.clamp($slaves[$i].fuckdoll+10,0,100)>>
@@ -1083,7 +1091,7 @@
  /* END CLOTHES AND ACCESSORIES */
 
 <<if $slaves[$i].fetish == "mindbroken">>
-	<<set $slaves[$i].fetishStrength = 10, $slaves[$i].attrXY = 50, $slaves[$i].attrXX = 50, $slaves[$i].attrKnown = 1, $slaves[$i].devotion = 40, $slaves[$i].trust = -40, $slaves[$i].vaginalSkill = Math.clamp($slaves[$i].vaginalSkill,0,15), $slaves[$i].oralSkill = Math.clamp($slaves[$i].oralSkill,0,15), $slaves[$i].analSkill = Math.clamp($slaves[$i].analSkill,0,15), $slaves[$i].combatSkill = 0, $slaves[$i].whoreSkill = 0, $slaves[$i].entertainSkill = 0, $slaves[$i].intelligence = -2, $slaves[$i].intelligenceImplant = 0, $slaves[$i].sexualFlaw = "none", $slaves[$i].sexualQuirk = "none", $slaves[$i].behavioralFlaw = "none", $slaves[$i].behavioralQuirk = "none">>
+	<<set $slaves[$i].fetishStrength = 10, $slaves[$i].attrXY = 50, $slaves[$i].attrXX = 50, $slaves[$i].attrKnown = 1, $slaves[$i].devotion = 40, $slaves[$i].trust = -40, $slaves[$i].vaginalSkill = Math.clamp($slaves[$i].vaginalSkill,0,15), $slaves[$i].oralSkill = Math.clamp($slaves[$i].oralSkill,0,15), $slaves[$i].analSkill = Math.clamp($slaves[$i].analSkill,0,15), $slaves[$i].combatSkill = 0, $slaves[$i].whoreSkill = 0, $slaves[$i].entertainSkill = 0, $slaves[$i].intelligence = -75, $slaves[$i].intelligenceImplant = 0, $slaves[$i].sexualFlaw = "none", $slaves[$i].sexualQuirk = "none", $slaves[$i].behavioralFlaw = "none", $slaves[$i].behavioralQuirk = "none">>
 <<else>>
 	<<if $slaves[$i].fuckdoll == 0>>
 
@@ -5388,10 +5396,10 @@
 		<<if ($slaves[$i].inducedNCS > 0) && ($slaves[$i].visualAge <= $potencyAge) && ($slaves[$i].physicalAge >= $potencyAge)>>
 			Society @@.green;approves@@ of you keeping $slaves[$i].slaveName perpetually young and innocent looking so you can keep taking care of $him; this advances paternalistic ideals.
 			<<FSChangePorn "Paternalist" 1>>
-		<<elseif ($slaves[$i].intelligenceImplant > 0) && ($slaves[$i].fetish != "mindbroken")>>
+		<<elseif ($slaves[$i].intelligenceImplant >= 15) && ($slaves[$i].fetish != "mindbroken")>>
 			Society @@.green;approves@@ of $slaves[$i].slaveName being properly educated; this advances ideas about slave improvement.
 			<<FSChangePorn "Paternalist" 1>>
-		<<elseif ($slaves[$i].intelligenceImplant == 0) && ($slaves[$i].intelligence < 0) && ($slaves[$i].fetish != "mindbroken")>>
+		<<elseif ($slaves[$i].intelligenceImplant < 15) && ($slaves[$i].intelligence+$slaves[$i].intelligenceImplant < -15) && ($slaves[$i].fetish != "mindbroken")>>
 			Society @@.red;disapproves@@ of $slaves[$i].slaveName being stupid and uneducated; this holds back ideas about slave improvement.
 			<<FSChangePorn "Paternalist" -1>>
 		<</if>>
@@ -6006,7 +6014,7 @@
 		<<if $slaves[$i].fetish != "mindbroken">>
 			<<if $slaves[$i].devotion <= 20>>
 				$His mouth full of orthodontia is quite uncomfortable,
-				<<if $slaves[$i].intelligence > 0>>
+				<<if $slaves[$i].intelligence+$slaves[$i].intelligenceImplant > 15>>
 					but $he has the presence of mind to know that it's for $his own good, and $he doesn't blame you for it.
 				<<else>>
 					and $he's stupid enough to @@.mediumorchid;blame you@@ for the discomfort.
@@ -7066,9 +7074,9 @@
 				breath
 			<</if>>
 			feels like it may be $his last. $He is @@.gold;terrified@@ that at any moment $his body may fail causing $him to burst.
-			<<if $slaves[$i].pregControl == "slow gestation" && $slaves[$i].intelligence > -2>>
+			<<if $slaves[$i].pregControl == "slow gestation" && $slaves[$i].intelligence+$slaves[$i].intelligenceImplant >= -50>>
 				$His slowed gestation rate gives $his body more time to adapt to $his gravidity, but given $his situation, it just means more suffering.
-				<<set $slaves[$i].devotion -= 25, $slaves[$i].trust -= 20>>
+				<<set $slaves[$i].devotion -= 15, $slaves[$i].trust -= 20>>
 			<<else>>
 				<<set $slaves[$i].devotion -= 20, $slaves[$i].trust -= 20>>
 			<</if>>
@@ -7101,7 +7109,7 @@
 			<<else>>
 				will become of $him.
 			<</if>>
-			<<if $slaves[$i].pregControl == "slow gestation" && $slaves[$i].intelligence > -2>>
+			<<if $slaves[$i].pregControl == "slow gestation" && $slaves[$i].intelligence+$slaves[$i].intelligenceImplant >= -50>>
 				$His slowed gestation rate gives $his body more time to adapt to $his gravidity, but given $his situation, it isn't very comforting.
 				<<set $slaves[$i].devotion -= 7, $slaves[$i].trust -= 10>>
 			<<else>>
@@ -7130,7 +7138,7 @@
 			<<else>>
 				whenever $he is forced to move.
 			<</if>>
-			<<if $slaves[$i].pregControl == "slow gestation" && $slaves[$i].intelligence > -2>>
+			<<if $slaves[$i].pregControl == "slow gestation" && $slaves[$i].intelligence+$slaves[$i].intelligenceImplant >= -50>>
 				$His slowed gestation rate gives $his body more time to adapt to $his gravidity, easing some of $his worries.
 				<<set $slaves[$i].devotion -= 3>>
 			<<else>>
@@ -7148,7 +7156,7 @@
 			Such discomforts are meaningless to $his broken mind.
 		<<else>>
 			$He is in constant @@.mediumorchid;discomfort@@ and can't wait for these children to be born.
-			<<if $slaves[$i].pregControl == "slow gestation" && $slaves[$i].intelligence > -2>>
+			<<if $slaves[$i].pregControl == "slow gestation" && $slaves[$i].intelligence+$slaves[$i].intelligenceImplant >= -50>>
 				$His slowed gestation rate gives $his body more time to adapt to $his gravidity, easing some of $his worries.
 				<<set $slaves[$i].devotion -= 1>>
 			<<else>>
@@ -7949,13 +7957,13 @@
 
 <<if ($slaves[$i].accent > 0) && ($slaves[$i].fetish != "mindbroken")>>
 	<<if $slaves[$i].speechRules == "restrictive">>
-		<<set _minweeks = 30 - ($slaves[$i].intelligence * 5)>>
+		<<set _minweeks = 30 - Math.trunc(($slaves[$i].intelligence+$slaves[$i].intelligenceImplant)/10)>>
 	<<elseif $slaves[$i].speechRules == "accent elimination">>
-		<<set _minweeks = 15 - ($slaves[$i].intelligence * 5)>>
+		<<set _minweeks = 15 - Math.trunc(($slaves[$i].intelligence+$slaves[$i].intelligenceImplant)/10)>>
 	<<elseif $slaves[$i].speechRules == "language lessons">>
-		<<set _minweeks = 10 - ($slaves[$i].intelligence * 5)>>
+		<<set _minweeks = 10 - Math.trunc(($slaves[$i].intelligence+$slaves[$i].intelligenceImplant)/10)>>
 	<<else>>
-		<<set _minweeks = 20 - ($slaves[$i].intelligence * 5)>>
+		<<set _minweeks = 20 - Math.trunc(($slaves[$i].intelligence+$slaves[$i].intelligenceImplant)/10))>>
 	<</if>>
 <<if $slaves[$i].voice == 0 || $slaves[$i].lips > 95>> /* can't speak, but slowly picks up language */
 	<<set _minweeks += 30>>
diff --git a/src/uncategorized/saPleaseYou.tw b/src/uncategorized/saPleaseYou.tw
index 8d1b4c9ccf9..15775edfe5d 100644
--- a/src/uncategorized/saPleaseYou.tw
+++ b/src/uncategorized/saPleaseYou.tw
@@ -2,7 +2,7 @@
 
 serves you this week.
 
-<<set _trainingEfficiency = 5+Math.trunc($slaves[$i].devotion/30)+$slaves[$i].intelligence>>
+<<set _trainingEfficiency = 5+Math.trunc($slaves[$i].devotion/30)+(($slaves[$i].intelligence+$slaves[$i].intelligenceImplant)/32)>>
 <<set $skillIncrease = _trainingEfficiency>>
 <<set _oralUse = 0, _analUse = 0, _vaginalUse = 0, _mammaryUse = 0, _penetrativeUse = 0>>
 <<set _fetishChangeChance = fetishChangeChance($slaves[$i])>>
diff --git a/src/uncategorized/saRecruitGirls.tw b/src/uncategorized/saRecruitGirls.tw
index 9dd25a2c073..eacac89482b 100644
--- a/src/uncategorized/saRecruitGirls.tw
+++ b/src/uncategorized/saRecruitGirls.tw
@@ -195,13 +195,13 @@
 
 		<<if $arcologies[0].FSChattelReligionist != "unset">>
 			<<if $arcologies[_j].FSChattelReligionist != "unset">>
-				$He advances Chattel Religionism there by constant public worship, both sexual and traditional<<if $slaves[$i].devotion > 95 && $slaves[$i].intelligence >= 3>>, and by composing $his own series of devotionals to your sexual prowess and attractiveness<<set $arcologies[_j].FSChattelReligionist++>><</if>>.
+				$He advances Chattel Religionism there by constant public worship, both sexual and traditional<<if $slaves[$i].devotion > 95 && $slaves[$i].intelligence+$slaves[$i].intelligenceImplant > 95>>, and by composing $his own series of devotionals to your sexual prowess and attractiveness<<set $arcologies[_j].FSChattelReligionist++>><</if>>.
 				<<set $arcologies[_j].FSChattelReligionist += _influence>>
 			<</if>>
 		<</if>>
 		<<if $arcologies[0].FSRomanRevivalist != "unset">>
 			<<if $arcologies[_j].FSRomanRevivalist != "unset">>
-				$He advances Roman Revivalism there by taking an active part in the daily round of public Roman life<<if canTalk($slaves[$i]) && $slaves[$i].intelligence >= 3>>, which $he's perfect for, since $he has the intelligence to hold $his own in discourse with citizens<<set $arcologies[_j].FSRomanRevivalist++>><</if>>.
+				$He advances Roman Revivalism there by taking an active part in the daily round of public Roman life<<if canTalk($slaves[$i]) && $slaves[$i].intelligence+$slaves[$i].intelligenceImplant > 95>>, which $he's perfect for, since $he has the intelligence to hold $his own in discourse with citizens<<set $arcologies[_j].FSRomanRevivalist++>><</if>>.
 				<<set $arcologies[_j].FSRomanRevivalist += _influence>>
 			<</if>>
 		<<elseif $arcologies[0].FSAztecRevivalist != "unset">>
@@ -226,7 +226,7 @@
 			<</if>>
 		<<elseif $arcologies[0].FSChineseRevivalist != "unset">>
 			<<if $arcologies[_j].FSChineseRevivalist != "unset">>
-				$He advances Chinese Revivalism there by helping citizens improve the feng shui of their slave arrangements<<if $slaves[$i].intelligenceImplant >= 1 && $slaves[$i].intelligence >= 3>>, which $he's perfect for, since $he has the intelligence and education to make real contributions<<set $arcologies[_j].FSChineseRevivalist++>><</if>>.
+				$He advances Chinese Revivalism there by helping citizens improve the feng shui of their slave arrangements<<if $slaves[$i].intelligence+$slaves[$i].intelligenceImplant > 110>>, which $he's perfect for, since $he has the intelligence and education to make real contributions<<set $arcologies[_j].FSChineseRevivalist++>><</if>>.
 				<<set $arcologies[_j].FSChineseRevivalist += _influence>>
 			<</if>>
 		<</if>>
@@ -266,10 +266,10 @@
 		$He has experience in recruitment from working for you.
 		<<set $recruiterProgress += 2>>
 	<<else>>
-		<<set $slaves[$i].skillRC += random(1,($slaves[$i].intelligence+4)*2)>>
+		<<set $slaves[$i].skillRC += random(1,($slaves[$i].intelligence+$slaves[$i].intelligenceImplant)/10)>>
 	<</if>>
 
-	<<if $slaves[$i].intelligence >= 2>>
+	<<if $slaves[$i].intelligence+$slaves[$i].intelligenceImplant > 50>>
 		$His intelligence enables $him to cleverly entrap potential slaves.
 		<<set $recruiterProgress += 1>>
 	<</if>>
@@ -373,8 +373,8 @@
 	<<set _seed = 0>>
 	<<set _seed -= (6 - (6*$slaves[$i].entertainSkill/100))>>
 	<<set _seed -= (3 - $slaves[$i].face)>>
-	<<if $slaves[$i].intelligence < 0>>
-		<<set _seed = Math.min(_seed, 4*$slaves[$i].intelligence)>>
+	<<if $slaves[$i].intelligence+$slaves[$i].intelligenceImplant < -15>>
+		<<set _seed = Math.min(_seed, (($slaves[$i].intelligence+$slaves[$i].intelligenceImplant)/10)>>
 	<</if>>
 	<<if _seed < 0>> /*catches overload from very high entertainment*/
 		<<set $recruiterProgress += _seed/10>>
@@ -383,7 +383,7 @@
 		<<set $recruiterProgress = 0>>
 	<</if>>
 
-	<<if $slaves[$i].intelligence >= 0>>
+	<<if $slaves[$i].intelligence+$slaves[$i].intelligenceImplant > 15>>
 		<<if $slaves[$i].entertainSkill >= 100>>
 			$His mastery of flirting and conversation continues to seduce them,
 			<<if $slaves[$i].face > 95>>
@@ -408,30 +408,31 @@
 	<<set _seed = 10>>
 	<<set _FSmatch = 0>> /* _FSmatch means recruiter's appearance displays FS ideas */
 	<<set _FSdefend = 0>> /* _FSdefend is intelligence-based advocation for your FS */
+	<<set _FSIntMod = Math.floor(($slaves[$i].intelligence+$slaves[$i].intelligenceImplant)/32)>>
 
 	<<if $slaves[$i].face > 40>>
 		<<set _seed += $slaves[$i].face*$slaves[$i].entertainSkill/30>>
 	<<else>>
 		<<set _seed += $slaves[$i].entertainSkill/30>>
 	<</if>>
-	<<if $slaves[$i].intelligence > 0>>
-		<<set _seed += $slaves[$i].intelligence+$slaves[$i].intelligenceImplant>>
+	<<if $slaves[$i].intelligence+$slaves[$i].intelligenceImplant > 15>>
+		<<set _seed += _FSIntMod>>
 	<</if>>
 	<<if $studio && $slaves[$i].pornFame >= 10000 && $slaves[$i].pornPrestige > 0>>
 		<<set _seed += $slaves[$i].pornPrestige*3>>
 	<</if>>
 
 	<<if $arcologies[0].FSSupremacist != "unset">>
-		<<if $slaves[$i].intelligence > 1>>
-			<<set _seed += 2, _FSdefend++, $arcologies[0].FSSupremacist += 0.01*$FSSingleSlaveRep*($slaves[$i].intelligence-1)>>
+		<<if $slaves[$i].intelligence+$slaves[$i].intelligenceImplant > 50>>
+			<<set _seed += 2, _FSdefend++, $arcologies[0].FSSupremacist += 0.01*$FSSingleSlaveRep*_FSIntMod>>
 			<<if $slaves[$i].race != $arcologies[0].FSSupremacistRace>>
 				<<set $arcologies[0].FSSupremacist += 0.01*$FSSingleSlaveRep>>
 			<</if>>
 		<</if>>
 	<</if>>
 	<<if $arcologies[0].FSSubjugationist != "unset">>
-		<<if $slaves[$i].intelligence > 1>>
-			<<set _seed += 2, _FSdefend++, $arcologies[0].FSSubjugationist += 0.01*$FSSingleSlaveRep*($slaves[$i].intelligence-1)>>
+		<<if $slaves[$i].intelligence+$slaves[$i].intelligenceImplant > 50>>
+			<<set _seed += 2, _FSdefend++, $arcologies[0].FSSubjugationist += 0.01*$FSSingleSlaveRep*_FSIntMod>>
 			<<if $slaves[$i].race == $arcologies[0].FSSubjugationistRace>>
 				<<set $arcologies[0].FSSubjugationist += 0.01*$FSSingleSlaveRep>>
 			<</if>>
@@ -465,7 +466,7 @@
 	<<if $arcologies[0].FSPaternalist != "unset">>
 		<<if ($slaves[$i].devotion + $slaves[$i].trust) > 150 || $slaves[$i].relationship == -3>>
 			<<set _seed += 1, _FSdefend++>>
-			<<if $slaves[$i].intelligenceImplant == 1>>
+			<<if $slaves[$i].intelligenceImplant >= 15>>
 				<<set _seed += 1, $arcologies[0].FSPaternalist += 0.02*$FSSingleSlaveRep>>
 			<<else>>
 				<<set $arcologies[0].FSPaternalist += 0.01*$FSSingleSlaveRep>>
@@ -476,8 +477,8 @@
 		<</if>>
 	<<elseif $arcologies[0].FSDegradationist != "unset">>
 		<<run modScore($slaves[$i])>>
-		<<if $slaves[$i].intelligence > 1>>
-			<<set _seed += 1, _FSdefend++, $arcologies[0].FSDegradationist += 0.01*$FSSingleSlaveRep*($slaves[$i].intelligence-1)>>
+		<<if $slaves[$i].intelligence+$slaves[$i].intelligenceImplant > 50>>
+			<<set _seed += 1, _FSdefend++, $arcologies[0].FSDegradationist += 0.01*$FSSingleSlaveRep*_FSIntMod>>
 		<</if>>
 		<<if $modScore > 15 || ($piercingScore > 8 && $tatScore > 5)>>
 			<<set _seed += 1, _FSmatch++, $arcologies[0].FSDegradationist += 0.01*$FSSingleSlaveRep>>
@@ -545,7 +546,7 @@
 			<</if>>
 			<<set _FSmatch++, $arcologies[0].FSRepopulationFocus += 0.01*$FSSingleSlaveRep>>
 		<</if>>
-		<<if $slaves[$i].births > 3 || $slaves[$i].intelligence > 1>>
+		<<if $slaves[$i].births > 3 || $slaves[$i].intelligence+$slaves[$i].intelligenceImplant > 50>>
 			<<set _FSdefend++, $arcologies[0].FSRepopulationFocus += 0.01*$FSSingleSlaveRep>>
 		<</if>>
 	<<elseif $arcologies[0].FSRestart != "unset">>
@@ -573,8 +574,8 @@
 		<</if>>
 	<</if>>
 	<<if $arcologies[0].FSPastoralist != "unset">>
-		<<if $dairy > 0 && ($slaves[$i].lactation > 0 || ($dairySlaves > 0 && $slaves[$i].intelligence > ($dairyRestraintsSetting+1)))>>
-			<<if $dairySlaves > 0 && $slaves[$i].intelligence > ($dairyRestraintsSetting+1)>>
+		<<if $dairy > 0 && ($slaves[$i].lactation > 0 || ($dairySlaves > 0 && _FSintMod > ($dairyRestraintsSetting+1)))>>
+			<<if $dairySlaves > 0 && _FSintMod > ($dairyRestraintsSetting+1)>>
 				<<set _seed += 3, _FSdefend++>>
 			<</if>>
 			<<if $slaves[$i].lactation > 0>>
@@ -599,8 +600,8 @@
 		<</if>>
 	<</if>>
 	<<if $arcologies[0].FSChattelReligionist != "unset">>
-		<<if $slaves[$i].intelligence > 0 && ($slaves[$i].devotion > 95 || $slaves[$i].trust > 95)>>
-			<<set _seed += 1, _FSdefend++, $arcologies[0].FSChattelReligionist += 0.01*$FSSingleSlaveRep*$slaves[$i].intelligence>>
+		<<if $slaves[$i].intelligence+$slaves[$i].intelligenceImplant > 15 && ($slaves[$i].devotion > 95 || $slaves[$i].trust > 95)>>
+			<<set _seed += 1, _FSdefend++, $arcologies[0].FSChattelReligionist += 0.01*$FSSingleSlaveRep*_FSintMod>>
 		<</if>>
 		<<if $slaves[$i].clothes == "a chattel habit" || $slaves[$i].clothes == "a fallen nuns habit" || $slaves[$i].clothes == "a penitent nuns habit" || $slaves[$i].clothes == "a hijab and abaya" || ($arcologies[0].FSRomanRevivalist != "unset" && $slaves[$i].clothes == "a toga")>>
 			<<set _seed += 1>>
@@ -653,8 +654,8 @@
 			<<set _seed += 6, _FSmatch++, $arcologies[0].FSArabianRevivalist += 0.02*$FSSingleSlaveRep>>
 		<</if>>
 	<<elseif $arcologies[0].FSChineseRevivalist != "unset">>
-		<<if $slaves[$i].intelligence > 0 && $HeadGirl != 0 && $Bodyguard != 0 && $HGSuite > 0>>
-			<<set _seed += (Math.min((($HeadGirl.entertainSkill/30)+$HeadGirl.intelligenceImplant+$HeadGirl.prestige), 4)+Math.min($Bodyguard.prestige, 1)), _FSdefend++, $arcologies[0].FSChineseRevivalist += 0.03*$FSSingleSlaveRep>>
+		<<if $slaves[$i].intelligence+$slaves[$i].intelligenceImplant > 15 && $HeadGirl != 0 && $Bodyguard != 0 && $HGSuite > 0>>
+			<<set _seed += (Math.min((($HeadGirl.entertainSkill/30)+($HeadGirl.intelligenceImplant/10)+$HeadGirl.prestige), 4)+Math.min($Bodyguard.prestige, 1)), _FSdefend++, $arcologies[0].FSChineseRevivalist += 0.03*$FSSingleSlaveRep>>
 		<</if>>
 	<</if>>
 	/* and then there's Aztec revivalist, completely forgotten */
@@ -686,7 +687,7 @@
 		<<else>>
 			More than a few sign up to watch $his feeds, but unsubscribe due to $his amateur presentation.
 		<</if>>
-		<<if $slaves[$i].intelligence > 0>>
+		<<if $slaves[$i].intelligence+$slaves[$i].intelligenceImplant > 15>>
 			$He offers thoughtful commentaries on trending topics.
 		<<else>>
 			$He lacks the intelligence to compose thoughtful remarks; a lot the time $he merely +1s what others have said.
@@ -703,7 +704,7 @@
 	<</if>>
 	<<if $showEWM == 1>>
 		<<if $arcologies[0].FSSupremacist != "unset">>
-			<<if $slaves[$i].intelligence >= 2>>
+			<<if $slaves[$i].intelligence+$slaves[$i].intelligenceImplant > 50>>
 				<<if $slaves[$i].race != $arcologies[0].FSSupremacistRace>>
 					$He patiently explains how $slaves[$i].race girls like $himself benefit from the firm guidance of their proper $arcologies[0].FSSupremacistRace masters.
 				<<else>>
@@ -716,7 +717,7 @@
 			<</if>>
 		<</if>>
 		<<if $arcologies[0].FSSubjugationist != "unset">>
-			<<if $slaves[$i].intelligence >= 2>>
+			<<if $slaves[$i].intelligence+$slaves[$i].intelligenceImplant > 50>>
 				<<if $slaves[$i].race == $arcologies[0].FSSubjugationistRace>>
 					It's always a pleasure to hear a $slaves[$i].race slave admit to all the failings for which $his kind need to be taken in hand.
 				<<else>>
@@ -738,7 +739,7 @@
 			<<else>>
 				$His efforts would have more impact if $his womb wasn't so empty. Disappointing any who would want to see $him pregnant.
 			<</if>>
-			<<if $slaves[$i].intelligence > 1>>
+			<<if $slaves[$i].intelligence+$slaves[$i].intelligenceImplant > 50>>
 				$He is smart enough to not only repeat your repopulationist goals, but to expand upon them.
 			<<elseif $slaves[$i].births > 3>>
 				$He uses $his experience as a mother as leverage to convince virgin ladies that motherhood is wonderful.
@@ -793,22 +794,22 @@
 		<</if>>
 		<<if $arcologies[0].FSPaternalist != "unset">>
 			<<if ($slaves[$i].devotion + $slaves[$i].trust) > 150 || $slaves[$i].relationship == -3>>
-				<<if $slaves[$i].intelligenceImplant == 1>>
+				<<if $slaves[$i].intelligenceImplant >= 15>>
 					All week $he shares original poetry in which $his love for you shines through<<if $slaves[$i].health > 40>>, and $his healthy body shines in every live appearance<</if>>.
 				<<else>>
-					Even though $he clearly adores $his <<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>master<<else>>mistress<</if>>, at times the uneducated slave struggles to fully and cogently express $his affection.
+					Even though $he clearly adores $his <<= WrittenMaster($slaves[$i])>>, at times the uneducated slave struggles to fully and cogently express $his affection.
 				<</if>>
 			<<else>>
 				$His praise of your good works lacks the special touch of personal affection, so it doesn't impress much.
 			<</if>>
 		<<elseif $arcologies[0].FSDegradationist != "unset">>
 			<<if $modScore > 15 || ($piercingScore > 8 && $tatScore > 5)>>
-				<<if $slaves[$i].intelligence > 1>>
+				<<if $slaves[$i].intelligence+$slaves[$i].intelligenceImplant > 50>>
 					Ordinarily you would punish a slave who displays independent thinking, but when $slaves[$i].slaveName goes public in all $his garish, modded glory to defend the legal right of slaveowners to use their property however they please, $he's earned a brief reprieve.
 				<<else>>
 					Just the sight of $slaves[$i].slaveName's provocatively decorated body entices $his online "friends" to share multiple scenarios for raping $him, although the honor is wasted on the dumb fucktoy.
 				<</if>>
-			<<elseif $slaves[$i].intelligence > 1>>
+			<<elseif $slaves[$i].intelligence+$slaves[$i].intelligenceImplant > 50>>
 				Ordinarily you would punish a slave who displays independent thinking, but when $slaves[$i].slaveName defends the right of owners to use their property however they please, $he's earned some consideration: perhaps you could "reward" $him with an extra piercing or a slutty new tat.
 			<<else>>
 				$He isn't smart enough to understand the primal attraction of an arcology where slave holes exist only to be raped, nor is $his body sufficiently degraded to advertise it.
@@ -873,7 +874,7 @@
 		<</if>>
 		<<if $arcologies[0].FSPastoralist != "unset">>
 			<<if $dairy>>
-				<<if $dairySlaves && $slaves[$i].intelligence > ($dairyRestraintsSetting+1)>>
+				<<if $dairySlaves && _FSintMod > ($dairyRestraintsSetting+1)>>
 					<<if $slaves[$i].lactation > 0>>
 						$He schedules VR tours of $dairyName in order to popularize your free-range practices and quality products: the highlight each time is when $he hooks $his own teats into a milker and brings $himself to orgasm.
 					<<else>>
@@ -908,7 +909,7 @@
 			<</if>>
 		<</if>>
 		<<if $arcologies[0].FSChattelReligionist != "unset">>
-			<<if $slaves[$i].intelligence > 0 && ($slaves[$i].devotion > 95 || $slaves[$i].trust > 95)>>
+			<<if $slaves[$i].intelligence+$slaves[$i].intelligenceImplant > 15 && ($slaves[$i].devotion > 95 || $slaves[$i].trust > 95)>>
 				<<if $slaves[$i].clothes == "a chattel habit" || $slaves[$i].clothes == "a fallen nuns habit" || $slaves[$i].clothes == "a penitent nuns habit" || $slaves[$i].clothes == "a hijab and abaya">>
 					Clad in $his holy garb, $slaves[$i].slaveName preaches to the atrium with a powerful appeal to the new morality, in which $his absolute faith in your revelations is unmistakable.
 				<<elseif $arcologies[0].FSRomanRevivalist != "unset" && $slaves[$i].clothes == "a toga">>
@@ -916,7 +917,7 @@
 				<<else>>
 					$He heads to the atrium to deliver a powerful, faith-based appeal for everyone to join the new moral order, though one cynical onlooker heckles $him about $his style of dress.
 				<</if>>
-			<<elseif $slaves[$i].intelligence > 0>>
+			<<elseif $slaves[$i].intelligence+$slaves[$i].intelligenceImplant > 15>>
 				$His lecture on the new religious morality is thorough, and also devastatingly boring: all bullet point scriptures and little emotion that would sway unenlightened hearts.
 			<<elseif $slaves[$i].devotion > 95 || $slaves[$i].trust > 95>>
 				Although $he wears $his faith in you on $his metaphorical sleeve, $he can't muster the intellectual arguments to counter the shrill voices of backward old world religions.
@@ -1033,21 +1034,21 @@
 				$He makes a short video essay about your elaborate master suite, but there's no sex going on while $he films.
 			<</if>>
 		<<elseif $arcologies[0].FSChineseRevivalist != "unset">>
-			<<if $slaves[$i].intelligence >= 1 && $HeadGirl != 0 && $Bodyguard != 0 && $HGSuite > 0>>
-				<<if (($HeadGirl.entertainSkill/30)+$HeadGirl.intelligenceImplant+$HeadGirl.prestige) >= 4>>
+			<<if $slaves[$i].intelligence+$slaves[$i].intelligenceImplant > 50 && $HeadGirl != 0 && $Bodyguard != 0 && $HGSuite > 0>>
+				<<if (($HeadGirl.entertainSkill/30)+($HeadGirl.intelligenceImplant/10)+$HeadGirl.prestige) >= 4>>
 					<<if $Bodyguard.prestige >= 1>>
 						$He deferentially chronicles the administration of your Imperial household by Head Girl $HeadGirl.slaveName and Bodyguard $Bodyguard.slaveName. The piece explains points of Chinese Revivalist protocol where new slaves or visitors to the Forbidden Penthouse might inadvertently stumble.
 					<<else>>
 						$He interviews your Head Girl about points of protocol and household administration for broadcast to the arcology. Your Bodyguard, $Bodyguard.slaveName, is not accustomed to fame and prefers to remain off-screen.
 					<</if>>
-				<<elseif $HeadGirl.intelligenceImplant < 1>>
+				<<elseif $HeadGirl.intelligenceImplant < 15>>
 					$He edits a documentary broadcast about the Revivalist protocols that drive your household, and in the process uncovers small but annoying lapses due to the Head Girl's lack of formal education.
 				<<else>>
 					$He broadcasts a documentary about life inside your Imperial Chinese household, but the Head Girl's segment comes out flat: $HeadGirl.slaveName needs more experience working in front of a camera.
 				<</if>>
 			<<elseif $HeadGirl == 0 || $Bodyguard == 0>>
 				$He can't document the benefits of your Imperial Chinese administration because of unfilled posts in its leadership.
-			<<elseif $slaves[$i].intelligence < 1>>
+			<<elseif $slaves[$i].intelligence+$slaves[$i].intelligenceImplant <= 15>>
 				Your household is a well-run model for the arcology at large, but your recruiter doesn't completely understand its intricate Revivalist protocols and can't explain it for the masses.
 			<<else>>
 				$He never considers promoting your household's Revivalist protocols, since you don't value your Head Girl enough to accord $him a separate apartment inside your walls.
diff --git a/src/uncategorized/saRelationships.tw b/src/uncategorized/saRelationships.tw
index 5f9ac891a81..c260544e345 100644
--- a/src/uncategorized/saRelationships.tw
+++ b/src/uncategorized/saRelationships.tw
@@ -1420,7 +1420,7 @@
 			<</if>>
 		<</if>>
 
-		<<if (_SlaveJ.actualAge - _SlaveI.actualAge > 10) && (_SlaveI.relationship >= 4) && (random(1, 50) > (_SlaveI.intelligence * 5) + (_SlaveJ.intelligence * 10)) && (_SlaveJ.devotion > 75) && (_SlaveJ.trust > 50) && (_SlaveJ.intelligence > 0) && (_SlaveJ.intelligenceImplant > 0) && ((_SlaveI.devotion > 20) || ((_SlaveI.devotion >= -20) && (_SlaveI.trust < -20)) || (_SlaveI.trust > -10))>>
+		<<if (_SlaveJ.actualAge - _SlaveI.actualAge > 10) && (_SlaveI.relationship >= 4) && (random(1,300) > (_SlaveI.intelligence) + (_SlaveJ.intelligence)) && (_SlaveJ.devotion > 75) && (_SlaveJ.trust > 50) && (_SlaveJ.intelligence+_SlaveJ.intelligenceImplant > 15) && (_SlaveJ.intelligenceImplant >= 15) && ((_SlaveI.devotion > 20) || ((_SlaveI.devotion >= -20) && (_SlaveI.trust < -20)) || (_SlaveI.trust > -10))>>
 			<<if (_SlaveJ.oralSkill > _SlaveI.oralSkill) || ((_SlaveJ.analSkill > _SlaveI.analSkill) && (_SlaveI.anus > 0)) || ((_SlaveJ.vaginalSkill > _SlaveI.vaginalSkill) && (_SlaveI.vagina > 0) && (_SlaveJ.vagina > 0)) || (_SlaveJ.trust > _SlaveI.trust)>>
 				_SlaveI.slaveName's <<if _SlaveI.relationship >= 5>>wife<<else>>lover<</if>> is older, more experienced, and
 				<<if (_SlaveJ.oralSkill > _SlaveI.oralSkill)>>
diff --git a/src/uncategorized/saRivalries.tw b/src/uncategorized/saRivalries.tw
index e2e5e2aa6ea..189c5c51fb2 100644
--- a/src/uncategorized/saRivalries.tw
+++ b/src/uncategorized/saRivalries.tw
@@ -24,7 +24,7 @@
 			<<if $slaves[$i].behavioralFlaw != "none">>
 				<<switch $slaves[$i].behavioralFlaw>>
 				<<case "arrogant">>
-					<<if $slaves[_j].intelligence > $slaves[$i].intelligence>>
+					<<if $slaves[_j].intelligence > $slaves[$i].intelligence+$slaves[$i].intelligenceImplant>>
 						$slaves[$i].slaveName is an arrogant bitch, and <<= SlaveFullName($slaves[_j])>> is authentically smarter than she is, which of course she cannot stand. @@.lightsalmon;They start to dislike each other.@@
 						<<set $slaves[_j].rivalry = 1, $slaves[$i].rivalry = 1, $slaves[_j].rivalryTarget = $slaves[$i].ID, $slaves[$i].rivalryTarget = $slaves[_j].ID>>
 						<<break>>
diff --git a/src/uncategorized/saRules.tw b/src/uncategorized/saRules.tw
index b05da581b39..347ea386b38 100644
--- a/src/uncategorized/saRules.tw
+++ b/src/uncategorized/saRules.tw
@@ -608,13 +608,13 @@
 					$He's given free time, which $he
 					<<if $spa != 0>>
 						usually spends in $spaName<<if $Attendant != 0>> enjoying $Attendant.slaveName's care<</if>>.
-					<<elseif (canSee($activeSlave)) && ($activeSlave.intelligence >= 2)>>
+					<<elseif (canSee($slaves[$i])) && ($slaves[$i].intelligence+$slaves[$i].intelligenceImplant > 50)>>
 						usually spends relaxing in $his private room reading books.
-					<<elseif (canSee($activeSlave)) && (canHear($activeSlave))>>
+					<<elseif (canSee($slaves[$i])) && (canHear($slaves[$i]))>>
 						usually spends relaxing in $his private room watching television.
-					<<elseif canSee($activeSlave)>>
+					<<elseif canSee($slaves[$i])>>
 						usually spends relaxing in $his private room reading magazines.
-					<<elseif canHear($activeSlave)>>
+					<<elseif canHear($slaves[$i])>>
 						usually spends relaxing in $his private room listening to music.
 					<<else>>
 						usually spends napping in $his private room.
diff --git a/src/uncategorized/saServeThePublic.tw b/src/uncategorized/saServeThePublic.tw
index 3152d87497b..55160c67807 100644
--- a/src/uncategorized/saServeThePublic.tw
+++ b/src/uncategorized/saServeThePublic.tw
@@ -195,7 +195,7 @@ the public.
 				masterful
 			<</if>>
 			leadership.
-			<<if ($DJ.face > 40) && ($DJ.intelligence > 1)>>
+			<<if ($DJ.face > 40) && ($DJ.intelligence+$DJ.intelligenceImplant > 50)>>
 				<<if ($slaves[$i].devotion > 20)>>
 				The DJ is such a gorgeous diva that $he's swept along by $his charisma, and does $his best to be a worthy part of $his entourage.
 				<</if>>
@@ -394,7 +394,7 @@ $His appearance attracted $beauty members of the public (<<print Math.trunc($bea
 <</if>>
 
 <<if !setup.entertainmentCareers.includes($slaves[$i].career) && $slaves[$i].skillE < $masteredXP>>
-	<<set $slaves[$i].skillE += random(1,($slaves[$i].intelligence+4)*2)>>
+	<<set $slaves[$i].skillE += random(1,($slaves[$i].intelligence+$slaves[$i].intelligenceImplant)/10)>>
 <</if>>
 <<if setup.entertainmentCareers.includes($slaves[$i].career)>>
 	$He has experience with entertainment from $his life before $he was a slave, making $him more effective.
@@ -447,21 +447,21 @@ $His appearance attracted $beauty members of the public (<<print Math.trunc($bea
 		$he offers personal training and sexual therapy.
 	<<else>>
 		$He shows diligence, and $his @@.green;sexual skills improve,@@ according to what the citizens demand<<if !canDoVaginal($slaves[$i])>> and what's possible for $him<</if>>.
-		<<set $skillIncrease = 5+$slaves[$i].intelligence+$oralUseWeight>>
+		<<set $skillIncrease = 5+Math.floor(($slaves[$i].intelligence+$slaves[$i].intelligenceImplant)/32)+$oralUseWeight>>
 		<<OralSkillIncrease $slaves[$i]>>
 		<<if canDoAnal($slaves[$i])>>
-			<<set $skillIncrease = 5+$slaves[$i].intelligence+$analUseWeight>>
+			<<set $skillIncrease = 5+Math.floor(($slaves[$i].intelligence+$slaves[$i].intelligenceImplant)/32)+$analUseWeight>>
 			<<AnalSkillIncrease $slaves[$i]>>
 		<</if>>
 		<<if canDoVaginal($slaves[$i])>>
-			<<set $skillIncrease = 5+$slaves[$i].intelligence+$vaginalUseWeight>>
+			<<set $skillIncrease = 5+Math.floor(($slaves[$i].intelligence+$slaves[$i].intelligenceImplant)/32)+$vaginalUseWeight>>
 			<<VaginalSkillIncrease $slaves[$i]>>
 		<</if>>
 	<</if>>
 	<<if ($slaves[$i].amp != 1)>>
 		<<if ($slaves[$i].entertainSkill < 100)>>
 			$He gains experience as a public slut.
-			<<set $skillIncrease = 10+$slaves[$i].intelligence>>
+			<<set $skillIncrease = 10+Math.floor(($slaves[$i].intelligence+$slaves[$i].intelligenceImplant)/32)>>
 			<<EntertainSkillIncrease $slaves[$i]>>
 		<</if>>
 	<</if>>
@@ -817,9 +817,9 @@ $His appearance attracted $beauty members of the public (<<print Math.trunc($bea
 	<</if>>
 <</if>>
 
-<<if $slaves[$i].intelligence > 0>>
+<<if $slaves[$i].intelligence+$slaves[$i].intelligenceImplant > 15>>
 	$His intelligence helps $him discern everyone's needs.
-<<elseif $slaves[$i].intelligence < 0>>
+<<elseif $slaves[$i].intelligence+$slaves[$i].intelligenceImplant < -15>>
 	$He has trouble figuring out what everyone needs.
 <</if>>
 
diff --git a/src/uncategorized/saTakeClasses.tw b/src/uncategorized/saTakeClasses.tw
index ed5d98afed7..934a5486be8 100644
--- a/src/uncategorized/saTakeClasses.tw
+++ b/src/uncategorized/saTakeClasses.tw
@@ -10,17 +10,17 @@
 <<elseif ($slaves[$i].assignment == "learn in the schoolroom")>>
 	<<if ($Schoolteacher != 0)>>
 		<<setLocalPronouns $Schoolteacher 2>>
-		<<set _seed = $Schoolteacher.intelligence+$Schoolteacher.intelligenceImplant>>
+		<<set _teaching = $Schoolteacher.intelligence+$Schoolteacher.intelligenceImplant>>
 		<<if ($Schoolteacher.visualAge > 35)>>
-			<<set _seed += 1>>
+			<<set _teaching += 10>>
 		<</if>>
 		<<if setup.schoolteacherCareers.includes($Schoolteacher.career)>>
-			<<set _seed += 1>>
+			<<set _teaching += 10>>
 		<</if>>
 		<<if ($Schoolteacher.face > 40)>>
-			<<set _seed += 1>>
+			<<set _teaching += 10>>
 		<</if>>
-		<<if (random(1,100) < 20+(_seed*20))>>
+		<<if random(1,150) < _teaching>>
 			<<set _learning += 1>>
 		<</if>>
 		takes courses in slavery<<if $schoolroomUpgradeSkills + $schoolroomUpgradeRemedial + $schoolroomUpgradeLanguage != 0>>, using $schoolroomName's improved educational materials, <</if>> under $Schoolteacher.slaveName's supervision;
@@ -73,33 +73,33 @@
 <</if>>
 
 <<if $slaves[$i].fetish != "mindbroken">>
-	<<if ($slaves[$i].intelligence >= 3)>>
+	<<if ($slaves[$i].intelligence > 95)>>
 		$He is a genius,
 		<<set _learning += 1>>
-	<<elseif ($slaves[$i].intelligence >= 2)>>
+	<<elseif ($slaves[$i].intelligence > 50)>>
 		$He is highly intelligent
 		<<set _learning += 1>>
-	<<elseif ($slaves[$i].intelligence >= 1)>>
+	<<elseif ($slaves[$i].intelligence > 15)>>
 		$He is of above average intelligence
 		<<if (random(1,100) < 70)>>
 			<<set _learning += 1>>
 		<</if>>
-	<<elseif ($slaves[$i].intelligence >= 0)>>
+	<<elseif ($slaves[$i].intelligence >= -15)>>
 		$He is of average intelligence
 		<<if (random(1,100) < 50)>>
 			<<set _learning += 1>>
 		<</if>>
 	<<else>>
-		<<set _seed = 50 + $slaves[$i].intelligence*20>>
+		<<set _slaveDensity = 50 + $slaves[$i].intelligence>>
 		<<if ($schoolroomUpgradeRemedial == 1) && random(1,100) < 50>>
-			<<set _seed = 50>>
+			<<set _slaveDensity = 55>>
 		<</if>>
-		<<if (random(1,100) < _seed)>>
+		<<if (random(1,100) > _slaveDensity)>>
 			<<set _learning += 1>>
 		<</if>>
-		<<if ($slaves[$i].intelligence >= -1)>>
+		<<if ($slaves[$i].intelligence >= -50)>>
 			$He is of below average intelligence
-		<<elseif ($slaves[$i].intelligence >= -2)>>
+		<<elseif ($slaves[$i].intelligence >= -95)>>
 			$He is quite stupid
 		<<else>>
 			$He is an imbecile,
@@ -137,7 +137,7 @@
 	<</if>>
 
 	<<set _seed = 0>>
-	<<set $skillIncrease = 10+$slaves[$i].intelligence>>
+	<<set $skillIncrease = 10+Math.floor(($slaves[$i].intelligence+$slaves[$i].intelligenceImplant)/32)>>
 	<<for _j = 0; _j < _learning; _j++>>
 		<<if ($slaves[$i].devotion <= 20) && (_seed == 0)>>
 			Since $he is wanting in basic obedience, $he suffers through courses on @@.hotpink;$his place@@ in the Free Cities world.
@@ -184,52 +184,61 @@
 		<</if>>
 	<</for>>
 
-	<<if ($slaves[$i].intelligenceImplant < 1) || ($slaves[$i].intelligenceImplant > 1)>>
+	<<if ($slaves[$i].intelligenceImplant < 30) && ($slaves[$i].assignment == "learn in the schoolroom")>>
+		$He makes some progress
+		<<if $slaves[$i].intelligenceImplant < 15>>
+			towards a basic education.
+		<<else>>
+			in furthering $his education.
+		<</if>>
+		<<set $slaves[$i].intelligenceImplant += 0.1*_learning>>
+		<<if ($slaves[$i].intelligenceImplant >= 30)>>
+			<<set $slaves[$i].intelligenceImplant = 30>>
+			$He has completed $his advanced education, and for most purposes $he has become @@.deepskyblue;more intelligent.@@
+		<</if>>
+	<<elseif ($slaves[$i].intelligenceImplant < 15) && ($slaves[$i].assignment == "take classes")>>
 		$He makes some progress towards a basic education.
 		<<set $slaves[$i].intelligenceImplant += 0.1*_learning>>
-		<<if ($slaves[$i].intelligenceImplant >= 1)>>
-			<<set $slaves[$i].intelligenceImplant = 1>>
-			$He has completed a course of slave education, and for most purposes $he is now @@.deepskyblue;more intelligent.@@
-			<<if ($slaves[$i].intelligence < 3)>>
-				<<set $slaves[$i].intelligence += 1>>
-			<</if>>
+		<<if ($slaves[$i].intelligenceImplant >= 15)>>
+			<<set $slaves[$i].intelligenceImplant = 15>>
+			$He has completed a course of slave education, and for most purposes $he has become @@.deepskyblue;more intelligent.@@
 		<</if>>
 	<</if>>
 
-	<<if ($slaves[$i].intelligenceImplant == 1)>>
-	<<if $slaves[$i].voice != 0>>
-		<<if ($slaves[$i].intelligence > random(-4,4))>>
-		<<if ($schoolroomUpgradeLanguage == 0)>>
-			<<if ($slaves[$i].accent > 3) && ($week-$slaves[$i].weekAcquired > 24)>>
-				$He has @@.green;learned some $language,@@ and can make $his point with some gesturing, though $he speaks $language horribly.
-				<<set $slaves[$i].accent -= 1>>
-				<<if $slaves[$i].speechRules == "language lessons">>
-					<<set $slaves[$i].speechRules = "accent elimination">>
-				<</if>>
-			<<elseif ($slaves[$i].accent == 3)>>
-			$He has @@.green;learned functional $language,@@ and can make $himself understood, though $his $slaves[$i].nationality accent is still quite heavy.
-			<<set $slaves[$i].accent -= 1>>
-			<</if>>
-		<<else>>
-			<<if ($slaves[$i].accent > 3)>>
-				<<if ($week-$slaves[$i].weekAcquired > 16)>>
-					$He has @@.green;learned some $language,@@ and can make $his point with some gesturing, though $he speaks $language horribly.
-					<<set $slaves[$i].accent -= 1>>
-					<<if $slaves[$i].speechRules == "language lessons">>
-						<<set $slaves[$i].speechRules = "accent elimination">>
+	<<if ($slaves[$i].intelligenceImplant >= 15)>>
+		<<if $slaves[$i].voice != 0>>
+			<<if ($slaves[$i].intelligence > random(-110,110))>>
+				<<if ($schoolroomUpgradeLanguage == 0)>>
+					<<if ($slaves[$i].accent > 3) && ($week-$slaves[$i].weekAcquired > 24)>>
+						$He has @@.green;learned some $language,@@ and can make $his point with some gesturing, though $he speaks $language horribly.
+						<<set $slaves[$i].accent -= 1>>
+						<<if $slaves[$i].speechRules == "language lessons">>
+							<<set $slaves[$i].speechRules = "accent elimination">>
+						<</if>>
+					<<elseif ($slaves[$i].accent == 3)>>
+						$He has @@.green;learned functional $language,@@ and can make $himself understood, though $his $slaves[$i].nationality accent is still quite heavy.
+						<<set $slaves[$i].accent -= 1>>
+					<</if>>
+				<<else>>
+					<<if ($slaves[$i].accent > 3)>>
+						<<if ($week-$slaves[$i].weekAcquired > 16)>>
+							$He has @@.green;learned some $language,@@ and can make $his point with some gesturing, though $he speaks $language horribly.
+							<<set $slaves[$i].accent -= 1>>
+							<<if $slaves[$i].speechRules == "language lessons">>
+								<<set $slaves[$i].speechRules = "accent elimination">>
+							<</if>>
+						<</if>>
+					<<elseif ($slaves[$i].accent >= 2)>>
+						$He has @@.green;learned decent $language,@@ though $he retains enough of $his $slaves[$i].nationality accent to make $his voice distinctly sexy.
+						<<set $slaves[$i].accent = 1>>
 					<</if>>
 				<</if>>
-			<<elseif ($slaves[$i].accent >= 2)>>
-			$He has @@.green;learned decent $language,@@ though $he retains enough of $his $slaves[$i].nationality accent to make $his voice distinctly sexy.
-			<<set $slaves[$i].accent = 1>>
 			<</if>>
 		<</if>>
-		<</if>>
-	<</if>>
 	<</if>>
 
 
-	<<if ($slaves[$i].intelligenceImplant == 1) && ($slaves[$i].assignment == "take classes")>>
+	<<if ($slaves[$i].intelligenceImplant >= 15) && ($slaves[$i].assignment == "take classes")>>
 	<<if ($slaves[$i].voice == 0) || ($slaves[$i].accent <= 1) || (($schoolroomUpgradeLanguage == 0) && ($slaves[$i].accent <= 2))>>
 	<<if ($slaves[$i].oralSkill > 30) || (($schoolroomUpgradeSkills == 0) && ($slaves[$i].oralSkill > 10))>>
 	<<if ($slaves[$i].whoreSkill > 30) || (($schoolroomUpgradeSkills == 0) && ($slaves[$i].whoreSkill > 10))>>
diff --git a/src/uncategorized/saWhore.tw b/src/uncategorized/saWhore.tw
index c99a34b583d..c7b32bb7a15 100644
--- a/src/uncategorized/saWhore.tw
+++ b/src/uncategorized/saWhore.tw
@@ -379,7 +379,7 @@ $His appearance attracted $beauty customers (<<print Math.trunc($beauty/7)>> a d
 <</if>>
 
 <<if !setup.whoreCareers.includes($slaves[$i].career) && $slaves[$i].skillW < $masteredXP>>
-	<<set $slaves[$i].skillW += random(1,($slaves[$i].intelligence+4)*2)>>
+	<<set $slaves[$i].skillW += random(1,($slaves[$i].intelligence+$slaves[$i].intelligenceImplant)/10)>>
 <</if>>
 <<if setup.whoreCareers.includes($slaves[$i].career)>>
 	$He has sex work experience from $his life before $he was a slave, making $him more effective.
@@ -401,7 +401,7 @@ $His appearance attracted $beauty customers (<<print Math.trunc($beauty/7)>> a d
 <</if>>
 <<if ($slaves[$i].amp != 1)>>
 <<if ($slaves[$i].whoreSkill < 100)>>
-	<<set $slaves[$i].whoreSkill += 10+$slaves[$i].intelligence>>
+	<<set $slaves[$i].whoreSkill += 10+Math.floor(($slaves[$i].intelligence+$slaves[$i].intelligenceImplant)/32)>>
 	$He @@.green;gains experience as a public slut,@@ and gets better at
 	<<if ($slaves[$i].whoreSkill <= 30)>>
 		basic street smarts.
@@ -448,21 +448,21 @@ $His appearance attracted $beauty customers (<<print Math.trunc($beauty/7)>> a d
 		$he works social gatherings and high society.
 	<<else>>
 		$He shows diligence, and $his sexual skills improve, according to what the customers demand<<if !canDoVaginal($slaves[$i])>> and what's possible for $him<</if>>.
-		<<set $skillIncrease = 5+$slaves[$i].intelligence+$oralUseWeight>>
+		<<set $skillIncrease = 5+Math.floor(($slaves[$i].intelligence+$slaves[$i].intelligenceImplant)/32)+$oralUseWeight>>
 		<<OralSkillIncrease $slaves[$i]>>
 		<<if canDoAnal($slaves[$i])>>
-			<<set $skillIncrease = 5+$slaves[$i].intelligence+$analUseWeight>>
+			<<set $skillIncrease = 5+Math.floor(($slaves[$i].intelligence+$slaves[$i].intelligenceImplant)/32)+$analUseWeight>>
 			<<AnalSkillIncrease $slaves[$i]>>
 		<</if>>
 		<<if canDoVaginal($slaves[$i])>>
-			<<set $skillIncrease = 5+$slaves[$i].intelligence+$vaginalUseWeight>>
+			<<set $skillIncrease = 5+Math.floor(($slaves[$i].intelligence+$slaves[$i].intelligenceImplant)/32)+$vaginalUseWeight>>
 			<<VaginalSkillIncrease $slaves[$i]>>
 		<</if>>
 	<</if>>
 	<<if ($slaves[$i].amp != 1)>>
 	<<if ($slaves[$i].whoreSkill < 100)>>
 		$He gains experience as a prostitute.
-		<<set $skillIncrease = 10+$slaves[$i].intelligence>>
+		<<set $skillIncrease = 10+Math.floor(($slaves[$i].intelligence+$slaves[$i].intelligenceImplant)/32)>>
 		<<WhoreSkillIncrease $slaves[$i]>>
 	<</if>>
 	<</if>>
@@ -826,9 +826,9 @@ $His appearance attracted $beauty customers (<<print Math.trunc($beauty/7)>> a d
 	<</if>>
 <</if>>
 
-<<if $slaves[$i].intelligence > 0>>
+<<if $slaves[$i].intelligence+$slaves[$i].intelligenceImplant > 15>>
 	$His intelligence gives $him an advantage at the business of selling $his body.
-<<elseif $slaves[$i].intelligence < 0>>
+<<elseif $slaves[$i].intelligence+$slaves[$i].intelligenceImplant < -15>>
 	$His stupidity gives $him a handicap at the business of selling $his body.
 <</if>>
 
diff --git a/src/uncategorized/schoolroomReport.tw b/src/uncategorized/schoolroomReport.tw
index c4323975fd6..cbd5f686c2f 100644
--- a/src/uncategorized/schoolroomReport.tw
+++ b/src/uncategorized/schoolroomReport.tw
@@ -56,17 +56,17 @@
 		She has experience with students and learning from working for you, making her more effective.
 		<<set _idleBonus++>>
 	<<else>>
-		<<set $slaves[_FLs].skillTE += random(1,($Schoolteacher.intelligence+4)*2)>>
+		<<set $slaves[_FLs].skillTE += random(1,($Schoolteacher.intelligence+$Schoolteacher.intelligenceImplant)/10)>>
 	<</if>>
 	<<if ($Schoolteacher.visualAge > 35)>>
 		Her age earns her the respect of her students.
 		<<set _idleBonus++>>
 	<</if>>
-	<<if ($Schoolteacher.intelligence > 0)>>
+	<<if ($Schoolteacher.intelligence > 15)>>
 		She's intelligent enough to be a good teacher.
 		<<set _idleBonus++>>
 	<</if>>
-	<<if ($Schoolteacher.intelligenceImplant == 1)>>
+	<<if ($Schoolteacher.intelligenceImplant >= 15)>>
 		Since she's educated herself, she understands her students.
 		<<set _idleBonus++>>
 	<</if>>
@@ -183,7 +183,7 @@
 		<<set _restedSlaves++, _dI--, _DL-->>
 		<<continue>>
 	<<else>>
-		<<if ($slaves[$i].intelligenceImplant == 1)>>
+		<<if ($slaves[$i].intelligenceImplant >= 30)>>
 		<<if ($slaves[$i].voice == 0) || ($slaves[$i].accent <= 1) || (($schoolroomUpgradeLanguage == 0) && ($slaves[$i].accent <= 2))>>
 		<<if ($slaves[$i].oralSkill > 30) || (($schoolroomUpgradeSkills == 0) && ($slaves[$i].oralSkill > 10))>>
 		<<if ($slaves[$i].whoreSkill > 30) || (($schoolroomUpgradeSkills == 0) && ($slaves[$i].whoreSkill > 10))>>
diff --git a/src/uncategorized/servantsQuartersReport.tw b/src/uncategorized/servantsQuartersReport.tw
index ba9054238ad..c7647790de3 100644
--- a/src/uncategorized/servantsQuartersReport.tw
+++ b/src/uncategorized/servantsQuartersReport.tw
@@ -92,7 +92,7 @@
 		<<set $stewardessBonus += 25>>
 		She has applicable experience with daily sums and organizational trifles from working for you.
 	<<else>>
-		<<set $slaves[_FLs].skillST += random(1,($Stewardess.intelligence+4)*2)>>
+		<<set $slaves[_FLs].skillST += random(1,($Stewardess.intelligence+$Stewardess.intelligenceImplant)/10)>>
 	<</if>>
 	<<if ($Stewardess.actualAge > 35)>>
 		<<set $stewardessBonus += 25>>
@@ -100,8 +100,8 @@
 	<<elseif $AgePenalty == 0>>
 		<<set $stewardessBonus +=25>>
 	<</if>>
-	<<if ($Stewardess.intelligence > 0)>>
-		<<set $stewardessBonus += 25*$Stewardess.intelligence>>
+	<<if ($Stewardess.intelligence+$Stewardess.intelligenceImplant > 15)>>
+		<<set $stewardessBonus += $Stewardess.intelligence+$Stewardess.intelligenceImplant>>
 		She's smart enough that she misses very little.
 	<</if>>
 	<<if ($Stewardess.energy > 95) || (($Stewardess.fetishKnown == 1) && ($Stewardess.fetish == "dom"))>>
diff --git a/src/uncategorized/slaveInteract.tw b/src/uncategorized/slaveInteract.tw
index b79e6cce7df..1e9b4ddf518 100644
--- a/src/uncategorized/slaveInteract.tw
+++ b/src/uncategorized/slaveInteract.tw
@@ -928,7 +928,7 @@
 				<<SlaveInteractDrugs>>
 			<</link>>
 		<</if>>
-		<<if ($activeSlave.intelligence+$activeSlave.intelligenceImplant > -100) && $activeSlave.indentureRestrictions < 1>>
+		<<if ($activeSlave.intelligence > -100) && $activeSlave.indentureRestrictions < 1>>
 			| <<link "Psychosuppressants">><<set $activeSlave.drugs = "psychosuppressants">><<SlaveInteractDrugs>><</link>>
 		<<else>>
 			| Psychosuppressants
diff --git a/src/uncategorized/spaReport.tw b/src/uncategorized/spaReport.tw
index aef383955eb..5be287b0f09 100644
--- a/src/uncategorized/spaReport.tw
+++ b/src/uncategorized/spaReport.tw
@@ -53,7 +53,7 @@
 		She has experience with counseling from working for you, making her better at building a rapport with troubled slaves, and giving her a better chance of softening flaws into beneficial quirks.
 		<<set _bonusToggle = 1, _idleBonus++>>
 	<<else>>
-		<<set $slaves[_FLs].skillAT += random(1,($Attendant.intelligence+4)*2)>>
+		<<set $slaves[_FLs].skillAT += random(1,($Attendant.intelligence+$Attendant.intelligenceImplant)/10)>>
 	<</if>>
 	<<if ($Attendant.eyes == -2)>>
 		Her blindness allows her to deeply connect with her girls.
@@ -72,7 +72,7 @@
 		Her apparent maturity encourages the slaves in the spa to relax and pour out their troubles to her.
 		<<set _healthBonus++, _idleBonus++>>
 	<</if>>
-	<<if ($Attendant.intelligence > 0)>>
+	<<if ($Attendant.intelligence+$Attendant.intelligenceImplant > 15)>>
 		She's so intelligent she can suss out the cause of slaves' emotional issues and counsel them effectively.
 		<<set _idleBonus++>>
 	<</if>>
@@ -89,8 +89,8 @@
 				<br>&nbsp;&nbsp;&nbsp;&nbsp;@@.green;Something almost miraculous has happened.@@ $Attendant.slaveName has always refused to believe that $slaves[$i].slaveName could not be reached, and has lavished patient tenderness on her in $spaName. $slaves[$i].slaveName has begun to respond, and is stirring from her mental torpor.
 				<<set $slaves[$i].devotion = -3, $slaves[$i].sexualFlaw = "apathetic", $slaves[$i].behavioralFlaw = either("hates men", "odd"), $slaves[$i].fetish = "none", $slaves[$i].fetishKnown = 1>>
 				<<set _spr = $genePool.findIndex(function(s) { return s.ID == $slaves[$i].ID; })>>
-				<<if $genePool[_spr].intelligence > -3>>
-					<<set $slaves[$i].intelligence = $genePool[_spr].intelligence-1>>
+				<<if $genePool[_spr].intelligence >= -95>>
+					<<set $slaves[$i].intelligence = $genePool[_spr].intelligence-30>>
 				<</if>>
 				<<if ($arcologies[0].FSPaternalist > 0)>>
 					Society @@.green;strongly approves@@ of $slaves[$i].slaveName being restored to sanity, which advances ideals about enlightened slave ownership.
@@ -196,7 +196,7 @@
 				<</if>>
 			<</if>>
 		<</switch>>
-		<<if ($Attendant.intelligence > 0) && (_attendantUsedCure == 0) && random(1,100) > (100-($Attendant.intelligence*10)-_seed) && ($spaFix == 0)>>
+		<<if ($Attendant.intelligence+$Attendant.intelligenceImplant > 15) && (_attendantUsedCure == 0) && (($Attendant.intelligence+$Attendant.intelligenceImplant)+_seed) > random(1,200) && ($spaFix == 0)>>
 			<<if $slaves[$i].behavioralFlaw != "none">>
 				<<run SoftenBehavioralFlaw($slaves[$i])>>
 				<<set _attendantUsedCure += 1>>
diff --git a/src/uncategorized/surgeryDegradation.tw b/src/uncategorized/surgeryDegradation.tw
index 1a2c45f485d..e3012245d1e 100644
--- a/src/uncategorized/surgeryDegradation.tw
+++ b/src/uncategorized/surgeryDegradation.tw
@@ -25,7 +25,7 @@
 
 <<set _slaveDevotion = $activeSlave.devotion>>
 
-<<if ($activeSlave.health < random(-100,-80)) && !["braces", "removeBraces", "basicPLimbs", "sexPLimbs", "beautyPLimbs", "combatPLimbs", "cyberPLimbs", "insemination", "chem castrate"].includes($surgeryType)>>
+<<if ($activeSlave.health < random(-100,-80)) && !["braces", "removeBraces", "basicPLimbs", "sexPLimbs", "beautyPLimbs", "combatPLimbs", "cyberPLimbs", "insemination", "chem castrate", "body hair removal", "hair removal", "eyebrow removal"].includes($surgeryType)>>
 	$activeSlave.slaveName @@.red;has died from complications of surgery.@@
 	<<if $surgeryType == "ocular implant">>At least the ocular implants are still good.<<set $stockpile.ocularImplant++>><</if>>
 	<<if $surgeryType == "cochlear implant">>At least the cochlear implants are still good.<<set $stockpile.cochlearImplant++>><</if>>
@@ -2240,6 +2240,24 @@ As the remote surgery's long recovery cycle completes,
 	<</if>>
 	<br><br>As this was a non-invasive procedure $his health was not affected.
 
+<<case "eyebrow removal">>
+	<<set $activeSlave.eyebrowHStyle = "bald">>
+	When $he <<if $activeSlave.amp == 1>>is carried<<else>>walks<</if>> out of the surgery $he feels the breeze on $his face and realizes that $his eyebrows are gone, permanantly.
+	<<if $activeSlave.fetish != "mindbroken" && $activeSlave.fuckdoll == 0>>
+		<br>
+		<<if $activeSlave.devotion > 50>>
+			$He is @@.mediumaquamarine;thrilled@@ at how easy it will be to do $his makeup for up now that $he doesn't have to worry about $his eyebrows any longer.
+			<<set $activeSlave.trust += 2>>
+		<<elseif $activeSlave.devotion >= -20>>
+			$His missing facial feature @@.mediumorchid;unnerves $him@@ a little. $He @@.gold;shudders nervously@@ about what plans you may have to replace them.
+			<<set $activeSlave.trust -= 2, $activeSlave.devotion -= 2>>
+		<<else>>
+			$He is @@.mediumorchid;sad@@ and @@.gold;frightened@@ that you would force this on $him.
+			<<set $activeSlave.trust -= 5, $activeSlave.devotion -= 5>>
+		<</if>>
+	<</if>>
+	<br><br>As this was a non-invasive procedure $his health was not affected.
+
 <<case "hair removal">>
 	<<set $activeSlave.hStyle = "bald">>
 	<<set $activeSlave.eyebrowHStyle = "hairless">>
@@ -2442,7 +2460,7 @@ As the remote surgery's long recovery cycle completes,
 
 <<if ($PC.medicine >= 100) && !["basicPLimbs", "sexPLimbs", "beautyPLimbs", "combatPLimbs", "cyberPLimbs"].includes($surgeryType)>>
 	<br><br>
-	<<if !["insemination", "braces", "removeBraces", "chem castrate"].includes($surgeryType)>>
+	<<if !["insemination", "braces", "removeBraces", "chem castrate", "body hair removal", "hair removal", "eyebrow removal"].includes($surgeryType)>>
 		Since you @@.springgreen;performed the surgery yourself,@@ and you do artist's work, $his health is @@.green;less affected@@ by the surgery than it would have been if you'd paid some hack to do it remotely.
 		<<set $activeSlave.health += 5>>
 	<</if>>
diff --git a/src/utility/assayWidgets.tw b/src/utility/assayWidgets.tw
index 8d04dbe85e7..24db7faad8d 100644
--- a/src/utility/assayWidgets.tw
+++ b/src/utility/assayWidgets.tw
@@ -8,14 +8,14 @@
 
 <<if $args[0].fuckdoll == 0>> /* NOT A FUCKDOLL */
 
-<<set $beauty += 150 - ($args[0].visualAge*3) + (Math.min($args[0].health,100)/5) - ($args[0].waist/20) - ($args[0].muscles/30) +($args[0].lips/10) + ($args[0].face/5) + ($args[0].clit) + (($args[0].height-160)/10) + ($args[0].voice) + (3*$args[0].intelligence) + ($args[0].entertainSkill/10) + ($args[0].whoreSkill/10) + (2*$args[0].hips)>>
+<<set $beauty += 150 - ($args[0].visualAge*3) + (Math.min($args[0].health,100)/5) - ($args[0].waist/20) - ($args[0].muscles/30) +($args[0].lips/10) + ($args[0].face/5) + ($args[0].clit) + (($args[0].height-160)/10) + ($args[0].voice) + (($args[0].intelligence+$args[0].intelligenceImplant)/10) + ($args[0].entertainSkill/10) + ($args[0].whoreSkill/10) + (2*$args[0].hips)>>
 
 <<if $arcologies[0].FSDegradationist != "unset">>
-	<<set $beauty -= ($arcologies[0].FSDegradationist/10)*$args[0].intelligence>>
+	<<set $beauty -= ($arcologies[0].FSDegradationist/10)*($args[0].intelligence+$args[0].intelligenceImplant/20)>>
 <</if>>
 
 <<if $arcologies[0].FSGenderFundamentalistLawBimbo == 1>>
-	<<set $beauty -= 6*$args[0].intelligence>>
+	<<set $beauty -= ($args[0].intelligence+$args[0].intelligenceImplant)/2>>
 <</if>>
 
 <<if $args[0].teeth == "crooked">>
@@ -1324,9 +1324,25 @@
 		<<set _slaveMultiplier -= 0.1>>
 	<</if>>
 <</if>>
-<<set _slaveMultiplier += 0.05*$args[0].intelligence>>
-<<if $args[0].intelligenceImplant == 1>>
-	<<set _slaveMultiplier += 0.1-($args[0].intelligence*0.02)>>
+
+/* this can be handled, save for the vertex, with a cubic function but I can not for the life of me derive the formula without one of theose graphing calculators */
+<<set _int = $args[0].intelligence+$args[0].intelligenceImplant>>
+<<if _int >= 130>>
+	<<set _slaveMultiplier += 0.16>>
+<<elseif _int > 95>>
+	<<set _slaveMultiplier += 0.8>>
+<<elseif _int > 50>>
+	<<set _slaveMultiplier += 0.4>>
+<<elseif _int > 15>>
+	<<set _slaveMultiplier += 0.2>>
+<<elseif _int >= -15>>
+	<<set _slaveMultiplier += 0.1>>
+<<elseif _int >= -50>>
+	<<set _slaveMultiplier += -0.2>>
+<<elseif _int >= -95>>
+	<<set _slaveMultiplier += -0.4>>
+<<elseif _int >= -100>>
+	<<set _slaveMultiplier += -0.8>>
 <</if>>
 
 <<if $args[0].vagina > -1 && $arcologies[0].FSRestartSMR == 1>>
diff --git a/src/utility/descriptionWidgetsFlesh.tw b/src/utility/descriptionWidgetsFlesh.tw
index 1f9d61f314b..e2477a8fe7d 100644
--- a/src/utility/descriptionWidgetsFlesh.tw
+++ b/src/utility/descriptionWidgetsFlesh.tw
@@ -4740,95 +4740,123 @@ $He's got a
 	<<else>>
 		$His gaze is empty,
 	<</if>>
-	<<if ($activeSlave.intelligence >= 3)>>
+	<<if ($activeSlave.intelligence > 95)>>
 		but $his facial expressions reveal $he is incisive, quick, cunning;
-		<<if ($activeSlave.intelligenceImplant != 1)>>
-			$he is so @@.deepskyblue;brilliant@@ that $his lack of education is unimportant.
+		<<if ($activeSlave.intelligence+$activeSlave.intelligenceImplant >= 130)>>
+			with $his education, $he is so far @@.deepskyblue;beyond brilliant@@ that $he is nearly peerless.
+		<<elseif $activeSlave.intelligenceImplant >= 15>>
+			$he is both @@.deepskyblue;brilliant@@ and <<if $activeSlave.intelligenceImplant >= 30>>well <</if>>educated.
 		<<else>>
-			$he is both @@.deepskyblue;brilliant@@ and well educated.
+			$he is so @@.deepskyblue;brilliant@@ that $his <<if $activeSlave.intelligenceImplant > 0>>meager<<else>>lack of<</if>> education is unimportant.
 		<</if>>
-	<<elseif ($activeSlave.intelligence >= 2)>>
-		<<if ($activeSlave.intelligenceImplant != 1)>>
-			but $his face is alive with intelligence; $he is so @@.deepskyblue;highly intelligent@@ that $his lack of education is unimportant.
+	<<elseif ($activeSlave.intelligence > 50)>>
+		<<if ($activeSlave.intelligence+$activeSlave.intelligenceImplant > 95)>>
+			but $his facial expressions reveal $he is incisive, quick, cunning; with $his education, $he is can be considered @@.deepskyblue;brilliant.@@
+		<<elseif $activeSlave.intelligenceImplant >= 15>>
+			but $his face is alive with intelligence; $he is both @@.deepskyblue;highly intelligent@@ and <<if $activeSlave.intelligenceImplant >= 30>>well <</if>>educated.
 		<<else>>
-			but $his face is alive with intelligence; $he is both @@.deepskyblue;highly intelligent@@ and well educated.
+			but $his face is alive with intelligence; $he is so @@.deepskyblue;highly intelligent@@ that $his <<if $activeSlave.intelligenceImplant > 0>>meager<<else>>lack of<</if>> education is unimportant.
 		<</if>>
-	<<elseif ($activeSlave.intelligence >= 1)>>
-		<<if ($activeSlave.intelligenceImplant != 1)>>
-			but $his facial expressions reveal $his cleverness; $he is of @@.deepskyblue;above average intelligence@@ despite being undereducated.
+	<<elseif ($activeSlave.intelligence > 15)>>
+		<<if ($activeSlave.intelligence+$activeSlave.intelligenceImplant > 50)>>
+			but $his face is alive with intelligence; with $his education, $he can be considered @@.deepskyblue;highly intelligent.@@
+		<<elseif $activeSlave.intelligenceImplant >= 15>>
+			but $his facial expressions reveal $his cleverness; $he is of @@.deepskyblue;above average intelligence@@ and <<if $activeSlave.intelligenceImplant >= 30>>well <</if>>educated.
 		<<else>>
-			but $his facial expressions reveal $his cleverness; $he is of @@.deepskyblue;above average intelligence@@ due to being well educated.
+			but $his facial expressions reveal $his cleverness; $he is of @@.deepskyblue;above average intelligence@@ despite being undereducated.
 		<</if>>
-	<<elseif ($activeSlave.intelligence >= 0)>>
-		<<if ($activeSlave.intelligenceImplant != 1)>>
-			but $his facial expressions reveal $his alertness; $he is of average intelligence and is undereducated.
+	<<elseif ($activeSlave.intelligence >= -15)>>
+		<<if ($activeSlave.intelligence+$activeSlave.intelligenceImplant > 15)>>
+			but $his facial expressions reveal $his cleverness; with $his education, $he can be considered of @@.deepskyblue;above average intelligence.@@
+		<<elseif $activeSlave.intelligenceImplant >= 15>>
+			but $his facial expressions reveal $his alertness; $he is of average intelligence due to being <<if $activeSlave.intelligenceImplant >= 30>>well <</if>>educated.
 		<<else>>
-			but $his facial expressions reveal $his alertness; $he is of average intelligence due to being well educated.
+			but $his facial expressions reveal $his alertness; $he is of average intelligence and is undereducated.
 		<</if>>
-	<<elseif ($activeSlave.intelligence >= -1)>>
-		<<if ($activeSlave.intelligenceImplant != 1)>>
-			but $his facial expressions reveal $he is rather dim; $he is of @@.orangered;below average intelligence@@ and is poorly educated.
+	<<elseif ($activeSlave.intelligence >= -50)>>
+		<<if ($activeSlave.intelligence+$activeSlave.intelligenceImplant >= -15)>>
+			but $his facial expressions reveal $his alertness; with $his education, $he can be considered of average intelligence.
+		<<elseif $activeSlave.intelligenceImplant >= -15>>
+			but $his facial expressions reveal $he is rather dim; $he is of @@.orangered;below average intelligence@@ despite having been <<if $activeSlave.intelligenceImplant >= 30>>thoroughly <</if>>educated.
 		<<else>>
-			but $his facial expressions reveal $he is rather dim; $he is of @@.orangered;below average intelligence@@ despite having been educated.
+			but $his facial expressions reveal $he is rather dim; $he is of @@.orangered;below average intelligence@@ and is poorly educated.
 		<</if>>
-	<<elseif ($activeSlave.intelligence >= -2)>>
-		<<if ($activeSlave.intelligenceImplant != 1)>>
-			but $his facial expressions reveal $he is as dull as $his eyes; $he is @@.orangered;quite stupid@@ and ignorant.
+	<<elseif ($activeSlave.intelligence >= -95)>>
+		<<if ($activeSlave.intelligence+$activeSlave.intelligenceImplant >= -50)>>
+			but $his facial expressions reveal $he is rather dim; even with $his education, $he can only be considered of @@.orangered;below average intelligence.@@
+		<<elseif $activeSlave.intelligenceImplant >= 15>>
+			but $his facial expressions reveal $he is as dull as $his eyes; $he is @@.orangered;quite stupid@@ despite having <<if $activeSlave.intelligenceImplant >= 30>>an advanced<<else>>some<</if>> education.
 		<<else>>
-			but $his facial expressions reveal $he is as dull as $his eyes; $he is @@.orangered;quite stupid@@ despite having some education.
+			but $his facial expressions reveal $he is as dull as $his eyes; $he is @@.orangered;quite stupid@@ and ignorant.
 		<</if>>
 	<<else>>
 		though you doubt it would be much different if $he could see;
-		<<if ($activeSlave.intelligenceImplant != 1)>>
-			$he is @@.orangered;a moron@@, and ignorant to boot.
-		<<else>>
+		<<if ($activeSlave.intelligence+$activeSlave.intelligenceImplant >= -95)>>
+			even with $his education, $he is still @@.orangered;really stupid.@@
+		<<elseif $activeSlave.intelligenceImplant > 0>>
 			$he is @@.orangered;a moron@@, yet somehow still remembers the basics of an education.
+		<<else>>
+			$he is @@.orangered;a moron@@, and ignorant to boot.
 		<</if>>
 	<</if>>
 <<else>>
-	<<if ($activeSlave.intelligence >= 3)>>
+	<<if ($activeSlave.intelligence > 95)>>
 		$His $activeSlave.eyeColor-eyed gaze is incisive, quick, cunning;
-		<<if ($activeSlave.intelligenceImplant != 1)>>
-			$he is so @@.deepskyblue;brilliant@@ that $his lack of education is unimportant.
+		<<if ($activeSlave.intelligence+$activeSlave.intelligenceImplant >= 130)>>
+			with $his education, $he is so far @@.deepskyblue;beyond brilliant@@ that $he is nearly peerless.
+		<<elseif $activeSlave.intelligenceImplant >= 15>>
+			$he is both @@.deepskyblue;brilliant@@ and <<if $activeSlave.intelligenceImplant >= 30>>well <</if>>educated.
 		<<else>>
-			$he is both @@.deepskyblue;brilliant@@ and well educated.
+			$he is so @@.deepskyblue;brilliant@@ that $his <<if $activeSlave.intelligenceImplant > 0>>meager<<else>>lack of<</if>> education is unimportant.
 		<</if>>
-	<<elseif ($activeSlave.intelligence >= 2)>>
-		<<if ($activeSlave.intelligenceImplant != 1)>>
-			$His $activeSlave.eyeColor eyes are alive with intelligence; $he is so @@.deepskyblue;highly intelligent@@ that $his lack of education is unimportant.
+	<<elseif ($activeSlave.intelligence > 50)>>
+		<<if ($activeSlave.intelligence+$activeSlave.intelligenceImplant > 95)>>
+			$His $activeSlave.eyeColor-eyed gaze is incisive, quick, cunning; with $his education, $he is can be considered @@.deepskyblue;brilliant.@@
+		<<elseif $activeSlave.intelligenceImplant >= 15>>
+			$His $activeSlave.eyeColor eyes are alive with intelligence; $he is both @@.deepskyblue;highly intelligent@@ and <<if $activeSlave.intelligenceImplant >= 30>>well <</if>>educated.
 		<<else>>
-			$His $activeSlave.eyeColor eyes are alive with intelligence; $he is both @@.deepskyblue;highly intelligent@@ and well educated.
+			$His $activeSlave.eyeColor eyes are alive with intelligence; $he is so @@.deepskyblue;highly intelligent@@ that $his <<if $activeSlave.intelligenceImplant > 0>>meager<<else>>lack of<</if>> education is unimportant.
 		<</if>>
-	<<elseif ($activeSlave.intelligence >= 1)>>
-		<<if ($activeSlave.intelligenceImplant != 1)>>
-			$His $activeSlave.eyeColor eyes are clever; $he is of @@.deepskyblue;above average intelligence@@ despite being undereducated.
+	<<elseif ($activeSlave.intelligence > 15)>>
+		<<if ($activeSlave.intelligence+$activeSlave.intelligenceImplant > 50)>>
+			$His $activeSlave.eyeColor eyes are alive with intelligence; with $his education, $he can be considered @@.deepskyblue;highly intelligent.@@
+		<<elseif $activeSlave.intelligenceImplant >= 15>>
+			$His $activeSlave.eyeColor eyes are clever; $he is of @@.deepskyblue;above average intelligence@@ and <<if $activeSlave.intelligenceImplant >= 30>>well <</if>>educated.
 		<<else>>
-			$His $activeSlave.eyeColor eyes are clever; $he is of @@.deepskyblue;above average intelligence@@ due to being well educated.
+			$His $activeSlave.eyeColor eyes are clever; $he is of @@.deepskyblue;above average intelligence@@ despite being undereducated.
 		<</if>>
-	<<elseif ($activeSlave.intelligence >= 0)>>
-		<<if ($activeSlave.intelligenceImplant != 1)>>
-			$His $activeSlave.eyeColor eyes are alert; $he is of average intelligence and is undereducated.
+	<<elseif ($activeSlave.intelligence >= -15)>>
+		<<if ($activeSlave.intelligence+$activeSlave.intelligenceImplant > 15)>>
+			$His $activeSlave.eyeColor eyes are clever; with $his education, $he can be considered of @@.deepskyblue;above average intelligence.@@
+		<<elseif $activeSlave.intelligenceImplant >= 15>>
+			$His $activeSlave.eyeColor eyes are alert; $he is of average intelligence due to being <<if $activeSlave.intelligenceImplant >= 30>>well <</if>>educated.
 		<<else>>
-			$His $activeSlave.eyeColor eyes are alert; $he is of average intelligence due to being well educated.
+			$His $activeSlave.eyeColor eyes are alert; $he is of average intelligence and is undereducated.
 		<</if>>
-	<<elseif ($activeSlave.intelligence >= -1)>>
-		<<if ($activeSlave.intelligenceImplant != 1)>>
-			$His $activeSlave.eyeColor eyes are dim; $he is of @@.orangered;below average intelligence@@ and is poorly educated.
+	<<elseif ($activeSlave.intelligence >= -50)>>
+		<<if ($activeSlave.intelligence+$activeSlave.intelligenceImplant >= -15)>>
+			$His $activeSlave.eyeColor eyes are alert; with $his education, $he can be considered of average intelligence.
+		<<elseif $activeSlave.intelligenceImplant >= -15>>
+			$His $activeSlave.eyeColor eyes are dim; $he is of @@.orangered;below average intelligence@@ despite having been <<if $activeSlave.intelligenceImplant >= 30>>thoroughly <</if>>educated.
 		<<else>>
-			$His $activeSlave.eyeColor eyes are dim; $he is of @@.orangered;below average intelligence@@ despite having been educated.
+			$His $activeSlave.eyeColor eyes are dim; $he is of @@.orangered;below average intelligence@@ and is poorly educated.
 		<</if>>
-	<<elseif ($activeSlave.intelligence >= -2)>>
-		<<if ($activeSlave.intelligenceImplant != 1)>>
-			$His $activeSlave.eyeColor eyes are dull; $he is @@.orangered;quite stupid@@ and ignorant.
+	<<elseif ($activeSlave.intelligence >= -95)>>
+		<<if ($activeSlave.intelligence+$activeSlave.intelligenceImplant >= -50)>>
+			$His $activeSlave.eyeColor eyes are dim; even with $his education, $he can only be considered of @@.orangered;below average intelligence.@@
+		<<elseif $activeSlave.intelligenceImplant >= 15>>
+			$His $activeSlave.eyeColor eyes are dull; $he is @@.orangered;quite stupid@@ despite having <<if $activeSlave.intelligenceImplant >= 30>>an advanced<<else>>some<</if>> education.
 		<<else>>
-			$His $activeSlave.eyeColor eyes are dull; $he is @@.orangered;quite stupid@@ despite having some education.
+			$His $activeSlave.eyeColor eyes are dull; $he is @@.orangered;quite stupid@@ and ignorant.
 		<</if>>
 	<<else>>
 		$His $activeSlave.eyeColor-eyed gaze betrays near-total insensibility;
-		<<if ($activeSlave.intelligenceImplant != 1)>>
-			$he is @@.orangered;a moron@@, and ignorant to boot.
-		<<else>>
+		<<if ($activeSlave.intelligence+$activeSlave.intelligenceImplant >= -95)>>
+			even with $his education, $he is still @@.orangered;really stupid.@@
+		<<elseif $activeSlave.intelligenceImplant > 0>>
 			$he is @@.orangered;a moron@@, yet somehow still remembers the basics of an education.
+		<<else>>
+			$he is @@.orangered;a moron@@, and ignorant to boot.
 		<</if>>
 	<</if>>
 <</if>>
diff --git a/src/utility/slaveCreationWidgets.tw b/src/utility/slaveCreationWidgets.tw
index 7ded471c0d1..ba0e6bb6335 100644
--- a/src/utility/slaveCreationWidgets.tw
+++ b/src/utility/slaveCreationWidgets.tw
@@ -4157,7 +4157,7 @@
 		<<set $prisonCrime = "is incarcerated for racketeering.">>
 		<<set $activeSlave.devotion = random(-20,20)>>
 		<<set $activeSlave.trust = random(-20,20)>>
-		<<set $activeSlave.intelligence = random(0,100)>>
+		<<set $activeSlave.intelligence = random(0,99)>>
 		<<set $activeSlave.intelligenceImplant = 15>>
 		<<set $activeSlave.health = random(20,60)>>
 	<<case "bribery">>
@@ -4166,7 +4166,7 @@
 		<<set $prisonCrime = "is incarcerated for bribery.">>
 		<<set $activeSlave.devotion = random(-50,-20)>>
 		<<set $activeSlave.trust = random(20,50)>>
-		<<set $activeSlave.intelligence = random(0,100)>>
+		<<set $activeSlave.intelligence = random(0,99)>>
 		<<set $activeSlave.intelligenceImplant = 15>>
 		<<set $activeSlave.health = random(20,60)>>
 		<<set $activeSlave.behavioralFlaw = "arrogant">>
@@ -4176,7 +4176,7 @@
 		<<set $prisonCrime = "is incarcerated for blackmail.">>
 		<<set $activeSlave.devotion = random(-20,20)>>
 		<<set $activeSlave.trust = random(20,50)>>
-		<<set $activeSlave.intelligence = random(0,100)>>
+		<<set $activeSlave.intelligence = random(0,99)>>
 		<<set $activeSlave.intelligenceImplant = 15>>
 		<<set $activeSlave.health = random(20,60)>>
 		<<set $activeSlave.behavioralFlaw = "arrogant">>
@@ -4188,7 +4188,7 @@
 		<<set $prisonCrime = "is incarcerated for embezzlement.">>
 		<<set $activeSlave.devotion = random(0,20)>>
 		<<set $activeSlave.trust = random(-10,10)>>
-		<<set $activeSlave.intelligence = random(0,100)>>
+		<<set $activeSlave.intelligence = random(0,99)>>
 		<<set $activeSlave.intelligenceImplant = 15>>
 		<<set $activeSlave.health = random(20,60)>>
 	<<case "fraud">>
@@ -4197,7 +4197,7 @@
 		<<set $prisonCrime = "is incarcerated for fraud.">>
 		<<set $activeSlave.devotion = random(20,40)>>
 		<<set $activeSlave.trust = random(20,50)>>
-		<<set $activeSlave.intelligence = random(0,100)>>
+		<<set $activeSlave.intelligence = random(0,99)>>
 		<<set $activeSlave.intelligenceImplant = 15>>
 		<<set $activeSlave.health = random(20,60)>>
 	<<case "tax evasion">>
@@ -4206,7 +4206,7 @@
 		<<set $prisonCrime = "is incarcerated for tax evasion.">>
 		<<set $activeSlave.devotion = random(-20,0)>>
 		<<set $activeSlave.trust = random(20,50)>>
-		<<set $activeSlave.intelligence = random(0,100)>>
+		<<set $activeSlave.intelligence = random(0,99)>>
 		<<set $activeSlave.intelligenceImplant = 15>>
 		<<set $activeSlave.health = random(20,60)>>
 	<<case "malpractice">>
@@ -4215,7 +4215,7 @@
 		<<set $prisonCrime = "is incarcerated for malpractice.">>
 		<<set $activeSlave.devotion = random(-50,0)>>
 		<<set $activeSlave.trust = random(-100,-50)>>
-		<<set $activeSlave.intelligence = random(55,100)>>
+		<<set $activeSlave.intelligence = random(55,99)>>
 		<<set $activeSlave.intelligenceImplant = 30>>
 		<<set $activeSlave.health = random(-40,20)>>
 	<<case "abuse of power">>
@@ -4224,7 +4224,7 @@
 		<<set $prisonCrime = "is incarcerated for abuse of power.">>
 		<<set $activeSlave.devotion = random(-100,0)>>
 		<<set $activeSlave.trust = random(-50,50)>>
-		<<set $activeSlave.intelligence = random(60,100)>>
+		<<set $activeSlave.intelligence = random(60,99)>>
 		<<set $activeSlave.intelligenceImplant = 30>>
 		<<set $activeSlave.health = random(20,60)>>
 		<<set $activeSlave.behavioralFlaw = "arrogant">>
-- 
GitLab