diff --git a/game/modules/tome/data/achievements/kills.lua b/game/modules/tome/data/achievements/kills.lua
index a360f2d30962b79464da916715283c47198bf4d6..b89890239047454165bda29d1e29ff0859782028 100644
--- a/game/modules/tome/data/achievements/kills.lua
+++ b/game/modules/tome/data/achievements/kills.lua
@@ -76,3 +76,9 @@ newAchievement{
 	desc = [[Killed Harkor'Zun and unlocked the Geomancer class]],
 	mode = "player",
 }
+
+newAchievement{
+	name = "Kill Bill!", id = "KILL_BILL",
+	desc = [[Killed Bill in the Trollshaws with a level one character]],
+	mode = "player",
+}
diff --git a/game/modules/tome/data/zones/trollshaws/npcs.lua b/game/modules/tome/data/zones/trollshaws/npcs.lua
index 99a2da6a728d9a89758190039bc60052ae177b82..ff7814c4447cc786ca33c5d7b5b8b120acb55d33 100644
--- a/game/modules/tome/data/zones/trollshaws/npcs.lua
+++ b/game/modules/tome/data/zones/trollshaws/npcs.lua
@@ -65,6 +65,9 @@ He is wielding a small tree trunk and towering toward you.]],
 	on_die = function(self, who)
 		game.state:activateBackupGuardian("ALUIN", 2, 35, "... and we thought the trollshaws were safer now!")
 		game.player:resolveSource():setQuestStatus("start-allied", engine.Quest.COMPLETED, "trollshaws")
+		if who and who.level and who.level == 1 then
+			world:gainAchievement("KILL_BILL", game.player)
+		end
 	end,
 }