Swear Blocker
Advanced Word Filtration System
Quick challenge
How far can you run before the mobs catch you?
Minecraft check
Confirm your run
Complete the quick check to get your code.
Swear Blocker
SwearBlocker
A profanity filter for Spigot, Paper, and Folia. Catches the bypasses people actually try.
Punctuation between letters, leet substitutions, repeated characters, reversed words, diacritics, visually-confusable Unicode (Cyrillic, fullwidth, math italic). All caught. `assistant`, `class`, `bass` — left alone.
Runs on chat, signs, written books, anvil renames, and a configurable list of commands. MC 1.19+.
What happens when someone swears
The bad word gets swapped. By default you get whimsical nonsense:
> steve: sparkly cosmic waffle overlord, friend of hamster
Set `tone: serious` if you'd rather see asterisks.
Detection
If `darn` were blocked, all of these would still get caught:
``` darn exact match daaarn repeat collapse d@rn leet (a → @) d.a.r.n separators nrad reversed därn diacritics dаrn homoglyph fold (Cyrillic 'а') d·a·r·n zero-widths ```
Phonetic matching (Metaphone, catches sound-alikes) is opt-in.
Escalation
Optional, off by default. If you want it:
```yaml actions: enabled: true ladder: - { threshold: 1, window-minutes: 60, run: [replace, title, log] } - { threshold: 3, window-minutes: 60, run: [warn, warn-staff, log] } - { threshold: 6, window-minutes: 60, run: [mute, log], mute-duration-minutes: 10 } - { threshold: 10, window-minutes: 60, run: [kick] } - { threshold: 15, window-minutes: 1440, run: [ban] } ```
Rolling-window per player, persisted to disk.
Commands
All under `/swearblocker` (`/sb`).
`/sb info` · `/sb test <msg>` · `/sb add` · `/sb remove` · `/sb exclude` · `/sb stats` · `/sb clear` · `/sb reload`
Install
- Paper or Folia (1.20.5+): `SwearBlocker-Paper-2.0.0.jar` - Spigot (1.19+): `SwearBlocker-Spigot-2.0.0.jar`
Drop in `plugins/`, restart. No required dependencies.
Velocity?
Not in 2.0. Signed chat in 1.19.1+ blocks proxy-side rewrites unless you install a bridge plugin everywhere, and the broken-paths weren't worth shipping. Run SwearBlocker on each backend instead.
Links
- Companion plugin — Companion plugin - Companion plugin — %%MD1%% for full-featured server announcements