Sueta
CU

CubeChat | Chat Management | [1.12.x - 1.15.x]

1.0.1

A complete and configurable chat management plugin for Minecraft

·Plugin

CubeChat
A complete and configurable chat management plugin for Minecraft servers

ProtocolLib is required for this plugin to function!

Features:

  • Automatically sets player messages to lowercase when they use too many capitals (configurable)
  • Automatically shortens messages when flooding the same character (configurable)
  • Chat message spam cooldown (configurable)
  • Blocks advertising/website link attempts
    • Can configure to deal with people trying to circumvent
  • Chat Filter
    • Two censor levels - Hard and Soft
    • Words all configurable
    • Soft censor
      • Allows players to choose if they want to see these words
    • Hard censor
      • Message is censored for all players
    • Whitelist
      • If a message is incorrectly flagged as censored, adding it to the whitelist prevents this
    • Uses censor distance (configurable)
      • Number of characters in a word that can be different than the word set in config to still get censored
      • For example, "big" has a distance of 1 from "bag"
    • Deals with players using other characters to circumvent filter
  • Shadowmute
  • Chat mute
  • Chat clear

Setup:

  • Drag & drop CubeChat.yml into your plugins folder
  • Make sure you have ProtocolLib also installed
  • Optionally, configure to your liking

Have an issue? Send me a PM on discord (RoboticPlayer#9999), create an issue on GitHub for code related problems, or say something in the discussion tab. Please leave help requests out of the reviews section.

Default config.yml
# Most capitals allowed in a message. Set to -1 to disable 
maxCapitals: 10 
# Most consecutive of the same character allowed in a message. Set to 0 to disable 
maxFlood: 5 
# Time in milliseconds required between messages. Set to 0 to disable 
spamCooldown: 2500 
# Number of characters that can be different and still be censored in a word. Set to 0 to disable 
censorDistance: 2 

# List of things being used to replace "." in an IP or website 
# For example, 127(dot)0(dot)0(dot)1 
# Parentheses and periods must be prefaced with a \\ i.e. "\\(dot\\)" 
adsplits: 
  - "\\." 
  - "," 
  - "\\(dot\\)" 
  - "\\(\\.\\)" 
  - "\\(,\\)" 
  - "dot" 

# List of words that players can choose if they want censored 
softCensor: 
  - "anal" 
  - "anus" 
  - "arse" 
  - "asshole" 
  - "asshat" 
  - "bitch" 
  - "boob" 
  - "ballsack" 
  - "bastard" 
  - "blowjob" 
  - "boner" 
  - "breats" 
  - "butt" 
  - "cock" 
  - "clit" 
  - "clitoris" 
  - "cunilingus" 
  - "cunt" 
  - "damn" 
  - "dick" 
  - "dildo" 
  - "dammit" 
  - "ejaculate" 
  - "faggot" 
  - "fuck" 
  - "fatass" 
  - "gangban" 
  - "goddamn" 
  - "horny" 
  - "masturbate" 
  - "jizz" 
  - "mofo" 
  - "orgasm" 
  - "porn" 
  - "penis" 
  - "phuck" 
  - "phuq" 
  - "piss" 
  - "pornography" 
  - "prick" 
  - "pussy" 
  - "rectum" 
  - "retard" 
  - "rimjob" 
  - "rimming" 
  - "shit" 
  - "schlong" 
  - "scrotum" 
  - "semen" 
  - "slut" 
  - "titty" 
  - "titties" 
  - "tiddies" 
  - "tiddy" 
  - "testicle" 
  - "viagra" 
  - "vagina" 
  - "whore" 
  - "fag" 
  - "motherfuck" 

# List of words that will be censored regardless of player options 
hardCensor: 
  - "nigger" 
  - "nigga" 
  - "nibba" 
  - "niger" 
  - "nig" 
  - "chink" 
  - "boomer" 

# List of words that were censored and shouldn't be 
falsePositives: 
  - "enable" 
  - "longer" 
  - "book" 
  - "break" 
  - "words" 
  - "while" 
  - "prior" 
  - "create" 
  - "opens" 
  - "tick" 
  - "lick" 
  - "those" 
  - "power" 
  - "owner" 
  - "kick" 
  - "sends" 
  - "nick" 
  - "world" 
  - "seen" 
  - "create" 
  - "where" 
  - "perish" 
  - "whois" 
  - "switch" 
  - "regard" 
  - "changes" 
  - "second" 
  - "there"
Commands
  • /togglefilter
    • Toggles whether or not you see soft censored words
  • /clearchat
    • Clears the chat
  • /mutechat
    • Prevents players from talking in chat
  • /shadowmute
    • Mutes a player without them knowing they're muted
  • /cubechat
    • Main command for the plugin
    • No arguments will show help menu
Permissions
  • cubechat.*
    • Gives access to everything
  • cubechat.cmd
    • You can do /cubechat
  • cubechat.clearchat
    • You can clear the chat
  • cubechat.clearchat.exempt
    • Your chat won't get cleared
  • cubechat.clearchat.silent
    • You can use the "-s" argument to clear chat without showing your name
  • cubechat.mutechat
    • You can mute and unmute the chat
  • cubechat.mutechat.exempt
    • You can talk while the chat is muted
  • cubechat.mutechat.silent
    • You can use the "-s" argument to mute the chat without showing your name
  • cubechat.mutechat.read
    • You can read attempted messages from players while the chat is muted (toggleable)
  • cubechat.shadowmute
    • You can shadowmute players
  • cubechat.shadowmute.read
    • You can read attempted messages from shadowmuted players (toggleable)
  • cubechat.togglefilter
    • You can toggle your filter
  • cubechat.checkfilter
    • You can check if a player's filter is on or off
  • cubechat.forcefilter
    • You can force a player's filter to be on or off
  • cubechat.reload
    • You can reload the plugin
  • cubechat.caps.exempt
    • You are exempt from the capitals filter
  • cubechat.flood.exempt
    • You are exempt from the flood filter
  • cubechat.spam.exempt
    • You won't have a message cooldown
  • cubechat.link
    • You can post links in chat
Known Issues
  • Players can bypass the chat filter by putting spaces within a word
To-Do
  • Add more config options
    • No permission message
    • Toggle for filter matches to show in chat
      • Useful to look for false positives

Similar projects

Plugin →