Skip to content

Add lightweight built-in anti-spam system to EssentialsXChat #6638

Description

@CreativeTragern

Feature description

I propose adding a native, lightweight anti-spam system directly into EssentialsXChat. It should include basic moderation mechanics to keep chat clean without needing third-party plugins.

The core features should include:

  • Chat Cooldown: A configurable delay (in seconds) between messages with a bypass permission (essentials.chat.bypass.cooldown).
  • Duplicate Filter: Blocking identical or highly similar repetitive messages from the same player.
  • Caps Lock Filter: Automatically converting text to lowercase if a message contains too many capital letters (e.g., >70% CAPS).
  • Automated Actions: Configurable responses when spam is detected (block message, warn player, or run a command).

How the feature is useful

  • Eliminates Formatting Conflicts: A native solution ensures 100% compatibility with EssentialsXChat formats, prefixes, and suffixes.
  • Reduces Server Lag: Built-in features require fewer event listeners, saving server resources compared to running heavy external plugins.
  • Centralized Configuration: Server owners can manage formatting, local chat, and spam prevention inside a single config.yml file.
  • Instant Protection: Provides new server administrators with baseline chat moderation right out of the box.

Note: This request was written using a translator, so it may contain minor grammatical errors.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions