diff --git a/src/events/intro/introSummary.tw b/src/events/intro/introSummary.tw
index 5fe5cced7e9de00cc02d6588efd7c74dff41b303..3c6b8cf465638da46f1931693474741ecf6558a9 100644
--- a/src/events/intro/introSummary.tw
+++ b/src/events/intro/introSummary.tw
@@ -545,9 +545,10 @@ __''Player Character''__
 		[[Mixed Race|Intro Summary][$PC.race = "mixed race"]]
 
 <br>__Skin tone:__
-		[[White|Intro Summary][$PC.skin = "white"]] |
+		[[Extremely Pale|Intro Summary][$PC.skin = "extremely pale"]] |
 		[[Pale|Intro Summary][$PC.skin = "pale"]] |
 		[[Fair|Intro Summary][$PC.skin = "fair"]] |
+		[[White|Intro Summary][$PC.skin = "white"]] |
 		[[Light|Intro Summary][$PC.skin = "light"]] |
 		[[Light Olive|Intro Summary][$PC.skin = "light olive"]] |
 		[[Tanned|Intro Summary][$PC.skin = "tanned"]] |
diff --git a/src/gui/Encyclopedia/encyclopedia.tw b/src/gui/Encyclopedia/encyclopedia.tw
index 736139447ac8adf4a0fba1d62e50bcd5d748a874..e1c57c2ae95562b15032322063093393b812c2e8 100644
--- a/src/gui/Encyclopedia/encyclopedia.tw
+++ b/src/gui/Encyclopedia/encyclopedia.tw
@@ -2509,7 +2509,7 @@ LORE: INTERVIEWS
 	<br>''CornCobMan'' contributed several major modpacks, which include clothing, hair and eye colors, a facility name and arcology name expansions, UI improvements, nicknames, names, balance, a huge rework of the Rules Assistant, and more. CornCobMan has indefatigably supported the RA updates.
 	<br>''Klementine'' wrote the fertility goddess skin for the personal assistant.
 	<br>''Wahn'' wrote numerous generic recruitment events.
-	<br>''PregModder'' has modded extensively, including descriptive embellishments for pregnant slaves, various asset descriptions, Master Suite reporting, the Wardrobe, a pack of facility leader interactions, options for Personal Assistant appearances, birthing scenes, fake pregnancy accessories, many other preg mechanics, blind content, expanded chubby belly descriptions, several new surgeries, neon and metallic makeup, better descriptive support for different refreshments, work on choosesOwnJob, many bugfixes, an expansion to the hostage corruption event chain, slave specific player titles, gagging and several basic gags, extended family mode, oversized sex toys, buttplug attachment system, and other, likely forgotten, things.
+	<br>''PregModder'' has modded extensively, including descriptive embellishments for pregnant slaves, various asset descriptions, Master Suite reporting, the Wardrobe, a pack of facility leader interactions, options for Personal Assistant appearances, birthing scenes, fake pregnancy accessories, many other preg mechanics, blind content, expanded chubby belly descriptions, several new surgeries, neon and metallic makeup, better descriptive support for different refreshments, work on choosesOwnJob, many bugfixes, an expansion to the hostage corruption event chain, slave specific player titles, gagging and several basic gags, extended family mode, oversized sex toys, buttplug attachment system, and other, likely forgotten, things. (And that's just the vanilla added stuff!)
 	<br>''Lolimodder'' your loli expertise will be missed.
 	<br>''pregmodfan'' for tremendous amounts of work with compilers, decompilers, etc. Single-handedly kicked this mod into its new git home. Contributed lots of bugfixes as well as fixed the RA considerably. Revamped pregnancy tracking as well. Also for ppmod, ramod, implmod, cfpmod and psmod (preg speed).
 	<br>''FCGudder'' for advanced economy reports, image improvements, cleaning and fixing extended-extended family mode, extending building widgets, anaphrodisiacs, name cleaning, height overhauling, proper slave summary caching, new shelter slaves, some crazy ass shit with vector art, fixing seDeath, coding jquery in ui support and likely one to two of these other anon credits.
@@ -2549,7 +2549,7 @@ LORE: INTERVIEWS
 	<br>''anon'' for the slave mutiny event.
 	<br>''onithyr'' for various little tweaks and additions.
 	<br>''anonNeo'' for spellchecking.
-	<br>''kopareigns'' for many text and bug fixes.
+	<br>''kopareigns'' for countless text and bug fixes.
 	<br>''Utopia'' for dirty dealings gang leader focus and updates to it.
 	<br>''hexall90'' for height growth drugs, incubator organ farm support and detailing, the dispensary cleanup, the joint Eugenics bad end rework, the Hippolyta Academy, and the Security Expansion Mod.
 	<br>''sensei'' for coding in support for commas and an excellent family tree rework.
@@ -2566,7 +2566,7 @@ LORE: INTERVIEWS
 	<br>''Faraen'' for a full vector art variant.
 	<br>''anon'' for more hair vectors for the external art.
 	<br>''Vas'' for massive JS work.
-	<br>''deepmurk'' for a massive expansion in conjunction with Nox to the original embedded vector art. Also more hairs and clothes.
+	<br>''deepmurk'' for a massive expansion in conjunction with Nox to the original embedded vector art. Also more hairs, shoes and clothes. Overhauled skin colors too.
 	<br>''Bane70'' optimized huge swaths of code with notable professionalism.
 	<br>''Circle Tritagonist'' provided several new collars and outfits.
 	<br>''Qotsafan'' submitted bugfixes.
@@ -2584,6 +2584,7 @@ LORE: INTERVIEWS
 	<br>''freecitiesbandit'' wrote a number of recruitment, future society, mercenary and random events, provided tailed buttplugs, new eyes and tattoos, and contributed the code for the mercenary raiders policy.
 	<br>''DrNoOne'' wrote the bulk slave purchase and persistent summary code.
 	<br>''Mauve'' provided vector art for chastity belts and limp dicks.
+	<br>''Klorpa'' for dozens of new nationalities and boundless new names and nicknames. Also monokinis.
 
 	<br><br>''Many other anonymous contributors'' helped fix bugs via GitHub. They will be credited by name upon request.
 
diff --git a/src/js/artColorToolsJS.tw b/src/js/artColorToolsJS.tw
index 3314a1abfa1f033673e8025f2dbf5a7774d45fd2..697950bbb82c92c7f7dd8636caa0cf87211e3281 100644
--- a/src/js/artColorToolsJS.tw
+++ b/src/js/artColorToolsJS.tw
@@ -37,6 +37,8 @@ window.extractHairColor = function(hColor) {
 		["pink", "#D18CBC"],
 		["red", "#BB2027"],
 		["silver", "#cdc9c6"],
+		["light olive", "#d4c6bb"],
+		["dark", "#a46237"],
 		/* these are not actually FreeCities canon, but like to appear in custom descriptions */
 		["dark", "#463325"],
 		["brunette", "#8D4F21"]
diff --git a/src/js/vectorRevampedArtControlJS.tw b/src/js/vectorRevampedArtControlJS.tw
index d478d0d5c8749e661c500c0de5bc201794af2667..e2bc85972160fe573e6ed1470cf9e8adb81fbac0 100644
--- a/src/js/vectorRevampedArtControlJS.tw
+++ b/src/js/vectorRevampedArtControlJS.tw
@@ -247,6 +247,7 @@ class ArtStyleControl {
 			["blue dyed", "#5b8eb7"],
 			["dyed blue", "#5b8eb7"],
 			["tiger striped", "#e2d75d"]
+			["olive", "#a46237"],
 		];
 		
 		var skinPaletteMap = new Map(skinPalette);
diff --git a/src/pregmod/electiveSurgery.tw b/src/pregmod/electiveSurgery.tw
index 7609d212b5fdf4a142394f3461c327963a397993..2848186e854fe54d5c272882736bb0bdcfa595f1 100644
--- a/src/pregmod/electiveSurgery.tw
+++ b/src/pregmod/electiveSurgery.tw
@@ -60,6 +60,9 @@ You have @@.orange;$PC.skin skin.@@<<if $PC.skin != $PC.origSkin>> Your original
 <<if $PC.skin != $PC.origSkin>>
 		[[Restore natural color|PC Surgery Degradation][$PC.skin = $PC.origSkin, $cash -= 2000, $surgeryType = "skinTone"]] |
 <</if>>
+<<if $PC.skin != "extremely pale">>
+	[[Extremely Pale|PC Surgery Degradation][$PC.skin = "extremely pale", $cash -= 2000, $surgeryType = "skinTone"]] |
+<</if>>
 <<if $PC.skin != "white">>
 	[[White|PC Surgery Degradation][$PC.skin = "white", $cash -= 2000, $surgeryType = "skinTone"]] |
 <</if>>
diff --git a/src/pregmod/pcAppearanceIntro.tw b/src/pregmod/pcAppearanceIntro.tw
index 33dca7722a0ff142be60a253a0949f24e87b4747..d61f05d0a95136a72974a43a1dd6a9412a5d7df3 100644
--- a/src/pregmod/pcAppearanceIntro.tw
+++ b/src/pregmod/pcAppearanceIntro.tw
@@ -91,6 +91,10 @@ You have $PC.skin skin.
 	<<PlayerSkin>>
 <</link>>
 |
+<<link "Extremely Pale">>
+	<<set $PC.skin = "extremely pale">>
+<</link>>
+|
 <<link "Pale">>
 	<<set $PC.skin = "pale">>
 	<<PlayerSkin>>
diff --git a/src/pregmod/widgets/pregmodWidgets.tw b/src/pregmod/widgets/pregmodWidgets.tw
index 691601ed07346e50b4a8b88c7148599042994d3a..c94ae90389f479fb9e263e08f7399c5b82beef0f 100644
--- a/src/pregmod/widgets/pregmodWidgets.tw
+++ b/src/pregmod/widgets/pregmodWidgets.tw
@@ -1098,12 +1098,12 @@ extremely pale -5
 <<widget "GenSkinTone">>
 <<script>>
 (function() {
-  var skinToMelanin = {black: 10, ebony: 9.5, 'dark brown': 9, brown: 8, 'light brown': 7.5, dark: 7, 'dark olive': 6, bronzed: 5.5, tanned: 5, olive: 4.5, 'light olive': 4, lightened: 3.5, light: 3, fair: 2, 'very fair': 1.5, 'extremely fair': 1.5, pale: 1, 'extremely pale': 0.5, 'pure white': 0.001};
+  var skinToMelanin = {black: 10, ebony: 9.5, 'dark brown': 9, brown: 8, 'light brown': 7.5, dark: 7, 'dark olive': 6, bronzed: 5.5, tanned: 5, olive: 4.5, 'light olive': 4, lightened: 3.5, light: 3, white: 2.5, fair: 2, 'very fair': 1.5, 'extremely fair': 1.25, pale: 1, 'extremely pale': 0.5, 'pure white': 0.001};
   var parents = State.variables.args;
   var skin0 = parents[0] ? (skinToMelanin[parents[0].skin] || 5) : 3;
   var skin1 = parents[1] ? (skinToMelanin[parents[1].skin] || 5) : 3;
   var skin = Math.round(Math.random() * (skin1 - skin0) + skin0);
-  State.variables.activeSlave.skin = ['white', 'extremely pale', 'pale', 'fair', 'light', 'light olive', 'olive', 'tanned', 'dark olive', 'dark', 'light brown', 'brown', 'dark brown', 'black'][skin];
+  State.variables.activeSlave.skin = ['pure white', 'extremely pale', 'pale', 'fair', 'light', 'light olive', 'olive', 'tanned', 'dark olive', 'dark', 'light brown', 'brown', 'dark brown', 'black'][skin];
 })();
 <</script>>
 <</widget>>
diff --git a/src/pregmod/widgets/slaveSummaryWidgets.tw b/src/pregmod/widgets/slaveSummaryWidgets.tw
index 358119cf66775950bec59725f4c4dcd418b1fd18..806dc352dc97cedec267ff296ca64732450b834d 100644
--- a/src/pregmod/widgets/slaveSummaryWidgets.tw
+++ b/src/pregmod/widgets/slaveSummaryWidgets.tw
@@ -1149,10 +1149,18 @@ Release rules: _Slave.releaseRules.
 <<if $abbreviatePhysicals == 1>>
 @@.pink;
 	<<switch _Slave.skin>>
-	<<case "brown">>
+	<<case "light brown">>
 		L. Br
-	<<case "white">>
+	<<case "dark brown">>
+		D. Br
+	<<case "light olive">>
+		L. Oli
+	<<case "dark olive">>
+		D. Oli
+	<<case "extremely pale">>
 		Ex. Pa
+	<<case "pure white">>
+		P. Whi
 	<<case "tanned">>
 		Tan
 	<<case "dark" "fair" "pale">>
diff --git a/src/uncategorized/customSlave.tw b/src/uncategorized/customSlave.tw
index 3bc923f660aad4c4aa25456119f8542b063e4e5b..c41a495ae6af6334f37c3ddfdc48f82067c27e3b 100644
--- a/src/uncategorized/customSlave.tw
+++ b/src/uncategorized/customSlave.tw
@@ -433,6 +433,10 @@
 	<<CustomSlaveSkin>>
 <</link>>
 |
+<link "Extremely pale">>
+	<<set $customSlave.skin = "extremely pale">>
+<</link>>
+|
 <<link "Pale">>
 	<<set $customSlave.skin = "pale">>
 	<<CustomSlaveSkin>>
diff --git a/src/uncategorized/prestigiousSlave.tw b/src/uncategorized/prestigiousSlave.tw
index 8697e4e6ead344238228bda8f0bb80518caca0e8..47eec0f1b32c7713a7e6b788996130af1397e588 100644
--- a/src/uncategorized/prestigiousSlave.tw
+++ b/src/uncategorized/prestigiousSlave.tw
@@ -167,7 +167,7 @@ You check to see if any especially prestigious slaves are on auction. <<if $pres
 	<<set $activeSlave.pubicHColor = "white">>
 	<<set $activeSlave.underArmHColor = "white">>
 	<<set $activeSlave.eyeColor = "pale grey">>
-	<<set $activeSlave.skin = "white">>
+	<<set $activeSlave.skin = "pure white">>
 	<<set $activeSlave.customDesc = "Her eyes are unsettling; though her irises are a pale grey color, in some lights the whole eye takes on a red cast.">>
 
 <<elseif $seed <= 60>>
@@ -595,7 +595,7 @@ You check to see if any especially prestigious slaves are on auction. <<if $pres
 	<<set $activeSlave.pubicHColor = "white">>
 	<<set $activeSlave.underArmHColor = "white">>
 	<<set $activeSlave.eyeColor = "pale grey">>
-	<<set $activeSlave.skin = "white">>
+	<<set $activeSlave.skin = "pure white">>
 	<<set $activeSlave.customDesc = "Her eyes are unsettling; though her irises are a pale grey color, in some lights the whole eye takes on a red cast.">>
 
 <<elseif $seed <= 150>>