The HastebinRunner plugin is a powerful tool designed for Minecraft server administrators who want to execute commands directly from a shared Hastebin URL. This plugin introduces a secure and controlled way to batch process commands, ensuring smooth server management while providing various customization and safety features.
------------------------------------------------------------------------------------------------
Features
- Run Commands from Hastebin
- The plugin fetches commands from a specified Hastebin URL and executes them sequentially. Perfect for pre-configured automation, mass command execution, or testing.
- Customizable Hastebin Base URL
- Set your own base URL for Hastebin content retrieval, giving you flexibility to use custom or self-hosted solutions.
- Command Cooldown
- Define a delay (in seconds) between each command execution, ensuring the server remains stable and avoids overload during batch processing.
------------------------------------------------------------------------------------------------
Permission-Based Access
- Fine-grained permissions to control who can use specific plugin commands:
- /hastebinrunner sethastebin - Permission to load and execute commands from a Hastebin URL.
- /hastebinrunner sethastebinurl - Permission to change the base Hastebin URL.
- /hastebinrunner reload - Permission to reload the configuration.
------------------------------------------------------------------------------------------------
Safety with Blocked and Allowed Commands
- The plugin supports two modes for command execution:
- Blocked Commands Mode: Commands listed in blockedCommands will be skipped and not executed.
- Allowed Commands Mode: Only commands listed in allowedCommands will be executed. Any command not on the list is automatically rejected.
- Ensures malicious or unintended commands do not get executed.
------------------------------------------------------------------------------------------------
Player-Based Command Execution
- Supports %allplayers% placeholder to dynamically execute commands for all online players (e.g., /give %allplayers% diamond 1)
------------------------------------------------------------------------------------------------
Commands
Command
Description
/hastebinrunner sethastebin <url> Load and execute commands from the given Hastebin URL.
/hastebinrunner sethastebinurl <base-url> Set a custom base Hastebin URL for content retrieval.
/hastebinrunner reload Reload the plugin's configuration file while ensuring safe execution.
------------------------------------------------------------------------------------------------
Configuration Options
Below is the default configuration file generated by the plugin:
# The base URL used for fetching Hastebin content.
hastebinBaseUrl: "
https://haste.catriox.nl/raw/"
# The delay (in seconds) between executing commands.
commandCooldown: 5
# Set to true to enable blocked commands mode. Commands in `blockedCommands` will not be executed.
useBlockedCommands: false
# Set to true to enable allowed commands mode. Only commands in `allowedCommands` will be executed.
useAllowedCommands: true
# List of blocked commands. Commands in this list will be skipped during execution.
blockedCommands:
- "op"
- "stop"
- "reload"
- "ban"
- "kick"
- "pardon"
- "whitelist"
- "deop"
- "ban-ip"
- "pardon-ip"
- "save-off"
- "gamerule"
- "kickall"
- "kill"
- "hastebinrunner"
# List of allowed commands. Only commands in this list will be executed if `useAllowedCommands` is enabled.
allowedCommands:
- "give"
------------------------------------------------------------------------------------------------
Use Case Scenarios
- Batch Command Execution
Automate tasks like giving rewards, resetting player stats, or broadcasting multiple messages by writing a list of commands in a Hastebin file and executing them all at once.
- Secure Server Administration
Prevent accidental or harmful commands by using the blockedCommands or allowedCommands mode.
- Custom Events or Challenges
Create dynamic events where specific commands (e.g., /give, /tp) are executed for all players using the %allplayers% placeholder.
------------------------------------------------------------------------------------------------
Permissions
Permission
Description
hastebinrunner.sethastebin Allows using /hastebinrunner sethastebin to load and run commands.
hastebinrunner.sethastebinurl Allows using /hastebinrunner sethastebinurl to change the base URL.
hastebinrunner.reload Allows reloading the plugin's configuration with /hastebinrunner reload.
hastebinrunner.notify Receive notifications when commands are executed.