跳到主要内容

频道与格式

频道(channels.yml)​

默认频道范围快捷前缀谁能用
global 全服所有分流!所有人
server 本服只在这个分流—所有人
local 附近同一个世界、100 格内—所有人
staff 管理所有分流#有 cloudchat.channel.staff 的人
  • /ch 列出可用频道(可点击切换),/ch local 切换(会记住,重新登录也保留)。
  • /ch staff 内容 只发这一句,不切换。
  • 在任何频道输入 #内容 就会发到管理频道,!内容 发到全服。
channels.yml
default: global # 玩家没选过频道时使用

channels:
global:
name: '全服'
tag: '<gradient:#55ffff:#aa88ff>[全服]</gradient>'
cross-server: true # 所有分流都看得到
prefix: '!'
trade: # 自己加一个交易频道
name: '交易'
tag: '<gold>[交易]</gold>'
cross-server: true
prefix: '$'
local:
name: '附近'
tag: '<green>[附近]</green>'
cross-server: false
radius: 100 # 只有 100 格内、同一个世界的人看得到
staff:
name: '管理'
tag: '<red>[管理]</red>'
cross-server: true
permission: 'cloudchat.channel.staff' # 有权限的人才看得到、能发言
prefix: '#'
DiscordSRV

只有默认频道的消息会交给 DiscordSRV 等插件;管理频道、附近频道不会被同步到 Discord。

聊天格式(group.yml)​

由上往下判断,套用玩家第一个有权限的组;permission 留空的组当作默认,放在最下面。

group.yml
groups:
vip:
permission: 'cloudchat.group.vip'
format: '{channel} <dark_gray>[<aqua>{server}</aqua>]</dark_gray> <gold>[VIP]</gold> {prefix}<white>{player}</white>{suffix} <yellow>»</yellow> {message}'
default:
permission: ''
format: '{channel} <dark_gray>[<aqua>{server}</aqua>]</dark_gray> {prefix}<white>{player}</white>{suffix} <gray>»</gray> <white>{message}'
变量内容
{channel}频道标签
{channel_name}频道名称
{server}服务器名称(config.yml 的 server-name,留空 = 代理端里的名称)
{player}玩家名,带悬停与点击
{name}玩家名(纯文字)
{prefix} {suffix}LuckPerms 前缀 / 后缀(需要 PlaceholderAPI 与 LuckPerms 扩展)
{group}套用的组名
{message}聊天内容
%任意PAPI变量%例如称号、等级、职业

格式支持完整 MiniMessage 与 &a、&#RRGGBB 旧色码。

OP 会套用第一个组

没有在 plugin.yml 声明的权限默认给 OP,所以 OP 会套用最上面的组(例如服主)。测试格式时请用普通账号。

名字悬停与点击​

config.yml
name:
hover:
- '<gray>玩家:<white>{name}'
- '<gray>所在服务器:<aqua>{server}'
- '<gray>等级:<white>%player_level%' # 可以写 PAPI 变量
- ''
- '<yellow>点击私聊'
click: 'suggest:/msg {name} ' # suggest: / run: / url: / copy:

玩家能用的颜色​

有 cloudchat.color(默认所有人)的玩家可以用颜色、装饰、渐变、彩虹与字体:&a绿色、<red>红色</red>、<gradient:#55ffff:#ff55ff>渐变</gradient>。 点击、悬停、换行等标签一律不开放给玩家,避免冒充系统消息或诱导执行指令。

@提及​

config.yml
mention:
enabled: true
require-at: true # false = 直接写名字也算
format: '<yellow>@{name}</yellow>'
sound: 'entity.experience_orb.pickup'
actionbar: '<yellow>{player} 在聊天中提到了你'

被提及的人不管在哪个分流,都会听到提示音、看到动作栏提示。