欢迎来到Minecraft插件百科!
对百科编辑一脸懵逼?
帮助:快速入门
带您快速熟悉百科编辑!
因近日遭受攻击,百科现已限制编辑,有意编辑请加入插件百科企鹅群:223812289
查看“ChatControl Pro/WIKI/规则”的源代码
←
ChatControl Pro/WIKI/规则
跳转到导航
跳转到搜索
因为以下原因,您没有权限编辑本页:
您请求的操作仅限属于这些用户组的用户执行:
用户
、
自动确认用户
、
巡查者
您可以查看和复制此页面的源代码。
规则系统是ChatControl最有用的系统: 你可以设置基于正则表达式的过滤器来捕获消息. 规则基于运算符 (想 'match', 'then deny'这样的东西, 这些运算符决定编程内容 - 你可以在 rules.txt 的顶部看到所有的运算符). 它们由两部分组成:规则和处理器. 规则可以使用正则表达式来捕获一条消息, 处理器则为一组行为. == 任何添加新规则 / 过滤器? == 打开你的 rules/ 文件夹,打开你想要编辑的规则文件 (rules.txt 应用于游戏的所有元素, 而 commands.txt 只对指令有效, chat.txt 只对聊天有效等.)然后用合适的文本编辑器进行编辑即可. 每条规则开头都要有 "match" ,结尾都有 "then" 运算符. 你可以查看已存在的规则,复制粘帖它们并进行修改. == 制作有效的规则 == 以下示例为 "fuck" 的过滤器,它可以防止 <code>f.u.c.k</code> 甚至是 <code>fuuu-ck</code>. 使其匹配并捕获这类词语很简单.<br> [[file:ccp25.png]]<br> <code>match \b(j+(\W|\d|_)*e+(\W|\d|_)*r+(\W|\d|_)*k+(\W|\d|_)*) handle as swear</code> 'match' 运算符保护了正则表达式来检测玩家的消息.如果匹配成功则应用规则. 下一个运算符, 'handle as',告诉程序执行“swear”部分中<code>handlers.yml</code>内所述的所有指令. 你可以手动给规则添加运算符,但是如果你想以同样的方式处理多调脏话的话,将指令存储在一个地方会更方便. 以上示例匹配了单词 'jerk' ,即使该单词被混淆成<code>jeeerk</code>或 <code>j.e-r_k</code>也都能检测到, 并且这条消息会被视为 'swear'处理 (你可以在handlers.yml 内配置这个). == 禁止如 <code>sh*t</code> 和 <code>shi*t</code> 这样的单词== 默认过滤器可以过滤如 shi*t, shi_t 和其他混淆形式的脏话, 但是过滤器无法捕获到中间的字母被替代的脏话.<br> 你可以在 https://regex101.com/ 检测你的正则表达式是否能够成功地屏蔽脏话 == 白名单/允许的链接或IP == 想要忽略你的服务器的IP地址被捕获, 请打开 rules/rules.txt并在 71 和 85行使用 'ignore string' 运算符,示例如下图. <br>[[file:ccp26.png]]<br> a) 想要给一个IP白名单, 找到IP过滤器并添加到如上图所示位置即可. b) 想要给一条指令白名单, 找到区域过滤器并用 | 添加指令. 如果地址是 "craftblock.com",你可以这样添加:"|craftblock.com" == 白名单语法 == 如 "tits" 的规则可能会捕获到如"but its"或相似的无辜的消息. 有两种方法来修复这个问题: a) 添加 \b 字符到匹配规则内. 这可以使规则只匹配没有空格的消息或是消息前无空格的消息 (需要把 \b 放在前面) 或是后面(把 \b 放到match的最后): <code>match \btits</code> 这会匹配 "tits" 而不是 "but its". b) 使用 "ignore string" 运算符.这是最佳的解决方案: <code>match anal ignore string analog|an all</code> 这可以阻止两个短语 'analog' 和 'an all' . == 空格文字白名单 == 如果你想要阻止带有空格的消息 ("f u c k", or "come to m y s e r v e r . c o m"), 请使用 'before strip' 运算符. 在你想要使用的规则下面插件该运算符,然后所有的空格都会被删除: <code>match <your rule> before strip \s* [...]</code> == 防止像Ⓝ Ⓞ Ⓟ Ⓠ Ⓡ Ⓢ Ⓣ 这样的 unicode字符== 你可以找到禁止所有特殊字符的规则. 以下规则可能会被误用来绕过过滤器.请注意非英语环境的服务器须谨慎使用.<br> 你可以复制该规则到 rules/rules.txt 内来使用. <code>match [^\u0000-\u007F]+ then warn 禁止使用非法字符 then deny</code>
返回
ChatControl Pro/WIKI/规则
。
导航菜单
个人工具
登录
命名空间
页面
讨论
大陆简体
查看
阅读
查看源代码
查看历史
更多
搜索
导航
首页
最近更改
随机页面
编辑相关
百科公告
编辑帮助
互助客栈
贡献分数
测试沙盒
发布条目
插件分类
管理
安全
聊天
编程
经济
修正
娱乐
综合
信息
机械
角色
传送
网页
整地
创世
付费
其它
工具
链入页面
相关更改
特殊页面
页面信息
相关网站
MCMOD百科
Minecraft中文百科
Minecraft纪念论坛
Minecraft百度贴吧
虚无世界Wiki