Bedrock Edition Far Lands



The Far Lands were the area that formed the “edge" of the “infinite" map in PC versions prior to Beta 1.8. They are currently found in Pocket Edition.

Spawning
Far Lands start to generate between ±12,550,821 and ±12,550,825 on any horizontal axis.

Structure


Both areas of the Far Lands feature extremely strange terrain, although they are significantly different. In both zones, any area beneath sea level, excluding regular caves, will be flooded with water.

Beyond X/Z of ±32,000,000 chunks are treated as permanently nonexistent, and will not generate, even though they may appear to. This value is hardcoded in the source code of Minecraft, meaning that it cannot be changed without editing the source (or binary) files.

The Far Lands will generate biomes but most biomes will be indistinguishable except by the color of grass. Desert biomes will be covered in sand and snow-covered biomes will be covered with snow, excluding the very top of the map (because there's no space for the snow cover up there). Trees will generate somewhat normally, but can only be found in the upper areas of the map due to the need for grass. However, if you open the debug screen, the biome will always be forest.

Ores can be found up to their respective maximum heights just like in the normal world. Unfortunately, due to the flooding, everything except for coal is difficult, if not impossible, to acquire. In the solid areas of the Far Lands, normal caves will generate but will be limited and small. Along with the caves, dungeons (extremely rare) and lakes can be found in solid areas. Water and lava springs can be found out in the open and in caves.

Much of the open space in both areas is shrouded in darkness and thus hostile mobs run rampant, making the Far Lands as a whole incredibly dangerous. This is especially problematic in the Corner Far Lands due to its layered structure. The flooded zones are filled with squid.

In the Sky Dimension, the Far Lands are not half flooded with water and bedrock does not form at lower levels.

Edge Far Lands
The boundary of the Far Lands' edge (that is, where it meets the regular map) looks like a solid wall, all the way to the top of the map (Y-coordinate 127) that is filled with gaping holes perpendicular to the edge. These holes are extremely long, perhaps infinite, and on the whole seem to change very little no matter how deep the player ventures. They can be blocked, either partially or completely, but such blockages are rare and temporary. This “wall of Swiss cheese" pattern continues beneath ground level, all the way to the bottom of the map, and seems to be partially caused by a large one-dimensional distortion in the map generator's output. This area is sometimes referred to as “the Loop".

The Edge Far Lands' average block composition: 36% stone, 25% air, 23% water, 10% dirt/grass block, 2% bedrock, and 4% others. (Based on a 14×14 chunk selection)

Corner Far Lands
At a corner, when two perpendicular Edge Far Lands sections meet, the Corner Far Lands begin to generate. Unlike the infinite-length holes in the Edge Far Lands, the Corner Far Lands contains more normal terrain. This terrain is "stacked" on top of itself to create a bizarre sandwich with layers of ground and air, which gives it its nickname, “The Stack". Each layer looks like a gigantic floating continent, hovering over the next layer, which is shadowed.

The majority of the generated world is Corner Far Lands, as the “normal" map (before ±12,550,821 mark) only makes the center of the world, and the Edge Far Lands only makes its continued sides.

The number of layers isn't always the same, and varies between five to seven. Layers can be grouped into three categories:
 * Top layer: This layer exists at the absolute top of the map. Occasionally there can be a lower area that isn't shadowed (this is technically a dry layer). The lower area is where a majority of the trees and passive mobs can be found, as the top layer receives almost all of the sunlight. Due to the lack of space the area at the absolute top can't have trees or mobs.
 * The top layer tends to light incorrectly in day-night transitions. This is because the sunlight calculation doesn't work when the entire chunk is blocked at Y-coordinate 128.
 * Dry layers: These generate slightly flatter than normal terrain and have grass, despite the darkness. At sea level massive floating beaches can be found, which will collapse if modified. Hostile mobs' spawn rate likely approaches the maximum due to being in the shadow of the top layer. Rarely, there are holes in the top layer that allow sunlight to reach these layers. Caves that have one of these layers as their “surface" can occasionally be carved out of dirt instead of stone. These layers have cave-like ceilings made out of stone, gravel and dirt.
 * Flooded layers: Like the dry layers, these generate somewhat flat terrain, but it is comprised primarily of stone. Sand and sandstone will show up down here, even up to 30 meters below sea level. Except for coal, all the ores can only be found in these layers.

Sometimes, there are extremely tall pillars of gravel that stretch from the ground to the ceiling of a layer. Likewise, some of the beaches that collapse will create pillars of sand all the way down to the ground, despite there not being that much sand to begin with. The Corner Far Lands is also prone to having near-perfect diagonal lines being carved into the ceilings or floors of layers. If traced, these lines all intersect at the corner (X/Z ±12,550,821). This seems similar to how the Edge Far Lands have a consistent pattern along lines perpendicular to their edge, but is much less pronounced.

The Corner Far Lands' average block composition: 40% stone, 16% air, 28% water, 10% dirt/grass, 2% bedrock, and 4% others. (Based on a 14×14 chunk selection)

The Nether


The Nether Far Lands are similar to Overworld Far Lands, except they generate with Nether features, such as lava ocean at Y=31.

In the Nether, the terrible lag associated with the Overworld Far Lands will not occur. This is because there are very few gravity-affected blocks in the Nether.

If a Nether portal is created in the Far Lands of the Overworld, entering will cause a teleportation to normal Nether, as X/Z 32,000,000, the limit at which block physics and lighting cease to function, divided by 8 (as 1 block in the nether corresponds to 8 blocks in the Overworld), is X/Z 4,000,000, within the limits of X/Z 12,550,820, where the distortion starts. Conversely, a Nether Portal built in the nether Far Lands will not function, as even at the limit of 12,550,820 blocks as the beginning of the Far Lands would cause the player to come out at X/Z 100,406,560, far past X/Z 32,000,000.

Pocket Edition
The Pocket Edition Far Lands are different from PC Far Lands, specifically:


 * The content of Far Lands in Pocket Edition is slightly different in biomes and structure in positive coordinates.
 * In negative coordinates, the Far Lands are completely ocean.
 * In the Corner Far Lands, an extremely unusual grid pattern of grass blocks will appear instead of the ordinary “stack." Tall grass will spawn on these blocks. This results in a perfect three-dimensional array of grass blocks levitating high above the ocean.
 * Flying is the only way to navigate the Far Lands. Walking is impossible as the terrain is made up of ghost chunks.
 * Any movement causes chunks to jitter about incredibly.
 * One feature of the PE Far Lands is the Stripe Lands, a graphical bug that depicts a one visible-one invisible block pattern. The Stripe Lands starts at X/Z ±16,777,216, only generating water, bedrock and ice (frozen oceans), and grass on flat worlds.
 * Sand and gravel don't fall from generating in Pocket Edition. This results in relatively stable performance.

Effects


There are many effects that will be noticed after traveling millions of blocks away from the center of the map. The very first effect that will be noticed is the jumpy or stuttering movement of the map, which isn't directly related to the Far Lands themselves but instead to floating-point precision errors. This jumpy movement is notable even at an X/Z of ±500,000. Players will experience extreme framerate drops and very high CPU usage, which will continue until Minecraft freezes completely. The framerate drops do not occur in multiplayer servers, though it will, depending on the server computer's RAM, make the server itself lag. In both singleplayer and multiplayer, the intense lag that is characteristic of the Far Lands is caused by massive numbers of falling sand or gravel entities. This in turn is caused (like most of the rest of the Far Lands' strange effects) by more floating-point precision errors.

As the player journeys even deeper into the Far Lands, the effects worsen to the point where the game is unplayable. At X/Z ±32,000,000, block physics stop functioning correctly. Lighting doesn't work and the blocks, although they appear to be there, aren't solid. If the player tries to walk on these blocks, he or she will fall into the Void. At excessive X/Z positions, world renderer no longer works, or takes incredibly long times and uses most, if not all CPU usage. It then becomes almost impossible to close Minecraft without a task manager.

Weather is not affected by the Far Lands directly but is by their terrain. Lightning bolts that hit surfaces at the top of the map (Y-coordinate 127) will be invisible and will not cause fire. The particles created when rain hits these surfaces will be black instead of blue. Snow will not accumulate on these surfaces either (because there's no space).

Map editors
When viewing the Far Lands in a 3D Minecraft map editor, you will encounter errors. In MCEdit, the selection cubes start to distort and the map distorts when viewing. In addition when rotating your view around a selected area, blocks will not be lined up right and will change how poorly lined up they are randomly, making the whole world seem to shake like a machine about to rattle itself to pieces.

Previous versions
In Infdev, although the Far Lands existed, many of the side effects didn't. However, fire particles and doors would act strange. There was no stuttering movement, and beyond X/Z ±32,000,000, the blocks would simply not render. Walking off the edge would cause the player to become stuck in a glitched position, unable to escape.

It has been confirmed that in Alpha v1.1.2, the blocks would not render beyond X/Z ±32,000,000, like older Infdev versions. The fake chunks started appearing in Alpha 1.2.0.

In previous versions of the game, if you teleport as high as you possibly can, you are sent to a Y-Axis of 3.4x1038. In this zone, you float without a purpose, and dropped items will slide with what appears to be no friction before suddenly stopping after about 20 blocks. It has been reported that the X and Z-Axis sometimes flicker randomly in this zone. The memory pie chart also sometimes randomly jumps to 100% undefined memory usage, and then disappears upon re-entering the debug menu.

Pocket Edition effects
In Pocket Edition, the playable range is smaller than that of PC, because of the usage of 32-bit floating-point numbers (as opposed to 64-bit on PC).


 * Gaps between chunks first begin to be noticeable at X/Z values above ±100,000. The selection box also experiences a lot more Z-fighting as it contracts (it can still rarely be found in the "normal" world).
 * At X/Z ±524,288 "jitteriness" is experienced and the further the player travels, the world gradually starts to become glitchy and unplayable. Chunks are seen to vibrate rapidly.
 * Past X/Z: ±900,000, the jitteriness becomes considerably unbearable, and crashes are very frequent at this point on low-end devices.
 * At X/Z ±4,194,304, the landscape is non-solid. After this point, the jitteriness becomes so intense that the player cannot navigate without jumping or flying.
 * At X/Z ±8,388,608 the terrain is made up of ghost chunks.
 * At X/Z ±33,554,432 water is no longer rendered.
 * After about X/Z: ±2,100,000,000, air pockets (the black patches in the Stripe Lands) will fail to render. The map is essentially invisible from this point onwards.
 * At X/Z ±2,147,483,647, the game freezes and crashes. However, not all devices are able to reach this point.
 * Blocks that are not full (stairs, fences, etc.) will appear as full blocks, usually stretched out.
 * At very large X/Z coordinates, the player can only move horizontally or vertically, and has to hold down directional keys before moving.

Cause
The terrain is generated based on 16 octaves of Perlin noise. Each noise generator takes floating-point inputs and uses those to interpolate between noise values at whole numbers. It does so by:


 * 1) casting to a 32-bit integer, where Java rounds toward zero and handles overflow by picking the closest representable value;
 * 2) subtracting one if the integer is greater than the original input, to always round down;
 * 3) subtracting that integer from the original input to get a remainder in the interval [0, 1) suitable for interpolation.

It covers an interval of [−231, 231) without causing any problems. The problem is that many of the octaves cover a scale much smaller than a block, with up to 171.103 noise units per block. Indeed, 231≈171.103×12,550,824.053. Once this value is exceeded, the integer will always be 231−1, picking the same noise values on that axis every time. This is the reason for those long unchanging tunnels in the Edge Far Lands, and plains in the Corner Far Lands.

At the positive end the remainder starts out relatively small but usually much larger than 1, and grows by 171.103 per block. At the negative end, the remainder starts at −232. This value is then adjusted by ((6x−15)x+10)x3 for quintic interpolation. Even one block in at the positive end, this is already around 1011. The negative end starts all the way around −1049! For the Corner Far Lands, multiply the values of both edges. When interpolation (really extrapolation) is attempted with values as large as these, it produces similarly large output. That output completely dwarfs all other terms that would normally give the terrain its shape, instead effectively only passing the sign of this one noise function through.

It was fixed by taking the remainder of the input divided by 224. Noise repeats every 28 units anyway, so it has no side effects. But it does prevent the overflow. By removing these instructions, the Far Lands can be returned to current versions of the game.

There are several factors making things slightly more complicated:


 * Noise is only sampled every four blocks and linearly interpolated in between. This is why when 12,550,824 is affected by the bug, it reaches out three more blocks to 12,550,821.
 * Each noise generator picks a random offset in [0, 256) to add to its input. This will usually move the boundary under 12,550,824, starting the Far Lands at 12,550,821. With a few seeds it might not, putting the start at 12,550,825. Very rarely, if the boundary is just barely within 12,550,824, the first couple blocks of the Far Lands might look somewhat normal. The southern and eastern Far Lands do this independently of one another. At the negative end, the Far Lands always start at block coordinate −12,550,825, with the positive edge of those blocks at −12,550,824.
 * There are actually two sets of noise generators, which are blended together based on another noise generator. This is responsible for relatively smooth alternation between two sets of tunnels or plains. Occasionally, one of the noise generators starts generating Far Lands before the other because it uses a different offset, producing an incongruous boundary.
 * A second set of Far Lands starts around ±25,101,648, where another octave overflows. There is no visible change because the original Far Lands dwarf them like everything else.

Trivia

 * There is a chance of walking into a “bad chunk" that has such corrupt and unreadable data that it will cause huge lag spikes and possibly crash the game.
 * When at the Far Lands, fences either have a thin wall collision box on one side, or no collision with mobs or the player.
 * Even though Beta 1.6 made it impossible to place solid blocks at layer 128, the Far Lands' flat “ceiling" still gets generated there.
 * Because of the debates over renaming endermen to "Far Landers," Notch jokingly suggested to rename the Far Lands to The End instead. This then became the name for the dimension where the Ender Dragon resides.
 * Minecarts with chests will sometimes appear in phantom chunks, but as entities, they fall into the void shortly after they are generated.
 * One of the random splashes read: "Check out the far lands!". Ironically, the splash was added to the game after the Far Lands were fixed.
 * In Beta 1.7.3 and below:
 * At excessive X/Z values, the corner lands are all flat.
 * At X: 33,554,431, X: 67,108,864, X: 134,217,728, X: 268,435,456, X: 536,870,911, and X: 1,073,741,823, a terrain glitch causes normal terrain to generate for a few chunks before generating distorted terrain again. This is the only occurrence where trees generate beyond X/Z: ±32,000,000, the limit at which block physics fail to function correctly and lighting ceases to work.
 * At X/Z: ±2,147,483,647, which is the highest point reachable by 32-bit machines, world renderer stops working completely, ending terrain generation in Minecraft. Things using 32-bit integers will overflow at this distance, causing the game to crash. Chunks will still generate, but there will be nothing inside them. The map will stop generating surface textures past this point.
 * At around and after X/Z: ±2,147,483,648, clouds become severely stretched out in one direction (Fast graphics only, Fancy graphics clouds are not affected by the Far Lands).
 * Between X/Z: ±25,769,803,000 and X/Z: ±25,769,804,000 clouds stop rendering (Varies between maps, but they disappear somewhere in between these distances. Does not apply for fast graphics clouds).
 * It is very dangerous to reach X/Z ±4,000,000,000 or higher, as the chances of crashing (assuming you have 64-bit Java) are extremely high, and get higher the farther you go.
 * If one makes it to X/Z ±34,359,738,368 (chunk offset limit), chunks will start getting overwritten. As a result, this is the end of chunk generation in Minecraft. As soon as this limit is approached, the game will freeze and crash, resulting in a Out of memory screen. However in some cases the player may be able to move past this limit for a few seconds before Minecraft crashes.
 * The highest value for 64-bit machines is X/Z ±9,223,372,036,854,775,807. However, despite this being the limit any machine can go, it may not be possible to reach anywhere near this point, since the vast majority of people experience instant client freeze, followed by the client crashing. If teleported there, the screen will display completely black with no sun and oddly glowing clouds.