Seed (level generation)

A seed is the basis for each Minecraft world. Worlds generated with the same seed in the same game version are the same.

A world's seed is set when that world is created. By default, it is decided automatically, but it can be set manually (since Beta 1.3). 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.

To determine a world's seed number, load it, and look at the debug screen (since Beta 1.8.1). Different seeds result in random worlds with different natural formations. Using a biome name (i.e. tundra, desert, forest, etc.) does NOT necessarily result in the creation of a world with primarily that biome. Nor can a lava or cave world be achieved with a certain seed.

Seeds are not compatible between game versions with a world generator update.

Since 1.2, servers no longer send the seed to clients.

Technical
Number seeds are used by the world generator to get pseudo-random values. 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 clock) to access the full set of possible worlds (around 18 quintilion). 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.

Bugs
Seed generation can be very buggy. There is a glitch which can create rectangular pitfalls, all the way down to bedrock. This can also force an ocean biome into parts of the world, mostly due to a slow computer, or minecraft having low memory, which in turn can expose water, lava, ores, and structures, including npc villages.