本帖最后由 qsefthuopq 于 2020-1-9 12:25 编辑
插件名
ChatControl

作者
kangarko

兼容版本
1.2.5-1.15.1

下载地址

如果你喜欢这款拥有5年历史的插件的话,你也可以考虑购买付费的专业版.
如果你觉得这款插件不错,那么你也有可能对插件作者的 ConfiscateCoreArena 插件感兴趣.
个人总结付费版功能
其它同类插件该有的功能都有,同类插件没有的功能也有
  • 利用Protocolib的发包规则汉化消息 如CAUC
  • 防刷屏和复读  如AntiRepeat
  • 屏蔽控制台刷屏信息 如Console Spam Fix
  • 防脏话  如SuperAntiChat 但默认配置只有英文的脏话屏蔽 看得懂正则表达式的话可自行修改
  • 防御书本BUG崩服 如ExploitFix
  • 聊天频道
  • 可点击的JSON信息
  • 防假人压测
  • 用进度显示私聊
  • 聊天音效提醒
  • @ at功能
  • 监视聊天记录
  • 发送广播和定时广播
  • 发送虚假加入/退出游戏的消息
  • ......


1.14版本的发包规则只能在PaperSpigot上使用

介绍 · Introduction

ChatControl是一款多功能的聊天管理插件,这款插件可以减少你服务器里的刷屏、打广告和假人刷屏现象. 也可以创建自定义的规则和处理程序来完全控制聊天. 还有更多独特的特点请往下看.

特性 · Features
规则和处理程序
  • 用法示例:
    • 过滤脏话. 默认过滤48个脏话单词(英文)
    • 强力阻挡 IP / URL 广告
    • 过滤刷屏重复字符
    • 阻挡 unicode / 非英语的消息
    • 输入校正
    • 指令缩写
    • 实用的命令/消息
    • 消息替换 ...有着无尽可能性的规则完全取决于你!
  • 定义能够匹配某种 正则表达式 并应用于: 聊天、指令、告示牌或发包的规则
  • 发包规则可以让你编辑服务器甚至是其他插件的消息 (或隐藏). 支持不同世界替换消息
    • 例如, 在生存模式下改变未知指令显示的消息为你没有权限 ,但在其他世界显示正常的消息
  • 处理程序可以让你轻松地编辑大量的规则而无需繁杂的代码
  • 修复了许多yaml限制的自定义语法和解析器(parser)
  • 该功能灵感来源于著名但已过期的插件PwnFilter


聊天格式
  • 需要Vault
  • 聊天格式变量:
    • %pl_prefix%pl_suffix
    • %world (提示: 如果你想要显示自定义世界名, 请使用Multiverse-Core 并在worlds.yml内编辑alias自定义世界名)
    • %health
    • %player (玩家名)
    • %town%nation (Towny的城镇和国家名)
    • %clan (SimpleClans的公会/帮派名)
    • %countryname%countrycode
    • %regionname%isp (玩家的IP)
    • 支持PlaceholderAPI的变量.
  • 支持 全服 聊天 (开头加上 "!") 和本地聊天 (范围模式)
    • chatcontrol.chat.overrideranged 权限来收听全世界的对话消息
    • chatcontrol.chat.spy权限来查看所有世界的消息 - 监察模式

防刷屏
  • 阻挡 相同或相似的 消息和指令
    • 删除特殊和重复字符(可开关)
    • 忽略指令中的第一个参数以防止插件检测过于严格
    • 自定义几率
  • 设置聊天和输入指令的 冷却
  • 缩短过长的 非人话 的刷屏消息
  • 冷却和相似性检测的指令白名单

智能拦截
  • 有效并智能地阻止相似的消息、指令
  • 设置一行消息的最小消息长度,相似度、数量和忽略单词的白名单
  • 忽略玩家名
防假人
  • 设置登录间隔
  • 防止放置相同内容的告示牌 (告知管理员并掉落牌子) (用于防止 "AutoSign"作弊功能)
  • 如果玩家登录后未移动则无法聊天 (防止假人加入服务器并开始刷屏)
清空聊天
  • /chc clear
  • 清空聊天栏. 支持以下参数:
    • -anonymous (-a) (隐藏清空者的名字)
    • -silent (-s) (隐藏清空后播报的消息)
    • -console (清空控制台消息)
  • 不会清除有权限的玩家的聊天消息
全服禁言
  • /chc mute
  • 在禁言期间玩家无法聊天和输入特定的指令.
    • 并且会隐藏这名玩家的加入/退出/踢出和死亡消息.
  • 支持以下参数:
    • -anonymous (-a) (隐藏清空者的名字)
    • -silent (-s) (隐藏清空后播报的消息)
    • -console (清空控制台消息)
自定义消息 & 广播
  • 自定义或隐藏 加入/退出 和踢出玩家的消息. 支持变量:
    • %player
    • %pl_suffix and %pl_prefix
    • (更多变量请查看上面的聊天变量)
  • 发送 虚假的加入或退出游戏的消息 (/chc fake)
  • 定时广播
    • 3种模式 - 顺序、随机和缓存随机
    • 可设置一个 前缀后缀
    • 支持变量 %player 和 %world
    • 不同世界不同消息
      • 默认情况下,世界消息继承全局消息,可以通过在第一行插入-excludeglobal来禁用
发包特性
  • 如果没有参数则关闭 tab补全指令 , 防止泄露服务器插件信息.
    • 提醒: 如果你使用的是 spigot,推荐关闭这个功能并在spigot.yml内修改配置!
  • 改变其他插件甚至是服务器的消息 (详情查看 rules/packet.txt 文件)
控制台特性
  • 删除不想看到的消息
提醒音效
  • 当有人@你的时或你收到了 '/tell', '/r' 的回复(或任意指定的消息)会有提醒音效
  • 自定义的声音、音量和音高.
    • 支持不同MC版本的音效名
  • 可以设置收到提醒时的前缀 (如 @kangarko)
  • 只会提醒 双手离开键盘的(AFK) 玩家 (需要 Essentials,可关闭)
语法
  • 自动大写句子开头(英文)
  • 自动在句子结尾加上句号.
  • 显示地区和IP地址
  • 设置大写和加句号的句子所需最小长度
聊天记录
  • 把聊天消息保存到文件内. 这并非如控制台那样记录日志,这只会保存玩家的消息和特定的指令
  • 忽略特定的玩家
本地化
目前可用语言:
  • 英语 (en)
  • 斯洛伐克语 (sk)
  • 捷克语 (cz)
  • 西班牙语 (es)
  • 德语 (de)
  • 法语 (fr)
  • 荷兰语(nl)
  • 瑞典语 (se)
  • 匈牙利语 (hu)
  • 保加利亚语 (bg)
  • 汉语(cn)



分组(特定权限设置)
不同分组不同设定
  • 示例: 允许特定的玩家无视冷却.
  • 示例 2: 设置 不同的加入/离开/踢出服务器消息.
  • 详情查看汉化配置
更新提醒
  • 自动更新插件配置(会覆盖插件注释)
    • 注意: 更新后,YAML的注释会丢失. 你可以到github 页面来查看注释
    • 智能检测报错和非法数值
      • 注意: 这一功能已在付费专业版大幅改善.

  • 新版本更新
  • 自动下载新版本
  • 高效的异步处理
轻量 & 安全
  • 插件性能高效,只占用少量的 CPU / RAM
  • 异步更新插件和特性
  • 防止控制台无限刷屏的安全检测器
  • 自定义语法解析器
你可以开关 每个 特性和改变 每一条 消息!
Atom的高级语法规则
  你想要 ChatControl的语法规则适用于 Atom编辑器?
  查看@Piepmatz制作的Atom插件 https://atom.io/packages/language-mc-chatcontrol
兼容性
  • 插件兼容 Craftbukkit 1.2.5 至最新的spigot版本.
    • 插件不使用 NMS access 所以不大可能会因更新服务端版本而失效 (1.10.x之类的版本)
      (未测试旧版本兼容性,可能需要下载旧版插件)
  • 插件至少需要JAVA版本: Java 8
  • 兼容Cauldron & PaperSpigot
详细兼容版本请查看WIKI
部分旧版本需要安装BungeeChatAPI
跨服聊天需要安装BungeeControlBridge
效果 · Effects





汉化配置

测试环境1.12.2 Spigot
由于setting.yml的注释会被覆盖
所以你可以查看 settings注释参考汉化配置.yml 内的注释
ChatControl汉化配置.zip (56.88 KB, 下载次数: 167, 售价: 10 粒金粒)
注意:管理员默认拥有无视规则的权限,需要给予自己否定权限-chatcontrol.bypass.rules.global才能看到汉化消息

2019.1.29 上传付费版配置 更新Worldedit部分常用消息汉化
注:汉化配置已过期,不过仍可直接覆盖汉化,插件会自动更新配置
Commands · 指令
  • /chc reload  - 重载插件
  • /chc mute  -  全服禁言
  • /chc clear  -  清空聊天记录
  • /chc spy  -  侦查模式
付费版更多指令请查看WIKI
搬运授权  ·  Authorization
链接  · Links

插件作者的其它插件






区别

付费专业版介绍
插件名
ChatControl Pro

作者
kangarko

兼容版本
1.4.7-1.13.2

购买地址

介绍 · Introduction
ChatControl是一款易于理解和配置的多功能聊天管理插件,可以更容易地管理你的服务器聊天消息内容。这款插件最初用于防止刷屏、打广告、脏话和防假人,但现在这款插件已经蜕变,其功能远超于一般的聊天管理插件。
完全支持强大的正则表达式来减少大量的刷屏信息、广告、脏话等,甚至是防假人.
不仅初学者可通过带有大量注释的示例配置来创建属于你自己的游戏规则,而且高级用户可以利用正则表达式的强大功能来编辑你的javascript脚本来创建新的变量或事件。消息完全支持JSON。


提醒: 你可以在配置内关闭每一种特性和隐藏每一条消息. ChatControl几乎没有无法更改的硬核代码.一切皆有可能.

特性
五层防刷屏
  • 1. 阻止玩家过快地聊天和输入指令.
  • 2. 阻止相似的指令和消息.
  • 3. 阻止不同但重复的消息 (hello, t, hello, t).
  • 4. 自动防刷屏 (7.8.0+) 动态限制一段时间内玩家可发送的消息和指令数!
  • 5. 砸掉复读机 (7.9.0+) 所有玩家都无法复读其他玩家的消息!
以下图片展示了新的自动防刷屏系统:


  • 支持非英语服务器和附加符号.
  • 支持常规表达式白名单.
  • 可用权限关闭 '刷屏'踢出 .
  • 支持警告&计分系统.

美观的聊天格式
让玩家可以设置不同的聊天格式.
  • 支持 范围聊天 - 只有一定距离内的玩家才能听到,全服聊天.
    • 不同世界聊天显示不同
    • 一些世界内的'链接聊天'.
  • 侦查模式管理员聊天频道.
  • 支持BungeeCords, DiscordSRVPlaceholderAPI .
  • 支持所有的placeholders变量和Javascript条件!
  • 颜色和格式菜单!选择你想要的字体颜色和格式.
以下图片展示了颜色和格式菜单,点击对应的颜色即可应用字体颜色和格式. 设置会被保存到文件内所以玩家下次登录时仍可使用之前使用的设置. 提醒: 如果你不喜欢这个特性的话你可在配置内关闭这一特性.

管理员聊天
  • 使用方法: /chc ach (你可以创建如/a 的缩写指令)
  • 支持 BungeeCords, DiscordSRVPlaceholderAPI.



BC跨服聊天
  • 使用方法: /chc g (缩写为/g)
  • 支持 BungeeCords, DiscordSRVPlaceholderAPI.

聊天频道和组队聊天
  • 可创建无限多的 聊天频道.
  • 完全支持交互元素和JSON .
  • 保存或记录聊天消息.
  • 范围模式 - 只和一定范围内的玩家聊天.
  • 管理员可用'侦查模式'.
  • 通过如TownyFactions的插件实现组队聊天.
  • 支持BungeeCords.
  • 在玩家加入游戏时自动加入聊天频道 (或使玩家侦查聊天频道消息) .
  • 支持DiscordSRV.

清空聊天消息和全服禁言
  • 可通过指令 清除聊天栏消息或控制台消息.
  • 全服禁言,可防止假人压测刷屏.

广播
  • 可通过 "/chc a" 指令向全服玩家播报 重要的消息.
  • 会对玩家播放音效 (可配置).
  • 支持Bungeecord.

加入、退出游戏和死亡消息
  • 可自定义加入、退出游戏和死亡消息.
  • 支持如 不同世界/权限/游戏模式/杀手/JS条件显示不同的消息!
  • 可设置只在玩家用AuthMe登录后显示退出游戏的消息.


私聊
  • 私聊其他玩家或从控制台发出私聊.
  • 回复 收到的上一条私聊.
  • 支持 JSON交互格式和提醒音效.
  • 管理员可用侦查模式偷窥玩家对话.
  • 支持BungeeCords.
  • 可用/ignore 来忽略不想看到的消息或私聊
  • 可用/togglepm 来关闭接收私聊
  • 支持/me !
  • 对话模式! 在你的聊天对话开头用 @ + 玩家名, 你就会自动进入私聊模式.
  • 额外功能:进度私聊提醒   只支持1.12+版本

自动广播消息
  • 包括全服各世界两种类型的高级定时消息广播,
  • 三种模式 (按时间顺序、随机、缓存随机).
  • 可设置前后缀 (可设置多行).
  • 支持JSON.

规则
使用正则表达式来创建属于你的规则来管理特定的消息 (或是其中的一部分! 规则包含大概20个运算符,其中包括忽略玩家和修改消息.可用处理器来管理多条消息而无需繁复的代码.
你可用用规则来

  • 过滤脏话. (默认阻止50多个英文脏话!)
  • 阻止IP/URL广告
  • 刷屏过滤
  • 阻止unicode /非英语消息
  • 输入校正
  • 添加指令缩写
  • 修改指令/消息
  • 替换为有趣的消息
  • 发送指令到 BungeeCords

    • ...规则取决于你,一切皆有可能!




提醒: 使用构建中的指令可以更简单地添加规则! 请查看指令部分.
提醒: 运算符支持正则表达式补货组,可以让你再次使用捕捉到的部分消息.
标准规则. 支持聊天、指令、告示牌、书本和铁砧修改物品.
发包规则: 捕获并修改任何插件或服务器的消息. 可重写或修改这些消息. 可设置不同世界显示同一条消息不同的修改内容.
聊天忽略: 可以让玩家屏蔽 (由规则捕获) 他们不想看到的内容.这可以让玩家自主过滤脏话或屏蔽某个玩家. 请查看插件WIKI获取详细内容.

减缓假人攻击
  • 可设置登录冷却.
  • 如果玩家登录后未移动则无法聊天.(防止假人加入服务器并开始刷屏)
  • 只在玩家用AuthMe登录后显示退出游戏的消息.
  • 禁止 粗俗或非法的昵称.
  • 禁止通过 书本执行指令.


相似度检测
  • 包含白名单、消息长度、相似度和相似消息的高级配置.
  • 忽略玩家名.
  • 支持警告&计分系统.


过滤控制台消息
  • 删除掉不想看到的控制台消息.

分组

提醒: 想要让玩家进入一个分组,只需给予权限 "chatcontrol.group.<组名>" 即可.
  • 创建 无限多的组来使 拥有不同权限的玩家获得不同的设置,如 加入、退出游戏的消息,聊天/指令冷却等.

警告和计分系统
当玩家达到指定分数后会触发一些东西.之后会重置该任务并在一段时间后降低分数(可配置).
可设置直到重置任务得到安排才重复上一个操作,并智能警告玩家,以防止向玩家发送多条消息.
可创建无限多的警告消息,指定要触发的分数和要执行的操作.可给予一个分数不同的警告消息来使用插件的不同功能.

记录器

  • 保存聊天消息到文件内.
  • 可设置保存指令和不保存特定的玩家的聊天消息.

更多特性
- 检测插件的操作时间,如果占用时间过长会发出警告.
- 违法记录. 如果一条消息被规则捕获到就会被记录到控制台.
- 对用户友好的调试模式可以让你查看配置的内容来让你轻松地找出配置的错误并校正.


Bonus 1: @和音效提醒
  • @玩家 (如 "你好 @kangarko!")
  • 当玩家收到私聊时提醒玩家 (/tell, /msg, /r及其他可自定义指令). 可自定义音效、音调、音高.
  • 在玩家 AFK 时提醒玩家(Essentials)或 只提醒带有特殊字符前缀的玩家 ("@").
Bonus 2: 发包特性
注意:需要ProtocolLib.
  • Tab补全管理器.防止TAB补全导致服务器插件信息泄露. 可设置仅在命令中禁用该功能,或仅在消息包含空格或在最小消息长度内时禁用.
  • 发包规则. 捕获并控制每一条消息, 包括服务器信息 (来自Spigot服务端的消息) 甚至是其他插件的消息. (详情查看发包规则)
Bonus 3: JavaScript变量
你可以通过JavaScript来关联所有其他的插件并读取插件数值. 你可以创建属于你自己的变量!
这是ChatControl独特的特性, 可以让你从其他插件甚至是服务器本身获取变量,如玩家的延迟 (无需NMS access)或其他的数值.你可以用JavaScript获取任何你喜欢的变量并进行修改.
WIKI文档中提供了示例文件,你可以就此入门.
Bonus 4: 语法校正
  • 自动在每个句子后 加上句号.
  • 大写 英语首字母.
  • 修复第二个单词的错误大写 (如: TRee → Tree).
  • 可配置消息长度.
  • Respects地址.
Bonus 5: 新人特性
  • 插件给萌新设计了特殊的功能! 你可以设置 在线多久的玩家会被划分为萌新.
  • 新人会有以下限制:
    • 自定义加入游戏的消息.
    • 无法 发送聊天消息 (支持白名单).
    • 无法 输入指令 (支持指令白名单).
    • 无法 看到其他玩家说的话!
    • 可配置启用该功能的世界.



支持BungeeCords!


你只需在 settings.yml 内启用 'BungeeCords.Enabled' 为 'true'.
提醒: 请不要把ChatControl放到一个bungee服务器内, 这是 Bukkit的插件. 你只需把BungeeControlBridge放到Bungee服务器内.
BungeeCords特性:
  • 玩家会收到全服的来自规则和处理器的提醒消息.
  • 管理员聊天:'/chc ach' 和 全服聊天: '/chc global'.
  • 用规则和处理器内的'then bungeeconsole'运算符来在bungee服执行 指令. 支持多条指令.
  • 聊天频道.
  • 包括'/tell' 和 '/reply'的私聊消息.
  • 加入、退出、死亡、踢出消息.
  • 加入或离开服务器, 或 切换服务器的消息.
ChatControl支持你的语言!
目前可用语言:
英语、德语. 斯洛伐克和捷克语 + exclusive cases support (pády), Spanish, 汉语, 荷兰语, Hungarian, Russian, Portuguese, Italian, Polish, Turkish 等! (查看Spigotmc页面顶部)
支持JSON
消息会在被发送到控制台后自动失去JSON.JSON消息依然支持颜色代码 JSON.详情查看WIKI文档.
无尽的可能性
运用正则表达式的强大力量,你可以用Java的Reflection或JavaScript创建无限数量的规则、变量或事件. 开发者API
插件开发者可以使用ChatControl的API来操作和编辑与聊天频道相关的功能.点击前往WIKI查看详情.
智能配置
错误的文件设置会使插件发出警告并告诉你错误出在哪 (比如应输入文本而不是数字) 并且在插件更新后自动更新配置.
提醒:当配置更新后, 所有YAML的配置注释会消失.注释请参考汉化配置
可靠 稳定
ChatControl从2013诞生至今,插件的特性都已经过测试并在服务器能够正常的使用.
轻量 & 安全
ChatControl 具有高效和优化的线程和内存使用率. 更新器异步运行而不会卡服, 并且插件会禁止无限循环的正则表达式卡服.
Java 8
Minecraft 1.4.7 及更高版本 *
* Minecraft 1.7.10及更旧的版本.需要安装BungeeChatAPI .
发包特性在 Minecraft 1.6.4及更旧的版本无法正常使用.

插件说明
当你完成以下操作后我才建议购买这款插件:
1) 阅读完这个页面的全部内容并对插件有初步的了解. 不要盲目购买.
2) 人无完人,金无足赤. 尽管你只需拖拽到插件文件夹内就能使用插件, 插件的默认设置只是示例,并不适用于所有的服务器,所以我推荐你了解插件配置并进行修改,做到物尽其用.
3) 同意使用条款.
感谢你查看这款插件. 使用愉快.

使用条款
§1 插件作者保留所有权利,你不能发行、复制或衍生这款插件
§2 本插件按原样提供,插件作者不提供任何功能保证或用户支持.
§3 你无法退款.
§4 一次购买只能用于一个服务器.
§5 你可以私自修改插件源码, 但你不能将插件源码用于任何其他插件. 插件作者不会对修改版本或修改插件内容提供帮助.
§6您不能将插件改得面目全非.
§7 插件作者在Spigotmc、GitHub 和服务器ID为 360404674219737100 和 465369859086090250的Discord服务器内提供帮助.谨防欺诈.
§8 插件作者无法沿着网线爬过来阻止你上传付费插件到网络上,但是你可能会触犯法律而受到律师函.

造福社会
规则
如果你创建了你认为很有用的规则, 你可以私聊插件作者,他会放到插件页面供更多人使用.插件作者对这些规则的功能、有效性或错误捕获不提供任何保证.

代码作者: ridalarry
描述: 脏话和杂项规则汇编.
链接: http://pastebin.com/7gd9U2Dv [最后更新: 17.06.2018]

链接

搬运帖更新记录
2019.1.29 上传付费版汉化配置及插件消息汉化示例 汉化配置请到上面下载
2019.2.15 更新漏掉的付费版commands.txt汉化配置

付费版更新记录

[groupid=1151]Minecraft插件百科[/groupid]