名称标签

启用

要启用该功能,请设置

scoreboard-teams:
  enabled: true

config.yml. 请记住,这可以处理记分牌队伍所附带的所有内容,包括排序等。

配置

介绍

名称标签是由一个叫做计分板队伍的原版功能控制的。它提供 6 种属性:

  • Team name(队伍名称) - 用于在 TAB 列表中分类玩家,请在 分组 一栏了解更多

  • Prefix(前缀) - 名称标签中显示的前缀,它也被称为 tagprefix

  • Suffix(后缀) - 名称标签中显示的后缀,它也被成为 tagsuffix

  • Nametag visibility rule(名称标签显示规则)

  • Collision rule(碰撞规则)

  • Team color (1.13+)(队伍颜色) - 用于名称标签显示的颜色 (建议查看 如何与其他名称标签颜色插件兼容?)

当启用此功能后,TAB 将会控制以上所有内容,因为无法同时从 2 个队伍(插件)获取上述的值。您可以使用变量符来实现显示其他插件的数值。如果您只是想排列而不需要修改名称标签,请将前缀和后缀的值留空。如果您希望其他插件处理计分板队伍,请配置对应插件的排列。

组和玩家

属性有 2 种对应形式:组和玩家。玩家可以由玩家本身的用户名和他们的 UUID 决定。定义在用户上的值优先级比组高。

groups.yml

admin:
  tagprefix: "&4&lAdmin &r"

这也可以通过指令配置,例如: /tab group admin tabprefix "&4&lAdmin &r"

users.yml

_NEZNAMY_:
  tagprefix: "&6&lTAB &r"

# An alternate way using UUID
237d8b55-3f97-4749-aa60-e9fe97b45062:
  tagprefix: "&6&lTAB &r"

这也可以通过指令配置,例如: /tab player _NEZNAMY_ tabprefix "&4&lAdmin &r" 或者 /tab playeruuid _NEZNAMY_ tabprefix "&4&lAdmin &r"

你也可以为这些属性指定一个默认值,这样的话,所有玩家默认都将拥有对应属性所设置的默认值,你只需使用 _DEFAULT_ 关键词即可。 groups.yml

admin:
  tagprefix: "&4&lAdmin &r"
_DEFAULT_:
  tagprefix: "&7" # This will be displayed on everyone except admin

各世界、服务器

值可以根据各世界(BC上的各服务器)不同,并且还可根据各用户/组不同情况定义。这些值的优先级超过全服设置。例如: groups.yml

per-world:
  world1:
    _DEFAULT_:
      tagprefix: "&a" # Everyone in world "world1" will have this prefix
per-server:
  server1:
    _DEFAULT_:
      tagprefix: "&a" # Everyone in server "server1" will have this prefix

如果你希望多个服务器或者世界共用,请使用; 符号公开。 如果你的服务器或者世界开头拥有相同的文本,你可以使用 * 代表后面的部分。 例如:

per-world:
  world1;world2:
    _DEFAULT_:
      tagsuffix: "Shared tabsuffix in worlds world1 and world2"
  lobby-*:
    _DEFAULT_:
      tagsuffix: "Suffix in all worlds starting with lobby-"

优先级系统

完整的优先级机制应当如下:

  1. 各世界、服务器所应用到玩家的值

  2. 各世界、服务器所应用到组的值

  3. 直接应用到玩家的值

  4. 直接应用到组的值

  5. 各世界、服务器所应用到玩家组的值

  6. 各世界、服务器所应用到全服组 _DEFAULT_

  7. 直接应用到玩家组的值

  8. 直接应用到全服组的值 _DEFAULT_

这个列表将会从上到下被查找,直到找到满足的项。如果没有项满足,将会使用空值。 各个值是互相独立的。这意味着你可以设置各世界的 tagprefix(名称前缀),但全服统一 tagsuffix(名称后缀)。

Placeholder 支持

所有的值完美支持 TAB 的内部变量符和 PlaceholderAPI 的变量符。变量符的数量是无限制的并且支持各种显示输出值类型。

额外设置

enable-collision: true 控制碰撞规则。禁用它以取消碰撞。

invisible-nametags: false 禁用后,所有玩家将同时拥有一个隐形的名称标签。

anti-override: true 启用后,可防止其他插件将在线玩家分配到队伍中并使 TAB 无法正常工作。它们应该配置为不使用队伍,但是许多用户未能禁用他们不想要的其他插件中的功能,因此需要此选项。有些插件甚至没有说他们使用队伍来实现他们的功能。 你知道甚至 Paper 也使用队伍吗?

在指定世界、服务器禁用

scoreboard-teams:
  disable-in-worlds:
    - disabledworld
  disable-in-servers:
    - disabledserver

要在除了所列的世界外禁用,只需添加 WHITELIST 关键词到列表中,这回导致该功能只会在所列的世界中启用。示例:

scoreboard-teams:
  disable-in-worlds:
    - WHITELIST
    - enabledworld

注意: 在指定服务器关闭只能在 BungeeCord 上使用,并且还需安装 TAB-Bridge 插件到所有子服上。

提示

绕过你希望 TAB 通过权限组插件获得玩家的前缀和后缀,请删除 grous.yml 文件下的所有组并设置成:

_DEFAULT_:
  tagprefix: "%vault-prefix%"
  tagsuffix: "%vault-suffix%"

这使用 Vault 挂钩使用权限组插件的前缀和后缀。如果你使用 LuckPerms,你可以分别使用 %luckperms-prefix%%luckperms-suffix% 来代替 Vault 的对应变量符。

限制

  • 在 <1.13 版本前缀/后缀的长度限制在 16 个字符(包括颜色代码)。

  • 玩家名称无法真正修改,插件也不提供这个功能。

  • 自 1.13 版本开始名称只能有一个颜色代码。这包括颜色代码和格式化代码。 (例如 &4 或者 &l),所以不能两个同时使用。

  • 名称不支持 RGB 代码。

绕过 (不支持 BC): 启用 无限制名称标签模式

额外信息

额外信息 1 - TAB 列表的名称标签样式

TAB 列表名称样式 功能禁用后,将会在 TAB 显示名称标签的前缀和后缀。这是一个 MC 原版机制。如果你不想要在 TAB 显示任何前缀,只需继续保持启用该功能,并不设置任何前缀。禁用此功能一般只在想让其他插件使用此功能时有用。

额外信息 2 - NPC 兼容性

队伍和玩家名称绑定,而不是 UUID 或者 实体 ID。因为这样,它们将影响所有拥有名称的玩家实体,这也包括和正版玩家拥有相同名称的 NPC。要避免此问题,请不要把 NPC 设置和在线玩家一样的名称,或者使用浮空字替代显示。、

额外信息 3 - 宠物上的前缀和后缀。

自从 1.9 版本开始,队伍也将影响到合作的动物。如果你想避免这个情况,请使用 宠物名称修复 功能。

额外信息 4 - 修改名称本身

队伍不会修改名称标签它自身。修改名称本身是一个复杂的过程,稍微超出了插件可能实现的范围,这就是昵称插件存在的意义,因为修改名称将要修改大量发包,并且还要考虑各个版本不同的机制,这听起来不会很有趣。但我们可以通过隐藏名称标签而用一个隐形的盔甲架来代替名称标签的显示,这样我们就可以避免这个限制,如果你对此感兴趣,请查看 无限制名称标签模式

额外信息 5 - F1 查看

使用队伍导致玩家的名称标签在 F1 下依然可见。这不是插件方面可以解决的问题,可能的解决办法是修改你的游戏客户端。、

最后更新于