ChatControl 终极聊天插件
传说中的聊天插件。令人难以置信的解决方案的广告,发誓,上限,垃圾邮件,机器人和更多!
点此下载插件详细介绍
ChatControl是一款用于Bukkit服务器的聊天管理和格式化插件,旨在显著减少服务器上的垃圾信息、广告、脏话和机器人。它允许你创建自定义规则和处理程序,从而完全控制聊天内容。此外,它还提供许多其他独特的功能。
🎉ChatControl 插件
✨主要功能
- 规则和处理程序
- 聊天格式化 (需要 Vault)
- 反垃圾信息
- 反大写
- 反机器人
- 聊天清理
- 聊天禁言
- 消息定制和广播
- 数据包功能
- 控制台功能
- 声音通知
- 语法修正
- 聊天记录保存
- 本地化
- 分组 (基于权限的设置)
- 更新器
- 轻量级 & 安全
规则和处理程序
你可以定义自己的规则,这些规则可以匹配特定的正则表达式,并应用于聊天、命令、告示牌或数据包。
数据包规则允许你编辑来自服务器本身甚至其他插件的消息(或隐藏它们)。支持根据不同的世界替换消息。
处理程序允许你轻松管理大量规则,而无需编写混乱的代码。
聊天格式化
格式化聊天消息,支持以下变量:
%pl_prefix和%pl_suffix%world(提示:如果想要自定义世界名称,请使用 Multiverse-Core 并在 worlds.yml 中编辑世界别名)%health%player(玩家名称)%town和%nation(如果启用了 Towny 插件)%clan(如果启用了 SimpleClans 插件)%countryname和%countrycode%regionname和%isp(玩家的互联网服务提供商)- 支持 PlaceholderAPI
支持全局聊天 (以 "!" 开头) 和本地聊天 (范围模式)。
使用 chatcontrol.chat.overrideranged 权限可以接收世界中的所有消息。
使用 chatcontrol.chat.spy 权限可以接收所有世界中的所有消息 - 间谍模式。
反垃圾信息
- 阻止相同或相似的消息和命令
- 去除特殊和重复字符以防止绕过 (可切换)
- 忽略命令中的第一个参数以防止过于严格的检查
- 可自定义的百分比
- 设置消息和命令之间的时间间隔
- 降低冗长且难以理解的消息的垃圾信息
- 将命令列入白名单,免受延迟和相似性检查
反大写
- 高效且智能的 CAPS 预防
- 自定义最小消息长度、大写百分比、连续大写字母的数量以及忽略单词的白名单
- 忽略玩家姓名
反机器人
- 设置再次登录之间的时间间隔
- 阻止具有相同文本的告示牌 (警告工作人员 + 掉落告示牌) (对"AutoSign"作弊很有用)
- 阻止聊天,直到玩家在加入时移动 (防止机器人加入和垃圾信息)
聊天清理
清除游戏中的聊天。支持原因和参数:
-anonymous (-a)(隐藏清理者的姓名)-silent (-s)(隐藏清理后的整个广播消息)-console(清除控制台)
不清除非特定权限玩家的聊天记录。
聊天禁言
全局禁止聊天和执行禁言下的某些命令。
还隐藏加入/退出/踢出和死亡消息。
支持原因和参数:
-anonymous (-a)(隐藏清理者的姓名)-silent (-s)(隐藏整个消息)-console(清除控制台)
消息定制和广播
自定义或隐藏加入/退出和踢出消息。支持变量:
%player%pl_suffix和%pl_prefix- (参见上面聊天格式化程序中的更多变量)
发送虚假的加入或离开消息 (/chc fake)。
按指定的时间间隔广播消息。
- 3 种模式 - 按顺序、随机和带有缓存的随机,可防止消息重复,直到所有消息都已广播
- 设置前缀和后缀
- 支持变量
%player和%world - 每个世界的不同消息
- 默认情况下,世界消息继承全局消息,可以通过在第一行插入
- excludeGlobal来禁用此功能。
数据包功能
如果未给出任何参数,则禁用 Tab 补全,从而泄露服务器信息。
注意:如果使用 Spigot,建议禁用此功能并在 spigot.yml 中配置它!
更改其他插件甚至服务器消息(参见 rules/packet.txt 文件)。
控制台功能
从控制台中删除不需要的消息。
声音通知
当有人在聊天中提及你或你收到 '/tell'、'/r'(或任何指定的消息)时收到通知。
可自定义的声音、音量和音调。
尊重 MC 1.9 及更旧版本中声音名称的差异。
可以指定接收通知所需的前缀(例如 @kangarko)。
仅通知 AFK 玩家(可切换,需要 Essentials)。
语法
- 自动将句子大写
- 在末尾插入一个点
- 尊重域名和 IP 地址
- 定义大写和标点符号的最小消息长度
聊天记录保存
将整个聊天对话保存到文件。与控制台输出不同,这将仅保存玩家消息和指定的命令。
忽略某些玩家。
本地化
当前可用的位置:
- 英语 (en)
- 斯洛伐克语 (sk)
- 捷克语 (cz)
- 西班牙语 (es)
- 德语 (de)
- 法语 (fr)
- 荷兰语 (nl)
- 瑞典语 (se)
- 匈牙利语 (hu)
- 保加利亚语 (bg)
要自定义本地化,请在 plugins/ChatControl/localization/messages_LOCALE.yml 中创建一个文件(将 LOCALE 替换为本地化的短名称 - 上面括号中的名称)。
重新加载时,它将填充所有值并与更新的版本保持同步。
分组 (基于权限的设置)
为每个具有特定权限的组(或玩家)应用不同的设置。
示例:允许受信任的玩家快速键入,但将任务的消息延迟设置为 5 秒。
示例 2:为某些玩家/组设置不同的加入/离开/踢出消息。
更新器
- 自动更新配置
- 注意:更新时,YAML 注释 (#) 会丢失,因为 Bukkit 处理保存的方式。如果需要参考值或注释,请访问 GitHub 页面
- 智能地报告错误和非法值
- 注意:这在高级版本中得到了极大的改进。
- 通知新版本可用性
- 自动下载新版本
- 由于异步处理,因此对性能的影响为零
轻量级 & 安全
- 极其高效且低 CPU / RAM 使用率
- 异步更新程序和非阻塞功能
- 安全检查程序,可防止格式错误的正则表达式运行到无限循环并冻结服务器
- 自定义语法分析器
- 你可以关闭每个功能并更改每条消息!
新:Atom 的规则语法高亮显示
你是否想要在 Atom 编辑器中使用 ChatControl 的规则语法?
查看 https://atom.io/packages/language-mc-chatcontrol,作者 @Piepmatz。谢谢!
兼容性
该插件与 Craftbukkit 1.2.5 到最新的 Spigot / Paper(以及两者之间的大多数版本)兼容。
插件不使用 NMS 访问,因此它很可能不会在下一次发布 (1.10.x 等) 时中断。
运行插件的最低 Java 版本:Java 8
与 Cauldron & PaperSpigot 兼容
Minecraft 1.7.10 及更低版本:请在 ChatControl 旁边安装 BungeeChatAPI。
⌨️命令
使用 /chc list 显示插件的所有可用命令。
➕可选依赖项
- ProtocolLib 用于 packet.txt 文件中的自定义规则和防止 Tab 补全。如果你使用的是 1.8,请确保你至少有 #70 或更新的版本!
- Essentials 或 EssentialsX 用于检测 AFK 玩家。
- Vault 用于聊天格式化并在自定义规则中的“then fine”运算符中收取玩家的钱。
- Multiverse-Core 用于聊天格式化程序中的彩色世界别名。
- Towny 用于聊天格式化程序中的
%nation和%town变量。 - SimpleClans 用于聊天格式化程序中的
%clan变量。 - AuthMe Reloaded 用于更好的加入/踢出/退出消息。
- PlaceholderAPI 用于额外的变量。
- NoCheatPlus (不是依赖项,但推荐) 提供高级支持,也可防止多种类型的聊天垃圾信息。
⚙️配置示例
# Don't touch this unless you know what are you doing!
config: 3.2
# Set false if you have problem with the plugin loading.
enabled: true
# Toggle debug information to console?
debug: false
# Should we check for the plugin updates?
updater: true
# Automatically download updates from github?
auto_download_updates: false
# Language file, can be any from localization folder (without extension).
# When changing locale, you have to reload plugin using /chc reload
locale: 'en'
# You can execute commands from the console instead of the player.
# Works for all commands except /chc reload and /chc debug, and /chc admin
console_command_sender: 'CONSOLE'
# Here you can set the default encoding you want to save your files with,
# it is highly recommended you use UTF-8 if you are using special characters.
files_encoding: 'UTF-8'
# Set to true to let the plugin load even if some classes are missing (Vault etc.)
ignore_missing_dependencies: false
# Set this to true if you want to keep default configuration values instead of using those
# from /chc set.
#
# NOTE: Turning this off and issuing /chc set will reset your config to defaults!
use_set_values: true
#####################################################################################################################################
# Developer mode:
# Enabling this may cause unexpected issues and is for DEVELOPERS only!
#
# It will attempt to load the plugin in "unsafe" mode,
# enabling support for classes and methods that are normally
# restricted due to security reasons.
developer_mode: false
#####################################################################################################################################
# BStats settings
#
# bstats.org is a service that collects completely anonymous information about servers running this plugin,
# This allows me to understand how the plugin is used and helps me to improve it.
# Set enabled to false if you don't want to allow bStats collect this information.
bstats: true
❓需要帮助?提问?
点击此处向我们发送消息。
我们的目标是在 1-5 个工作日内回复所有客户。