PluginManager icon

PluginManager -----

Alternative to PlugManX and PluginManager+



Need Support?

# PluginManager

A powerful Minecraft server plugin that gives administrators full runtime control over every plugin on their server — no restarts required. Manage, enable, disable, reload, and monitor plugins through an intuitive GUI or command line interface.

---

## ✨ Features

### ️ Interactive GUI
A fully-featured inventory-based GUI accessible via `/pm`. All management tasks can be performed with simple clicks — no commands required for in-game admins.

- **Main Menu** — Central hub showing live stats (total, enabled, disabled plugin counts), with quick-access buttons to each section.
- **Plugin List** — Paginated list of every loaded plugin, colour-coded by status (green = enabled, grey = disabled). Click any plugin to open its detail view.
- **Plugin Info Screen** — Detailed per-plugin view showing version, authors, description, website, hard dependencies, soft dependencies, and all registered commands. Enable, disable, or reload the plugin directly from this screen.
- **Command Manager GUI** — View every command a plugin registers. Toggle individual commands blocked/active, or set redirects — all changes persist across restarts via `command_overrides.yml`.
- **Whitelist GUI** — Toggle the plugin-gate whitelist on/off and manage the required-plugin list entirely through the GUI.

---

### ⚙️ Plugin Lifecycle Management
Enable, disable, and reload any plugin at runtime without restarting the server.

- Disable a plugin to instantly stop its functionality.
- Enable a previously disabled plugin.
- Reload a plugin (disable → re-enable cycle) to apply config changes.
- Core/self-protection: PluginManager itself cannot be disabled or reloaded through its own interface.

---

### Plugin Whitelist Gate
Prevent players from joining unless a defined set of plugins are active and healthy.

- Define a list of *required* plugins. If any are missing or disabled, joining players are kicked with a configurable message.
- Enable or disable the gate at any time without restarting.
- Manage the required-plugin list via GUI or commands.
- The whitelist GUI shows each plugin's current state: required & healthy (green), required but missing/disabled (red), or not required (grey).

---

### ️ Command Override Manager
Take full control over any command registered by any plugin on the server.

- **Block** a command entirely — players receive a configurable denial message.
- **Redirect** a command to a different command transparently.
- **Custom messages** per blocked command.
- Overrides are stored in `command_overrides.yml` and persist across restarts.
- Players with `pluginmanager.admin` bypass all overrides.
- Overrides intercept commands at the highest event priority, including namespace-prefixed commands (e.g. `pluginname:command`).

---

### ️ File Watcher
Automatically detects new plugin `.jar` files dropped into the `plugins/` folder and loads them — no restart needed.

- Configurable polling interval (default: 60 seconds).
- When a new `.jar` is detected, it is loaded and enabled immediately on the main thread.
- All online players with `pluginmanager.use` receive a notification when a file is detected and when it successfully loads.
- Can be enabled or disabled in `config.yml`.

---

### Fully Configurable Language
Every message the plugin sends is defined in `lang.yml` and supports `&` colour codes with `{placeholder}` variables. Edit any message without touching code or restarting — use `/pm reloadconfig`.

---

### Live Config Reload
Reload both `config.yml` and `lang.yml` at runtime with a single command. No restart required to apply setting changes.

---

## Commands

All commands use `/pm` with aliases `/plugmanager` and `/pmanager`.

| Command | Description |
|---|---|
| `/pm` | Open the Plugin Manager GUI (players) or show help (console) |
| `/pm help` | Display the help menu with all available subcommands |
| `/pm list` | Open the paginated plugin list GUI (players) or print a list to console |
| `/pm info <plugin>` | View detailed info for a plugin in the GUI or console |
| `/pm enable <plugin>` | Enable a disabled plugin |
| `/pm disable <plugin>` | Disable an active plugin |
| `/pm reload <plugin>` | Reload a plugin (disable then re-enable) |
| `/pm whitelist` | Open the Plugin Whitelist GUI |
| `/pm whitelist toggle` | Toggle the plugin whitelist gate on or off |
| `/pm whitelist add <plugin>` | Add a plugin to the required-plugins whitelist |
| `/pm whitelist remove <plugin>` | Remove a plugin from the required-plugins whitelist |
| `/pm reloadconfig` | Reload `config.yml` and `lang.yml` from disk |

All subcommands support **tab completion**, including context-aware suggestions (e.g. `/pm enable` only suggests currently disabled plugins, `/pm disable` only suggests enabled ones).

---

## Permissions

| Permission | Description | Default |
|---|---|---|
| `pluginmanager.use` | Access to all `/pm` commands and GUIs | OP |
| `pluginmanager.admin` | Full admin access; bypasses all command overrides set in the Command Manager | OP |

---

## ⚙️ Configuration

### `config.yml`

```yaml
file-watcher:
enabled: true # Toggle the automatic plugin file watcher
check-interval: 60 # How often (in seconds) to scan the plugins folder

whitelist:
enabled: false # Toggle the plugin-gate whitelist
kick-message: "..." # Message shown to players kicked by the whitelist gate
required-plugins: [] # List of plugin names that must be active

command-manager:
enabled: true # Toggle the command override system globally

gui:
items-per-page: 45 # Number of plugins shown per page in the plugin list GUI

debug: false # Enable debug logging
```

### `lang.yml`
All messages are fully customisable. Supports `&` colour codes and `{plugin}`, `{file}`, `{cmd}`, `{page}`, `{pages}` placeholders where applicable.

### `command_overrides.yml`
Auto-generated file that stores all command overrides. Each entry records whether the command is blocked, the redirect target (if any), and a custom message.

---

## Getting Started

1. Drop `PluginManager.jar` into your `plugins/` folder and restart the server once.
2. Log in as a player with OP and run `/pm` to open the GUI.
3. Browse your plugin list, click any plugin to view details, and manage it directly from the GUI.
4. To prevent players from joining during maintenance, open the Whitelist section, add required plugins, and toggle it on.
5. To block a command server-wide, open Plugin Info for the plugin that registers it → Command Manager → click the command to block it.

---

## Notes

- PluginManager itself is protected from being disabled or reloaded through its own interface.
- The File Watcher runs asynchronously so it does not impact server performance; the actual plugin load still occurs on the main thread.
- Command overrides do **not** affect players with the `pluginmanager.admin` permission.
- Compatible with **Spigot / Paper 1.21+**.
Resource Information
Author:
----------
Total Downloads: 20
First Release: Mar 11, 2026
Last Update: Mar 11, 2026
Category: ---------------
All-Time Rating:
0 ratings
Version -----
Released: --------------------
Downloads: ------
Version Rating:
----------------------
-- ratings