diff --git a/devNotes/VersionChangeLog-Premod+LoliMod.txt b/devNotes/VersionChangeLog-Premod+LoliMod.txt
index c89f222eb55006405b388c68027b6c4ca5612bee..7c4ee176391a318780edf96d36ca506638c7515d 100644
--- a/devNotes/VersionChangeLog-Premod+LoliMod.txt
+++ b/devNotes/VersionChangeLog-Premod+LoliMod.txt
@@ -4,7 +4,15 @@
 
 01/12/18
 
+	270
+	-fixed bad RESS choice
+	-tweaked puberty events
+
 	269
+	-servants can now qualify for a reduced selection of random events
+	They are always around, after all.
+
+	268
 	-fixes to policies and master suite
 
 	267
diff --git a/devNotes/twine JS b/devNotes/twine JS
index bbb1cd712b4a46ee11c1531a13263665c43bada0..d50694e535e36a38ae4ba0981ae8410f273c9309 100644
--- a/devNotes/twine JS	
+++ b/devNotes/twine JS	
@@ -4539,28 +4539,39 @@ if(eventSlave.fetish != "mindbroken") {
 
 		if(State.variables.seeAge == 1) {
 			if(eventSlave.actualAge < 18) {
-				if(eventSlave.ovaries == 1) {
-					if(eventSlave.devotion >= 20) {
-						if(eventSlave.physicalAge == Math.round(eventSlave.pubertyAgeXX)) {
+				if(eventSlave.devotion >= 20) {
+					if(eventSlave.ovaries == 1) {
+						if(eventSlave.pubertyXX == 0) {
 							if(eventSlave.preg == 0) {
-								if(eventSlave.birthWeek < 2) {
+								if(eventSlave.physicalAge >= eventSlave.pubertyAgeXX-.5) {
+									State.variables.RESSevent.push("first period");
+									State.variables.RESSevent.push("first period");
+									State.variables.RESSevent.push("first period");
+									State.variables.RESSevent.push("first period");
+									State.variables.RESSevent.push("first period");
+									State.variables.RESSevent.push("first period");
+									State.variables.RESSevent.push("first period");
+									State.variables.RESSevent.push("first period");
+									State.variables.RESSevent.push("first period");
 									State.variables.RESSevent.push("first period");
 								}
 							}
 						}
 					}
-				}
-			}
-
-			if(eventSlave.actualAge < 18) {
-				if(eventSlave.devotion >= 20) {
-					if(canAchieveErection(eventSlave)) {
+					if(canPenetrate(eventSlave)) {
 						if(eventSlave.balls > 0) {
-							if(eventSlave.physicalAge == Math.round(eventSlave.pubertyAgeXY)) {
-								if(eventSlave.dickAccessory != "chastity" || eventSlave.dickAccessory != "combined chastity") {
-									if(eventSlave.birthWeek < 2) {
-										State.variables.RESSevent.push("wet dreams");
-									}
+							if(eventSlave.pubertyXY == 0) {
+								if(eventSlave.physicalAge >= eventSlave.pubertyAgeXY-.5) {
+									State.variables.RESSevent.push("wet dreams");
+									State.variables.RESSevent.push("wet dreams");
+									State.variables.RESSevent.push("wet dreams");
+									State.variables.RESSevent.push("wet dreams");
+									State.variables.RESSevent.push("wet dreams");
+									State.variables.RESSevent.push("wet dreams");
+									State.variables.RESSevent.push("wet dreams");
+									State.variables.RESSevent.push("wet dreams");
+									State.variables.RESSevent.push("wet dreams");
+									State.variables.RESSevent.push("wet dreams");
 								}
 							}
 						}
@@ -5948,28 +5959,39 @@ if(eventSlave.fetish != "mindbroken") {
 
 		if(State.variables.seeAge == 1) {
 			if(eventSlave.actualAge < 18) {
-				if(eventSlave.ovaries == 1) {
-					if(eventSlave.devotion >= 20) {
-						if(eventSlave.physicalAge == Math.round(eventSlave.pubertyAgeXX)) {
+				if(eventSlave.devotion >= 20) {
+					if(eventSlave.ovaries == 1) {
+						if(eventSlave.pubertyXX == 0) {
 							if(eventSlave.preg == 0) {
-								if(eventSlave.birthWeek < 2) {
+								if(eventSlave.physicalAge >= eventSlave.pubertyAgeXX-.5) {
+									State.variables.RESSevent.push("first period");
+									State.variables.RESSevent.push("first period");
+									State.variables.RESSevent.push("first period");
+									State.variables.RESSevent.push("first period");
+									State.variables.RESSevent.push("first period");
+									State.variables.RESSevent.push("first period");
+									State.variables.RESSevent.push("first period");
+									State.variables.RESSevent.push("first period");
+									State.variables.RESSevent.push("first period");
 									State.variables.RESSevent.push("first period");
 								}
 							}
 						}
 					}
-				}
-			}
-
-			if(eventSlave.actualAge < 18) {
-				if(eventSlave.devotion >= 20) {
-					if(canAchieveErection(eventSlave)) {
+					if(canPenetrate(eventSlave)) {
 						if(eventSlave.balls > 0) {
-							if(eventSlave.physicalAge == Math.round(eventSlave.pubertyAgeXY)) {
-								if(eventSlave.dickAccessory != "chastity" || eventSlave.dickAccessory != "combined chastity") {
-									if(eventSlave.birthWeek < 2) {
-										State.variables.RESSevent.push("wet dreams");
-									}
+							if(eventSlave.pubertyXY == 0) {
+								if(eventSlave.physicalAge >= eventSlave.pubertyAgeXY-.5) {
+									State.variables.RESSevent.push("wet dreams");
+									State.variables.RESSevent.push("wet dreams");
+									State.variables.RESSevent.push("wet dreams");
+									State.variables.RESSevent.push("wet dreams");
+									State.variables.RESSevent.push("wet dreams");
+									State.variables.RESSevent.push("wet dreams");
+									State.variables.RESSevent.push("wet dreams");
+									State.variables.RESSevent.push("wet dreams");
+									State.variables.RESSevent.push("wet dreams");
+									State.variables.RESSevent.push("wet dreams");
 								}
 							}
 						}
diff --git a/src/js/eventSelectionJS.tw b/src/js/eventSelectionJS.tw
index 5bd39698ba7ee518ca730f60528b17140834252c..7e00948138927bcf42701293d3438967baac9f38 100644
--- a/src/js/eventSelectionJS.tw
+++ b/src/js/eventSelectionJS.tw
@@ -856,28 +856,39 @@ if(eventSlave.fetish != "mindbroken") {
 
 		if(State.variables.seeAge == 1) {
 			if(eventSlave.actualAge < 18) {
-				if(eventSlave.ovaries == 1) {
-					if(eventSlave.devotion >= 20) {
-						if(eventSlave.physicalAge == Math.round(eventSlave.pubertyAgeXX)) {
+				if(eventSlave.devotion >= 20) {
+					if(eventSlave.ovaries == 1) {
+						if(eventSlave.pubertyXX == 0) {
 							if(eventSlave.preg == 0) {
-								if(eventSlave.birthWeek < 2) {
+								if(eventSlave.physicalAge >= eventSlave.pubertyAgeXX-.5) {
+									State.variables.RESSevent.push("first period");
+									State.variables.RESSevent.push("first period");
+									State.variables.RESSevent.push("first period");
+									State.variables.RESSevent.push("first period");
+									State.variables.RESSevent.push("first period");
+									State.variables.RESSevent.push("first period");
+									State.variables.RESSevent.push("first period");
+									State.variables.RESSevent.push("first period");
+									State.variables.RESSevent.push("first period");
 									State.variables.RESSevent.push("first period");
 								}
 							}
 						}
 					}
-				}
-			}
-
-			if(eventSlave.actualAge < 18) {
-				if(eventSlave.devotion >= 20) {
-					if(canAchieveErection(eventSlave)) {
+					if(canPenetrate(eventSlave)) {
 						if(eventSlave.balls > 0) {
-							if(eventSlave.physicalAge == Math.round(eventSlave.pubertyAgeXY)) {
-								if(eventSlave.dickAccessory != "chastity" || eventSlave.dickAccessory != "combined chastity") {
-									if(eventSlave.birthWeek < 2) {
-										State.variables.RESSevent.push("wet dreams");
-									}
+							if(eventSlave.pubertyXY == 0) {
+								if(eventSlave.physicalAge >= eventSlave.pubertyAgeXY-.5) {
+									State.variables.RESSevent.push("wet dreams");
+									State.variables.RESSevent.push("wet dreams");
+									State.variables.RESSevent.push("wet dreams");
+									State.variables.RESSevent.push("wet dreams");
+									State.variables.RESSevent.push("wet dreams");
+									State.variables.RESSevent.push("wet dreams");
+									State.variables.RESSevent.push("wet dreams");
+									State.variables.RESSevent.push("wet dreams");
+									State.variables.RESSevent.push("wet dreams");
+									State.variables.RESSevent.push("wet dreams");
 								}
 							}
 						}
@@ -2265,28 +2276,39 @@ if(eventSlave.fetish != "mindbroken") {
 
 		if(State.variables.seeAge == 1) {
 			if(eventSlave.actualAge < 18) {
-				if(eventSlave.ovaries == 1) {
-					if(eventSlave.devotion >= 20) {
-						if(eventSlave.physicalAge == Math.round(eventSlave.pubertyAgeXX)) {
+				if(eventSlave.devotion >= 20) {
+					if(eventSlave.ovaries == 1) {
+						if(eventSlave.pubertyXX == 0) {
 							if(eventSlave.preg == 0) {
-								if(eventSlave.birthWeek < 2) {
+								if(eventSlave.physicalAge >= eventSlave.pubertyAgeXX-.5) {
+									State.variables.RESSevent.push("first period");
+									State.variables.RESSevent.push("first period");
+									State.variables.RESSevent.push("first period");
+									State.variables.RESSevent.push("first period");
+									State.variables.RESSevent.push("first period");
+									State.variables.RESSevent.push("first period");
+									State.variables.RESSevent.push("first period");
+									State.variables.RESSevent.push("first period");
+									State.variables.RESSevent.push("first period");
 									State.variables.RESSevent.push("first period");
 								}
 							}
 						}
 					}
-				}
-			}
-
-			if(eventSlave.actualAge < 18) {
-				if(eventSlave.devotion >= 20) {
-					if(canAchieveErection(eventSlave)) {
+					if(canPenetrate(eventSlave)) {
 						if(eventSlave.balls > 0) {
-							if(eventSlave.physicalAge == Math.round(eventSlave.pubertyAgeXY)) {
-								if(eventSlave.dickAccessory != "chastity" || eventSlave.dickAccessory != "combined chastity") {
-									if(eventSlave.birthWeek < 2) {
-										State.variables.RESSevent.push("wet dreams");
-									}
+							if(eventSlave.pubertyXY == 0) {
+								if(eventSlave.physicalAge >= eventSlave.pubertyAgeXY-.5) {
+									State.variables.RESSevent.push("wet dreams");
+									State.variables.RESSevent.push("wet dreams");
+									State.variables.RESSevent.push("wet dreams");
+									State.variables.RESSevent.push("wet dreams");
+									State.variables.RESSevent.push("wet dreams");
+									State.variables.RESSevent.push("wet dreams");
+									State.variables.RESSevent.push("wet dreams");
+									State.variables.RESSevent.push("wet dreams");
+									State.variables.RESSevent.push("wet dreams");
+									State.variables.RESSevent.push("wet dreams");
 								}
 							}
 						}
diff --git a/src/uncategorized/RESS.tw b/src/uncategorized/RESS.tw
index 9306e755924ff3cb110a63b7bf5d0eb97f5c53a6..89212cb4743ae3f1c85b5902ebdeffce5c9ee5a0 100644
--- a/src/uncategorized/RESS.tw
+++ b/src/uncategorized/RESS.tw
@@ -6192,7 +6192,7 @@ May I plea<<s>>e try out <<s>>omething <<s>>kimpier today?"
 <</link>>
 <</if>>
 <<if ($activeSlave.toyHole == "dick" || $sexualOpeness == 1) && canPenetrate($activeSlave)>>
-<<link "Invite her "in"">>
+<<link "Invite her 'in'">>
 	<<EventNameDelink $activeSlave>>
 	<<replace "#result">>
 	There's a glint <<if !canSee($activeSlave)>>on her face as she hears<<else>>in her eyes as she sees<</if>> you stand up from your desk and saunter over;