▶️ ЗАБЕРИ СВОИ 8 ПОДАРКОВ 🎁 ПРИ СОЗДАНИИ СВОЕГО МАЙНКРАФТ СЕРВЕРА
Моды/bChatMod
bChatMod

bChatMod

A lightweight, configurable chat moderation plugin: blocks profanity (Italian + English), notifies staff with the full message, and supports anti-bypass modes (normal/strict/ultra). Suitable for lifesteal and SMP

11
1

banner

bChatMod

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 (f4ckfack).
  • Reduce repeated letters (fuuuckfuuck).
  • Sliding-window insertion-only fuzzy detection (detects extra-letter bypasses while avoiding substitutions like duck).
  • Vowel-stripped checks (optional ultra mode).

❓ 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

  1. Build or download the JAR and place it in your server plugins/ folder.
  2. Start the server to generate the default config.yml.
  3. Edit plugins/bChatMod/config.yml to customize blacklist, messages and anti-bypass mode.
  4. 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)

bstats

Совместимость

Minecraft: Java Edition

1.21.x1.20.x1.19.x1.18.x1.17.x1.16.x

Поддерживаемые окружения

Сервер

Создатели

Детали

Лицензия:LicenseRef-All-Rights-Reserved
Опубликован:3 недели назад
Обновлён:3 недели назад
Главная