diff --git a/game/modules/tome/class/Object.lua b/game/modules/tome/class/Object.lua
index 80528a7cbdfe086eb85bf84b535a1c49724c35b6..dc03a0a1cfa81c7fe5e6e35258a6d11b3a1e2442 100644
--- a/game/modules/tome/class/Object.lua
+++ b/game/modules/tome/class/Object.lua
@@ -1550,3 +1550,11 @@ function _M:getCharmPower(who, raw)
 		return v
 	end
 end
+
+function _M:addedToLevel(level, x, y)
+	if self.material_level_min_only and level.data then
+		local min_mlvl = util.getval(level.data.min_material_level) or 1
+		local max_mlvl = util.getval(level.data.max_material_level) or 5
+		self.material_level_gen_range = {min=min_mlvl, max=max_mlvl}
+	end
+end