背包与还原
备份什么
进入比赛或观战时会拍下一份备份:
| 内容 | 公平模式 | 巅峰模式 | 观战 |
|---|---|---|---|
| 背包 36 格 + 盔甲 4 格 + 副手 | ✅ | — (peak.restore-inventory: true 时 ✅) | — |
| 位置、游戏模式、飞行状态 | ✅ | ✅ | ✅ |
| 血量、饱食、饱和度、经验 | ✅ | ✅ | ✅ |
| 药水效果、着火时间 | ✅ | ✅ | ✅ |
物品用 Paper 的原生格式完整保存,附魔、自定义名称、Lore、插件物 品的数据、耐久都不会变。
一人一份,跟着状态走
- 每个玩家同一时间只会在「排队 / 比赛 / 观战」其中一个状态,备份属于这个状态。
- 备份建立后立刻写进数据库(
ca_restores表),离开状态、还原成功后才删除。 - 比赛收尾只会还原「还在这场比赛里」的人;已经提前离开、去打下一场的人不会被拉回来,他新的备份也不会被动到。
比赛中死亡
- 物品一律留在身上:没有掉落物,盔甲不会被脱进背包,也不会掉经验。
- 下一刻自动重生在观战点(不会卡在死亡画面)。
- 2V2 还有队友活着:切换成冒险隐身悬浮(或旁观模式,
match.dead-spectate)看队友,背包不动;比赛结束和大家一起还原。 - 最后一人阵亡、比赛结束:留在场上看结果,
match.end-delay秒后(默认 3)所有人一起还原、送回原处。
各种离开方式
| 情况 | 结果 |
|---|---|
| 比赛正常结束 | 收尾时还原,送回进场前的位置 |
/ca leave(比赛中) | 算阵亡(判负),立即还原 |
/ca leave(倒数中) | 取消这场,所有人还原;其他人自动重新排队 |
| 下线 | 算阵亡(判负);备份留在数据库,下次上线自动还原,并提示「已还原你上次离开前的背包与位置」 |
| 服务器崩溃 / 断电 | 下次上线自动还原 |
| 正常关服 | 关服前直接还原所有选手与观战者,场地也会恢复 |
管理员可以用 /ca admin info 查看「等待还原的备份」数量,用 /ca admin restore <玩家> 手动再执行一次还原检查。
防止套装物品被带走
公平模式的套装物品只能在比赛里用:
- 比赛中不能丢东西(
match.allow-drop: false)。 - 比赛中不能打开箱子、末影箱、潜影盒等容器,也不能把东西挂到物品展示框、盔甲架上。
- 比赛中不能离开场地、不能用传送门、不能被其他插件传送出场。
- 结束时整个背包换回备份,场内掉落物与箭会清掉。
多个子服
多个子服共用 MySQL 时,备份记着是哪一台子服建立的(server-id,留空自动用「资料夹名:端口」),只会在同一台还原,不会在别的子服把背包换掉。
如果你的子服会搬资料夹或换端口,请在每台子服的 config.yml 填固定的 server-id。