Chunk format

From Minecraft Wiki

Chunks store the terrain and entities within a 16×256×16 area. They also store precomputed lighting, heightmap data for Minecraft's performance, and other meta information.

Template:TOC

NBT structure[edit | edit source]

See also: Anvil file format#Further information

Chunks are stored as tags in regional Minecraft Anvil files, which are named in the form r.x.z.mca. They are stored in NBT format, with the following structure (see Block Format for the ordering of the blocks within each array):

  • Template:Nbt The root tag.
    • Template:Nbt: Version of the chunk NBT structure.
    • Template:Nbt: Chunk data.
      • Template:Nbt: X position of the chunk.
      • Template:Nbt: Z position of the chunk.
      • Template:Nbt: Tick when the chunk was last saved.
      • Template:Nbt: The cumulative number of ticks players have been in this chunk. Note that this value increases faster when more players are in the chunk. Used for regional difficulty: increases the chances of mobs spawning with equipment, the chances of that equipment having enchantments, the chances of spiders having potion effects, the chances of mobs having the ability to pick up dropped items, and the chances of zombies having the ability to spawn other zombies when attacked. Note that at values 3600000 and above, regional difficulty is effectively maxed for this chunk. At values 0 and below, the difficulty is capped to a minimum (thus, if this is set to a negative number, it behaves identically to being set to 0, apart from taking time to build back up to the positives). See Regional Difficulty for more specifics.
      • Template:Nbt: May not exist. 1024 entries of biome data. Each number in the array is the biome for a 4x4x4 volume in the chunk. These 4×4×4 volumes are arranged by Z, then X, then Y. That is, the first 4×4 values in the array are for the 16×16 chunk, at Y levels 0–3, the next 4×4 is for Y levels 4–7, etc. See Template:Slink for biome IDs. If this tag does not exist, it gets created and filled by Minecraft when the chunk is loaded and saved. If any values in this array correspond to an unknown biome, Minecraft also sets them to the biome that would normally generate in that location
      • Template:Nbt: Several different heightmaps corresponding to 256 values compacted at 9 bits per value (lowest being 0, highest being 256, both values inclusive)
        • Template:Nbt: The highest block that blocks motion or contains a fluid.
        • Template:Nbt: The highest block that blocks motion or contains a fluid or is in the minecraft:leaves tag.
        • Template:Nbt: The highest non-air block, solid block.
        • Template:Nbt: The highest block that is neither air nor contains a fluid, for worldgen.
        • Template:Nbt: The highest non-air block.
        • Template:Nbt: The highest non-air block, for worldgen.
      • Template:Nbt:
        • Template:Nbt: A series of bits indicating whether a cave has been dug at a specific position, stored in a byte array.
        • Template:Nbt: A series of bits indicating whether an underwater cave has been dug at a specific position, stored in a byte array.
      • Template:Nbt: List of Compound tags, each tag is a sub-chunk of sorts.
        • Template:Nbt An individual Section.
          • Template:Nbt: The Y index (not coordinate) of this section. Range 0 to 15 (bottom to top), with no duplicates but some sections may be missing if empty.
          • Template:Nbt: Set of different block states used in the chunk.
          • Template:Nbt: 2048 bytes recording the amount of block-emitted light in each block. Makes load times faster compared to recomputing at load time. 4 bits per block.
          • Template:Nbt: A variable amount of 64-bit longs, enough to fit 4096 indices. The indices correspond to the ordering of elements in the section's Palette. All indices are the same size in a section, which is the size required to represent the largest index (minimum of 4 bits). If the size of each index is not a factor of 64, the bits continue on the next long.
          • Template:Nbt: 2048 bytes recording the amount of sunlight or moonlight hitting each block. 4 bits per block.
      • Template:Nbt: Each TAG_Compound in this list defines an entity in the chunk. See Entity Format below. If this list is empty, it becomes a list of End tags (before 1.10, list of Byte tags).
      • Template:Nbt: Each TAG_Compound in this list defines a block entity in the chunk. See Block Entity Format below. If this list is empty, it becomes a list of End tags (before 1.10, list of Byte tags).
      • Template:Nbt: Each TAG_Compound in this list is an "active" block in this chunk waiting to be updated. These are used to save the state of redstone machines or falling sand, and other activity. See Tile Tick Format below.
      • Template:Nbt: Each TAG_Compound in this list is an "active" liquid in this chunk waiting to be updated.
      • Template:Nbt: A List of 16 lists that store positions of light sources per chunk section during world generation as shorts.
      • Template:Nbt: A List of 16 TAG_Lists that store positions of "active" liquids that need to be ticked, packed in TAG_Shorts.
      • Template:Nbt: A List of 16 TAG_Lists that store positions of "active" blocks that need to be ticked, packed in TAG_Shorts.
      • Template:Nbt: A List of 16 TAG_Lists that store positions of blocks that need to receive an update when a proto-chunk turns into a full chunk., packed in TAG_Shorts.
      • Template:Nbt: Defines the world generation status of this chunk. It is always one of the following: empty, base, carved, liquid_carved, decorated, lighted, mobs_spawned, finalized, full, or postprocessed.
      • Template:Nbt: Structure data in this chunk.
        • Template:Nbt: Coordinates of chunks that contain Starts.
          • Template:Nbt: Each 64-bit number of this array represents a chunk coordinate (i.e. block coordinate / 16), with its X packed into the low (least significant) 32 bits and Z packed into the high (most significant) 32 bits.
        • Template:Nbt: Structures that are yet to be generated, stored by general type. Some parts of the structures may have already been generated. Completely generated structures are removed by setting their id to "INVALID" and removing all other tags.
          • Template:Nbt: Only the structures that can spawn in this dimension are stored, for example, EndCity is stored only in the end chunks.
            • Template:Nbt: Chunk X coordinate of the start of the structure. Absent if id is INVALID.
            • Template:Nbt: Chunk Z coordinate of the start of the structure. Absent if id is INVALID.
            • Template:Nbt: If there's no structure of this kind in this chunk, this value is "INVALID", else it's the structure name.
            • Template:Nbt: The biome id this structure is in. Absent if id is INVALID.
            • Template:Nbt: Bounding box of the entire structure (remaining Children). Value is 6 ints: the minimum X, Y, and Z coordinates followed by the maximum X, Y, and Z coordinates. Absent if id is INVALID.
            • Template:Nbt: 1 or 0 (true/false) - (Village only) Whether the village generated at least 3 non-roads. Absent if id is INVALID.
            • Template:Nbt: (Monument only) List of chunks that have had their piece of the structure created. Absent if id is INVALID.
            • Template:Nbt: List of structure pieces making up this structure, that were not generated yet. Absent if id is INVALID.
              • Template:Nbt Structure piece data. Template:Info needed
                • Template:Nbt: Identifier for the structure piece. Typically a heavily abbreviated code rather than something human-readable.
                • Template:Nbt: Rotation of ocean ruins and shipwrecks. Valid values are COUNTERCLOCKWISE_90, NONE, CLOCKWISE_90, and CLOCKWISE_180.
                • Template:Nbt: The ocean temperature this ocean ruins is in. Valid values are WARM and COLD.
                • Template:Nbt: The template of the ocean ruin or shipwreck that was used.
                • Template:Nbt: The integrity of this structure (only used by ocean ruins).
                • Template:Nbt: The X coordinate origin of this ocean ruin or shipwreck.
                • Template:Nbt: The Y coordinate origin of this ocean ruin or shipwreck.
                • Template:Nbt: The Z coordinate origin of this ocean ruin or shipwreck.
                • Template:Nbt: The X coordinate origin of this village part.
                • Template:Nbt: The Y coordinate origin of this village part.
                • Template:Nbt: The Z coordinate origin of this village part.
                • Template:Nbt: 1 or 0 (true/false) - If this ocean ruin is big.
                • Template:Nbt: Appears to be some sort of measure of how far this piece is from the start.
                • Template:Nbt: Likely orientation of the structure piece.
                • Template:Nbt: Bounding box of the structure piece. (Does not include the part of a village roof that can overhang the road.) Value is 6 ints: the minimum X, Y, and Z coordinates followed by the maximum X, Y, and Z coordinates.
                • Template:Nbt: (Temples and huts) Width of the structure (X/Z).
                • Template:Nbt: (Temples and huts) Height of the structure (Y).
                • Template:Nbt: (Temples and huts) Depth of the structure (X/Z).
                • Template:Nbt: (Temples and huts) Y level the structure was moved to in order to place it on the surface, or -1 if it hasn't been moved yet.
                • Template:Nbt: 1 or 0 (true/false) - (Jungle temple) Whether the hallway arrow trap dispenser was placed.
                • Template:Nbt: 1 or 0 (true/false) - (Jungle temple) Whether the chest arrow trap dispenser was placed.
                • Template:Nbt: 1 or 0 (true/false) - (Jungle temple) Whether the main chest was placed.
                • Template:Nbt: 1 or 0 (true/false) - (Jungle temple) Whether the hidden chest was placed.
                • Template:Nbt: 1 or 0 (true/false) - (Desert temple) Whether chest was placed.
                • Template:Nbt: 1 or 0 (true/false) - (Desert temple) Whether chest was placed.
                • Template:Nbt: 1 or 0 (true/false) - (Desert temple) Whether chest was placed.
                • Template:Nbt: 1 or 0 (true/false) - (Desert temple) Whether chest was placed.
                • Template:Nbt: 1 or 0 (true/false) - (Witch hut) Whether the initial witch has been spawned for the hut.
                • Template:Nbt: 1 or 0 (true/false) - (Mineshaft "MSCorridor") Whether the corridor has rails.
                • Template:Nbt: 1 or 0 (true/false) - (Mineshaft "MSCorridor") Whether the corridor has cobwebs.
                • Template:Nbt: 1 or 0 (true/false) - (Mineshaft "MSCorridor") Whether the corridor has a cave spider spawner.
                • Template:Nbt: (Mineshaft "MSCorridor") Corridor length.
                • Template:Nbt: 1 or 0 (true/false) - (Mineshaft "MSCrossing") Whether the crossing is two floors tall.
                • Template:Nbt: (Mineshaft "MSCrossing") Indicates the "incoming" direction for the crossing.
                • Template:Nbt: (Mineshaft "MSRoom") List of exits from the room.
                • Template:Nbt: 1 or 0 (true/false) - (Fortress "NeSCLT" and "NeSCRT") Whether this fortress piece should contain a chest but hasn't had one generated yet. (Stronghold "SHCC") Whether this chest in this stronghold piece was placed. (Village "ViS") Whether the blacksmith chest has been generated.
                • Template:Nbt: 1 or 0 (true/false) - (Fortress "NeMT") Whether this fortress piece should contain a Blaze spawner but hasn't had one generated yet. (Stronghold "SHPR") Whether the Silverfish spawner has been placed in this piece.
                • Template:Nbt: (Fortress "NeBEF") Random seed for the broken-bridge fortress piece.
                • Template:Nbt: (Stronghold) The type of door at the entry to this piece.
                • Template:Nbt: (Stronghold "SHFC") Length of the corridor
                • Template:Nbt: 1 or 0 (true/false) - (Stronghold "SH5C") Whether the 5-way crossing has an exit on the lower level on the side with the upward staircase.
                • Template:Nbt: 1 or 0 (true/false) - (Stronghold "SH5C") Whether the 5-way crossing has an exit on the lower level on the side with the downward staircase.
                • Template:Nbt: 1 or 0 (true/false) - (Stronghold "SH5C") Whether the 5-way crossing has an exit on the upper level on the side with the upward staircase.
                • Template:Nbt: 1 or 0 (true/false) - (Stronghold "SH5C") Whether the 5-way crossing has an exit on the upper level on the side with the downward staircase.
                • Template:Nbt: 1 or 0 (true/false) - (Stronghold "SHLi") Whether the library has an upper level.
                • Template:Nbt: (Stronghold "SHRC") Indicates whether the room contains a pillar with torches, a fountain, an upper level with a chest, or is just empty room.
                • Template:Nbt: 1 or 0 (true/false) - (Stronghold "SHSD") Whether the spiral staircase is the source of the Stronghold or was randomly generated.
                • Template:Nbt: 1 or 0 (true/false) - (Stronghold "SHS") Whether the corridor has an opening on the left.
                • Template:Nbt: 1 or 0 (true/false) - (Stronghold "SHS") Whether the corridor has an opening on the right.
                • Template:Nbt: (Village) Village type: 0=plains, 1=desert, 2=savanna, 3=taiga.
                • Template:Nbt: 1 or 0 (true/false) - (Village) Whether this village generated as a zombie village.
                • Template:Nbt: (Village) Count of villagers spawned along with this piece.
                • Template:Nbt: (Village) Y level the piece was moved to in order to place it on the surface, or -1 if it hasn't been moved yet.
                • Template:Nbt: (Village "ViF" and "ViDF") Crop in the farm plot.
                • Template:Nbt: (Village "ViF" and "ViDF") Crop in the farm plot.
                • Template:Nbt: (Village "ViDF") Crop in the farm plot.
                • Template:Nbt: (Village "ViDF") Crop in the farm plot.
                • Template:Nbt: 1 or 0 (true/false) - (Village "ViSH") Whether the house has a ladder to the roof and fencing.
                • Template:Nbt: (Village "ViSmH") Table: 0 is no table, 1 and 2 place it on either side of the hut.
                • Template:Nbt: (Village "ViSmH") Hut roof type.
                • Template:Nbt: (Village "ViSR") Length of the road piece.
                • Template:Nbt: (Village) List of junction points. Template:Info needed

Block format[edit | edit source]

In the Anvil format, block positions are ordered YZX for compression purposes.

The coordinate system is as follows:

  • X increases East, decreases West
  • Y increases upward, decreases downward
  • Z increases South, decreases North

This also happens to yield the most natural scan direction, because all indices in the least significant dimension (i.e. X in this case) appear for each index in the next most significant dimension; so one reads an array ordered YZX as one would a book lying with its top northward, all letters (or X-indices) on a single line (or Z-index) at a time, and all lines on a single page (or Y-index) at a time. For the 2D arrays (i.e. "HeightMap") the inapplicable Y dimension is simply omitted, as though the book is only one page thick.

Each section in a chunk is a 16x16x16-block area, with up to 16 sections in a chunk. Section 0 is the bottom section of the chunk, and section 15 is the top section of the chunk. To save space, completely empty sections are not saved. Within each section is a byte tag "Y" for the Y index of the section, 0 to 15, a palette to indicate which ID in the section belongs to which block state, and a long array storing the IDs per block location. Block state IDs are compressed to fit the least amount of bits across each long array. The "BlockLight" and "SkyLight" byte arrays are byte arrays used for block light levels and sky light levels respectively. The "SkyLight" values represent how much sunlight or moonlight can potentially reach the block, independent of the current light level of the sky.

The endianness of the 2048-byte arrays (i.e. "BlockLight," and "SkyLight"), which give only 4 bits per block, seems to stand as the one anomalous exception to the otherwise consistent, format-wide standard of big-endian data storage. It also runs counter to the presumably natural human-readable printing direction. If the blocks begin at 0, they are grouped with even numbers preceding odd numbers (i.e. 0 & 1 share a byte, 2 & 3 share the next, etc.); under these designations Minecraft stores even-numbered blocks in the least significant half-byte, and odd-numbered blocks in the most significant half-byte. Thus block[0] is byte[0] at 0x0F, block[1] is byte[0] at 0xF0, block[2] is byte[1] at 0x0F, block[3] is byte[1] at 0xF0, etc. ...

The pseudo-code below shows how to access individual block information from a single section. Hover over text to see additional information or comments.

byte Nibble4(byte[] arr, int index){ return index%2 == 0 ? arr[index/2]&0x0F : (arr[index/2]>>4)&0x0F; }
int BlockPos = y*16*16 + z*16 + x;
compound Block = Palette[change_array_element_size(BlockStates,Log2(length(Palette)))[BlockPos]]
string BlockName = Block.Name;
compound BlockState = Block.Properties;
byte Blocklight = Nibble4(BlockLight, BlockPos);
byte Skylight = Nibble4(SkyLight, BlockPos);

Entity format[edit | edit source]

Every entity is an unnamed Template:Nbt contained in the Entities list of a chunk file. The sole exception is the Player entity, stored in level.dat, or in <player>.dat files on servers. All entities share this base:

Mobs[edit | edit source]

Mob Entities
Entity ID Name
bat Bat
blaze Blaze
cat Cat
cave_spider Cave Spider
chicken Chicken
cod Cod
cow Cow
creeper Creeper
dolphin Dolphin
donkey Donkey
drowned Drowned
elder_guardian Elder Guardian
ender_dragon Ender Dragon
enderman Enderman
endermite Endermite
evoker Evoker
fox Fox
ghast Ghast
giant Giant
guardian Guardian
horse Horse
husk Husk
illusioner Illusioner
iron_golem Iron Golem
llama Llama
magma_cube Magma Cube
mooshroom Mooshroom
mule Mule
ocelot Ocelot
panda Panda
parrot Parrot
phantom Phantom
pig Pig
pillager Pillager
polar_bear Polar Bear
pufferfish Pufferfish
rabbit Rabbit
ravager Ravager
salmon Salmon
sheep Sheep
shulker Shulker
silverfish Silverfish
skeleton Skeleton
skeleton_horse Skeleton Horse
slime Slime
snow_golem Snow Golem
spider Spider
squid Squid
stray Stray
trader_llama Trader Llama[Java Edition only]
tropical_fish Tropical Fish
turtle Turtle
vex Vex
villager Villager
villager_v2 Villager[Bedrock Edition only]
vindicator Vindicator
wandering_trader Wandering Trader
witch Witch
wither Wither
wither_skeleton Wither Skeleton
wolf Wolf
zombie Zombie
zombie_horse Zombie Horse
zombie_pigman Zombie Pigman
zombie_villager Zombie Villager
zombie_villager_v2 Zombie Villager[Bedrock Edition only]

Mobs are a subclass of Entity with additional tags to store their health, attacking/damaged state, potion effects, and more depending on the mob. Players are a subclass of Mob.

Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude

Projectiles[edit | edit source]

Projectile Entities
Entity ID Name
arrow Arrow
dragon_fireball Ender Dragon Fireball
egg Egg
ender_pearl Ender Pearl
experience_bottle Bottle o' Enchanting
fireball Ghast Fireball
llama_spit Llama spit
potion Splash Potion
small_fireball Blaze Fireball/Fire Charge
shulker_bullet Shulker Bullet
snowball Snowball
spectral_arrow Spectral Arrow
trident Trident
wither_skull Wither Skull

Projectiles are a subclass of Entity and have very obscure tags such as X,Y,Z coordinate tags despite Entity Pos tag, inTile despite inGround, and shake despite most projectiles not being arrows. While all projectiles share tags, they are all independently implemented through Throwable and ArrowBase.

Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude

Items and XP Orbs[edit | edit source]

Item Entities
Entity ID Name
experience_orb Experience Orb
item Dropped Item

Items and XPOrbs are a subclass of Entity. Template:Data transclude Template:Data transclude

Vehicles[edit | edit source]

Vehicle Entities
Entity ID Name
boat Boat
minecart Minecart
chest_minecart Minecart with Chest
command_block_minecart Minecart with Command Block
furnace_minecart Minecart with Furnace
hopper_minecart Minecart with Hopper
spawner_minecart Minecart with Spawner
tnt_minecart Minecart with TNT

Vehicles are subclasses of Entity.

Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude

Dynamic tiles[edit | edit source]

Dynamic Block Entities
Entity ID Name
falling_block Dynamic Tile
tnt TNT

Dynamic tiles are a subclass of Entity and are used to simulate realistically moving blocks.

Template:Data transclude Template:Data transclude

Other[edit | edit source]

Other Entities
Entity ID Name
area_effect_cloud Area Effect Cloud
armor_stand Armor Stand
end_crystal End Crystal
evoker_fangs Evoker Fangs
eye_of_ender Eye of Ender
firework_rocket Firework Rocket
fishing_bobber Fishing Bobber
item_frame Item Frame
leash_knot Lead Knot
painting Painting

Other entity types that are a subclass of Entity but do not fit into any of the above categories.

Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude

Block entity format[edit | edit source]

Block Entities
Block Entity ID Associated Block
banner Banner
barrel Barrel
beacon Beacon
bed Bed
beehive Bee nest/hive
bell Bell
blast_furnace Blast Furnace
brewing_stand Brewing Stand
campfire Campfire
cauldron Cauldron[Bedrock Edition only]
chest Chest
Trapped Chest
comparator Redstone Comparator
command_block Command Block
conduit Conduit
daylight_detector Daylight Detector
dispenser Dispenser
dropper Dropper
enchanting_table Enchanting Table
ender_chest Ender Chest
end_gateway End Gateway
end_portal End Portal
furnace Furnace
hopper Hopper
jigsaw Jigsaw Block
jukebox Jukebox
lectern Lectern
mob_spawner Spawner
piston Moving Piston
shulker_box Shulker Box
sign Sign
skull Mob head
smoker Smoker
structure_block Structure Block

A block entity (not related to entity) is used by Minecraft to store information about a block that can't be stored in the block's block states. Block entities were called "tile entities" until the 1.8 snapshots and that term is still used in some command usage.

Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude Template:Data transclude

Tile tick format[edit | edit source]

Tile Ticks represent block updates that need to happen because they could not happen before the chunk was saved. Examples reasons for tile ticks include redstone circuits needing to continue updating, water and lava that should continue flowing, recently placed sand or gravel that should fall, etc. Tile ticks are not used for purposes such as leaf decay, where the decay information is stored in the leaf block data values and handled by Minecraft when the chunk loads. For map makers, tile ticks can be used to update blocks after a period of time has passed with the chunk loaded into memory.

History[edit | edit source]

Template:Needs update

Chunks were first introduced in Java Edition Infdev. Before the addition of the MCRegion format in Beta 1.3, chunks were stored as individual chunk files ".dat" where the file names contained the chunk's position encoded in Base36 - this is known as the Java Edition Alpha level format. MCRegion changed this by storing groups of 32×32 chunks in individual ".mcr" files with the coordinates in Base10, with the goal being to reduce disk usage by cutting down on the number of file handles Minecraft had open at once. MCRegion's successor is the current format, Anvil, which made changes only to the chunk format. The region file technique is still used, but the region file extensions are ".mca" instead.

The major change from MCRegion to Anvil was the division of Chunks into Sections; each chunk has up to 16 individual 16×16×16 block Sections so that completely empty sections are not saved at all. Preparation has also been made to support blocks with IDs in the range 0 to 4095, as compared to the previous 0 to 255 limitation. However, Minecraft is not fully prepared for such blocks to exist as items; many item IDs are already taken in the range 256 to 4095.

The Blocks, Data, BlockLight, and SkyLight arrays are now housed in individual chunk Sections. The Data, SkyLight, and BlockLight are arrays of 4-bit values, and the BlockLight and SkyLight arrays no longer house part of the block ID. The Blocks array is 8 bits per block, and the 4096-blocks support exists in the form of an optional Add byte array of 4-bits per block for additional block ID information. With the Anvil format, the NBT Format was changed from Notch's original specification to include an integer array tag similar to the existing byte array tag. It is currently used only for HeightMap information in chunks.

youarecrazyright youarecrazyright youarecrazyright youarecrazyright youarecrazyright youarecrazyright youarecrazyright youarecrazyright youarecrazyright youarecrazyright youarecrazyright youarecrazyright youarecrazyright youarecrazyright youarecrazyright youarecrazyright youarecrazyright youarecrazyright youarecrazyright youarecrazyright youarecrazyright youarecrazyright youarecrazyright youarecrazyright youarecrazyright youarecrazyright youarecrazyright youarecrazyright youarecrazyright youarecrazyright youarecrazyright youarecrazyright youarecrazyright youarecrazyright youarecrazyright youarecrazyright youarecrazyright youarecrazyright youarecrazyright youarecrazyright youarecrazyright youarecrazyright youarecrazyright youarecrazyright youarecrazyright youarecrazyright youarecrazyright youarecrazyright youarecrazyright youarecrazyright youarecrazyright youarecrazyright youarecrazyright youarecrazyright youarecrazyright youarecrazyright youarecrazyright youarecrazyright youarecrazyright youarecrazyright youarecrazyright youarecrazyright youarecrazyright youarecrazyright youarecrazyright youarecrazyright youarecrazyright youarecrazyright youarecrazyright youarecrazyright youarecrazyright youarecrazyright youarecrazyright

Help
Game customization
Editions
Java Java
Bedrock
Merged
Ports to consoles
&format=original
Discontinued
Other
&format=original
Discontinued
Console Legacy Console
Official Merchandise
Other
Miscellaneous
MINECON
Upcoming
Games
Upcoming
&format=original
Discontinued
Films
Upcoming
Novels
Upcoming
Minecraft Dungeons
Other media

xcxcxxcxcxcx

de:Chunkdaten fr:Format de tronçon ja:Chunkフォーマット ko:청크 구성 nl:Segment formaat ru:Формат чанка uk:Формат чанку zh:区块格式