diff --git a/src/art/webgl/art.js b/src/art/webgl/art.js
index 4fafaa80bc0d3c3a49eac2576cfcbb50bbb2f1d6..a312a57ae93c8f08d3c523c1e825fd57da0cffa6 100644
--- a/src/art/webgl/art.js
+++ b/src/art/webgl/art.js
@@ -1941,16 +1941,17 @@ App.Art.applyMorphs = function(slave, scene, p) {
 	}
 
 	let ribShape = ["ribShape0", "ribShape1", "ribShape2", "ribShape3", "ribShape4", "ribShape5"];
-	let rib = Math.ceil(App.Art.random() * ribShape.length);
+	let rib = Math.floor(App.Art.random() * ribShape.length);
 	if (rib > 0) {
 		morphs.push([ribShape[rib], 1]);
 	}
 
+	/*
 	let bodyShape = ["bodyShape0", "bodyShape1", "bodyShape2", "bodyShape3", "bodyShape4", "bodyShape5"];
-	let body = Math.ceil(App.Art.random() * bodyShape.length);
+	let body = Math.floor(App.Art.random() * bodyShape.length);
 	if (body > 0) {
 		morphs.push([bodyShape[body], 1]);
-	}
+	}*/
 
 	/*
 	if (slave.lips < 10) {
@@ -1967,7 +1968,14 @@ App.Art.applyMorphs = function(slave, scene, p) {
 		morphs.push(["lipsShapeFacepussy", slave.lips/100]);
 	}*/
 
-	let eye = Math.ceil(App.Art.random() * 8);
+
+	if (slave.lips < 15) {
+		morphs.push(["lips", (slave.lips-15)/30]);
+	} else {
+		morphs.push(["lips", (slave.lips-15)/42]);
+	}
+
+	let eye = Math.floor(App.Art.random() * 8);
 	switch (eye) {
 		case 0: break;
 		case 1: morphs.push(["eyeShapeWide", 1]); break;
@@ -1987,10 +1995,16 @@ App.Art.applyMorphs = function(slave, scene, p) {
 	// morphs.push(["eyeShapeInner" + Math.ceil(App.Art.random() * 3), App.Art.random()]);
 	// morphs.push(["eyeShapeOuter" + Math.ceil(App.Art.random() * 3), App.Art.random()]);
 
-	switch (slave.race) {
+	let race = slave.race;
+	if (race === "mixed race") {
+		let raceChoice = ["southern european", "indo-aryan", "semitic"];
+		race = raceChoice[Math.floor(App.Art.random() * raceChoice.length)];
+	}
+
+	switch (race) {
 		case "white":
 		case "southern european":
-			switch (Math.ceil(App.Art.random() * 6)) {
+			switch (Math.floor(App.Art.random() * 6)) {
 				case 0: break;
 				case 1: morphs.push(["noseShapeWide", 1]); break;
 				case 2: morphs.push(["noseShapeForward", 0.5]); break;
@@ -2132,7 +2146,11 @@ App.Art.applyMorphs = function(slave, scene, p) {
 		morphs.push(["muscles", slave.muscles/33]);
 	}
 
-	morphs.push(["belly", slave.belly**(1/3)/24.6]);
+	if (scene.inspect) {
+		morphs.push(["belly", Math.max(0.7, slave.belly**(1/3)/24.6)]); // fix
+	} else {
+		morphs.push(["belly", slave.belly**(1/3)/24.6]);
+	}
 
 	morphs.push(["hips", slave.hips/2]);