How to Add a Custom Block with Json Things
Defining the Block
Blocks in Json Things follow the same file-per-thing pattern as items. Create a JSON file in your things folder and set the type to the block type. You'll specify properties such as hardness, resistance, whether it requires a tool, and what it drops when broken. The material or sound group field controls step sounds and some behavior flags.
You also need to decide how it renders. Json Things supports several model types — a simple cube using a texture, a cross model for plants, or a custom model reference. For a basic full block, point the texture field at a PNG in your pack's assets/<namespace>/textures/block/ folder.
Placing and Verifying
Reload or restart, then use /setblock ~ ~ ~ mypack:my_block or grab it from the creative inventory if it's registered there. If the block appears as a purple-and-black checker, your texture path is wrong. If it's invisible but solid, your model reference is broken. Check that the namespace in your JSON matches the folder name in assets. Blocks that need to drop themselves should have a loot or drop configuration; otherwise they may drop nothing when mined in survival.