¿Como crear un servidor de Minecraft con Geyser?

minecraft servidor mods geyser

Tiempo de lectura:

Publicado:

Características de este proyecto

Sistema operativo y herramientas

  • Ubuntu 24.04.1 LTS

Sobre la versión de Minecraft

  • Minecraft Server 1.21.1 para Java (con Fabric)

Sobre los mods

  • Fabric API
  • Geyser
  • Floodgate

Buenas prácticas al usar Linux

Usualmente lo primero que debemos hacer al usar una máquina con Linux es actualizar el software.

Este comando actualiza la lista de los paquetes disponibles:

Terminal window
sudo apt update

Este comando actualiza los paquetes:

Terminal window
sudo apt upgrade

Una vez que hacemos esto, podemos comenzar el proceso real de la creación de nuestro servidor.

Instalando Java

Para instalarlo podemos correr el siguiente comando:

Terminal window
sudo apt install openjdk-21-jdk-headless

Esto instalará una versión de Java compatible con la versión 1.21.1 de Minecraft.

Ver detalle

Usualmente el comando:

Terminal window
sudo apt install default-jre-headless

Nos da la versión de Java necesaria, pero en este caso necesitamos una versión más reciente que sea compatible con la versión de Minecraft más actual.

Y revisar la versión que fue instalada:

Terminal window
java -version

Creando una nueva carpeta

Ahora vamos a crear una nueva carpeta para guardar todos los archivos necesarios en un sólo lugar:

Terminal window
mkdir NOMBRE_DE_CARPETA

En nuestro caso:

Terminal window
mkdir fabric-server

Y podemos entrar en ella utilizando:

Terminal window
cd NOMBRE_DE_CARPETA

Terminal window
cd fabric-server

Consiguiendo Minecraft

Ahora debemos conseguir la versión de Minecraft para servidor, en este caso estaremos usando la versión de Fabric para poder agregar los mods que vamos a usar.

Podemos dirigirnos a su sitio FabricMC, seleccionar la configuración que queremos. En este caso dejamos al configuración por defecto.

Dar clic derecho en el botón de descarga y seleccionar Copiar dirección del enlace.

Ahora podemos correr el comando:

Terminal window
wget -O server.jar LINK

Donde LINK es el enlace que copiamos:

Terminal window
wget -O server.jar https://meta.fabricmc.net/v2/versions/loader/1.21.1/0.16.5/1.0.1/server/jar

La parte -O server.jar hace que el archivo se guarde con el nombre server.jar.

Corriendo el servidor

Ahora debemos decirle a Java que ejecute el archivo que acabamos de descargar:

Terminal window
java -Xms2g -Xmx4g -jar server.jar nogui

Expliquemos parte por parte:

  • java: Es el software que bajamos en uno de los primeros pasos.
  • -Xms2g: Le indica la memoria mínima con la que debe comenzar el servidor. En este caso 2gb.
  • -Xmx4g: Le indica la memoria máxima que puede ocupar el servidor. En este caso 4gb.
  • -jar: Le indica el tipo de de archivo a correr.
  • server.jar: La dirección del archivo que descargamos
  • nogui: Le indica que ejecute sin interfaz gráfica. Es decir, sin mandar nada a la pantalla.

Nos saldrá un mensaje como este:

Terminal window
You need to agree to the EULA in order to run the server. Go to eula.txt for more info.

Quiere decir que debemos aceptar los términos y condiciones del juego para poder correrlo.

Para eso debemos modificar el archivo de texto que fue creado después de correr este comando.

Para modificarlo podemos hacer lo siguiente:

Terminal window
sudo nano eula.txt

Debemos modificar la parte que dice false y escribir true.

Para sobreescribir el archivo debemos presionar ctrl+O y luego Enter.

Para salir del editor de texto podemos presionar ctrl+X.

Ahora podemos correr el juego.

Creando un script para levantar el servidor

Si no queremos escribir el mismo comando cada que levantamos el servidor, podemos crear un script.

Terminal window
sudo nano start.sh

Se abrirá el editor de texto, podemos pegar aquí el comando para levantar el server.

Guardarlo con ctrl+O y Enter y cerrar el editor con ctrl+X.

Para correr el script debemos darle permisos para ser ejecutado. Podemos ejecutar:

Terminal window
sudo chmod +x DIRECCION

En este caso DIRECCION es start.sh:

Terminal window
sudo chmod +x start.sh

Ahora podemos correrlo ejecutando:

Terminal window
./start.sh

Si queremos parar el servidor podemos escribir stop en la consola de Java.

Instalando los mods para crossplay

Hasta ahora sólo hemos creado el servidor y creando un mundo sin mods.

Para agregar el mod que nos permite aceptar jugadores de la edición Bedrock dentro de la edición Java necesitamos el mod Geyser. En esta página podemos encontrar la documentación para instalarlo.

Debemos ir a la página de descarga, buscar la versión de nuestro Launcher, en este caso es Fabric. Y conseguir el enlace de descarga.

Ahora podemos bajarlo y guardarlo en ./mods/fabric.jar:

Terminal window
wget -O ./mods/fabric.jar https://download.geysermc.org/v2/projects/geyser/versions/latest/builds/latest/downloads/fabric

Para correr este mod correctamente también debemos bajar FabricAPI.

Debemos dar clic en Download, seleccionamos la versión de Minecraft que tenemos y clic derecho en el botón de descarga para conseguir el enlace.

Terminal window
wget -O ./mods/fabric-api.jar https://cdn.modrinth.com/data/P7dR8mSH/versions/gQS3JbZO/fabric-api-0.103.0%2B1.21.1.jar

Y para asegurarnos de que los usuarios de Bedrock no necesiten una cuenta de la versión Java podemos agregar Floodgate.

Seleccionamos la versión, copiamos el enlace y lo descargamos en la carpeta de mods:

Terminal window
wget -O ./mods/floodgate.jar https://cdn.modrinth.com/data/bWrNNfkb/versions/iWEfqepR/Floodgate-Fabric-2.2.3-SNAPSHOT%2Bbuild.31.jar

Ahora debemos acceder al archivo de configuración de Geyser:

Terminal window
sudo nano ./config/Geyser-Fabric/config.yml

Y cambiar la sección que dice auth-type de online a floodgate.

Cómo abrir los puertos para que más gente se una

Ahora para hacer que la gente pueda unirse, debemos abrir el puerto por defecto que utiliza Minecraft para las conexiones.

Este comando habilita el protocolo TCP:

Terminal window
sudo ufw allow 25565/tcp

Este comando habilita el protocolo UDP:

Terminal window
sudo ufw allow 25565/udp

Cómo levantar el server en segundo plano

Para poder seguir usando la consola del sistema operativo sin problemas debemos levantar el servidor con una herramienta llamada screen:

screen

Esto abrirá una “nueva consola” donde podemos repetir los pasos para levantar el servidor que ya instalamos.

Para entrar en la carpeta del server:

cd fabric-server

Y correr el script del server

./script.sh

Para salir de la consola actual, que esta ejecutando Java, sin que se termine el proceso, podemos presionar ctrl+A seguido de ctrl+D. Esto cerrará la consola que creamos con screen sin detener lo que sucedía en ella.

Ahora podemos usar nuestra consola del sistema operativo sin que esté ocupada por la ejecución de otro programa.

Comentarios