Conduit Bundle
The Conduit Bundle (block: BlockConduitBundle, tile: TileConduitBundle) is Ender IO’s central hub for all conduit types. It is a single-block tile entity that serves as the attachment point for up to six different conduit networks, providing a unified interface for power, fluids, items, redstone signals, ME network traffic, and OpenComputers cables.
Supported Conduit Types
| Conduit | Network Class | Function |
|---|---|---|
| Power Conduit | PowerConduitNetwork |
RF power transfer |
| Fluid Conduit | LiquidConduitNetwork |
Liquid/fluid transfer |
| Item Conduit | ItemConduitNetwork |
Item transfer with filtering |
| Redstone Conduit | RedstoneConduitNetwork |
Redstone signal transfer |
| ME Conduit | MEConduitNetwork |
Applied Energistics 2 network access |
| OC Conduit | OCConduitNetwork |
OpenComputers network access |
| Gas Conduit | GasConduitNetwork |
Mekanism gas transfer |
Core Block
- Block:
crazypants.enderio.conduit.BlockConduitBundle - Tile:
crazypants.enderio.conduit.TileConduitBundle - ModObject:
blockConduitBundle
Key Interfaces Implemented
TileConduitBundle implements IConduitBundle, which aggregates:
IInternalPowerHandler— RF power I/OIFluidHandler— fluid tank I/O (via liquid conduits)IItemDuct— item transfer I/O (cofh API)IGasHandler— gas transfer I/O (Mekanism API, optional)IGridHost— AE2 network node attachment (optional)Environment/SidedEnvironment— OpenComputers node (optional)IMicroblockSupporterTile— Immibis Microblocks support (optional)
Formation Rules
- No multiblock formation — the bundle is a single block. Each placed
BlockConduitBundleis an independent attachment point. - Conduits are inserted into the bundle by right-clicking with the conduit item.
- Connections between bundles are formed automatically when two bundles have compatible conduit types facing each other.
- Auto-connect: Conduits scan adjacent blocks each tick and create connections when a compatible conduit is detected on an adjacent face.
- Connection modes per conduit type:
INPUT,OUTPUT,INPUT_OUTPUT,DISABLED— configurable via the conduit GUI.
Facades
The bundle supports conduit facades (ItemConduitFacade), which allow it to be covered with any painted block texture. Facade state is stored per-bundle (block type + metadata). Supports both basic and “annihilator” facade types via Immibis Microblocks API.
Conduit Network Architecture
Each conduit type maintains its own network:
- Discovery: When two bundle tiles detect compatible conduit connections, they form a network.
- Tick-based update: Each conduit network ticks independently via
AbstractConduitNetwork.updateEntity(). - Network-wide logic: Networks aggregate all connections and propagate transfer operations across the network (e.g.,
NetworkPowerManagerfor power,LiquidConduitNetworkfor fluids). - Extraction modes: Item conduits support
ROUND_ROBIN,RANDOM, andFIRST_AVAILABLEextraction strategies.
Energy / Data Flow
- Power:
NetworkPowerManagerdistributes RF power across all connected power conduits. Tracks per-conduit input/output rates and balances load. - Fluids:
LiquidConduitNetworktransfers fluids between tanks. Each conduit can hold a small internal buffer (displayed as fill level). Supports multiple channel types (ender-gold-silver-iron-copper-yellorium). - Items:
ItemConduitNetworkmoves items between inventories. Supports filter upgrades (ItemFilter,ItemModFilter,BigItemFilter) and speed upgrades. - Redstone:
RedstoneConduitNetworkpropagates signal. Insulated redstone conduits can connect to vanilla redstone and carry up to 16 signal colors. - ME/OC: Passive network interfaces; no active transfer logic in the conduit itself.
Rendering
ConduitBundleRendererrenders all attached conduits and their connectors in 3D.DefaultConduitRendererhandles the base conduit shape.- Individual conduit types have dedicated renderers (e.g.,
PowerConduitRenderer,LiquidConduitRenderer). - Connectors are rendered as rounded segments via
RoundedSegmentRenderer.