Skip to content

pch_system-v0.8.0

Choose a tag to compare

@github-actions github-actions released this 20 Jul 13:41

⚠️ 本插件需配合 PCHSystem 后端使用,单独安装 .mcdr 无法工作。

这是什么

PCH System 是 PCHSystem 的游戏内客户端(MCDReforged 插件):材料协作收集、项目三阶段进度管理、积分 / 称号、通知投递等全在游戏内 !!PCH 命令完成。所有功能经 HTTP 调用后端,必须先部署后端

首次部署(全栈 · 推荐)

git clone https://github.com/YuShenLiu06/PCHSystem.git
cd PCHSystem
bash Scripts/install.sh

脚本一键完成:docker / 镜像自适应 → 生成 .env → 起 postgres+backend+web → 数据库迁移 → 前端构建 → 拷贝插件 + 生成 config.json。完成后游戏内 !!MCDR plugin reload pch_system!!PCH status(自检)→ !!PCH login

升级(已部署)

bash Scripts/update.sh

详情参考 部署流程

依赖

  • MCDReforged ≥ 2.14.0
  • 插件依赖:uuid_api_remakeminecraft_data_apiinstall.sh 会检测并提示安装)
  • PCHSystem 后端(必需) + 前端(可选):见上「首次部署」

破坏性变更

数据库迁移(0014 → 0015 → 0016,不可跳)

  • 0014:新增 users.web_accounts(Web 账号主表)、users.bind_tokens(绑定短码);users.playersweb_account_id 外键(不回填,NULL 即未绑)。
  • 0015users.web_accountsdisplay_name(自定义昵称)。
  • 0016:新增 sheets.sheet_managers(项目协管员,锚 web_account_id)。
  • 业务表(sheets / score 等)零改动;升级前建议 pg_dump 快照。

登录凭证失效(强制重登)

  • JWT subplayer_uuid 改为 web_account_id(+ active_uuid claim),所有现有会话立即失效
  • 三端用户需重新登录:游戏内 !!PCH login、网页端 /login
  • 首次 !!PCH login 会自动建临时 Web 账号挂接,玩家可后续注册转永久或绑定已有账号。

一行版:跑迁移 alembic upgrade head → 通知全员重登 → 旧 token 全部作废。


更新内容

适配身份主锚升级与项目协管员机制,部署脚本健壮性增强。破坏性变更:所有玩家需重新 !!PCH login 登录。

Added

  • !!PCH bind 绑定多身份:游戏内出短码到网页端输入,或反向;一个账号可绑多个身份,换服 / 改名后积分与贡献不丢。
  • 协管员命令!!PCH sheet manager <编号> add|remove|list <玩家名>;协管员可协助拥有者进行操作,可以新增物品、删除物品、打回、更改进度等;不能删除 、 改名 、 归档操作。
  • 同账号不同身份建的项目、认领的行可互相操作。

Fixed

  • 对归档项目操作显示「项目已归档,只读」,不再报服务暂不可用;一键提交整体短路不刷屏(issue #7)。

运维(部署脚本)

  • 重装 / 更新自动补全 .env 新增项;撞 web 端口自动清理残留容器并询问,不再异常退出。