Battery Management
A plugin to inform about battery status, save energy after inactivity and inform about low / high battery charge.
Battery Management
About
Minecraft Paper Plugin to save energy after inactivity and inform about low / high battery charge. This is thought for small local servers that are running on old laptops or other devices with a battery. It (currently) has no permission set on it's command(s), which means everyone is able to see the battery status.
Suggestions
If you have any suggestions, found a bug or have a feature request, please feel free to contact me! <br/> The plugin is currently also only available for 1.20.1 on paper, but write me a DM and I can make it available for your desired version. <br/> My discord username is `eneas._`.
Commands
- /battery [<percentage> | <status>]
<p>Requests and returns the current battery percentage, status, or both if no argument is specified.
Usage
The plugin can be configured to check the battery every given amount of minutes, and broadcast a warning in the chat if the battery is below a specified threshold and discharging or above another specified threshold and charging (default low is 10% and high is 90%). <br/> It also has a feature to stop the server after a given duration of inactivity. This works by testing if no players are online and that the last player left and the last console command was executed, before this duration. If enabled, it also creates a marker file at a given path, so that the server start-script can test if the file exist and trigger further actions, like completely shutting down the device.
Configuration
Default plugin config:
```yaml battery: enabled: true # Disable battery checks if set to false warning_thresholds: high: 90 # Warn if battery is above this percentage low: 10 # Warn if battery is below this percentage check_interval: "5m" # How often to check battery level
inactivity: enabled: true # Disable auto-shutdown if set to false max_duration: "15m" # Max inactivity time before shutdown check_interval: "5m" # How often to check for inactivity shutdown_info: file: "/tmp/battery_management/shutdown.info" # File indicating a shutdown request ```
Example scripts to start server and shutdown if plugin stopped server:
Linux
```bash #!/bin/bash
java -Xms2G -Xmx2G -XX:+UseG1GC -jar /Path/to/paper-server.jar --nogui
FILE="/tmp/battery_management/shutdown.info"
if [ -f "$FILE" ]; then rm -f "$FILE" shutdown now fi ```
Windows
```batch @echo off setlocal
java -Xms2G -Xmx2G -XX:+UseG1GC -jar C:Pathtopaper-server.jar --nogui
set "file=C:WindowsTempbattery_managementshutdown.info" IF EXIST "%file%" ( del "%file%" shutdown -s -t 0 )
endlocal ```