From 2b1d96ab37cd0ade1ba6e21e9d447aeaea14868d Mon Sep 17 00:00:00 2001 From: "kepler155c@gmail.com" Date: Mon, 4 Sep 2017 17:41:46 -0400 Subject: [PATCH] builder using command computer --- startup | 2 +- sys/apis/blocks.lua | 377 +---- sys/apis/schematic.lua | 1 - sys/apis/tableDB.lua | 4 +- sys/apps/builder.lua | 38 +- sys/etc/blocks.json | 3141 +++++++++++++++++----------------------- 6 files changed, 1461 insertions(+), 2102 deletions(-) diff --git a/startup b/startup index 06bba38..e4561de 100644 --- a/startup +++ b/startup @@ -30,7 +30,7 @@ term.setCursorPos(1, 1) print('Starting OS') print() print('Press any key for menu') -local timerId = os.startTimer(.75) +local timerId = os.startTimer(1.5) while true do local e, id = os.pullEvent() if e == 'timer' and id == timerId then diff --git a/sys/apis/blocks.lua b/sys/apis/blocks.lua index 3b0d03c..ae96706 100644 --- a/sys/apis/blocks.lua +++ b/sys/apis/blocks.lua @@ -5,6 +5,7 @@ local JSON = require('json') -- see https://github.com/Khroki/MCEdit-Unified/blob/master/pymclevel/minecraft.yaml -- see https://github.com/Khroki/MCEdit-Unified/blob/master/Items/minecraft/blocks.json +--[[-- nameDB --]]-- local nameDB = TableDB({ fileName = 'blocknames.db' }) @@ -35,31 +36,10 @@ function nameDB:lookupName(id, dmg) end end -local blockDB = TableDB({ - fileName = 'block.db', - tabledef = { - autokeys = false, - columns = { - { name = 'key', type = 'key', length = 8 }, - { name = 'id', type = 'number', length = 5 }, - { name = 'dmg', type = 'number', length = 2 }, - { name = 'name', type = 'string', length = 35 }, - { name = 'refname', type = 'string', length = 35 }, - { name = 'strId', type = 'string', length = 80 }, - } - } -}) +--[[-- blockDB --]]-- +local blockDB = TableDB() -function blockDB:load(dir) - self.fileName = fs.combine(dir, self.fileName) - if fs.exists(self.fileName) then - TableDB.load(self) - else - self:seedDB(dir) - end -end - -function blockDB:seedDB(dir) +function blockDB:load() local blocks = JSON.decodeFromFile(fs.combine('sys/etc', 'blocks.json')) @@ -70,50 +50,40 @@ function blockDB:seedDB(dir) for strId, block in pairs(blocks) do strId = 'minecraft:' .. strId if type(block.name) == 'string' then - self:add(block.id, 0, block.name, strId) + self:add(block.id, 0, block.name, strId, block.place) else for nid,name in pairs(block.name) do - self:add(block.id, nid - 1, name, strId) + self:add(block.id, nid - 1, name, strId, block.place) end end end - - self.dirty = true - -- self:flush() end - -function blockDB:lookup(id, dmg) +function blockDB:lookup(id, dmg) if not id then return end - if not id or not dmg then error('blockDB:lookup: nil passed', 2) end - local key = id .. ':' .. dmg - return self.data[key] + return self.data[id .. ':' .. dmg] end -function blockDB:add(id, dmg, name, strId) +function blockDB:add(id, dmg, name, strId, place) local key = id .. ':' .. dmg - + TableDB.add(self, key, { id = id, dmg = dmg, - key = key, name = name, strId = strId, + place = place, }) end --[[-- placementDB --]]-- -- in memory table that expands the standardBlock and blockType tables for each item/dmg/placement combination -local placementDB = TableDB({ - fileName = 'placement.db' -}) +local placementDB = TableDB() -function placementDB:load(dir, sbDB, btDB) - - self.fileName = fs.combine(dir, self.fileName) +function placementDB:load(sbDB, btDB) for k,blockType in pairs(sbDB.data) do local bt = btDB.data[blockType] @@ -123,12 +93,26 @@ function placementDB:load(dir, sbDB, btDB) local id, dmg = string.match(k, '(%d+):*(%d+)') self:addSubsForBlockType(tonumber(id), tonumber(dmg), bt) end - --- testing - self.dirty = true - --self:flush() end +function placementDB:load2(sbDB, btDB) + + for k,v in pairs(sbDB.data) do + if v.place then + local bt = btDB.data[v.place] + if not bt then + error('missing block type: ' .. v.place) + end + local id, dmg = string.match(k, '(%d+):*(%d+)') + self:addSubsForBlockType(tonumber(id), tonumber(dmg), bt) + end + end + + -- special case for quartz pillars + self:addSubsForBlockType(155, 2, btDB.data['quartz-pillar']) +end + + function placementDB:addSubsForBlockType(id, dmg, bt) for _,sub in pairs(bt) do local odmg = sub.odmg @@ -153,215 +137,26 @@ function placementDB:addSubsForBlockType(id, dmg, bt) end function placementDB:add(id, dmg, sid, sdmg, direction, extra) - if not id or not dmg then error('placementDB:add: nil passed', 2) end - - local key = id .. ':' .. dmg - if direction and #direction == 0 then direction = nil end - self.data[key] = { - id = id, -- numeric ID - dmg = dmg, -- dmg with placement info - key = key, - sid = sid, -- string ID - sdmg = sdmg, -- dmg without placement info + local entry = { + oid = id, -- numeric ID + odmg = dmg, -- dmg with placement info + id = sid, -- string ID + dmg = sdmg, -- dmg without placement info direction = direction, - extra = extra, } -end - ---[[-- StandardBlockDB --]]-- -local standardBlockDB = TableDB({ - fileName = 'standard.db', - tabledef = { - autokeys = false, - type = 'simple', - columns = { - { label = 'Key', type = 'key', length = 8 }, - { label = 'Block Type', type = 'string', length = 20 } - } - } -}) - -function standardBlockDB:load(dir) - self.fileName = fs.combine(dir, self.fileName) - - if fs.exists(self.fileName) then - TableDB.load(self) - else - self:seedDB() + if extra then + Util.merge(entry, extra) end -end - -function standardBlockDB:seedDB() - self.data = { - [ '6:0' ] = 'sapling', - [ '6:1' ] = 'sapling', - [ '6:2' ] = 'sapling', - [ '6:3' ] = 'sapling', - [ '6:4' ] = 'sapling', - [ '6:5' ] = 'sapling', - [ '8:0' ] = 'truncate', - [ '9:0' ] = 'truncate', - [ '17:0' ] = 'wood', - [ '17:1' ] = 'wood', - [ '17:2' ] = 'wood', - [ '17:3' ] = 'wood', - [ '18:0' ] = 'leaves', - [ '18:1' ] = 'leaves', - [ '18:2' ] = 'leaves', - [ '18:3' ] = 'leaves', - [ '23:0' ] = 'dispenser', - [ '26:0' ] = 'bed', - [ '27:0' ] = 'adp-rail', - [ '28:0' ] = 'adp-rail', - [ '29:0' ] = 'piston', - [ '33:0' ] = 'piston', - [ '34:0' ] = 'air', - [ '36:0' ] = 'air', - [ '44:0' ] = 'slab', - [ '44:1' ] = 'slab', - [ '44:2' ] = 'slab', - [ '44:3' ] = 'slab', - [ '44:4' ] = 'slab', - [ '44:5' ] = 'slab', - [ '44:6' ] = 'slab', - [ '44:7' ] = 'slab', - [ '50:0' ] = 'torch', - [ '51:0' ] = 'flatten', - [ '53:0' ] = 'stairs', - [ '54:0' ] = 'chest-furnace', - [ '55:0' ] = 'flatten', - [ '59:0' ] = 'flatten', - [ '60:0' ] = 'flatten', - [ '61:0' ] = 'chest-furnace', - [ '62:0' ] = 'chest-furnace', - [ '63:0' ] = 'signpost', - [ '64:0' ] = 'door', - [ '65:0' ] = 'wallsign-ladder', - [ '66:0' ] = 'rail', - [ '67:0' ] = 'stairs', - [ '68:0' ] = 'wallsign-ladder', - [ '69:0' ] = 'lever', - [ '71:0' ] = 'door', - [ '75:0' ] = 'torch', - [ '76:0' ] = 'torch', - [ '77:0' ] = 'button', - [ '78:0' ] = 'flatten', - [ '81:0' ] = 'flatten', - [ '83:0' ] = 'flatten', - [ '84:0' ] = 'flatten', -- jukebox - [ '86:0' ] = 'pumpkin', - [ '90:0' ] = 'air', - [ '91:0' ] = 'pumpkin', - [ '92:0' ] = 'flatten', -- cake - [ '93:0' ] = 'repeater', - [ '94:0' ] = 'repeater', - [ '96:0' ] = 'trapdoor', - [ '99:0' ] = 'flatten', - [ '100:0' ] = 'flatten', - [ '106:0' ] = 'vine', - [ '107:0' ] = 'gate', - [ '108:0' ] = 'stairs', - [ '109:0' ] = 'stairs', - [ '114:0' ] = 'stairs', - [ '115:0' ] = 'flatten', - [ '117:0' ] = 'flatten', - [ '118:0' ] = 'cauldron', - [ '120:0' ] = 'flatten', -- end portal - [ '126:0' ] = 'slab', - [ '126:1' ] = 'slab', - [ '126:2' ] = 'slab', - [ '126:3' ] = 'slab', - [ '126:4' ] = 'slab', - [ '126:5' ] = 'slab', - [ '127:0' ] = 'cocoa', - [ '128:0' ] = 'stairs', - [ '130:0' ] = 'chest-furnace', - [ '131:0' ] = 'tripwire', - [ '132:0' ] = 'flatten', - [ '134:0' ] = 'stairs', - [ '135:0' ] = 'stairs', - [ '136:0' ] = 'stairs', - [ '140:0' ] = 'flatten', - [ '141:0' ] = 'flatten', - [ '142:0' ] = 'flatten', - [ '143:0' ] = 'button', - [ '144:0' ] = 'mobhead', - [ '145:0' ] = 'anvil', - [ '146:0' ] = 'chest-furnace', - [ '149:0' ] = 'comparator', - [ '151:0' ] = 'flatten', - [ '154:0' ] = 'hopper', - [ '155:2' ] = 'quartz-pillar', - [ '156:0' ] = 'stairs', - [ '157:0' ] = 'adp-rail', - [ '158:0' ] = 'dispenser', - [ '161:0' ] = 'leaves', - [ '161:1' ] = 'leaves', - [ '162:0' ] = 'wood', - [ '162:1' ] = 'wood', - [ '163:0' ] = 'stairs', - [ '164:0' ] = 'stairs', - [ '167:0' ] = 'trapdoor', - [ '170:0' ] = 'hay-bale', -- hay bale - [ '175:0' ] = 'largeplant', - [ '175:1' ] = 'largeplant', - [ '175:2' ] = 'largeplant', -- double tallgrass - an alternative would be to use grass as the bottom part, bonemeal as top part - [ '175:3' ] = 'largeplant', - [ '175:4' ] = 'largeplant', - [ '175:5' ] = 'largeplant', - [ '176:0' ] = 'signpost', - [ '177:0' ] = 'wallsign-ladder', - [ '178:0' ] = 'truncate', - [ '180:0' ] = 'stairs', - [ '182:0' ] = 'slab', - [ '183:0' ] = 'gate', - [ '184:0' ] = 'gate', - [ '185:0' ] = 'gate', - [ '186:0' ] = 'gate', - [ '187:0' ] = 'gate', - [ '193:0' ] = 'door', - [ '194:0' ] = 'door', - [ '195:0' ] = 'door', - [ '196:0' ] = 'door', - [ '197:0' ] = 'door', - [ '198:0' ] = 'end_rod', -- end rod - [ '205:0' ] = 'slab', - [ '210:0' ] = 'flatten', - [ '355:0' ] = 'bed', - [ '356:0' ] = 'repeater', - [ '404:0' ] = 'comparator', - } - self.dirty = true - -- self:flush() + + self.data[id .. ':' .. dmg] = entry end --[[-- BlockTypeDB --]]-- -local blockTypeDB = TableDB({ - fileName = 'blocktype.db', - tabledef = { - autokeys = true, - columns = { - { name = 'odmg', type = 'number', length = 2 }, - { name = 'sid', type = 'number', length = 5 }, - { name = 'sdmg', type = 'number', length = 2 }, - { name = 'dir', type = 'string', length = 20 }, - } - } -}) - -function blockTypeDB:load(dir) - self.fileName = fs.combine(dir, self.fileName) - - if fs.exists(self.fileName) then - TableDB.load(self) - else - self:seedDB() - end -end +local blockTypeDB = TableDB() function blockTypeDB:addTemp(blockType, subs) local bt = self.data[blockType] @@ -381,7 +176,7 @@ function blockTypeDB:addTemp(blockType, subs) self.dirty = true end -function blockTypeDB:seedDB() +function blockTypeDB:load() blockTypeDB:addTemp('stairs', { { 0, nil, 0, 'east-up' }, @@ -718,48 +513,12 @@ function blockTypeDB:seedDB() { '+8', nil, nil }, { '+12', nil, nil }, }) - blockTypeDB:addTemp('air', { - { 0, 'minecraft:air', 0 }, - { 1, 'minecraft:air', 0 }, - { 2, 'minecraft:air', 0 }, - { 3, 'minecraft:air', 0 }, - { 4, 'minecraft:air', 0 }, - { 5, 'minecraft:air', 0 }, - { 6, 'minecraft:air', 0 }, - { 7, 'minecraft:air', 0 }, - { 8, 'minecraft:air', 0 }, - { 9, 'minecraft:air', 0 }, - { 10, 'minecraft:air', 0 }, - { 11, 'minecraft:air', 0 }, - { 12, 'minecraft:air', 0 }, - { 13, 'minecraft:air', 0 }, - { 14, 'minecraft:air', 0 }, - { 15, 'minecraft:air', 0 }, - }) - blockTypeDB:addTemp('truncate', { - { 0, nil, 0 }, - { 1, 'minecraft:air', 0 }, - { 2, 'minecraft:air', 0 }, - { 3, 'minecraft:air', 0 }, - { 4, 'minecraft:air', 0 }, - { 5, 'minecraft:air', 0 }, - { 6, 'minecraft:air', 0 }, - { 7, 'minecraft:air', 0 }, - { 8, 'minecraft:air', 0 }, - { 9, 'minecraft:air', 0 }, - { 10, 'minecraft:air', 0 }, - { 11, 'minecraft:air', 0 }, - { 12, 'minecraft:air', 0 }, - { 13, 'minecraft:air', 0 }, - { 14, 'minecraft:air', 0 }, - { 15, 'minecraft:air', 0 }, - }) blockTypeDB:addTemp('slab', { { '+0', nil, nil, 'bottom' }, { '+8', nil, nil, 'top' }, }) blockTypeDB:addTemp('largeplant', { - { '+0', nil, nil, 'east-door' }, -- should use a generic double tall keyword + { '+0', nil, nil, 'east-door', { twoHigh = true } }, -- should use a generic double tall keyword { '+8', 'minecraft:air', 0 }, }) blockTypeDB:addTemp('wood', { @@ -769,14 +528,14 @@ function blockTypeDB:seedDB() { '+12', nil, nil }, }) blockTypeDB:addTemp('door', { - { 0, nil, 0, 'east-door' }, - { 1, nil, 0, 'south-door' }, - { 2, nil, 0, 'west-door' }, - { 3, nil, 0, 'north-door' }, - { 4, nil, 0, 'east-door' }, - { 5, nil, 0, 'south-door' }, - { 6, nil, 0, 'west-door' }, - { 7, nil, 0, 'north-door' }, + { 0, nil, 0, 'east-door', { twoHigh = true } }, + { 1, nil, 0, 'south-door', { twoHigh = true } }, + { 2, nil, 0, 'west-door', { twoHigh = true } }, + { 3, nil, 0, 'north-door', { twoHigh = true } }, + { 4, nil, 0, 'east-door', { twoHigh = true } }, + { 5, nil, 0, 'south-door', { twoHigh = true } }, + { 6, nil, 0, 'west-door', { twoHigh = true } }, + { 7, nil, 0, 'north-door', { twoHigh = true } }, { 8,'minecraft:air', 0 }, { 9,'minecraft:air', 0 }, { 10,'minecraft:air', 0 }, @@ -800,8 +559,6 @@ function blockTypeDB:seedDB() { 10, nil, 0, 'north-block' }, { 11, nil, 0, 'east-block' }, }) - self.dirty = true - -- self:flush() end local Blocks = class() @@ -811,11 +568,23 @@ function Blocks:init(args) self.blockDB = blockDB self.nameDB = nameDB - blockDB:load(self.dir) - standardBlockDB:load(self.dir) - blockTypeDB:load(self.dir) + blockDB:load() +-- standardBlockDB:load() + blockTypeDB:load() nameDB:load(self.dir, blockDB) - placementDB:load(self.dir, standardBlockDB, blockTypeDB) +-- placementDB:load(standardBlockDB, blockTypeDB) + placementDB:load2(blockDB, blockTypeDB) + +-- _G._b = blockDB +-- _G._s = standardBlockDB +-- _G._bt = blockTypeDB +-- _G._p = placementDB + +-- Util.writeTable('pb1.lua', placementDB.data) + +-- placementDB.data = { } + +-- Util.writeTable('pb2.lua', placementDB.data) end -- for an ID / dmg (with placement info) - return the correct block (without the placment info embedded in the dmg) @@ -823,15 +592,9 @@ function Blocks:getPlaceableBlock(id, dmg) local p = placementDB:get({id, dmg}) if p then - return { - id = p.sid, - dmg = p.sdmg, - direction = p.direction, - extra = p.extra, - odmg = dmg - } + return Util.shallowCopy(p) end - + local b = blockDB:get({id, dmg}) if b then return { id = b.strId, dmg = b.dmg } @@ -841,7 +604,7 @@ function Blocks:getPlaceableBlock(id, dmg) if b then return { id = b.strId, dmg = b.dmg } end - + return { id = id, dmg = dmg } end diff --git a/sys/apis/schematic.lua b/sys/apis/schematic.lua index 90de4e2..3d311ad 100644 --- a/sys/apis/schematic.lua +++ b/sys/apis/schematic.lua @@ -715,7 +715,6 @@ function Schematic:determineBlockPlacement(y) local hi = turtle.getHeadingInfo(doorDirections[d]) b.heading = hi.heading - b.twoHigh = true self:addPlacementChain(chains, { { x = b.x, z = b.z, y = b.y }, diff --git a/sys/apis/tableDB.lua b/sys/apis/tableDB.lua index e794976..d02def5 100644 --- a/sys/apis/tableDB.lua +++ b/sys/apis/tableDB.lua @@ -8,7 +8,7 @@ function TableDB:init(args) data = { }, tabledef = { }, } - Util.merge(defaults, args) -- refactor + Util.merge(defaults, args) Util.merge(self, defaults) end @@ -43,7 +43,7 @@ end function TableDB:flush() if self.dirty then Util.writeTable(self.fileName, { - tabledef = self.tabledef, + -- tabledef = self.tabledef, data = self.data, }) self.dirty = false diff --git a/sys/apps/builder.lua b/sys/apps/builder.lua index 31f086c..145d9ff 100644 --- a/sys/apps/builder.lua +++ b/sys/apps/builder.lua @@ -1,17 +1,17 @@ if not turtle and not commands then - error('Must be run on a turtle') + error('Must be run on a turtle or a command computer') end require = requireInjector(getfenv(1)) -local class = require('class') -local Event = require('event') -local Message = require('message') -local UI = require('ui') -local Schematic = require('schematic') -local TableDB = require('tableDB') +local class = require('class') +local Event = require('event') +local Message = require('message') +local UI = require('ui') +local Schematic = require('schematic') +local TableDB = require('tableDB') local MEProvider = require('meProvider') -local Blocks = require('blocks') -local Point = require('point') +local Blocks = require('blocks') +local Point = require('point') local ChestProvider = require('chestProvider') if os.getVersion() == 1.8 then @@ -65,6 +65,8 @@ function subDB:seedDB() [ "minecraft:unpowered_comparator:0" ] = "minecraft:comparator:0", [ "minecraft:powered_comparator:0" ] = "minecraft:comparator:0", [ "minecraft:piston_head:0" ] = "minecraft:air:0", + [ "minecraft:piston_extension:0" ] = "minecraft:air:0", + [ "minecraft:minecraft:portal:0" ] = "minecraft:air:0", [ "minecraft:double_wooden_slab:0" ] = "minecraft:planks:0", [ "minecraft:double_wooden_slab:1" ] = "minecraft:planks:1", [ "minecraft:double_wooden_slab:2" ] = "minecraft:planks:2", @@ -369,10 +371,8 @@ function Builder:substituteBlocks(throttle) -- replace schematic block type with substitution local pb = blocks:getPlaceableBlock(b.id, b.dmg) - b.id = pb.id - b.dmg = pb.dmg - b.direction = pb.direction - b.extra = pb.extra + Util.merge(b, pb) + b.odmg = pb.odmg or pb.dmg local sub = subDB:get({ b.id, b.dmg }) @@ -1069,8 +1069,8 @@ function Builder:placeDirectionalBlock(b, slot, travelPlane) b.placed = self:place(slot) end - if b.extra and b.extra.facing then - self:rotateBlock('down', b.extra.facing) + if b.facing then + self:rotateBlock('down', b.facing) end -- debug @@ -1163,7 +1163,7 @@ function Builder:build() direction = -1 last = 1 turtle.status = 'destroying' - elseif self.isCommandComputer then + elseif not self.isCommandComputer then travelPlane = self:findTravelPlane(self.index) turtle.status = 'building' if not self.confirmFacing then @@ -1220,7 +1220,9 @@ function Builder:build() if b.twoHigh then local _, topBlock = schematic:findIndexAt(b.x, b.z, b.y + 1, true) - placeBlock(id, topBlock.odmg, b.x, b.y + 1, b.z) + if topBlock then + placeBlock(id, topBlock.odmg, b.x, b.y + 1, b.z) + end end elseif self.mode == 'destroy' then @@ -1287,7 +1289,7 @@ function Builder:build() end end if self.mode == 'destroy' then - self:saveProgress(math.max(self.index - 1, 1)) + self:saveProgress(math.max(self.index, 1)) else self:saveProgress(self.index + 1) end diff --git a/sys/etc/blocks.json b/sys/etc/blocks.json index 8ea39fc..99b7ef3 100644 --- a/sys/etc/blocks.json +++ b/sys/etc/blocks.json @@ -1,1775 +1,1370 @@ { - "air": { - "id": 0, - "name": "Air", - "obtainable": false, - "maxdamage": 0, - "stacksize": 64 - }, - "stone": { - "id": 1, - "name": ["Stone", - "Granite", - "Polished Granite", - "Diorite", - "Polished Diorite", - "Andesite", - "Polished Andesite"], - "obtainable": true, - "maxdamage": 6, - "stacksize": 64 - }, - "grass": { - "id": 2, - "name": "Grass Block", - "obtainable": true, - "maxdamage": 0, - "stacksize": 64 - }, - "dirt": { - "id": 3, - "name": ["Dirt", - "Coarse Dirt", - "Podzol"], - "obtainable": true, - "maxdamage": 2, - "stacksize": 64 - }, - "cobblestone": { - "id": 4, - "name": "Cobblestone", - "obtainable": true, - "maxdamage": 0, - "stacksize": 64 - }, - "planks": { - "id": 5, - "name": ["Oak Wood Planks", - "Spruce Wood Planks", - "Birch Wood Planks", - "Jungle Wood Planks", - "Acacia Wood Planks", - "Dark Oak Wood Planks"], - "obtainable": true, - "maxdamage": 5, - "stacksize": 64 - }, - "sapling": { - "id": 6, - "name": ["Oak Sapling", - "Spruce Sapling", - "Birch Sapling", - "Jungle Sapling", - "Acacia Sapling", - "Dark Oak Sapling"], - "obtainable": true, - "maxdamage": 5, - "stacksize": 64 - }, - "bedrock": { - "id": 7, - "name": "Bedrock", - "obtainable": true, - "maxdamage": 0, - "stacksize": 64 - }, - "flowing_water": { - "id": 8, - "name": "Water", - "obtainable": false, - "maxdamage": 0, - "stacksize": 64 - }, - "water": { - "id": 9, - "name": "Water", - "obtainable": false, - "maxdamage": 0, - "stacksize": 64 - }, - "flowing_lava": { - "id": 10, - "name": "Lava", - "obtainable": false, - "maxdamage": 0, - "stacksize": 64 - }, - "lava": { - "id": 11, - "name": "Lava", - "obtainable": false, - "maxdamage": 0, - "stacksize": 64 - }, - "sand": { - "id": 12, - "name": ["Sand", - "Red Sand"], - "obtainable": true, - "maxdamage": 1, - "stacksize": 64 - }, - "gravel": { - "id": 13, - "name": "Gravel", - "obtainable": true, - "maxdamage": 0, - "stacksize": 64 - }, - "gold_ore": { - "id": 14, - "name": "Gold Ore", - "obtainable": true, - "maxdamage": 0, - "stacksize": 64 - }, - "iron_ore": { - "id": 15, - "name": "Iron Ore", - "obtainable": true, - "maxdamage": 0, - "stacksize": 64 - }, - "coal_ore": { - "id": 16, - "name": "Coal Ore", - "obtainable": true, - "maxdamage": 0, - "stacksize": 64 - }, - "log": { - "id": 17, - "name": ["Oak Wood", - "Spruce Wood", - "Birch Wood", - "Jungle Wood"], - "obtainable": true, - "maxdamage": 3, - "stacksize": 64 - }, - "leaves": { - "id": 18, - "name": ["Oak Leaves", - "Spruce Leaves", - "Birch Leaves", - "Jungle Leaves"], - "obtainable": true, - "maxdamage": 3, - "stacksize": 64 - }, - "sponge": { - "id": 19, - "name": ["Sponge", - "Wet Sponge"], - "obtainable": true, - "maxdamage": 1, - "stacksize": 64 - }, - "glass": { - "id": 20, - "name": "Glass", - "obtainable": true, - "maxdamage": 0, - "stacksize": 64 - }, - "lapis_ore": { - "id": 21, - "name": "Lapis Lazuli Ore", - "obtainable": true, - "maxdamage": 0, - "stacksize": 64 - }, - "lapis_block": { - "id": 22, - "name": "Lapis Lazuli Block", - "obtainable": true, - "maxdamage": 0, - "stacksize": 64 - }, - "dispenser": { - "id": 23, - "name": "Dispenser", - "obtainable": true, - "maxdamage": 0, - "stacksize": 64 - }, - "sandstone": { - "id": 24, - "name": ["Sandstone", - "Chiseled Sandstone", - "Smooth Sandstone"], - "maxdamage": 2, - "stacksize": 64 - }, - "noteblock": { - "id": 25, - "name": "Note Block", - "maxdamage": 0, - "stacksize": 64 - }, - "bed": { - "id": 26, - "name": "Bed", - "maxdamage": 0, - "stacksize": 64 - }, - "golden_rail": { - "id": 27, - "name": "Powered Rail", - "maxdamage": 0, - "stacksize": 64 - }, - "detector_rail": { - "id": 28, - "name": "Detector Rail", - "maxdamage": 0, - "stacksize": 64 - }, - "sticky_piston": { - "id": 29, - "name": "Sticky Piston", - "maxdamage": 0, - "stacksize": 64 - }, - "web": { - "id": 30, - "name": "Cobweb", - "maxdamage": 0, - "stacksize": 64 - }, - "tallgrass": { - "id": 31, - "name": ["Shrub", - "Grass", - "Fern"], - "obtainable": true, - "maxdamage": 2, - "stacksize": 64 - }, - "deadbush": { - "id": 32, - "name": "Dead Bush", - "maxdamage": 0, - "stacksize": 64 - }, - "piston": { - "id": 33, - "name": "Piston", - "maxdamage": 0, - "stacksize": 64 - }, - "piston_head": { - "id": 34, - "name": "Piston Extension", - "maxdamage": 0, - "stacksize": 64 - }, - "wool": { - "id": 35, - "name": ["White Wool", - "Orange Wool", - "Magenta Wool", - "Light Blue Wool", - "Yellow Wool", - "Lime Wool", - "Pink Wool", - "Gray Wool", - "Light Gray Wool", - "Cyan Wool", - "Purple Wool", - "Blue Wool", - "Brown Wool", - "Green Wool", - "Red Wool", - "Black Wool"], - "maxdamage": 15, - "stacksize": 64 - }, - "piston_extension": { - "id": 36, - "name": "Block moved by Piston", - "maxdamage": 0, - "stacksize": 64 - }, - "yellow_flower": { - "id": 37, - "name": "Dandelion", - "maxdamage": 0, - "stacksize": 64 - }, - "red_flower": { - "id": 38, - "name": ["Poppy", - "Blue Orchid", - "Allium", - "Azure Bluet", - "Red Tulip", - "Orange Tulip", - "White Tulip", - "Pink Tulip", - "Oxeye Daisy"], - "maxdamage": 8, - "stacksize": 64 - }, - "brown_mushroom": { - "id": 39, - "name": "Brown Mushroom", - "maxdamage": 0, - "stacksize": 64 - }, - "red_mushroom": { - "id": 40, - "name": "Red Mushroom", - "maxdamage": 0, - "stacksize": 64 - }, - "gold_block": { - "id": 41, - "name": "Block of Gold", - "maxdamage": 0, - "stacksize": 64 - }, - "iron_block": { - "id": 42, - "name": "Block of Iron", - "maxdamage": 0, - "stacksize": 64 - }, - "double_stone_slab": { - "id": 43, - "name": "Double Stone Slab", - "maxdamage": 0, - "stacksize": 64 - }, - "stone_slab": { - "id": 44, - "name": ["Stone Slab", - "Sandstone Slab", - "Wooden Slab", - "Cobblestone Slab", - "Bricks Slab", - "Stone Bricks Slab", - "Nether Brick Slab", - "Quartz Slab"], - "maxdamage": 3, - "stacksize": 64 - }, - "brick_block": { - "id": 45, - "name": "Bricks", - "maxdamage": 0, - "stacksize": 64 - }, - "tnt": { - "id": 46, - "name": "TNT", - "maxdamage": 0, - "stacksize": 64 - }, - "bookshelf": { - "id": 47, - "name": "Bookshelf", - "maxdamage": 0, - "stacksize": 64 - }, - "mossy_cobblestone": { - "id": 48, - "name": "Moss Stone", - "maxdamage": 0, - "stacksize": 64 - }, - "obsidian": { - "id": 49, - "name": "Obsidian", - "maxdamage": 0, - "stacksize": 64 - }, - "torch": { - "id": 50, - "name": "Torch", - "maxdamage": 0, - "stacksize": 64 - }, - "fire": { - "id": 51, - "name": "Fire", - "maxdamage": 0, - "stacksize": 64 - }, - "mob_spawner": { - "id": 52, - "name": "Monster Spawner", - "maxdamage": 0, - "stacksize": 64 - }, - "oak_stairs": { - "id": 53, - "name": "Oak Wood Stairs", - "maxdamage": 0, - "stacksize": 64 - }, - "chest": { - "id": 54, - "name": "Chest", - "maxdamage": 0, - "stacksize": 64 - }, - "redstone_wire": { - "id": 55, - "name": "Redstone Wire", - "maxdamage": 0, - "stacksize": 64 - }, - "diamond_ore": { - "id": 56, - "name": "Diamond Ore", - "maxdamage": 0, - "stacksize": 64 - }, - "diamond_block": { - "id": 57, - "name": "Block of Diamond", - "maxdamage": 0, - "stacksize": 64 - }, - "crafting_table": { - "id": 58, - "name": "Crafting Table", - "maxdamage": 0, - "stacksize": 64 - }, - "wheat": { - "id": 59, - "name": "Wheat", - "maxdamage": 0, - "stacksize": 64 - }, - "farmland": { - "id": 60, - "name": "Farmland", - "maxdamage": 0, - "stacksize": 64 - }, - "furnace": { - "id": 61, - "name": "Furnace", - "maxdamage": 0, - "stacksize": 64 - }, - "lit_furnace": { - "id": 62, - "name": "Burning Furnace", - "maxdamage": 0, - "stacksize": 64 - }, - "standing_sign": { - "id": 63, - "name": "Sign", - "maxdamage": 0, - "stacksize": 64 - }, - "wooden_door": { - "id": 64, - "name": "Oak Door", - "maxdamage": 0, - "stacksize": 64 - }, - "ladder": { - "id": 65, - "name": "Ladder", - "maxdamage": 0, - "stacksize": 64 - }, - "rail": { - "id": 66, - "name": "Rail", - "maxdamage": 0, - "stacksize": 64 - }, - "stone_stairs": { - "id": 67, - "name": "Cobblestone Stairs", - "maxdamage": 0, - "stacksize": 64 - }, - "wall_sign": { - "id": 68, - "name": "Sign", - "maxdamage": 0, - "stacksize": 64 - }, - "lever": { - "id": 69, - "name": "Lever", - "maxdamage": 0, - "stacksize": 64 - }, - "stone_pressure_plate": { - "id": 70, - "name": "Stone Pressure Plate", - "maxdamage": 0, - "stacksize": 64 - }, - "iron_door": { - "id": 71, - "name": "Iron Door", - "maxdamage": 0, - "stacksize": 64 - }, - "wooden_pressure_plate": { - "id": 72, - "name": "Wooden Pressure Plate", - "maxdamage": 0, - "stacksize": 64 - }, - "redstone_ore": { - "id": 73, - "name": "Redstone Ore", - "maxdamage": 0, - "stacksize": 64 - }, - "lit_redstone_ore": { - "id": 74, - "name": "Redstone Ore", - "maxdamage": 0, - "stacksize": 64 - }, - "unlit_redstone_torch": { - "id": 75, - "name": "Redstone Torch (inactive)", - "maxdamage": 0, - "stacksize": 64 - }, - "redstone_torch": { - "id": 76, - "name": "Redstone Torch (active)", - "obtainable": true, - "maxdamage": 0, - "stacksize": 64 - }, - "stone_button": { - "id": 77, - "name": "Stone Button", - "maxdamage": 0, - "stacksize": 64 - }, - "snow_layer": { - "id": 78, - "name": "Snow", - "maxdamage": 0, - "stacksize": 64 - }, - "ice": { - "id": 79, - "name": "Ice", - "maxdamage": 0, - "stacksize": 64 - }, - "snow": { - "id": 80, - "name": "Snow", - "maxdamage": 0, - "stacksize": 64 - }, - "cactus": { - "id": 81, - "name": "Cactus", - "maxdamage": 0, - "stacksize": 64 - }, - "clay": { - "id": 82, - "name": "Clay", - "maxdamage": 0, - "stacksize": 64 - }, - "reeds": { - "id": 83, - "name": "Sugar Cane", - "maxdamage": 0, - "stacksize": 64 - }, - "jukebox": { - "id": 84, - "name": "Jukebox", - "maxdamage": 0, - "stacksize": 64 - }, - "fence": { - "id": 85, - "name": "Fence", - "maxdamage": 0, - "stacksize": 64 - }, - "pumpkin": { - "id": 86, - "name": "Pumpkin", - "maxdamage": 0, - "stacksize": 64 - }, - "netherrack": { - "id": 87, - "name": "Netherrack", - "maxdamage": 0, - "stacksize": 64 - }, - "soul_sand": { - "id": 88, - "name": "Soul Sand", - "maxdamage": 0, - "stacksize": 64 - }, - "glowstone": { - "id": 89, - "name": "Glowstone", - "maxdamage": 0, - "stacksize": 64 - }, - "portal": { - "id": 90, - "name": "Portal", - "maxdamage": 0, - "stacksize": 64 - }, - "lit_pumpkin": { - "id": 91, - "name": "Jack o'Lantern", - "maxdamage": 0, - "stacksize": 64 - }, - "cake": { - "id": 92, - "name": "Cake", - "maxdamage": 0, - "stacksize": 64 - }, - "unpowered_repeater": { - "id": 93, - "name": "Redstone Repeater (inactive)", - "maxdamage": 0, - "stacksize": 64 - }, - "powered_repeater": { - "id": 94, - "name": "Redstone Repeater (active)", - "maxdamage": 0, - "stacksize": 64 - }, - "stained_glass": { - "id": 95, - "name": ["White Stained Glass", - "Orange Stained Glass", - "Magenta Stained Glass", - "Light Blue Stained Glass", - "Yellow Stained Glass", - "Lime Stained Glass", - "Pink Stained Glass", - "Gray Stained Glass", - "Light Gray Stained Glass", - "Cyan Stained Glass", - "Purple Stained Glass", - "Blue Stained Glass", - "Brown Stained Glass", - "Green Stained Glass", - "Red Stained Glass", - "Black Stained Glass"], - "maxdamage": 15, - "stacksize": 64 - }, - "trapdoor": { - "id": 96, - "name": "Trapdoor", - "maxdamage": 0, - "stacksize": 64 - }, - "monster_egg": { - "id": 97, - "name": ["Stone Monster Egg", - "Cobblestone Monster Egg", - "Stone Brick Monster Egg", - "Mossy Stone Brick Monster Egg", - "Cracked Stone Brick Monster Egg", - "Chiseled Stone Brick Monster Egg"], - "maxdamage": 5, - "stacksize": 64 - }, - "stonebrick": { - "id": 98, - "name": ["Stone Bricks", - "Mossy Stone Bricks", - "Cracked Stone Bricks", - "Chiseled Stone Bricks"], - "maxdamage": 3, - "stacksize": 64 - }, - "brown_mushroom_block": { - "id": 99, - "name": "Brown Mushroom (block)", - "maxdamage": 0, - "stacksize": 64 - }, - "red_mushroom_block": { - "id": 100, - "name": "Red Mushroom (block)", - "maxdamage": 0, - "stacksize": 64 - }, - "iron_bars": { - "id": 101, - "name": "Iron Bars", - "maxdamage": 0, - "stacksize": 64 - }, - "glass_pane": { - "id": 102, - "name": "Glass Pane", - "maxdamage": 0, - "stacksize": 64 - }, - "melon_block": { - "id": 103, - "name": "Melon", - "maxdamage": 0, - "stacksize": 64 - }, - "pumpkin_stem": { - "id": 104, - "name": "Pumpkin Stem", - "maxdamage": 0, - "stacksize": 64 - }, - "melon_stem": { - "id": 105, - "name": "Melon Stem", - "maxdamage": 0, - "stacksize": 64 - }, - "vine": { - "id": 106, - "name": "Vines", - "maxdamage": 0, - "stacksize": 64 - }, - "fence_gate": { - "id": 107, - "name": "Fence Gate", - "maxdamage": 0, - "stacksize": 64 - }, - "brick_stairs": { - "id": 108, - "name": "Brick Stairs", - "maxdamage": 0, - "stacksize": 64 - }, - "stone_brick_stairs": { - "id": 109, - "name": "Stone Brick Stairs", - "obtainable": true, - "maxdamage": 0, - "stacksize": 64 - }, - "mycelium": { - "id": 110, - "name": "Mycelium", - "obtainable": true, - "maxdamage": 0, - "stacksize": 64 - }, - "waterlily": { - "id": 111, - "name": "Lily Pad", - "obtainable": true, - "maxdamage": 0, - "stacksize": 64 - }, - "nether_brick": { - "id": 112, - "name": "Nether Brick", - "obtainable": true, - "maxdamage": 0, - "stacksize": 64 - }, - "nether_brick_fence": { - "id": 113, - "name": "Nether Brick Fence", - "obtainable": true, - "maxdamage": 0, - "stacksize": 64 - }, - "nether_brick_stairs": { - "id": 114, - "name": "Nether Brick Stairs", - "obtainable": true, - "maxdamage": 0, - "stacksize": 64 - }, - "nether_wart": { - "id": 115, - "name": "Nether Wart", - "obtainable": false, - "maxdamage": 0, - "stacksize": 64 - }, - "enchanting_table": { - "id": 116, - "name": "Enchantment Table", - "obtainable": true, - "maxdamage": 0, - "stacksize": 64 - }, - "brewing_stand": { - "id": 117, - "name": "Brewing Stand", - "obtainable": false, - "maxdamage": 0, - "stacksize": 64 - }, - "cauldron": { - "id": 118, - "name": "Cauldron", - "obtainable": false, - "maxdamage": 0, - "stacksize": 64 - }, - "end_portal": { - "id": 119, - "name": "End Portal", - "obtainable": false, - "maxdamage": 0, - "stacksize": 64 - }, - "end_portal_frame": { - "id": 120, - "name": "End Portal Block", - "obtainable": true, - "maxdamage": 0, - "stacksize": 64 - }, - "end_stone": { - "id": 121, - "name": "End Stone", - "obtainable": true, - "maxdamage": 0, - "stacksize": 64 - }, - "dragon_egg": { - "id": 122, - "name": "Dragon Egg", - "obtainable": true, - "maxdamage": 0, - "stacksize": 64 - }, - "redstone_lamp": { - "id": 123, - "name": "Redstone Lamp (inactive)", - "obtainable": true, - "maxdamage": 0, - "stacksize": 64 - }, - "lit_redstone_lamp": { - "id": 124, - "name": "Redstone Lamp (active)", - "obtainable": false, - "maxdamage": 0, - "stacksize": 64 - }, - "double_wooden_slab": { - "id": 125, - "name": "Double Wooden Slab", - "obtainable": false, - "maxdamage": 0, - "stacksize": 64 - }, - "wooden_slab": { - "id": 126, - "name": ["Oak Wood Slab", - "Spruce Wood Slab", - "Birch Wood Slab", - "Jungle Wood Slab", - "Acacia Wood Slab", - "Dark Oak Wood Slab"], - "obtainable": true, - "maxdamage": 5, - "stacksize": 64 - }, - "cocoa": { - "id": 127, - "name": "Cocoa", - "obtainable": false, - "maxdamage": 0, - "stacksize": 64 - }, - "sandstone_stairs": { - "id": 128, - "name": "Sandstone Stairs", - "obtainable": true, - "maxdamage": 0, - "stacksize": 64 - }, - "emerald_ore": { - "id": 129, - "name": "Emerald Ore", - "obtainable": true, - "maxdamage": 0, - "stacksize": 64 - }, - "ender_chest": { - "id": 130, - "name": "Ender Chest", - "obtainable": true, - "maxdamage": 0, - "stacksize": 64 - }, - "tripwire_hook": { - "id": 131, - "name": "Tripwire Hook", - "obtainable": true, - "maxdamage": 0, - "stacksize": 64 - }, - "tripwire": { - "id": 132, - "name": "Tripwire", - "obtainable": false, - "maxdamage": 0, - "stacksize": 64 - }, - "emerald_block": { - "id": 133, - "name": "Block of Emerald", - "obtainable": true, - "maxdamage": 0, - "stacksize": 64 - }, - "spruce_stairs": { - "id": 134, - "name": "Spruce Wood Stairs", - "obtainable": true, - "maxdamage": 0, - "stacksize": 64 - }, - "birch_stairs": { - "id": 135, - "name": "Birch Wood Stairs", - "obtainable": true, - "maxdamage": 0, - "stacksize": 64 - }, - "jungle_stairs": { - "id": 136, - "name": "Jungle Wood Stairs", - "obtainable": true, - "maxdamage": 0, - "stacksize": 64 - }, - "command_block": { - "id": 137, - "name": "Command Block", - "obtainable": true, - "maxdamage": 0, - "stacksize": 64 - }, - "beacon": { - "id": 138, - "name": "Beacon", - "obtainable": true, - "maxdamage": 0, - "stacksize": 64 - }, - "cobblestone_wall": { - "id": 139, - "name": ["Cobblestone Wall", - "Mossy Cobblestone Wall"], - "obtainable": true, - "maxdamage": 1, - "stacksize": 64 - }, - "flower_pot": { - "id": 140, - "name": "Flower Pot", - "obtainable": false, - "maxdamage": 0, - "stacksize": 64 - }, - "carrots": { - "id": 141, - "name": "Carrot", - "obtainable": false, - "maxdamage": 0, - "stacksize": 64 - }, - "potatoes": { - "id": 142, - "name": "Potato", - "obtainable": false, - "maxdamage": 0, - "stacksize": 64 - }, - "wooden_button": { - "id": 143, - "name": "Wooden Button", - "obtainable": true, - "maxdamage": 0, - "stacksize": 64 - }, - "skull": { - "id": 144, - "name": "Mob Head", - "obtainable": false, - "maxdamage": 0, - "stacksize": 64 - }, - "anvil": { - "id": 145, - "name": ["Anvil", - "Slightly Damaged Anvil", - "Very Damaged Anvil"], - "obtainable": true, - "maxdamage": 2, - "stacksize": 64 - }, - "trapped_chest": { - "id": 146, - "name": "Trapped Chest", - "obtainable": true, - "maxdamage": 0, - "stacksize": 64 - }, - "light_weighted_pressure_plate": { - "id": 147, - "name": "Weighted Pressure Plate", - "obtainable": true, - "maxdamage": 0, - "stacksize": 64 - }, - "heavy_weighted_pressure_plate": { - "id": 148, - "name": "Weighted Pressure Plate", - "obtainable": true, - "maxdamage": 0, - "stacksize": 64 - }, - "unpowered_comparator": { - "id": 149, - "name": "Redstone Comparator", - "obtainable": false, - "maxdamage": 0, - "stacksize": 64 - }, - "powered_comparator": { - "id": 150, - "name": "Redstone Comparator", - "obtainable": false, - "maxdamage": 0, - "stacksize": 64 - }, - "daylight_detector": { - "id": 151, - "name": "Daylight Sensor", - "obtainable": true, - "maxdamage": 0, - "stacksize": 64 - }, - "redstone_block": { - "id": 152, - "name": "Block of Redstone", - "obtainable": true, - "maxdamage": 0, - "stacksize": 64 - }, - "quartz_ore": { - "id": 153, - "name": "Nether Quartz Ore", - "obtainable": true, - "maxdamage": 0, - "stacksize": 64 - }, - "hopper": { - "id": 154, - "name": "Hopper", - "obtainable": true, - "maxdamage": 0, - "stacksize": 64 - }, - "quartz_block": { - "id": 155, - "name": ["Block of Quartz", - "Chiseled Quartz Block", - "Pillar Quartz Block"], - "obtainable": true, - "maxdamage": 0, - "stacksize": 64 - }, - "quartz_stairs": { - "id": 156, - "name": "Quartz Stairs", - "obtainable": true, - "maxdamage": 0, - "stacksize": 64 - }, - "activator_rail": { - "id": 157, - "name": "Activator Rail", - "obtainable": true, - "maxdamage": 0, - "stacksize": 64 - }, - "dropper": { - "id": 158, - "name": "Dropper", - "obtainable": true, - "maxdamage": 0, - "stacksize": 64 - }, - "stained_hardened_clay": { - "id": 159, - "name": ["White Stained Clay", - "Orange Stained Clay", - "Magenta Stained Clay", - "Light Blue Stained Clay", - "Yellow Stained Clay", - "Lime Stained Clay", - "Pink Stained Clay", - "Gray Stained Clay", - "Light Gray Stained Clay", - "Cyan Stained Clay", - "Purple Stained Clay", - "Blue Stained Clay", - "Brown Stained Clay", - "Green Stained Clay", - "Red Stained Clay", - "Black Stained Clay"], - "obtainable": true, - "maxdamage": 15, - "stacksize": 64 - }, - "stained_glass_pane": { - "id": 160, - "name": ["White Stained Glass Pane", - "Orange Stained Glass Pane", - "Magenta Stained Glass Pane", - "Light Blue Stained Glass Pane", - "Yellow Stained Glass Pane", - "Lime Stained Glass Pane", - "Pink Stained Glass Pane", - "Gray Stained Glass Pane", - "Light Gray Stained Glass Pane", - "Cyan Stained Glass Pane", - "Purple Stained Glass Pane", - "Blue Stained Glass Pane", - "Brown Stained Glass Pane", - "Green Stained Glass Pane", - "Red Stained Glass Pane", - "Black Stained Glass Pane"], - "obtainable": true, - "maxdamage": 15, - "stacksize": 64 - }, - "leaves2": { - "id": 161, - "name": ["Acacia Leaves", - "Dark Oak Leaves"], - "obtainable": true, - "maxdamage": 1, - "stacksize": 64 - }, - "log2": { - "id": 162, - "name": ["Acacia Wood", - "Dark Oak Wood"], - "obtainable": true, - "maxdamage": 1, - "stacksize": 64 - }, - "acacia_stairs": { - "id": 163, - "name": "Acacia Wood Stairs", - "obtainable": true, - "maxdamage": 0, - "stacksize": 64 - }, - "dark_oak_stairs": { - "id": 164, - "name": "Dark Oak Wood Stairs", - "obtainable": true, - "maxdamage": 0, - "stacksize": 64 - }, - "slime": { - "id": 165, - "name": "Slime Block", - "obtainable": true, - "maxdamage": 0, - "stacksize": 64 - }, - "barrier": { - "id": 166, - "name": "Barrier", - "obtainable": true, - "maxdamage": 0, - "stacksize": 64 - }, - "iron_trapdoor": { - "id": 167, - "name": "Iron Trapdoor", - "obtainable": true, - "maxdamage": 0, - "stacksize": 64 - }, - "prismarine": { - "id": 168, - "name": ["Prismarine", - "Prismarine Bricks", - "Dark Prismarine"], - "obtainable": true, - "maxdamage": 2, - "stacksize": 64 - }, - "sea_lantern": { - "id": 169, - "name": "Sea Lantern", - "obtainable": true, - "maxdamage": 0, - "stacksize": 64 - }, - "hay_block": { - "id": 170, - "name": "Hay Block", - "obtainable": true, - "maxdamage": 0, - "stacksize": 64 - }, - "carpet": { - "id": 171, - "name": ["Carpet", - "Orange Carpet", - "Magenta Carpet", - "Light Blue Carpet", - "Yellow Carpet", - "Lime Carpet", - "Pink Carpet", - "Gray Carpet", - "Light Gray Carpet", - "Cyan Carpet", - "Purple Carpet", - "Blue Carpet", - "Brown Carpet", - "Green Carpet", - "Red Carpet", - "Black Carpet"], - "obtainable": true, - "maxdamage": 15, - "stacksize": 64 - }, - "hardened_clay": { - "id": 172, - "name": "Hardened Clay", - "obtainable": true, - "maxdamage": 0, - "stacksize": 64 - }, - "coal_block": { - "id": 173, - "name": "Block of Coal", - "obtainable": true, - "maxdamage": 0, - "stacksize": 64 - }, - "packed_ice": { - "id": 174, - "name": "Packed Ice", - "obtainable": true, - "maxdamage": 0, - "stacksize": 64 - }, - "double_plant": { - "id": 175, - "name": ["Sunflower", - "Lilac", - "Double Tallgrass", - "Large Fern", - "Rose Bush", - "Peony"], - "obtainable": true, - "maxdamage": 5, - "stacksize": 64 - }, - "standing_banner": { - "id": 176, - "name": "Banner", - "obtainable": false, - "maxdamage": 0, - "stacksize": 64 - }, - "wall_banner": { - "id": 177, - "name": "Banner", - "obtainable": false, - "maxdamage": 0, - "stacksize": 64 - }, - "daylight_detector_inverted": { - "id": 178, - "name": "Inverted Daylight Sensor", - "obtainable": false, - "maxdamage": 0, - "stacksize": 64 - }, - "red_sandstone": { - "id": 179, - "name": ["Red Sandstone", - "Chiseled Red Sandstone", - "Smooth Red Sandstone"], - "obtainable": true, - "maxdamage": 2, - "stacksize": 64 - }, - "red_sandstone_stairs": { - "id": 180, - "name": "Red Sandstone Stairs", - "obtainable": true, - "maxdamage": 0, - "stacksize": 64 - }, - "double_stone_slab2": { - "id": 181, - "name": "Double Red Sandstone Slab", - "obtainable": false, - "maxdamage": 0, - "stacksize": 64 - }, - "stone_slab2": { - "id": 182, - "name": "Red Sandstone Slab", - "obtainable": true, - "maxdamage": 0, - "stacksize": 64 - }, - "spruce_fence_gate": { - "id": 183, - "name": "Spruce Fence Gate", - "obtainable": true, - "maxdamage": 0, - "stacksize": 64 - }, - "birch_fence_gate": { - "id": 184, - "name": "Birch Fence Gate", - "obtainable": true, - "maxdamage": 0, - "stacksize": 64 - }, - "jungle_fence_gate": { - "id": 185, - "name": "Jungle Fence Gate", - "obtainable": true, - "maxdamage": 0, - "stacksize": 64 - }, - "dark_oak_fence_gate": { - "id": 186, - "name": "Dark Oak Fence Gate", - "obtainable": true, - "maxdamage": 0, - "stacksize": 64 - }, - "acacia_fence_gate": { - "id": 187, - "name": "Acacia Fence Gate", - "obtainable": true, - "maxdamage": 0, - "stacksize": 64 - }, - "spruce_fence": { - "id": 188, - "name": "Spruce Fence", - "obtainable": true, - "maxdamage": 0, - "stacksize": 64 - }, - "birch_fence": { - "id": 189, - "name": "Birch Fence", - "obtainable": true, - "maxdamage": 0, - "stacksize": 64 - }, - "jungle_fence": { - "id": 190, - "name": "Jungle Fence", - "obtainable": true, - "maxdamage": 0, - "stacksize": 64 - }, - "dark_oak_fence": { - "id": 191, - "name": "Dark Oak Fence", - "obtainable": true, - "maxdamage": 0, - "stacksize": 64 - }, - "acacia_fence": { - "id": 192, - "name": "Acacia Fence", - "obtainable": true, - "maxdamage": 0, - "stacksize": 64 - }, - "spruce_door": { - "id": 193, - "name": "Spruce Door", - "obtainable": false, - "maxdamage": 0, - "stacksize": 64 - }, - "birch_door": { - "id": 194, - "name": "Birch Door", - "obtainable": false, - "maxdamage": 0, - "stacksize": 64 - }, - "jungle_door": { - "id": 195, - "name": "Jungle Door", - "obtainable": false, - "maxdamage": 0, - "stacksize": 64 - }, - "acacia_door": { - "id": 196, - "name": "Acacia Door", - "obtainable": false, - "maxdamage": 0, - "stacksize": 64 - }, - "dark_oak_door": { - "id": 197, - "name": "Dark Oak Door", - "obtainable": false, - "maxdamage": 0, - "stacksize": 64 - }, - "end_rod": { - "id": 198 - "name": "End Rod", - }, - "chorus_plant": { - "id": 199 - "name": "Chorus Plant", - }, - "chorus_flower": { - "id": 200 - "name": "Chorus Flower", - }, - "purpur_block": { - "id": 201 - "name": "Purpur Block", - }, - "purpur_pillar": { - "id": 202 - "name": "Purpur Pillar", - }, - "purpur_stairs": { - "id": 203 - "name": "Purpur Stairs", - }, - "purpur_double_slab": { - "id": 204 - "name": "Double Purpur Slabs", - }, - "purpur_slab": { - "name": "Purpur Slab", - "id": 205 - }, - "end_bricks": { - "name": "End Stone Bricks", - "id": 206 - }, - "beetroots": { - "name": "Beetroot", - "id": 207 - }, - "grass_path": { - "name": "Path", - "id": 208 - }, - "end_gateway": { - "id": 209, - "name": "End Gateway" - }, - "repeating_command_block": { - "name": "Repeating Command Block", - "id": 210 - }, - "chain_command_block": { - "name": "Chain Command Block", - "id": 211 - }, - "frosted_ice": { - "name": "Frosted Ice", - "id": 212 - }, - "magma": { - "id": 213, - "name": "Magma Block", - }, - "nether_wart_block": { - "id": 214, - "name": "Nether Wart Block", - }, - "red_nether_brick": { - "id": 215, - "name": "Red Nether Brick", - }, - "bone_block": { - "id": 216, - "name": "Bone Block", - }, - "structure_void": { - "id": 217, - "name": "Structure Void", - }, - "observer": { - "name": "Observer", - "id": 218 - }, - "white_shulker_box": { - "name": "White Shulker Box", - "id": 219 - }, - "orange_shulker_box": { - "name": "Orange Shulker Box", - "id": 220 - }, - "magenta_shulker_box": { - "name": "Magenta Shulker Box", - "id": 221 - }, - "light_blue_shulker_box": { - "name": "Light Blue Shulker Box", - "id": 222 - }, - "yellow_shulker_box": { - "name": "Yellow Shulker Box", - "id": 223 - }, - "lime_shulker_box": { - "name": "Lime Shulker Box", - "id": 224 - }, - "pink_shulker_box": { - "name": "Pink Shulker Box", - "id": 225 - }, - "gray_shulker_box": { - "name": "Gray Shulker Box", - "id": 226 - }, - "silver_shulker_box": { - "name": "Light Gray Shulker Box", - "id": 227 - }, - "cyan_shulker_box": { - "name": "Cyan Shulker Box", - "id": 228 - }, - "purple_shulker_box": { - "name": "Purple Shulker Box", - "id": 229 - }, - "blue_shulker_box": { - "name": "Blue Shulker Box", - "id": 230 - }, - "brown_shulker_box": { - "name": "Brown Shulker Box", - "id": 231 - }, - "green_shulker_box": { - "name": "Green Shulker Box", - "id": 232 - }, - "red_shulker_box": { - "name": "Red Shulker Box", - "id": 233 - }, - "black_shulker_box": { - "name": "Black Shulker Box", - "id": 234 - }, - "white_glazed_terracotta": { - "id": 235, - "name": "White glazed terracotta", - }, - "orange_glazed_terracotta": { - "id": 236, - "name": "Orange glazed terracotta", - }, - "magenta_glazed_terracotta": { - "id": 237, - "name": "Magenta glazed terracotta", - }, - "light_blue_glazed_terracotta": { - "id": 238, - "name": "Light blue glazed terracotta", - }, - "yellow_glazed_terracotta": { - "id": 239, - "name": "Yellow glazed terracotta", - }, - "lime_glazed_terracotta": { - "id": 240, - "name": "Lime glazed terracotta", - }, - "pink_glazed_terracotta": { - "id": 241, - "name": "Pink glazed terracotta", - }, - "gray_glazed_terracotta": { - "id": 242, - "name": "Gray glazed terracotta", - }, - "light_gray_glazed_terracotta": { - "id": 243, - "name": "Light gray glazed terracotta", - }, - "cyan_glazed_terracotta": { - "id": 244, - "name": "Cyan glazed terracotta", - }, - "purple_glazed_terracotta": { - "id": 245, - "name": "Purple glazed terracotta", - }, - "blue_glazed_terracotta": { - "id": 246, - "name": "Blue glazed terracotta", - }, - "brown_glazed_terracotta": { - "id": 247, - "name": "Brown glazed terracotta", - }, - "green_glazed_terracotta": { - "id": 248, - "name": "Green glazed terracotta", - }, - "red_glazed_terracotta": { - "id": 249, - "name": "Red glazed terracotta", - }, - "black_glazed_terracotta": { - "id": 250, - "name": "Black glazed terracotta", - }, - "concrete": { - "id": 251, - "name": ["White concrete", - "Orange concrete", - "Magenta concrete", - "Light blue concrete", - "Yellow concrete", - "Lime concrete", - "Pink concrete", - "Gray concrete", - "Silver concrete", - "Cyan concrete", - "Purple concrete", - "Blue concrete", - "Brown concrete", - "Green concrete", - "Red concrete", - "Black concrete"], - }, - "concrete_powder": { - "id": 252, - "name": ["White concrete powder", - "Orange concrete powder", - "Magenta concrete powder", - "Light blue concrete powder", - "Yellow concrete powder", - "Lime concrete powder", - "Pink concrete powder", - "Gray concrete powder", - "Silver concrete powder", - "Cyan concrete powder", - "Purple concrete powder", - "Blue concrete powder", - "Brown concrete powder", - "Green concrete powder", - "Red concrete powder", - "Black concrete powder"], - }, - "structure_block": { - "name": ["Structure Block (Save)", - "Structure Block (Load)", - "Structure Block (Corner)", - "Structure Block (Data)"], - "id": 255 - }, - "string": { - "name": "String", - "id": 287 - }, - "coal": { - "name": ["Coal", - "Charcoal"], - "id": 263 - }, - "wheat_seeds": { - "id": 295, - "name": "Wheat Seeds", - }, - "sign": { - "id": 323, - "name": "Sign", - }, - "redstone": { - "id": 331, - "name": "Redstone Dust", - }, - "dye": { - "id": 351, - "name": ["Ink Sack", - "Rose Red", - "Cactus Green", - "Cocoa Bean", - "Lapis Lazuli", - "Purple Dye", - "Cyan Dye", - "Light Gray Dye", - "Gray Dye", - "Pink Dye", - "Lime Dye", - "Dandelion Yellow", - "Light Blue Dye", - "Magenta Dye", - "Orange Dye", - "Bone Meal"] - }, - "bed-block": { - "id": 355, - "name": "Bed", - }, - "repeater": { - "id": 356, - "name": "Redstone Repeater", - }, - "carrot": { - "id": 391, - "name": "Carrot", - }, - "potato": { - "id": 392, - "name": "Potato", - }, - "comparator": { - "id": 404, - "name": "Redstone Comparator", - }, - "banner": { - "id": 425, - "name": "Banner", - } + "air": { + "id": 0, + "name": "Air", + }, + "stone": { + "id": 1, + "name": ["Stone", + "Granite", + "Polished Granite", + "Diorite", + "Polished Diorite", + "Andesite", + "Polished Andesite"], + }, + "grass": { + "id": 2, + "name": "Grass Block", + }, + "dirt": { + "id": 3, + "name": ["Dirt", + "Coarse Dirt", + "Podzol"], + }, + "cobblestone": { + "id": 4, + "name": "Cobblestone", + }, + "planks": { + "id": 5, + "name": ["Oak Wood Planks", + "Spruce Wood Planks", + "Birch Wood Planks", + "Jungle Wood Planks", + "Acacia Wood Planks", + "Dark Oak Wood Planks"], + }, + "sapling": { + "id": 6, + "name": ["Oak Sapling", + "Spruce Sapling", + "Birch Sapling", + "Jungle Sapling", + "Acacia Sapling", + "Dark Oak Sapling"], + "place": "sapling", + }, + "bedrock": { + "id": 7, + "name": "Bedrock", + }, + "flowing_water": { + "id": 8, + "name": "Water", + "place": "flatten", + }, + "water": { + "id": 9, + "name": "Water", + "place": "flatten", + }, + "flowing_lava": { + "id": 10, + "name": "Lava", + }, + "lava": { + "id": 11, + "name": "Lava", + }, + "sand": { + "id": 12, + "name": ["Sand", + "Red Sand"], + }, + "gravel": { + "id": 13, + "name": "Gravel", + }, + "gold_ore": { + "id": 14, + "name": "Gold Ore", + }, + "iron_ore": { + "id": 15, + "name": "Iron Ore", + }, + "coal_ore": { + "id": 16, + "name": "Coal Ore", + }, + "log": { + "id": 17, + "name": ["Oak Wood", + "Spruce Wood", + "Birch Wood", + "Jungle Wood"], + "place": "wood", + }, + "leaves": { + "id": 18, + "name": ["Oak Leaves", + "Spruce Leaves", + "Birch Leaves", + "Jungle Leaves"], + "place": "leaves", + }, + "sponge": { + "id": 19, + "name": ["Sponge", + "Wet Sponge"], + }, + "glass": { + "id": 20, + "name": "Glass", + }, + "lapis_ore": { + "id": 21, + "name": "Lapis Lazuli Ore", + }, + "lapis_block": { + "id": 22, + "name": "Lapis Lazuli Block", + }, + "dispenser": { + "id": 23, + "name": "Dispenser", + "place": "dispenser", + }, + "sandstone": { + "id": 24, + "name": ["Sandstone", + "Chiseled Sandstone", + "Smooth Sandstone"], + }, + "noteblock": { + "id": 25, + "name": "Note Block", + }, + "bed": { + "id": 26, + "name": "Bed", + "place": "bed", + }, + "golden_rail": { + "id": 27, + "name": "Powered Rail", + "place": "adp-rail", + }, + "detector_rail": { + "id": 28, + "name": "Detector Rail", + "place": "adp-rail", + }, + "sticky_piston": { + "id": 29, + "name": "Sticky Piston", + "place": "piston", + }, + "web": { + "id": 30, + "name": "Cobweb", + }, + "tallgrass": { + "id": 31, + "name": ["Shrub", + "Grass", + "Fern"], + }, + "deadbush": { + "id": 32, + "name": "Dead Bush", + }, + "piston": { + "id": 33, + "name": "Piston", + "place": "piston", + }, + "piston_head": { + "id": 34, + "name": "Piston Extension", + "place": "flatten", + }, + "wool": { + "id": 35, + "name": ["White Wool", + "Orange Wool", + "Magenta Wool", + "Light Blue Wool", + "Yellow Wool", + "Lime Wool", + "Pink Wool", + "Gray Wool", + "Light Gray Wool", + "Cyan Wool", + "Purple Wool", + "Blue Wool", + "Brown Wool", + "Green Wool", + "Red Wool", + "Black Wool"], + }, + "piston_extension": { + "id": 36, + "name": "Block moved by Piston", + "place": "flatten", + }, + "yellow_flower": { + "id": 37, + "name": "Dandelion", + }, + "red_flower": { + "id": 38, + "name": ["Poppy", + "Blue Orchid", + "Allium", + "Azure Bluet", + "Red Tulip", + "Orange Tulip", + "White Tulip", + "Pink Tulip", + "Oxeye Daisy"], + }, + "brown_mushroom": { + "id": 39, + "name": "Brown Mushroom", + }, + "red_mushroom": { + "id": 40, + "name": "Red Mushroom", + }, + "gold_block": { + "id": 41, + "name": "Block of Gold", + }, + "iron_block": { + "id": 42, + "name": "Block of Iron", + }, + "double_stone_slab": { + "id": 43, + "name": "Double Stone Slab", + }, + "stone_slab": { + "id": 44, + "name": ["Stone Slab", + "Sandstone Slab", + "Wooden Slab", + "Cobblestone Slab", + "Bricks Slab", + "Stone Bricks Slab", + "Nether Brick Slab", + "Quartz Slab"], + "place": "slab", + }, + "brick_block": { + "id": 45, + "name": "Bricks", + }, + "tnt": { + "id": 46, + "name": "TNT", + }, + "bookshelf": { + "id": 47, + "name": "Bookshelf", + }, + "mossy_cobblestone": { + "id": 48, + "name": "Moss Stone", + }, + "obsidian": { + "id": 49, + "name": "Obsidian", + }, + "torch": { + "id": 50, + "name": "Torch", + "place": "torch", + }, + "fire": { + "id": 51, + "name": "Fire", + "place": "flatten", + }, + "mob_spawner": { + "id": 52, + "name": "Monster Spawner", + }, + "oak_stairs": { + "id": 53, + "name": "Oak Wood Stairs", + "place": "stairs", + }, + "chest": { + "id": 54, + "name": "Chest", + "place": "chest-furnace", + }, + "redstone_wire": { + "id": 55, + "name": "Redstone Wire", + "place": "flatten", + }, + "diamond_ore": { + "id": 56, + "name": "Diamond Ore", + }, + "diamond_block": { + "id": 57, + "name": "Block of Diamond", + }, + "crafting_table": { + "id": 58, + "name": "Crafting Table", + }, + "wheat": { + "id": 59, + "name": "Wheat", + "place": "flatten", + }, + "farmland": { + "id": 60, + "name": "Farmland", + "place": "flatten", + }, + "furnace": { + "id": 61, + "name": "Furnace", + "place": "chest-furnace", + }, + "lit_furnace": { + "id": 62, + "name": "Burning Furnace", + "place": "chest-furnace", + }, + "standing_sign": { + "id": 63, + "name": "Sign", + "place": "signpost", + }, + "wooden_door": { + "id": 64, + "name": "Oak Door", + "place": "door", + }, + "ladder": { + "id": 65, + "name": "Ladder", + "place": "wallsign-ladder", + }, + "rail": { + "id": 66, + "name": "Rail", + "place": "rail", + }, + "stone_stairs": { + "id": 67, + "name": "Cobblestone Stairs", + "place": "stairs", + }, + "wall_sign": { + "id": 68, + "name": "Sign", + "place": "wallsign-ladder", + }, + "lever": { + "id": 69, + "name": "Lever", + "place": "lever", + }, + "stone_pressure_plate": { + "id": 70, + "name": "Stone Pressure Plate", + }, + "iron_door": { + "id": 71, + "name": "Iron Door", + "place": "door", + }, + "wooden_pressure_plate": { + "id": 72, + "name": "Wooden Pressure Plate", + }, + "redstone_ore": { + "id": 73, + "name": "Redstone Ore", + }, + "lit_redstone_ore": { + "id": 74, + "name": "Redstone Ore", + }, + "unlit_redstone_torch": { + "id": 75, + "name": "Redstone Torch (inactive)", + "place": "torch", + }, + "redstone_torch": { + "id": 76, + "name": "Redstone Torch (active)", + "place": "torch", + }, + "stone_button": { + "id": 77, + "name": "Stone Button", + "place": "button", + }, + "snow_layer": { + "id": 78, + "name": "Snow", + "place": "flatten", + }, + "ice": { + "id": 79, + "name": "Ice", + }, + "snow": { + "id": 80, + "name": "Snow", + }, + "cactus": { + "id": 81, + "name": "Cactus", + "place": "flatten", + }, + "clay": { + "id": 82, + "name": "Clay", + }, + "reeds": { + "id": 83, + "name": "Sugar Cane", + "place": "flatten", + }, + "jukebox": { + "id": 84, + "name": "Jukebox", + "place": "flatten", + }, + "fence": { + "id": 85, + "name": "Fence", + }, + "pumpkin": { + "id": 86, + "name": "Pumpkin", + "place": "pumpkin", + }, + "netherrack": { + "id": 87, + "name": "Netherrack", + }, + "soul_sand": { + "id": 88, + "name": "Soul Sand", + }, + "glowstone": { + "id": 89, + "name": "Glowstone", + }, + "portal": { + "id": 90, + "name": "Portal", + "place": "flatten", + }, + "lit_pumpkin": { + "id": 91, + "name": "Jack o'Lantern", + "place": "pumpkin", + }, + "cake": { + "id": 92, + "name": "Cake", + "place": "flatten", + }, + "unpowered_repeater": { + "id": 93, + "name": "Redstone Repeater (inactive)", + "place": "repeater", + }, + "powered_repeater": { + "id": 94, + "name": "Redstone Repeater (active)", + "place": "repeater", + }, + "stained_glass": { + "id": 95, + "name": ["White Stained Glass", + "Orange Stained Glass", + "Magenta Stained Glass", + "Light Blue Stained Glass", + "Yellow Stained Glass", + "Lime Stained Glass", + "Pink Stained Glass", + "Gray Stained Glass", + "Light Gray Stained Glass", + "Cyan Stained Glass", + "Purple Stained Glass", + "Blue Stained Glass", + "Brown Stained Glass", + "Green Stained Glass", + "Red Stained Glass", + "Black Stained Glass"], + }, + "trapdoor": { + "id": 96, + "name": "Trapdoor", + "place": "trapdoor", + }, + "monster_egg": { + "id": 97, + "name": ["Stone Monster Egg", + "Cobblestone Monster Egg", + "Stone Brick Monster Egg", + "Mossy Stone Brick Monster Egg", + "Cracked Stone Brick Monster Egg", + "Chiseled Stone Brick Monster Egg"], + }, + "stonebrick": { + "id": 98, + "name": ["Stone Bricks", + "Mossy Stone Bricks", + "Cracked Stone Bricks", + "Chiseled Stone Bricks"], + }, + "brown_mushroom_block": { + "id": 99, + "name": "Brown Mushroom (block)", + "place": "flatten", + }, + "red_mushroom_block": { + "id": 100, + "name": "Red Mushroom (block)", + "place": "flatten", + }, + "iron_bars": { + "id": 101, + "name": "Iron Bars", + }, + "glass_pane": { + "id": 102, + "name": "Glass Pane", + }, + "melon_block": { + "id": 103, + "name": "Melon", + }, + "pumpkin_stem": { + "id": 104, + "name": "Pumpkin Stem", + }, + "melon_stem": { + "id": 105, + "name": "Melon Stem", + }, + "vine": { + "id": 106, + "name": "Vines", + "place": "vine", + }, + "fence_gate": { + "id": 107, + "name": "Fence Gate", + "place": "gate", + }, + "brick_stairs": { + "id": 108, + "name": "Brick Stairs", + "place": "stairs", + }, + "stone_brick_stairs": { + "id": 109, + "name": "Stone Brick Stairs", + "place": "stairs", + }, + "mycelium": { + "id": 110, + "name": "Mycelium", + }, + "waterlily": { + "id": 111, + "name": "Lily Pad", + }, + "nether_brick": { + "id": 112, + "name": "Nether Brick", + }, + "nether_brick_fence": { + "id": 113, + "name": "Nether Brick Fence", + }, + "nether_brick_stairs": { + "id": 114, + "name": "Nether Brick Stairs", + "place": "stairs", + }, + "nether_wart": { + "id": 115, + "name": "Nether Wart", + "place": "flatten", + }, + "enchanting_table": { + "id": 116, + "name": "Enchantment Table", + }, + "brewing_stand": { + "id": 117, + "name": "Brewing Stand", + "place": "flatten", + }, + "cauldron": { + "id": 118, + "name": "Cauldron", + "place": "cauldron", + }, + "end_portal": { + "id": 119, + "name": "End Portal", + }, + "end_portal_frame": { + "id": 120, + "name": "End Portal Block", + "place": "flatten", + }, + "end_stone": { + "id": 121, + "name": "End Stone", + }, + "dragon_egg": { + "id": 122, + "name": "Dragon Egg", + }, + "redstone_lamp": { + "id": 123, + "name": "Redstone Lamp (inactive)", + }, + "lit_redstone_lamp": { + "id": 124, + "name": "Redstone Lamp (active)", + }, + "double_wooden_slab": { + "id": 125, + "name": "Double Wooden Slab", + }, + "wooden_slab": { + "id": 126, + "name": ["Oak Wood Slab", + "Spruce Wood Slab", + "Birch Wood Slab", + "Jungle Wood Slab", + "Acacia Wood Slab", + "Dark Oak Wood Slab"], + "place": "slab", + }, + "cocoa": { + "id": 127, + "name": "Cocoa", + "place": "cocoa", + }, + "sandstone_stairs": { + "id": 128, + "name": "Sandstone Stairs", + "place": "stairs", + }, + "emerald_ore": { + "id": 129, + "name": "Emerald Ore", + }, + "ender_chest": { + "id": 130, + "name": "Ender Chest", + "place": "chest-furnace", + }, + "tripwire_hook": { + "id": 131, + "name": "Tripwire Hook", + "place": "tripwire", + }, + "tripwire": { + "id": 132, + "name": "Tripwire", + "place": "flatten", + }, + "emerald_block": { + "id": 133, + "name": "Block of Emerald", + }, + "spruce_stairs": { + "id": 134, + "name": "Spruce Wood Stairs", + "place": "stairs", + }, + "birch_stairs": { + "id": 135, + "name": "Birch Wood Stairs", + "place": "stairs", + }, + "jungle_stairs": { + "id": 136, + "name": "Jungle Wood Stairs", + "place": "stairs", + }, + "command_block": { + "id": 137, + "name": "Command Block", + }, + "beacon": { + "id": 138, + "name": "Beacon", + }, + "cobblestone_wall": { + "id": 139, + "name": ["Cobblestone Wall", + "Mossy Cobblestone Wall"], + }, + "flower_pot": { + "id": 140, + "name": "Flower Pot", + "place": "flatten", + }, + "carrots": { + "id": 141, + "name": "Carrot", + "place": "flatten", + }, + "potatoes": { + "id": 142, + "name": "Potato", + "place": "flatten", + }, + "wooden_button": { + "id": 143, + "name": "Wooden Button", + "place": "button", + }, + "skull": { + "id": 144, + "name": "Mob Head", + "place": "mobhead", + }, + "anvil": { + "id": 145, + "name": ["Anvil", + "Slightly Damaged Anvil", + "Very Damaged Anvil"], + "place": "anvil", + }, + "trapped_chest": { + "id": 146, + "name": "Trapped Chest", + "place": "chest-furnace", + }, + "light_weighted_pressure_plate": { + "id": 147, + "name": "Weighted Pressure Plate", + }, + "heavy_weighted_pressure_plate": { + "id": 148, + "name": "Weighted Pressure Plate", + }, + "unpowered_comparator": { + "id": 149, + "name": "Redstone Comparator", + "place": "comparator", + }, + "powered_comparator": { + "id": 150, + "name": "Redstone Comparator", + }, + "daylight_detector": { + "id": 151, + "name": "Daylight Sensor", + "place": "flatten", + }, + "redstone_block": { + "id": 152, + "name": "Block of Redstone", + }, + "quartz_ore": { + "id": 153, + "name": "Nether Quartz Ore", + }, + "hopper": { + "id": 154, + "name": "Hopper", + "place": "hopper", + }, + "quartz_block": { + "id": 155, + "name": ["Block of Quartz", + "Chiseled Quartz Block", + "Pillar Quartz Block"], + }, + "quartz_stairs": { + "id": 156, + "name": "Quartz Stairs", + "place": "stairs", + }, + "activator_rail": { + "id": 157, + "name": "Activator Rail", + "place": "adp-rail", + }, + "dropper": { + "id": 158, + "name": "Dropper", + "place": "dispenser", + }, + "stained_hardened_clay": { + "id": 159, + "name": ["White Stained Clay", + "Orange Stained Clay", + "Magenta Stained Clay", + "Light Blue Stained Clay", + "Yellow Stained Clay", + "Lime Stained Clay", + "Pink Stained Clay", + "Gray Stained Clay", + "Light Gray Stained Clay", + "Cyan Stained Clay", + "Purple Stained Clay", + "Blue Stained Clay", + "Brown Stained Clay", + "Green Stained Clay", + "Red Stained Clay", + "Black Stained Clay"], + }, + "stained_glass_pane": { + "id": 160, + "name": ["White Stained Glass Pane", + "Orange Stained Glass Pane", + "Magenta Stained Glass Pane", + "Light Blue Stained Glass Pane", + "Yellow Stained Glass Pane", + "Lime Stained Glass Pane", + "Pink Stained Glass Pane", + "Gray Stained Glass Pane", + "Light Gray Stained Glass Pane", + "Cyan Stained Glass Pane", + "Purple Stained Glass Pane", + "Blue Stained Glass Pane", + "Brown Stained Glass Pane", + "Green Stained Glass Pane", + "Red Stained Glass Pane", + "Black Stained Glass Pane"], + }, + "leaves2": { + "id": 161, + "name": ["Acacia Leaves", + "Dark Oak Leaves"], + "place": "leaves", + }, + "log2": { + "id": 162, + "name": ["Acacia Wood", + "Dark Oak Wood"], + "place": "wood", + }, + "acacia_stairs": { + "id": 163, + "name": "Acacia Wood Stairs", + "place": "stairs", + }, + "dark_oak_stairs": { + "id": 164, + "name": "Dark Oak Wood Stairs", + "place": "stairs", + }, + "slime": { + "id": 165, + "name": "Slime Block", + }, + "barrier": { + "id": 166, + "name": "Barrier", + }, + "iron_trapdoor": { + "id": 167, + "name": "Iron Trapdoor", + "place": "trapdoor", + }, + "prismarine": { + "id": 168, + "name": ["Prismarine", + "Prismarine Bricks", + "Dark Prismarine"], + }, + "sea_lantern": { + "id": 169, + "name": "Sea Lantern", + }, + "hay_block": { + "id": 170, + "name": "Hay Block", + "place": "hay-bale", + }, + "carpet": { + "id": 171, + "name": ["Carpet", + "Orange Carpet", + "Magenta Carpet", + "Light Blue Carpet", + "Yellow Carpet", + "Lime Carpet", + "Pink Carpet", + "Gray Carpet", + "Light Gray Carpet", + "Cyan Carpet", + "Purple Carpet", + "Blue Carpet", + "Brown Carpet", + "Green Carpet", + "Red Carpet", + "Black Carpet"], + }, + "hardened_clay": { + "id": 172, + "name": "Hardened Clay", + }, + "coal_block": { + "id": 173, + "name": "Block of Coal", + }, + "packed_ice": { + "id": 174, + "name": "Packed Ice", + }, + "double_plant": { + "id": 175, + "name": ["Sunflower", + "Lilac", + "Double Tallgrass", + "Large Fern", + "Rose Bush", + "Peony"], + "place": "largeplant", + }, + "standing_banner": { + "id": 176, + "name": "Banner", + "place": "signpost", + }, + "wall_banner": { + "id": 177, + "name": "Banner", + "place": "wallsign-ladder", + }, + "daylight_detector_inverted": { + "id": 178, + "name": "Inverted Daylight Sensor", + "place": "flatten", + }, + "red_sandstone": { + "id": 179, + "name": ["Red Sandstone", + "Chiseled Red Sandstone", + "Smooth Red Sandstone"], + }, + "red_sandstone_stairs": { + "id": 180, + "name": "Red Sandstone Stairs", + "place": "stairs", + }, + "double_stone_slab2": { + "id": 181, + "name": "Double Red Sandstone Slab", + }, + "stone_slab2": { + "id": 182, + "name": "Red Sandstone Slab", + "place": "slab", + }, + "spruce_fence_gate": { + "id": 183, + "name": "Spruce Fence Gate", + "place": "gate", + }, + "birch_fence_gate": { + "id": 184, + "name": "Birch Fence Gate", + "place": "gate", + }, + "jungle_fence_gate": { + "id": 185, + "name": "Jungle Fence Gate", + "place": "gate", + }, + "dark_oak_fence_gate": { + "id": 186, + "name": "Dark Oak Fence Gate", + "place": "gate", + }, + "acacia_fence_gate": { + "id": 187, + "name": "Acacia Fence Gate", + "place": "gate", + }, + "spruce_fence": { + "id": 188, + "name": "Spruce Fence", + }, + "birch_fence": { + "id": 189, + "name": "Birch Fence", + }, + "jungle_fence": { + "id": 190, + "name": "Jungle Fence", + }, + "dark_oak_fence": { + "id": 191, + "name": "Dark Oak Fence", + }, + "acacia_fence": { + "id": 192, + "name": "Acacia Fence", + }, + "spruce_door": { + "id": 193, + "name": "Spruce Door", + "place": "door", + }, + "birch_door": { + "id": 194, + "name": "Birch Door", + "place": "door", + }, + "jungle_door": { + "id": 195, + "name": "Jungle Door", + "place": "door", + }, + "acacia_door": { + "id": 196, + "name": "Acacia Door", + "place": "door", + }, + "dark_oak_door": { + "id": 197, + "name": "Dark Oak Door", + "place": "door", + }, + "end_rod": { + "id": 198 + "name": "End Rod", + "place": "end_rod", + }, + "chorus_plant": { + "id": 199 + "name": "Chorus Plant", + }, + "chorus_flower": { + "id": 200 + "name": "Chorus Flower", + }, + "purpur_block": { + "id": 201 + "name": "Purpur Block", + }, + "purpur_pillar": { + "id": 202 + "name": "Purpur Pillar", + }, + "purpur_stairs": { + "id": 203 + "name": "Purpur Stairs", + }, + "purpur_double_slab": { + "id": 204 + "name": "Double Purpur Slabs", + }, + "purpur_slab": { + "name": "Purpur Slab", + "id": 205, + "place": "slab", + }, + "end_bricks": { + "name": "End Stone Bricks", + "id": 206 + }, + "beetroots": { + "name": "Beetroot", + "id": 207 + }, + "grass_path": { + "name": "Path", + "id": 208 + }, + "end_gateway": { + "id": 209, + "name": "End Gateway" + }, + "repeating_command_block": { + "name": "Repeating Command Block", + "id": 210, + "place": "flatten", + }, + "chain_command_block": { + "name": "Chain Command Block", + "id": 211 + }, + "frosted_ice": { + "name": "Frosted Ice", + "id": 212 + }, + "magma": { + "id": 213, + "name": "Magma Block", + }, + "nether_wart_block": { + "id": 214, + "name": "Nether Wart Block", + }, + "red_nether_brick": { + "id": 215, + "name": "Red Nether Brick", + }, + "bone_block": { + "id": 216, + "name": "Bone Block", + }, + "structure_void": { + "id": 217, + "name": "Structure Void", + }, + "observer": { + "name": "Observer", + "id": 218 + }, + "white_shulker_box": { + "name": "White Shulker Box", + "id": 219 + }, + "orange_shulker_box": { + "name": "Orange Shulker Box", + "id": 220 + }, + "magenta_shulker_box": { + "name": "Magenta Shulker Box", + "id": 221 + }, + "light_blue_shulker_box": { + "name": "Light Blue Shulker Box", + "id": 222 + }, + "yellow_shulker_box": { + "name": "Yellow Shulker Box", + "id": 223 + }, + "lime_shulker_box": { + "name": "Lime Shulker Box", + "id": 224 + }, + "pink_shulker_box": { + "name": "Pink Shulker Box", + "id": 225 + }, + "gray_shulker_box": { + "name": "Gray Shulker Box", + "id": 226 + }, + "silver_shulker_box": { + "name": "Light Gray Shulker Box", + "id": 227 + }, + "cyan_shulker_box": { + "name": "Cyan Shulker Box", + "id": 228 + }, + "purple_shulker_box": { + "name": "Purple Shulker Box", + "id": 229 + }, + "blue_shulker_box": { + "name": "Blue Shulker Box", + "id": 230 + }, + "brown_shulker_box": { + "name": "Brown Shulker Box", + "id": 231 + }, + "green_shulker_box": { + "name": "Green Shulker Box", + "id": 232 + }, + "red_shulker_box": { + "name": "Red Shulker Box", + "id": 233 + }, + "black_shulker_box": { + "name": "Black Shulker Box", + "id": 234 + }, + "white_glazed_terracotta": { + "id": 235, + "name": "White glazed terracotta", + }, + "orange_glazed_terracotta": { + "id": 236, + "name": "Orange glazed terracotta", + }, + "magenta_glazed_terracotta": { + "id": 237, + "name": "Magenta glazed terracotta", + }, + "light_blue_glazed_terracotta": { + "id": 238, + "name": "Light blue glazed terracotta", + }, + "yellow_glazed_terracotta": { + "id": 239, + "name": "Yellow glazed terracotta", + }, + "lime_glazed_terracotta": { + "id": 240, + "name": "Lime glazed terracotta", + }, + "pink_glazed_terracotta": { + "id": 241, + "name": "Pink glazed terracotta", + }, + "gray_glazed_terracotta": { + "id": 242, + "name": "Gray glazed terracotta", + }, + "light_gray_glazed_terracotta": { + "id": 243, + "name": "Light gray glazed terracotta", + }, + "cyan_glazed_terracotta": { + "id": 244, + "name": "Cyan glazed terracotta", + }, + "purple_glazed_terracotta": { + "id": 245, + "name": "Purple glazed terracotta", + }, + "blue_glazed_terracotta": { + "id": 246, + "name": "Blue glazed terracotta", + }, + "brown_glazed_terracotta": { + "id": 247, + "name": "Brown glazed terracotta", + }, + "green_glazed_terracotta": { + "id": 248, + "name": "Green glazed terracotta", + }, + "red_glazed_terracotta": { + "id": 249, + "name": "Red glazed terracotta", + }, + "black_glazed_terracotta": { + "id": 250, + "name": "Black glazed terracotta", + }, + "concrete": { + "id": 251, + "name": ["White concrete", + "Orange concrete", + "Magenta concrete", + "Light blue concrete", + "Yellow concrete", + "Lime concrete", + "Pink concrete", + "Gray concrete", + "Silver concrete", + "Cyan concrete", + "Purple concrete", + "Blue concrete", + "Brown concrete", + "Green concrete", + "Red concrete", + "Black concrete"], + }, + "concrete_powder": { + "id": 252, + "name": ["White concrete powder", + "Orange concrete powder", + "Magenta concrete powder", + "Light blue concrete powder", + "Yellow concrete powder", + "Lime concrete powder", + "Pink concrete powder", + "Gray concrete powder", + "Silver concrete powder", + "Cyan concrete powder", + "Purple concrete powder", + "Blue concrete powder", + "Brown concrete powder", + "Green concrete powder", + "Red concrete powder", + "Black concrete powder"], + }, + "structure_block": { + "name": ["Structure Block (Save)", + "Structure Block (Load)", + "Structure Block (Corner)", + "Structure Block (Data)"], + "id": 255 + }, + "string": { + "name": "String", + "id": 287 + }, + "coal": { + "name": ["Coal", + "Charcoal"], + "id": 263 + }, + "wheat_seeds": { + "id": 295, + "name": "Wheat Seeds", + }, + "sign": { + "id": 323, + "name": "Sign", + }, + "redstone": { + "id": 331, + "name": "Redstone Dust", + }, + "dye": { + "id": 351, + "name": ["Ink Sack", + "Rose Red", + "Cactus Green", + "Cocoa Bean", + "Lapis Lazuli", + "Purple Dye", + "Cyan Dye", + "Light Gray Dye", + "Gray Dye", + "Pink Dye", + "Lime Dye", + "Dandelion Yellow", + "Light Blue Dye", + "Magenta Dye", + "Orange Dye", + "Bone Meal"] + }, + "bed-block": { + "id": 355, + "name": "Bed", + "place": "bed", + }, + "repeater": { + "id": 356, + "name": "Redstone Repeater", + "place": "repeater", + }, + "carrot": { + "id": 391, + "name": "Carrot", + }, + "potato": { + "id": 392, + "name": "Potato", + }, + "comparator": { + "id": 404, + "name": "Redstone Comparator", + "place": "comparator", + }, + "banner": { + "id": 425, + "name": "Banner", + } }