World generation questions

As I can’t find anything related to the world generation in Google (most of results are Minecraft-related) I have to ask few questions about world generation there:

  1. What algorithms should I use to make 2d “world” map? (based on seed and world creation parameters)
  2. Is it possible to make 3d map using the same seed, world creation parameters and data from world map without generating the whole map at start (generation after player will choose site, not during initial generation)? Each “chunk” must always look the same and seamlessly connect with another chunks regardless of choosen world chunks. Player can choose any chunks amount, like 1X1, 2X1, 3X2, 5X5. Little example below:

http://img829.imageshack.us/img829/2868/exampleno.png

  1. I want to add minerals into 3d map rocks - is it possible using specific algorithm (again, generation depending on seed and parameters - map using the same seed and parameters must be always the same)?

Thank you in advance for all replies.

Perlin noise.

Edit: http://www.java-gaming.org/topics/noise-bandpassed-white/27071/view.html Here’s a link to a guide to noise on this website

Well that was informative… If you haven’t yet, take a look at this site:
http://freespace.virgin.net/hugo.elias/models/m_perlin.htm

Aaaaand the obligatory “that’s not Perlin noise, that’s value noise” response. Anyway, there’s oodles of perlin noise implementations out there for Java, and you shouldn’t have any need to write your own unless you’re trying to figure out how it works.

a real perlin noise implenmentation

This is a definitely a FAQ. I’m looking around for an appropriate sticky “Resources” post to stick links to noise implementations. Closest thing I can find is the one under this very board (“Game Mechanics”), but I’m not entirely sure about it (and the thread’s already kind of noisy).

Make a new wiki page.

What about simplex noise?

Given well implemented gradient & simplex noise methods, the gradient noise should be slightly faster. However simplex noise has less defects so on the whole simplex noise would probably be the better choice, esp for someone with little to no experience playing with noise.