随心资源栈
[缄言]SilenceWarden —— 随心所欲的在Web上禁言玩家&关键词识别自动禁言处罚![1.21.x - 26.3]

[缄言]SilenceWarden —— 随心所欲的在Web上禁言玩家&关键词识别自动禁言处罚![1.21.x - 26.3]

插件

由 Taoisa 创建于 2026/10/07

一个我认为比较好用的玩家发言管理插件

SilenceWarden

——玩家发言管理&自动禁言
序言
本人本身是一名高版本的服主,之前一直是在各大社区找插件
但是我发现了一件事,很多开发者一直在做一些很大型的插件,比如基础插件,经济插件,市面上有好几个这种大型的插件了
又有很多开发者在做一些很小的插件,基本上只能娱乐
不知道为什么现在市面上很少见到只专注单一方向并且涉及不浅的插件了
于是我想把我服务器正在使用的我制作的插件发布出来,我插件的适用群体是那些高版本生存服的服主
这个是我所有插件的前置


核心简介
缄言 是一款面向 Spigot/Paper 1.21.1+ 服务器的聊天秩序管理插件,隶属于 随心 系列附属插件,需配合 SuiXinJs 核心运行。插件聚焦两件事:把玩家聊天里的敏感词自动替换掉,以及把违规的玩家禁言——所有配置在游戏内命令和 Web 管理面板双向同步,禁言数据落在 SQLite 或 MySQL,多服共用 MySQL 时全群组禁言互通。


内置 Web 管理面板
你再也不需要自己打开yaml然后一个一个的改设置了

直接在web上设置,然后一键点击重置,一键同步设置到其他服务器!



核心功能
敏感词过滤:内置中文词库,前缀树最长匹配,自动识破空格、符号、零宽字符等绕过写法;命中词替换为可配置的文字,并提示玩家是哪个词触发。
违规自动禁言:触发敏感词按「首次时长 + 逐次累加」自动禁言,支持单次上限与违规计数过期时间,超期重新累计。
完整禁言管理:手动禁言(时长/永久/自定义原因)、解除、调整剩余时长、修改原因、禁言列表与详情查询,全服在线玩家可直接按名操作。


命令
/sw 或 /silencewarden(权限 silencewarden.admin,默认 OP)
/sw mute <玩家> <时长|perm> [原因] —— 禁言玩家,如 30s、10m、1h、1d2h,perm 为永久
/sw unmute <玩家> —— 解除禁言
/sw settime <玩家> <时长|perm> —— 调整禁言剩余时长,0 为立即解除
/sw setreason <玩家> <原因> —— 修改禁言原因
/sw info <玩家> —— 查看玩家禁言详情:剩余时长、原因、操作人、禁言时间
/sw list —— 查看全部禁言中的玩家
/sw word add <敏感词> —— 添加敏感词到词库
/sw word remove <敏感词> —— 从词库移除敏感词
/sw word list —— 查看全部敏感词
/sw reload —— 重载配置文件、提示消息与词库
/sw help —— 帮助



安装与配置
把 SilenceWarden 丢进 plugins 重启即可。
# ============================================================
# 缄言 SilenceWarden 主配置
# ============================================================

# 敏感词过滤设置
filter:
# 是否启用聊天敏感词过滤
enabled: true
# 命中敏感词后替换成的文字
replacement: "***"
# 匹配时忽略的干扰字符,用于识破在词语中间插入符号的绕过行为
bypass-chars: [" ", "_", "-", "*", ".", "~"]

# 触发敏感词自动禁言设置
auto-mute:
# 是否启用触发敏感词自动禁言
enabled: true
# 首次触发禁言的时长
base-duration: "10m"
# 之后每多触发一次,在上一次时长基础上累加的禁言时长
add-duration: "10m"
# 单次自动禁言的时长上限,设为 0 表示不设上限
max-duration: "0"
# 违规计数过期分钟数,距上次触发超过该时长后计数重新从零开始,设为 0 表示永不过期
expire-minutes: 60

# 数据库类型:sqlite 或 mysql
# 多服群组需要共用禁言数据请使用 mysql,sqlite 仅适合单服
type: "sqlite"

# SQLite 配置(当 type 为 sqlite 时生效)
sqlite:
# SQLite 数据库文件路径(相对或绝对路径均可)
file: "./data/database.db"

# MySQL 配置(当 type 为 mysql 时生效)
mysql:
# 数据库地址
host: "127.0.0.1"
# 数据库端口
port: 3306
# 数据库名称
database: "root"
# 数据库账号
user: "root"
# 数据库密码
password: ""
# 可选:字符集
charset: "utf8mb4"

适用版本:1.21.1+(Java 21)


随心系列插件

[随心核心]SuiXinJs —— 随心系列插件的前置[1.21.x - 26.3]
[缄言]SilenceWarden —— 随心所欲的在Web上禁言玩家&关键词识别自动禁言处罚![1.21.x - 26.3](本插件)



交流群