diff --git a/game/modules/tome/data/talents/spells/conveyance.lua b/game/modules/tome/data/talents/spells/conveyance.lua
index cec9b30419bca761e42a7dded7f01f315d7a7c53..9e80647e4e94709db93dfabbe62fb176f7af6005 100644
--- a/game/modules/tome/data/talents/spells/conveyance.lua
+++ b/game/modules/tome/data/talents/spells/conveyance.lua
@@ -136,6 +136,7 @@ newTalent{
 		if target ~= self and target:reactionToward(self) < 0 then target:setTarget(self) end
 
 		local x, y = self.x, self.y
+		local newpos
 		if self:getTalentLevel(t) >= 5 then
 			game.logPlayer(self, "Selects a teleport location...")
 			local tg = {type="ball", nolock=true, pass_terrain=true, nowarning=true, range=t.getRange(self, t), radius=t.getRadius(self, t), requires_knowledge=false}
@@ -145,11 +146,11 @@ newTalent{
 			-- but we cant ...
 			local _ _, x, y = self:canProject(tg, x, y)
 			game.level.map:particleEmitter(target.x, target.y, 1, "teleport")
-			target:teleportRandom(x, y, t.getRadius(self, t))
+			newpos = target:teleportRandom(x, y, t.getRadius(self, t))
 			game.level.map:particleEmitter(target.x, target.y, 1, "teleport")
 		else
 			game.level.map:particleEmitter(target.x, target.y, 1, "teleport")
-			target:teleportRandom(x, y, t.getRange(self, t), 15)
+			newpos = target:teleportRandom(x, y, t.getRange(self, t), 15)
 			game.level.map:particleEmitter(target.x, target.y, 1, "teleport")
 		end
 
@@ -157,6 +158,9 @@ newTalent{
 			target:setEffect(target.EFF_CONTINUUM_DESTABILIZATION, 100, {power=self:combatSpellpower(0.3)})
 		end
 
+		if not newpos then
+			game.logSeen(game.player,"The spell fails: no suitable places to teleport to.")
+		end
 		game:playSoundNear(self, "talents/teleport")
 		return true
 	end,
diff --git a/game/modules/tome/data/talents/techniques/dualweapon.lua b/game/modules/tome/data/talents/techniques/dualweapon.lua
index 3feb4a4423dd551beaf2c175e7de043b2fdfdc1c..dfd6da59023b5048c9abb49c29df918e22640b41 100644
--- a/game/modules/tome/data/talents/techniques/dualweapon.lua
+++ b/game/modules/tome/data/talents/techniques/dualweapon.lua
@@ -35,7 +35,7 @@ newTalent{
 	points = 5,
 	require = techs_dex_req2,
 	info = function(self, t)
-		return ([[You have learned to block incoming blows with your weapons, increasing your defense by %d.
+		return ([[You have learned to block incoming blows with your weapons.  When dual wielding, your defense is increased by %d.
 		Defense scales with Dexterity]]):format(4 + (self:getTalentLevel(t) * self:getDex()) / 12)
 	end,
 }
@@ -67,7 +67,7 @@ newTalent{
 		return true
 	end,
 	info = function(self, t)
-		return ([[You have learned to hit the right spot, increasing your armor penetration by %d.
+		return ([[You have learned to hit the right spot, increasing your armor penetration by %d when dual wielding.
 		Armor penetration will increase with your Dexterity stat.]]):format(4 + (self:getTalentLevel(t) * self:getDex()) / 20)
 	end,
 }
diff --git a/game/modules/tome/dialogs/LevelupDialog.lua b/game/modules/tome/dialogs/LevelupDialog.lua
index bddff191084cea74895a990eba9259f5144d00b3..d8bd75b2068e9aab9df803281d9cd8cd5c9a2cad 100644
--- a/game/modules/tome/dialogs/LevelupDialog.lua
+++ b/game/modules/tome/dialogs/LevelupDialog.lua
@@ -325,7 +325,7 @@ function _M:learnTalent(t_id, v)
 				return
 			end
 			if not self:isUnlearnable(t, true) and self.actor_dup:getTalentLevelRaw(t_id) >= self.actor:getTalentLevelRaw(t_id) then
-				self:simplePopup("Impossible", "You cannot unlearn talents!")
+				self:simplePopup("Impossible", "You cannot unlearn this talent!")
 				return
 			end
 			self.actor:unlearnTalent(t_id, nil, true)
@@ -367,7 +367,7 @@ function _M:learnTalent(t_id, v)
 				return
 			end
 			if not self:isUnlearnable(t, true) and self.actor_dup:getTalentLevelRaw(t_id) >= self.actor:getTalentLevelRaw(t_id) then
-				self:simplePopup("Impossible", "You cannot unlearn talents!")
+				self:simplePopup("Impossible", "You cannot unlearn this talent!")
 				return
 			end
 			self.actor:unlearnTalent(t_id, nil, true)