kubejs系模组【前置41】【辅助】【前置19】或【前置2】(添加合成表矿辞统一)kubejs-forge-1605.3.18-build.157.jar
此 mod 允许您使用 JavaScript 语言创建脚本来管理服务器、添加新的方块和物品、更改配方、为任务模组添加自定义处理程序、更改世界生成器等!
kubejs操作指南
首先/kubejs hand
获取手持物品信息
单击信息即可复制到剪切板
初始物品
1 | // Listen to player login event |
简简单单不用多说
生成
kubejs\startup_scripts
下
湖
1 | onEvent('worldgen.remove', event => { |
矿石
移除矿石
1 | onEvent('worldgen.remove', event => { |
添加矿石不知道什么原因,在我的整合包中几乎没有作用
此段语法有问题?
blacklist = false代表开启黑名单模式,即以下名单为不可生成名单
blacklist = true代表开启白名单模式,即以下名单为可生成名单
官方维基与中文翻译都没说清楚(坑我老半天)!!!
1 | onEvent('worldgen.add', event => { |
nbt标签编辑
格式
1 | onEvent('item.tags', event => { |
注意前面的标签记号不要#
- 添加
event.get('forge:cobblestone').add('minecraft:diamond_ore')
- 移除
event.get('forge:cobblestone').remove('minecraft:mossy_cobblestone')
工作台配方
可kubejs\server_scripts
下
首先格式:
1 | onEvent('recipes', event => { |
- 无序
1
event.shapeless('minecraft:carved_pumpkin', ['minecraft:jack_o_lantern'])
- 数量
1
event.shapeless('2x minecraft:carved_pumpkin', ['minecraft:jack_o_lantern'])
- 有序
1
2
3
4
5
6
7
8
9event.shaped('minecraft:iron_leggings', [
'SXS',
'X X',
'Y Y'
], {
S: 'minecraft:iron_ingot',
X: 'minecraft:redstone',
Y: 'minecraft:gold_ingot'
}) - 标签物品
1
2
3
4
5
6
7
8
9
10
11event.shaped('minecraft:book', [
'CCC',
'WGL',
'CCC'
], {
C: '#forge:cobblestone',
L: Item.of('minecraft:enchanted_book', {StoredEnchantments:[{lvl:1,id:"minecraft:sweeping"}]}),
// 对于附魔来说,你还可以将其简写成如下形式:
W: Item.of('minecraft:enchanted_book').enchant('minecraft:respiration', 2),
G: '#forge:glass'
})
某些带json文件(其实是大部分)的模组的直接修改
但强烈不建议直接修改别人打包好的jar,很不尊重作者
也顺带提一下大部分模组的文件结构:
assets
资源文件,不是简单的png材质,还附带模型json及各种UI排布json等(某种程度上可视为css),语言文件也在此com
包含基本的Java文件经过编译后的class,不可修改(当然可反编译再自己编译一遍)META-INF
一些标志性文件例:mods.toml及用于描述模组信息,如版本信息,依赖信息等data
此文件为一些逻辑性的配置json,并提供兼容性接口(其下的minecraft、forge文件夹多用于配置兼容标签),推测kubejs就是某种程度上的修改和复制此json
如果实在想直接修改一些掉落物情况可参考:【生物】龙栖Wyrmroost-1.16.3-1.2.11.jar
对于此模组的铂矿生成过多、不可配置的问题,而直接对jar
文件中【生物】龙栖Wyrmroost-1.16.3-1.2.11.jar\data\wyrmroost\loot_tables\blocks\
下的platinum_ore.json
进行编辑:
1 | { |