如何开始
约 735 字大约 2 分钟
2025-11-05
女仆模组为开发者提供了方法和接口,支持自定义女仆的工作模式、扩展全新的女仆背包等诸多功能。
版本注意
目前女仆模组最新版本为 1.4.3,支持 Forge 1.20.1 和 NeoForge 1.21.1 两大平台
一、Gradle 配置
女仆模组通过 CurseForge Maven 仓库进行分发。
1.20.1 Forge
repositories {
// 添加 cursemaven 仓库
maven {
url "https://cursemaven.com"
content {
includeGroup "curse.maven"
}
}
}
dependencies {
// 仅 CurseForge Maven 支持同时下载模组与源码,开发更便捷
implementation fg.deobf('curse.maven:touhou-little-maid-355044:7184660-sources-7184661')
}1.21.1 NeoForge
repositories {
// 添加 cursemaven 仓库
maven {
url "https://cursemaven.com"
content {
includeGroup "curse.maven"
}
}
}
dependencies {
// 仅 CurseForge Maven 支持同时下载模组与源码,开发更便捷
implementation 'curse.maven:touhou-little-maid-355044:7184664-sources-7184673'
}完成添加后,刷新 Gradle 即可生效。
为了保证依赖的准确性,建议在 mods.toml 或 neoforge.mods.toml 文件中限制女仆模组的版本,防止因版本过旧导致崩溃。
例如,NetMusic 模组就对女仆模组的版本做出了如下限制:
1.20.1 Forge
[[dependencies.netmusic]]
modId = "touhou_little_maid"
# mandatory 为 false 时,仅在安装了女仆模组时才检查版本
mandatory = false
# 限制女仆模组最低版本为 1.3.0
versionRange = "[1.3.0,)"
# 在女仆模组之后加载
ordering = "AFTER"
side = "BOTH"1.21.1 NeoForge
[[dependencies.netmusic]]
modId = "touhou_little_maid"
# type 为 optional 时,仅在安装了女仆模组时才检查版本
type = "optional"
# 限制女仆模组最低版本为 1.3.0
versionRange = "[1.3.0,)"
# 在女仆模组之后加载
ordering = "AFTER"
side = "BOTH"二、入口注册方式
女仆模组采用类似 JEI 的注解注册系统,并结合了 Forge 的事件机制,极大地方便了其他开发者对女仆模组进行内容扩展和自定义。
通过注解机制,模组开发者可以轻松地为女仆模组添加联动内容。只有在女仆模组被安装时,这些带有注解的类才会被主动反射加载和实例化;未安装女仆模组时相关代码不会被触发。这种软依赖设计大幅提升了适配的灵活性。
开发时,你可以在任意位置新建一个入口类,继承 ILittleMaid 接口,并使用 @LittleMaidExtension 注解标记。女仆模组会自动通过反射实例化该类,实现联动内容的注册。
@LittleMaidExtension
public class LittleMaidCompat implements ILittleMaid {
}查看 ILittleMaid 接口,你会发现它支持丰富的扩展内容。你可以注册新的女仆工作模式、为物品绑定女仆饰品、定义新的女仆背包类型等。
例如:
@LittleMaidExtension
public class LittleMaidCompat implements ILittleMaid {
/**
* 绑定女仆饰品,将自定义饰品与物品进行关联。
*/
@Override
public void bindMaidBauble(BaubleManager manager) {
// 将木棍绑定为自定义饰品
manager.bind(Items.STICK, new CustomBauble());
}
/**
* 注册女仆工作任务
*/
@Override
public void addMaidTask(TaskManager manager) {
// 添加自定义任务
manager.add(new CustomTask());
}
}