added cave_generation