![]() |
VOOZH | about |
"y": "query.heightmap(variable.worldx, variable.worldz)" in the distribution to place a feature on the surface, but no other information about heightmaps has been found.Heightmaps are maps to store the Y-level of the highest block at each horizontal coordinate. They are stored in chunk files and used for various game calculations.
The last four heightmaps are based on a property called motion blocking. This is defined as follows:
Several different heightmaps check and store highest block of different types, and are used for different purposes. In Java Edition, there are six heightmap types:
WORLD_SURFACE: Stores the Y-level of the highest non-air (all types of air) block.WORLD_SURFACE_WG: Stores the Y-level of the highest non-air (all types of air) block. Used only during world generation.OCEAN_FLOOR: Stores the Y-level of the highest block whose material blocks motion. Used only on the server side.OCEAN_FLOOR_WG: Stores the Y-level of the highest block whose material blocks motion. Used only during world generation.MOTION_BLOCKING: Stores the Y-level of the highest block whose material blocks motion or blocks that contains a fluid (water, lava, or waterlogged blocks).MOTION_BLOCKING_NO_LEAVES: Stores the Y-level of the highest block whose material blocks motion, or blocks that contains a fluid (water, lava, or waterlogged blocks), except various leaves. Used only on the server side, e.g. for pillager patrol spawning.Heightmaps are used for various in-game calculations. For example, a lightning rod can only be triggered when there is no non-air block above it. Therefore, the game compares the Y-level of lightning rod with heightmap WORLD_SURFACE to know if there are non-air blocks above it.
Heightmaps of both server side and client side can be seen in debug screen. The "CH" line is the value in client side heightmaps at the player's current X/Z coordinates. The "SH" line is the server side value in heightmaps at the player's current X/Z coordinates. In the two lines:
/execute positioned over can change the execution position of the command to one block above the Y-level stored in the specified heightmap. WORLD_SURFACE_WG and OCEAN_FLOOR_WG cannot be used in this command.