diff --git a/src/js/economyJS.js b/src/js/economyJS.js
index 5b145c0b96cc83abfe48d128507f897c85392a37..d35dda2757a28fd330d0fa5230761d15eb5353be 100644
--- a/src/js/economyJS.js
+++ b/src/js/economyJS.js
@@ -1162,6 +1162,7 @@ window.repX = function(rep, what, who) {
 	rep = Math.trunc(rep);
 
 	//INCOME
+	//These are all scaled relative to current rep except when recording the who, to keep comparisons between slaves possible across times. This quite drastically reduces rep income at high levels of rep and only slightly at low levels.
 	if(rep > 0) {
 
 		//record the slave, if available
diff --git a/src/uncategorized/reputation.tw b/src/uncategorized/reputation.tw
index dcf562dbe47b61461532b37ba21aa543a1838f12..609f582864cdb1074fceded446d6391f1d5c4323 100644
--- a/src/uncategorized/reputation.tw
+++ b/src/uncategorized/reputation.tw
@@ -46,7 +46,7 @@ On formal occasions, you are announced as $PCTitle.
 <</if>>
 <</if>>
 
-<<set $repDecay = 0.2>>
+<<set $repDecay = 0.05>>
 <<if $arcologies[0].FSChattelReligionistLaw == 1>>
 	<<set _repLoss = 0, $PC.degeneracy = 0>>
 	Since you are the Prophet, your reputation no longer degrades at all.
@@ -57,13 +57,13 @@ On formal occasions, you are announced as $PCTitle.
 	<<if $arcologies[0].FSMaturityPreferentialistLaw == 1>>
 	<<if $PC.actualAge >= 65>>
 		Since you're getting on in years and have an impressive list of accomplishments, and $arcologies[0].name's society respects age, your reputation degrades quite slowly.
-		<<set _repLoss = Math.trunc(($rep-$enduringRep)*($repDecay-0.05))>>
+		<<set _repLoss = Math.trunc(($rep-$enduringRep)*($repDecay-0.0125))>>
 	<<elseif $PC.actualAge >= 50>>
 		Since you're well into middle age and have an impressive list of accomplishments, and $arcologies[0].name's society respects age, your reputation degrades quite slowly.
-		<<set _repLoss = Math.trunc(($rep-$enduringRep)*($repDecay-0.05))>>
+		<<set _repLoss = Math.trunc(($rep-$enduringRep)*($repDecay-0.0125))>>
 	<<elseif $PC.actualAge < 35>>
 		Since you're unusually young for an arcology owner, and $arcologies[0].name's society respects age, your reputation degrades quite quickly.
-		<<set _repLoss = Math.trunc(($rep-$enduringRep)*($repDecay+0.05))>>
+		<<set _repLoss = Math.trunc(($rep-$enduringRep)*($repDecay+0.0125))>>
 	<<else>>
 		Since you're only entering middle age, and $arcologies[0].name's society respects age, your reputation degrades fairly quickly.
 		<<set _repLoss = Math.trunc(($rep-$enduringRep)*($repDecay))>>
@@ -71,27 +71,27 @@ On formal occasions, you are announced as $PCTitle.
 	<<elseif $arcologies[0].FSYouthPreferentialistLaw == 1>>
 	<<if $PC.actualAge >= 65>>
 		Since you're getting on in years and have an impressive list of accomplishments, but $arcologies[0].name's society is coming to prefer youth to experience, so your reputation degrades fairly quickly.
-		<<set _repLoss = Math.trunc(($rep-$enduringRep)*($repDecay+0.05))>>
+		<<set _repLoss = Math.trunc(($rep-$enduringRep)*($repDecay+0.0125))>>
 	<<elseif $PC.actualAge >= 50>>
 		You're well into middle age and have an impressive list of accomplishments, but $arcologies[0].name's society is coming to prefer youth to experience, so your reputation degrades fairly quickly.
-		<<set _repLoss = Math.trunc(($rep-$enduringRep)*($repDecay+0.05))>>
+		<<set _repLoss = Math.trunc(($rep-$enduringRep)*($repDecay+0.0125))>>
 	<<elseif $PC.actualAge < 35>>
 		You're unusually young for an arcology owner, but $arcologies[0].name's society doesn't mind.
 		<<set _repLoss = Math.trunc(($rep-$enduringRep)*($repDecay))>>
 	<<else>>
 		Since you're entering middle age, and $arcologies[0].name's society respects youth, your reputation degrades fairly quickly.
-		<<set _repLoss = Math.trunc(($rep-$enduringRep)*($repDecay+0.05))>>
+		<<set _repLoss = Math.trunc(($rep-$enduringRep)*($repDecay+0.0125))>>
 	<</if>>
 	<<else>>
 	<<if $PC.actualAge >= 65>>
 		Since you're getting on in years and have an impressive list of accomplishments, and $arcologies[0].name's society respects age, your reputation degrades quite slowly.
-		<<set _repLoss = Math.trunc(($rep-$enduringRep)*($repDecay-0.05))>>
+		<<set _repLoss = Math.trunc(($rep-$enduringRep)*($repDecay-0.0125))>>
 	<<elseif $PC.actualAge >= 50>>
 		Since you're well into middle age and have an impressive list of accomplishments, your reputation degrades fairly slowly.
-		<<set _repLoss = Math.trunc(($rep-$enduringRep)*($repDecay-0.05))>>
+		<<set _repLoss = Math.trunc(($rep-$enduringRep)*($repDecay-0.0125))>>
 	<<elseif $PC.actualAge < 35>>
 		Since you're unusually young for an arcology owner, your reputation degrades fairly quickly.
-		<<set _repLoss = Math.trunc(($rep-$enduringRep)*($repDecay+0.05))>>
+		<<set _repLoss = Math.trunc(($rep-$enduringRep)*($repDecay+0.0125))>>
 	<<else>>
 		<<set _repLoss = Math.trunc(($rep-$enduringRep)*($repDecay))>>
 	<</if>>
@@ -103,7 +103,10 @@ On formal occasions, you are announced as $PCTitle.
 	<<elseif $enduringRep > 2000>>
 	However, you have been a figure of regard for long enough that some of your reputation has become permanent.
 	<</if>>
-	<<set $enduringRep += Math.trunc(_repLoss*0.025)>>
+	<<if _repLoss > 500>>
+		<<set _repLoss = 500>>
+	<</if>>
+	<<set $enduringRep += Math.trunc(_repLoss*0.1)>>
 <<else>>
 	<<set _repLoss = 0>>
 	<<if $enduringRep > 8000>>
@@ -150,7 +153,7 @@ On formal occasions, you are announced as $PCTitle.
 		<</if>>
 	<<else>>
 		Most prominent slaveowners are male, and your obviously feminine appearance makes it @@.red;harder for you to maintain your reputation.@@
-		<<run repX(forceNeg($rep*0.1), "PCappearance")>>
+		<<run repX(forceNeg(Math.min(($rep*0.05), 500)), "PCappearance")>>
 		<<if $arcologies[0].FSGenderFundamentalist > 10>>
 			Society @@.red;strongly resents@@ your being an arcology owner; this damages the idea that women should not be in positions of responsibility.
 			<<= FSChange("GenderFundamentalist", -5)>>
@@ -173,7 +176,7 @@ On formal occasions, you are announced as $PCTitle.
 		<</if>>
 	<<else>>
 		Most prominent slaveowners are very masculine, and your feminine appearance makes it @@.red;harder for you to maintain your reputation.@@
-		<<run repX(forceNeg($rep*0.05), "PCappearance")>>
+		<<run repX(forceNeg(Math.min(($rep*0.025), 250)), "PCappearance")>>
 		<<if $arcologies[0].FSGenderFundamentalist > 30>>
 			Society @@.red;strongly resents@@ your being an arcology owner; this damages the idea that feminine people should not be in positions of responsibility.
 			<<= FSChange("GenderFundamentalist", -5)>>
@@ -196,7 +199,7 @@ On formal occasions, you are announced as $PCTitle.
 		<</if>>
 	<<else>>
 		Most prominent slaveowners are very masculine, and though your unorthodox arrangement downstairs isn't obvious when you're clothed, the rumors are unavoidable and it's @@.red;harder for you to maintain your reputation.@@
-		<<run repX(forceNeg($rep*0.05), "PCappearance")>>
+		<<run repX(forceNeg(Math.min(($rep*0.025), 250)), "PCappearance")>>
 		<<if $arcologies[0].FSGenderFundamentalist > 30>>
 			Society @@.red;strongly resents@@ your being an arcology owner; this damages the idea that people who are not men should not be in positions of responsibility.
 			<<= FSChange("GenderFundamentalist", -5)>>
@@ -391,22 +394,22 @@ On formal occasions, you are announced as $PCTitle.
 
 <<if $PC.career == "escort" && $rep < 16000>>
 	Society @@.red;frowns@@ over being run by an ex-whore. The presence of porn of you on the net doesn't aid your reputation either.
-	<<run repX(forceNeg($rep*0.1), "PCactions")>>
+	<<run repX(forceNeg(Math.min(($rep*0.05), 500)), "PCactions")>>
 <<elseif $PC.career == "escort">>
 	Your reputation is so strong that society has accepted your previous endeavors despite how unusual it is for a prominent slaveowner to have once nearly been a slave.
 <</if>>
 <<if $PC.career == "servant" && $rep < 12000>>
 	Society @@.red;frowns@@ over being run by an ex-<<if $PC.title == 1>>butler<<else>>maid<</if>>, despite how prominent their previous owner was.
-	<<run repX(forceNeg($rep*0.1), "PCactions")>>
+	<<run repX(forceNeg(Math.min(($rep*0.05), 500)), "PCactions")>>
 <<elseif $PC.career == "servant">>
 	Your reputation is so strong that society has accepted your previous vocation despite how unusual it is for a prominent slaveowner to have once been nothing more than a lowly servant.
 <</if>>
 <<if $PC.career == "gang" && $rep < 15000>>
 	Society @@.red;frowns@@ over being run by an ex-gang leader, no matter how strong they might have been.
-	<<run repX(forceNeg($rep*0.1), "PCactions")>>
+	<<run repX(forceNeg(Math.min(($rep*0.05), 500)), "PCactions")>>
 <<elseif $PC.career == "BlackHat" && $rep < 15000>>
 	Society @@.red;dislikes@@ being run by someone so capable of dredging up secrets, especially when they used to do it for the highest bidder.
-	<<run repX(forceNeg($rep*0.1), "PCactions")>>
+	<<run repX(forceNeg(Math.min(($rep*0.05), 500)), "PCactions")>>
 <<elseif $PC.career == "gang" || $PC.career == "BlackHat">>
 	Your reputation is strong enough that society has come to accept your background as part of your image.
 <</if>>