HuskChat 是一款简洁、易用且高度可自定义的 Minecraft 网络聊天系统。它支持在 BungeeCord 或 Velocity 等代理服务器上运行,以实现跨服聊天,也支持在单服务器的 Spigot 环境下使用。插件开箱即用,配置优雅,同时允许您深度定义频道并精细管理消息的发送与接收权限。
- 单服务器模式:Spigot (1.16.5+) 服务器。- 网络模式:Velocity(推荐)或 BungeeCord/Waterfall 代理服务器。HuskChat 是一款为 Minecraft 网络(BungeeCord/Velocity)设计的现代化聊天管理插件,提供频道系统、丰富的格式化和强大的过滤功能,让玩家和管理员之间的沟通井然有序。
频道是玩家聊天的不同空间,可以使用 /channel 命令或专门的快捷命令进行切换。默认情况下,HuskChat 已配置好以下频道,非常适合典型的代理服务器设置:
/local 或 /l 快捷命令,用于向同一服务器的玩家发送消息。/global 或 /g 快捷命令,用于在整个网络内发送消息。/staff 或 /sc 快捷命令。便于管理员轻松沟通。玩家需要 huskchat.channel.staff.send 和 huskchat.channel.staff.receive 权限才能分别在此频道发送和接收消息。/helpop 快捷命令。便于玩家轻松联系管理员。玩家需要 huskchat.channel.helpop.receive 权限才能接收此频道的消息。要定义自定义频道,请将它们放在 config.yml 文件的 channels: 部分下。以下是一个典型的管理员频道示例,说明了配置的规范。标记为 (Required) 的键必须存在,未标记为必需的字段将使用默认值。
channels:
staff: # (Required) 频道的 ID。用户执行 /channel staff 可切换至此频道
format: '&e[Staff] %name%: &7' # (Required) 频道的显示格式 - 见下文
broadcast_scope: GLOBAL # 频道的广播范围 - 见下文
log_to_console: true # 发送到此频道的消息是否应记录到代理控制台
filtered: false # 发送到此频道的消息是否应被过滤和替换(见下文)
permissions:
send: 'huskchat.channel.staff.send' # 发送消息所需的权限
receive: 'huskchat.channel.staff.receive' # 切换至频道和接收消息所需的权限
shortcut_commands: # 用户可用来快速使用此频道的快捷命令列表
- /staff
- /sc
restricted_servers: # 此频道中无法发送或接收消息的服务器列表
- hub频道范围定义了消息被广播和处理的方式。以下是可用的选项:
你必须在 config.yml 中定义一个 default_channel,玩家加入时将进入此频道。
此外,你可以在 server_default_channels 部分定义特定服务器的默认频道。当玩家切换至分配了 server_default_channel 的服务器时,玩家将自动切换到指定的频道。
server_default_channels:
uhc: minigames
bedwars: minigames如果你想阻止玩家在特定服务器中使用某些频道,你可以在每个频道中定义 restricted_servers(参见上面的频道定义示例)。如果玩家连接到频道受限的服务器,他们将无法在该频道中发送或接收任何消息。
此外,如果玩家切换服务器至其当前频道受限的服务器,除非有如上所述的覆盖性服务器默认频道,否则其频道将更改为 default_channel。
你也可以通过 message_command 下的 restricted_servers 部分来限制 /msg 和 /r 命令在某些服务器中的使用。
频道格式定义了聊天消息的显示方式。消息内容本身总是附加在格式之后。请注意,未清除的格式将保留并应用于消息内容。你可以使用 MineDown 格式 来使用现代(1.16+)十六进制颜色,并轻松实现渐变等高级效果。你也可以在 LuckPerms 组的前缀和后缀内容中嵌入此格式。在频道格式中,你可以使用以下占位符来格式化文本。
%name% - 用户名%fullname% - LuckPerms 前缀、用户名和 LuckPerms 后缀%prefix% - LuckPerms 前缀%suffix% - LuckPerms 后缀%ping% - 用户的延迟%uuid% - 用户的 UUID%servername% - 用户所在的服务器%serverplayercount% - 用户所在服务器的玩家数量这些占位符显示当前时间。
%timestamp% - yyyy/MM/dd HH:mm:ss%time% - HH:mm:ss%short_time% - HH:mm%date% - yyyy/MM/dd%british_date% - dd/MM/yyyy%day% - dd%month% - MM%year% - yyyy频道的 filtered: 属性允许你指定发送到该频道的消息是否应首先被 config.yml 文件中 chat_filters 和 message_replacers 部分定义的已启用过滤器和消息替换器处理。要使用过滤器,请确保要过滤的频道已启用 filtered,并且聊天过滤器已正确启用和配置。
聊天过滤器将根据特定条件阻止用户发送消息。消息替换器将改变消息内容,例如将某些字符组合替换为表情符号。
ascii_filter,此功能仍然有效,并会在聊天中显示 Unicode 表情符号字符。脏话检查过滤器使用 Python 机器学习算法(alt-profanity-check),该算法利用 Scikit-learn 来预测消息是否包含脏话。它并不完美,无法捕获拉长或修改过的脏话,但它相当有效(老实说,如果有人想当坏演员并使用不良语言,他们总会找到绕过任何脏话过滤器的方法)。
如果你在共享主机上,很遗憾,除非你的主机非常出色并且不介意帮助你,否则你可能无法使用此功能。请注意,由于实现此功能的复杂性,我认为此功能仅适用于高级用户,除了引导你到这里,我无法提供设置支持。
脏话检查器仅针对英文单词进行训练。要使用它,你需要在服务器上安装 Python 3.8+ 和 Jep,并确保 Jep 驱动程序正确存在于你系统的 Java 类路径中。你可以使用 pip install jep 安装 Jep。除了 Jep,你还需要运行 pip install alt-profanity-check 来安装脏话检查器及其先决条件。
然后,你需要确保 HuskChat 能够识别你的 Jep 驱动程序,如果你的系统没有自动识别,请指定其路径。Jep 驱动程序的名称因平台而异。在 Linux 上是 libjep.so,在 macOS 上是 libjep.jnilib,在 Windows 上是 jep.dll。
LD_LIBRARY_PATH。DYLD_LIBRARY_PATH。PATH。-Djava.library.path=<path> 参数将 Jep 的驱动程序添加到你的启动命令中。library_path 配置选项中。你的路径应指向包含 jep 驱动程序的文件夹,而不是驱动程序本身。如果在启动脏话过滤器时出现错误,你可以尝试通过 Jep 的指南 进行故障排除。
设置好先决条件并且服务器启动脏话检查器没有问题后,你可以更改设置。默认情况下,检查器将使用 AUTOMATIC 模式来判断消息是否包含脏话,但如果你想微调查看器的敏感度,可以将 mode 设置为 TOLERANCE 并更改下面的 tolerance 值。较低的值意味着检查器将更加严格。
HuskChat 提供 /socialspy 和 /localspy 命令。拥有权限的玩家可以切换社交间谍来查看用户的私信。/localspy 命令允许拥有权限的玩家查看其他服务器上本地聊天频道中发送的消息,包括那些本地传递消息的频道。
要构建 HuskChat,请在项目目录的根目录中运行以下命令:
./gradlew clean build友情链接: 网易我的世界 | 泰拉瑞亚 | ocent云计算 | 米饭Minecraft插件文档 | 友链合作
历史访问人数:199,142 | 历史访问人次:304,642
今日访问人数:5,871 | 今日访问人次:6,393
昨日访问人数:30,537 | 昨日访问人次:36,142
Copyright © 2019-2026 我的世界服务器列表站. All rights reserved.
❤ Powered by GermMC 京ICP备17023959号-6