DAI 3.0 · NATIVE BLOCKS
Build Native Grid Blocks
Create always-on lights, boost floors and interactive panels without borrowing a vanilla block carrier.
1. Start with a registry-backed block
In Creator → DAI Content choose Native Block Starter. Keep registry_backed: true and native_registry: "block". A new block ID is registry-static, so restart after adding it.
2. Give it real light and physics
"block": {
"hardness": 2.0,
"sound": "metal",
"luminance": 15,
"emissive_rendering": true,
"speed_factor": 1.2,
"states": ["powered"],
"redstone_state": "powered"
}This replaces invisible minecraft:light helper cells for authored lamps.
3. Add lifecycle behavior
"events": {
"use": "action:demo:toggle_panel",
"step": "action:demo:boost_step",
"redstone_changed": "action:demo:redstone"
}Other callbacks include place, break, attack, neighbor_changed, entity_inside, random_tick and scheduled_tick.
Use the Creator: these schemas can be pasted into the type-specific JSON fields in DAI Content / Runtime Definitions. Unknown fields are preserved on import/export.