Links
Tags
Creators
Details
1.5.0
Compatibility
Changes
AE2UD 1.5.0
Autocrafting is the centre of this release: a visual crafting tree, crafting jobs that say why they would not start, and crafting CPUs you can reserve. The pattern terminal also grew from nine slots to forty, and ME Interfaces learned to drive many machines through a P2P tunnel.
⚠ Read before updating
Back up your world. Two items are removed and do not migrate:
- ME Extended Processing Pattern Terminal — the pattern terminal now does everything it did. Terminals already placed in a world disappear when it loads, along with any patterns left in their slots; copies in inventories become an unnamed item. Patterns those terminals encoded are unaffected and keep working.
- Creative ME Fluid Storage Cell — merged into the ordinary Creative ME Storage Cell, which now holds every kind of content at once. Cells already placed disappear when the world loads, along with what they were set to hold.
Addon authors: this release contains breaking API changes. See the bottom of these notes.
Pattern terminal
- Processing patterns now use a four-by-four grid: 32 inputs and 8 outputs. A button turns the grid round into 8 inputs and 32 outputs, and a scrollbar pages through it. Crafting patterns keep their usual three-by-three matrix.
- The wireless pattern terminal has the same grid, orientation and paging.
- Recipes transferred from HEI turn the grid round on their own when a recipe has more outputs than the current orientation can show, and filling the grid sends it back to page one so the result is visible.
- Switching between the crafting and processing tabs carries one of each item across.
Autocrafting
- Crafting Tree — a new view of a crafting plan, reached from the button in the top-right corner of the Crafting Plan screen. It shows what the plan needs and, under each thing, how it is obtained: taken from storage, crafted from a pattern, requested from a level emitter, or missing — and what that in turn costs. Drag and zoom with the mouse, fold branches away, and jump between search matches with Enter and Shift+Enter.
- Missing only hides every branch the network can supply, and turns itself on when a plan came up short.
- Save as image writes the whole tree — not just what is on screen — to a PNG in your
screenshotsfolder and prints a clickable link in chat. The Crafting Plan screen can do the same with its list. - Shift+click a craft node to highlight every machine of that kind in the world.
- Craft nodes show the machine the pattern would actually be pushed to. Both interface terminals now show the same machine beside each interface.
- A job that cannot start now says why. Instead of silently discarding the plan, a panel names the reason: an incomplete plan, no CPUs at all, the chosen CPU busy, offline or too small, an ingredient that has left the network since planning, or no suitable CPU — counted out as "2 busy, 1 too small, 1 kept for other requests". Retry submits the same plan again, Replan works out a fresh one, Cancel puts the plan back on screen.
- Reserve a crafting CPU for players or for automation. Right-click any block of the CPU and choose. A player-only CPU is passed over when a level emitter, interface or export bus asks for a craft; an automation-only CPU is hidden from the Crafting Plan screen and refuses player jobs. Keep your pre-crafting CPUs on automation and your own requests will never queue behind them. The mode survives adding an accelerator.
- The Crafting Plan screen now picks its CPU from a proper table, the same one the Crafting Status screen uses, instead of a button cycled one CPU at a time. Its first row, Automatic, is the old behaviour. An idle CPU's row now shows how many accelerators it has beside the bytes it holds.
- Hide stored items on the Crafting Status screen drops the rows that are only waiting in the CPU.
- HEI recipe keybinds, bookmarks and tooltips work over the tree, over both crafting lists, and over the amount screen's slot.
ME Interface P2P Tunnel
- One ME Interface can now drive as many machines as the tunnel has outputs. The input stands in front of an interface; every output stands in for it beside a machine of its own.
- Each output keeps its own queue, so a machine that has backed up does not stop the interface feeding the others — and blocking mode is judged per output for the same reason.
- Outputs also offer the interface's stocked items and fluids to their neighbour, which is how a machine there draws stock and hands results back. Network access is deliberately not offered; that is what the ME P2P Tunnel is for.
- Tunnels chain: an output may face another tunnel's input.
- An ME Interface now attunes a P2P tunnel to this type. Hoppers, chests and buses still give the item tunnel.
Storage cells
- A cell can now hold several kinds of content at once. What a cell stores is decided by its own partition instead of being fixed by the item, so the merged Creative ME Storage Cell holds items and fluids together.
- View Cells can be filtered by fluids, not by items alone — and by any content type an addon registers.
- The ME Chest asks the installed cell what it can hold: it offers itself as a tank when the cell holds fluids, and its input slot accepts whatever the cell would really take.
- The IO Port counts a transfer per key, so a mixed cell moves an item at a time and a bucket at a time.
- Addons can ship multi-type cells; bytes are counted per content type, so each pays its own way.
Terminals and HEI
- Ctrl+Move Items on a HEI recipe now crafts whatever the crafting terminal is missing instead of refusing the transfer. Ctrl+Shift starts that craft immediately, skipping the confirmation screen.
- Shift+right-click a filled fluid container in your own inventory to pour it into the network. Shift+Ctrl+right-click does the whole stack, and the same Ctrl modifier works when filling or emptying a held stack against a network row.
Fixes
- Shift-previewing an encoded pattern now works for items drawn by their own renderer — a vanilla shield or chest, a GregTech machine, an IndustrialCraft cable — which previously showed an empty slot. The preview also works in a plain inventory and labels the slot with the amount the pattern makes.
- Dragging a filled container out of HEI onto a processing pattern now takes the fluid inside it, matching what clicking the same bucket by hand always did.
- HEI no longer draws its item list over the buttons beside the Crafting CPU and Crafting Status screens.
- The ME Interface Configuration Terminal no longer draws an empty frame around every row.
- Holding Alt no longer hides the pattern terminal's slot amounts behind the craftable "+".
- The craftable "+" no longer appears on real items sitting in the crafting terminal's own grid.
- The confirm button in the Certus Quartz Cutting Knife's renaming screen is no longer missing its bottom border.
- An internal inventory that grew between versions no longer loads back at its old size and throws on open.
Breaking API changes
ICraftingCPU.getSelectionMode()andappeng.api.config.CpuSelectionMode— anything implementingICraftingCPUhas to answer it.ICraftingGrid.submitJobreturnsICraftingSubmitResultrather than a link; a caller that wants the link asks the result for it. New:CraftingSubmitErrorCode,UnsuitableCpus.IBasicCellItem.getKeyType()becamegetKeyTypes(), andStorageCell.getSupportedKeyTypes()is new and abstract.ICellWorkbenchItemno longer declares what a cell stores.- Removed:
IParts.expandedProcessingPatternTerminal()andIItems.fluidCellCreative(). - Additive, with defaults:
ICraftingMedium.getMachineIdentity(),getMachineLocation(),ICraftingGrid.getMediums(pattern),ICraftingMachine.of(tile, side).
Supplementary resources
Projects on Modrinth are automatically available through a Maven repository for use with JVM build tools such as Gradle. To learn more about the Modrinth Maven API, click here.
Note: When available, you should use the creator's maven repo instead as it will have transitive dependency information that the Modrinth Maven API does not. You may also end up with duplicate dependencies if you use a mix of Modrinth and non-Modrinth Maven repositories for your dependencies, because the group identifier will be different when served through the Modrinth Maven API.
Maven coordinates:
Version ID:
build.gradle:
repositories {
exclusiveContent {
forRepository {
maven {
name = "Modrinth"
url = "https://api.modrinth.com/maven"
}
}
// forRepositories(fg.repository) // Uncomment when using ForgeGradle
filter {
includeGroup "maven.modrinth"
}
}
}
// Standard Gradle dependency
dependencies {
implementation "maven.modrinth:IPMPkJXG:3TpliYcA"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:IPMPkJXG:3TpliYcA"
}

