Seed (level generation)

Minecraft seeds are values made up of characters (including numbers), or just one character, that is used as the basis for generating every Minecraft world.

World Generation
Whenever the game has to generate a new world, it calls upon an algorithm. This algorithm will output a pseudo-random value that is then used to determine what the world will look like. However, the algorithm will always end up with the same value if the starting point (seed) that the algorithm uses is the same number. This is why seeds exist-to easily generate entirely different worlds from a single value.

Whenever the world generation algorithm is updated, the same seed will no longer generate the same terrain. This is why in some different versions of the game, the same seed will not give the same world.

A world's seed is set when that world is created. By default, it is decided automatically (if so, the game uses the system time as the seed), but it can also be set manually. Set and reuse a seed to replay that world, or use a known seed to play the same world as another player. Either a number or a word/phrase can be used, including negatives.

If the seed or generator changes in a saved world, new chunks will be based on the new seed, and will not match those from the old seed (this phenomenon was widely observed with the Adventure Update). Deleted chunks can regenerate if the seed and generator remains the same, but will change if either the seed or generator changes.

It is important to note that due to the fact that seeds are simply random values read into an algorithm and not actually names of different worlds, using a certain seed will not necessarily result in a world with any relevance to the value of that seed. For instance, using a biome name as your seed will not necessarily result in the creation of a world with primarily that biome.

Determining the seed
To determine a world's seed number, load the game world, and look at the debug screen.

There is currently no way for clients in a multiplayer server to determine the seed of a certain world without using external commands or tools or having access to the world files themselves.

Technical
The Java function is used to generate a number seed if a word/phrase is used. This restricts Minecraft to a subset of the possible worlds (around 4 billion), due to the datatypes used. Use number seeds directly or let Minecraft generate the seed (it uses the system clock) to access the full set of possible worlds (around 18 quintillion).

History

 * As of Beta 1.3, you may manually determine the seed.
 * As of Beta 1.8.1, the debug screen displays the seed number.
 * As of 1.2, servers no longer send the seed to clients.

Seed extraction

 * SeedScope.net: Webapp requiring uploaded savegame files.
 * Random Seed Reader: Local Java tool

Sites dedicated to Minecraft seeds

 * MinecraftSeeds.us
 * MinecraftSeeds.info
 * Minecraft-Seed.com
 * Minecraft-Seeds.net
 * SeedMiner.com
 * SeedVault.info