diff --git a/game/modules/tome/class/Actor.lua b/game/modules/tome/class/Actor.lua
index fc50d89c8536d125df95dd262a29741857bfb516..0a51833171c749824e6192047152ec9a734b3ec1 100644
--- a/game/modules/tome/class/Actor.lua
+++ b/game/modules/tome/class/Actor.lua
@@ -2854,6 +2854,10 @@ function _M:on_set_temporary_effect(eff_id, e, p)
 		local fft = self:hasEffect(self.EFF_FADE_FROM_TIME)
 		p.dur = math.ceil(p.dur * (1 - (fft.power/100)))
 	end
+	if e.status == "detrimental" and e.type ~= "magical" and self:knowTalent(self.T_SUPPRESSION) then
+		local t = self:getTalentFromId(self.T_SUPPRESSION)
+		p.dur = math.ceil(p.dur * (1 - (t.getPercent(self, t)/100)))
+	end
 	if e.status == "detrimental" and self:attr("negative_status_effect_immune") then
 		p.dur = 0
 	end
diff --git a/game/modules/tome/class/Player.lua b/game/modules/tome/class/Player.lua
index 9981341f42f4a6958e96feec66df5f5dd3aa7aed..4c1089bd65396da400b12294b2f944db9469f57c 100644
--- a/game/modules/tome/class/Player.lua
+++ b/game/modules/tome/class/Player.lua
@@ -503,8 +503,8 @@ function _M:restCheck()
 
 	-- Check resources, make sure they CAN go up, otherwise we will never stop
 	if not self.resting.rest_turns then
-		if self.air_regen < 0 then return false, "loosing breath!" end
-		if self.life_regen <= 0 then return false, "loosing health!" end
+		if self.air_regen < 0 then return false, "losing breath!" end
+		if self.life_regen <= 0 then return false, "losing health!" end
 		if self:getMana() < self:getMaxMana() and self.mana_regen > 0 then return true end
 		if self:getStamina() < self:getMaxStamina() and self.stamina_regen > 0 then return true end
 		if self:getPsi() < self:getMaxPsi() and self.psi_regen > 0 then return true end