Integrated Dynamics Mod Guide: Logic Networks, Variables & Automation
Integrated Dynamics adds a powerful logic-based automation system to Minecraft. Build cable networks, attach reader and writer parts to monitor inventories, redstone, fluids, and world data, then combine it all with a visual programming system using the Logic Programmer. It is the Redstone on steroids that tech-focused players have always wanted.
Overview
Integrated Dynamics is a logic and automation mod that lets you build
cable networks capable of reading data from the world, processing it through operators, and outputting actions based on the results. Think of it as a programmable Redstone replacement where you can read inventory contents, check weather conditions, monitor fluid levels, detect entities, and combine all that information using logical and arithmetic operators to drive automated systems.
The mod revolves around three core concepts: Cables that form networks, Parts that attach to cables to read or write data, and
Variable Cards that store and transport data values through the network. A dedicated Logic Programmer block lets you visually create complex logic by chaining operators together. The system supports 10 value types including Booleans, Integers, Doubles, Strings, Lists, and object references for Blocks, Items, Entities, and Fluids.
You can browse all items this mod adds and any available recipes using the tabs at the top of this page.
Getting Started
- 1
Craft Cables and a Wrench
Cables are the backbone of every Integrated Dynamics network. Every block and part you use must be connected through Cables. Craft a stack of Cables along with a
Wrench, which you will use to attach, remove, and configure parts on the network. Cables connect to adjacent Cables automatically and can also connect directly to compatible machines and inventories. - 2
Build a Simple Cable Network
Place Cables connecting the blocks you want to interact with. For your first network, connect a Chest to a
Cable line and then extend the Cable to wherever you want to monitor or control things. Every Cable segment becomes part of the same network, allowing data to flow freely between all connected parts. - 3
Attach Your First Reader Part
Parts are the sensors and actuators of your network. Right-click a
Cable with a Reader Part (such as an Inventory Reader or Redstone Reader) to attach it to that Cable face. The Reader will now monitor whatever block it is facing. Each Reader exposes multiple Aspects, which are the specific data channels you can read. For example, an Inventory Reader can tell you whether a Chest is full, empty, the total item count, or even list every ItemStack inside. - 4
Create a Variable Card
Variable Cards are the data carriers of the system. When you right-click a Reader Part, you can select an Aspect and write it onto a Variable Card. That card now represents a live data value, such as "is the Chest full?" (a Boolean) or "how many items are in the Chest?" (an Integer). You can place Variable Cards in a Variable Store to make them accessible network-wide, or use them directly in other parts. - 5
Power Your Network
Every part on the network consumes energy each tick. Place a Coal Generator on your
Cable network and fuel it with Coal, Charcoal, or any standard furnace fuel. It produces 20 RF per tick. For energy storage, add an Energy Battery to the network, which holds up to 100,000 RF by default. Without sufficient power, your parts will display an error and stop updating.
Each Reader or Writer Part consumes 1 RF/tick. Display Panels consume 2 RF/tick when displaying a
variable, or 1 RF/tick when idle. The Variable Store consumes 4 RF/tick and the Proxy consumes 2 RF/tick. The energy consumption multiplier is configurable (default 0, meaning free), so check your server's config.
Core Blocks
Cable
The
Cable is the fundamental building block of every network. Cables connect to each other and to compatible blocks automatically. You can attach up to six Parts to a single Cable (one per face). Cables also support Facades, which let you disguise them as any solid block for aesthetic purposes. To create a
Facade, craft a Facade item with any block in a crafting grid, then right-click it onto a Cable.
Logic Programmer
The Logic Programmer is where you create and edit the logic that drives your automation. Place a
Variable Card in the Logic Programmer to write operations onto it. The interface shows all available value types and operators. You can create constant values (a specific number, a Boolean true/false), or build operator chains that combine multiple inputs. The result is written onto the Variable Card, which you then place in a Variable Store or directly into a part.
Variable Store
The
Variable Store is an inventory specifically for Variable Cards. When connected to the network via
Cable, all Variable Cards inside become accessible to any part on the network. This is essential for sharing data between readers, operators, and writers. The Variable Store consumes 4 RF/tick, making it one of the more energy-hungry components.
Proxy
The Proxy block exposes a
variable reference that can be accessed from other networks or used as an indirect reference. Each Proxy has a unique ID that other components can reference. It consumes 2 RF/tick and is useful for creating modular network designs where you want to share data across separate
cable networks.
Materializer
The Materializer takes a
variable value and creates a new Variable Card from it. This is useful when you want to capture a computed value at a specific moment and reuse it elsewhere. The Materializer retains its NBT data when broken, so your configuration persists when you pick it up.
Reader Parts
Reader Parts are the sensors of your network. Each reader type specializes in a different domain of data. You attach them to
Cable faces pointing toward the block you want to monitor. The mod includes six Reader types, each with multiple Aspects (data channels) you can read.
Redstone Reader
Reads the Redstone signal on the target block face. Aspects include Boolean checks for low signal (0), non-low signal (greater than 0), and high signal (exactly 15), plus Integer values for the exact signal strength and comparator output. This is your bridge between vanilla Redstone and the Integrated Dynamics logic system.
Inventory Reader
Monitors any block with an item inventory (Chests, Hoppers, machines). It can tell you if the inventory is full, empty, or non-empty (Boolean), the total item count across all slots (Integer), a list of all ItemStacks, or the contents of a specific slot. This is one of the most commonly used readers for automation setups.
World Reader
The most versatile reader, capable of reading environmental data from the world. It provides weather conditions (clear, raining, thunder), time data (day/night, daytime ticks, total world time), light levels, block coordinates, dimension ID, player count, world name, block detection, entity lists in the target area, Item Frame rotation and contents, and rain countdown timers. This reader alone enables weather-reactive builds, time-based automation, and entity detection systems.
Fluid Reader
Monitors fluid tanks and containers. Aspects include Boolean states (full, empty, non-empty, applicable), Integer values for fluid amount, capacity, total amounts across all tanks, and tank count, a Double fill ratio (0.0 to 1.0), plus List access to all FluidStacks and capacities. Essential for managing fluid-based automation and tank monitoring.
Minecraft Reader & Network Reader
The Minecraft Reader provides server-level data: a random Integer, the player count, server tick time, and a list of all online players as Entity references. The Network Reader monitors your Integrated Dynamics network itself, reporting whether the network is active, the total element count, energy battery count, current stored energy, and maximum energy capacity. These are invaluable for self-monitoring networks that can alert you to problems.
Writer Parts & Display Panels
Redstone Writer
The Redstone Writer is currently the only writer part in the mod. It outputs a Redstone signal based on a
variable value. In Boolean mode, it outputs a full signal strength of 15 when the value is true. In Integer mode, it outputs a variable signal level (0 through 15) based on the Integer variable. Combined with the logic system, this lets you create smart Redstone outputs that respond to any data your readers can collect.
Display Panels
Three panel types let you visualize data from your network. The Static Light Panel emits a constant light level of 15, acting as a simple lamp that connects to your
cable network. The Dynamic Light Panel adjusts its light level based on a
variable value, letting you create lights that respond to data (for example, brightness proportional to fluid fill level). The Display Panel renders the value of a variable directly on its face, showing text, numbers, or object information right on the Cable.
Use the
Labeller item to name your
Variable Cards. Complex networks can have dozens of variables, and without labels they all look identical. Right-click a Variable Card with the Labeller to give it a meaningful name like "chest_is_full" or "current_temperature". This makes debugging and maintaining your logic much easier.
Value Types
Every piece of data in Integrated Dynamics has a type. Understanding value types is essential for building working logic, because operators require specific input types and produce specific output types. The mod defines 10 value types organized into primitives and objects, plus 3 categories used for type matching.
Value Types
| Boolean | Integer | Double | Long | String | List | |
|---|---|---|---|---|---|---|
| Category | Primitive | Primitive (Number) | Primitive (Number) | Primitive (Number) | Primitive | Collection |
| Values | true / false | 32-bit whole numbers | Floating-point decimals | 64-bit whole numbers | Text | Ordered list of any type |
| Common Use | Conditions, toggles | Counts, levels, IDs | Ratios, percentages | World time, large values | Names, display text | Inventory contents, entity lists |
| Example Source | Is Chest full? | Item count in Chest | Tank fill ratio | Total world time | World name | All items in Chest |
In addition to the primitive and collection types, four object types reference in-game objects directly: Block (a block state reference), ItemStack (an item or stack of items), Entity (a living entity, mob, or player), and FluidStack (a fluid with an amount). These object types let operators inspect properties like an entity's health, an item's damage, or a fluid's luminosity. The type system also supports casting between compatible types, for example converting an Integer to a Double.
The Operator System
Operators are the logic gates and functions that transform your data. You apply operators to
Variable Cards using the Logic Programmer. The mod includes over 80 operators organized into several categories, giving you a full programming toolkit.
Logical Operators
AND (&&), OR (||), and NOT (!) operate on Boolean values. These are the foundation of conditional logic. For example, you might AND together "chest is non-empty" with "it is daytime" to create a Boolean that is only true when both conditions are met.
Arithmetic Operators
Addition (+), Subtraction (-), Multiplication (*), Division (/), Maximum (max), and Minimum (min) work on any numeric value type (Integer, Double, Long). Integer-specific operators include Modulus (%), Increment (++), and Decrement (--). These let you perform calculations on data, such as computing how much space remains in a tank or averaging tick times.
Relational Operators
Equals (==), Not Equals (!=), Greater Than (>), Less Than (<), Greater Than or Equal (>=), and Less Than or Equal (<=) compare values and return Booleans. These are essential for threshold-based automation, such as "activate the Redstone Writer when stored energy drops below 50,000".
Object Operators
A rich set of operators lets you inspect game objects. ItemStack operators can check stack size, maximum stack size, whether an item is stackable, damageable, enchanted, its damage value, rarity, strength against specific blocks, and fluid capacity. Entity operators check whether something is a mob, animal, item entity, or player, and can read health, dimensions, and status effects like burning, wet, sneaking, or eating. Entity operators can also access armor and player inventories as Lists. Block operators check opacity and convert to ItemStacks. Fluid operators read amount, block form, luminosity, density, viscosity, whether it is gaseous, and rarity.
Utility Operators
The Choice operator (if-then-else) takes a Boolean and two values, returning one or the other based on the condition. The Identity operator simply passes a value through unchanged, useful for type matching. String operators include Length (len) and Concatenation (+). Numeric rounding operators (Round, Ceiling, Floor) convert Doubles to Integers. Binary operators (AND, OR, XOR, Complement, Left Shift, Right Shift) work at the bit level for advanced integer manipulation.
Operators are strictly typed. You cannot add a Boolean to an Integer or compare a String with a Double. If you see errors on your Display Panel, check that every operator is receiving the correct value types. Use cast operators to convert between compatible types when needed. The Logic Programmer shows expected input types for each operator.
Energy System
Integrated Dynamics networks require energy (RF) to operate. The mod provides its own energy generation and storage to keep you self-sufficient, though the energy system is also compatible with other tech mods that use RF.
Coal Generator
The Coal Generator is your primary early-game power source. It accepts any standard Furnace fuel (Coal, Charcoal, Wood, etc.) and produces a constant 20 RF per tick while burning. Burn times match vanilla Furnace fuel values, so a single piece of Coal provides 1,600 ticks of burn time (80 seconds), generating 32,000 RF total. The generator only burns fuel when the network has capacity to accept the energy, so it will not waste fuel on a fully charged network.
Energy Battery
The Energy Battery stores up to 100,000 RF by default (configurable). It displays a fill level indicator with 4 visual stages. When you break an Energy Battery, it retains its stored energy in the dropped item, and the item tooltip shows the current charge. For testing or creative mode builds, the Creative Energy Battery provides unlimited energy.
Energy Consumption by Component
| Reader Parts (all types) | 1 RF/tick |
| Redstone Writer | 1 RF/tick |
| Static Light Panel | 0 RF/tick |
| Dynamic Light Panel | 1 RF/tick |
| Display Panel (idle) | 1 RF/tick |
| Display Panel (active) | 2 RF/tick |
| Proxy | 2 RF/tick |
| Variable Store | 4 RF/tick |
| Coal Generator (output) | +20 RF/tick |
| Energy Battery (capacity) | 100,000 RF |
Building Practical Automation
The real power of Integrated Dynamics comes from combining readers, operators, and writers into practical automation systems. Here are some common patterns to get you thinking about what is possible.
Smart Redstone Signals
The most basic pattern is Read, Process, Write. Place an Inventory Reader facing a Chest, create a
Variable Card for "is non-empty", and feed that Boolean into a Redstone Writer. The Writer outputs a signal when the Chest has items. You can make this smarter by using the item count Integer with a relational operator to only trigger when the Chest has more than 32 items, or combine multiple inventory checks with AND/OR logic.
Weather-Reactive Systems
A World Reader can detect rain, thunder, day/night, and more. Combine weather Booleans with time data to create systems that respond to environmental conditions. For example, activate crop-harvesting machines only during daytime clear weather, or trigger defenses when thunder starts.
Fluid Level Monitoring
Use a Fluid Reader to monitor tank fill ratios. The Double fill ratio aspect returns a value between 0.0 and 1.0. Compare this against thresholds (e.g., less than 0.25) with relational operators to activate pumps when tanks run low. The Integer aspects give you exact mB amounts if you need precise control.
Network Self-Monitoring
The Network Reader lets your network monitor itself. Track energy levels, count connected elements, and display all this data on Display Panels for a dashboard-style overview of your automation setup. This is especially useful in large networks where tracking down a problem part could otherwise take ages.
Items & Tools
Variable Card
The
Variable Card is the data carrier of the entire system. Blank Variable Cards are written on by interacting with Reader Parts (to capture aspects) or using the Logic Programmer (to create computed values). Each card has a unique numeric ID and displays the type of value it holds. Cards change their visual model based on the value type they carry, making it easier to sort through them at a glance.
Wrench
The
Wrench is used for
cable and part management. Right-click parts to configure them, sneak-right-click to remove parts from cables, and use it on cables themselves for network manipulation. Keep a Wrench in your hotbar whenever you are working on your network.
Labeller
The
Labeller opens a GUI where you can type a name for a
Variable Card. Named variables display their label in tooltips and in the Logic Programmer, making complex networks much easier to manage. Get into the habit of labelling every variable as you create it.
Facade
Facades disguise Cables as solid blocks. Craft a
Facade item, then combine it with any placeable block in a crafting grid. The resulting Facade can be applied to any
Cable, making it look like that block while still functioning as a Cable underneath. This is purely cosmetic but invaluable for hiding networks in builds.
Configuration
Integrated Dynamics has several useful configuration options. The energyConsumptionMultiplier (default 0) controls how much energy parts consume per tick. At 0, parts consume no energy at all, making the mod accessible for players who just want the logic without worrying about power. Increase this value to add an energy management challenge. The defaultPartUpdateFreq (default 1 tick) controls how often parts refresh their data. Increasing this reduces server load on large networks at the cost of slower updates. The partOverlayRenderdistance (default 15 blocks) controls how far away part overlays are visible. Lower this on low-end systems to improve rendering performance. The Energy Battery capacity defaults to 100,000 RF and can be adjusted in the block config.
Frequently Asked Questions
Why are my parts not working / showing errors?
The most common cause is insufficient energy. If the energyConsumptionMultiplier is above 0, every part needs power. Add a Coal Generator and Energy Battery to your network. If energy is not the issue, check that your
Variable Card types match what the operator or writer expects. Type mismatches will show error messages on the part overlay.
How do I connect two separate cable networks?
Simply place Cables connecting the two networks. All Cables that touch form one unified network. If you want to keep networks separate but share specific data, use a Proxy block. The Proxy has a unique ID that can be referenced from another network to access a specific
variable without merging the networks.
Can I use Integrated Dynamics with other tech mods?
Yes. The Inventory Reader works with any block that has an item inventory (including machines from other mods), the Fluid Reader works with any standard Forge fluid tank, and the Redstone Writer outputs standard Redstone signals. The energy system uses RF, which is compatible with most tech mods. Integrated Dynamics is designed to complement other mods rather than replace them.
What is the difference between a Variable Store and the Logic Programmer?
The Logic Programmer is a crafting station for
Variable Cards. You use it to write values and operators onto blank cards. The Variable Store is a storage block. You place your finished Variable Cards inside it so that the entire network can access those variables. Think of the Logic Programmer as where you write the code, and the Variable Store as where you deploy it.
How do I read data from a specific inventory slot?
The Inventory Reader's slot-specific Aspect lets you target a particular inventory slot. When writing this aspect onto a
Variable Card, you can configure which slot index to read (starting from 0). This returns an ItemStack object type, which you can then inspect further using ItemStack operators to check damage, enchantments, stack size, and more.
My network is causing lag. How do I optimize it?
Large networks with many parts updating every tick can impact server performance. Increase the defaultPartUpdateFreq config value to reduce how often parts refresh (e.g., set to 5 or 10 for parts that do not need instant updates). Reduce the partOverlayRenderdistance for client-side performance. Keep networks focused: rather than one massive network, split into smaller specialized networks connected through Proxies where possible.