一个支持 Folia 的 Minecraft 传送点插件,基于 Paper API 1.20.4+ 开发。
- ✅ Folia 兼容 — 完整支持 Folia 区域化多线程调度,使用
teleportAsync实现跨维度安全传送 - ✅ Paper / Spigot 兼容 — 自动检测运行环境,非 Folia 下回退到传统调度方式
- ✅ GUI 传送菜单 — 分页式传送点管理界面
- ✅ 经济系统集成 — 支持 Vault 经济扣费(设置传送点 / 传送消耗)
- ✅ 多世界支持 — 支持 Multiverse-Core,世界黑名单(前缀/后缀/包含匹配)
- ✅ 限制区域 — OP 可使用钓鱼竿选定区域,禁止区域内设置传送点
- ✅ 权限系统 — 支持按玩家设置传送点数量上限
- ✅ 即时传送 — 无前摇快速传送,带冷却时间控制
| 指令 | 别名 | 说明 | 权限 |
|---|---|---|---|
/homeplus |
/hp |
打开传送菜单 | 所有玩家 |
/hp warps |
打开传送菜单 | 所有玩家 | |
/hp setwarp [名称] |
设置传送点 | 所有玩家 | |
/hp removewarp |
打开删除传送点菜单 | 所有玩家 | |
/hp setlimit <玩家> <数量> |
设置玩家传送点上限 | OP | |
/hp addlimit <玩家> <数量> |
增加玩家传送点上限 | OP | |
/hp removelimit <玩家> <数量> |
减少玩家传送点上限 | OP | |
/hp reload |
重载配置 | OP | |
/hp help |
查看帮助 | 所有玩家 | |
/hset [名称] |
快速设置传送点 | 所有玩家 | |
/hlimit add <名称> |
/hlt |
添加限制区域 | OP |
/hlimit remove <名称> |
删除限制区域 | OP | |
/hmisc |
/hsync |
同步旧版数据 | OP |
| 权限 | 说明 |
|---|---|
homeplus.limit.<数量> |
设置玩家传送点数量上限,* 表示无限制 |
default:
warps: 50 # 默认传送点数量上限
cost-set: 0 # 设置传送点消耗游戏币
cost-teleport: 0 # 每次传送消耗游戏币
cooldown: 1 # 传送冷却时间(秒)
wait-time: 0 # 传送等待时长(秒),0 为即时传送
gui:
display: "&a玩家传送菜单"
item:
material: EMERALD_BLOCK # 传送点物品材质(1.20+ Material 名称)
bannedworld: # 禁用传送点的世界
- world_nether:prefix # 前缀匹配
- _the_end:suffix # 后缀匹配
- creative:contains # 包含匹配OP 玩家在创造模式下手持钓鱼竿,左键/右键方块选择两个坐标点,然后使用 /hlimit add <名称> 创建限制区域。
本插件通过 FoliaCompat 工具类实现 Folia 兼容:
- 运行时检测 — 自动检测是否运行在 Folia 环境下
- 调度器适配 — Folia 下使用
EntityScheduler.runDelayed(),非 Folia 下使用BukkitScheduler.runTaskLater() - 安全传送 — Folia 下使用
Player.teleportAsync()避免跨区域死锁,非 Folia 下使用Player.teleport() - 线程安全 — 所有共享状态使用
ConcurrentHashMap
| 插件 | 必需 | 说明 |
|---|---|---|
| Paper 1.20.4+ | ✅ | 最低 API 版本要求 |
| Vault | ❌ | 经济系统支持(可选) |
| Multiverse-Core | ❌ | 多世界支持(可选) |
| PlaceholderAPI | ❌ | 变量支持(可选) |
从 CustomWarps 迁移:将原 plugins/CustomWarps/playerdata/ 目录复制到 plugins/HomePlus++/playerdata/,然后使用 /hsync 同步数据。
mvn clean package输出文件:target/HomePlus-2.0.0-SNAPSHOT.jar