diff --git a/game/modules/tome/data/timed_effects/mental.lua b/game/modules/tome/data/timed_effects/mental.lua
index 6d75fe5b159d1d956cf73ace8940fbc9dcc1052d..b6c2f7e861a070e2c8716c4b057f8aca91dcb0b5 100644
--- a/game/modules/tome/data/timed_effects/mental.lua
+++ b/game/modules/tome/data/timed_effects/mental.lua
@@ -69,35 +69,21 @@ newEffect{
 newEffect{
 	name = "SUMMON_CONTROL", image = "talents/summon_control.png",
 	desc = "Summon Control",
-	long_desc = function(self, eff) return ("The target has been marked as the focus for all summons within %d radius."):format(eff.range) end,
+	long_desc = function(self, eff) return ("Reduces damage received by %d%% and increases summon time by %d."):format(eff.res, eff.incdur) end,
 	type = "mental",
 	subtype = { focus=true },
-	status = "detrimental",
-	parameters = { },
-	on_gain = function(self, err) return "Summons flock towards #Target#.", true end,
-	on_lose = function(self, err) return "#Target# is no longer being targeted by summons.", true end,
-	on_timeout = function(self, eff)
-
-			self:project({type="ball", range=0, friendlyfire=false, radius=eff.range}, self.x, self.y, function(px, py)
-			local target = game.level.map(px, py, Map.ACTOR)
-			if not target then return end
-			if target.summoner == eff.src then
-				target:setTarget(self)
-			end
-			end)
-
-	end,
+	status = "beneficial",
+	parameters = { res=10, incdur=10 },
 	activate = function(self, eff)
-			self:project({type="ball", range=0, friendlyfire=false, radius=eff.range}, self.x, self.y, function(px, py)
-			local target = game.level.map(px, py, Map.ACTOR)
-			if not target then return end
-			if target.summoner == eff.src then
-				target:setTarget(self)
-			end
-			end)
-
+		eff.resid = self:addTemporaryValue("resists", {all=eff.res})
+		eff.durid = self:addTemporaryValue("summon_time", eff.incdur)
 	end,
 	deactivate = function(self, eff)
+		self:removeTemporaryValue("resists", eff.resid)
+		self:removeTemporaryValue("summon_time", eff.durid)
+	end,
+	on_timeout = function(self, eff)
+		eff.dur = self.summon_time
 	end,
 }