本篇教程由作者设定未经允许禁止转载。
一.如何找到config文件以加载魔改
首先,想要用scavenge,要先加上mod启动一遍游戏。
之后会在.minecraft/config文件夹里生成一个叫"scavenge"的文件夹。
然后打开文件夹, 会发现里面自带一个文件:
打开config.cfg 会发现
当然,里面的魔改文件是编者自己写的,刚开始是不会带的。你需要将你做的魔改文件——XXX.json复制文件名放到这两行代码之间
S:LoadingFiles <
XXX.json
XXX2.json
>
二.编写魔改文件
魔改文件与Crt中的.zs文件不同,这个文件是.json格式的。
具体步骤:
1.创建文件
在.minecraft\config\scavenge中,创建一个.json文件。文件名尽量使用英文名。
2.编写代码
示例:
{ "block_pools" : [ { "name": "Netherrack", "type": { "type": "block", "name": "minecraft:nether_brick" }, "clicktype": "both", "properties": [ { "type": "require_sneak" } ], "drops": [ { "name": "minecraft:iron_ingot" } ], "messages": [ { "id": "require_sneak", "message": "Player requires to sneak" } ] } ] }
从示例中可以得知:
想要完美的加载魔改文件,必须提供某种特定的格式。
每个魔改文件都以"block_pools"开头
① "block_pools"详解:
在" block_pools"数组中,可以将魔改实现于哪个/哪些方块。
每个block_pool可以影响1个或多个方块,具体取决于你编写的类型。
现在,在"block_pools"中可以定义以下条件:
"name":(定义BlockPool的名称。某些条件/效果依赖于该名称。不能在多个魔改文件中使用相同的name)你要写成字符串形式 ,示例:
"name": "grass",
"type":(定义BlockPool是只是一个Block,BlockList还是OreDictionary条目。也就是你的魔改是对一个方块、一些方块、还是带有相同矿物辞典的方块起作用),示例:
"type": {
"type": "block",//这个魔改只对单一方块起作用
"name": "minecraft:grass"//对应的方块名:原版的草方块....可以加上Crt 然后把方块拿到手上 输入/ct hand快速获取方块资料
},
"clicktype":(定义这个BlockPool是对着方块左键单击还是右键单击有效,或者两者都是)字符串,示例:
"clicktype": "left",
或者
"clicktype": "right",
"blockRightClick"和"blockLeftClick"(检查单击是否被阻止。可以忽略,但默认为在处理BlockPool之后阻止交互。仅询问是否添加了clicktype)布尔值
"disableJEI":(允许从JEI中隐藏此条目。默认值: Visible)布尔值。
②.properties详解"properties":(单击BlockPool时应具有的条件/效果)ObjectArray或Object
例子:
右键草方块时饥饿值要>3
粗体字就是在properties设置的
(WIP)
③.drops详解"drops":(满足所有条件时应添加或删除的Loot)ObjectArray或Object
(WIP)
④.messages详解"messages":(当由于用户错误而导致某事成功或某事不起作用时,应该打印的错误和成功消息。)ObjectArray或Object
(WIP)
三.应用魔改文件
在编辑完你的魔改文件(XXX.json)之后,应该把你的文件名复制到config.cfg文件中。(具体见"一.如何找到config文件以加载魔改"末尾)
然后 启动游戏。
打开一个存档之后 先测试你写的魔改是否有BUG。
输入/scavenge reload,或许会出现一些错误。
当然 不影响魔改的错误 就不用管了,可以选择性修复:
比如你右键草方块可以获得种子,和你写的一样,那么这个魔改几乎就没问题了
但是如果在JEI上没有显示/拿着工具右键不出东西,那就要考虑两种可能:
1.魔改文件加载失败(可能是文件内缩进/括号问题)
2.物品本身就有一些特性,按键冲突了。