Super Factory Manager

Super Factory Manager is a mod which allows you to set up systems that moves and manages items between inventories and machines

Super Factory Manager Mod Guide: Visual Automation, Item Routing & Redstone Control

Super Factory Manager lets you build powerful automation systems using a visual flowchart programming interface. Route items between inventories, transfer fluids, control redstone signals, and even auto-craft recipes, all from a single Machine Inventory Manager block connected by cables.

Overview

Super Factory Manager (SFM) is a logistics and automation mod that replaces messy pipe networks with a single, programmable control block. Instead of placing dozens of Hoppers, Item Conduits, or pipes between your machines, you place one Machine Inventory Manager, connect it to your inventories with Inventory Cables, and build a visual flowchart program that tells items, fluids, and redstone signals exactly where to go. The mod adds 11 blocks and 1 item, but the depth comes from the 17 different programming components you can wire together inside the Manager's GUI.

The Manager can reach inventories up to 256 blocks away through cables, connect to up to 2,048 inventories simultaneously, and run up to 511 program components at once. It handles items, fluids, redstone signals, and even auto-crafting. You can browse all the mod's items and recipes using the tabs on this page.

Getting Started

  1. 1

    Craft the Machine Inventory Manager

    The Machine Inventory Manager is the heart of every SFM setup. This single block acts as both the controller and a cable node itself, so any inventory touching it directly is already connected. Place it adjacent to the inventories you want to manage, or use Inventory Cables to extend its reach.

  2. 2

    Craft Inventory Cables

    Inventory Cables extend the Manager's network. Any inventory (Chest, Furnace, Barrel, modded machine) adjacent to a cable becomes accessible to the Manager. Cables connect to each other and to the Manager, forming a network up to 256 blocks long. You do not need cables if all your inventories are directly touching the Manager block.

  3. 3

    Open the Manager GUI and Create a Trigger

    Right-click the Manager to open its visual programming interface. Click the "Create" button to add your first component. Start with a Trigger, which is what activates your program. Set it to "On interval" mode and configure the interval (default is 1 second / 20 ticks). This Trigger will fire your program every interval.

  4. 4

    Add Input and Output Components

    Create an Input component and an Output component. In each one, open the Inventories menu to select which connected inventories it should pull from or push to. You can filter by specific sides (top, bottom, north, south, east, west) and select specific slot ranges. Then connect the Trigger's output pin to the Input, and the Input's output to the Output by clicking and dragging between the connection points.

  5. 5

    Configure Item Filters and Test

    In the Input or Output component, open the Items menu to set up filtering. You can whitelist or blacklist specific items, use damage value matching, NBT-independent detection, fuzzy detection, or Ore Dictionary matching. Once your flow is wired up (Trigger to Input to Output), close the GUI and your items will start transferring automatically. There is no transfer limit per tick for items; the Manager moves everything it can each cycle.

Visual Programming, Not Text Coding

SFM uses a visual flowchart interface where you drag and drop components onto a canvas and wire them together with connections. You never type code. Each component has expandable menus for configuring inventories, items, fluids, redstone, and more. Think of it like a visual version of Redstone logic, but far more powerful.

Core Blocks

Machine Inventory Manager

The central block of the mod. It stores your entire program (up to 511 components), discovers all inventories connected through cables or touching it directly, and executes your flow logic on every trigger cycle. It has a hardness of 2.0 and is made from Iron. The Manager itself also functions as a cable node, so blocks adjacent to it are automatically part of the network. When placed or when cables change, it automatically rescans for connected inventories.

Inventory Cable

The basic connector. Cables link the Manager to distant inventories. They have a hardness of 0.4, making them quick to break. Any block with an inventory (vanilla or modded) that is adjacent to a cable becomes accessible to the Manager. The maximum cable chain length from the Manager is 256 blocks, and you can connect up to 2,048 inventories total.

Inventory Relay and Advanced Inventory Relay

The Inventory Relay acts as a cable that can also interface with connected inventories directionally. The Advanced Inventory Relay adds a permission system for multiplayer: the player who places it becomes the owner, and can grant Editor or User access to other players. Editors can control which player inventories the relay accesses, while Users have read-only visibility. This is useful for shared automation systems where you want to control who can interact with certain inventories.

The Programming System

Right-clicking the Manager opens a visual canvas where you place, configure, and wire together program components. Each component appears as a draggable box with input and output connection pins on its sides. You wire components together by clicking one pin and dragging to another. The program flows from Triggers through Inputs, Outputs, Conditions, and other logic components.

Triggers

Every program starts with a Trigger. Triggers can fire on a timed interval (minimum 1 second / 20 ticks), on a Redstone pulse (high pulse, low pulse, while high, or while low), or on a block update detected by a Block Detector (BUD). You can configure which Redstone Receivers or Block Detectors the Trigger listens to, which sides to detect signals on, and the required signal strength range (0 through 15). A single Manager can have multiple Triggers running independent flows simultaneously.

Input and Output

Input components pull items from selected inventories. Output components push items to selected inventories. Both let you specify which connected inventories to use, which sides of those inventories to access (important for machines with sided inventories like Furnaces), which slot ranges to use, and item filters. Item filtering supports four detection modes: Precise (exact item match), NBT-independent (ignores NBT tags), Fuzzy (ignores damage values), and Ore Dictionary (matches equivalent ores across mods). You can use either a whitelist or blacklist approach.

Fluid Input and Fluid Output

These work like their item counterparts but for fluids. You select tanks instead of inventories, choose fluid types to filter, and specify amounts in either Buckets or Milli Buckets. Fluid transfers follow the same trigger and connection logic as item transfers.

Conditions

Condition components check whether an inventory contains certain items (or a tank contains certain fluids) and branch the flow accordingly. They have a True output and a False output, letting you build if/else logic. The Redstone Condition checks the signal strength at Redstone Nodes and branches based on whether it meets your configured range. Conditions can require all targets to match or just one.

Use Groups to Stay Organized

As your programs grow complex, use Command Group components to nest related logic inside a collapsible container. Groups can hold up to 5 internal connections and keep your canvas clean. You can drag components into a Group by dropping them on its body, and open the Group by clicking its content area.

Advanced Programming Components

Flow Control (Split and Collect)

Flow Control components let you split one signal into multiple paths (2 or 5 outputs) or collect multiple paths into one (2 or 5 inputs). The split mode can use "Fair Split" to distribute items evenly across outputs, or sequential mode to fill each destination in order. This is essential for distributing items across multiple machines or merging outputs from several sources.

For Each Loop

The For Each Loop iterates over a list of inventories stored in a Variable, executing the connected logic once per inventory. You configure a list variable (the collection to iterate over) and an element variable (representing the current inventory in each iteration). This is how you process multiple inventories dynamically without wiring each one individually.

Container Variables

SFM supports 16 color-coded variables (White, Orange, Magenta, Light Blue, Yellow, Lime, Pink, Gray, Light Gray, Cyan, Purple, Blue, Brown, Green, Red, Black). Each variable stores a reference to one or more inventories and can be declared once, then used across multiple Input, Output, and Condition components. This lets you dynamically reference inventories and build more flexible programs. Variables must be declared before use; using an undeclared variable will show an error.

Auto Crafter

The Auto Crafter component can execute crafting recipes using items from connected inventories. You set a recipe in its crafting grid, configure priority (move items before crafting, or craft before moving), and designate an overflow inventory for leftover container items like Buckets. When triggered, it pulls the required ingredients from connected inventories, crafts the result, and outputs it along the flow.

Redstone Integration

Redstone Receiver

This block detects incoming Redstone signals on all six sides and reports them to the Manager. You can use Redstone Receivers as trigger conditions: for example, only run your item sorting program when a lever is flipped. The Trigger component lets you select specific Receivers to listen to and configure whether it responds to high pulses, low pulses, or sustained signals. You can also set an analog strength range (e.g., only trigger when signal strength is between 8 and 15).

Redstone Emitter

The Redstone Emitter outputs configurable Redstone signals per side. Through the Redstone Emitter programming component, you can set the output to a fixed strength (0-15), toggle it on and off, take the max or min of multiple inputs, or increase/decrease incrementally. Emitters can produce either strong or weak power and support pulse mode with configurable duration. Pulse override modes include Extend Old (lengthen existing pulse), Keep All (stack up to 200 pulses per side), Keep Old (ignore new while active), and Keep New (cancel old pulse).

Utility Blocks

Block Detector (BUD)

The Block Detector monitors all six adjacent blocks for state changes (block type and metadata). When a neighboring block changes, it triggers the Manager. In the Trigger component, you can configure which Block Detectors to listen to and filter by specific sides. The detector stores both the current and previous block states, so you can set up logic that responds to specific transitions (e.g., a block appearing or disappearing). This is perfect for triggering automation when a crop finishes growing or a machine completes processing.

Block Gate (Breaker)

The Block Gate can break and place blocks in a configurable direction. It uses a simulated player (a Forge FakePlayer named "[SFM_PLAYER]") to perform the action, which means it respects mod protections and interacts with blocks as a player would. Items from broken blocks appear in its internal inventory, accessible to the Manager's Input components. You can also place items into its inventory via Output components, and it will attempt to place them as blocks in the target direction. Right-click the block to change its placement direction (sneak-click to invert).

Item Valve and Rapid Item Valve

The Item Valve picks up dropped item entities within a 3-block cube radius and makes them available to the Manager's network. It is directional, so you can aim it toward the area you want to collect from. The Rapid Item Valve (Advanced variant) also collects player-thrown items, not just naturally dropped ones. These are invaluable for collecting mob farm drops, broken block items, or any situation where items end up on the ground.

Sign Updater

The Sign Updater is placed adjacent to a vanilla Sign and can dynamically update its text through the Sign programming component. You can configure which of the four lines to update and set the text content. This lets you create dynamic displays showing system status, item counts, or other program state.

Block Gate Uses a Fake Player

The Block Gate simulates a player named "[SFM_PLAYER]" to break and place blocks. Some server protection plugins or mods may block FakePlayer actions. If your Block Gate is not working, check that your server's protection system allows this fake player to interact with blocks in the target area.

Cable Camouflage System

SFM includes three camouflage variants that disguise cables as other blocks, keeping your builds looking clean. All three are crafted from Inventory Cables and can be controlled programmatically through the Camouflage programming component.

Cable Camouflage (Basic)

Disguises the outside of the cable as any solid block. Through the Camouflage programming component, you can set which block to mimic on each of the six sides independently. The block's appearance updates dynamically when the program runs.

Double Sided Cable Camouflage

This variant can display a different block on its inside faces versus its outside faces. The Camouflage programming component offers four inside modes: Only Outside (only changes outer appearance), Only Inside (only inner), Same (both sides match), and Opposite (inside shows the opposite side's block). This is useful for walls where you want one material facing a room and another facing a corridor.

Transforming Cable Camouflage

The most advanced variant adds custom collision bounds and shapes. You can resize the block's hitbox along all three axes (X, Y, Z) with 32 subdivisions per axis, toggle collision on or off entirely, and choose between full collision or custom bounds. This lets you create invisible paths, partial blocks, or decorative shapes that players can walk through. The bounds and collision settings are configured through the Camouflage programming component's Bounds menu.

Cable Clusters

Cable Clusters let you combine multiple cable-type blocks into a single block, reducing clutter. You craft a Cable Cluster from cables and then combine it with other SFM blocks (Block Detectors, Block Gates, Redstone Emitters, Redstone Receivers, Item Valves, Inventory Relays, Camouflages, and Sign Updaters) in a crafting grid. Each element retains its full functionality within the cluster. The Advanced Cable Cluster (crafted by surrounding a Cable Cluster with 8 Inventory Cables) also acts as a cable node in the network, so it extends connectivity while housing other components.

Clusters are particularly powerful when you need several SFM blocks in a tight space. Instead of placing a Block Detector, a Redstone Emitter, and a Camouflage block as three separate blocks, combine them into one Cluster that does all three jobs.

Memory Disc

The Memory Disc is the mod's only standalone item. It stores a complete copy of a Manager's program configuration, letting you transfer setups between Managers or back up complex programs. To use it, sneak-right-click a Manager while holding the disc. If the disc is empty, it copies the Manager's program data onto the disc (including its world coordinates as a reference). If the disc already has data, it writes that program into the Manager. The disc tooltip shows either the author name or the coordinates of the Manager it was copied from. The disc has a stack size of 1.

Manager Settings and Preferences

The Manager GUI includes a Preferences button that lets you customize the interface behavior. Auto-Close Groups will automatically close group components when you reopen the interface. Auto-Side automatically selects the Up direction for Output components and Down for Input and Condition components, saving clicks when configuring sided inventories. Auto-Blacklist starts Input components with an empty blacklist (meaning they accept everything by default). Enlarge Interfaces scales the GUI to fit your screen. Auto Move First sets new Auto Crafter components to prioritize moving items before crafting.

In Creative mode, the Manager Settings menu adds a Limitless option that removes all restrictions: the 511 component limit, the 2,048 inventory limit, and the 256-block cable reach limit. This is useful for testing massive automation setups in creative worlds.

Manager Limits

Max Cable Reach256 blocks
Max Connected Inventories2,048
Max Program Components511
Minimum Trigger Interval20 ticks (1 second)
Variable Slots16 (color-coded)
Pulse Queue per SideUp to 200

Example Automation Setups

Furnace Automation

Connect a Manager to a source Chest and a Furnace via cables. Create a Trigger on interval, then add two Output components: one that sends Coal to the Furnace's bottom side (fuel slot), and one that sends everything else to the Furnace's top side (input slot). Add an Input component that pulls from the Furnace's side slot (output) back to a results Chest. Use the Target Inventory menu to configure which side of the Furnace each component interacts with.

Conditional Item Sorting

Use a Condition component to check if a destination Chest contains fewer than 64 of a specific item. Wire the True output to an Output that sends that item to the Chest, and the False output to an Output that routes overflow to a different Chest. Chain multiple Condition and Output pairs to build a priority-based sorting system that fills important storage first.

Redstone-Controlled Processing

Place a Redstone Receiver next to a Lever and connect it to the Manager's cable network. Set your Trigger to fire "On high pulse" from that specific Receiver. Now your entire automation program only runs when the Lever is on. Combine this with a Redstone Emitter on the output side to signal downstream systems when processing completes.

Slot IDs for Vanilla Containers

When configuring slot ranges in the Target Inventory menu, remember vanilla slot numbering. A Furnace has slot 0 (input), slot 1 (fuel), and slot 2 (output). A Chest has slots 0-26. A Double Chest has slots 0-53. A Hopper has slots 0-4. Knowing these lets you precisely control which slots the Manager reads from or writes to.

Cable Block Comparison

Inventory CableInventory RelayAdvanced RelayCable Cluster
FunctionNetwork connectorDirectional connectorPermission connectorMulti-block combiner
Hardness0.41.21.22.0
Acts as CableYesNoNoAdvanced only
Has Tile EntityNoYesYesYes
Special FeatureNoneDirection-awarePlayer permissionsHolds multiple blocks

Frequently Asked Questions

Why isn't my Manager moving items?

Check three things: First, make sure your Trigger is set to an interval or redstone mode and is connected to your Input/Output chain. Second, verify that the inventories are actually connected to the Manager's cable network (they must be directly adjacent to a cable or the Manager itself). Third, check your Input and Output components' Inventory menus to ensure the correct inventories are selected. If using sided inventories, confirm you have the right side configured.

Is there a limit to how many items the Manager can move per tick?

No. Unlike pipes or Hoppers, the Manager has no per-tick transfer limit for items or fluids. Each trigger cycle moves everything that matches your filters in one operation. The minimum trigger interval is 20 ticks (1 second), so at most you are running your program once per second. The speed bottleneck is the trigger interval, not the transfer capacity.

Can I use SFM with modded machines like Mekanism or Thermal?

Yes. The Manager discovers any block that exposes a Forge IItemHandler or IFluidHandler capability, which includes virtually all modded machines. You may need to configure the correct side in the Target menu, since many modded machines have sided inventory access (e.g., input from the top, output from the bottom).

What happens if I break a Manager with a program in it?

The Manager drops as an item and retains its program data. When you place it again, the program is still there, but you will need to reconnect cables and the Manager will rescan for inventories. If you want to back up or transfer a program, use a Memory Disc instead: sneak-right-click the Manager to copy the program to the disc.

How do Cable Clusters work?

Craft a Cable Cluster and then combine it with other SFM blocks (Block Detectors, Emitters, Receivers, Camouflages, etc.) in a crafting grid. The resulting cluster block contains all the combined components in a single block space. Each element retains full functionality. Hover over a Cable Cluster item to see which components it contains. The Advanced Cable Cluster variant also functions as a cable, extending network connectivity.

Can I have multiple Managers on the same cable network?

Yes. Each Manager independently scans for inventories along its connected cables and runs its own program. Multiple Managers sharing the same cable network will each see and can interact with all connected inventories. However, be careful about race conditions where two Managers try to move the same items simultaneously.

Draft preview — this guide has not been reviewed or published yet.