Seed (level generation)
This article needs to be updated.
Reason:JE 1.18.2 and BE 1.18.30 changes
Seeds are values made up of character(s) (including negative or positive integers) that are used as the basis for generating every Minecraft world.
- 1 Compatibility
- 2 World generation
- 3 Determining the seed
- 4 Technical
- 4.1 Realms
- 4.2 Java Edition
- 4.3 Bedrock Edition
- 4.4 Overlap between editions
- 4.5 Seed 0
- 4.6 Generation quirks
Seeds are somewhat compatible across editions, with terrain generation and biomes being the same between seeds -2147483648 to 2147483647. However, structure locations still remain different between Java Edition and Bedrock Edition.
Java Edition seeds between Alpha 1.2.0 and Beta 1.7.3 are mostly the same. Beta 1.8 changed world generation completely, and Release 1.2 changed locations of land biomes with the addition of jungles. Release 1.7.2 rewrote the world generation entirely, determining the arrangement of land biomes and oceans that are present until 1.17. 1.13 featured addition of underwater caves, new aquatic biomes, and adjustment to locations of mutated biomes and structures. 1.14 included the new bamboo jungle biome, and added snowy tundra villages and pillager outposts. In 1.16, shipwrecks and ocean ruins were made rarer, and four new biomes were added to the Nether. World generation is overhauled in 1.18, with the addition of bigger caves, biomes in caves, new mountains, changes in terrain height, and changed location of some structures. Not mentioned are structure additions in several updates throughout, but the addition of a generated structure usually does not require a complete change of biome generation.
Legacy Console Edition seeds were updated in a similar schedule to Java Edition equivalents.
In Bedrock Edition, the 0.9.0 update was the first update to overhaul world generation. Oceans were changed in the Update Aquatic. Villages and other structures were changed in Village & Pillage. 1.17.0 changed the location algorithm for some structures such as dungeons. World generation is overhauled in 1.18.0, becoming the second update to overhaul the world generation entirely, with the addition of bigger caves, biomes in caves, new mountains, and changes in terrain height.
Until 1.17, certain seeds share a similar biome map across Java and Bedrock with some terrain differences and no similarity in generated structure locations. From 1.18 onwards, all Bedrock Edition seed numbers share a similar terrain and biome map across Java and Bedrock, but still with no similarity in generated structure locations.
It has been suggested that this page be split intoWorld generation.
notsplit until a consensus has been reached.
Create a page that focuses specifically on how Minecraft generates its terrain
Whenever the game has to generate a new world, it calls upon an algorithm known as Perlin noise. This algorithm outputs a pseudo-random value that is then used to determine the characteristics and features of the world. However, the algorithm always outputs the same value each time for a constant starting point (seed). Thus, the same seed generates the same terrain every time.
A world's seed is set when that world is created. By default, it is decided automatically, but it can also be set manually. Setting and reusing a seed from one world generates the same world. Either a number or a word/phrase can be used, including negatives. If a word/phrase is used, it is converted into a 32-bit integer.
Whenever the world generation algorithm is updated (usually by adding new biomes to the game), the same seed no longer generates the same terrain. If the seed or generator changes in a saved world, new chunks are based on the new seed and no longer match those from the old seed. In Java Edition, major (terrain-breaking) changes were observed with Alpha v1.2.0, Beta 1.8, 1.7.2, and 1.18. Deleted chunks can regenerate if the seed and generator remain the same, but changes if either the seed or generator changes. In fact, deleting chunks is sometimes done to let newly-introduced features appear in an old world; see Tutorials/Updating old oceans in 1.13 using MCEdit.
Because seeds are simply random values read into an algorithm and not actually names of different worlds, using a certain seed does not result in a world with any relevance to the value of that seed. For instance, using a biome name as the seed does not necessarily result in the creation of a world with primarily that biome, nor does it spawn the player within the said biome.
Determining the seed
In Java Edition, the player can enter the command
/seed to view the world's seed. This command is available in singleplayer worlds even if cheats are off. The player can also select 'Re-create' in the Worlds menu to see the seed.
In Bedrock Edition, the seed can be found on the world options screen. There is also a seed picker that offers the player several pre-set seeds to generate worlds with specific features near the spawn point. Additionally, the beta version has a visible seed on the top of the screen.
In Java Edition, a player can type /seed in the chat. In Bedrock Edition, the seed is not visible when playing on Realms.
If the seed contains characters other than numbers or is greater than or equal to 20 characters in length, the Java
String.hashCode() function is used to generate a number seed. This restricts Minecraft to a subset of the possible worlds to 232 (or 4,294,967,296), due to the
int datatype used. Number seeds or a default world seed must be used to access the full set of possible worlds (264, or 18,446,744,073,709,551,616).
Bedrock Edition has a total of 232 (or 4,294,967,296) possible worlds no matter whether strings or numbers are used as the seed. This is because Bedrock Edition uses a 32-bit variant of the Mersenne Twister PRNG, which accepts only 32-bit seeds. The hashing algorithm is identical to
String.hashCode(): a hash h starts with 0, and for each character c, the value of h is changed to h * 31 + c, within the boundary of a 32-bit integer.until BE 1.18.30]
Overlap between editions
All Java and Bedrock Edition seeds in the range from -2,147,483,648 to 2,147,483,647, generate the same terrain and biomes in both Java and Bedrock editions, although with differing structures, decorator placements, carver caves, and mob spawns.
This section needs to be updated.
Reason:JE 1.18.2 and BE 1.18.30 changes
In Java Edition, the numeric entry for Minecraft seeds does not allow the number "0" (zero), as the game interprets "0" as a character, hashing it to its ASCII value of
48. However, by using a text seed for which the Java
String.hashCode() function returns a zero value, the "zero seed" can still be used. Word strings that produce a zero seed include
pollinating sandboxes, and
drumwood boulderhead. However, any text that hashes to 0 works, such as
zsjpxah being the shortest.
In Bedrock Edition, the game rejects all numbers from -9 to +9. However, changing the last character of the seed by one also changes the output hash code by one, so to arrive to a value of +2 from
creashaks organzine, the last letter is advanced two positions to become
creashaks organzing. The shortest version is still
ddnqavb, followed by any other letter from
s.until BE 1.18.30]
Through certain seeds, it is possible to observe interesting effects.
Changing terrain without changing some structures
Only certain sections of the seed are used to generate specific features within the world. It is possible to generate multiple worlds with identical cave systems, Nether biomes and other arrangements of generated structures simply by converting the seed into binary and tweaking the desired bits. An example is the seed generator using only the first 48 bits to generate cave systems and badlands clay banding layers.
Until Java Edition 1.17.1, the biome distribution of one world is identical to the biome distribution of another world whose seed can be found by subtracting the current seed from the constant
-7379792620528906219. The terrain generates differently in both worlds, however.
Seed 164311266871034 in spectator mode. Caves are repetitive along the Z axis.
Seed 1669320484 in Bedrock Edition, with repeating canyons.
Certain seeds return 0 in the internal code, causing infinite arrays of caves and other structures to generate. In Java and Legacy Console editions, the seed
107038380838084 returns 0 on the first call and
164311266871034 returns 0 on the second call, causing mineshafts, caves and underwater ravines to loop on the X and Z axes respectively. Underwater caves and normal ravines do not repeat with this seed for 1.13 onward, as a salt was unaccountably added for these. However, if 1 is subtracted from either seed, ravines and underwater caves repeat, but the other three structures do not.
Other features can also repeat, such as decorations. These instead generate diagonally.
In Bedrock Edition, diagonal cave, ravine, dungeon, and decoration repetition occur with the seeds
1669320484. Mineshaft generation repeats vertically in the seeds
This section needs to be updated.
Reason:Bedrock experimental changes
|Java Edition pre-Classic|
|rd-160052||Added a simple level generator.|
|Java Edition Classic|
|0.0.12a||Added a new level generator.|
|August 25, 2009||Showed another new level generator, which generates cliffs more commonly.|
|Java Edition Indev|
|0.31||20091223-2||Isometric level rendering screenshot added.|
|20100106||The player can now select island, floating, flat, or original as the level type when generating a world.|
|Players can also select square, long, or deep as the level shape.|
|Players can also select small, normal, or huge as the level size.|
|20100107||Deep floating maps now have layers of islands.|
|Players can now select a level theme; normal or hell.|
|20100110||Islands now generate with more sand.|
|20100113||Oceans now generate with infinite water.|
|20100122||Water now spawns naturally above sea level and on floating islands.|
|Caves are now less flooded.|
|Java Edition Infdev|
|20100227-1||Terrain-breaking change to world gen: using any given seed on older versions now generates a different world.|
|World generation has been greatly simplified (with the removal of sand, blobs) in order to make infinite world generation implementation easier to work with.|
|20100227-2||Brick pyramid generation changed - they will now always come to a single point at the top, rather than sometimes being truncated, resulting in "brick square frusta".|
|20100320||Reimplemented primitive blob generation, in which they spawn as scattered, single blocks.|
|Reimplemented tree generation.|
|20100325||Blob generation has been changed to the modern generation type. However, a float is used in their generation, causing their generation to break down at excessive distances.|
|Added caves. They generate through all blocks, not just terrain blocks.|
|20100327||Terrain-breaking change to world gen: using any given seed on older versions now generates a different world.|
|World generation has been significantly overhauled, which is visually very obvious.|
|Removed random patches of flowers.|
|The large stone wall at 33,554,432 no longer generates. Instead, the Far Lands generate at 12,550,824.|
|20100413||All trees are now large trees.|
|Sand and gravel now generate with the world again.|
|20100420||Terrain-breaking change to world gen: using any given seed on older versions now generates a different world.|
|World generation seems considerably less mountainous.|
|20100608||All trees are now small trees again - big trees do not generate.|
|Terrain now appears to come in large islands.|
|Terrain can now generate high enough to be higher than the world height limit, causing it to be cut off.|
|The amount of trees that generate appears to be different now.|
|Random patches of flowers and mushrooms now generate.|
|Springs now generate.|
|Lava now naturally generates, although how it does so exactly is unknown.|
|Java Edition Alpha|
|Java Edition Beta|
|1.3||It is now possible to manually determine the seed upon world creation.|
|1.8||Pre-release||Terrain-breaking change to world gen.|
|The debug screen now displays the seed number.|
|1.2.1||?||Multiplayer servers no longer send the seed to clients.|
|1.3.1||12w18a||Due to singleplayer becoming multiplayer, the world's seed is no longer displayed on the debug screen.|
|1.7.2||13w36a||Terrain-breaking change to world gen with the introduction of many new biomes.|
|1.13||18w06a||World generator rewritten in a non-breaking way.|
|1.18||1.18 Experimental Snapshot 1||Terrain-breaking change to the world gen with the introduction of multinoise, terrain noise, biome builders, and new caves.|
|1.18 experimental snapshot 2||World generator rewritten in a non-breaking way.|
|Seeds have been reshuffled due to this change. Worlds will not look like as they did in previous snapshots.|
|21w43a||Seeds have been reshuffled again. Worlds will not look like as they did in previous snapshots.|
|1.18.2||22w03a||The seed "0" (zero) can now be used normally.|
|Any spaces before or after an inputted seed will now be trimmed.|
|Pocket Edition Alpha|
|1.18.0||beta 22.214.171.124||Terrain-breaking change to the world gen. Revamp Caves, Mountains, and Terrain height system.|
|beta 126.96.36.199||Replaced the random number generator used in world generation, resulting in different terrain being generated using same seed.|
|beta 188.8.131.52||Seeds have been reshuffled again. Worlds will not look like as they did in previous betas.|
|Upcoming Bedrock Edition|
|1.18.30||beta 184.108.40.206||Worlds can now be created with 64-bit seeds.|
|Single-digit seeds such as "0" can now be used normally.|
- It is possible to generate Legacy Console Edition biomes on Java Edition version 1.7.2 - 1.12.2 by modifying the source code to remove 2 hard-coded layers in the biome stage of biome generation, which downscales the biomes 4x to obtain the final Legacy Console biome map, as the 1.12.2 old Customized's biome size option uses a different hard-coded formula to downscale/upscale biomes. Specifically, legacy console edition does not scale the biomes 2x immediately prior to where the biome edges are applied, whereas Java Edition customized changes the number of times biomes are scaled after beaches are placed on the biome map.
Notable Java Edition seeds
The following map seeds have, at one point or another, been used for generating official Minecraft maps and resources or otherwise significant community material.
- The Java Edition demo world seed can be played in the full version by entering
- The PC Gamer demo world seed can be played in the appropiate era by entering
- The seed for each title screen panorama are as follows:
- The panorama used between Beta 1.8 Pre-release and 18w22c is either
- The panorama used for Java Edition 1.13 is
- Java Edition 1.14 is
- Java Edition 1.15 is
- Java Edition 1.16 is
- Java Edition 1.18 is
North Carolinain the seed input.
glacier, all lowercase unlike the famous seed where the G is capitalized, in the seed input.
generated between Beta 1.6.6 and Beta 1.7.
1458140401, which is the seed resulting from typing
18w22ain as a seed, generated in snapshot 18w22a.
2802867088795589976, taken in 18w48a.
-4404205509303106230, taken in 19w40a.
6006096527635909600, taken in 20w13a.
2151901553968352745, taken in 21w40a.
3257840388504953787, generated in Alpha v1.2.2.
It can also be generated between Alpha v1.2.0 and Beta 1.7.3 with minor population differences.
-1044887956651363087, generated in Alpha v1.1.2_01 or prior.
478868574082066804, generated in Alpha v1.0.16_02.
- ↑ https://www.mojang.com/2011/02/a-short-demystification-of-the-map-seed/
- ↑ "The world with that same name on the screenshot uses seed "pollinating sandboxes" as well, a legit way to create a world with seed 0. Other strings that create seed 0 are "creashaks organzine" and "drumwood boulderhead" but I used one that's easy to remember." – @SeargeDP on Twitter
- ↑ MCPE-44604
- ↑ https://www.minecraftforum.net/forums/minecraft-java-edition/seeds/2229720-can-two-different-seeds-produce-identical-worlds
- ↑ http://stackoverflow.com/questions/3065554/can-javas-random-function-be-zero
- ↑ MC-111378
- ↑ https://www.reddit.com/r/MCPE/comments/5i6sae/recursive_infinite_mineshaft_seeds_on_mcpe/
- ↑ https://www.youtube.com/watch?v=UtNXUMrSIxQ
- ↑ MCPE-95011
- ↑ MCPE-114472
- ↑ https://www.reddit.com/r/Minecraft/comments/hthrmk/big_news_we_have_found_the_seed_of_minecrafts/
- ↑ https://www.reddit.com/r/MinecraftAtHome/comments/iocx6f/packpng_seed_was_found_explanation_tutorial_and
- ↑ https://www.reddit.com/r/Minecraft/comments/iqg3ey/the_original_screenshot_seed_of_the_minecraft/
Bedrock and Java Editions
Chunkbase Minecraft Apps: Online seed/map explorer tool Minecraft Seeds on Reddit: Community-driven Minecraft Seeds Minecraft Seeds: Community-driven Minecraft Seeds LookingForSeed: Find Minecraft seeds from various categories Minemap.org: High resolution maps for good seeds for the Java and Windows 10 (Bedrock) Edition
Java Edition only
Random Seed Reader: Local Java tool Minecraft SeedHunt: Selected Seeds from various categories for Java 1.16 Minecraft Seeds Java Edition: New Seeds for 1.16.4 Version SeedCracker: guess a seed from a multiplayer server Seeder: Seed/map explorer tool and finder for Java
Source: Minecraft Wiki