AutoPlug-Client is a standalone, executable Java program that has multiple execution modes: Server-Wrapper, CLI-Tool, Background-Service. Its main purpose is to automate updating of any sofware related to servers and simplify server maintenance in general. While all server types are compatible (including Steam game servers), the majority of its features cater specifically to Minecraft, which is renowned as the world's top-selling game and boasts an exceptionally extensive modding community.
- Download stable/beta versions at the AutoPlug-Releases repo.
- Follow the AutoPlug-Client-Development and see what we are currently working on.
- Support the development by donating.
- Issues or questions? Checkout the FAQ and/or join our Discord, for live chat/voice support.
- Automated self, server-software, plugins, mods and JRE (Java Runtime Enviornment) updating
- Scheduled server restarts
- Automated, modularized backup creation
- Fast, asynchronous, multithreaded task execution
- Have synchronized (shared) folders
- Web-Panel for starting, stopping restarting the server and viewing the last updating results summaries
Premium AutoPlug-Web features:
- Online Console
- Online File-Manager
- Staff Access
- Plugin details database
Community driven development, meaning the lead developer will not develop new features and rely on pull requests by others, except for security issues and critical bugs.
- Docker support: https://github.com/lkkuma/AutoPlug-Client-Docker
- Pterodactly panel support: https://github.com/ImLunaUwU/PteroPlug
Developers:
You can also use AutoPlug in your projects by adding it as a dependency via Maven/Gradle/Sbt/Leinigen. Some useful classes would be the AutoPlugConsole for example, which lets you execute AutoPlug commands programmatically:
AutoPlugConsole.executeCommand(".check plugins");
AutoPlugConsole.executeCommand(".check server");
// etc...
Thank you for considering to contribute, the community 💙 that! Just keep these things in mind:
- Create an issue first if you want to do big changes, so we can discuss it.
- Remember that big changes also require you to write tests.
- You can pick and work on any open issue. Let us know that you are working on it.
- Avoid using and writing static methods/fields/classes to ensure minimal memory usage.
Beginners:
Bounties:
Some open issues are marked with a tag/label like this: bounty: 15€
(show the list), which means that the first person
creating a pull request for fixing/closing that issue will receive the bounty (15€). Note that your code must have
at least one test demonstrating that the implemented fix/feature is working. Also note that payments are only made via PayPal, so make sure
that the public Github page of your profile, with which you commit the pull request, contains your PayPal email address somewhere.
By commiting to an issue with the bounty tag you agree to these terms.
Details:
- Written in Java, with JDK 8, inside of IntelliJ IDEA
- Built with 1JPM, command:
java ./src/main/java/JPM.java
(if you want to directly run it too appendandRun
at the end).
Note that this list may be outdated. Check the build.gradle file for our current dependencies.
- AutoPlug-Core contains frequently used code accross all AutoPlug projects in one jar.
- Dream-Yaml is used for handling YAML files.
- Better-Thread enables display of 'live-tasks'.
- For console coloring and task display Jansi and Jline is used.
- Zip4j to unpack and handle jar/zips.
- Server restarts are scheduled with Quartz.