我的世界合成表自定义CraftTweaker1.18教程

本教程意在抛砖引玉,填补高版本教程不足的漏洞。本教程适用于改动轻的或新手入门。

官方文档推荐看一下

1. 安装

下载Crafttweaker最新版本(1.18.2)放入mod文件夹,加载一遍游戏后在.minecraft目录下会出现script文件夹,这里就是脚本存放的地方。

2. 使用

打开script文件夹新建文本文档,命名如”test”,然后,修改后缀为zs。

Tips:script文件夹下的子文件夹中脚本也会加载。

工作台

基本格式:

1.顺序合成  

craftingTable.addShaped(recipeName, output, ingredients, recipeFunction);

craftingTable.addShaped("recipe_name", output, [

    [input_1, input_2,input_3],

    [input_4, input_5,input_6],

    [input_7, input_8,input_9]

]);

当然,不是每个都要填满,只填一行是合法的。还可以加函数,不过不在本次讨论范围。

Tips:留空的地方填<item:minecraft:air>;还有recipe_name不能有大写。

比如铁剑可以这么写:

craftingTable.addShaped("ironsword",<item:minecraft:iron_sword>,[

      [<item:minecraft:air>,<item:minecraft:iron_ingot>,<item:minecraft:air>],

      [<item:minecraft:air>,<item:minecraft:iron_ingot>,<item:minecraft:air>],

      [<item:minecraft:air>,<item:minecraft:stick>,<item:minecraft:air>]

]);

游戏中手持物品输入/ct hand 读取物品信息,包括名称,标签,矿物词典。

2.无序合成

craftingTable.addShapeless(recipeName, output, ingredients, recipeFunction);

比如,一个沙砾和4个燧石

//Gravel      这是注释

craftingTable.addShapeless("flint", <item:minecraft:flint>*4,

      [<tag:items:forge:gravel>

]);

3.镜像有序合成  

craftingTable.addShapedMirrored(recipeName, output, ingredients, recipeFunction);

允许对称摆放。

4.熔炉等

//熔炉(在官方文档里有一个定义函数的方法,但我不太清楚,感兴趣的可以去看看)

furnace.addJsonRecipe("recipe_name", {

 ingredient: <item:minecraft:gold_ore>,

 result: <item:minecraft:cooked_porkchop>.registryName,

 experience: 0.35 as float,  //经验

 cookingtime:100   //烹饪时间

 });

//高炉

blastFurnace.addJsonRecipe("recipe_name", {

 ingredient: <item:minecraft:gold_ore>,

 result: <item:minecraft:cooked_porkchop>.registryName,

 experience: 0.35 as float,

 cookingtime:100

 });

//烟熏炉

smoker.addJsonRecipe("recipe_name", {

 ingredient: <item:minecraft:gold_ore>,

 result: <item:minecraft:cooked_porkchop>.registryName,

 experience: 0.35 as float,

 cookingtime:100

 });

//篝火

campfire.addJsonRecipe("recipe_name", {

 ingredient: <item:minecraft:gold_ore>,

 result: <item:minecraft:cooked_porkchop>.registryName,

 experience: 0.35 as float,

 cookingtime:100

 });

//切石机

stoneCutter.addJsonRecipe("recipe_name", {

 ingredient: <item:minecraft:gold_ore>,

 result: <item:minecraft:cooked_porkchop>.registryName,

 experience: 0.35 as float,

 cookingtime:100

 });

模组支持

Crafttweaker1.18直接支持的模组有AromoreableMobs,Botania,Createtweaker,Initialinventory,JEITweaker,RecipeStage,SolarCraft,SushiGoCrafting

通用模组支持方法

/ct dump recipetypes获取模组合成类型,如Powah充能台<recipetype:powah:energizing>

这将保存在log文件中。

打开mod的jar文件如Powah-3.0.2.jar。定位到\data\powah\recipes\

以充能为例,打开\energizing,打开blazing_crystal.json.

这是内容:

{

  "type": "powah:energizing",

  "ingredients": [

{"item": "minecraft:blaze_powder"},

{"item": "minecraft:blaze_powder"},

{"item": "minecraft:blaze_powder"},

{"item": "minecraft:blaze_powder"}

  ],

  "energy": 120000,

  "result": {

"item": "powah:crystal_blazing"

  }

}

参照他的格式,我们添加用一个铁块,一钻石,一晶制铀在充能台上合成一个下界合金锭

<recipetype:powah:energizing>.addJsonRecipe("neingot",

{

  "type": "powah:energizing",

  "ingredients": [

   {"item": "minecraft:iron_block"},

   {"item": "minecraft:diamond"},

   {"item": "powah:uraninite"}

   ],

 "energy": 1000000,

  "result": {

  "item": "minecraft:netherite_ingot",

  "count" : 2 

  }

});

可以知道<recipetype:powah:energizing>.addJsonRecipe(“recipe_name”,…)是基本格式,后面就因模组而异。

当然,CraftTweaker还提供了接口功能,这就不必每次都输入一大串json了。

这里推荐大家将脚本分类便于管理。

保存好之后,打开MC进入世界查看配方是否正确,如有误,则根据报错修改(日志中有,启动游戏时对话框也有),修改完成后退出重进输入/reload重载。

CraftTweaker还有很多用法,功能非常强大,大家多看官方文档,他随时有可能变化(我写教程时只有1.18的文档),最后希望对你有用,希望大佬多多指点。

Happy tweaking!

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值