ESMP 是 Paper 26.2 的单插件家园玩法:永久主世界中由管理员登记“聚居点”,每位玩家拥有一个有效家园核心和少量连续区块声明;普通建设保持开放,受支持的固定容器按家园主人/信任关系保护。当前实现依据 2026-10-16 家园 MVP 实施契约。
这是一次新存档完整切换。旧版 Settlement、Parcel/Holder、钱包/金库、土地价格、认证、自动材料 Repair/Era 和外围回收已经退出运行入口;没有兼容命令,也不会迁移或重解释旧产权。
- 管理员先为一个已加载的 Multiverse 普通世界登记聚居点。登记位置是主世界公共核心,资源世界出生点是固定资源入口。
- 玩家搭好家园核心并注视工作台,用
/home create <聚居点>预览,再点击消息中的确认命令。每人最多一个有效家园核心。 - 核心结构:下层
3×3石砖,中央工作台,工作台正上方一盏非悬挂灯笼。核心损坏不会立即删除身份或解锁容器。 - 声明以区块为单位,必须包含核心、四向连通且互斥;默认最多 9 区块。普通方块建设不因声明而封锁。
- 家园主人和信任玩家可访问声明内受支持的固定财物载体并贡献有效照料。保护范围包括普通箱/陷阱箱及全部铜箱变体(含双箱校验)、木桶、潜影盒、各类熔炉、漏斗、投掷器、发射器、酿造台、合成器、木制搁板、雕纹书架、饰纹陶罐、讲台和唱片机;直接交互、讲台取书、弹射物破坏以及移动铜傀儡取物均受保护。个人末影箱和玩家、矿车等实体/可移动库存不作为家园产权。
- 迁居建立唯一新核心;旧家进入不可扩张的退出宽限,容器不会搬运。保护到期后旧权利结束。
- 失养按共享游戏刻依次进入预警、宽限、产权结束;停服不补算。恢复照料阻止后续衰败,但不免费修复已有物理损伤。
- 只有显式登记的有界建筑会发生衰败;玩家合法改造更新当前基线。旧产权结束后,继承人必须现场注视原核心并显式确认,旧主人和旧信任不会恢复。
- 每个聚居点绑定一个有限资源世界;
/esmp resource与/esmp return只允许从各自固定入口往返,不能用作主世界远距传送。
- 用
/esmp site list查看聚居点。 - 在允许候选范围内搭建上述核心结构,站在主世界并注视 5 格内的工作台。
- 执行
/home create <聚居点>,阅读位置、声明和保护提示,再点击[确认执行]。确认 UUID 只可使用一次,1200 个推进游戏刻后失效。 - 在相邻区块执行
/home claim扩张;用/home preview查看边界。解除当前非核心区块前执行/home unclaim并确认。 - 用
/home trust <玩家名或UUID>授予容器权限和照料资格;/home untrust ...撤销。撤权会关闭受影响的已打开容器。 - 用
/home status查看状态、截止游戏刻、声明和照料储备;/home core查看核心;/home history [家园UUID]查看历史。
迁居使用 /home move <聚居点>;玩家必须在新核心现场确认。继承已结束产权使用 /home inherit <已结束家园UUID>,且玩家不能已有有效家园。继承只允许原核心区块中既有的上述受支持容器;仍属有效声明的容器或跨产权边界的组合双箱会拒绝继承,不会借继承夺取仍受保护的财物。
主人或信任玩家在自己的有效声明内选择两个已加载方块:
/home building pos1
/home building pos2
/home building preview
/home building register "建筑名称"
选择为包含两端的长方体,当前默认上限由实现固定为 4096 格;登记不会强制加载区块。其他命令:
/home building list [all]
/home building history <建筑UUID>
/home building retire <建筑UUID>
/home building clear
退役保留历史,不删除实际方块。衰败只处理登记建筑,并由 CoreProtect 记录系统变更;手工修补和新改造优先于旧任务。
| 范围 | 当前命令 |
|---|---|
| 建立/迁居/继承 | /home create <聚居点>、move <聚居点>、inherit <已结束家园UUID>、confirm <确认UUID> |
| 声明 | /home claim、unclaim、preview |
| 权限/信息 | /home trust|untrust <玩家名或UUID>、status、core、list [聚居点]、history [家园UUID] |
| 建筑 | /home building pos1|pos2|clear|preview、register <名称>、list [all]、history <UUID>、retire <UUID> |
| 聚居点/旅行 | /esmp site list、resource、return、status |
| 管理员 | /esmp site register <名称> <资源世界> <边界直径>、/esmp audit rollback <秒数> <半径> <来源> |
多词名称使用双引号。玩家名只解析在线或服务器已缓存账号,也可直接使用 UUID。/home 默认向玩家开放;登记聚居点和审计回滚需要 esmp.admin(默认 OP)。禁止 /reload 和插件管理器热卸载。
运行时必须启用以下固定依赖:
| 依赖 | 版本 | SHA-256 |
|---|---|---|
| Paper | 26.2 build 121 | 0de30efb024bc8b83c9c7d507d11802897ad8056b6110ec09fe1a91d126ccb54 |
| CoreProtect CE | 24.1(API 12) | a2acef7c06ef201355cef07d591a6055dfed358ad768faaaaaf4e276865ecc97 |
| Multiverse-Core | 5.8.1 | bc3f34e2d747fdf024f44868747bb016b08fa11d98ccb4ffcac958f083151a83 |
scripts/run-dev.sh 会从仓库记录的 URL 下载并逐次校验这些产物。ESMP 缺少 CoreProtect 或 Multiverse-Core、依赖运行中停用、或 CoreProtect API 低于 12 时会拒绝无保护运行。不要同时加载 Bolt 或 LWC:家园声明是当前唯一容器权限来源,启动会明确拒绝独立永久锁插件。
Multiverse 必须先创建、加载并管理一个独立 NORMAL 资源世界;ESMP 不会创建世界。管理员站在主世界预定公共核心的安全方块上执行:
/esmp site register Alpha resource_alpha 512
/esmp site list
资源世界出生点也必须是安全落点;边界直径允许 64–30000000。聚居点名称和资源世界不能重复绑定。登记完成后 ESMP 持久化物理世界身份、固定入口和边界。
默认配置位于 plugins/ESMP/config.yml:
installation-family: HOME_2026_10
config-version: 1
main-world: world
home:
max-claims: 9
direct-distance: 256
neighbor-distance: 64
max-hops: 3
move-grace-ticks: 14400000
care:
capacity-ticks: 28800000
warning-ticks: 7200000
grace-ticks: 14400000
action-cooldown-ticks: 1200
daily-credit-cap: 24000这些是新测试档的共享游戏刻初值,不是旧版短周期参数。修改后完整停服/启动,不要热重载。
要求 JDK 25(仓库验证环境为 Temurin 25.0.4.1+1)和 Gradle Wrapper 9.7.1:
export JAVA_HOME="$PWD/.tooling/jdk-25.0.4.1+1/Contents/Home"
./gradlew build只部署 esmp-plugin/build/libs/esmp-0.1.0-SNAPSHOT.jar。esmp-core 和 esmp-home 是内部模块,不单独部署。构建从 schema/db/home/db.changelog-master.xml 生成 jOOQ 源;不要手改或提交 build/generated-src/jooq。
阅读并接受 Minecraft EULA 后可启动本机开发服:
ESMP_ACCEPT_EULA=true ./scripts/run-dev.sh脚本构建插件、校验并安装 Paper/CoreProtect/Multiverse,使用 .run/home-dev/,监听 127.0.0.1:25579。它默认离线模式、超平坦世界且只适合本机;公开部署必须启用在线身份验证并规划 UUID 身份,不能直接复制开发配置。就绪日志为:
ESMP READY: family=HOME_2026_10 protection=true ...
- 只把本版本部署到独立新服务器目录/新世界/新
plugins/ESMP/。不要把新 JAR 覆盖到旧版数据目录尝试升级。 - 若现有配置的
installation-family不是HOME_2026_10、config-version不是1,或只有既有esmp.db而没有家园配置,插件会在可写初始化前拒绝启动;不会创建空库绕过,也不会自动迁移旧余额、土地、任务或产权。 - 保留旧服完整冷备份供历史查阅。需要回退时恢复整套同一检查点,而不是把旧数据库接到新世界。
- 备份前正常控制台
stop并等进程退出。一起复制所有世界/维度、玩家数据、plugins/ESMP/(含esmp.db、配置、可能的 SQLite WAL/SHM 和回滚恢复清单)、CoreProtect 数据库与配置、Multiverse 配置和匹配的插件 JAR。 - 世界、玩家库存、ESMP 数据、CoreProtect 日志和 Multiverse 世界映射不是一个原子存储。恢复时必须来自同一冷检查点,先在隔离副本启动,等
ESMP READY,核对聚居点、世界身份、家园、声明、信任、建筑和资源入口后再开放。
更完整的发布与恢复步骤见 RELEASE.md。当前自动化/协议客户端日志可作为工程证据,但不等于原生 26.2 客户端视觉验收或玩家接受;历史失败必须结合日志中后续纠正通过项解释。