
JEI Crafting Tree
Adds a recursive crafting tree viewer to the JEI recipe screen. Works standalone; integrates with AE2 Utility for one-click pattern encoding and upload when installed.
- Загрузки
- 689
- Подписчики
- 1
- Обновлён
- 15 августа 2026 г.
- Лицензия
- MIT
Опубликован 23 июля 2026 г.
Overview
JEI Crafting Tree adds an Open Crafting Tree action to JEI recipe layouts. From a single recipe, the tree can expand selected ingredient routes, combine multiple targets into one global plan, allocate available inventory, account for secondary outputs, and produce an ordered execution checklist.
The planning model is independent from AE2. Optional backends such as AE2 Utility can add exact-pattern hints, encoding, upload, substitution controls, reusable-input rules, and machine identifiers without making AE2 a hard dependency of this mod.
Core capabilities
Recursive recipe exploration
- Expands JEI recipes into a navigable dependency tree.
- Supports normal graph and layer-merged material views.
- Lets the user select a child recipe or an alternative ingredient at each input. Recipe choices and manual collapse state are synchronized across visible occurrences of the same material at different tree depths.
- Can automatically expand unresolved inputs when JEI exposes exactly one usable recipe.
- Detects recursive routes, stops unsafe expansion, highlights the affected incoming edge and material entry, and reports cycle diagnostics instead of recursing indefinitely.
Global multi-project planning
- Maintains multiple named production targets in one session.
- Uses a shared global material ledger across all projects.
- Reuses overproduction from one branch or project in another branch or project.
- Credits secondary outputs and byproducts back to the global supply pool.
- Uses
longquantities throughout the planning layer and saturates arithmetic atLong.MAX_VALUE.
Recipe semantics
- Imports all outputs exposed by a JEI recipe, with one focused primary output and optional secondary outputs.
- Supports item, fluid, chemical, and custom JEI ingredient identities; non-item quantities use the same bottom-right count-overlay style as item stacks.
- Treats JEI catalyst slots and backend-declared reusable inputs as non-consumed requirements.
- Distinguishes “this output is craftable” from “this exact selected recipe already has a matching pattern.”
Editable AE2 pattern drafts
When AE2 and a compatible backend such as AE2 Utility are installed, the node inspector includes a compact pattern editor based on AE2's native pattern-mode and slot textures. AE2 remains optional: the editor is not created or rendered when the integration is unavailable.
- Creates one editable draft for each exact selected recipe and shares that draft across repeated occurrences of the same recipe.
- Previews the exact inputs, primary output, secondary outputs, quantities, alternatives, and substitution state that will be sent for encoding.
- Supports AE2 processing-pattern capacity of up to 81 input slots and 27 output slots through a paged 3×3 input / three-output viewport and scrollbar.
- Allows processing slots to be replaced from the held item, cleared with right click, or assigned an exact amount with middle click or
Ctrl + wheel. - Cycles legal JEI alternatives, promotes a secondary output to the primary output, removes unwanted byproducts, clears the processing draft, and restores the original recipe snapshot.
- Keeps structured crafting drafts recipe-safe: their slots can cycle legal alternatives but cannot be freely removed, replaced, or assigned arbitrary amounts.
- Shows dirty, invalid, removed-input, removed-output, and changed-primary-output states before encoding.
- Uses the edited draft—not the immutable JEI recipe snapshot—for batch deduplication, validation, encoding, and upload.
- Performs lightweight client checks first and requires the backend/server to validate slot limits, ingredients, quantities, and the primary output before consuming a blank pattern.
Optional:
- AE2 Utility
1.6.0or newer for an external AE2-oriented backend, when installed and compatible. - Just Enough Characters for optional pinyin matching in the overview search field.
项目简介
JEI Crafting Tree 是面向 Minecraft 1.21.1 / NeoForge 的 JEI 配方规划扩展。它可以把 JEI 中选中的配方转换为可交互的递归配方树,并进一步建立多目标共享的全局生产计划。
模组本体不依赖 AE2。安装兼容后端后,可以在同一界面中获得精确样板检测、样板编码、样板上传、可复用输入判定、机器标识以及外部库存接入能力。
主要功能
- 递归配方树:逐层展开原料配方,支持普通图形视图与同层材料合并视图;同一材料在不同深度出现时,会同步配方选择和手动折叠状态。
- 全局材料账本:所有项目和分支共享库存、余料与副产物,避免按节点重复统计。
- 多目标项目:可以建立多个命名目标、设置
long类型目标数量,并在项目之间切换编辑。 - 多输出与副产物:读取 JEI 暴露的全部输出,将次要输出重新计入全局供给。
- 催化剂与可复用输入:JEI catalyst 槽位和后端声明的模具、工具、容器等不会按合成次数重复消耗。
- 通用材料身份:支持物品、流体、化学品及其他 JEI 自定义 ingredient type,并保留 subtype 身份;非物品材料数量与物品一样使用右下角角标。
- 替代材料策略:提供锁定、混用库存、库存最多、优先模组命名空间和严格组件五种策略。
- 库存聚合:内置玩家背包、护甲、副手和当前容器;外部模组可以注册网络库存来源。
- 计划报告:集中展示基础原料、库存分配、余料/副产物、循环依赖、执行清单、机器运行次数和路线比较。
- 精确已有样板判断:区分“该输出可合成”和“当前选中的精确配方已有样板”;禁用已有样板展开后,会立即折叠已展开分支,并阻止手动选择、配方记忆或唯一配方逻辑再次展开。
- 搜索与定位:支持材料、配方、
@模组、#机器搜索,Enter 定位下一个结果;安装 Just Enough Characters 后兼容其拼音匹配规则。 - 节点详情与样板草稿编辑:右键节点可查看材料、数量、机器和已有样板状态。安装 AE2 与兼容后端后,详情面板使用 AE2 原生样板模式背景、槽位和控制图标,直接编辑最终要写入样板的输入、输出、数量与替换状态;未安装 AE2 时不创建也不绘制该区域。
- 配方记忆:按父配方、节点路径、输入槽、材料身份、服务器/世界和整合包指纹隔离记忆,并兼容迁移旧记录。
- 撤销与重做:覆盖配方选择、展开/折叠、替代材料和项目管理操作,最多保存 64 个会话内快照。
- 悬浮材料面板:可固定材料清单,在其他界面中继续查看并跳转 JEI 配方或用途。
- 外部后端 API:支持存储网络、精确样板、编码、上传、机器统计和库存来源扩展。
AE2 样板草稿编辑
节点详情中的样板区不是只读预览,而是批量编码与上传使用的最终草稿:
- 相同精确配方在树中多次出现时共享同一份草稿,任一位置的修改都会同步生效;
- 处理样板支持最多 81 个输入槽和 27 个输出槽,通过 3×3 输入、三个输出的可滚动视窗编辑;
- 左键可轮换 JEI 提供的合法备选原料,手持物品时可填入或替换处理样板槽位;
- 右键可清除处理样板槽位,中键可输入精确数量,
Ctrl + 滚轮可快速调整数量; - 可切换主要输出、把次要输出提升为主输出、删除不需要的副产物、清空草稿并恢复原始配方;
- 可单独设置物品替换、流体替换和输入顺序保留状态;
- 合成、锻造和切石等结构化配方保持配方安全,只允许切换合法备选,不允许自由删除、替换或修改数量;
- 编辑器会明确提示草稿已修改、无效、删除输入、删除输出或主要输出变化;
- 批量收集按最终草稿指纹去重,编码和上传严格使用草稿内容,不会退回未修改的 JEI 配方快照;
- 客户端先执行轻量校验,兼容后端与服务端还会再次检查槽位上限、材料类型、数量和主要输出,校验失败时不会消耗空白样板。
删除副产物只影响最终编码草稿,不会篡改配方树用于材料规划的真实产出与余料语义。
可选集成:
- AE2 Utility
1.6.0或更新的兼容版本,可作为 AE2 功能后端。 - Just Enough Characters,可为总览搜索框提供拼音匹配。
Ченджлог
0.0.4Бета1.21.1 · 15 августа 2026 г.
English
Fixed
- Fixed batch-count scrolling in the multi-tree workspace.
中文
修复
- 修复多配方树工作区中无法通过滚轮调节批次的问题。
0.0.3Бета1.21.1 · 13 августа 2026 г.
English
Added
- Added optional server-side batch crafting channels for AE2 and Sophisticated crafting interfaces.
- Added Creative-mode material refill to the floating material panel. When JEICT is installed on both sides, missing item materials can be inserted into compatible slots of the open menu, with server validation and a per-click limit of 64 changed slots.
Optimized
- Improved large-quantity auto-crafting planning.
- Improved floating material projection so intermediate products are expanded only as needed by the current inventory, reducing unnecessary material entries and recalculation work.
Fixed
- Fixed auto-crafting from the floating material panel failing in Sophisticated Storage, Sophisticated Backpacks, and ME terminals.
- Fixed alternative-material changes not being synchronized into existing pattern drafts before encoding or uploading.
- Fixed the overview splitting the same displayed material into separate aggregates when it appeared with different candidate sets or as both a recipe output and a leaf input.
- Fixed remembered child-recipe selections not being applied when the same material appeared elsewhere in the tree; selections now fall back by material signature.
- Fixed pattern encoding/upload under AE2 Utility still using the previously selected material after switching alternatives in the tree.
- Fixed AE2 Utility integration hiding the JEI Crafting Tree button even when the utility's own encoding arrow was unavailable.
中文
新增
- 新增 AE2 与 Sophisticated 合成界面的可选服务端批量合成通道。
- 新增悬浮材料面板的创造模式补料功能。客户端和服务端都安装 JEICT 时,可按缺失数量向当前菜单的兼容槽位补充物品;服务端会验证请求,每次点击最多修改 64 个槽位。
优化
- 优化大数量自动合成规划。
- 优化悬浮材料投影:根据当前库存按需展开中间产物,减少不必要的材料条目和重复计算。
修复
- 修复材料清单悬浮界面自动合成在精妙存储、精妙背包和 ME 终端无法正常生效的问题。
- 修复切换替代材料后,编码或上传前现有样板草稿没有同步新材料的问题。
- 修复总览中同一材料因候选集合不同、或同时作为配方输出与叶子输入而被拆分成多条汇总的问题。
- 修复已记忆的下级配方选择在树的其他位置遇到相同材料时不生效的问题;选择现在按材料签名兜底。
- 修复 AE2 Utility 下切换替代材料后,编码/上传仍使用切换前材料的问题。
- 修复 AE2 Utility 自身编码箭头不可用时,JEI Crafting Tree 按钮仍被错误隐藏的问题。
0.0.2Бета1.21.1 · 25 июля 2026 г.
Added
- Added a spatial multi-tree workspace: complete recipe trees can be shown on one zoomable, pannable canvas and edited directly without switching the active tree first.
- Added a Crafting Tree shortcut at the lower-left of the JEI bookmark area. It returns to the previous workspace, or guides the player to create the first tree when no workspace exists.
- Added continuous auto-crafting from the floating material panel. It transfers ingredients through JEI into the currently open compatible menu, then takes results using the vanilla container protocol. It supports ordinary containers, AE2 terminals, and Sophisticated crafting interfaces.
- Added stock accounting for the currently open menu, including ordinary containers, the AE2 ME client-side inventory view, and Sophisticated Storage/Backpacks.
- Added a stable third-party API with named removable backend, inventory, and menu registrations; inventory authority groups; auto-crafting status; client events; and complete bilingual integration documentation.
Optimized
- Each recipe tree now has an independent root context and view controller, including separate required materials, surplus, projects, pattern drafts, history, and planning results, preventing cross-tree state contamination.
- Improved the placement of the “add more recipes” entry, multi-tree titles, tree boundaries, and focused-tree controls to reduce overlap and preserve the scope of merge and fit actions.
- Aligned Sophisticated Storage, Sophisticated Core, and Sophisticated Backpacks runtime dependencies to a compatible version line.
Fixed
- Fixed workspace material navigation, batch pattern encoding/upload, focused-tree material statistics, zero-input recipe collapse behavior, background planner shutdown, zoomed secondary-tree visibility, and multi-tree pointer coordinates.
- Fixed returning from JEI recipe selection so focus and canvas position are restored to the initiating tree.
- Fixed missing node-inspector backgrounds for secondary trees.
新增 Added
- 新增空间化多配方树工作区,多棵完整配方树可在同一个可缩放、可拖动的画布中同时显示,并可直接操作任意树的节点、分支与样板,无需先切换当前树。
- 新增 JEI 书签区域左下角的配方树快捷入口;已有工作区时返回上次配方树,没有工作区时引导到 JEI 创建第一棵树。
- 新增悬浮材料面板的连续自动合成:通过 JEI transfer 填充当前已打开的兼容菜单,再按原版容器协议取出产物;支持普通容器、AE2 终端和 Sophisticated 合成界面。
- 新增当前打开菜单的库存统计,覆盖普通容器、AE2 ME 客户端库存视图和 Sophisticated Storage/Backpacks。
- 新增稳定第三方 API:具名可注销后端/库存/菜单注册、库存权威分组、自动合成状态与客户端事件订阅,并提供完整中英文集成文档。
优化 Optimized
- 每棵配方树使用独立根上下文与视图控制器,分别保存总材料、剩余材料、项目、样板草稿、编辑历史和规划结果,避免不同树之间相互抵扣或污染状态。
- 优化“添加更多配方”入口布局,使文字远离配方树最外侧节点,并移除按钮式底色以降低视觉遮挡。
- 优化多树标题定位,将当前配方名称右对齐到对应根节点左侧,并保留固定间距避免文字覆盖节点。
- 优化多树操作作用域,“合并”仅切换当前聚焦树,“适应”仅缩放并居中当前聚焦树,不再重置整个工作区。
- 优化树间布局边界,将总材料、剩余材料和固定按钮区域纳入树尺寸计算,避免相邻配方树的材料区域互相覆盖。
修复 Fixed
- 修复多配方树工作区中右键总材料定位仍修改嵌入树局部视口、导致主画布跳转到树间空白区域的问题;现在会按目标树的工作区偏移精确居中材料节点。
- 修复批量编码和上传只处理当前单棵配方树的问题;操作现在会收集工作区所有配方树的最终样板草稿并统一去重、验证和提交。
- 修复底部原料总量、余料和缺失材料统计始终读取第一棵树的问题;统计现在跟随当前聚焦的配方树。
- 修复无输入配方展开后缺少折叠入口的问题,并避免“唯一配方”功能自动展开无法形成有效处理样板的零输入配方。
- 修复在多配方树工作区中对第二棵及后续配方树执行“编写样板”或其他关闭界面的操作后,已终止的后台规划器仍被工作区继续调度并导致客户端崩溃的问题。
- 修复多树渲染时主树可见范围被树位移反复覆盖,导致第二棵及后续配方树在放大后局部消失的问题。
- 修复多树节点点击仍使用主画布坐标,导致任意树的左键选择配方、右键打开详情及折叠操作失效的问题。
- 修复从 JEI 选取下级配方返回时聚焦树被界面重新初始化覆盖的问题,现在会回到发起选择的原配方树并保留画布位置。
- 修复第二棵及后续配方树打开节点详情时只绘制内容、不绘制详情面板背景的问题。
Комментарии
Загружаем…