diff --git a/devTools/types/FC/human.d.ts b/devTools/types/FC/human.d.ts
index 4ab7343d54c56a9c59cc5ac857d7bf999eebe42d..b248d064ee41e1032112b9b39280b8152ea9c601 100644
--- a/devTools/types/FC/human.d.ts
+++ b/devTools/types/FC/human.d.ts
@@ -258,7 +258,7 @@ declare global {
 		type Race = "amerindian" | "asian" | "black" | "indo-aryan" | "latina" | "malay" | "middle eastern" | "mixed race" |
 			"pacific islander" | "semitic" | "southern european" | "white";
 		type SizingImplantType = WithNone<"normal" | "string" | "fillable" | "advanced fillable" | "hyper fillable">;
-		type SmartPiercingSetting = WithNone<"off" | "all" | "no default setting" | "women" | "men" | "vanilla" | "oral" | "anal" |
+		type SmartPiercingSetting = WithNone<"off" | "all" | "no default setting" | "random" | "women" | "men" | "vanilla" | "oral" | "anal" |
 			"boobs" | "submissive" | "humiliation" | "pregnancy" | "dom" | "masochist" | "sadist" | "anti-women" | "anti-men">;
 		type TeethType = "normal" | "crooked" | "gapped" | "straightening braces" | "cosmetic braces" | "removable" | "pointy" |
 			"fangs" | "fang" | "baby" | "mixed";
diff --git a/src/js/DefaultRules.js b/src/js/DefaultRules.js
index e39da3fd2d9e3ccf91745298596da8587d047603..8d8a956ee2cb007cdfe57b036380c0d2e035a721 100644
--- a/src/js/DefaultRules.js
+++ b/src/js/DefaultRules.js
@@ -2612,7 +2612,7 @@ globalThis.DefaultRules = (function() {
 	function ProcessSmartPiercings(slave, rule) {
 		if (slave.clitPiercing === 3) {
 			let _used = 0;
-			if (rule.clitSetting !== undefined && (rule.clitSetting !== null)) {
+			if (rule.clitSetting !== undefined && rule.clitSetting !== null && rule.clitSetting !== "random") {
 				if (slave.clitSetting !== rule.clitSetting) {
 					slave.clitSetting = rule.clitSetting;
 					_used = 1;
@@ -2620,6 +2620,10 @@ globalThis.DefaultRules = (function() {
 				} else if (slave.fetishStrength < 100) {
 					_used = 1;
 				}
+			} else if (rule.clitSetting === "random") {
+				slave.clitSetting = either("vanilla", "oral", "anal", "boobs", "submissive", "dom", "humiliation", "pregnancy", "masochist", "sadist");
+				_used = 1;
+				r += `<br>${slave.slaveName}'s smart piercing has been set to ${slave.clitSetting}.`;
 			}
 			if (_used === 0) {
 				if (rule.clitSettingEnergy !== undefined && (rule.clitSettingEnergy !== null)) {
diff --git a/src/js/rulesAssistantOptions.js b/src/js/rulesAssistantOptions.js
index 2c7c384dc4edcb5a5facb2f9d71ef6ee463a4e1a..1971f0be30704a53d6b211fa31950d2f6255dc79 100644
--- a/src/js/rulesAssistantOptions.js
+++ b/src/js/rulesAssistantOptions.js
@@ -2754,6 +2754,7 @@ globalThis.rulesAssistantOptions = (function() {
 		constructor() {
 			const pairs = [
 				["vanilla"],
+				["random"],
 				["oral"],
 				["anal"],
 				["boobs"],