diff --git a/src/init/storyInit.tw b/src/init/storyInit.tw
index 161109d88c5ce73d98452cb4739cb56a71d56e35..e481f7ad4ef16df52155cd50c7a7ed7473da6589 100644
--- a/src/init/storyInit.tw
+++ b/src/init/storyInit.tw
@@ -231,6 +231,7 @@ You should have received a copy of the GNU General Public License along with thi
 	/*<<set $normalizedEvents = 0>>*/ /* commented out everywhere */
 	<<set $autosave = 1>>
 	<<set $useFSNames = 1>>
+	<<set $FSNamePref = 0>>
 	<<set $seeDetails = 1>>
 	<<set $seeDesk = 1>>
 	<<set $newModelUI = 1>>
diff --git a/src/js/assayJS.js b/src/js/assayJS.js
index 8287fa231b816b8bb5969f5fafe9ba4c39a977fa..f49bdbfd79a8716b1ecb6c2cca316172811473f2 100644
--- a/src/js/assayJS.js
+++ b/src/js/assayJS.js
@@ -1429,6 +1429,22 @@ window.DegradingName = function DegradingName(slave) {
 	slave.slaveSurname = surname;
 };
 
+window.PaternalistName = function PaternalistName(slave) {
+    if (slave.slaveName.search("Miss") === -1) {
+        if (slave.slaveName.search("Ms.") === -1) {
+            if (slave.slaveName.search("Mrs.") === -1) {
+                if (slave.relationship > 4) {
+                    slave.slaveName = ("Mrs. " + slave.slaveName);
+                } else if (slave.actualAge > 24) {
+                    slave.slaveName = ("Ms. " + slave.slaveName);
+                } else {
+                    slave.slaveName = ("Miss " + slave.slaveName);
+                }
+            }
+        }
+    }
+};
+
 window.SlaveSort = function() {
 	const comparators = {
 		Aassignment: (a, b) => a.assignment < b.assignment ? -1 : 1,
diff --git a/src/js/slaveGenerationJS.js b/src/js/slaveGenerationJS.js
index 783c33035fe400e89c9cefb5164c016bdfccb7ed..a2667c601ff537334a1881a0c9e8087f97ec4271 100644
--- a/src/js/slaveGenerationJS.js
+++ b/src/js/slaveGenerationJS.js
@@ -91,24 +91,48 @@ window.nationalityToName = function nationalityToName(slave) {
 	}
 	slave.slaveSurname = slave.birthSurname;
 	if (V.useFSNames === 1) {
-		if (V.arcologies[0].FSChattelReligionist > 20) {
-			slave.slaveName = jsEither(setup.chattelReligionistSlaveNames);
-			slave.slaveSurname = 0;
-		} else if (V.arcologies[0].FSRomanRevivalist > 20) {
-			slave.slaveName = jsEither(setup.romanSlaveNames);
-			slave.slaveSurname = jsEither(setup.romanSlaveSurnames);
-		} else if (V.arcologies[0].FSAztecRevivalist > 20) {
-			slave.slaveName = jsEither(setup.aztecSlaveNames);
-			slave.slaveSurname = 0;
-		} else if (V.arcologies[0].FSEgyptianRevivalist > 20) {
-			slave.slaveName = jsEither(setup.ancientEgyptianSlaveNames);
-			slave.slaveSurname = 0;
-		} else if (V.arcologies[0].FSEdoRevivalist > 20) {
-			slave.slaveName = jsEither(setup.edoSlaveNames);
-			slave.slaveSurname = jsEither(setup.edoSlaveSurnames);
-		} else if (V.arcologies[0].FSDegradationist !== "unset") {
-			DegradingName(slave);
-		}
+	    if(V.FSNamePref === 0) {
+	        if (V.arcologies[0].FSChattelReligionist > 20) {
+	            slave.slaveName = jsEither(setup.chattelReligionistSlaveNames);
+	            slave.slaveSurname = 0;
+	        } else if (V.arcologies[0].FSRomanRevivalist > 20) {
+	            slave.slaveName = jsEither(setup.romanSlaveNames);
+	            slave.slaveSurname = jsEither(setup.romanSlaveSurnames);
+	        } else if (V.arcologies[0].FSAztecRevivalist > 20) {
+	            slave.slaveName = jsEither(setup.aztecSlaveNames);
+	            slave.slaveSurname = 0;
+	        } else if (V.arcologies[0].FSEgyptianRevivalist > 20) {
+	            slave.slaveName = jsEither(setup.ancientEgyptianSlaveNames);
+	            slave.slaveSurname = 0;
+	        } else if (V.arcologies[0].FSEdoRevivalist > 20) {
+	            slave.slaveName = jsEither(setup.edoSlaveNames);
+	            slave.slaveSurname = jsEither(setup.edoSlaveSurnames);
+	        } else if (V.arcologies[0].FSDegradationist !== "unset") {
+	            DegradingName(slave);
+	        }
+	    } else if(V.FSNamePref === 1) {
+	        slave.slaveName = jsEither(setup.chattelReligionistSlaveNames);
+	        slave.slaveSurname = 0;
+	    } else if(V.FSNamePref === 2) {
+	        slave.slaveName = jsEither(setup.romanSlaveNames);
+	        slave.slaveSurname = jsEither(setup.romanSlaveSurnames);
+	    } else if(V.FSNamePref === 3) {
+	        slave.slaveName = jsEither(setup.aztecSlaveNames);
+	        slave.slaveSurname = 0;
+	    } else if(V.FSNamePref === 4) {
+	        slave.slaveName = jsEither(setup.ancientEgyptianSlaveNames);
+	        slave.slaveSurname = 0;
+	    } else if(V.FSNamePref === 5) {
+	        slave.slaveName = jsEither(setup.edoSlaveNames);
+	        slave.slaveSurname = jsEither(setup.edoSlaveSurnames);
+	    } else if(V.FSNamePref === 6) {
+	        DegradingName(slave);
+	    } else if(V.FSNamePref === 7) {
+	        PaternalistName(slave);
+	    } else if(V.FSNamePref === 8) {
+	        slave.slaveName = jsEither(setup.bimboSlaveNames);
+	        slave.slaveSurname = 0;
+	    }
 	}
 };
 
diff --git a/src/uncategorized/BackwardsCompatibility.tw b/src/uncategorized/BackwardsCompatibility.tw
index 6dee86e68c524aba680be8a1974c38b9f41f4429..5b845129fc52ecdb09d8e467482e2cc5416a18b8 100644
--- a/src/uncategorized/BackwardsCompatibility.tw
+++ b/src/uncategorized/BackwardsCompatibility.tw
@@ -554,6 +554,9 @@
 <<if ndef $surnamesForbidden>>
 	<<set $surnamesForbidden = 0>>
 <</if>>
+<<if ndef $FSNamePref>>
+	<<set $FSNamePref = 0>>
+<</if>>
 <<if ndef $meshImplants>>
 	<<set $meshImplants = 0>>
 <</if>>
diff --git a/src/uncategorized/universalRules.tw b/src/uncategorized/universalRules.tw
index 002a1f4355ddfdc974332f461ecb25b1998969d4..5d05b7f7fbe3a0a4019137ad385c52641cd8f006 100644
--- a/src/uncategorized/universalRules.tw
+++ b/src/uncategorized/universalRules.tw
@@ -456,6 +456,58 @@ Slave nicknames are
 		Future society names for new slaves are currently @@.red;NOT APPLIED.@@ [[Apply|Universal Rules][$useFSNames = 1]]
 	<<else>>
 		Future society names for new slaves are currently @@.cyan;APPLIED.@@ [[Stop applying|Universal Rules][$useFSNames = 0]]
+		
+		<<if $FSNamePref == 0>>
+		    You are currently not setting direction towards which Future Society names are preferred.
+		<<elseif $FSNamePref == 1>>
+		    New Slaves are currently being given devotional names.
+		<<elseif $FSNamePref == 2>>
+		    New slaves are currently being named according to Roman Custom.
+		<<elseif $FSNamePref == 3>>
+		    New slaves are currently being named according to ancient Aztec Custom.
+		<<elseif $FSNamePref == 4>>
+		    New slaves are currently being named according to ancient Egyptian Custom.
+		<<elseif $FSNamePref == 5>>
+		    New slaves are currently being named according to feudal Japanese Custom.
+		<<elseif $FSNamePref == 6>>
+		    New slaves are currently being named according to Degradationalist Custom.
+		<<elseif $FSNamePref == 7>>
+		    New slaves are currently being named according to Paternalist Custom.
+		<<elseif $FSNamePref == 8>>
+		    New slaves are currently being given simple bimbo names.
+		<<elseif $FSNamePref == 9>>
+		    New Slaves are currently being named according to Pastoralist Custom.
+		<</if>>
+		
+		<br>
+		
+		<<if $FSNamePref != 0>>
+		    [[No Longer Specify which Future Society to Draw Names From.|Universal Rules][$FSNamePref = 0]] <br>
+		<</if>>
+		<<if $FSNamePref != 1 && $arcologies[0].FSChattelReligionist >= 20>>
+		    [[Give New Slaves Devotional Names|Universal Rules][$FSNamePref = 1]] <br>
+		<</if>>
+		<<if $FSNamePref != 2 && $arcologies[0].FSRomanRevivalist > 20>>
+		    [[Give New slaves Roman Names|Universal Rules][$FSNamePref = 2]] <br>
+		<</if>>
+		<<if $FSNamePref != 3 && $arcologies[0].FSAztecRevivalist > 20>>
+		    [[Give New Slaves Ancient Aztec Names.|Universal Rules][$FSNamePref = 3]] <br>
+		<</if>>
+		<<if $FSNamePref != 4 && $arcologies[0].FSEgyptianRevivalist > 20>>
+		    [[Give New Slaves Ancient Egyptian Names|Universal Rules][$FSNamePref = 4]] <br>
+		<</if>>
+		<<if $FSNamePref != 5 && $arcologies[0].FSEdoRevivalist > 20>>
+		    [[Give New Slaves Feudal Japanese Names|Universal Rules][$FSNamePref = 5]] <br>
+		<</if>>
+		<<if $FSNamePref != 6 && $arcologies[0].FSDegradationist !== "unset">>
+		    [[Give New Slaves Degrading Names|Universal Rules][$FSNamePref = 6]] <br>
+		<</if>>
+		<<if $FSNamePref != 7 && $arcologies[0].FSPaternalist >= 20>>
+		    [[Give New Slaves Paternalist Names|Universal Rules][$FSNamePref = 7]] <br>
+		<</if>>
+		<<if $FSNamePref != 8 && $arcologies[0].FSIntellectualDependency >= 20>>
+		    [[Give New Slaves Simple Bimbo Names|Universal Rules][$FSNamePref = 8]]
+		<</if>>
 	<</if>>
 <</if>>