Skip to content

Quozul/PterodactylPowerAction

Repository files navigation

PterodactylPowerAction

GitHub CI Latest Release License Discord

A resource-saving Velocity plugin that automatically manages your Minecraft servers by starting them on demand and shutting them down when idle, using either the Pterodactyl API or shell commands.

Important

Support for this project is limited as I don't use it in production anymore.


Community & Support

If you have any questions or suggestions, join the Discord server!

Features

🔌 Energy & Resource Saving

Automatically shuts down empty servers after a configurable time with no players connected (default: 1 hour).

🚀 On-Demand Server Startup

Starts servers only when players connect, optimizing resource usage.

🔄 Seamless Player Experience

Redirects players to a lightweight waiting server during startup and transfers them automatically once the server is ready.

🛡️ Kick Protection

Optionally redirects players to the waiting server when they are kicked from the backend server instead of disconnecting them.

🔐 Whitelist Verification

Validate players against per-server whitelists before letting them join or start the server.

🧰 Flexible Implementation

Works with the Pterodactyl Panel API or via direct shell commands for self-hosted setups.

⚙️ Highly Configurable

Supports customizable shutdown delays, multiple server status check methods, and adjustable shutdown behavior on proxy restart.
👉 See the Wiki for full details.

🌐 Multilingual Support

Automatically translates messages based on the client’s language (English, German, French).

🔍 Diagnostic Tools

Includes a built-in doctor command to validate configuration and help troubleshoot issues.

How it Works

When a player tries to connect to an offline server, they're temporarily sent to your waiting server while PterodactylPowerAction starts their requested destination. Once the server is ready, they're automatically transferred. The plugin monitors player activity and shuts down empty servers to save resources.

server-is-starting.png
Shader is Photon.

Plus Version

You can find more features on the plus branch.


Documentation

The documentation is available on the wiki of this GitHub repository.


Waiting/Limbo servers

Here is a small list of recommended lightweight servers software to use as waiting server:

Note that the waiting server does not have to be a limbo server specifically, it can be any server as long as it is always accessible. If you have a dedicated lobby server in your network, you can use that, no need for a dedicated limbo server!

Motivations

I am running Minecraft servers on dedicated hardware at home, I wanted to save energy costs and memory usage by stopping empty servers. Running the waiting server on a low power ARM Single Board Computer can also further save costs.


Contributing

Contributions are welcome! If you encounter any issues or have suggestions for improvement, please submit an issue or pull request on GitHub. Make sure to follow the existing code style and include relevant tests.

  1. Fork the repository.
  2. Create a new branch git checkout -b <branch-name>.
  3. Make changes and commit git commit -m 'Add some feature'.
  4. Push to your fork git push origin <branch-name>.
  5. Submit a pull request.

About

A Velocity plugin to start and stop servers based on if players are online. Useful to save energy costs.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages