外观
氛围动效
外观
氛围动效
这页把审查通过的发布物投放到 Geyser,并保证任何一层失败都能回滚。
确认 Geyser 配置中自定义内容已启用:
gameplay:
enable-custom-content: true该开关关闭时,自定义的 item、block 和 skull mapping 全部禁用。修改它需要重启 Geyser。
不要把「热重载没有报错」当成已注册
开关是启动期读取的。只看热重载结果会误判。
Geyser 的目录随平台变化,但逻辑固定:
<Geyser data folder>/
├── custom_mappings/ # 本项目拥有的 JSON 映射文件
├── packs/ # 基岩版 ZIP 或 MCPACK
├── locales/overrides/ # Rainbow 导出的语言覆盖
├── custom-skulls.yml # 结构化合并后的活动文件,不整体覆盖
└── extensions/ # 仅复杂实体或 Display 路线需要Paper 与 Spigot 平台通常在 plugins/Geyser-<platform>/ 下。
Standalone 平台则位于 Geyser 根目录。以实际服务器安装路径为准,不要在开发机的同名目录部署。
推荐使用固定且可归属的文件名:
custom_mappings/managed/miragedge-managed.json
packs/miragedge-bridge-<release-id>.mcpack
locales/overrides/zh_cn.json不要让 Rainbow 输出覆盖不带项目归属的 mappings.json。
否则很难判断一个旧映射来自本项目、其他插件还是人工修补。
Rainbow 若输出 custom-skulls.yml,先原样放入 release 的 rainbow/input/。不要改名后直接投放。
发布脚本必须用 YAML 解析器读取两个输入。一个是当前活动文件,另一个是 Rainbow 原始输入。逐 section 处理以下四个字段:
player-usernames、player-uuids、player-profiles、skin-hashes。
custom-skulls.patch.yml,再输出全量 merged/custom-skulls.yml。只有后者可以原子替换 Geyser 活动文件。这是 patch 到活动文件的转换,不是字符串拼接
不要用正则替换 YAML,也不要把 custom-skulls.patch.yml 当成 Geyser 会自动读取的文件。
packs/ 或 custom_mappings/。不使用本地 packs/、改用 Geyser API 发送远程资源包时,基岩版客户端要求:
Content-Length 精确。Content-Type: application/zip。重定向可以存在,但最终响应仍必须满足这些条件。部署前验证响应头:
curl -I -L https://example.invalid/miragedge-bedrock-r01.zip以下四类响应会让基岩版下载失败:
回滚不是重新跑 Rainbow。保留上一个已通过实机测试的 release,按以下步骤操作:
report.txt 与差异。不要删除证据后再试图复现。ZIP、JSON 和启动日志都只是逐层通过,不是玩家视角的最终结论。实际渲染是否正确仍要按验收与排错完成。