diff --git a/game/modules/tome/data/quests/west-portal.lua b/game/modules/tome/data/quests/west-portal.lua
index 102cac6195ae919c129b16882fa0bcc837b6c339..236cbd5bb5c9a89937043f4c0ad36c32c1948974 100644
--- a/game/modules/tome/data/quests/west-portal.lua
+++ b/game/modules/tome/data/quests/west-portal.lua
@@ -116,6 +116,7 @@ This one seems to go near the town of Minas Tirith in the West.]],
 
 	game.zone:addEntity(game.level, zemekkys, "actor", 41, 17)
 	game.zone:addEntity(game.level, g, "terrain", 41, 16)
+	game.player:move(40, 16, true)
 end
 
 on_status_change = function(self, who, status, sub)
diff --git a/game/modules/tome/data/talents/cursed/gloom.lua b/game/modules/tome/data/talents/cursed/gloom.lua
index 7cc281340c62b360ed869ce3f5bd647a789839eb..9b82a0ef8751c301e5afd1b5e6114e107ab5668b 100644
--- a/game/modules/tome/data/talents/cursed/gloom.lua
+++ b/game/modules/tome/data/talents/cursed/gloom.lua
@@ -138,9 +138,8 @@ newTalent{
 							local turns = 3 + math.ceil(self:getTalentLevel(tWeakness))
 
 							local weapon = target:getInven("MAINHAND")
-							if weapon then
-								weapon = weapon[1] and weapon[1].combat
-							end
+							if weapon then weapon = weapon[1] and weapon[1].combat end
+							if not weapon or type(weapon) ~= "table" then weapon = nil end
 							weapon = weapon or target.combat
 							local attack = target:combatAttack(weapon) * (2 + self:getTalentLevel(tWeakness)) * 3.5 / 100
 							local damage = target:combatDamage(weapon) * (2 + self:getTalentLevel(tWeakness)) * 3.5 / 100