Minecraft:Far Lands (Java Edition)/After Beta 1.8: Difference between revisions
More actions
Sync: updated from Minecraft |
Sync: updated from Minecraft |
||
| Line 50: | Line 50: | ||
== Location == | == Location == | ||
[[File:Far Lands in 1.8.1.png|thumb|Far Lands generating in 1.8.1 with the patch removed]] | [[File:Far Lands in 1.8.1.png|thumb|Far Lands generating in 1.8.1 with the patch removed]] | ||
[[File:Farlands In 1.20 Using Mods To Disable The Patch.png|thumb|The Far Lands in 1.20 with a very different structure, also generated with the patch removed]] | [[File:Farlands In 1.20 Using Mods To Disable The Patch.png|thumb|The Far Lands in 1.20 with a very different structure, also generated with the patch removed]] | ||
| Line 59: | Line 58: | ||
== Structure == | == Structure == | ||
Whether enabled by simply removing the modulo patch or going to the new location where they generate,The edge Far Lands and corner Far Lands, as well as their Farther variations, generate relatively identically to their pre-Beta 1.8 counterparts, but utilizing the entire height limit. In versions prior to [[Minecraft:Java Edition 1.7.2|1.7.2]], they remained capped at y=128 despite the change in world height; afterwards, they will generate up to y=256, and up to y=318 in [[Minecraft:Java Edition 1.18.2]] onwards. By modding the world height to continue indefinitely, they can continue up until they reach the sky Far Lands at y=+25,101,648 (and equivalently the ground Far Lands at y=-25,101,648). | Whether enabled by simply removing the modulo patch or going to the new location where they generate,The edge Far Lands and corner Far Lands, as well as their Farther variations, generate relatively identically to their pre-Beta 1.8 counterparts, but utilizing the entire height limit. In versions prior to [[Minecraft:Java Edition 1.7.2|1.7.2]], they remained capped at y=128 despite the change in world height; afterwards, they will generate up to y=256, and up to y=318 in [[Minecraft:Java Edition 1.18.2]] onwards. By modding the world height to continue indefinitely, they can continue up until they reach the sky Far Lands at y=+25,101,648 (and equivalently the ground Far Lands at y=-25,101,648). | ||
| Line 120: | Line 118: | ||
The Far Lands were never actually removed from the game in Beta 1.8. Rather, what ''was'' fixed was integers and noise values overflowing at the 32-bit limit, and thus putting the new start way beyond the boundaries of a normal ''Minecraft'' world. As such, by patching the game to reverse this change, or by using a BigInteger mod, the Far Lands can be brought back. However, their location, makeup and progression depends entirely on the version and/or method used. If the game is modded to simply undo the modulo patch that fixed the original Far Lands, then they will generate at their original starting point of X/Z: ±12,550,821. More recent versions will have the very early Infdev-like generation of the Far Lands rather than the classic structure. The limit to how much of the Far Lands will generate is dependent on what mods and/or version is being used. If only the patch is reversed, then it will vary due to various vanilla features throughout different versions that affected the edge of the world. | The Far Lands were never actually removed from the game in Beta 1.8. Rather, what ''was'' fixed was integers and noise values overflowing at the 32-bit limit, and thus putting the new start way beyond the boundaries of a normal ''Minecraft'' world. As such, by patching the game to reverse this change, or by using a BigInteger mod, the Far Lands can be brought back. However, their location, makeup and progression depends entirely on the version and/or method used. If the game is modded to simply undo the modulo patch that fixed the original Far Lands, then they will generate at their original starting point of X/Z: ±12,550,821. More recent versions will have the very early Infdev-like generation of the Far Lands rather than the classic structure. The limit to how much of the Far Lands will generate is dependent on what mods and/or version is being used. If only the patch is reversed, then it will vary due to various vanilla features throughout different versions that affected the edge of the world. | ||
The only way to see the new | The only way to see the new locations of the Far Lands is by using a 64-bit mod or BigInteger mod that does not patch the fix. If a 64-bit mod is used, the [[Minecraft:Java Edition distance effects|distance effects]] will continue to progress as one goes further; while the BigInteger mods end up patching these. | ||
===Beta 1.8 to 1.14.3=== | ===Beta 1.8 to 1.14.3=== | ||
| Line 127: | Line 125: | ||
!Effects | !Effects | ||
! Image (if avaliable) | ! Image (if avaliable) | ||
|- | |||
! colspan="3" style="color: white; background: #000" | Accessible through 64-bit and BigInteger | |||
|- | |- | ||
| X/Z: -53,905,378,846,979,752<hr>X/Z: 53,905,378,859,432,511 | | X/Z: -53,905,378,846,979,752<hr>X/Z: 53,905,378,859,432,511 | ||
| Line 141: | Line 141: | ||
| X/Z: ±4,312,430,307,758,379,833 | | X/Z: ±4,312,430,307,758,379,833 | ||
| | | | ||
* Selector Noise | * By this point, Selector Noise has gradually broken down at this point, causing the Farther Lands to generate. | ||
| | | | ||
|- | |- | ||
| Line 148: | Line 148: | ||
* The 64-bit limit and the maximum the Far Lands will generate using a 64-bit mod, since world renderer breaks completely at this distance in this case, giving way to an endless void like in the 32-bit cases. The game will always crash when approaching this limit. Due to the effects mentioned above however, it will be almost completely invisible, if a Stripe Lands fix is not enabled. | * The 64-bit limit and the maximum the Far Lands will generate using a 64-bit mod, since world renderer breaks completely at this distance in this case, giving way to an endless void like in the 32-bit cases. The game will always crash when approaching this limit. Due to the effects mentioned above however, it will be almost completely invisible, if a Stripe Lands fix is not enabled. | ||
|[[File:64-bit limit Far Lands end.png|thumb|right|240px|Empty void after rendering breaks at the 64-bit limit at X: 9,223,372,036,854,776,000.]] | |[[File:64-bit limit Far Lands end.png|thumb|right|240px|Empty void after rendering breaks at the 64-bit limit at X: 9,223,372,036,854,776,000.]] | ||
|- | |- | ||
! colspan="3" style="color: white; background: #000" | BigInteger only | |||
|- | |- | ||
| | | X: ±{{abbr|8.1751×10<sup>48</sup>|8,175,100,408,620,645,429,587,604,206,419,312,153,467,715,321,856}}<hr>X: ±{{abbr|8.5766×10<sup>48</sup>|8,576,620,983,668,390,695,654,176,953,195,873,545,661,439,803,392}}<hr>X/Z: ±{{abbr|9.1762×10<sup>48</sup>|9,176,239,949,795,123,308,594,625,193,335,189,314,391,974,608,896}} | ||
| | | | ||
* The Far Lands begin degrading into thinner slices due to the decay process, in | * The Far Lands begin degrading into thinner slices due to the decay process, in three stages at the aforementioned distances. However, there are no comb-like artifacts nor dotted lines of terrain generation, as lerp failure, which was responsible for these artifacts, was fixed in [[Minecraft:Beta 1.9-pre2]]. | ||
| | | | ||
|- | |- | ||
| X/Z: ±~{{abbr|1.5–2×10<sup>49</sup>|15,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000 to | | X: ±{{abbr|1.0299×10<sup>49</sup>|10,299,981,089,825,331,303,027,420,223,646,772,450,634,036,674,560}}<hr>Z: ±~{{abbr|1.5–2×10<sup>49</sup>|15,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000 to 17,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000}} | ||
| | | | ||
* The Far Lands end completely at this point, though the end point is different on each axis, as they continue until at least 20 quindecillion on the Z axis. This marks the end of ''Minecraft'' terrain generation, unless extensive modding on top of this patches the noise overflow and Far Lands. | * The Far Lands end completely at this point, though the end point is different on each axis, as they continue until at least 20 quindecillion on the Z axis. This marks the end of ''Minecraft'' terrain generation, unless extensive modding on top of this patches the noise overflow and Far Lands. | ||
| Line 224: | Line 212: | ||
{{HistoryTable | {{HistoryTable | ||
|{{HistoryLine|java beta}} | |{{HistoryLine|java beta}} | ||
|{{HistoryLine||1.8|dev=Pre-release|Fixed 32-bit overflow of noise functions. The Far Lands can no longer generate within world boundary without modification to the game, as the Far Lands now begin at ~ | |{{HistoryLine||1.8|dev=Pre-release|Fixed 32-bit overflow of noise functions. The Far Lands can no longer generate within world boundary without modification to the game, as the Far Lands now begin at ~53 quadrillion blocks.}} | ||
|{{HistoryLine|java}} | |{{HistoryLine|java}} | ||
|{{HistoryLine||1.2.1|dev=12w07a|The height limit has been increased to 256 blocks, and as such trees and structures are able to generate above the Far Lands.}} | |{{HistoryLine||1.2.1|dev=12w07a|The height limit has been increased to 256 blocks, and as such trees and structures are able to generate above the Far Lands.}} | ||
| Line 230: | Line 218: | ||
|{{HistoryLine||1.8|dev=14w17a|Added [[Minecraft:Old Customized|customized]] world generation. This made it possible to create the Sky and Ground Far Lands without mods.}} | |{{HistoryLine||1.8|dev=14w17a|Added [[Minecraft:Old Customized|customized]] world generation. This made it possible to create the Sky and Ground Far Lands without mods.}} | ||
|{{HistoryLine||1.13|dev=18w06a|Removed customized worlds. The Sky and Ground Far Lands can no longer be created without mods.}} | |{{HistoryLine||1.13|dev=18w06a|Removed customized worlds. The Sky and Ground Far Lands can no longer be created without mods.}} | ||
|{{HistoryLine||1.14.4|Changes to the modulo patch now result in the Far Lands generating at ~1.808 septillion blocks out.}} | |||
|{{HistoryLine||1.17|dev=21w06a|The Far Lands now appear much thinner than before, with the Edge Far Lands now containing strips of terrain at various widths connecting via right angles.<br>It is also now possible to (with a modification) manipulate the Y Scale to allow the Sky and Ground Far Lands to generate.}} | |{{HistoryLine||1.17|dev=21w06a|The Far Lands now appear much thinner than before, with the Edge Far Lands now containing strips of terrain at various widths connecting via right angles.<br>It is also now possible to (with a modification) manipulate the Y Scale to allow the Sky and Ground Far Lands to generate.}} | ||
|{{HistoryLine|||dev=21w15a|The Far Lands now look like the Beta Far Lands again as the Noise caves are disabled.}} | |{{HistoryLine|||dev=21w15a|The Far Lands now look like the Beta Far Lands again as the Noise caves are disabled.}} | ||
|{{HistoryLine||1.18|dev=Experimental Snapshot 1|The Far Lands now appear thinner like 21w06a again.}} | |{{HistoryLine||1.18|dev=Experimental Snapshot 1|The Far Lands now appear thinner like 21w06a again.}} | ||
|{{HistoryLine||1.18.2|dev=Pre-release 2|The Far Lands generate a mostly flat wall on their faces, with shallow recesses shaped like the 21w06a Far Lands. The terrain in the Far Lands appears somewhat normal, albeit at a high altitude. The endless tunnels are notably missing.}} | |{{HistoryLine||1.18.2|dev=Pre-release 2|The Far Lands generate a mostly flat wall on their faces, with shallow recesses shaped like the 21w06a Far Lands. The terrain in the Far Lands appears somewhat normal, albeit at a high altitude. The endless tunnels are notably missing.|All terrain now abruptly ceases past ~2.42 octillion blocks except for [[Minecraft:aquifers]], due to noise router failure at that point.}} | ||
}} | }} | ||
Revision as of 11:05, 9 September 2026
Template:Italic title Template:Disclaimer Template:Exclusive
The Far Lands were a terrain bug that occurred in versions of Template:MC up to Beta 1.7.3. They were caused by errors in the math that governs terrain generation, resulting in abnormal structures resembling excessively stretched-out terrain. They were fixed in Beta 1.8 Pre-release, and moved far beyond the boundary to 53,905,378,846,979,748 blocks from spawn, which was later moved to X/Z: 1,808,764,368,955,220,466,364,897 in 1.14.4. Reaching this distance is impossible without extensive modding. In addition, most of the distance effects were fixed. The Y Far Lands (aka the Sky and Ground Far Lands) were overlooked, but were fixed in 1.13 with the world generation rewrite. Prior to the removal of the first iteration of Minecraft:Custom worlds, it was possible to force the Far Lands to generate by setting the Coordinate Scale to extreme high values.
Explanation
The Far Lands were a terrain generation bug that occurred at ±12,550,824 along the X and Z-axes prior to Beta 1.8, as well as the Y-axis (technically) before Java 1.13. The Far Lands generated because of an integer overflow error within Minecraft. The Minecraft:noise generator that draws Minecraft's height map increases by 684.412 for every four blocks, causing an integer overflow at approximately ±12,550,824 (sometimes ±12,550,821.) Multiplying the aforementioned numbers and dividing the noise scale by 4 results in the 32-bit signed integer max value, which when overflowed, results in an extreme noise seed.
Beta 1.8 to 1.14.3
In Minecraft:Beta 1.8, as part of changes to terrain generation, the following code, referred to as the "modulo" patch, was added within the NoiseGeneratorOctave.java file:
<syntaxhighlight lang="java">
for (int var16 = 0; var16 < this.octaves; ++var16)
{
double var17 = (double)p_76304_2_ * var27 * p_76304_8_;
double var19 = (double)p_76304_3_ * var27 * p_76304_10_;
double var21 = (double)p_76304_4_ * var27 * p_76304_12_;
long var23 = MathHelper.floor_double_long(var17);
long var25 = MathHelper.floor_double_long(var17);
var17 -= (double)var23;
var21 -= (double)var25;
var23 %= 16777216L;
var25 %= 16777216L;
var17 += (double)var23;
var21 += (double)var25;
this.generatorCollection[var16].populationNoiseArray(p_76304_, var17, var19, var21, p_76304_5_, p_76304_6_, p_76304_7_, p_76304_8_ * var27, p_76304_10_ * var27, p_76304_12_ * var27;
var27 /= 2.0D;
}
return p_76304_1_;
</syntaxhighlight>
This was present in every following version, including Beta 1.8, up to 1.14.3. It essentially prevents the noise generator from suffering integers overflowing by clamping the input before being passed. It also allows for the terrain to "wrap around" and continue generating normally even at high distances. By removing everything from long var23 to the last (double)var25;, the patch is undone, and the Far Lands can be moved back within vanilla boundaries at their original locations.
1.14.4 to present
In versions after 1.14.4, as part of a conversion to a packed coordinate system, the following was added to PerlinNoise.java:
<syntaxhighlight lang="java"> public static double wrap(double p_75407_) {
return p_75407_ - (double)Mth.lfloor(p_75407_ / 3.3554432E7D + 0.5D) * 3.3554432E7D;
return p_75407_;
}
</syntaxhighlight>
This function, an improved math clamp, acts simililarly to the previous fix, although as of 1.18, due to the massive terrain generation rewrite, additional mechanics were added that also work in tandem with this, the exact nature of which is poorly understood or unknown due to sparse documentation.
Overflow
Both iterations of the fix are still prone to failing at extremely high values; although the way it does so is poorly understood currently, specifically in modern versions, but it does involve the 64-bit limit integer. Thus, it can still fail at extreme values, resulting in the Far Lands generating at X/Z: ±53,905,378,846,979,748 (in versions prior to 1.14.4) or X/Z: ±1,808,764,368,955,220,466,364,897 (post-1.14.4). Reaching this distance is impossible without a 64-bit or BigInteger mod that does not undo this patch.
Location
If the modulo patch is undone, on the X and Z axis, the Far Lands and Farther Lands initiate as they did in Beta 1.7 and below (±12,550,824), with an identical chance of offset at positive positions. However, due to the new height limits and new world generation, they are actually 318 (post-1.18) or 256 blocks high. On the Y-axis, the Far Lands initiate at around twice the former number, which is therefore ±25,101,648. The Farther Lands also generate at ±2,008,131,840 on the Y-axis, however, they cannot be generated without lowering the selector noise period.
The new position due to the modulo patch is at X/Z: 1,808,764,368,955,220,466,364,897, or 1.808 septillion (1.808×1024). As such, this makes them impossible to view in vanilla gameplay, due to imposed limitations and how Minecraft is designed.
Structure
Whether enabled by simply removing the modulo patch or going to the new location where they generate,The edge Far Lands and corner Far Lands, as well as their Farther variations, generate relatively identically to their pre-Beta 1.8 counterparts, but utilizing the entire height limit. In versions prior to 1.7.2, they remained capped at y=128 despite the change in world height; afterwards, they will generate up to y=256, and up to y=318 in Minecraft:Java Edition 1.18.2 onwards. By modding the world height to continue indefinitely, they can continue up until they reach the sky Far Lands at y=+25,101,648 (and equivalently the ground Far Lands at y=-25,101,648).
Far Lands
Sky Far Lands
The Far Lands generate at positive values of the Y-axis past y=25,101,648. Minecraft:Monoliths generate up to this point if the player can get them to generate.
Setting the Height Scale extremely high can generate the Far Lands in the sky up to the height limit.
This is possible in Vanilla.
Vertex Far Lands
When the Sky or Ground Far Lands meet with the vanilla Corner Far Lands, many interesting terrain features can be sighted. The content of these intersections appears to vary throughout worlds, with some being completely blank, some completely solid, and some generating like regular Far Lands material. In some cases, diagonal patterns with large absent chunks generate.<ref>Template:Ytl</ref>
-
The Sky Far Lands.
-
The Ground Far Lands.
-
The Ground Far Lands.
-
An intersection of all 3 sets of Far Lands, where the Y-axis is positive.
-
A more extensive view of the previous scenario.
-
An intersection of all 3 sets of Far Lands, where the Y-axis is negative.
-
Inside the Sky Vertex Far Lands, with crazy terrain.
-
Inside the Ground Vertex Far Lands, with a diagonal pattern.
-
The Ground Farther Lands inside the Ground Corner Far Lands.
-
The Sky Corner Far Lands.
-
Inside the Sky Corner Far Lands.
-
The Ground Corner Far Lands.
-
Inside the Ground Corner Far Lands.
-
The Farther Lands inside the Sky Corner Far Lands.
-
The Farther Lands inside the Sky Vertex Far Lands.
-
The Farther Lands inside the Ground Corner Far Lands.
-
The Farther Lands inside the Ground Vertex Far Lands.
Depth noise Far Lands
Like low/high and selector noise which respectively control the Far and Farther Lands, depth noise can be made to overflow at a given position. By default, it overflows at 42,949,672.96 blocks. Due to the Far Lands initiating before it, the overflow in depth noise is effectively impossible to see. However, if depth noise is made to overflow before tradition far lands, achievable by pushing the far lands farther out than this distance or moving the depth noise far lands closer, the effects can be seen immediately as it overflows, the terrain jumps up a few blocks. Terrain after this point is slightly more boring than before due to depth noise controlling subtle variation, which no longer exists after the overflow due to it almost always being at the max possible value. Every so often, very long "rifts" characteristic of depth noise far lands can be seen, which extend for extremely long. These rifts end once they hit the point twice the distance of the first overflow, and rifts as a whole past this point do not seem to be able to come into existence. Rifts have also only been noted on the positive X axis and are yet to be found on the Z axis.
Dimensions
The End
The End was implemented after the Far Lands were removed, meaning that the End Far Lands never generated naturally.
-
The edge Far Lands on Java Edition.
-
The corner Far Lands on Java Edition.
-
A map created in the corner Far Lands on Java Edition.
-
The edge Far Lands on Java Edition before 1.9.
-
The corner Far Lands on Java Edition before 1.9.
-
A map created in the corner Far Lands on Java Edition before 1.9.
-
An end city in the Far Lands.
-
The Farther Lands in the End.
-
The Corner Farther Lands in the End.
Summary
The Far Lands were never actually removed from the game in Beta 1.8. Rather, what was fixed was integers and noise values overflowing at the 32-bit limit, and thus putting the new start way beyond the boundaries of a normal Minecraft world. As such, by patching the game to reverse this change, or by using a BigInteger mod, the Far Lands can be brought back. However, their location, makeup and progression depends entirely on the version and/or method used. If the game is modded to simply undo the modulo patch that fixed the original Far Lands, then they will generate at their original starting point of X/Z: ±12,550,821. More recent versions will have the very early Infdev-like generation of the Far Lands rather than the classic structure. The limit to how much of the Far Lands will generate is dependent on what mods and/or version is being used. If only the patch is reversed, then it will vary due to various vanilla features throughout different versions that affected the edge of the world.
The only way to see the new locations of the Far Lands is by using a 64-bit mod or BigInteger mod that does not patch the fix. If a 64-bit mod is used, the distance effects will continue to progress as one goes further; while the BigInteger mods end up patching these.
Beta 1.8 to 1.14.3
| Coordinates | Effects | Image (if avaliable) |
|---|---|---|
| Accessible through 64-bit and BigInteger | ||
| X/Z: -53,905,378,846,979,752 X/Z: 53,905,378,859,432,511 |
|
|
| X/Z: ±576,460,752,303,423,488 (±259) |
|
|
| X/Z: ±4,312,430,307,758,379,833 |
|
|
| X/Z: ±9,223,372,036,854,775,807 (±263) |
|
|
| BigInteger only | ||
| X: ±Template:Abbr X: ±Template:Abbr X/Z: ±Template:Abbr |
|
|
| X: ±Template:Abbr Z: ±~Template:Abbr |
|
|
1.14.4 to 1.18.1
| Coordinates | Effects | Image (if available) |
|---|---|---|
| X/Z: ±Template:Abbr |
|
Since 1.18.2
Beginning in 1.18.2, slight modifications to the way the noise generator works resulted in the Far Lands taking on a much more flatter shape, resulting in the near-solid wall composition that currently exists to this day. However, this change inadvertently resulted in a majority of the Far Lands being removed past 1027.
| Coordinates | Effects | Image (if available) |
|---|---|---|
| X/Z: ±Template:Abbr |
|
|
| ? |
|
Effects
While completely unrelated to terrain, these effects occur coincidentally with Far Lands due to their shared extreme distances and are worth noting as a result.
Floating-point precision errors with entities and particles
Even in modern versions of Minecraft, the floating-point precision errors still exist, but only with translucent block rendering, natural snow generation and snowfall at extreme heights.
Darkness
Template:Main In vanilla Minecraft 1.14, the lighting system breaks beyond 225 (X/Z ±33,554,432)<ref>Template:Bug</ref> (though this distance is available only via editing source codes), however, it isn't like what would happen beyond X/Z=32,000,000 in older versions. Instead, everything abruptly becomes absolutely dark and ignores light sources. By pressing F3, it shows that the sky light level is 0, thus undead mobs do not burn when exposed to the sky. The chunks, however, are still solid and block physics still function. Night Vision can help to counteract the visual darkness; it is currently unknown whether the Minecraft:Conduit Power effect works or not.
History
Gallery
Screenshots
-
Edge Far Lands in Minecraft:Java Edition 1.20.1 at 1.8 septillion blocks
-
Corner Farlands at 1.8 septillion blocks
-
Far Lands in Minecraft:Java Edition 1.21.8 using ultimate scaler Minecraft:mod
-
The Nether roof Far Lands in 1.21.8
-
The Nether Far Lands in 1.21.8
-
The End Far Lands at 1.8 septillion blocks (End ring glitch is present).
-
End Far Lands in 1.21.8
-
Endless Minecraft:ocean at extreme large distances
-
Minecraft:Bedrockless water/lava ocean at extreme large distances
-
The Far Lands in Minecraft:Java Edition 1.17, enabled using mods.
-
The Sky and Edge Far Lands colliding, discovered using mods. The terrain changes because there are now 2 axises overflowing.
Notes
<references group="note"/>
References
Template:Navbox removed features Template:Navbox environment Template:Navbox Java Edition
Minecraft:pt:Far Lands (Edição Java) Minecraft:zh:边境之地/Java版