- 版权类型
- 原创
- 插件中文名称
- RPT群系罗盘
- 插件英文名称
- RptBiomeCompass
- 原帖地址
- #
- 支持的核心(服务端)
- Paper
- Folia
- 语言支持
- 中文(简体)
- 适配版本(Java)
- 26.x
- 1.21
关于这个插件
RptBiomeCompass 给玩家一件绑定到本人的罗盘。右键它,就会打开一个界面,把附近探测到的每一个群系列成一行:中文名、方位(北 / 东北 / 东 …)、距离(格)、坐标,按距离由近到远排好。玩家想找沙漠、樱花树林、蘑菇岛,看一眼就知道往哪走。
它只指路、不传送 —— 界面里点任何东西都不会把你挪走,这是刻意的设计:不破坏探索体验,也不会被当成"跳点外挂"。
群系名用的是从 Minecraft 26.3 正式版官方语言文件里提取的中文名表(67 个群系,一个不缺)。这意味着不管玩家的客户端是中文还是英文,看到的都是中文名 —— 对中文服务器这一点很重要。
功能说明
1. 绑定罗盘
/rptbc get领取一个罗盘。罗盘绑定给领取它的玩家(数据存在物品的持久化数据里),lore 上直接写着「归属: 你的名字」。- 罗盘转手给别人也打不开 —— 别人拿到只会看到「这个罗盘不是你的」。想发给谁就发给谁,不会串味。
- 识别罗盘只看绑定标记、不看材质:以后你把
compass.material改成别的物品,老玩家手上的罗盘依然有效,不会集体失效。 - 配置里可以把
compass.require-item关掉 —— 关掉之后就变成"一条指令人人可看",不需要物品。
2. 界面:附近群系一览
- 手持罗盘右键即开(右键空气、右键方块都可以)。
- 一个群系一行,图标可在配置里指定;鼠标悬停看这一行的详情:
| 显示项 | 说明 |
| 群系名 | 中文名(见下方第 3 节) |
| 方向 | 八方位:北 / 东北 / 东 / 东南 / 南 / 西南 / 西 / 西北 |
| 距离 | 距玩家多少格(四舍五入) |
| 坐标 | 该群系采样点的世界坐标 X / Z |
| 提示 | 「仅指示方向,不提供传送」 |
- 排序按距离由近到远,自己脚下那一条方向显示「你在这里」。
- 同一个群系只保留最近的那一个采样点,所以不会出现"同一个群系列了十几行"。
- 界面行数(16 行 = 954 格)与最多显示条数都能配;多余格子用可配置的填充物铺满。
- 界面里所有点击与拖拽都被拦下 —— 图标拿不走、也塞不进东西。
3. 群系名:26.3 官方中文名表
- 插件内置了从 Minecraft 26.3 正式版官方语言文件提取的 67 个群系中文名(含 26.3 新增的「斑驳森林」)。
name.source可选:
| 取值 | 效果 |
builtin(默认) | 用内置的 26.3 中文名表 —— 所有玩家看到的都是中文,与客户端语言无关 |
client | 交给客户端按自己的语言渲染 —— 英文客户端看到英文名,未来版本新群系自动跟随 |
- 两种模式下,表里没有的群系都会自动回退成"跟随客户端语言"显示。所以你用数据包加了自定义群系、或者以后升到更高版本,都不会显示成一串乱码键名。
4. 扫描:半径 / 步长 / 安全阀
- 以玩家为中心,按网格采样探测群系:
| 配置项 | 默认 | 说明 |
scan.radius | 256 | 探测半径(格)。越大越慢 |
scan.step | 32 | 采样步长(格)。越小越精细也越慢 |
scan.max-samples | 4000 | 安全阀:采样点数超过它时,自动抬高步长,绝不让一次扫描把服务器拖住 |
scan.y-mode | player | 采样高度取玩家当前 y(能反映洞穴群系);也可固定成一个值 |
- 采样点数 ≈
(2 × 半径 ÷ 步长 + 1)²。默认 256 / 32 ≈ 289 点,非常轻。 - 结果按玩家缓存
cache-seconds秒(默认 30);缓存期内重复打开直接复用,玩家移动超过一个步长才作废重扫。
5. 冷却
cooldown-seconds(默认 10 秒),按玩家独立计时;填0表示不限制。- 拥有权限
rptbc.bypass.cooldown的玩家无视冷却。 - 玩家下线时自动清掉他的冷却与缓存,长开服不会堆积内存。
6. 管理员功能
| 指令 | 权限 | 说明 |
/rptbc reload | rptbc.admin | 重载 config.yml(含重新读取内置群系名表),不需要重启服务端 |
支持版本与环境
| 项目 | 说明 |
| Minecraft 版本 | 1.21 ~ 26.3(同一个 jar 跨版本,字节码目标 Java 21;群系资料取自 26.3 正式版) |
| 服务端核心 | Paper、Folia(已声明 folia-supported: true) |
| Java 运行环境 | Java 21 及以上 |
| 前置插件 | 无。不依赖 Vault、不依赖 PlaceholderAPI |
| 数据库 | 不需要。本插件没有持久化玩家数据,只生成一个 config.yml |
| 依赖的 API | dev.folia:folia-api:26.2.build.1-beta(编译期) |
目标用户
- 想让玩家少跑冤枉路的生存服服主 —— 找沙漠、找樱花林、找蘑菇岛,一眼看方向,不用再"沿着一个方向硬走"。
- 正在用 Folia 核心的服主 —— 这类"读地图数据"的功能在 Folia 上最容易踩线程归属问题,本插件从设计上就是双端兼容。
- 中文服务器服主 —— 内置 26.3 官方中文名表,英文客户端的玩家看到的也是中文群系名。
- 坚决不加传送功能的服主 —— 本插件只指示、不传送,不会变成第二套 TP 体系。
是否付费
付费插件。 具体定价与授权方式以资源页「售价」项为准。- 插件不含任何联网校验、授权服务器或机器绑定,购买后安装即用,离线环境照常运行。
- 不区分免费版 / 高级版,买到的就是完整功能。
- 插件未做任何混淆,欢迎安全审查。
获取作者帮助
| 途径 | 内容 |
| 交流群 | QQ 群 1124248111 |
| 作者 QQ | 2221899680 |
| 游戏内 | 输入 /rptbc help 查看全部指令与说明 |
使用教程
安装
- 把
RptBiomeCompass-1.0.0.jar放进服务端plugins/目录。 - 重启服务端(换 jar / 新装插件不支持热加载)。
- 首次启动会生成
plugins/RptBiomeCompass/config.yml,默认配置开箱可用。 - 启动日志里会有一行
已载入内置群系中文名表:67 条—— 看到它就说明名表正常。 - 按需修改
config.yml,然后执行/rptbc reload生效,不需要重启服务端。
指令列表
| 指令 | 权限 | 说明 |
/rptbc | rptbc.use | 打开群系界面(等价于手持罗盘右键) |
/rptbc get | rptbc.use | 领取一个绑定给自己的群系罗盘 |
/rptbc info | rptbc.use | 查看当前所在地的群系与坐标 |
/rptbc help | 免权限 | 显示指令帮助 |
/rptbc reload | rptbc.admin | 重载 config.yml |
权限节点
| 权限 | 默认值 | 说明 |
rptbc.use | 仅 OP | 领取罗盘、打开界面、查看 info |
rptbc.bypass.cooldown | 仅 OP | 无视冷却 |
rptbc.admin | 仅 OP | 重载配置 |
主要配置项(config.yml)
| 配置项 | 默认值 | 说明 |
compass.require-item | true | 是否必须手持绑定罗盘才能开界面(false = 指令直接可看) |
compass.right-click | true | 手持罗盘右键是否开界面 |
compass.material | COMPASS | 罗盘物品材质 |
compass.name / .lore | 见默认文件 | 罗盘名字 / 说明(MiniMessage) |
compass.glow | true | 是否加附魔光效 |
compass.show-owner / .owner-line | true / 见默认文件 | 是否在 lore 里显示归属者 |
name.source | builtin | 群系名来源:builtin 内置中文名表 / client 跟随客户端语言 |
scan.radius | 256 | 探测半径(格) |
scan.step | 32 | 采样步长(格) |
scan.max-samples | 4000 | 单次扫描采样点上限(安全阀) |
scan.y-mode / .fixed-y | player / 64 | 采样高度取玩家 y 还是固定值 |
gui.title / .rows | 见默认文件 / 4 | 界面标题 / 行数 1~6 |
gui.max-entries | 0 | 最多显示多少行(0 = 以界面容量为上限) |
gui.icon | COMPASS | 每个群系条目的图标材质 |
gui.entry-name / .entry-lore | 见默认文件 | 条目名称 / 说明模板(支持 <biome>``<direction>``<distance>``<x>``<z>) |
gui.here-text | 你在这里 | 距离 0 时方向位显示什么(纯文本) |
cooldown-seconds | 10 | 冷却秒数(0 = 不限制) |
cache-seconds | 30 | 扫描结果缓存秒数(0 = 不缓存) |
messages.* | 见默认文件 | 全部提示文案,支持 MiniMessage |
常见问题
- 右键罗盘没反应? 先确认它在主手(副手不触发)、且是你自己领取的那颗。别人给你的罗盘打不开。
- 提示「请手持群系罗盘再使用」? 你的主手不是罗盘。用
/rptbc get领一个。 - 界面里点群系没反应? 这是设计行为 —— 仅指示、不传送,点哪儿都不会传送。
- 为什么附近某个群系没列出来? 它可能在探测半径之外;调大
scan.radius即可。也可能它太小、正好落在采样网格的"缝"里 —— 调小scan.step会更精细。 - 扫描会不会卡服? 默认 256 / 32 只有约 289 个采样点,非常轻。
scan.max-samples是安全阀:你把半径调得再夸张,采样点数也不会失控。 - 群系名能改成自定义的吗? 可以,改
gui.entry-name用 MiniMessage 自己拼;内置名表本身在 jar 里的biomes_zh.yml,不开放外部覆盖。 - 能不能加传送? 本插件刻意不做传送。需要传送请搭配家园 / 传送类插件使用。
声明
- 本插件为原创作品,保留所有权利,默认不允许转载与整合。如需转载或整合进服务端整合包,请先通过上方交流群或作者 QQ 联系获取授权。
- 本插件未使用任何混淆手段,欢迎安全审查。
- 本插件不含任何后门、病毒或远程控制代码,不含任何联网校验,所有配置仅保存在服务器本地
plugins/RptBiomeCompass/目录中。 - 插件内置的群系中文名表取自 Minecraft 26.3 正式版官方语言文件(
assets/minecraft/lang/zh_cn.json),仅用于在游戏内显示群系名称。