bChatMod (update soon!)
作者:rebot | 分类:模组
Minecraft 版本: 1.16 1.16.1 1.16.2 1.16.3 1.16.4 1.16.5 1.17 1.17.1 1.18 1.18.1 1.18.2 1.19 1.19.1 1.19.2 1.19.3 1.19.4 1.20 1.20.1 1.20.2 1.20.3 1.20.4 1.20.5 1.20.6 1.21 1.21.1 1.21.2 1.21.3 1.21.4 1.21.5 1.21.6 1.21.7 1.21.8 1.21.9 1.21.10 1.21.11
平台: bukkit folia paper purpur spigot
标签: management social utility

A lightweight, configurable chat moderation plugin for Paper/Spigot: blocks profanity (Italian + English), notifies staff with the full message, and supports anti-bypass modes (normal / strict / ultra).
✨ Features
?Core Features
- Unicode-aware blacklist matching for words and phrases (reduces false positives).
- Staff notifications include the full original message and the detected match (
{message}+{match}). - Configurable anti-bypass modes:
normal— pattern-based detection only (least aggressive).strict— pattern + leet & repeat normalization + insertion-only fuzzy detection.ultra— strict + vowel-stripped checks (most aggressive).
- Configurable messages and staff formatting.
- No automatic muting by default (plugin focuses on detection and notification).
- Lightweight, compatible with Paper/Spigot 1.19+ (tested up to 1.21.x).
?️ Anti-Bypass Techniques
- Leet normalization (
f4ck→fack). - Reduce repeated letters (
fuuuck→fuuck). - Sliding-window insertion-only fuzzy detection (detects extra-letter bypasses while avoiding substitutions like
duck). - Vowel-stripped checks (optional
ultramode).
❓ Why bChatMod?
- Accurate: word/phrase boundaries and Unicode-aware patterns avoid many false positives.
- Configurable: pick the level of aggressiveness for your community.
- Transparent: staff receive the full message for context before action.
? Installation
- Build or download the JAR and place it in your server
plugins/folder. - Start the server to generate the default
config.yml. - Edit
plugins/bChatMod/config.ymlto customize blacklist, messages and anti-bypass mode. - Reload the plugin with:
/bchatmod reload
⚙️ config.yml
# Anti-bypass mode: "normal" | "strict" | "ultra"
anti-bypass-mode: "normal"
# Debug (toggle true while tuning)
debug:
block-log: false
# Messages
player-block-message: "&7You cannot send that message. It contains blocked words."
staff-message-format: "&b[bChatMod] &7{player} tried cursing: &r{message} &7(matched: &b{match}&7)"
# Permission required to receive staff notifications
staff-notify-permission: "bchatmod.notify"
# Blacklist (example entries)
blacklist:
- "fuck"
- "shit"
- "example-offensive-term"

? Notes
Short tokens (length ≤ 3) are handled conservatively to avoid false positives (e.g., "ass" inside "basso"). Use caution when adding short tokens.
Use debug.block-log: true during tuning to see which pattern/candidate matched in console.
Commands
Command
Description
/bchatmod reload
Reload configuration and rebuild blacklist patterns
? Permissions
bchatmod.notify — receive staff notifications (default: op)
bchatmod.reload — reload config (default: op)
bchatmod.bypass — bypass chat filter (default: op)
? Placeholders
{player} — player name
{message} — full original message the player attempted to send
{match} — the substring or variant that triggered the block
&b[bChatMod] &7{player} tried cursing: &r{message} &7(matched: &b{match}&7)
请登录后举报
暂无评论,抢个沙发吧~