diff --git a/src/js/DefaultRules.js b/src/js/DefaultRules.js
index f4ed47570a9be9fd38ef7068d8080bd4ba1f51b9..c4a1f9af801c806f0edef532249d8b3c863c7d9c 100644
--- a/src/js/DefaultRules.js
+++ b/src/js/DefaultRules.js
@@ -1514,6 +1514,10 @@ window.DefaultRules = (function() {
 		}
 	}
 
+	/**
+	 * @param {App.Entity.SlaveState} slave
+	 * @param {App.RA.RuleSetters} rule
+	 */
 	function ProcessDiet(slave, rule) {
 		// Diet Setting
 		if ((rule.diet !== undefined && rule.diet !== null) || rule.weight !== null) {
@@ -1537,9 +1541,27 @@ window.DefaultRules = (function() {
 					r += `<br>${slave.slaveName} is on drugs designed to expand major body parts, so ${he}'s been put on a fattening diet to provide ${his} body as much fuel for growth as possible.`;
 				}
 			} else {
-				if (rule.weight !== null) {
+				// priority to growing/loosing muscles, then general body mass, then rest of the diets
+				if (!isAmputee(slave) && (App.RA.shallShrink(slave.muscles, rule.muscles, 8) || App.RA.shallGrow(slave.muscles, rule.muscles, 2))) {
+					if (App.RA.shallShrink(slave.muscles, rule.muscles, 8)) {
+						if ((slave.diet !== "slimming")) {
+							slave.diet = "slimming";
+							r += `<br>${slave.slaveName} has been put on a slimming exercise regime.`;
+						}
+					} else if (App.RA.shallGrow(slave.muscles, rule.muscles, 2)) {
+						if ((slave.diet !== "muscle building")) {
+							slave.diet = "muscle building";
+							r += `<br>${slave.slaveName} has been put on a muscle building exercise regime.`;
+						}
+					} else {
+						if ((slave.diet !== "healthy")) {
+							slave.diet = "healthy";
+							r += `<br>${slave.slaveName} is at the target weight, so ${his} diet has been normalized.`;
+						}
+					}
+				} else if (rule.weight !== null && (slave.weight > rule.weight.max || slave.weight < rule.weight.min)) {
 					if (slave.weight > rule.weight.max) {
-						if (slave.diet !== "restricted" ) {
+						if (slave.diet !== "restricted") {
 							slave.diet = "restricted";
 							r += `<br>${slave.slaveName} is too fat so ${his} diet has been set to restricted.`;
 						}
@@ -1548,23 +1570,6 @@ window.DefaultRules = (function() {
 							slave.diet = "fattening";
 							r += `<br>${slave.slaveName} is too skinny so ${his} diet has been set to fattening.`;
 						}
-					} else if ((rule.muscles !== undefined) && (rule.muscles !== null) && !isAmputee(slave)) {
-						if (App.RA.shallShrink(slave.muscles, rule.muscles, 8)) {
-							if ((slave.diet !== "slimming")) {
-								slave.diet = "slimming";
-								r += `<br>${slave.slaveName} has been put on a slimming exercise regime.`;
-							}
-						} else if (App.RA.shallGrow(slave.muscles, rule.muscles, 2)) {
-							if ((slave.diet !== "muscle building")) {
-								slave.diet = "muscle building";
-								r += `<br>${slave.slaveName} has been put on a muscle building exercise regime.`;
-							}
-						} else {
-							if ((slave.diet !== "healthy")) {
-								slave.diet = "healthy";
-								r += `<br>${slave.slaveName} is at the target weight, so ${his} diet has been normalized.`;
-							}
-						}
 					} else {
 						if ((slave.diet !== "healthy")) {
 							slave.diet = "healthy";
@@ -1582,23 +1587,6 @@ window.DefaultRules = (function() {
 							slave.diet = "fattening";
 							r += `<br>${slave.slaveName} is too skinny so ${his} diet has been set to fattening.`;
 						}
-					} else if ((rule.muscles !== undefined) && (rule.muscles !== null) && !isAmputee(slave)) {
-						if (App.RA.shallShrink(slave.muscles, rule.muscles, 8)) {
-							if ((slave.diet !== "slimming")) {
-								slave.diet = "slimming";
-								r += `<br>${slave.slaveName} has been put on a slimming exercise regime.`;
-							}
-						} else if (App.RA.shallGrow(slave.muscles, rule.muscles, 2)) {
-							if ((slave.diet !== "muscle building")) {
-								slave.diet = "muscle building";
-								r += `<br>${slave.slaveName} has been put on a muscle building exercise regime.`;
-							}
-						} else {
-							if ((slave.diet !== "healthy")) {
-								slave.diet = "healthy";
-								r += `<br>${slave.slaveName} is at the target weight, so ${his} diet has been normalized.`;
-							}
-						}
 					} else {
 						if ((slave.diet !== "healthy")) {
 							slave.diet = "healthy";
@@ -1663,23 +1651,6 @@ window.DefaultRules = (function() {
 					}
 				}
 			}
-		} else if ((rule.muscles !== undefined) && (rule.muscles !== null) && !isAmputee(slave)) { // no diet rule, muscles only
-			if (App.RA.shallShrink(slave.muscles, rule.muscles, 8)) {
-				if ((slave.diet !== "slimming")) {
-					slave.diet = "slimming";
-					r += `<br>${slave.slaveName} has been put on a slimming exercise regime.`;
-				}
-			} else if (App.RA.shallGrow(slave.muscles, rule.muscles, 2)) {
-				if ((slave.diet !== "muscle building")) {
-					slave.diet = "muscle building";
-					r += `<br>${slave.slaveName} has been put on a muscle building exercise regime.`;
-				}
-			} else {
-				if ((slave.diet !== "healthy")) {
-					slave.diet = "healthy";
-					r += `<br>${slave.slaveName} has achieved the target musculature, so ${his} exercise regime has been normalized.`;
-				}
-			}
 		}
 
 		if (slave.drugs === "appetite suppressors" && slave.diet !== "restricted") {