Exportando para servidores dedicados

Si quieres ejecutar un servidor dedicado para tu proyecto en una computadora que no tiene GPU o servidor de pantalla disponible, deberás usar una compilación server de Godot.

Plataformas soportadas

Si tu proyecto usa C#, querrás usar un binario de servidor con Mono habilitado.

Binarios "headless" versus "server"

La página de descarga de server ofrece dos tipos de binarios con varias diferencias.

  • Server: Utiliza este para ejecutar servidores dedicados. Este no contiene funcionalidad de editor, lo que lo convierte en más pequeño y optimizado.
  • Headless: Este binario contiene funcionalidad de editor y está destinada para ser usada en exportación de proyectos. Este binario puede ser usado para servidores dedicados pero no es recomendado ya que es más grande y menos optimizado.

Exportando un archivo PCK

There are two ways to export a project for a server:

  • Create a Linux/X11 export preset, define a custom Release export template that points to the server binary then export the project as usual.
  • Export a PCK file only, preferably from a Linux/X11 export preset.

Both methods should result in identical output. The text below describes the PCK file approach.

Once you've downloaded a server binary, you should export a PCK file containing your project data. After creating the export preset, click Export PCK/ZIP at the bottom of the Export dialog then choose a destination path. The Export With Debug checkbox in the file dialog has no bearing on the final PCK file, so you can leave it as-is.

Ver Exportando proyectos para más información.

Nota

If you're exporting the project from a headless editor, call the headless editor with the --export-pack option while in the project folder to export only a PCK file.

Nota

El archivo PCK incluye recursos que normamente no son necesarios para el servidor, como texturas y sonidos. Esto quiere decir que el PCK será más grande de lo que debería. El soporte para remover recursos innecesarios de un PCK para uso en servidor está planeado para versiones futuras de Godot.

Lo bueno de esto es que permite el mismo archivo PCK para ser usado tanto por cliente como en un servidor dedicado. Esto puede ser útil si quieres distribuir un único archivo que pueda ser usado tanto de cliente como de servidor dedicado.

Preparando el servidor para distribución

Después de descargar o compilar el binario server, deberás ubicarlo en la misma carpeta que el PCK que exportaste. El binario server deberá tener el mismo nombre que el PCK (excluyendo la extensión). Esto le permite a Godot detectar y usar el archivo PCK automáticamente. Si quieres comenzar un servidor con un PCK que tiene un nombre distinto, puedes especificar la ruta al archivo PCK usando el argumento de línea de comandos --main-pack:

./godot-server --main-pack my_project.pck

Siguientes pasos

En Linux, para hacer que tu servidor dedicado reinicie después de un crash o reinicio del sistema, puedes crear un servicio systemd. Esto también te dejará ver registros de servidor de un modo más conveniente con registro automático y rotativo provisto por systemd.

Si tienes experiencia con contenedores, también puedes ver de colocar tu servidor dedicado en un contenedor Docker. De este modo, puede ser usado fácilmente en un sistema de escalado automático (que está por fuera del alcance de este tutorial).