diff --git a/game/modules/tome/data/quests/lichform.lua b/game/modules/tome/data/quests/lichform.lua
index e4d151c582e70a8ee7eca58bfa5ab04698d773bb..9f17bdfe49450056069bdd4640c320b2184a9cb6 100644
--- a/game/modules/tome/data/quests/lichform.lua
+++ b/game/modules/tome/data/quests/lichform.lua
@@ -48,6 +48,14 @@ desc = function(self, who)
 	return table.concat(desc, "\n")
 end
 
+on_grant = function(self, who)
+	if who:isQuestStatus("grave-necromancer", engine.Quest.DONE) then
+            game:onTickEnd(function()
+                who:setQuestStatus(self.id, engine.Quest.COMPLETED, "heart")
+            end)
+	end
+end
+
 on_status_change = function(self, who, status, sub)
 	if self:isCompleted() then
 		local q = who:hasQuest("shertul-fortress")