One Enough Item

One Enough Item

使用OEI,你可以轻松地将重复项替换为单个指定的代表项。

OneEnoughItem (OEI)

本模组旨在解决整合包中物品词典重复的问题——三种银、四种铅、五种番茄、六种玉米,每种都有独立的配方。

使用 OEI,您可以轻松地将重复物品替换为指定的唯一代表物品。

典型示例

e7b458ea
整合包中的 17 种番茄

304e2a74
整合包中的六种银矿石

它们都有独立的配方!

那样的日子已经结束了。使用 OEI,物品在创建时就会被立即替换为指定的代表物品!

使用方法

OEI 由数据包驱动,支持热重载。在 data/oei/replacements 下使用以下简单语法配置替换:

[
    {
        "matchItems": [
            "#forge:ore",
            "minecraft:potato",
            "minecraft:carrot"
        ],
        "resultItems": "minecraft:egg"
    }
]

matchItems 下列出要替换的物品 ID,并在 resultItems 中指定指定的代表物品。

警告:切勿将物品替换为自身——这可能导致严重错误!

KubeJS 集成:

ServerEvents.highPriorityData(event => {
    event.addJson("oei:replacements/raw_materials.json", [
        {
            "matchItems": ["#forge:raw_materials/silver"],
            "resultItems": "thermal:raw_silver"
        }
    ]);
});

OEI 支持标签匹配。如果基于标签的替换需要游戏重载,请改用原始物品 ID(这可能是由于模组冲突所致)。

内置编辑器(v1.0.3+):
按下 CTRL+R 打开 GUI 编辑器,无需编写代码即可配置替换!
编辑器包含配方去重功能——参见 官方文档

效果

OEI 会在最早的阶段替换物品——而不是通过扫描玩家物品栏。

示例: 将所有物品替换为鸡蛋后,创造模式物品栏立即发生变化:
CreativeModeTabs

配方会自动适配。此处为熔炉配方中铁锭 → 鸡蛋:
Crafting

所有配方都会自动处理,包括 JEI 显示:
JEI

适用于交易、进度以及几乎所有非硬编码的配方。

此外,将物品替换为空气将完全移除该物品。但出于兼容性考虑,此类更改不会在创造模式物品栏或 JEI 显示中生效。

深度替换

在配置中启用后,替换将扩展到物品交互场景(例如,将铁锭替换为鸡蛋后,可用鸡蛋治愈铁傀儡)。

当标准配方替换对特定模组失效时使用。
注意:仅影响物品检测——不会完全继承原物品的功能。

路线图

  • 属性剥离:移除被替换物品的属性(例如,移除食物属性以将其排除在“生活调味料”手册之外)。可配置。
  • 标签继承:让代表物品继承被替换物品的所有标签。
  • 标签移除:完全剥离被替换物品的标签,使其从配方中彻底消失。