Bedrock mapping
Every abstract block type and state, with the Bedrock block ID and state values the exporters emit.
- Game version: 1.26.50
@minecraft/vanilla-data: 1.26.50 (block IDs and state names)- Mojang
bedrock-samples: v1.26.50.4,metadata/vanilladata_modules/mojang-blocks.json(state value domains), SHA-256044d494af33347eb1f0e76bab64ce04f44261ec3dac7d1938549a41cf0a770ba
IDs, state names and value domains are checked against those pinned files by the registry tests. What each value means in game (which number is which direction) cannot be read from them: those rows are marked VERIFY-IN-GAME and stay unverified (W108) until the M3 orientation test proves them in a world.
| Type | Abstract states | ID | State mapping | In game |
|---|---|---|---|---|
| button | mount: floor / ceiling / north / south / east / west (default floor), directional material: stone / wood (default stone) pressed: false / true (default false) |
material=stone → minecraft:stone_buttonmaterial=wood → minecraft:wooden_button |
facing_direction: mount=floor → 1, mount=ceiling → 0, mount=north → 3, mount=south → 2, mount=east → 4, mount=west → 5button_pressed_bit: pressed=false → false, pressed=true → true |
verified 1.26.52, 2026-10-08, automated in-game check (deploy/test-world/ingame-check.mjs, docs/ingame/2026-10-08-m3.json) |
| comparator | facing: north / south / east / west (default north), directional mode: compare / subtract (default compare) powered: false / true (default false) |
powered=false → minecraft:unpowered_comparatorpowered=true → minecraft:powered_comparator |
minecraft:cardinal_direction: facing=north → "south", facing=south → "north", facing=east → "west", facing=west → "east"output_subtract_bit: mode=compare → false, mode=subtract → trueoutput_lit_bit: powered=false → false, powered=true → true |
not verified (W108) VERIFY-IN-GAME: minecraft:cardinal_direction names the input side, the opposite of the direction the signal exits (it equals Java facing, per GeyserMC mappings-generator BlockMappers) VERIFY-IN-GAME: output_subtract_bit true is subtract mode (per GeyserMC mappings-generator BlockMappers) VERIFY-IN-GAME: output_lit_bit is the powered state (per GeyserMC mappings-generator BlockMappers) |
| concrete | color: white / orange / magenta / light_blue / yellow / lime / pink / gray / light_gray / cyan / purple / blue / brown / green / red / black (default white) | color=white → minecraft:white_concretecolor=orange → minecraft:orange_concretecolor=magenta → minecraft:magenta_concretecolor=light_blue → minecraft:light_blue_concretecolor=yellow → minecraft:yellow_concretecolor=lime → minecraft:lime_concretecolor=pink → minecraft:pink_concretecolor=gray → minecraft:gray_concretecolor=light_gray → minecraft:light_gray_concretecolor=cyan → minecraft:cyan_concretecolor=purple → minecraft:purple_concretecolor=blue → minecraft:blue_concretecolor=brown → minecraft:brown_concretecolor=green → minecraft:green_concretecolor=red → minecraft:red_concretecolor=black → minecraft:black_concrete |
none | not verified (W108) |
| daylight_sensor | inverted: false / true (default false) | inverted=false → minecraft:daylight_detectorinverted=true → minecraft:daylight_detector_inverted |
redstone_signal: always 0 |
not verified (W108) |
| dispenser | facing: down / up / north / south / east / west (default north), directional | minecraft:dispenser |
facing_direction: facing=down → 0, facing=up → 1, facing=north → 2, facing=south → 3, facing=east → 5, facing=west → 4triggered_bit: always false |
not verified (W108) VERIFY-IN-GAME: facing_direction is the direction items leave, numbered down 0, up 1, north 2, south 3, west 4, east 5 (per GeyserMC mappings-generator BlockMappers) |
| door | facing: north / south / east / west (default north), directional hinge: left / right (default left) open: false / true (default false) material: wood / iron (default wood) |
material=wood → minecraft:wooden_doormaterial=iron → minecraft:iron_door |
minecraft:cardinal_direction: facing=north → "east", facing=south → "west", facing=west → "north", facing=east → "south"door_hinge_bit: hinge=left → false, hinge=right → trueopen_bit: open=false → false, open=true → trueupper_block_bit: always falseupper half at +[0,1,0]: upper_block_bit always true |
not verified (W108) VERIFY-IN-GAME: door minecraft:cardinal_direction is Java facing turned a quarter clockwise (north to east, per GeyserMC mappings-generator BlockMappers) VERIFY-IN-GAME: door_hinge_bit true is the right hinge (per GeyserMC mappings-generator BlockMappers) VERIFY-IN-GAME: the upper half is the same block one above, with upper_block_bit true |
| dropper | facing: down / up / north / south / east / west (default north), directional | minecraft:dropper |
facing_direction: facing=down → 0, facing=up → 1, facing=north → 2, facing=south → 3, facing=east → 5, facing=west → 4triggered_bit: always false |
not verified (W108) VERIFY-IN-GAME: facing_direction is the direction items leave, numbered down 0, up 1, north 2, south 3, west 4, east 5 (per GeyserMC mappings-generator BlockMappers) |
| dust | power: 0 / 1 / 2 / 3 / 4 / 5 / 6 / 7 / 8 / 9 / 10 / 11 / 12 / 13 / 14 / 15 (default 0) | minecraft:redstone_wire |
redstone_signal: power=0 → 0, power=1 → 1, power=2 → 2, power=3 → 3, power=4 → 4, power=5 → 5, power=6 → 6, power=7 → 7, power=8 → 8, power=9 → 9, power=10 → 10, power=11 → 11, power=12 → 12, power=13 → 13, power=14 → 14, power=15 → 15 |
verified 1.26.52, 2026-10-08, automated in-game check (deploy/test-world/ingame-check.mjs, docs/ingame/2026-10-08-m3.json) |
| glass | none | minecraft:glass |
none | not verified (W108) |
| honey_block | none | minecraft:honey_block |
none | not verified (W108) |
| hopper | facing: down / north / south / east / west (default down), directional | minecraft:hopper |
facing_direction: facing=down → 0, facing=north → 2, facing=south → 3, facing=east → 5, facing=west → 4toggle_bit: always false |
not verified (W108) VERIFY-IN-GAME: facing_direction is the direction items leave, numbered down 0, north 2, south 3, west 4, east 5 (per GeyserMC mappings-generator BlockMappers) |
| lamp | lit: false / true (default false) | lit=false → minecraft:redstone_lamplit=true → minecraft:lit_redstone_lamp |
none | verified 1.26.52, 2026-10-08, automated in-game check (deploy/test-world/ingame-check.mjs, docs/ingame/2026-10-08-m3.json) |
| lever | mount: floor / ceiling / north / south / east / west (default floor), directional on: false / true (default false) |
minecraft:lever |
lever_direction: mount=floor → "up_north_south", mount=ceiling → "down_north_south", mount=north → "south", mount=south → "north", mount=east → "west", mount=west → "east"open_bit: on=false → false, on=true → true |
verified 1.26.52, 2026-10-08, automated in-game check (deploy/test-world/ingame-check.mjs, docs/ingame/2026-10-08-m3.json) |
| note_block | none | minecraft:noteblock |
none | not verified (W108) |
| observer | facing: down / up / north / south / east / west (default north), directional powered: false / true (default false) |
minecraft:observer |
minecraft:facing_direction: facing=down → "down", facing=up → "up", facing=north → "north", facing=south → "south", facing=east → "east", facing=west → "west"powered_bit: powered=false → false, powered=true → true |
not verified (W108) VERIFY-IN-GAME: minecraft:facing_direction is the side the face looks at (equals Java facing, per GeyserMC mappings-generator BlockMappers) |
| piston | facing: down / up / north / south / east / west (default up), directional | minecraft:piston |
facing_direction: facing=down → 0, facing=up → 1, facing=north → 3, facing=south → 2, facing=east → 4, facing=west → 5 |
verified 1.26.52, 2026-10-08, automated in-game check (deploy/test-world/ingame-check.mjs, docs/ingame/2026-10-08-m3.json) |
| pressure_plate | material: stone / wood (default stone) on: false / true (default false) |
material=stone → minecraft:stone_pressure_platematerial=wood → minecraft:wooden_pressure_plate |
redstone_signal: on=false → 0, on=true → 15 |
not verified (W108) VERIFY-IN-GAME: a pressed pressure plate has redstone_signal 15 (per GeyserMC mappings-generator BlockMappers) |
| redstone_block | none | minecraft:redstone_block |
none | verified 1.26.52, 2026-10-08, automated in-game check (deploy/test-world/ingame-check.mjs, docs/ingame/2026-10-08-m3.json) |
| repeater | facing: north / south / east / west (default north), directional delay: 1 / 2 / 3 / 4 (default 1) powered: false / true (default false) |
powered=false → minecraft:unpowered_repeaterpowered=true → minecraft:powered_repeater |
minecraft:cardinal_direction: facing=north → "south", facing=south → "north", facing=east → "west", facing=west → "east"repeater_delay: delay=1 → 0, delay=2 → 1, delay=3 → 2, delay=4 → 3 |
not verified (W108) VERIFY-IN-GAME: minecraft:cardinal_direction names the input side, the opposite of the direction the signal exits (it equals Java facing, per GeyserMC mappings-generator BlockMappers) VERIFY-IN-GAME: repeater_delay is the delay minus one (per GeyserMC mappings-generator BlockMappers) |
| slab | half: bottom / top (default bottom) | minecraft:normal_stone_slab |
minecraft:vertical_half: half=bottom → "bottom", half=top → "top" |
not verified (W108) |
| slime | none | minecraft:slime |
none | not verified (W108) |
| stairs | facing: north / south / east / west (default north), directional half: bottom / top (default bottom) |
minecraft:normal_stone_stairs |
weirdo_direction: facing=east → 0, facing=west → 1, facing=south → 2, facing=north → 3upside_down_bit: half=bottom → false, half=top → trueminecraft:corner: always "none" |
not verified (W108) VERIFY-IN-GAME: weirdo_direction is east 0, west 1, south 2, north 3 for the climbing direction (Java facing, per GeyserMC mappings-generator BlockMappers) |
| sticky_piston | facing: down / up / north / south / east / west (default up), directional | minecraft:sticky_piston |
facing_direction: facing=down → 0, facing=up → 1, facing=north → 3, facing=south → 2, facing=east → 4, facing=west → 5 |
verified 1.26.52, 2026-10-08, automated in-game check (deploy/test-world/ingame-check.mjs, docs/ingame/2026-10-08-m3.json) |
| stone | none | minecraft:stone |
none | verified 1.26.52, 2026-10-08, automated in-game check (deploy/test-world/ingame-check.mjs, docs/ingame/2026-10-08-m3.json) |
| target | none | minecraft:target |
none | not verified (W108) |
| torch | mount: floor / north / south / east / west (default floor), directional lit: false / true (default true) |
lit=true → minecraft:redstone_torchlit=false → minecraft:unlit_redstone_torch |
torch_facing_direction: mount=floor → "top", mount=north → "north", mount=south → "south", mount=east → "east", mount=west → "west" |
verified 1.26.52, 2026-10-08, automated in-game check (deploy/test-world/ingame-check.mjs, docs/ingame/2026-10-08-m3.json) |
| trapdoor | facing: north / south / east / west (default north), directional half: bottom / top (default bottom) open: false / true (default false) material: wood / iron (default wood) |
material=wood → minecraft:trapdoormaterial=iron → minecraft:iron_trapdoor |
direction: facing=east → 0, facing=west → 1, facing=south → 2, facing=north → 3upside_down_bit: half=bottom → false, half=top → trueopen_bit: open=false → false, open=true → true |
not verified (W108) VERIFY-IN-GAME: direction is east 0, west 1, south 2, north 3 for Java facing (per GeyserMC mappings-generator BlockMappers) |
| wool | color: white / orange / magenta / light_blue / yellow / lime / pink / gray / light_gray / cyan / purple / blue / brown / green / red / black (default white) | color=white → minecraft:white_woolcolor=orange → minecraft:orange_woolcolor=magenta → minecraft:magenta_woolcolor=light_blue → minecraft:light_blue_woolcolor=yellow → minecraft:yellow_woolcolor=lime → minecraft:lime_woolcolor=pink → minecraft:pink_woolcolor=gray → minecraft:gray_woolcolor=light_gray → minecraft:light_gray_woolcolor=cyan → minecraft:cyan_woolcolor=purple → minecraft:purple_woolcolor=blue → minecraft:blue_woolcolor=brown → minecraft:brown_woolcolor=green → minecraft:green_woolcolor=red → minecraft:red_woolcolor=black → minecraft:black_wool |
none | not verified (W108) |