- 版权类型
- 原创
- 插件中文名称
- 逸云地图守护
- 插件英文名称
- YiyunMapGuard
- 原帖地址
- #
- 支持的核心(服务端)
- Paper
- Folia
- Purpur
- Leaves
- 其他核心
- 语言支持
- 中文(简体)
- 适配版本(Java)
- 最新版本
- 26.x
[MD]
# 逸云地图守护 · YiyunMapGuard
**让每一幅地图画、每一本书,都属于它的作者。**
把玩家的地图画和书登记为**作品**:别人无法私自复制,作者决定谁能得到、能得到几份、要不要收费。群组服全网共享作品库,作品带到任何子服都有效。



[核心特色](#-核心特色) · [对比常见做法](#-和常见做法有什么不同) · [功能详解](#-功能详解) · [快速开始](#-快速开始) · [命令与权限](#-命令与权限) · [名词说明](#-名词说明) · [常见问题](#-常见问题)

---
## ✨ 核心特色
### 🛡️ 真正防复制
物品带有数字签名。工作台、制图台、合成器、铁砧,以及 Shift、拖拽、数字键、双击等各种取物方式全部拦截;书被改过会自动恢复或隔离。
### 🎨 作者说了算
五种复制规则,还能设置副本总数上限、每人上限和白名单。作品可以免费分享,也可以标价出售。
### 💰 安全的作品交易
接入 Vault 经济。收入记在作者名下,由作者主动提现。每笔扣款都有完整记录,结果不明确的交易冻结待查,**绝不重复扣款**。
### 🖼️ 大幅拼图作品集
挂满地图的展示框墙右键一下就能记录为作品集,整套标价、整套购买(只扣一次款),领到后可以一次挂回空墙。
### 🌐 群组服全网通用
多个子服共用一个作品库。物品在任何子服都有效,地图到了新的子服会自动重建;在一个子服作废,其他子服随即同步。
### 🖱️ 不用记命令
`/ymap` 打开精心设计的图形菜单,几乎所有操作都能点出来;手持作品按两下 Shift 就能直接打开它的管理页。
> **原生支持 Folia** · **单服开箱即用,零配置** · **断库自动恢复** · **全中文界面,文字可自定义**
---
## 🆚 和常见做法有什么不同
| 场景 | 常见的地图保护方式 | 逸云地图守护 |
|---|---|---|
| 分享作品 | 只能“锁死”,想送人只能由自己复制副本 | 作者自己设规则:仅自己、白名单、公开免费、公开付费 |
| 出售作品 | 玩家之间私下交易,容易被骗 | 作品库里标价,购买即扣款即发放;整套作品集一次结算 |
| 丢失物品 | 丢了就没了,或者补一件新的,旧的仍然能用 | 补发后旧物品立即作废,找回来也不能用,杜绝刷物品 |
| 作者删除作品 | 买家手里的物品跟着失效 | 已经发出的物品照常有效,只是不能再复制新的 |
| 群组服 | 每个子服各管各的,换服就失效 | 全网一个作品库,物品跨服通用 |
---
## 🧭 功能详解
### 🛡️ 作品保护
- 支持**地图画、书与笔、成书**。手持物品在菜单里一键保护,也可以一次批量保护背包里的所有作品。
- 作品名可以直接用铁砧改过的名字或书名,插件从不随机起名。
- 有复制资格的玩家(例如作者本人)可以像原版一样,用制图台或工作台复制,得到的是登记过的副本,放进去的作品不会被消耗。
- 物品说明里显示作品名、作者、类型、复制规则等信息,显示哪些内容可以在配置里调整。
### 📚 作品库与复制规则
- **五种复制规则**:禁止复制 · 仅作者 · 白名单 · 公开免费 · 公开付费。新作品默认“仅作者”。
- 可以设置**副本总数上限**和**每人上限**;给作品加白名单玩家时,规则会自动切换为白名单。
- 作品库支持按作品名或作者搜索、收藏,以及按最新、领取最多、收藏最多、价格高低排序,翻页稳定,不会重复或遗漏。
- 作品被领取或购买时作者会收到通知,离线期间的通知在下次上线时汇总。
### 💰 付费、收入与提现
> 需要 Vault 和任意经济插件。
- 公开付费作品在购买时扣款,可以设置服务器抽成比例,也可以对保护新作品收取保护费。
- 收入记在作者名下,在菜单的“收入与提现”中一键提现到经济账户。
- 扣款、发放、提现每一步都有记录;结果不明确时冻结,等待管理员核查,**不会重复扣款,也不会重复入账**。
### 🖼️ 作品集(多张地图拼成的大图)
- 在菜单中选择“从地图墙新建”,再右键挂满地图的展示框墙,整面墙一次记录为作品集;也可以在网格编辑器里逐格排列,最大 32×32。
- 作者可以统一修改整套作品的复制规则、上限和白名单,也可以在价格编辑器里逐张定价或统一定价。
- 其他玩家**整套领取或购买**:确认页列出每张的价格和合计,只扣一次款;有任何一张不能领取,整套都不成交。
- 领到的整套地图可以按原来的位置一次挂到空的展示框墙上,并会先检查领地权限。
### 📖 书籍版本
- 作者可以取出书籍草稿修改,再发布为新版本;已经发出的书保持原来的版本。
- 所有玩家都能在菜单里只读预览书籍内容,不需要先领取。
### 🔁 转让、补发与删除
- 作品可以**转让**给其他玩家,对方确认后生效;作品集可以整组转让。
- 物品丢失时由管理员**补发**,旧物品随即作废;也可以开启玩家自助补发(默认关闭)。
- 作者可以**删除**作品:作品从作品库消失、不能再复制,已经发出的物品照常有效、照常防复制;管理员可以恢复。
### 🖱️ 图形菜单
- 统一的边框风格,每个按钮的说明里都写着左键、右键分别做什么。
- **数量选择页**:顶部显示作品本身,实时显示合计金额,加减按钮的堆叠数就是步长,有“最少/最多”快捷键。
- **确认页**:写明具体操作,单独列出操作对象、明细和后果;删除、作废这类不可撤销的操作会等 2 秒才允许确认,避免误点。
- 需要输入文字时直接在聊天栏输入,内容不会公开发出;可以点击 **[取消]**,或用 **[填入当前内容]** 修改原来的名字。
- 统一的快捷操作:右键做次要操作,Shift+左键跳过一步,Shift+右键清除或设为不限。
### 🧰 管理工具
- 管理控制台:按玩家或作品查物品,处理未完成的交付、待核查的付费订单与提现、被篡改的物品。
- 管理员可以向玩家发放作品,或者勾选多件作品、选择整个作品集批量发放。
- 管理员的作废、补发、发放都要选择理由并写入记录;`/ymap admin doctor` 一条命令查看数据库、跨服同步、缓存的运行状态。
- 可以按权限分组限制每位玩家最多拥有的作品数。
### 🔌 对接其他插件
- 提供 Java API 与事件,方便其他插件读取作品信息或响应领取、发放等操作。
- 安装 PlaceholderAPI 后提供 `%ymap_works%`、`%ymap_income_available%` 等占位符。
- 受保护的地图使用独立的负数地图编号,与 ImageFrame 等地图插件互不冲突。
---
## 🚀 快速开始
### 服主:三步装好
1. 把 JAR 放进 `plugins/`(两个版本**任选其一**):
| 文件 | 大小 | 适合 |
|---|---|---|
| `YiyunMapGuard-1.0.0.jar` | 约 1.4 MB | 能访问外网的服务器;首次启动自动下载依赖(默认阿里云镜像) |
| `YiyunMapGuard-1.0.0-full.jar` | 约 19 MB | 无法访问外网的服务器;依赖已全部内置 |
2. 启动服务端,控制台出现 `YiyunMapGuard is READY` 即可使用。单服默认使用内置 SQLite,**无需任何配置**。
3. *(可选)* 需要付费功能时,安装 Vault 和经济插件,把 `config.yml` 中的 `economy.enabled` 改为 `true` 后重启。
### 玩家:四步上手
1. 拿着画好的地图画或写好的书,输入 **`/ymap`**,点“手中的作品”完成保护。
2. 在作品详情页设置复制规则:公开免费、公开付费,或者把好友加进白名单。
3. 其他玩家在“作品库”里找到作品,点击即可领取或购买;背包满了会放进“待领取”。
4. 卖出作品的收入,在“收入与提现”里一键提现。
### 群组服
各子服连接同一个 MySQL 或 PostgreSQL,设置**不同的** `node.id`,复制**同一份** `secrets.yml`,依次启动即可。
原来的单服 SQLite 数据可以一次性导入。详见 [部署说明](docs/DEPLOYMENT.md#跨服部署)。
### 运行环境
| 项目 | 要求 |
|---|---|
| 服务端 | Paper 或 Folia **26.1+** |
| Java | **25** |
| 数据库 | 单服:内置 SQLite(无需安装) · 群组服:MySQL 8.0.30+(推荐 8.4 LTS)或 PostgreSQL 14+ |
| 可选 | Vault + 任意经济插件(付费与提现) · PlaceholderAPI(占位符,目前仅 Paper) |
> **⚠️ 服主须知:请务必备份 `plugins/YiyunMapGuard/secrets.yml`。**
> 它是物品签名密钥,一旦丢失或更换,所有已发出的作品物品都无法再被识别。群组服的所有子服必须使用同一份。
---
## ⌨️ 命令与权限
几乎所有操作都可以在 **`/ymap`** 菜单里完成。想用命令的话,输入 **`/ymap help`** 会按分类列出你能用的命令,点击即可填入聊天栏,命令支持 Tab 补全。
| 命令 | 作用 |
|---|---|
| `/ymap` | 打开图形菜单 |
| `/ymap protect [名称]` | 保护手中的地图画或书 |
| `/ymap info` | 查看手中作品的信息 |
| `/ymap library` | 浏览作品库 |
| `/ymap get <作品ID>` | 领取或购买作品 |
| `/ymap policy …` | 设置复制规则、价格和份数上限 |
| `/ymap allow\|deny <玩家>` | 管理复制白名单 |
| `/ymap transfer <玩家>` | 转让作品 |
| `/ymap collection …` | 作品集 |
| `/ymap income` · `/ymap withdraw` | 查看收入 · 提现 |
| `/ymap admin doctor` · `/ymap admin reload` | 运行诊断 · 重载配置(管理员) |
普通玩家的权限默认全部开启,管理权限默认只有 OP 拥有。
### 完整权限列表
| 权限 | 默认 | 作用 |
|---|---|---|
| `yiyunmapguard.use` | 所有人 | 使用 `/ymap`、菜单和帮助 |
| `yiyunmapguard.protect` | 所有人 | 保护作品 |
| `yiyunmapguard.info` | 所有人 | 查看手中作品信息 |
| `yiyunmapguard.library` / `.library.get` | 所有人 | 浏览作品库 / 领取或购买 |
| `yiyunmapguard.copy` | 所有人 | 复制手中的作品(包括在制图台、工作台复制) |
| `yiyunmapguard.policy` | 所有人 | 管理自己作品的规则、价格、份数和白名单 |
| `yiyunmapguard.rename` / `.revoke` / `.transfer` | 所有人 | 改名 / 作废自己作品的副本 / 转让 |
| `yiyunmapguard.delete` | 所有人 | 删除自己的作品 |
| `yiyunmapguard.collection` | 所有人 | 创建、领取、摆放作品集 |
| `yiyunmapguard.book.checkout` / `.book.publish` | 所有人 | 编辑书籍并发布新版本 |
| `yiyunmapguard.income` / `.withdraw` | 所有人 | 查看收入 / 提现 |
| `yiyunmapguard.reissue` | 所有人 | 自助补发(还需在配置中开启,默认关闭) |
| `yiyunmapguard.works.limit.<数字>` | 无 | 这位玩家最多拥有的作品数,例如 `yiyunmapguard.works.limit.50`;有多个时取最大值 |
| `yiyunmapguard.works.limit.unlimited` | OP | 作品数不受限制 |
| `yiyunmapguard.collection.bypass-protection` | OP | 摆放作品集时跳过领地权限检查 |
| `yiyunmapguard.admin.*` | OP | 全部管理功能(也可以单独授予 `yiyunmapguard.admin.doctor` 等子权限) |
---
## 📘 名词说明
| 名词 | 意思 |
|---|---|
| 作品 | 登记过保护的一幅地图画或一本书,全网唯一,有作者、名称和复制规则 |
| 原作 | 保护时作者手里的那一件;补发给作者的原作显示为“原作(补发)” |
| 副本 | 按复制规则复制、领取或购买得到的物品,和原作一样受保护、显示相同的内容 |
| 管理员发放 | 管理员直接发给玩家的物品,不受复制规则和上限限制 |
| 作废 | 让某一件物品失去保护;作废的物品仍然可以查看,但不能再复制或补发 |
| 补发 | 物品丢失或损坏时发一件新的,旧的那件随之作废 |
| 版本 | 书籍作品每次发布修改后的内容就是新的一版;已发出的书保持原来的版本 |
---
## ❓ 常见问题
### 菜单里为什么看不到地图的画面?
这是游戏本身的限制:箱子菜单里的地图不会显示画面。作品详情里有名称、作者等信息;排列大幅拼图时,推荐用“从地图墙新建”直接右键地图墙来记录作品集。
### 物品说明里显示“已失效”是怎么回事?
作者或管理员作废了这件物品,或者它已经被补发的新物品替代。作废的物品仍然可以查看地图或阅读,但不能再复制或补发。
### 付费功能显示不可用?
请确认已经安装 Vault 和经济插件,并且 `economy.enabled` 为 `true`,然后重启。`/ymap admin doctor` 会显示经济插件的状态。
### 和 ImageFrame 一起用会冲突吗?
不会。受保护的地图使用独立的负数地图编号,ImageFrame 只使用正数编号,两边不会撞号。
### 数据库断开会怎样?
插件会暂停保护、领取、付费等操作,已有的地图照常显示;数据库恢复后自动继续,不需要重启。
### 可以修改提示文字吗?
可以。所有文字都在 `lang/zh_CN.yml` 中,支持 MiniMessage 颜色格式,改完执行 `/ymap admin reload` 即可生效。
---
**逸云地图守护** · 作者 **CHL_chun** · 插件交流群 **1093090518**
[/MD]