diff --git a/src/js/DefaultRules.js b/src/js/DefaultRules.js
index 62208813acd3d342621d598e6ed8fbc0187b4506..7a549a27da9d2bab0c5ffbded1dfdf8f0e8ea6bd 100644
--- a/src/js/DefaultRules.js
+++ b/src/js/DefaultRules.js
@@ -2851,10 +2851,13 @@ window.DefaultRules = (function() {
 		}
 		if ((rule.autoBrand === 1)) {
 			if ((slave.health > -20)) {
-				if ( /* Normal slave: */ (!slave.amp && slave.earShape !== "none") || /* Amputated slave, but we're branding something else: */ (slave.amp && !["ankles", "calves", "thighs", "feet", "hands", "lower arms", "upper arms", "wrists"].includes(rule.brandTarget)) || /* earless slave, but we are branding something else */ (slave.earShape === "none" && rule.brandTarget !== "ears")) {
+				if (slave.earShape === "none" && rule.brandTarget !== "ears") {
+
+					// Brand location needs to be split into a left and right
 					if (["ankles", "calves", "feet", "hands", "lower arms", "shoulders", "upper arms", "wrists", "cheeks", "ears", "buttocks", "breasts"].includes(rule.brandTarget)) {
 						let left;
 						let right;
+						let brandPlace = "";
 						if (rule.brandTarget === "ankles") {
 							left = "left ankle";
 							right = "right ankle";
@@ -2893,6 +2896,65 @@ window.DefaultRules = (function() {
 							right = "right breast";
 						}
 						if (rule.brandDesign !== slave.brand[left] && rule.brandDesign !== slave.brand[right]) {
+							brandPlace = "both";
+						} else if (rule.brandDesign !== slave.brand[left]) {
+							brandPlace = "left";
+						} else if (rule.brandDesign !== slave.brand[right]) {
+							brandPlace = "right";
+						}
+
+						// Check for amputations:
+						if (["upper arms", "lower arms", "wrists", "hands"].includes(rule.brandTarget)) {
+							// Arms
+							if (!hasLimb(slave, "left arm") && !hasLimb(slave, "right arm")) {
+								brandPlace = "";
+							} else if (!hasLimb(slave, "left arm")) {
+								if (brandPlace === "both") {
+									brandPlace = "right";
+								} if (brandPlace === "left") {
+									brandPlace = "";
+								}
+							} else if (!hasLimb(slave, "right arm")) {
+								if (brandPlace === "both") {
+									brandPlace = "left";
+								} if (brandPlace === "right") {
+									brandPlace = "";
+								}
+							}
+						} else if (["thighs", "calves", "ankles", "feet"].includes(rule.brandTarget)) {
+							// Legs
+							if (!hasLimb(slave, "left leg") && !hasLimb(slave, "right leg")) {
+								brandPlace = "";
+							} else if (!hasLimb(slave, "left leg")) {
+								if (brandPlace === "both") {
+									brandPlace = "right";
+								} if (brandPlace === "left") {
+									brandPlace = "";
+								}
+							} else if (!hasLimb(slave, "right leg")) {
+								if (brandPlace === "both") {
+									brandPlace = "left";
+								} if (brandPlace === "right") {
+									brandPlace = "";
+								}
+							}
+						}
+
+						// Apply brands:
+						if (["left", "right"].includes(brandPlace)) {
+							if (slave.devotion < 18) {
+								slave.devotion -= 5;
+							}
+							slave.trust -= 5;
+							slave.health -= 10;
+							if (brandPlace === "left") {
+								slave.brand[left] = rule.brandDesign;
+								r += `<br>${slave.slaveName} has been branded on the ${left}, with <span class="gold">fear</span>${slave.devotion < 18 ? `, <span class="mediumorchid">regard,</span>` : ``} and <span class="red">health</span> consequences. Their ${right} already had this brand.`;
+							} else if (brandPlace === "right") {
+								slave.brand[right] = rule.brandDesign;
+								r += `<br>${slave.slaveName} has been branded on the ${right}, with <span class="gold">fear</span>${slave.devotion < 18 ? `, <span class="mediumorchid">regard,</span>` : ``} and <span class="red">health</span> consequences. Their ${left} already had this brand.`;
+							}
+						} else if (brandPlace === "both") {
 							slave.brand[left] = rule.brandDesign;
 							slave.brand[right] = rule.brandDesign;
 							if ((slave.devotion < 18)) {
@@ -2901,31 +2963,26 @@ window.DefaultRules = (function() {
 							slave.trust -= 10;
 							slave.health -= 20;
 							r += `<br>${slave.slaveName} has been branded on both ${rule.brandTarget}, with <span class="gold">fear</span>${slave.devotion < 18 ? `, <span class="mediumorchid">regard,</span>` : ``} and <span class="red">health</span> consequences.`;
-						} else if (rule.brandDesign !== slave.brand[left]) {
-							slave.brand[left] = rule.brandDesign;
-							if ((slave.devotion < 18)) {
-								slave.devotion -= 5;
-							}
-							slave.trust -= 5;
-							slave.health -= 10;
-							r += `<br>${slave.slaveName} has been branded on the ${left}, with <span class="gold">fear</span>${slave.devotion < 18 ? `, <span class="mediumorchid">regard,</span>` : ``} and <span class="red">health</span> consequences. Their ${right} already had this brand.`;
-						} else if (rule.brandDesign !== slave.brand[right]) {
+						}
+
+					// Brand location does NOT need to be split into a left and right, (and may or may not contain left OR right already.)
+					} else if (slave.brand[rule.brandTarget] !== rule.brandDesign) {
+						if (
+							(!hasLimb(slave, "left arm") && ["left upper arm", "left lower arm", "left wrist", "left hand"].includes(rule.brandTarget)) ||
+							(!hasLimb(slave, "right arm") && ["right upper arm", "right lower arm", "right wrist", "right hand"].includes(rule.brandTarget)) ||
+							(!hasLimb(slave, "left leg") && ["left thigh", "left calf", "left ankle", "left foot"].includes(rule.brandTarget))  ||
+							(!hasLimb(slave, "right leg") && ["right thigh", "right calf", "right ankle", "rightfoot"].includes(rule.brandTarget))
+						) {
+								// no brand needed due to amp.
+						} else {
+							slave.brand[rule.brandTarget] = rule.brandDesign;
 							if ((slave.devotion < 18)) {
 								slave.devotion -= 5;
 							}
-							slave.brand[right] = rule.brandDesign;
 							slave.trust -= 5;
 							slave.health -= 10;
-							r += `<br>${slave.slaveName} has been branded on the ${right}, with <span class="gold">fear</span>${slave.devotion < 18 ? `, <span class="mediumorchid">regard,</span>` : ``} and <span class="red">health</span> consequences. Their ${left} already had this brand.`;
-						}
-					} else if (slave.brand[rule.brandTarget] !== rule.brandDesign) {
-						slave.brand[rule.brandTarget] = rule.brandDesign;
-						if ((slave.devotion < 18)) {
-							slave.devotion -= 5;
+							r += `<br>${slave.slaveName} has been branded, with <span class="gold">fear</span>${slave.devotion < 18 ? `, <span class="mediumorchid">regard,</span>` : ``} and <span class="red">health</span> consequences.`;
 						}
-						slave.trust -= 5;
-						slave.health -= 10;
-						r += `<br>${slave.slaveName} has been branded, with <span class="gold">fear</span>${slave.devotion < 18 ? `, <span class="mediumorchid">regard,</span>` : ``} and <span class="red">health</span> consequences.`;
 					}
 				}
 			}