Download (1.2 MB)

How do I install this?

TextShield 🔗

TextShield is a Lua-based anti-spam and chat moderation mod for Minetest. It provides tools to automatically filter, detect, and block spam, excessive capitalization, and offensive words in multiple languages, helping to maintain a healthy and enjoyable multiplayer environment.


Features 🔗

  • Anti-spam protection: Blocks repeated or rapid messages.
  • Caps filter: Detects and prevents excessive use of capital letters.
  • Profanity filter: Includes badword lists in multiple languages (ar, de, en, es, fr, it, ja, ko, ru, zh).
  • History tracking: Keeps a record of messages to better detect spam patterns.
  • Configurable settings: Adjustable parameters via settingtypes.txt.
  • Lightweight integration: Works out-of-the-box with Minetest servers.

Installation 🔗

  1. Download or clone this repository into your Minetest mods/ directory:

    git clone https://github.com/Themostrandom/textshield.git
    
  2. Ensure the folder is named textshield/.

  3. Enable the mod for your world in Minetest.


Configuration 🔗

You can configure the mod via the settingtypes.txt file or directly in Minetest's in-game settings menu.

Typical configuration options include:

  • Thresholds for spam detection
  • Caps percentage allowed before filtering
  • Language-specific badword lists

Usage 🔗

Once installed and enabled:

  • TextShield automatically monitors all player chat messages.
  • Spam, excessive caps, and offensive words are blocked before reaching other players.
  • Server admins can customize the sensitivity to fit their community.

Project Structure 🔗

textshield/
├── antispam.lua        # Spam detection logic
├── caps_filter.lua     # Capitalization filter
├── history.lua         # Message history tracking
├── init.lua            # Main entry point for the mod
├── LICENSE             # License file
├── mod.conf            # Minetest mod configuration
├── screenshot.png      # Preview image
├── settingtypes.txt    # User-configurable settings
└── badwords/           # Badword lists for multiple languages

Requirements 🔗

  • Minetest 5.0.0 or higher
  • No external Lua dependencies

License 🔗

This project is licensed under the terms described in the LICENSE file.


Contributing 🔗

Contributions are welcome! You can help by:

  • Expanding the badword lists
  • Improving detection algorithms
  • Adding support for more languages

To contribute, fork this repository, make your changes, and submit a pull request.


Author 🔗

Developed by Themostrandom01.

Reviews

Review

Do you recommend this mod?