90% of ad revenue goes to creators. Go ad-free while supporting creators with Modrinth Plus. Subscribe today!

TotemGuard

Build CodeQL GitHub Release
SpigotMC TotemGuard
Discord

Overview

TotemGuard is a simple anti-cheat that tries to detect players who are using AutoTotem. This plugin is designed to be as lightweight as possible and for the most parts operates asynchronously. It is also designed to be as configurable as possible, allowing server owners to adjust the plugin to their needs.

Requires PacketEvents

Ensure the PacketEvents library is installed on your server.

Table of Contents

Showcase

showcase

Supported Platforms & Versions

Platform Supported Versions
Paper, Folia, and related forks 1.18 - 1.21.1

Features

  • Performance - The plugin is designed to be as lightweight as possible.
  • Folia Support - The plugin integrates with Folia, which is a Paper fork that adds regionised multithreading to the server.
  • Webhooks - The plugin can send alerts and punishments to a Discord webhook.
  • Configurable - The plugin is highly configurable, every setting can be adjusted during runtime.
  • Update Checker - The plugin automatically checks for updates on startup.
  • Bypass - The plugin allows players to bypass the checks if they have the TotemGuard.Bypass permission and the bypass setting is enabled.
  • Bedrock Exception - The plugin doesn't check players who are using Bedrock Edition, preventing false positives.

Commands

  • /totemguard or /tg - Base Command
  • /totemguard info - Displays information about the plugin.
  • /totemguard alerts - Toggles alerts on/off.
  • /totemguard reload - Reloads the configuration file (every single setting supports reloading on runtime).
  • /totemguard check or /totemcheck, /checktotem - Removes a totem from a player's inventory and checks if they are being quickly replaced.

Permission Nodes

Operators (OPs) have these permissions by default:

  • TotemGuard.* - Grants access to all TotemGuard permissions.
  • TotemGuard.Alerts - Allows the player to toggle alerts.
  • TotemGuard.Alerts.Others - Allows the player to toggle alerts for other players.
  • TotemGuard.Check - Allows the player to check if another player is using AutoTotem.
  • TotemGuard.Reload - Allows the player to reload the configuration file.
  • TotemGuard.Bypass - Allows the player to bypass the plugin's checks (if enabled in the configuration).
  • TotemGuard.Update - Allows the player to get notified about updates.

Installation

  1. Prerequisites: Install PacketEvents.
  2. Download: Get the latest release from the GitHub release page.
  3. Installation: Move the downloaded plugin to your server's plugins directory.
  4. Configuration: Customize settings in config.yml.
  5. Reload: Run /totemguard reload to apply the changes.

Compiling From Source

Prerequisites

  • Java Development Kit (JDK) version 21 or higher
  • Git

Steps

  1. Clone the Repository:

    git clone https://github.com/Bram1903/TotemGuard.git
    
  2. Navigate to Project Directory:

    cd TotemGuard
    
  3. Compile the Source Code: Use the Gradle wrapper to compile and generate the plugin JAR file:

    Linux / macOS
    ./gradlew build
    
    Windows
    .\gradlew build
    

Credits

Special thanks to:

License

This project is licensed under the GPL3 License.


Project members

ImBram

Maintainer

OutDev

Maintainer

Details

Licensed GPL-3.0-only
Published 17 days ago
Updated 4 days ago