Strongholds that generated in 1.8 won't generate in the same position in 1.9pre2.
Also they generate at least 1408 blocks away from origin (in 1.8 it was 640 blocks).
This was a side effect of the fix for MC-92289 which changed the distance calculation of strongholds.
How it was
*Strongholds plotted for 1.8 (just the inner circle/triangle) and 16w05b (just adds extra circles)*¹
[media][media]Distance calculation for 1.8 and 16w05b:
MapGenStronghold.java
double distance = (1.25D * (double) circle + rand.nextDouble()) * this.const32 * (double) circle;
How it currently is
*Strongholds plotted for 1.8 and 1.9pre2 (notice how it loses the old inner circle)*¹
[media][media]1.9pre2:
MapGenStronghold.java
double distance = 4.0D * this.const32 + this.const32 * (double)circle * 6.0D + (rand.nextDouble() - 0.5D) * this.const32 * 2.5D;
Adjusted
*Stronghold plotted for 1.8 and an adjusted version to keep the inner circle the same*¹
[media][media]MapGenStronghold.java
double distance = 1.75D * this.const32 + this.const32 * (double)circle * 6.0D + (rand.nextDouble() - 0.5D) * this.const32 * (circle == 0 ? 1.0D : 2.5D);
It would be preferable if the old stronghold positions would remain the same.
Also the increased distance to origin and therefore also to spawn has the disadvantage of longer walkways when cycling between the end and the over world.
In 1.8 the inner circle was between 640 and 1152 blocks from origin.
In 1.9pre2 the inner circle lies between 1408 and 2048 blocks from origin.
With the random placement of the spawn point it wouldn't be uncommon to have distances of several thousand blocks to the first accessible end portal.
As the end is a major component of the game (especially in 1.9) it shouldn't be that far away from the world center.
@edit It turns out eye of enders also behave weird when it comes to the strongholds that were generated in 1.8 (when you upgrade a world to 1.9pre2).
It still is affected by the old stronghold but misses the portal room by some chunks.
Other alternatives:
Increasing spread and increasing interval (Pretty much 16w05b with the fix of MC-92289)
[media]MapGenStronghold.java
double distance = (1.25D * ((double) circle + 1.0) + rand.nextDouble()) * this.const32 * (double) (circle / 1.9 + 1.0);
Constant spread and constant interval
[media]MapGenStronghold.java
double distance = 1.75D * this.const32 + this.const32 * (double)circle * 6.0D + (rand.nextDouble() - 0.5D) * this.const32;
Increasing spread and constant interval
[media]MapGenStronghold.java
double distance = 1.75D * this.const32 + this.const32 * (double)circle * 6.0D + (rand.nextDouble() - 0.5D) * this.const32 * (1.0 + circle / 1.75D);
Evenly distributed (has a rare chance of double strongholds though)
[media]MapGenStronghold.java
double distance = 1.75D * this.const32 + this.const32 * (double)circle * 6.0D + (rand.nextDouble() - 0.5D) * this.const32 * (circle == 0 ? 1.0D : 6.0D);
1. The plots are the strongholds for 1000 seeds each.
Attachments
Comments


I made a world in one of the latest snapshots, will this effect me?

@unknown Depends in which snapshot you started the world.
It changed with snapshot 16w06.
If you started your world in a snapshot before, then it should still generate the initial 3 Strongholds where they would also be generated in 1.8, and of course also the other 125 Strongholds.
If you started your world at least with 16w06 then, yes, it does affect you.
@unknown If it was in 15w06a or later they will spawn like on the red circle. So further away from spawn.

Can confirm, 16w05b was the last snapshot the Strongholds generated in those positions like they would in 1.8.x.
Screenshot as proof attached.

This is what in my opinion should look like:
https://bugs.mojang.com/secure/attachment/111865/PortalPositions_improved.png
Increasing spread and increasing interval
double distance = (1.25D * ((double) circle + 1.0) + rand.nextDouble()) * this.const32 * (double) (circle / 1.9 + 1.0);
will be good for all sizes of maps, from small 3k x 3k to big ones.

Accessibility in continuously used survival world VS challenge in 'roguelike' playing. Changeable property in custom world?

The stronghold generation was tweaked to have a better distribution of strongholds in the world. Today I fixed another bug related to strongholds, so it will be possible again to find older, already generated strongholds with ender eyes again, so existing strongholds in worlds are not "broken".

What about small worlds? Low performence serwers have world border quite close to center of map, since there can't be any stronghold within 1500m from center, they will not be able to enter End dimension. Reopen please.

They can also just move the center of the world border

If they will remember/know about this change.

And if they don't you can remind them, it's their job to keep their server up-to-date

@unknown That means they won't get the full "inner circle" (triangle) of the first 3 Strongholds, at maximum 2 of them.. plus, of course, the other share of those 125 SH which happen to be within those narrow worldborders (or also not).
@unknown Good that the ender eyes problem is solved }=)
Just wondering why the adjusted version (which contains better distribution of SH) is not possible which contain the old 3 inner circle Stronghold positionings?
double distance = 1.75D * this.const32 + this.const32 * (double)circle * 6.0D + (rand.nextDouble() - 0.5D) * this.const32 * (circle == 0 ? 1.0D : 2.5D);
I don't get why this is not possible, considering the old (in 1.8 generated) Strongholds wouldn't get overwritten when taking this code?
@unknown Thanks for looking into it and fixing the eye of ender issue.
I was hoping the better distribution could be used while keeping the inner circle at the same size as it used to be as the increased distance to the first strongholds feels quite far to me as a survival player.
Thanks anyway 🙂

Noooooooo ! While fixing MC-89399 made 1.9 a viable speedrunning version, this bug may force the speedrunning community to stay in 1.8. That's sad.

@unknown you're quite late to the party };]
I tried my best to convince them, Panda as well.
The fix would have been easy and not touched pre-1.9 generated Strongholds, but oh well, can't be helped now.
Aside from the Speedrunners, it's a hard slap for technical Survivalplayers in general.
This is not a discussion forum, etc., go to Mojira Reddit and so on

With the random placement of the spawn point it wouldn't be uncommon to have distances of several thousand blocks to the first accessible end portal.
As the end is a major component of the game (especially in 1.9) it shouldn't be that far away from the world center. In Minecraft circle generator you can perfectly create one.
Confirmed, I tested with pre-2.
Attaching screenshots of a fresh world, same seed (12345), one time generated in 1.9 pre-2, one time generated in 1.8.9.
Teleported myself to the Stronghold-positions provided via AMIDST.
In 1.8.9 they generated as calculated with AMIDST, in 1.9 they don't.
Strongholds generating not before 1.400 and 2.000 blocks from origin is too far.