信号端口

信号端口

SignPort是一个模组,能将普通告示牌变成命名旅行传送门。

玩家运载

SignPort

SignPort 是一个 Fabric 模组,可将普通告示牌转变为带名称的传送门。创建一个锚点,在告示牌上写上其名称,然后右键点击告示牌即可进行传送。

原始项目由 approved (GitHub) - approved (Modrinth) 制作。经其明确许可后发布。

功能特性

  • 创建、分组、列出、筛选、排序、删除和传送至已命名的锚点。
  • 使用 [sp] 或 [signport] 将告示牌转变为传送门。
  • 目标锚点可位于当前维度或其他维度。
  • 使用 /sp anchor near [radius] 浏览附近的锚点。
  • 为锚点名称和分组提供 Tab 补全功能。
  • 通过首先检测玩家面向的告示牌侧面,支持告示牌正面/背面的文字。
  • 将传送门标记着色为绿色(目标有效)或红色(目标缺失)。
  • 可选的客户端功能增加了 HUD 查询提示、锚点浏览器、告示牌编辑自动补全,以及用于填写有效传送门告示牌的 SignPort 模板表单。
  • 可选的 BlueMap 集成可将锚点标记发布到你的网页地图。
  • 通过 fabric-permissions-api 支持 LuckPerms,并提供原版管理员权限回退。

可选集成

  • SignPort 客户端模组: 在玩家客户端上为可选安装。当客户端和服务器均安装 SignPort 时,客户端会收到同步的锚点和权限数据。这将启用传送门告示牌 HUD 查询提示、按 J 键打开的锚点浏览器、告示牌编辑自动补全,以及受权限控制的 SignPort 模板按钮。
  • BlueMap: 可选的服务器端集成。安装 BlueMap 后,SignPort 会按维度将锚点发布为标记集合。默认启用。
  • LuckPerms 或其他 fabric-permissions-api 提供者: 可选的服务器端权限提供者。若未安装,SignPort 将使用原版管理员权限回退等级。
  • Cloth Config: 可选的客户端配置界面。若已安装,可在游戏中编辑 SignPort 的客户端设置。
  • ModMenu: 可选的客户端设置入口。若同时安装了 ModMenu 和 Cloth Config,SignPort 将出现在 ModMenu 的配置列表中。

告示牌格式

  • 第 1 行: 任意文字(显示标签)
  • 第 2 行: [sp] 或 [signport]
  • 第 3 行: 锚点名称
  • 第 4 行: 维度 ID(可选)

出生点示例:

  • 第 1 行:Spawn
  • 第 2 行:[sp]
  • 第 3 行:spawn

跨维度示例:

  • 第 1 行:Nether Hub
  • 第 2 行:[signport]
  • 第 3 行:hub
  • 第 4 行:nether

第 4 行可接受的维度值:overworld、nether、end、the_nether、the_end,或任何完整的命名空间 ID,如 minecraft:overworld 或 mymod:custom_dimension。

命令

  • /signport anchor create (name)
  • /signport anchor create (name) (group)
  • /signport anchor create (name) (x) (y) (z)
  • /signport anchor setgroup (name) (group)
  • /signport anchor list [filter] [page] [--sort=name|distance|recent]
  • /signport anchor near [radius] [page]
  • /signport anchor delete (name)
  • /signport anchor delete all
  • /signport tp (name)

较短的别名 /sp 可用来替代 /signport。

权限

SignPort 通过 fabric-permissions-api 与 LuckPerms 配合工作。若未安装权限提供者,则回退至原版管理员权限检查。

  • signport.anchor.create — 管理员等级 2
  • signport.anchor.delete — 管理员等级 2
  • signport.anchor.list — 管理员等级 2
  • signport.teleport.command — 所有玩家
  • signport.sign.create — 管理员等级 2
  • signport.sign.edit — 管理员等级 2
  • signport.sign.break — 管理员等级 2
  • signport.sign.use — 所有玩家

配置

在服务器首次启动时,SignPort 会创建包含以下服务器设置的 config/signport.json:

  • teleportCommandDefault — 默认 true;当没有权限提供者覆盖时,允许所有玩家使用 /sp tp。
  • signUseDefault — 默认 true;当没有权限提供者覆盖时,允许所有玩家使用传送门告示牌。
  • protectedActionOpLevel — 默认 2;受保护的锚点和传送门告示牌操作的原版管理员等级回退。
  • crossDimensionPortalSigns — 默认 true;允许告示牌上的第 4 行指定其他维度作为目标。
  • safeTeleportSearch — 默认 true;在传送前搜索附近安全的站立位置。
  • anchorListPageSize — 默认 10;/sp anchor list 每页显示的锚点数量。
  • defaultNearRadius — 默认 128;/sp anchor near 的默认半径。
  • bluemapEnabled — 默认 true;当安装 BlueMap 时,启用 BlueMap 锚点标记。

当客户端安装时,SignPort 会创建包含以下客户端设置的 config/signport-client.json:

  • hudHintEnabled — 默认 true;在快捷栏中显示传送门告示牌查询提示。
  • browserKeybindEnabled — 默认 true;启用锚点浏览器按键绑定。更改此值后需重启游戏。
  • signEditorAutocompleteEnabled — 默认 true;在编辑告示牌时启用锚点名称自动补全。
  • signTemplateButtonEnabled — 默认 true;当服务器报告玩家可以创建传送门告示牌时,显示 SignPort 模板按钮。

需求

  • Fabric Loader
  • Fabric API
  • Java 25

在服务器上安装 SignPort。玩家无需在客户端安装,但在客户端安装相同的 jar 文件可启用上述列出的可选客户端辅助功能。

整合包与再分发

你可以将 SignPort 包含在整合包中。如果你直接再分发 jar 文件,请保留 LGPL-3.0-only 许可证声明,注明原始项目和作者,并链接回 GitHub 源代码。修改版本必须遵循 LGPL-3.0-only 许可证条款。