Procedural Mountain Generation

I would like to be able to generate mountains out of my terrain, but a problem I am having is that the only was I can make the mountains look like actual mountains is doing this:

if (height > 175) {
	height *= height/175;
}

Which include a threshold to check if the height is over, then it will generate a nice looking mountain, but I would like it to match my biome system. So if the biome is “Mountain” it will generate a mountain there even if its not over 175.
I want to be able to have flat terrain someplaces while I have bumpy terrains other places.

Full generation code:

Would I be able to do something like this?

var terrainHeight = 250;

if (Biome == "Mountain") {
   height += height / terrainHeight;     
}

It would work fine if the terrain wasn’t so rough, and high someplaces.

EDIT:
I played a little with the perlin noise generation variables and got some fine results,
now my question is how can I make the heigher spots (Mountains) more rough while the rest of the terrain is just normal :slight_smile:

Result:
[33314-screenshot+2014-10-05+14.03.00.png|33314]

Take a look at the After Playing Minecraft thread, there are several duscussion spread throughout that deal with terrain map generation, one is here:

http://forum.unity3d.com/threads/after-playing-minecraft.63149/page-50#post-1732501

Try perlin noise. Unity has this in Mathf. This makes a soft and gradually changing values.