How would i spawn a level?

Hello i have a game object that i would like to spawn, to start with it should be not very many spawning and them it increases higher and still keeps the distance between each game object needed. How would i do this? is this a good spawning script?

// Instantiates prefab somewhere between -10.0 and 10.0 on the x-z plane 
var prefab : GameObject;
function Start () {
var position: Vector3 = Vector3(Random.Range(-10.0, 10.0), 0, Random.Range(-10.0, 10.0));
Instantiate(prefab, position, Quaternion.identity);

Your code seems alright to create on object randomly. If you want to create one every x seconds, try InvokeRepeating or a coroutine. To make sure they popup randomly but keep their distance, start by creating a list with all the possible positions (something like (-10,0,-10), (-9,0,-10)…). Each time, pick one element of the list randomly and remove it.