OhMyMCOhMyMC
模组和插件

从 CurseForge 自动下载

42 次阅读

模组和插件可以通过设置 CURSEFORGE_FILES 为以逗号或空格分隔的 项目文件引用列表,从 CurseForge 自动下载和升级 mods 和插件。被移除的引用会自动清理,设置 CURSEFORGE_FILES 为空字符串将删除所有之前管理的项目文件。

每个引用中可以省略特定文件,以便自动选择所选 mods/plugin 的最新版本。选定的 VERSIONTYPE 会被用来选择合适的文件。

CurseForge API 密钥使用方法

必须分配一个 CurseForge API 密钥,并将其设置为 CF_API_KEY,详细信息请参见这里

项目文件引用

技巧

单个项目文件通常代表 mod/plugin 的一个版本,但 CurseForge 将这些项目广泛地称为 files 而不是 version

项目文件引用列表支持以下格式:

  • 项目页面 URL,例如 https://www.curseforge.com/minecraft/mc-mods/jei ,将自动选择最新的文件

  • 文件页面 URL,例如 https://www.curseforge.com/minecraft/mc-mods/jei/files/4593548

  • 项目短标识(slug),例如 jei,将自动选择最新的适配文件。

  • 项目ID (project id) ,例如 238222,将自动选择最新的适配文件。

  • 短标识或ID通过 : 连接文件ID,例如 jei:4593548238222:4593548

  • 短标识或ID通过 @ 连接部分文件名,例如 jei@10.2.1.1005,此选项可用于引用 mod/plugin 的版本,而不是查找文件ID。

  • @ 后跟 容器路径 的列出文件

有关列出文件的更多信息

列出文件中的每一行都会被处理为上述的某个引用;但是,空行和以 # 开头的注释行会被忽略。

确保将列出文件放在挂载目录/卷中,或者声明相应的挂载位置。

例如,可以将 CURSEFORGE_FILES 设置为 "@/extras/cf-mods.txt",假设 "/extras" 已被添加到 volumes 部分,其中容器文件 /extras/cf-mods.txt 内容为:

# 此注释被忽略
jei:10.2.1.1005

# 此行及前面的空行被忽略
geckolib
aquaculture
naturalist

Docker Compose 中的多行值

通过 多行字符串 将 Compose 文件声明组织得更加整洁,例如:

      CURSEFORGE_FILES: |
        geckolib
        aquaculture
        naturalist

依赖关系

系统可检测声明列表中缺失的依赖项,但无法自动解析依赖关系。由于元数据仅提供模组ID而非具体文件版本,需手动添加所有必要依赖。

最后更新于