AutoPlug-Client es un programa Java ejecutable e independiente que tiene múltiples modos de ejecución: Server-Wrapper, CLI-Tool, Background-Service. Su propósito principal es automatizar la actualización de cualquier software relacionado con servidores y simplificar el mantenimiento de servidores en general. Aunque todos los tipos de servidores son compatibles (incluidos los servidores de juegos Steam), la mayoría de sus funciones están diseñadas específicamente para Minecraft, que es reconocido como el juego más vendido del mundo y cuenta con una comunidad de modding excepcionalmente extensa.
Enlaces
- Descarga versiones estables/beta en el repositorio AutoPlug-Releases.
- Sigue el desarrollo en AutoPlug-Client-Development y ve en qué estamos trabajando actualmente.
- Apoya el desarrollo mediante donaciones.
- ¿Problemas o preguntas? Consulta el FAQ y/o únete a nuestro Discord, para soporte en chat/voz en vivo.
¿Qué puede hacer?
- Actualización automatizada del propio programa, software del servidor, plugins, mods y JRE (Java Runtime Environment)
- Reinicios programados del servidor
- Creación automatizada y modularizada de copias de seguridad
- Ejecución rápida, asincrónica y multihilo de tareas
- Carpetas sincronizadas (compartidas)
- Panel web para iniciar, detener, reiniciar el servidor y ver resúmenes de los últimos resultados de actualización
- Consola en línea
- Administrador de archivos en línea
- Acceso para el personal
- Base de datos de detalles de plugins
Estado
Estable y completo en funciones, por lo que el desarrollo es comunitario, lo que significa que el desarrollador principal no desarrollará nuevas funciones y dependerá de pull requests de otros, excepto para problemas de seguridad y errores críticos.Proyectos comunitarios
- Soporte Docker: https://github.com/lkkuma/AutoPlug-Client-Docker
- Soporte para panel Pterodactly: https://github.com/ImLunaUwU/PteroPlug
También puedes usar AutoPlug en tus proyectos agregándolo como una dependencia a través de Maven/Gradle/Sbt/Leinigen. Algunas clases útiles serían AutoPlugConsole, por ejemplo, que te permite ejecutar comandos de AutoPlug de forma programática:
AutoPlugConsole.executeCommand(".check plugins");
AutoPlugConsole.executeCommand(".check server");
// etc...
Contribuir 
Gracias por considerar contribuir, ¡la comunidad 💙 eso! Solo ten en cuenta estas cosas:
- Crea un issue primero si quieres hacer grandes cambios, para que podamos discutirlo.
- Recuerda que los grandes cambios también requieren que escribas pruebas.
- Puedes elegir y trabajar en cualquier issue abierto. Avísanos que estás trabajando en él.
- Evita usar y escribir métodos/campos/clases estáticos para asegurar un uso mínimo de memoria.
Algunos issues abiertos están marcados con una etiqueta/label como esta: bounty: 15€ (ver la lista), lo que significa que la primera persona
que cree un pull request para arreglar/cerrar ese issue recibirá la recompensa (15€). Ten en cuenta que tu código debe tener
al menos una prueba que demuestre que la solución/funcionalidad implementada funciona. También ten en cuenta que los pagos solo se hacen vía PayPal, así que asegúrate
de que la página pública de Github de tu perfil, con el que haces el commit del pull request, contenga tu dirección de correo electrónico de PayPal en algún lugar.
Al comprometerte con un issue con la etiqueta de recompensa aceptas estos términos.
Detalles:
- Escrito en Java, con JDK 8, dentro de IntelliJ IDEA
- Construido con 1JPM, comando:
java ./src/main/java/JPM.java
andRun al final).Bibliotecas
Ten en cuenta que esta lista puede estar desactualizada. Revisa el archivo build.gradle para nuestras dependencias actuales.
- AutoPlug-Core contiene código frecuentemente usado en todos los proyectos AutoPlug
- Dream-Yaml se usa para manejar archivos YAML.
- Better-Thread permite mostrar 'tareas en vivo'.
- Para el coloreado de consola y visualización de tareas se usan Jansi y Jline.
- Zip4j para descomprimir y manejar jar/zip.
- Los reinicios de servidor se programan con Quartz.