Commands Reference π» β
VelocityPteroPower (VPP) offers a suite of commands to manage your Pterodactyl/Pelican servers directly from the Velocity console or by in-game players with the appropriate permissions.
The base command is /ptero. An alias /vpp is also available.
Case Sensitivity
Remember that server names used in commands must exactly match how they are defined in your velocity.toml and VPP's config.yml. These are often case-sensitive.
Core Commands β
/ptero start <serverName> β
- Alias:
/vpp start <serverName> - Description: Attempts to send a "start" signal to the specified server via the panel API.
- Arguments:
<serverName>: (Required) The name of the server to start.
- Permission:
ptero.start - Usage Example:bash
/ptero start skyblock - Notes:
- Respects player start cooldowns (see
playerStartCooldownin config). - Checks if the server is already online or in the process of starting.
- Respects player start cooldowns (see
/ptero stop <serverName> β
- Alias:
/vpp stop <serverName> - Description: Attempts to send a "stop" signal (graceful shutdown) to the specified server via the panel API.
- Arguments:
<serverName>: (Required) The name of the server to stop.
- Permission:
ptero.stop - Usage Example:bash
/ptero stop creative
/ptero restart <serverName> β
- Alias:
/vpp restart <serverName> - Description: Attempts to send a "restart" signal to the specified server via the panel API.
- Arguments:
<serverName>: (Required) The name of the server to restart.
- Permission:
ptero.restart - Usage Example:bash
/ptero restart survival
/ptero list β
- Alias:
/vpp list - Description: Displays a pretty, MiniMessage-formatted list of all managed servers, including their status, current player count, and TTL (time-to-shutdown).
- Permission:
ptero.list - Notes:
- Status is determined by your configured
serverStatusCheckMethod. - TTL shows:
- A live countdown if a shutdown is already scheduled.
- The configured per-server
timeout(as a preview) when the server is currently empty but no countdown has started yet. βfor servers marked inalwaysOnline.
- Status is determined by your configured
/ptero info <serverName> β
- Alias:
/vpp info <serverName> - Description: Shows a detailed, MiniMessage-formatted panel for the specified server, including status, players, CPU, memory, disk, network I/O, and uptime.
- Arguments:
<serverName>: (Required) The name of the server.
- Permission:
ptero.info - Notes:
- Live resource usage is fetched from your panel and is cached for
resourceCacheSecondsto avoid spamming the API. - CPU and disk limits are shown only when configured on the panel; unlimited limits are omitted (disk) or displayed as βunlimitedβ (memory).
- Usage values are colorized with a smooth greenβred gradient relative to their limits (or to 100% for CPU when unlimited) for quick visual insight.
- When a server was initiated by a player via VPP, the panel includes an extra line:
Started by: <player>.
- Live resource usage is fetched from your panel and is cached for
/ptero history [playerName|uuid] β
- Alias:
/vpp history [playerName|uuid] - Description: Displays a pretty, in-memory move history for a player (latest first). Shows server-to-server transitions and disconnects.
- Arguments:
playerName|uuid: Optional. If omitted and you are a player, shows your history. You can also query by UUID.
- Permission:
ptero.history - Notes:
- Requires
moveHistory.enabled: trueinconfig.yml. - History is not persisted to disk; it resets on proxy restart.
- Tab-completion suggests online player names.
- Requires
Bulk & Utility Commands β
/ptero stopidle β
- Alias:
/vpp stopidle - Description: Attempts to stop all currently managed servers that are detected as empty (no players connected) AND are not listed in the
stopIdleIgnoresection ofconfig.yml. - Permission:
ptero.stopIdle - Notes:
- Player count is checked at the moment of command execution.
- This command respects API rate limits. If limits are hit, not all eligible servers may receive the stop signal in one go.
/ptero forcestopall [confirm] β
- Alias:
/vpp forcestopall [confirm] - Description:
Extreme Caution Advised!
This command attempts to send a "stop" signal to ALL servers managed by VPP, irrespective of player counts or the
stopIdleIgnorelist. Use with extreme care as it can be highly disruptive. - Permission:
ptero.forcestopall - Confirmation Protocol:
- Players:
- Execute
/ptero forcestopall. You will receive a warning and instructions. - Execute
/ptero forcestopall confirmwithin 30 seconds to proceed.
- Execute
- Console: Confirmation is bypassed when run from the console.
- Players:
- Notes: Also respects API rate limits.
/ptero forcestartall [confirm] β
- Alias:
/vpp forcestartall [confirm] - Description:
Resource Heavy Operation!
This command attempts to send a "start" signal to ALL servers managed by VPP. Ensure your host has sufficient resources (CPU, RAM, disk I/O) before proceeding.
- Permission:
ptero.forcestartall - Confirmation Protocol:
- Players:
- Execute
/ptero forcestartall. You will receive a warning and instructions. - Execute
/ptero forcestartall confirmwithin 30 seconds to proceed.
- Execute
- Console: Confirmation is bypassed when run from the console.
- Players:
- Notes: Respects API rate limits; not all servers may receive the start signal immediately if the panel is rate-limiting.
/ptero whitelistReload β
- Alias:
/vpp whitelistReload - Description: Forces an immediate re-fetch and update of the
whitelist.jsonfile for all servers configured withwhitelist: true. - Permission:
ptero.whitelistReloadMC Server Soft Incompatibility
This command (and the whitelist feature it manages) is not supported if your panel is MC Server Soft, as VPP cannot fetch files from it.
/ptero reload β
- Alias:
/vpp reload - Description: Reloads VPP's
config.ymlandmessages.ymlfiles. This allows most configuration changes to be applied without a full Velocity proxy restart. - Permission:
ptero.reload - Notes:
- Some settings, like
apiThreads, will still need a full proxy restart to take effect. - The panel API client will be re-initialized if
pterodactyl.url,pterodactyl.apiKey, or the detected panel type changes upon reload.
- Some settings, like
/ptero apithreads β
- Alias:
/vpp apithreads - Description: Displays API executor thread details: configured
apiThreads, detected server count, auto baseline (2x servers, clamped 4..64), and the final threads currently in use. Helps verify whether your configured value overrides the baseline. - Permission:
ptero.info - Notes:
- Thread pool size is computed on startup or reload. Changing
apiThreadsrequires a reload/restart to apply. - Setting
apiThreadshigher than the baseline will override the auto-calculated value.
- Thread pool size is computed on startup or reload. Changing
/ptero help β
- Alias:
/vpp help - Description: Displays a summary of available VPP commands and their basic usage.
- Permission: None required by default.
INFO
Using Commands: Replace <serverName> with the exact name of the server as it is defined in your Velocity velocity.toml and in the servers section of the VelocityPteroPower config.yml. Command and server names are typically case-sensitive.
