BanTools
BanTools is an advanced ban management plugin designed for Minecraft Velocity servers. It supports banning players by UUID, IP address, or username, and provides dynamic configuration reloading and real-time kicking of online players.
BanTools
BanTools - Velocity Ban Management Plugin
BanTools is an advanced ban management plugin designed for Minecraft Velocity servers. It supports banning players by UUID, IP address, or username, and provides dynamic configuration reloading and real-time kicking of online players.
> Note: This plugin is AI-developed to help server administrators manage player bans more efficiently.
---
Features
- Real-Time Synchronization: - Supports banning by UUID, IP address, or player name. - Default ban duration is permanent (if no duration is specified). - Supports specifying ban duration (e.g., `7d` for 7 days, `2024/1/10-2025/01/10` for a custom date range). - Automatically kicks banned online players. - Real-Time Synchronization: - Supports unbanning a player using the `/bantools unban` command. - Unbanning does not delete the ban record but marks the ban status as invalid. - Real-Time Synchronization: - Supports immediately kicking a player using the `/bantools kick` command. - A custom kick reason can be specified (default uses the configured reason in the config file). - Real-Time Synchronization: - If a ban duration is specified, the ban will automatically expire when the time ends. - Real-Time Synchronization: - On login, checks if UUID, IP address, or player name matches any ban records. - If any condition matches, the player is considered banned. - Real-Time Synchronization: - All ban records are stored in the `config.conf` file, which supports manual editing. - The configuration file allows setting default ban and kick reasons. - Real-Time Synchronization: - Supports dynamically reloading the configuration file via the `/bantools reload` command without restarting the server. - Real-Time Synchronization: - All ban, unban, and kick operations are synchronized in real-time across all downstream servers.
---
Installation
1. Download the Plugin
Download the latest version of `BanTools.jar` from GitHub or other distribution channels.
2. Install the Plugin
Place the downloaded `BanTools.jar` file into the `plugins/` directory of your Velocity server.
3. Start the Server
Start the Velocity server. The plugin will automatically generate a default configuration file at `plugins/BanTools/config.conf`.
Configuration(`config.conf`)
``` defaults { ban_reason = "违反服务器规则" kick_reason = "管理员强制踢出" }
bans { "Player1": { name: "Player1" uuid: "069a79f4-44e9-4726-a5be-fca90e38aaf5" ip: "192.168.1.100" reason: "作弊行为" start_time: 1698765432 end_time: null # 永久封禁 state: true # 封禁状态(true:生效,false:解除) } } ``` - `defaults.ban_reason`: Default ban reason. - `defaults.kick_reason`: Default kick reason. - `bans`: Stores all ban records, each entry contains the following fields: - `name`: Player name. - `uuid`: Player UUID. - `ip`: Player IP address. - `reason`: Ban reason. - `start_time`: Ban start time (Unix timestamp). - `end_time`: Ban end time (Unix timestamp), set to `null` for permanent bans. - `state`: Ban status (true for active, false for unban).
---
Usage
Commands
| Command | Permission Node | Description | |-------------------------------------|-------------------------------|--------------------------------------| | `/bantools reload` | `bantools.command.reload` | Reloads the plugin configuration file. | | `/bantools ban <type> <value>` | `bantools.command.ban` | Bans the specified player. | | `/bantools unban <player>` | `bantools.command.unban` | Unbans the specified player. | | `/bantools kick <player>` | `bantools.command.kick` | Kicks the specified player. |
Examples
1. Ban a player named `Bianpao_xiaohai`: `/bantools ban Bianpao_xiaohai` (default ban duration is permanent; a reason can be added afterward). 2. Unban a player named `Steve`: `/bantools unban Steve`. 3. Kick a player named `Steve`: `/bantools kick Steve`.
---
Support & Feedback
If you encounter issues or have suggestions, please contact us via:
- GitHub Issues: GitHub Issues
---
License & Disclaimer
- Disclaimer: This plugin is AI-developed to provide efficient ban management tools for the Minecraft Velocity community. - Disclaimer: Distributed under the GNU General Public License v3.0. You may use, modify, and distribute it under the license terms. - Disclaimer: The developer is not responsible for any issues arising from the use of this plugin.
---
Acknowledgments
Special thanks to the following technologies and tools: