DAI 3.0 · STEP-BY-STEP
Structures & Modular Rooms
Create recognized physical structures with bounds, anchors, sockets, placement validation and repair logic.
What you are building
Primary path:
Create recognized physical structures with bounds, anchors, sockets, placement validation and repair logic.
data/<namespace>/dai_structures/ + functionsCreate recognized physical structures with bounds, anchors, sockets, placement validation and repair logic.
Step-by-step
- Define the module contractRecord size, anchor, connection sockets, occupied volume, rotation rules and capabilities.
- Build one physical template/functionCreate a room that is valid by itself before connecting anything.
- Add a recognition definitionRecognition proves the room exists physically instead of trusting only a purchase scoreboard.
- Validate a parent socketBefore building a child, prove the parent/socket/orientation/clear volume.
- Place server-sideConsume cost and place only after validation.
- Rescan/register the graphCapabilities become active only after the new room is recognized.
- Add repair/migrationVersioned repair functions fix old rooms without resetting the world.
Definition of done
- The feature still works after save/reload.
- Server state is authoritative; presentation mirrors it.
- Invalid input cannot duplicate rewards or bypass costs.
- Two players can use the system without sharing unintended temporary state.
- Any optional resource pack can be disabled without breaking datapack logic.
Next integration
Once this feature works alone, connect it to a complete loop instead of adding more isolated content. Use the complete-game tracks to see where it belongs in ACMS, Space Between Blocks, MineTrigger or Hollow Spiral.