So my question is in the title. Have all possible random seeds been generated?
If you don't know, minecraft has 2 to the power of 64 possible seeds, which is this number:
18.446.744.073.709.551.616
HOWEVER: Only 2 to the power of 48 seeds can be generated [b]randomly[/b] because of a problem in java random, which makes the possible seeds:
281.474.976.710.656
This is 281 trillion. That are lots of worlds.
Another way to ask this question is: "If i generate a world, has my world been generated by another user?"
OR "Have ever 2 players got the same world?"
Now, lets go for calculation. It is difficult to calculate how many worlds all users have generated. Some have generated 1, others (speedrunners) 10.000.
It is very difficult to calculate, but i will make my best. On all platforms, minecraft has been sold 200 million times. If we include minecraft china, which has 300 million downloads (1/5 of china's population!), 500 million players have played it. (1/14 of the world!).
Now the difficult part. Calculating.
I started by calculating how many worlds i have generated and that is around 300.
Now i need to check the average playertime. A youtuber called antvenom covered it and his video helped me a lot.
So, 1/3 of minecraft players are alt accounts that possibly have not generated worlds or just 1. This means that 166 million accounts have generated 0-5 worlds. Lets put 0.5 worlds, so from these alt accounts, 83 million worlds have been generated, and that is still one 3.391.264th from all possible worlds.
Now lets progress into the 2/3 of the accounts that are actual, i mean for the 333 million other accounts.
Now it is very difficult. We have a range of 5 to 10.000 worlds, with some users even generating 100.000 worlds (i don't know how, but possibly a shared account with family and friends that are all creating worlds to check customized mode? i have no idea).
I will make a wild guess and claim 200. This means that the average player has generated 200 worlds. And that is 66 billion worlds. Still one 4.226th of all possible random world seeds.
Adding the 2 values together, and we get 66.683.000.000 worlds FROM ALL USERS OF MINECRAFT. one 4.221th of all minecraft seeds.
The number above (66 billion worlds) may seem a bit small, but remember, it is like each human on this planet to have generated 8 worlds if we put it on that scale.
So my final answer is that only one 4.221th of all seeds have been generated. This means that if you generate 4221 worlds, you have a very high chance that another player has generated the same world. Or if you generate a world, you have a one in 4221 chance that another player has generated the same world as you. Or, there is a one in 4221 chance that a player has generated the seed 0. Or a one in 4221 chance that somebody generated the seed for pack.png (except mojang).
I did my best, but if you have another possible answer that increases the amount, please let me know.
EDIT:
Also i would like to include that, if one 4221th of all seeds are generated (based of my calculations), then the most "rarest" seeds by digits are 6 ten or less digit seeds. A 10 digit seed looks like this: 1.000.000.000
This also means that these seeds can be generated by text.
So it means that, only 6 worlds have been randomly [/b]generated that can be generated by text.
Also there is a 60% chance of a 9 digit seed (it looks like: 10.000.000)
And a 6% chance of an 8 digit seed (it looks like 1.000.000)
You should also account for players who use text seeds, though since there are only about 4.3 billion possible seeds it doesn't change much (while Java's Random can generate 65536 times more unique seeds there is almost no overlap between the seed spaces - in fact, just 65536 text seeds can be expected to match a randomly generated seed since Random can only generate 1/65536 of all possible seeds). Also, some players do enter numerical seeds which can be any possible 64 bit value, for example, I often use seeds like 12345 when testing, which can't be randomly generated (also, the inability for Random to generate all possible 64 bit seeds is not a bug as the RNG algorithm is 48 bits, though the game should be using a proper 64 bit RNG, including for all world generation, not just the biome generator, which uses a custom RNG that does use all 64 bits).
Also, while I have created many worlds, possibly more than a thousand, I often reuse the same seed; for example, most of the worlds in my MCP installations (I currently have 87 "MCP" worlds, which I periodically mass delete) have the same seed in part to ensure consistency in world generation while developing mods, especially for my "World1" mod, where any changes (optimizations) I make to the world generation code must not cause world generation to differ from vanilla, as do many of my actual worlds (World1, InfiniteCaves, World1v2, World1v3, and TMCWv1 all use the same seed, with differences being due to mods). The same goes for speedrunners who keep reusing the same seed, so the average number of unique worlds/seeds per player is probably lower.
If you want a world that is extremely UNLIKELY to have been seen by another player there is an easy way to get one (actually a HUGH number of them).
Entering a text seed into Minecraft causes the program to call the hashcode() function which "hashes" the text string into a signed 32 bit number.
That a seed in the range of -2,147,483,648 thru 2,147,483,647. Basically a 10 digit number although over 70% of 10 digit numbers aren't in that range.
If you don't enter a seed, or enter zero, Java will create a 64 bit signed integer to be used as the world seed.
That's a range of -9,223,372,036,854,775,808 thru 9,223,372,036,854,775,807..
Note that these numbers are over 90% of all 19 digit long numbers.
Now, since the pseudo random number generator is ASSUMED to give each number in that range an equal chance of being generated there is something we can say with certainty. The chances of a generated number having LESS than 16 digits is nearly 10,000 to 1 AGAINST.
Each decrease in seed length increases that probability by a factor of 10.
So the probability of the PRNG of generating a 13 digit seed is 10 MILLION to 1 AGAINST. ie not very likely.
So, If you want to create a world that, in all probability, has NEVER been seen by another Minecraft player, just use any positive or negative number with 11 through 15 digits. I'll bet anything your world will be unique.
Rollback Post to RevisionRollBack
There are no dangerous weapons. There are only dangerous people. R.A. Heinlein
If you aren't part of the solution, then you obviously weren't properly dissolved.
You should also account for players who use text seeds, though since there are only about 4.3 billion possible seeds it doesn't change much (while Java's Random can generate 65536 times more unique seeds there is almost no overlap between the seed spaces - in fact, just 65536 text seeds can be expected to match a randomly generated seed since Random can only generate 1/65536 of all possible seeds).
Also, while I have created many worlds, possibly more than a thousand, I often reuse the same seed;
I would like to tell you that i am talking only about randomly generated seeds, not text seeds. With that i mean blank seed box (or 0).
Also i took account in the calculation that some players create worlds, but with the same seed and adjusted it.
If you want a world that is extremely UNLIKELY to have been seen by another player there is an easy way to get one (actually a HUGH number of them).
Now, since the pseudo random number generator is ASSUMED to give each number in that range an equal chance of being generated there is something we can say with certainty. The chances of a generated number having LESS than 16 digits is nearly 10,000 to 1 AGAINST.
Each decrease in seed length increases that probability by a factor of 10.
So the probability of the PRNG of generating a 13 digit seed is 10 MILLION to 1 AGAINST. ie not very likely.
So, If you want to create a world that, in all probability, has NEVER been seen by another Minecraft player, just use any positive or negative number with 11 through 15 digits. I'll bet anything your world will be unique.
Good calculation! Just a reminder that we are talking about random seeds, not inputed/text.
Also i would like to include that, if one 4221th of all seeds are generated (based of my calculations), then the most "rarest" seeds by digits are 6 ten or less digit seeds. A 10 digit seed looks like this: 1.000.000.000
This also means that these seeds can be generated by text.
So it means that, only 6 worlds have been randomly generated that can be generated by text.
Also there is a 60% chance of a 9 digit seed (it looks like: 10.000.000)
And a 6% chance of an 8 digit seed (it looks like 1.000.000)
If you want a world that is extremely UNLIKELY to have been seen by another player there is an easy way to get one (actually a HUGH number of them).
Entering a text seed into Minecraft causes the program to call the hashcode() function which "hashes" the text string into a signed 32 bit number.
That a seed in the range of -2,147,483,648 thru 2,147,483,647. Basically a 10 digit number although over 70% of 10 digit numbers aren't in that range.
If you don't enter a seed, or enter zero, Java will create a 64 bit signed integer to be used as the world seed.
That's a range of -9,223,372,036,854,775,808 thru 9,223,372,036,854,775,807..
Note that these numbers are over 90% of all 19 digit long numbers.
Now, since the pseudo random number generator is ASSUMED to give each number in that range an equal chance of being generated there is something we can say with certainty. The chances of a generated number having LESS than 16 digits is nearly 10,000 to 1 AGAINST.
Each decrease in seed length increases that probability by a factor of 10.
So the probability of the PRNG of generating a 13 digit seed is 10 MILLION to 1 AGAINST. ie not very likely.
So, If you want to create a world that, in all probability, has NEVER been seen by another Minecraft player, just use any positive or negative number with 11 through 15 digits. I'll bet anything your world will be unique.
So, I can see how one would want to avoid seeds with less than 11 digits, assuming one wanted a unique world, but I'm not seeing why 11 to 15 digits would be better than 16-19 digits?
Sure, getting a 15 digit seed randomly would be 10 times less likely than getting a 16 digit one but there are only 1/10 as many 15 digit seeds to choose between so the chance of getting any specific seed should be the same?
Another way to help ensure that you are using a seed nobody else has ever used is to take any randomly generated seed, ideally one which has not been shared online (in case others have gotten the same idea), and add or subtract a number from it; for example, the seed for my first world is "-123775873255737467", which is a randomly generated seed, but the seeds "-123775873255737468" (-1) and "-123775873255737466" (+1) are not (as mentioned before, Random can only generate 1/65536 of all possible seeds).
Another trick is to add or subtract a multiple of 2^48 from a seed, which will give a world with a different biome map but otherwise the same world generation where biomes match (for example, I took advantage of this to fully generate a 7-ravine system in my first world, which is cut off by water in both default and large biomes so there are only 4 or 5 intact ravines in the original seed).
Also, while there are 2^48 base seeds and 2^48 possible outputs from Random.nextLong() there are multiple randomly generated seeds that have the same base seed since the values from Random are distributed across the full 64 bit seed space (so as far as things like caves go, ignoring differences in terrain like oceans and mountains, there are less than 2^48 unique layouts among all randomly generated seeds).
So my question is in the title. Have all possible random seeds been generated?
If you don't know, minecraft has 2 to the power of 64 possible seeds, which is this number:
18.446.744.073.709.551.616
HOWEVER: Only 2 to the power of 48 seeds can be generated [b]randomly[/b] because of a problem in java random, which makes the possible seeds:
281.474.976.710.656
This is 281 trillion. That are lots of worlds.
Another way to ask this question is: "If i generate a world, has my world been generated by another user?"
OR "Have ever 2 players got the same world?"
Now, lets go for calculation. It is difficult to calculate how many worlds all users have generated. Some have generated 1, others (speedrunners) 10.000.
It is very difficult to calculate, but i will make my best. On all platforms, minecraft has been sold 200 million times. If we include minecraft china, which has 300 million downloads (1/5 of china's population!), 500 million players have played it. (1/14 of the world!).
Now the difficult part. Calculating.
I started by calculating how many worlds i have generated and that is around 300.
Now i need to check the average playertime. A youtuber called antvenom covered it and his video helped me a lot.
So, 1/3 of minecraft players are alt accounts that possibly have not generated worlds or just 1. This means that 166 million accounts have generated 0-5 worlds. Lets put 0.5 worlds, so from these alt accounts, 83 million worlds have been generated, and that is still one 3.391.264th from all possible worlds.
Now lets progress into the 2/3 of the accounts that are actual, i mean for the 333 million other accounts.
Now it is very difficult. We have a range of 5 to 10.000 worlds, with some users even generating 100.000 worlds (i don't know how, but possibly a shared account with family and friends that are all creating worlds to check customized mode? i have no idea).
I will make a wild guess and claim 200. This means that the average player has generated 200 worlds. And that is 66 billion worlds. Still one 4.226th of all possible random world seeds.
Adding the 2 values together, and we get 66.683.000.000 worlds FROM ALL USERS OF MINECRAFT. one 4.221th of all minecraft seeds.
The number above (66 billion worlds) may seem a bit small, but remember, it is like each human on this planet to have generated 8 worlds if we put it on that scale.
So my final answer is that only one 4.221th of all seeds have been generated. This means that if you generate 4221 worlds, you have a very high chance that another player has generated the same world. Or if you generate a world, you have a one in 4221 chance that another player has generated the same world as you. Or, there is a one in 4221 chance that a player has generated the seed 0. Or a one in 4221 chance that somebody generated the seed for pack.png (except mojang).
I did my best, but if you have another possible answer that increases the amount, please let me know.
EDIT:
Also i would like to include that, if one 4221th of all seeds are generated (based of my calculations), then the most "rarest" seeds by digits are 6 ten or less digit seeds. A 10 digit seed looks like this: 1.000.000.000
This also means that these seeds can be generated by text.
So it means that, only 6 worlds have been randomly [/b]generated that can be generated by text.
Also there is a 60% chance of a 9 digit seed (it looks like: 10.000.000)
And a 6% chance of an 8 digit seed (it looks like 1.000.000)
You should also account for players who use text seeds, though since there are only about 4.3 billion possible seeds it doesn't change much (while Java's Random can generate 65536 times more unique seeds there is almost no overlap between the seed spaces - in fact, just 65536 text seeds can be expected to match a randomly generated seed since Random can only generate 1/65536 of all possible seeds). Also, some players do enter numerical seeds which can be any possible 64 bit value, for example, I often use seeds like 12345 when testing, which can't be randomly generated (also, the inability for Random to generate all possible 64 bit seeds is not a bug as the RNG algorithm is 48 bits, though the game should be using a proper 64 bit RNG, including for all world generation, not just the biome generator, which uses a custom RNG that does use all 64 bits).
Also, while I have created many worlds, possibly more than a thousand, I often reuse the same seed; for example, most of the worlds in my MCP installations (I currently have 87 "MCP" worlds, which I periodically mass delete) have the same seed in part to ensure consistency in world generation while developing mods, especially for my "World1" mod, where any changes (optimizations) I make to the world generation code must not cause world generation to differ from vanilla, as do many of my actual worlds (World1, InfiniteCaves, World1v2, World1v3, and TMCWv1 all use the same seed, with differences being due to mods). The same goes for speedrunners who keep reusing the same seed, so the average number of unique worlds/seeds per player is probably lower.
TheMasterCaver's First World - possibly the most caved-out world in Minecraft history - includes world download.
TheMasterCaver's World - my own version of Minecraft largely based on my views of how the game should have evolved since 1.6.4.
Why do I still play in 1.6.4?
If you want a world that is extremely UNLIKELY to have been seen by another player there is an easy way to get one (actually a HUGH number of them).
Entering a text seed into Minecraft causes the program to call the hashcode() function which "hashes" the text string into a signed 32 bit number.
That a seed in the range of -2,147,483,648 thru 2,147,483,647. Basically a 10 digit number although over 70% of 10 digit numbers aren't in that range.
If you don't enter a seed, or enter zero, Java will create a 64 bit signed integer to be used as the world seed.
That's a range of -9,223,372,036,854,775,808 thru 9,223,372,036,854,775,807..
Note that these numbers are over 90% of all 19 digit long numbers.
Now, since the pseudo random number generator is ASSUMED to give each number in that range an equal chance of being generated there is something we can say with certainty. The chances of a generated number having LESS than 16 digits is nearly 10,000 to 1 AGAINST.
Each decrease in seed length increases that probability by a factor of 10.
So the probability of the PRNG of generating a 13 digit seed is 10 MILLION to 1 AGAINST. ie not very likely.
So, If you want to create a world that, in all probability, has NEVER been seen by another Minecraft player, just use any positive or negative number with 11 through 15 digits. I'll bet anything your world will be unique.
There are no dangerous weapons. There are only dangerous people. R.A. Heinlein
If you aren't part of the solution, then you obviously weren't properly dissolved.
The latest release of Amidst, version 4.6 can be found here:
https://github.com/toolbox4minecraft/amidst/releases
You should probably also read this:
https://www.minecraftforum.net/forums/mapping-and-modding-java-edition/minecraft-tools/2970854-amidst-map-explorer-for-minecraft-1-14
You can find me on the Minecraft Forums Discord server.
https://discord.gg/wGrQNKX
Your replies were excellent. Thank you for participating.
I would like to tell you that i am talking only about randomly generated seeds, not text seeds. With that i mean blank seed box (or 0).
Also i took account in the calculation that some players create worlds, but with the same seed and adjusted it.
Good calculation! Just a reminder that we are talking about random seeds, not inputed/text.
Also i would like to include that, if one 4221th of all seeds are generated (based of my calculations), then the most "rarest" seeds by digits are 6 ten or less digit seeds. A 10 digit seed looks like this: 1.000.000.000
This also means that these seeds can be generated by text.
So it means that, only 6 worlds have been randomly generated that can be generated by text.
Also there is a 60% chance of a 9 digit seed (it looks like: 10.000.000)
And a 6% chance of an 8 digit seed (it looks like 1.000.000)
So, I can see how one would want to avoid seeds with less than 11 digits, assuming one wanted a unique world, but I'm not seeing why 11 to 15 digits would be better than 16-19 digits?
Sure, getting a 15 digit seed randomly would be 10 times less likely than getting a 16 digit one but there are only 1/10 as many 15 digit seeds to choose between so the chance of getting any specific seed should be the same?
Just testing.
Another way to help ensure that you are using a seed nobody else has ever used is to take any randomly generated seed, ideally one which has not been shared online (in case others have gotten the same idea), and add or subtract a number from it; for example, the seed for my first world is "-123775873255737467", which is a randomly generated seed, but the seeds "-123775873255737468" (-1) and "-123775873255737466" (+1) are not (as mentioned before, Random can only generate 1/65536 of all possible seeds).
Another trick is to add or subtract a multiple of 2^48 from a seed, which will give a world with a different biome map but otherwise the same world generation where biomes match (for example, I took advantage of this to fully generate a 7-ravine system in my first world, which is cut off by water in both default and large biomes so there are only 4 or 5 intact ravines in the original seed).
Also, while there are 2^48 base seeds and 2^48 possible outputs from Random.nextLong() there are multiple randomly generated seeds that have the same base seed since the values from Random are distributed across the full 64 bit seed space (so as far as things like caves go, ignoring differences in terrain like oceans and mountains, there are less than 2^48 unique layouts among all randomly generated seeds).
TheMasterCaver's First World - possibly the most caved-out world in Minecraft history - includes world download.
TheMasterCaver's World - my own version of Minecraft largely based on my views of how the game should have evolved since 1.6.4.
Why do I still play in 1.6.4?
Bro I generated seed 0 randomly on 1.8.9!!!!
Bro Heres proof I did it
Bruh