Sync Core es una utilidad backend para ejecutar y gestionar un servidor Java (por ejemplo, Hytale). Su objetivo es sincronizar y automatizar el manejo de mods y assets, vigilar cambios en directorios, monitorear el TPS del servidor y descargar actualizaciones desde GitHub, todo desde una consola central.
Este README explica cómo funciona y cómo usarlo, no cómo compilarlo.
- Java 25 (versión usada para el proyecto).
- Conexión a internet solo si se usan actualizaciones desde GitHub.
Al iniciar:
- Carga
config.yml. - Determina la ruta del servidor (pregunta por consola si no es válida).
- Crea carpetas locales:
mods/assets/
- Inicia el proceso del servidor (JAR configurado).
- Activa watchers de carpetas.
- Inicia el monitor de TPS.
- Arranca una consola backend interactiva.
Al cerrar:
- Detiene el servidor.
- Sincroniza
mods/local →Server/mods. - Cierra watchers y el monitor TPS de forma segura.
-
Main
- Punto de entrada del sistema.
- Inicializa configuración, watchers, monitor TPS y consola.
-
BackendConsole
- Consola interactiva para controlar el sistema en caliente.
-
JarProcessManager
- Inicia y controla el proceso Java del servidor.
- Permite enviar comandos directamente al servidor.
-
WatcherRegistry / AssetsWatcher
- Observan carpetas locales o externas.
- Sincronizan cambios sin reiniciar el servidor.
-
TpsMonitor
- Supervisa el TPS del servidor usando
monitor.yml.
- Supervisa el TPS del servidor usando
-
GithubService (opcional)
- Descarga mods/assets desde releases de GitHub.
- Gestionado por
updates.yml.
server:
basePath: "/ruta/al/servidor"
jarName: "server.jar"
args: "--assets ../Assets.zip --backup --backup-dir backups --backup-frequency 30"
watchers:
- path: "/ruta/a/carpeta"Campos clave:
server.basePath→ Ruta donde existe la carpetaServer/.server.jarName→ JAR del servidor que se ejecutará.server.args→ Argumentos pasados al servidor.watchers→ Carpetas que se vigilan automáticamente.
Controla el comportamiento del monitor de TPS.
Puede recargarse en caliente desde la consola con:
backend reload-config
Define repositorios de GitHub a comprobar y descargar.
Usado únicamente si GithubService está habilitado.
Una vez iniciado Sync Core, puedes usar los siguientes comandos:
watch add <ruta> Añade un watcher y lo guarda en config.yml
watch remove <ruta> Elimina un watcher
watch list Lista watchers activos
backend send <comando> Envía un comando al servidor
backend reload-config Recarga monitor.yml
updates list Lista repos configurados
updates check Comprueba y descarga actualizaciones
updates download <repo> Descarga un repo específico
updates download all Descarga todos los repos
exit / quit Cierre limpio del sistema
- Sync Core no recompila ni modifica el servidor, solo lo gestiona.
- Los watchers permiten desarrollo rápido sin reinicios constantes.
- Si
updates.ymlno existe, el sistema sigue funcionando normalmente.
MIT License