BungeeChatFilter

BungeeChatFilter - 聊天过滤器

过滤聊天信息,并根据定义的正则表达式为所有BungeeCord服务器执行操作
Bukkit / Spigot 作者 bloodsplat 支持版本 未标注
服务器使用量
未统计
服务玩家数
未统计
下载量
5,088
插件详细介绍

Bungee Chat Filter

Bungee Chat Filter 是一款 BungeeCord 插件,旨在玩家的聊天信息到达服务器之前,就对其进行监控、过滤和编辑。插件通过正则表达式匹配玩家消息,并根据服务器所有者在配置文件中设定的规则执行相应操作。

功能特性

  • 使用正则表达式过滤聊天内容。
  • 为任何命令设置自定义权限。
  • 当规则匹配时,取消玩家的聊天消息。
  • 当规则匹配时,踢出玩家。
  • 当规则匹配时,向玩家发送私信。
  • 当规则匹配时,向全代理(Proxy)范围广播消息。
  • 当规则匹配时,让玩家向服务器发送一条命令。
  • 当规则匹配时,让玩家向代理(Proxy)发送一条命令。
  • 从消息中移除特定词语。
  • 将玩家消息中的词语替换为列表中的随机词语。
  • 重映射你的命令。

安装与使用

安装步骤

  • 下载 BungeeChatFilter.jar
  • 将 jar 文件放入你的 BungeeCord 插件文件夹。
  • 启动 BungeeCord。
  • 编辑生成的配置文件以满足你的需求。
  • 在 BungeeCord 控制台或拥有权限的游戏内使用重载命令 /bfreload

权限说明

权限需通过 BungeeCord 设置

  • bungeefilter.reload - 允许玩家重载插件配置。
  • bungeefilter.bypass - 允许玩家绕过过滤器检查。
  • 在配置文件中由你设定的自定义权限。

配置示例

以下为配置文件 config.yml 的核心结构示例与说明:

##########################################
##                                      ##
##      Bungee Chat Filter Config      ##
##              v1.2                   ##
##########################################

# 监控命令 - 监控玩家以聊天形式发送的命令
Monitor Commands: true

# 命令列表 - 插件将监控的指令列表
Commands:
- msg
- message
- tell
- whisper
- w
- g
- global
- s
- l
- local
- hub

# 反刷屏 - 启用后,将强制玩家在消息之间等待 *1500 毫秒或你指定的时间
AntiSpam: true

# 最小聊天间隔 - 玩家发送消息间必须等待的时间(毫秒)
Minimum-Chat-Delay: 1500

# 规则 - 监控聊天的规则组
rules:
  # 规则名称
  swearfilter1:
    # 用于检查的正则表达式字符串
    regex: (?i)(f+u+c+k+|f+u+k+|f+v+c+k+|f+u+q+)
    # 匹配后执行的动作列表
    actions:
      # 将匹配到的词替换为下方列表中的随机词
      replace:
      - fudge
      - frack
      - funk
      - fork

  swearfilter3:
    regex: "n[^a]gg+(a|er|uh)"
    actions:
      # 拒绝(取消)该消息
      deny: true
      # 向服务器广播警报,{player} 会被替换为玩家名
      alert: "{player} has been kicked for racism"
      # 踢出玩家并显示原因
      kick: "You have been kicked for racism"

  CAPSPAM:
    regex: (\p{Lu}|\s){4,}
    actions:
      # 将匹配部分转为小写
      lower: true

  AntiAdvertising:
    regex: \b\d{1,3}+\p{P}*\d{1,3}+\p{P}*\d{1,3}+\p{P}*\d{1,3}+\b|([\w-\.]+)((?:[\w]+\.)+)([a-zA-Z]{2,4})
    # 忽略列表,匹配此处正则的内容将不会触发动作
    ignores: (\w*\.)*(minecraftserver\.com)(/\w*)*|(\w*\.)*(google\.com)(/\w*)*|(\w*\.)*(youtube\.com)(/\w*)*|(puu\.sh)|(\w*)\.png|(\w*)\.jpg
    actions:
      message: 'Please don''t advertise'
      replace:
      - minecraftserver.com

  CommandShortcut:
    regex: /hub
    actions:
      # 让玩家向代理发送命令 /server hub
      pcommand: /server hub
      deny: true

  CreateCommand:
    regex: /broadcast
    # 权限前加 ! 表示玩家需要此权限,检查才会生效
    permission: "!bungeefilter.broadcast"
    actions:
      # {arguments} 会被替换为命令后的参数
      alert: '&5[Broadcast]&a{player}&f:{arguments}'
      deny: true

动作类型说明

  • deny: true - 拒绝消息并取消事件。
  • message: (内容) - 向玩家发送一条消息。
  • kick: (原因) - 以此原因踢出玩家。
  • alert: (内容) - 向服务器广播消息,支持 {player} 变量。
  • command: /(命令) - 让玩家发送此命令。
  • remove: true - 从玩家消息中移除所有匹配项。
  • replace: - 将匹配词替换为下方列表中的随机词。
  • lower: true - 将匹配部分转为小写。
  • pcommand: /(命令) - 代理命令:让玩家向代理发送此命令。
  • scommand: /(命令) - 服务器命令:让玩家向其当前所在服务器发送此命令。
  • ccommand: /(命令) - 控制台命令:让代理服务器控制台执行此命令。

注意事项与鸣谢

  • 部分正则表达式规则灵感来源于 pwnfilter,特此感谢。
  • 目前无法以当前服务器控制台的身份执行命令(即 ccommand 在代理控制台执行)。
  • 使用颜色代码(如 &c)需要服务器端的聊天插件支持,且玩家拥有相应权限。

源代码与下载:https://github.com/Bloodsplat/BungeeChatFilter

版本分布
基本信息
插件名称 BungeeChatFilter
作者 bloodsplat
平台 Bukkit / Spigot
支持版本 未标注
点赞数 未统计
最近版本
暂无数据 -

友情链接: 网易我的世界 | 泰拉瑞亚 | ocent云计算 | 米饭Minecraft插件文档 | 友链合作

历史访问人数:2,615,485  |  历史访问人次:3,171,446

今日访问人数:36,585  |  今日访问人次:41,067

昨日访问人数:24,332  |  昨日访问人次:29,698

Copyright © 2019-2026 我的世界服务器列表站. All rights reserved.

Powered by GermMC 京ICP备17023959号-6