Actualmente, solo hay una versión para Windows de V Rising Server disponible. Sin embargo, es posible ejecutar el servidor en un sistema Linux usando Wine..
Introducción y requisitos previos
Poco después compré este juego y jugué un rato en modo para un jugador., Quería jugar junto con amigos.. Y como ya tenia un VPS (con CentOS instalado) a mi disposición pensé por qué no usar eso. Entonces leí la guía oficial y descubrí que solo hay un servidor ejecutable para Windows.. Recordé otras guías que había visto que mostraban cómo usar Wine para ejecutar ejecutables de Windows y decidí probar con este juego y funcionó.. Así que aquí está mi guía sobre cómo hacerlo.. Como dije antes y en el título, hice esto en un sistema CentOS pero supongo que esta solución, en principio, también funcionaría en otras distribuciones de Linux..
Intenté que esta guía fuera fácilmente comprensible para todos.. Lo único que necesita saber es cómo usar la terminal y cómo editar archivos.. CentOS viene con vi como editor de texto que puede usarse para seguir esta guía, pero una explicación sobre cómo usar vi no forma parte de esta guía..
En esta guía los comandos comienzan con $,# o >. Comandos que comienzan con # debe ejecutarse al iniciar sesión como root o usando sudo. Comandos con $ puede ser ejecutado por un usuario normal y comandos con > son comandos para steamcmd. $, #, > no son parte de los comandos reales.
Requisitos
Para ejecutar el servidor necesitaremos Wine y xvfb.. Wine se usa para ejecutar ejecutables de Windows en LInux y usaremos xvfb para crear un monitor virtual., por lo que no necesitamos tener un monitor real conectado al servidor.
También necesitamos steamcmd para descargar y actualizar los archivos del servidor.. Instale los requisitos de steamcmd con:
# yum instalar glibc.i686 libstdc++.i686 -y
La forma más sencilla de instalar Wine es utilizando el repositorio EPEL., entonces lo agregamos así:
# yum instalar epel-liberación -y
Luego instalar Wine y xvfb.:
# mmm instalar vino -y # yum instalar xorg-x11-server-Xvfb -y
Instalando steamcmd
Antes de instalar steamcmd o el servidor, debemos crear un usuario que usaremos para ejecutar steamcmd y luego el servidor del juego.. Usar el usuario root para steamcmd o el servidor de juegos es un riesgo para la seguridad. Llamaré a este usuario Steam pero puedes elegir el nombre que quieras..
Cree el usuario e inicie sesión como este nuevo usuario.:
# usuario agregar vapor # su vapor
Luego nos movemos al directorio de inicio del nuevo usuario y creamos un directorio en el que instalaremos steamcmd y otro directorio para el servidor del juego.:
$ cd $ mkdir steamcmd $ cd steam cmd $ mkdir VRising
Ahora descargamos y extraemos el steamcmd.:
$ rizo -sql "https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz" | alquitrán zxvf -
Instalación del servidor del juego
Iniciamos steamcmd usando el script que se extrajo en el paso anterior.:
$ ./steamcmd.sh
La primera vez que inicie SteamCMD llevará algún tiempo y se descargarán las actualizaciones.. Una vez realizada la actualización, podemos usar steamcmd y como primer paso especificamos el directorio creado previamente como directorio de instalación para el juego.:
> force_install_dir VRising
Antes de descargar los archivos del servidor, debemos iniciar sesión en Steam, pero podemos usar el inicio de sesión anónimo.:
> iniciar sesión anónimo
El ID de la aplicación para el servidor V Rising es 1829350 para que podamos instalar el servidor así:
> actualización_aplicación 1829350
Una vez instalado el servidor, escriba
> abandonar
para salir del steamcmd.
Ejecutando y configurando el servidor del juego.
Ir al directorio donde instalamos el servidor.:
$ cd VRising
Y luego inicia el servidor así.:
$ exportar WINEARCH=win64 $ xvfb-run --auto-servernum --server-args='-pantalla 0 640x480x24:32' vino VRisingServer.exe -persistentDataPath ./save-data -logFile server.log
Esto iniciará el servidor y creará la partida guardada en el directorio que especificamos en el comando anterior como ruta de datos persistentes., en este caso la carpeta de datos guardados.
Espere un poco y luego cierre el servidor nuevamente presionando Ctrl-C.
Configuración
Cree la carpeta Configuración dentro del directorio de datos guardados:
$ mkdir guardar-datos/Configuración
Ahora copiamos la configuración predeterminada a este nuevo directorio.:
$ cp VRisingServer_Data/StreamingAssets/Settings/*.json save-data/Configuración
La carpeta Configuración ahora contiene dos archivos de configuración., ServerHostSettings.json para la configuración del host como el nombre del servidor, contraseña, puertos, etc y ServerGametSettings.json para configuraciones de juegos como tasas de creación, multiplicadores de daño, etc..
Puede utilizar su editor de texto preferido para editar la configuración de esos archivos..
Usando systemd para controlar el servidor
Ahora podríamos usar el comando que usamos antes para iniciar el servidor, pero esto requeriría que mantengamos siempre abierta la terminal que estamos usando para mantener el servidor en funcionamiento.. En su lugar, usaremos systemd para configurar el servidor como servicio que se ejecuta en segundo plano..
Para facilitar las cosas, primero crearemos un script de shell para iniciar el servidor.. Cree un nuevo archivo usando un editor de texto de su elección con el siguiente contenido:
#!/exportación bin/bash WINEARCH=win64 /usr/bin/xvfb-run --auto-servernum --server-args='-screen 0 640x480x24:32' /usr/bin/wine VRisingServer.exe -persistentDataPath server1_saves/ -logFile server.log
Guarde el archivo como run_server.sh en el directorio del servidor del juego.. Haga que el archivo sea ejecutable con este comando:
$ chmod y +x run_server.sh
Esto es todo lo que debemos hacer como usuario de Steam.. Ahora podemos volver a un usuario con privilegios de root usando
$ salida
Cree un nuevo archivo para el servicio systemd con el siguiente contenido:
[Unidad]
Después=red.objetivo
[Servicio]
User=steam
Group=steam
WorkingDirectory=/home/steam/steamcmd/VRising
ExecStart=/home/steam/steamcmd/VRising/run_server.sh
[Instalar]
WantedBy=multiusuario.objetivo
y guarde el archivo como
/etc/systemd/system/VRising.service
Ahora podemos usar systemctl para iniciar y detener el servidor.. Para iniciar el uso del servidor:
# systemctl iniciar VRising
Si queremos detener el servidor podemos usar:
# systemctl detener VRising
También podemos comprobar si el proceso aún se está ejecutando.:
# estado systemctl VRising
Tenga en cuenta que si el servidor falla, esto aún podría mostrar que el proceso está activo porque solo el proceso del servidor falló pero Wine aún se está ejecutando..
Configurando el cortafuegos
Ahora que tenemos el servidor ejecutándose usando systemd, lo unico que queda por hacer es configurar el firewall.
A menos que hayas cambiado esto en ServerHostSettings.json, el juego usa los puertos udp. 9876 y 9877.
Agregue reglas para estos dos puertos al firewall:
# firewall-cmd --add-port=9876/udp # firewall-cmd --add-port=9877/udp
Luego persistimos en las nuevas reglas para que el puerto permanezca abierto incluso después de reiniciar y recargar el firewall.:
# firewall-cmd --tiempo de ejecución a permanente # firewall-cmd --recargar
Actualizando el juego
Actualizar es simple. Primero apague el servidor y, al igual que cuando instaló el juego, inicie sesión con el usuario que creamos para steamcmd e inicie steamcmd.:
# systemctl detener VRising # su vapor $ cd ~/steamcmd $. ./vaporcmd
Iniciar sesión en el perfil anónimo de Steam, actualizar el juego, Espere a que finalice la actualización y cierre SteamCMD.:
> iniciar sesión anónimo > actualización_aplicación 1829350 > abandonar
El juego ya está actualizado y podemos iniciar el servidor nuevamente..
# systemctl iniciar VRising
Eso es todo lo que estamos compartiendo hoy para este V ascendente guía. Esta guía fue originalmente creada y escrita por shiranai. En caso de que no actualicemos esta guía, puede encontrar la última actualización siguiendo este enlace.
Buenas tardes, mi amigo!
¿Cuál sería tu versión de CentOS??
Tengo un problema al ejecutar Systemctl start VRising.service, genera error 127 https://imgur.com/a/C5XrETN
Tienes que separar las lineas.
p.ej.
#!/bin/bash export WINEARCH=win64 /usr/bin/xvfb-run --auto-servernum --server-args='-screen 0 640x480x24:32' /usr/bin/wine VRisingServer.exe -persistentDataPath server1_saves/ -logFile server.log
no ayuda, sigo teniendo el mismo problema.
¿Es suficiente cuando se ejecuta en EC? 2 nivel gratuito que es 1GB de memoria?
1 centro – 2 proceso – 1Memoria GB
4 los jugadores comienzan a retrasarse, ese contenedor se puede usar para probar algo… no para un servidor multijugador