conduit-prefab
conduit-prefab is the data-driven scene layer. A prefab is a JSON file under data/<namespace>/prefabs/<id>.json describing block volumes, anchors, zones, screens, labels, and sub-prefab references. The SceneStore loads prefabs at server start and on /reload; Scene.instantiate materialises one at any origin with any parameter bindings; Scene.remove rolls it back. Variable substitution (@xMin, @yFloor + 1) lets one prefab template parameterise across dozens of call sites.
When to depend on this
Section titled “When to depend on this”- You want game geometry defined in data files, not Java.
- You want
/reloadto re-instantiate edited prefabs without restarting the server. - You want to mark named cuboid zones in a dimension and run callbacks on player entry.
- You’re spawning the same staging box / lobby room shape with different dimensions per call site.
Features
Section titled “Features”- Prefab loading + schema versioning
- Scene runtime
- Prefab bindings (variable substitution)
- Prefab geometry (volumes, IntVec3, IntExpr, orientation)
- Zones + zone manager
- Screen + label children inside prefabs
API surface
Section titled “API surface”me.zlex.conduit.prefab — Prefab, PrefabElement (sealed), PrefabMigrations, Scene, SceneStore, PrefabBindings, BlockVolumeShape, IntVec3, IntExpr, OrientationUtil, ZoneDef, ZoneManager, ScreenChild, LabelLineMaven coordinate: me.zlex:conduit-prefab:<engine_version>. Depends on conduit-core, conduit-render.