diff --git a/game/modules/tome/class/Actor.lua b/game/modules/tome/class/Actor.lua
index 2b55454e0941977e42fba6fa6a56600e21955bec..6af3fc11cef21ae1302b0b29dd0bed560f0f2367 100644
--- a/game/modules/tome/class/Actor.lua
+++ b/game/modules/tome/class/Actor.lua
@@ -706,23 +706,6 @@ function _M:act()
 		end
 	end
 
-	-- Conduit talent prevents all auras from cooling down
-	if self:isTalentActive(self.T_CONDUIT) then
-		local auras = self:isTalentActive(self.T_CONDUIT)
-		if auras.k_aura_on then
-			local t_kinetic_aura = self:getTalentFromId(self.T_KINETIC_AURA)
-			self:startTalentCooldown(self.T_KINETIC_AURA, t_kinetic_aura.cooldown(self, t))
-		end
-		if auras.t_aura_on then
-			local t_thermal_aura = self:getTalentFromId(self.T_THERMAL_AURA)
-			self:startTalentCooldown(self.T_THERMAL_AURA, t_thermal_aura.cooldown(self, t))
-		end
-		if auras.c_aura_on then
-			local t_charged_aura = self:getTalentFromId(self.T_CHARGED_AURA)
-			self:startTalentCooldown(self.T_CHARGED_AURA, t_charged_aura.cooldown(self, t))
-		end
-	end
-
 	if self:attr("paralyzed") then
 		self.paralyzed_counter = (self.paralyzed_counter or 0) + (self:attr("stun_immune") or 0) * 100
 		if self.paralyzed_counter < 100 then
diff --git a/game/modules/tome/class/Player.lua b/game/modules/tome/class/Player.lua
index 6c1795b58091c9bebb1b352839eacc8706c5788b..5bebc15e0570f326e93d330feae3cd27f50572b7 100644
--- a/game/modules/tome/class/Player.lua
+++ b/game/modules/tome/class/Player.lua
@@ -943,9 +943,10 @@ function _M:restCheck()
 
 	if self.resting.wait_cooldowns then
 		for tid, cd in pairs(self.talents_cd) do
-			if self:isTalentActive(self.T_CONDUIT) and (tid == self.T_KINETIC_AURA or tid == self.T_CHARGED_AURA or tid == self.T_THERMAL_AURA) then
+--			if self:isTalentActive(self.T_CONDUIT) and (tid == self.T_KINETIC_AURA or tid == self.T_CHARGED_AURA or tid == self.T_THERMAL_AURA) then
 				-- nothing
-			elseif self.talents_auto[tid] then
+--			else
+			if self.talents_auto[tid] then
 				-- nothing
 			else
 				if cd > 0 then return true end
diff --git a/game/modules/tome/class/interface/Archery.lua b/game/modules/tome/class/interface/Archery.lua
index ffde75dff37d7678769022b812fb629e4f60bdbf..112ea1839f83305ce94e311d88db9a244e837798 100644
--- a/game/modules/tome/class/interface/Archery.lua
+++ b/game/modules/tome/class/interface/Archery.lua
@@ -451,30 +451,6 @@ local function archery_projectile(tx, ty, tg, self, tmp)
 		end
 	end
 
-	-- Conduit (Psi)
-	if hitted and not target.dead and self:knowTalent(self.T_CONDUIT) and self:isTalentActive(self.T_CONDUIT) and self:attr("use_psi_combat") then
-		local t =  self:getTalentFromId(self.T_CONDUIT)
-		--t.do_combat(self, t, target)
-		local mult = 1 + 0.2*(self:getTalentLevel(t))
-		local auras = self:isTalentActive(t.id)
-		if auras.k_aura_on then
-			local k_aura = self:getTalentFromId(self.T_KINETIC_AURA)
-			local k_dam = mult * k_aura.getAuraStrength(self, k_aura)
-			DamageType:get(DamageType.PHYSICAL).projector(self, target.x, target.y, DamageType.PHYSICAL, k_dam, tmp)
-		end
-		if auras.t_aura_on then
-			local t_aura = self:getTalentFromId(self.T_THERMAL_AURA)
-			local t_dam = mult * t_aura.getAuraStrength(self, t_aura)
-			DamageType:get(DamageType.FIRE).projector(self, target.x, target.y, DamageType.FIRE, t_dam, tmp)
-		end
-		if auras.c_aura_on then
-			local c_aura = self:getTalentFromId(self.T_CHARGED_AURA)
-			local c_dam = mult * c_aura.getAuraStrength(self, c_aura)
-			DamageType:get(DamageType.LIGHTNING).projector(self, target.x, target.y, DamageType.LIGHTNING, c_dam, tmp)
-		end
-	end
-
-
 	-- Regen on being hit
 	if hitted and not target.dead and target:attr("stamina_regen_when_hit") then target:incStamina(target.stamina_regen_when_hit) end
 	if hitted and not target.dead and target:attr("mana_regen_when_hit") then target:incMana(target.mana_regen_when_hit) end
diff --git a/game/modules/tome/class/interface/Combat.lua b/game/modules/tome/class/interface/Combat.lua
index c75c50df15c72c83b35248f1200dfb4a04a09e38..16e4d944204cdb3d68db4c3af2a8c1e6d2da3ba2 100644
--- a/game/modules/tome/class/interface/Combat.lua
+++ b/game/modules/tome/class/interface/Combat.lua
@@ -122,10 +122,13 @@ function _M:attackTarget(target, damtype, mult, noenergy, force_unharmed)
 	end
 
 	if not target.turn_procs.warding_weapon and target:knowTalent(target.T_WARDING_WEAPON) and target:getTalentLevelRaw(target.T_WARDING_WEAPON) >= 5
-		and rng.percent(target:callTalent(target.T_WARDING_WEAPON, "getChance")) and target:getPsi() >= 15 then
-		target:setEffect(target.EFF_WEAPON_WARDING, 1, {})
-		target.turn_procs.warding_weapon = true
-		target:incPsi(-15)
+		and rng.percent(target:callTalent(target.T_WARDING_WEAPON, "getChance")) then
+		local t = self:getTalentFromId(self.T_WARDING_WEAPON)
+		if target:getPsi() >= t.psi then
+			target:setEffect(target.EFF_WEAPON_WARDING, 1, {})
+			target.turn_procs.warding_weapon = true
+			target:incPsi(-t.psi)
+		end
 	end
 
 	-- Change attack type if using gems
diff --git a/game/modules/tome/data/talents/psionic/kinetic-mastery.lua b/game/modules/tome/data/talents/psionic/kinetic-mastery.lua
index 3a3ca0b7a6e3f9155a889f127a546a0193d962df..11d1c5efdd4ab3372b0babfe8c492538aee562b6 100644
--- a/game/modules/tome/data/talents/psionic/kinetic-mastery.lua
+++ b/game/modules/tome/data/talents/psionic/kinetic-mastery.lua
@@ -174,7 +174,7 @@ newTalent{
 		local chance, spread = t.getEvasion(self, t)
 		return {
 			chance = self:addTemporaryValue("projectile_evasion", chance),
-			slow = self:addTemporaryValue("slow_projectiles", slow),
+			slow = self:addTemporaryValue("slow_projectiles", chance),
 			spread = self:addTemporaryValue("projectile_evasion_spread", spread),
 		}
 	end,
diff --git a/game/modules/tome/data/talents/psionic/thermal-mastery.lua b/game/modules/tome/data/talents/psionic/thermal-mastery.lua
index 4ee9d6d1100a95e0a843a2fd724809e8b04cd4d4..a46cd447bb681773d2b6d5c9fc17b9d83fd013e4 100644
--- a/game/modules/tome/data/talents/psionic/thermal-mastery.lua
+++ b/game/modules/tome/data/talents/psionic/thermal-mastery.lua
@@ -168,7 +168,7 @@ newTalent{
 		
 		local dam=self:mindCrit(t.getDamage(self, t))
 		local dam1 = dam * (self:getMaxPsi() - self:getPsi()) / self:getMaxPsi()
-		local dam2 = dam * self:getPsi() / self:getMaxPsi()
+		local dam2 = dam * self:getPsi() / self:getMaxPsi() * 2
 		
 		self:project(tg, x, y, DamageType.COLD, dam1)
 		self:project(tg, x, y, DamageType.FIRE, dam2)