ResourcePackManager 安装设置
本页面介绍单服务器(独立)的安装流程。如果你运行 BungeeCord / Waterfall / Velocity 网络,请改为参阅代理网络 — 你在代理上安装的是同一个 ResourcePackManager.jar,但它会生成自己的配置并扮演代理侧的角色。
ResourcePackManager 2.x 以单个通用 jar 的形式发布。完全相同的 ResourcePackManager.jar 既能运行在 Bukkit/Paper 后端上,也能运行在 Velocity / BungeeCord / Waterfall 代理上——它会根据自身所运行的加载器自动检测平台。不再有单独的 resourcepackmanager-velocity-*.jar / resourcepackmanager-bungee-*.jar 文件需要解压。(如果 RSPM 检测到本后端位于一个从未给它配发过密钥的代理之后,它会在 plugins/ResourcePackManager/proxy-extension/ResourcePackManager.jar 暂存一份自身 jar 的副本,方便你复制到代理上——就是同一个文件,只是放在了顺手的位置。)
后端插件描述符声明的 Bukkit API 为 1.21.4,因此 Bukkit/Paper 服务器必须是 Minecraft 1.21.4 或更高版本。内置的 Geyser 自定义实体扩展面向 Geyser 2.11+。
推荐安装步骤(独立服务器)
- 将
ResourcePackManager.jar放入服务器的plugins/目录。(这与你在 Velocity / BungeeCord 代理上使用的是同一个 jar——没有单独的代理 jar。) - 启动一次服务器,让插件生成配置文件、mixer、blueprint 以及 output 文件夹。
- 决定你是否希望:
- 启用自托管(默认开启)
- 启用 MagmaGuy 的免费 auto-host 回退(默认开启)
- 强制客户端接受资源包
- 通过 mixer 文件夹手动添加自定义资源包
- 修改配置或手动添加自定义资源包后,运行
/rspm reload。
正常流程到此就完成了。使用默认设置时,RSPM 会优先尝试自托管,一旦发现任何异常就自动回退到 MagmaGuy 的 CDN。
你可以通过一行控制台输出确认它已生效:
[ResourcePackManager] Resource pack is live via self-hosting — http://play.example.com:25566/rspm.zip
RSPM 刻意让控制台保持安静 —— 它报告的是结果而不是每一个步骤,并且不会对它自己能恢复的状况发出警告(一次失败的自托管探测之后成功回退,那是成功而不是故障)。如果确实需要诊断,请运行 /rspm verbose on(或在 config.yml 中设置 verboseLogging: true)并重载。参见故障排查。
RSPM 会生成的文件夹
位于 plugins/ResourcePackManager/ 下:
| 文件夹 | 用途 |
|---|---|
mixer/ | 把做好的 .zip 资源包放到这里以并入合并。在 priorityOrder 中用它们确切的文件名(包含 .zip)来引用。 |
resource_pack/ | 把未压缩的资源包放到这里(带有 assets/、pack.mcmeta 等的文件夹树)。RSPM 会把它打包并在 ResourcePackManager 这一优先级条目下合并,该条目位于默认 priorityOrder 的最顶端。 |
blueprint/ | 存放 RSPM 自己贡献给合并的默认 pack.png 与 pack.mcmeta。编辑它们即可更改合并后资源包的图标或其 pack.mcmeta 描述;该文件夹在每次启动时都会重新打包为 blueprint.zip。 |
output/ | 最终产物:ResourcePackManager_RSP.zip,以及基岩版转换产出时的 ResourcePackManager_Bedrock.zip 与 rspm_geyser_mappings.json。 |
compatible_plugins/ | 每个受支持的插件集成对应一个 YAML 文件。 |
data_compliance/ | /rspm data_compliance_request 写入下载内容的位置。 |
proxy-extension/ | 仅在后端位于一个从未给它配发过密钥的代理之后时才会出现。其中包含一份正在运行的 ResourcePackManager.jar 副本,供你放到代理上。 |
geyser-extension/ | 仅在 Floodgate 位于本地、而 Geyser 是外部进程时才会出现。其中包含一份 jar 副本,供你放入那个 Geyser 的 extensions/ 文件夹。 |
核心命令
/rspm setup— 打开一个游戏内 GUI 设置菜单(插件更新状态、推荐插件、自动更新开关,以及一个带有指向 wiki、Discord 和你的 Nightbreak 账户令牌的可点击链接的信息按钮)/rspm recommendedplugins— 显示共享的 Nightbreak 推荐插件菜单/rspm downloadpluginupdate— 下载可用的 ResourcePackManager 更新,供下次重启时应用/rspm downloadall— 下载本插件暴露的所有可用更新(目前即 ResourcePackManager 更新)/rspm reload— 重新构建并重新托管合并后的资源包/rspm status— 打印完整的诊断信息:资源包状态、托管模式、网络密钥指纹、集成情况/rspm verbose [on|off]— 无需打开config.yml即可开启或关闭详细诊断日志。不带参数时为切换。所选结果会写回config.yml中的verboseLogging,因此重启后仍然有效。别名为/rspm verboselogging。/rspm itemsadder configure— 自动为 RSPM 托管配置 ItemsAdder(见下文)/rspm itemsadder dismiss— 根据玩家 UUID 永久关闭 ItemsAdder 警告/rspm data_compliance_request— 下载本服务器在远程存储的全部数据
根命令为 /resourcepackmanager,/rspm 是它的别名。上面的更新与推荐插件命令是由 RSPM 注册的共享 MagmaCore/Nightbreak 命令。
权限:
/rspm setup与/rspm recommendedplugins需要resourcepackmanager.setup。/rspm setup仅允许玩家执行,因为它会打开一个物品栏 GUI。/rspm downloadpluginupdate、/rspm downloadall、/rspm reload、/rspm status、/rspm verbose、/rspm itemsadder <configure|dismiss>以及/rspm data_compliance_request都需要resourcepackmanager.*。
ItemsAdder
目前推荐的 ItemsAdder 接入方式不再是纯手动配置。
请使用:
/rspm itemsadder configure
该助手会更新相关 ItemsAdder 设置、重新生成 ItemsAdder 的资源包,然后重新加载 ResourcePackManager。具体来说它会:
- 将
resource-pack.hosting.no-host.enabled设为true - 禁用
resource-pack.zip.protect-file-from-unzip下的protection_1、protection_2与protection_3 - 将
resource-pack.zip.compress-json-files设为false(RSPM 需要未压缩、可解析的模型 JSON 供 mixer 和基岩版转换器使用) - 调度
/iareload,再调度/iazip - 大约 15 秒后重新加载 ResourcePackManager,给 ItemsAdder 留出重载和重新生成的时间
如果 ItemsAdder 已被配置为自托管资源包(self-host、external-host 或 lobfile),助手命令会停止执行,并提示你先手动禁用 ItemsAdder 的托管。
基岩版 / GeyserMC 支持
RSPM 会自动将合并后的 Java 资源包转换为可供 GeyserMC 使用的基岩版资源包。转换流程支持任何插件的 1.21.4+ 物品定义资源包——不仅是 FreeMinecraftModels——包括 3D 手持物品、自定义盔甲和带模型的装备。
bedrockConversionEnabled 默认为 true,所以在已装有 GeyserMC 的服务器上全新安装后即可直接使用。
对于独立服务器,只要满足以下任一条件即可触发转换:本服务器装有 Geyser-Spigot;本服务器装有 Floodgate;或 RSPM 检测到处于代理模式(详见代理网络)。
如果本服务器装有 Geyser-Spigot,RSPM 还会把自己安装到 plugins/Geyser-Spigot/extensions/ 中作为一个 Geyser 扩展,正是它让基岩版自定义实体能够正常渲染,而不是显示为盔甲架。它就是同一个 ResourcePackManager.jar —— 无需额外下载 —— 但需要重启一次服务器才会生效。在 config.yml 中设置 geyserExtensionAutoInstall: false 可阻止 RSPM 安装和暂存该扩展。参见 Geyser 扩展与自定义实体。
完整的流水线说明、输出路径和显示偏移调优请参阅基岩版 / Geyser 转换。
验证安装
在控制台中或以 OP 身份运行 /rspm status。输出分为多个部分:
- Plugin meta — 版本与部署模式(独立 vs network-backend)。在网络后端上,它还会打印一段简短、不含机密的网络密钥指纹,以及该密钥的来源(由代理提供 / 保存在本服务器上 / 采纳自 Floodgate 的密钥 / 尚未设置)。
- Java Pack — 是否已合并、大小、SHA1 前缀
- Bedrock Pack — 是否已转换、是否有映射文件;若转换被跳过会给出诊断提示
- Hosting — 当前激活的分发路径(自托管 / 远程 / 尚未就绪)、客户端将看到的 URL、解析得到的外部主机名、自动检测到的公网 IP
- Proxy deployment — 提醒你网络代理 jar 就是同一个
ResourcePackManager.jar;在网络上,把它复制到代理的plugins/文件夹 - Integrations — Floodgate / Geyser-Spigot 检测情况、在线玩家数
如果有异常,请查看故障排查。
下一步
- 常见问题 — 常见问题
- 基岩版 / Geyser 转换 — 转换器细节与调优
- Geyser 扩展与自定义实体 — 扩展安装与 Geyser 版本要求
- 自托管 — 内置 HTTP 服务器、端口解析
- 代理网络 — 当你运行 BungeeCord / Waterfall / Velocity 时
- API — 在代码中注册你插件的资源包