Вопрос к знатокам метатаблиц. Хочу сделать с race-мода что-то на подобии DDC, чтобы были разные комнаты, допустим в одной race, во второй DD карты, в третей DM. Не даются мне как-то эти метатаблицы, не могу понять вообще зачем они и с чем их едят. 
Допустим часть кода для загрузки карты: 
RaceMap = {} 
RaceElementMap = {} 
  
function RaceMap:__index(k) 
    if RaceMap[k] then 
        return RaceMap[k] 
    end 
    local result = xmlNodeGetAttribute(self.xml, k) 
    if result then 
        result = RaceMapObject:parseValue(result) 
        self[k] = result 
        return result 
    end 
    result = xmlFindChild(self.xml, k, 0) 
    if result then 
        result = self:createRaceMapObject(result, k) 
        self[k] = result 
        return result 
    end 
end 
 
Как мне сделать так, чтобы RaceMap = {} превратился в что-то типа RaceMap = { [1] = {}, [2] = {}, [3] = {} } ? 
Или лучше не лезть в дебри?