SKCraft Launcher: tutorial para principiantes

9 min • 13 de abril de 2023

Introducción#

Poca gente conoce launchers alternativos para Minecraft. Al fin y al cabo, el launcher oficial es más que suficiente para la mayoría de personas. Sin embargo, existen muchas alternativas muy buenas, siendo una muy destacable MultiMC, que permite la fácil instalación de modpacks, y hace de los perfiles su punto principal. Sin embargo, visitando en internet servidores de mods de Minecraft, es posible encontarse con alguno que dispone de su launcher propio, con su propio nombre y logo. Dos de las plataformas más utilizadas para la creación de estos launchers son SKCraft Launcher y MCUpdater. Nosotros utilizaremos SKCraft Launcher, pero el formato de los modpacks que utilizaremos será el mismo para ambas plataformas.

Utilizaré en todo momento los artículos del GitHub de SKCraft Launcher, que se pueden encontrar aquí. La información en GitHub estará siempre más actualizada y por tanto recomiendo ojearla en caso de encontrar algún error.

Requisitos#

El requisito más importante es disponer de una forma de hostear una página web estática. Existen muchas plataformas (¡algunas incluso gratuitas!) que permiten hacer esto, y varias se detallan en el GitHub de SKCraft Launcher. Utilizaremos este host para subir los archivos que luego serán descargados por el launcher.

Instalación#

El primer paso es tener instalado un JDK (Java Development Kit), que nos permitirá compilar el launcher. Según el repositorio de GitHub, la versión recomendada es JDK 8. También facilita las cosas tener instalado Git, pero dado que la instalación en Windows es complicada, no voy a escribir el procedimiento, ya que no es necesario tenerlo.

Para descargar los archivos necesarios, nos dirigimos al repositorio de Github del launcher (link), hacemos click en “Code” y luego en “Download Zip”. Extraemos los archivos en una carpeta vacía. Si disponemos de Git instalado el procedimiento es más sencillo, nos dirigimos a la carpeta dónde queramos descargarlo y, en una consola de comandos, ejecutamos git clone https://github.com/SKCraft/Launcher.

A continuación basta con ejecutar el archivo “build.bat” haciendo doble click, y si todo va bien, debería compilarse mostrando un mensaje de “Build Succeeded”. Ahora disponemos de varias carpetas extra que se han creado:

  • creator-tools/build/libs/ dispone de una interfaz gráfica para crear modpacks
  • launcher/build/libs/ es el launcher como tal
  • launcher-fancy/build/libs/ es el launcher con una apariencia oscura (¡pruébalo!)
  • launcher-bootstrap/build/libs/ es el programa auto-actualizable (más abajo hablo sobre esto)
  • launcher-builder/build/libs/ son herramientas de la linea de comandos para crear modpacks

Customizar el launcher#

Customizar en este caso significa añadir nuestro propio logo y nuestro nombre al launcher, para que parezca más profesional. Para ello es tan sencillo como entrar a launcher/src/main/resources/com/skcraft/launcher, y ir cambiando los archivos que aquí se encuentran. Vamos a cambiar varias cosas_

  1. En launcher.properties (abrir con un editor de texto), cambiamos lo que se encuentra a la derecha del “=” en las líneas que empiezan con newsUrl, packageListUrl y selfUpdateUrl para que apunten a nuestra página web. Si nuestra página web es http://ejemplo.com, el archivo deberá verse así:
newsUrl=http://ejemplo.com/news.html
packageListUrl=http://ejemplo.com/packages.json
selfUpdateUrl=http://ejemplo.com/latest.json
  1. Cambiamos las imagenes (las más importantes son icon.png y instance_icon.png) a las que nosotros queramos. Es importante que la resolución de las imágenes sea la misma que las originales.
  2. Si queremos traducir nuestro launcher al español, debemos modificar el archivo Launcher.properties que se encuentra en la carpeta lang. Puedes bucar por internet una versión ya traducida o traducirlo manualmente. Aquí tienes mi versión traducida, que puede estar incompleta ya que es para uso personal (el archivo que nos interesa es “Launcher.properties”, no el otro).
  3. Cambia la línea que comienza por launcherShortname como en el paso 1 para que contenga el nombre de tu launcher.

Por último notar que si la idea es utilizar el launcher-fancy, en launcher-fancy/src/main/resources/com/skcraft/launcher hay más imágenes que reemplazar, y si tienes pensado utilizar el programa auto-actualizable (más info abajo), hay más archivos que modificar en launcher-bootstrap/src/main/resources/com/skcraft/launcher, los cúales comentaré en su respectiva sección.

Crear el modpack#

La parte más importante, crear el modpack. Asumiré que ya tienes los mods descargados. Abre el archivo .jar localizado en creator-tools/build/libs/. Y hacemos click en “New Workspace”. Se debería abrir una ventana como la siguiente: Modpack Creator

Podemos ahora hacer click en “New Pack” y darle:

  • Un nombre de carpeta (para identificarlo)
  • Un título opcional (si no está puesto, se mostrará el nombre de carpeta)
  • Una versión de Minecraft para el modpack (por ejemplo. 1.20.1)

Las otras pestañas realizan distintas funciones que están descritas en la wiki, pero la más importante es “Launch”, que permite añadir parámetros al inicio del modpack. Creo que puede ser utilizado para iniciar Minecraft con más memoria RAM utilizando un parámetro como -Xmx4G (para 4 gigas), pero no lo he probado. De cualquier manera la asignación de RAM puede ser cambiada por el usuario más adelante.

Ahora al hacer click en el icono de “Open” en la barra de herramientas, se abrirá el explorador con la carpeta del modpack. Es MUY importante que en la carpeta “loaders” incluyas el archivo .jar del modloader que vayas a utilizar. Lo más probable es que sea forge, y para ello deberás descargar el .jar installer desde su web. Si descargas cualquier otro archivo no te funcionará. A continuación lo deberás meter en la carpeta loaders.

La carpeta src/ será la carpeta “raíz” de Minecraft, es decir, se convertiría en “.Minecraft”. Esto significa que si creamos una carpeta llamada “mods” dentro de “src” (src/mods), y en esa carpeta metemos nuestros mods, cuando el usuario instale el modpack la carpeta será copiada a la raíz de Minecraft, instalando así los mods. De esta manera, los mods deberán ir en esta carpeta y los archivos de configuración deberán ir en src/config. Mi recomendación es que si has descargado el modpack desde curseforge, entres a la carpeta contenedora y copies todas las carpetas alli presentes (podría haber más carpetas, como “resourcepacks” o “scripts”) y las copies a src. El archivo modpack.json se genera automáticamente por el programa y no debe ser modificado manualmente.

Cabe destacar que si tenemos una url directa a un mod, por ejemplo, el mod “JEI” se puede descargar desde https://ejemplo.com/mods/JEI-1.20.2.jar, podemos crear un archivo de texto en nuestra carpeta de mods llamado “JEI-1.20.2.jar.url” que contiene una única línea con el enlace. De esta manera se descargará automaticamente durante la instalación y no necesitaremos hostear ese mod en nuestra web.

Una vez hayamos acabado de configurar nuestro modpack, podemos probarlo desde el boton “Test”. Si todo funciona correctamente, deberemos generar los archivos para hostear pulsando en el botón “Build”. Tenemos que darle un nombre al “Manifest” (dejarlo por defecto es lo mejor) y una versión (que también recomiendo dejarla por defecto). Pulsamos en “Build”, y tras un rato… ¡Listo! Tendremos, en la carpeta que hemos establecido en “Output Directory”, los archivos que debemos subir a nuestra web.

Lo último que debemos hacer antes de subir los archivos a la web es generar un archivo “packages.json”, que le dirá al launcher que modpacks hay disponibles para descargar (¡y las versiones nuevas de estos!). Para ello nos vamos a la opción de “Build” de la barra de herramientas (la que no tiene el logo, más arriba), y hacemos click en la opción de “Generate packages.json”. Elegimos un directorio de salida (recomiendo utilizar el mismo que en el paso previo, ya que así todos los archivos a subir estarán en la misma carpeta), nos aseguramos de que “Package Listing Type” esté en packages.json (static) y de que nuestro modpack está seleccionado, y pulsamos “Generate”. Generate packages.json

Tras subir los archivos a la web, podremos probar nuestro launcher y ver si nos reconoce el modpack. Hay que tener en cuenta que si hay muchos mods subidos al servidor la velocidad de instalación puede ser lenta.

Auto-actualización#

El último punto que vamos a tratar consiste en la utilización del programa auto-actualizable de SKCraft. Nos permitirá actualizar el launcher como tal cuando queramos. Si lo único que queremos es actualizar los modpacks, no es necesario seguir este apartado y el archivo .jar encontrado en launcher/build/libs/ puede ser distribuido sin ninún problema.

NOTA: actualizar el modpack y actualizar el launcher no es lo mismo. El launcher actualizará automáticamente los modpacks al detectar una nueva actualización. El programa auto-actualizable es para administradores avanzados que quieran tener control total sobre el launcher y la opción de cambiarlo más tarde.

Para el programa actualizable debemos editar los archivos que se encuentran en launcher-bootstrap/src/main/resources/com/skcraft/launcher, en especial bootstrap.properties, en el que deberemos cambiar el valor de la línea latestUrl para que indice un archivo que llamaremos “latest.json” en nuestra web. De nuevo, si nuestra web es http://ejemplo.com/modpack, el archivo quedará así:

# (hay mas líneas, estas són sólo las que hay que cambiar)
latestUrl=https://ejemplo.com/modpack/latest.json
# Borrar el '#' de la línea de debajo si hemos decidido usar Launcher-fancy
# launcherClass=com.skcraft.launcher.FancyLauncher 

Ahora deberemos escribir manualmente el archivo latest.json que subiermos a la web, que debe ser de la siguiente manera:

{
    "version": "4.0.1",
    "url": "http://ejemplo.com/versions/4.0.1.jar"
}

En la versión recomiendo empezar por 0.0.1 y poner la versión inicial como 1.0.0. La versión deberá ser la misma que aparece en el archivo build.gradle que aparece en la carpeta inicial (la que hemos descomprimido o clonado con Git), y la versión deberá incrementarse siempre, tras una actualización del launcher.

Ahora basta subir el archivo latest.json a la dirección que hemos puesto en el archivo de propiedades (en el ejemplo, deberá quedar como http://ejemplo.com/modpack/latest.json), y el launcher como tal (el .jar que se encuentra en launcher/build/libs/ o en launcher-fancy/build/libs/) a la dirección que hemos escrito en el campo “url” del archivo latest.json. El archivo .jar que se encuentra en launcher-bootstrap/build/libs/ será el que se distribuya a los usuarios y se encargará de descargar la última versión del launcher y de ejecutarla sin intervención del usuario.

Siempre que queramos actualizar el launcher, deberemos crear un nuevo latest.json que sustituya al antiguo con la nueva versión y la nueva url al archivo .jar del launcher actualizado.

Truco: si quieres traducir el programa auto-actualizable al español, mi traducción está disponible en el mismo enlace que la del launcher como tal.

Conclusión#

Aquí da por acabado el tutorial de instalación y utilización de SKCraft Launcher. Si hay alguna duda recomiendo consultar la wiki que he enlazado al principio del artículo, y si no preguntar en el Discord de SKCraft (en inglés). En el siguiente tutorial, compartiré mi script que puede transformar cualquier modpack de Curseforge (con tan sólo el archivo manifest.json) a un modpack de SKCraft listo para jugar, utilizando archivos .url para una instalación más rápida.