Fabric模组开发
跳转到导航
跳转到搜索
要进行Fabric模组开发,首先需要配置Gradle构建系统并导入相关的依赖,通常选择直接克隆Fabric官方GitHub仓库中的fabric-example-mod后在IDE中自动配置。
fabric.mod.json
每个Fabric模组都需要fabric.mod.json文件来加载,[1]它的格式类似于:
{
"schemaVersion": 1,
"id": "example-mod",
"version": "${version}",
"name": "Mod name",
"description": "The example mod",
"contact": {
"email": "foo@example.com",
"irc": "irc://irc.example.com",
"issues": "https://issues.example.com",
"homepage": https://example.com",
"sources": "https://source.example.com"
},
"environment": "server",
"entrypoints" : {
"main": [
/* 此处应为模组的入口点全类名 */
"com.example.mod.ExampleModEntrypoint"
],
"client": [ /* 和上面的main格式类似 */ ],
"server": [ /* 和上面的main格式类似 */ ]
}
"authors": [
"Author1",
"Author2",
{
"name": "Author3",
"contact": { /* 和上面的contact格式类似 */ }
}
],
"contributors": [ /* 和上面的authors格式类似 */ ],
"license": "GPLv3",
"icon": "assets/example-mod/icon.png"
}
入口点
作为Fabric模组的入口点,类必须实现ModInitializer、ClientModInitializer、DedicatedServerModInitializer这三个接口的的其中一个,并在fabric.mod.json文件的entrypoints中定义入口类的全类名,三个Initializer各有不同的列表,将入口点写在错误的位置会报错并且无法启动Minecraft。[2]
ModInitializer
ModInitializer入口点需要定义在entrypoints的main列表里。
ClientModInitializer
ClientModInitializer入口点需要定义在entrypoints的client列表里。
DedicatedServerModInitializer
DedicatedServerModInitializer入口点需要定义在entrypoints的server列表里。
参考文献
- ↑ "fabric.mod.json [Fabric Wiki]". Retrieved 2025-02-09.
- ↑ "入口点 [Fabric Wiki]". Retrieved 2025-02-09.