猜猜谁是谁
版本特性中有说数据可以做到添加合成表的功能 具体怎么实现没说 能不能举一个例子?


pineapple_
自定义合成要在数据包内完成
首先创建一个数据包

打开.minecraft/saves/(世界名称)/datapacks

新建文件夹,任意命名为数据包名称(就像资源包的名称一样),只能包含小写字母,数字,_和-

打开该文件夹创建一个记事本,命名为pack.mcmeta

注意拓展名为.mcmeta,你创建的应该是pack.mcmeta而不是pack.mcmeta.txt

用Notepad++打开pack.mcmeta,添加代码

  1. {
  2.    "pack": {
  3.       "pack_format": 3,
  4.       "description": "."
  5.    }
  6. }
复制代码


(description后""里是对该数据包的描述,其中的"."可以任意修改)

直接复制上面的就可以,粘贴进去后保存并关闭pack.mcmeta

在该文件夹内再创建文件夹,命名为data

打开data文件夹,在里面新建文件夹任意命名,只能包含小写字母,数字,_和-

如果用minecraft命名的话可以覆盖原版合成,用其他的名称就是正常添加

打开这个文件夹,新建文件夹命名为recipes

打开recipes,新建个记事本改为xxxx.json,同样,注意拓展名是.json

用Notepad++打开

加入代码

以下是一个有序合成的例子,把附魔台改为一次能合成64个

data/minecraft/recipes/enchanting_table.json
  1. {
  2.   "type": "crafting_shaped",
  3.   "pattern": [
  4.     " B ",
  5.     "D#D",
  6.     "###"
  7.   ],
  8.   "key": {
  9.     "B": {
  10.       "item": "minecraft:book"
  11.     },
  12.     "#": {
  13.       "item": "minecraft:obsidian"
  14.     },
  15.     "D": {
  16.       "item": "minecraft:diamond"
  17.     }
  18.   },
  19.   "result": {
  20.     "item": "minecraft:enchanting_table",
  21.     "count": 64
  22.   }
  23. }
复制代码


无序合成我不是太清楚

保存后打开地图就可以用了

⊙v⊙
pineapple_ 发表于 2017-12-22 22:44
自定义合成要在数据包内完成
首先创建一个数据包
  1. {
  2.     "type": "crafting_shapeless",
  3.     "ingredients": [
  4.         {
  5.             "item": "minecraft:diamond"
  6.         },
  7.         {
  8.             "item": "minecraft:nether_star"
  9.         }
  10.     ],
  11.     "result": {
  12.         "item": "minecraft:stick"
  13.     }
  14. }
复制代码
ingredients
一个无序合成例子...


格式...ingredients(无序)和key(有序)应该不会同时存在于同一个配方下
  1. {
  2.     "type": "crafting_shaped",
  3.     "group": "identifier",
  4.     "pattern": [
  5.         "###",
  6.         "###",
  7.         "###"
  8.     ],
  9.     "key": {
  10.         "#": {
  11.             "item": "minecraft:stone",
  12.             "data": 0,
  13.             "count": 1
  14.         }
  15.     },
  16.     "ingredients": [
  17.         {
  18.             "item": "minecraft:stone",
  19.             "data": 0,
  20.             "count": 1
  21.         }
  22.     ],
  23.     "result": {
  24.         "item": "minecraft:stone",
  25.         "data": 0,
  26.         "count": 1
  27.     }
  28. }
复制代码
type:合成类型,crafting_shaped(有序),crafting_shapeless(无序),wiki里有列出剩下的13种...
group:定义合成书下的分类

有序的合成,pattern下...
"#"
这样的话,单个物品可以放在9格的任意一格

"##"
这样的话,合成的时候,你把物品放在以下等位置皆可
  1. □■■
  2. □□□
  3. □□□

  4. □□□
  5. ■■□
  6. □□□

  7. □□□
  8. □□□
  9. □■■
复制代码
pattern下的""里空格意为不放置物品

data:数据值,或伤害值
默认接受任意数据值

  1. "ingredients": [
  2.     {
  3.         "item": "minecraft:redstone"
  4.     },
  5.     {
  6.         "item": "minecraft:diamond"
  7.     },
  8.     {
  9.         "item": "minecraft:iron_block"
  10.     },
  11.     {
  12.         "item": "minecraft:gold_block"
  13.     },
  14.     {
  15.         "item": "minecraft:diamond_block"
  16.     }
  17. ]
复制代码
一个无序的例子,...的一部分

其他的看楼上...


以上...搬自skylinerw



然后是wiki...https://minecraft.gamepedia.com/Recipe


懒人生成...
http://minecraft.tools/en/custom-crafting.php#

献技skylinerw大神...
https://github.com/skylinerw/guides/blob/master/java/recipes.md


然后,这是1.12的
1.13没有data,因为ID已经可以代表各个物品了...


暂时知道的就这些...好像不能特殊nbt合成的样子...
更具体的例子,打开自己看...
17w50a.jar\data\minecraft\recipes

⊙v⊙
补充...

第一页 上一页 下一页 最后一页