diff --git a/src/uncategorized/nonRandomEvent.tw b/src/uncategorized/nonRandomEvent.tw
index 2962921aeb14db9e20f7f30a379e0494824b2fdd..d3719fe66621a03647ddbd075f1ae88159d4336f 100644
--- a/src/uncategorized/nonRandomEvent.tw
+++ b/src/uncategorized/nonRandomEvent.tw
@@ -32,6 +32,7 @@
 	<</if>>
 <<elseif (_effectiveWeek >= 15) && ($arcologies[0].FSNeoImperialistLaw1 == 1) && $assholeKnight != 1>>
 	<<set $assholeKnight = 1>>
+	<<set $imperialEventweek = _effectiveWeek>>
 	<<goto "SE assholeknight">>
 <<elseif (_effectiveWeek == 17)>>
 	<<set $Event = "shoot invitation">>
@@ -174,11 +175,13 @@
 	<<goto "P slave medic">>
 <<elseif ($eventResults.pit == 1) && ($BodyguardID != 0)>>
 	<<goto "PE pit fight">>
-<<elseif (_effectiveWeek >= 37) && ($arcologies[0].FSNeoImperialistLaw1 == 1) && ($arcologies[0].FSNeoImperialistLaw2 == 1) && $poorKnight != 1>>
+<<elseif (_effectiveWeek >= 37) && ($arcologies[0].FSNeoImperialistLaw1 == 1) && ($arcologies[0].FSNeoImperialistLaw2 == 1) && $poorKnight != 1 _effectiveWeek >= $imperialEventWeek+3>>
 	<<set $poorKnight = 1>>
+	<<set $imperialEventweek = _effectiveWeek>>
 	<<goto "SE poorknight">>
-<<elseif (_effectiveWeek >= 40) && ($arcologies[0].prosperity > 80) && ($arcologies[0].FSNeoImperialistLaw2 == 1) && $newBaron != 1>>
+<<elseif (_effectiveWeek >= 40) && ($arcologies[0].prosperity > 80) && ($arcologies[0].FSNeoImperialistLaw2 == 1) && $newBaron != 1 && _effectiveWeek >= $imperialEventWeek+3>
 	<<set $newBaron = 1>>
+	<<set $imperialEventweek = _effectiveWeek>>
 	<<goto "SE newBaron">>
 <<elseif $rivalOwner == 0 && $secExpEnabled > 0 && (_effectiveWeek >= 74 && $SecExp.smilingMan.progress === 0 || _effectiveWeek >= 77 && $SecExp.smilingMan.progress === 1 || _effectiveWeek >= 82 && $SecExp.smilingMan.progress === 2 || $SecExp.smilingMan.progress === 3)>>
 	<<goto "secExpSmilingMan">>