Skip to content

Bram1903/MinecraftPlayerCrasher

Repository files navigation

Build CodeQL GitHub Release

Modrinth

Minecraft Player Crasher Plugin

An easy-to-use Minecraft plugin that enables the crashing of a player's game through the use of a command.

alt text

Requires PacketEvents

The plugin doesn't shade PacketEvents anymore because of performance considerations, so you will need to install the latest version of PacketEvents on your server.

PacketEvents on Modrinth

Supported Versions

This plugin supports every Minecraft version from 1.8.8 to 1.20.6. Besides that, the plugin also supports Spigot, Paper, and Folia.

Technically, it should also work on any Spigot or Paper fork, but I can't guarantee that statement.

Features

  • Completely Asynchronous - The plugin is designed to be as lightweight as possible. All packet modifications are done asynchronously, so the main thread is never blocked.
  • Folia Support - The plugin integrates with Folia, which is a Paper fork that adds regionised multithreading to the server.
  • Crash Detector - By sending both a keep alive and transaction packet, the plugin can detect if a player has crashed, even if the player is still connected.
  • Configurable - The plugin is highly configurable, allowing you to adjust the settings to your liking.
  • Update Checker - The plugin automatically checks for updates on startup. If a new version is available, a message will be sent to the console.
  • Permission Bypass - The bypass permission (PlayerCrasher.Bypass), prevents a player from being crashed.

Usage/Examples

  • /crash (player) [Method]

Note: The method parameter is optional. If no method is provided, the plugin will use the most appropriate method based on the player's version.

Methods:

  • Explosion
  • Particle
  • Position

Commands

  • /pc - Displays the plugin's version and author.
  • /crash (player) [Method] - Crashes the specified player's game.
  • /crashinfo [player] - Displays the client brand and version of the specified player.

Permission Nodes

Players that are OP (Operators) have these permissions by default.

  • PlayerCrasher.Crash Allows the player to use the /crash command.
  • PlayerCrasher.Bypass Exempts the player from being crashed when the /crash command is used on them.
  • PlayerCrasher.Alerts Makes the player receive alerts when a player is being crashed by another player.
  • PlayerCrasher.CrashInfo - Allows the player to use the /crashinfo command.
  • PlayerCrasher.UpdateNotify Makes the player receive an update notification when a new version is available.

Installation Guide

  1. Download the latest release from the release page.

  2. Move the downloaded plugin to the plugins directory of your server.

  3. Restart your server for the changes to be implemented.

  4. Adjust the presets in the config.yml file to match your preferences. (Restart required)

  5. You're good to go!

Compiling From Source

Prerequisites

  • Java Development Kit (JDK) version 17 or higher

Steps:

  1. Clone the Repository: Clone the repository containing the MinecraftPlayerCrasher source code to your local machine using Git:

    git clone https://github.com/Bram1903/MinecraftPlayerCrasher.git
  2. Navigate to Project Directory: Change your current directory to the root directory of the cloned project:

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

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

License

This project is licensed under the GPL3 License.

About

An easy-to-use Minecraft plugin that enables the crashing of a player's game through the use of a command.

Topics

Resources

License

Stars

Watchers

Forks

Languages