http://freespace.virgin.net/hugo.elias/models/m_perlin.htm

And implemented a 2D noise function:

^{ public static double intNoise2d(int x, int y){ int n = x + y * 57; n = n << 13 ^ n; return ( 1.0 - ( (n * (n * n * 15731 + 789221) + 1376312589) & 0x7fffffff) / 1073741824.0); }}

This gives me values between -1 and 1, which is enough for me. I can generate terrain and trees etc. based on the numbers it gives me.

My question is, how do I seed it? Now it will give me the exactly same map each time.