跳转至

配方

配方(Recipe)是Minecraft基岩版中定义物品合成规则的数据驱动系统。配方规定了输入材料和输出产物之间的对应关系,以及合成所使用的工作台或容器类型。

概述

配方定义文件以JSON格式编写,存放在行为包的recipes/目录中。每个配方文件定义一条或多条合成规则,游戏引擎在加载行为包时读取所有配方定义并注册到合成系统中。

配方通过赋命名空间标识符唯一标识。一个配方文件中通常只定义一条配方。

配方类型

基岩版支持多种配方类型:

有序配方

有序配方(Shaped Recipe)要求材料在合成网格中按照特定的排列方式放置。合成网格中每个位置对应的材料由模式(pattern)和材料映射(key)共同定义。

有序配方的根键为minecraft:recipe_shaped

无序配方

无序配方(Shapeless Recipe)不要求材料的排列位置,只要求合成网格中包含指定的全部材料即可。

无序配方的根键为minecraft:recipe_shapeless

烧炼配方

烧炼配方(Furnace Recipe)定义了物品在熔炉、高炉或烟熏炉中的烧炼规则。烧炼配方指定输入物品和输出物品。

烧炼配方的根键为minecraft:recipe_furnace

酿造配方

酿造配方(Brewing Recipe)定义了酿造台中药水的酿造规则。

切石配方

切石配方(Stonecutting Recipe)定义了切石机中的方块加工规则。

锻造配方

锻造配方(Smithing Recipe)定义了锻造台中物品的升级或转化规则。

合成标签

配方定义中包含一个tags字段,用于指定该配方可以在哪些合成站中使用。常见的合成标签包括crafting_table(工作台)、furnace(熔炉)、blast_furnace(高炉)、smoker(烟熏炉)、stonecutter(切石机)、smithing_table(锻造台)等。

自定义方块也可以通过声明自定义的合成标签来创建自定义合成站。

解锁配方

配方支持通过unlock字段指定解锁条件。在配方书系统中,只有满足解锁条件的配方才会对玩家可见。解锁条件可以基于玩家的背包内容或其他游戏状态。