thanks i can now rollback people the only problem is that it is realy realy slow. becouse for each block it does this:
if Block:FindKey("X: " .. X .. "Y: " .. Y .. "Z: " .. Z .. " World: " .. Player:GetWorld():GetName()) ~= -1 then local Target = Block:GetValue("X: " .. X .. "Y: " .. Y .. "Z: " .. Z .. " World: " .. Player:GetWorld():GetName() , "Player") if Target == Split[2] then if Block:GetValue("X: " .. X .. "Y: " .. Y .. "Z: " .. Z .. " World: " .. Player:GetWorld():GetName() , "PlacedOrBroken") == "Placed" then World:SetBlock(X, Y, Z, 0, 0) else BlockType = Block:GetValue("X: " .. X .. "Y: " .. Y .. "Z: " .. Z .. " World: " .. Player:GetWorld():GetName() , "BlockType") BlockID = tonumber(BlockType) BlockMeta = Block:GetValue("X: " .. X .. "Y: " .. Y .. "Z: " .. Z .. " World: " .. Player:GetWorld():GetName() , "BlockMeta") World:SetBlock(X, Y, Z, BlockID, BlockMeta) end Block:DeleteKey("X: " .. X .. "Y: " .. Y .. "Z: " .. Z .. " World: " .. Player:GetWorld():GetName()) end endany ideas how i could make it work faster?