diff --git a/game/engines/default/engine/generator/map/Static.lua b/game/engines/default/engine/generator/map/Static.lua
index 929d1153b77948de88587d4fe25fdb36b96a4ba6..1726b35ca5302bceebc02c65d7e4cc8726145ed4 100644
--- a/game/engines/default/engine/generator/map/Static.lua
+++ b/game/engines/default/engine/generator/map/Static.lua
@@ -196,23 +196,22 @@ function _M:tmxLoad(file)
 	end
 	for _, tileset in ipairs(map:findAll("tileset")) do
 		if tileset:findOne("properties") then for name, value in pairs(tileset:findOne("properties"):findAllAttrs("property", "name", "value")) do
-			-- setting .add_zone_lists = true in the file table causes the specified entity lists to be merged into a clone of the zone list
 			local elist
 			if name == "load_terrains" then
 				local list = self:loadLuaInEnv(g, nil, "return "..value) or {}
-				if list.add_zone_lists then elist = table.clone(self.zone.grid_list) end
+				elist = table.clone(self.zone.grid_list, false)
 				self.grid_list = self.zone.grid_class:loadList(list, nil, elist, nil, elist and elist.__loaded_files)
 			elseif name == "load_traps" then
 				local list = self:loadLuaInEnv(g, nil, "return "..value) or {}
-				if list.add_zone_lists then elist = table.clone(self.zone.trap_list) end
+				elist = table.clone(self.zone.trap_list, false)
 				self.trap_list = self.zone.trap_class:loadList(list, nil, elist, nil, elist and elist.__loaded_files)
 			elseif name == "load_objects" then
 				local list = self:loadLuaInEnv(g, nil, "return "..value) or {}
-				if list.add_zone_lists then elist = table.clone(self.zone.object_list) end
+				elist = table.clone(self.zone.object_list, false)
 				self.object_list = self.zone.object_class:loadList(list, nil, elist, nil, elist and elist.__loaded_files)
 			elseif name == "load_actors" then
 				local list = self:loadLuaInEnv(g, nil, "return "..value) or {}
-				if list.add_zone_lists then elist = table.clone(self.zone.npc_list) end
+				elist = table.clone(self.zone.npc_list, false)
 				self.npc_list = self.zone.npc_class:loadList(list, nil, elist, nil, elist and elist.__loaded_files)
 			end
 		end end
diff --git a/game/engines/default/engine/utils.lua b/game/engines/default/engine/utils.lua
index 441842ac455440657faf51bc46cf076fe7f91115..1ff80c6541d381f8b391dd98f5136f881071d3de 100644
--- a/game/engines/default/engine/utils.lua
+++ b/game/engines/default/engine/utils.lua
@@ -2268,7 +2268,7 @@ function rng.rarityTable(t, rarity_field)
 		local nb = math.floor(max / e[rarity_field])
 		for i = 1, nb do rt[#rt+1] = e end
 	end
-	return rng.table(t)
+	return rng.table(rt)
 end
 
 function util.show_function_calls()