
厨房工作
食物模组从未拥有的矿物词典。将Farmer's Delight、Croptopia和Pam's HarvestCraft 2桥接为一个共享的标签词汇表,使得任何模组的奶酪都能用于其他模组的配方中。
查看大图🍞 一种奶酪,通吃所有食谱。
Farmer's Delight 有奶酪。Croptopia 有奶酪。Pam's 有奶酪。但它们都不是同一种奶酪——三个模组,三种互不兼容的标签方言,彼此互不引用。于是,需要奶酪的食谱只能识别其中一种,你的整合包就这样悄无声息地出现了三条互不相通的“食物经济链”。
Pantrywork 解决了这个问题。它纯粹由数据构成:一个标签层,将这些方言桥接到官方的 NeoForge / Farmer's Delight c:foods/* 约定中,然后再加一层,描述一种食材的用途。没有方块、没有物品、没有游戏性改动。只是让食谱终于能够正常生效。
🏷️ 两个层次
身份 — c:foods/*。扩展内置约定,并将其他方言转换过来。Croptopia 的复数方言(c:cheeses)和 Pam's 的拼接方言(c:rawpork)都会解析为规范名称(c:foods/cheese、c:foods/raw_pork)。桥接是双向的:24 个方言标签也获得了其他模组的等价物品,因此 Croptopia 和 Pam's 自己的食谱也会开始接受外来食材。
用途 — pantrywork:food_component/{protein, starch, dairy, garnish, liquid_base, sweetener}。这是一个覆盖在身份层之上的“标签之标签”,描述功能而非身份。只要照着 #pantrywork:food_component/protein 写一个食谱,它就能接受原版牛排、Farmer's Delight 的培根,以及未来任何模组标记的同类物品——而无需你发布更新。
🔌 零硬性依赖
每个跨模组引用都是 required: false。你可以搭配全部受支持的模组、其中一部分、甚至一个都不装地安装 Pantrywork——它在任何情况下都能正常加载,只是桥接它能找到的内容。没有“你还必须安装……”这样的说明,因为根本不存在这种要求。
仅服务端 — 将文件放入服务端,所有玩家即可受益,无需安装客户端。单机模式同样有效(你的游戏本身就运行着一个内置服务器;正常安装即可)。
受支持:Farmer's Delight(含 Fabric 上的 Refabricated)· Croptopia · Pam's HarvestCraft 2 Food Core · Ocean's Delight(完整身份模块)· End's Delight(父级加入)· Origins(肉食/素食饮食标签)。
🧑🍳 面向整合包作者
别再为每个食物模组各写一份食谱了。瞄准一个用途标签,你的食谱就能覆盖玩家已安装的所有模组,甚至他们以后再装的模组。
🛠️ 面向模组作者
PantryworkTagKeys 将所有标签以常量形式暴露,因此你可以引用这套分类体系,而无需硬编码字符串或依赖被桥接的模组。
✅ 实测验证,而非凭空假设
已在 NeoForge 1.21.1 上,同时加载 Farmer's Delight 1.3.2、Croptopia 4.2.4 和 Pam's HC2 Food Core 1.0.4 的情况下进行了实际测试——包括一个同时消耗原版面包、Farmer's Delight 培根和 Croptopia 生菜的合成配方。自动化 GameTest 覆盖了用途标签、跨模组身份、反向桥接以及通过 RecipeManager 的配方解析。
正在加载版本记录…




正在加载评论…
评论在新手盒子客户端中发表,这里同步展示。