Esta guía está destinada a guiar a alguien sobre la instalación del servidor dedicado V Rising, actualmente una aplicación solo para Windows, en Linux y su ejecución para que pueda usarse para jugar en línea.
Paso 1: Requisitos (SO, aplicaciones compatibles)
Requisitos del sistema del servidor dedicado de Linux
Lo primero es lo primero: esta guía requiere que traiga su propio conocimiento de Linux a la mesa, es decir, cómo instalar, configurar redes, etc., lo básico. Con eso como línea de base (y con un control de su propio sistema operativo en mente si difiere del que estoy escribiendo aquí), continúe.
Esta guía recrea cómo hice funcionar el servidor para mí y mis amigos. Es una combinación de información que encontré para Conan Exiles (otro servidor dedicado aparentemente basado en Windows) e información de configuración para V Rising.
Dado que el juego se ejecutará a través de la emulación de Windows en Linux, probablemente no querrás ejecutarlo en una raspberry pi o algo terriblemente antiguo; pero casi cualquier sistema relativamente moderno con digamos 4 núcleos y 8 GB de memoria debería estar bien. Una advertencia es que, aunque es un servidor dedicado, probablemente querrá cerrarlo y reiniciarlo al menos diariamente si es posible porque parece que la memoria de emulación se acumula. Estoy ejecutando esto en una máquina con 32 GB y el motor de emulación de Linux (no el proceso de Windows administrado por vino) comienza a aumentar el consumo de memoria con el tiempo.
HEY DEVS: DAME UN SERVIDOR DEDICADO DE LINUX APROPIADO, NO QUIERO EMULAR ESTO PARA SIEMPRE.
Hacia adelante. Necesitará un sistema Linux, y casi cualquiera de ellos funcionará, pero los contendientes populares, por supuesto, obtienen las mejores calificaciones; CentOS, Ubuntu, OpenSuSE, lo que sea. Estoy usando Debian 10 (buster).
Nota: NECESITARÁ ROOT para realizar los siguientes pasos, ya sea que los sudo todos o simplemente ejecute un shell completo como root, ambos funcionarán.
Primero, querrá asegurarse de tener los paquetes adecuados, lo que significa que necesitará tener las opciones de repositorio adecuadas. Para obtener todo esto, necesita algo más que el canal "principal". Aquí están mis fuentes de datos del archivo. /etc/apt/sources.list
deb http://deb.debian.org/debian/ buster main contrib non-free deb-src http://deb.debian.org/debian/ buster main contrib non-free deb http://security.debian.org /debian-security buster/updates main contrib non-free deb-src http://security.debian.org/debian-security buster/updates main contrib non-free deb http://deb.debian.org/debian/ buster -actualiza la contribución principal no libre deb-src http://deb.debian.org/debian/ buster-actualiza la contribución principal no libre
Asegúrese de ejecutar 'apt update' o 'apt-get update' después de modificar su lista de fuentes. Desde allí, ejecute los siguientes comandos:
dpkg --add-architecture i386 apt-get install wine wine32 wine64 xvfb mingw-w64 mingw-w32 pantalla steamcmd
Se le mostrará una lista MUCHO más larga de paquetes que van con la lista anterior, solo asegúrese de tener suficiente espacio en disco y acepte los paquetes requeridos/recomendados. Técnicamente, no toda la lista que tengo en el comando es necesaria, pero cuando el vino comienza y se queja de que faltan cosas como gecko (mingw), odio los mensajes como ese, por lo que esta lista debería cubrir todo eso. Mi opinión al respecto es que los únicos errores en los que debe pensar son los que le arroja el software del servidor.
A continuación, cree una cuenta que no sea root con la que ejecutará el software y establezca una contraseña para ella.
useradd -m -d /juego/vrising vrising passwd vrising
Ahora que tiene un usuario, el resto de esto sucede bajo esa cuenta. Inicie sesión ahora.
Paso 2: Descargar V Rising usando steamcmd
Con su nueva cuenta brillante, asegúrese de tener las siguientes variables en su perfil, ya sea .bashrc, .bash_profile, .profile, lo que sea. Agréguelos, guarde/salga, cierre sesión/inicie sesión y ejecute el siguiente comando para asegurarse de que estén presentes:
env|grep GANAR
A continuación, cree un directorio para que el cliente de Steam guarde los archivos del juego. IE /game/vrising/vrising_files y ejecuta el siguiente comando para descargar el juego.
NOTA: Todo, desde 'steamcmd' hasta '+exit' es un comando de una sola línea
steamcmd +@sSteamCmdForcePlatformType windows +force_install_dir /home/vrising/vrising_files +inicio de sesión anónimo +app_update 1829350 +salir
¡Eso es!
Paso 3: Inicie el servidor por primera vez
Ahora que tienes el juego descargado, puedes ejecutarlo por primera vez. NO jugará en él todavía, esto es solo para permitir que los archivos se descompriman, se generen los archivos de configuración, etc. Ejecute el siguiente comando y déjelo reposar durante unos minutos, prácticamente hasta que vea mensajes repetidos que indican que el servidor está haciendo cosas básicas de mantenimiento, generalmente algo como lo que se muestra a continuación.
NOTA: Todo, desde 'xvfb-run' hasta el final de '-log', es un comando de una sola línea.
xvfb-run --auto-servernum --server-args='-screen 0 640x480x24:32' wine /game/vrising/vrising_files/VRisingServer.exe -log --repetición de mensajes a continuación-- [FileUserList] FileUserList cargado de: Z :\home\vrising\vrising_files\VRisingServer_Data\StreamingAssets\Settings\adminlist.txt, Agregado: 0 [FileUserList] Cargado FileUserList desde: C:\users\vrising\AppData\LocalLow\Stunlock Studios\VRisingServer\Settings\adminlist.txt, Agregado: 1 [FileUserList] Cargado FileUserList desde: Z:\home\vrising\vrising_files\VRisingServer_Data\StreamingAssets\Settings\banlist.txt, Agregado: 0 [FileUserList] Cargado FileUserList desde: C:\users\vrising\AppData\LocalLow\ Stunlock Studios\VRisingServer\Settings\banlist.txt, Agregado: 0
Una vez que vea que algunos de estos mensajes se acumulan, es seguro presionar CTRL-C para salir de la aplicación. ¡Ahora es el momento de la configuración!
Los archivos principales que le interesarán serán estos:
Configuraciones de juego
/juego/vrising/vrising_files/VRisingServer_Data/StreamingAssets/Settings/ServerGameSettings.json
Configuración del servidor
/juego/vrising/vrising_files/VRisingServer_Data/StreamingAssets/Settings/ServerHostSettings.json
Lista de administradores
/juego/vrising/vrising_files/VRisingServer_Data/StreamingAssets/Settings/adminlist.txt
- La configuración del juego es todo lo que sucede DENTRO del juego. Ciclos día noche, tasas de cosecha, etc.
- La configuración del servidor son cosas como la contraseña de unión, el nombre/descripción del servidor, etc.
- La lista de administradores es solo eso: me he agregado a mí mismo en mi servidor, pero honestamente aún no lo he usado, así que no tengo idea de lo que puede hacer con él.
Edita los dos primeros como mejor te parezca para disfrutar del juego. Para ingresar a adminlist.txt, simplemente vaya a steamid-dot-io, ingrese su nombre de usuario y tome los números 'steamID64'. Póngalo en una línea por sí mismo (un registro por línea si tiene varias personas haciendo tareas de administración) y guarde/salga.
Ahora puedes ejecutar el juego y jugar en él.
Paso 5: Cómo usar 'pantalla' para ejecutar el servidor
Ahora que tienes el juego listo para funcionar, como la persona experimentada en Linux que eres, sabrás que hay una trampa. Tan pronto como su terminal/putty/cualquier sesión se cierre, el juego se cortaría, y claramente no desea dejar una ventana de terminal abierta todo el tiempo. Aquí es donde entra en juego una de las otras aplicaciones que instalamos.
Ejecute este comando:
pantalla -t Linux
Parece que no hizo nada, ¿verdad? No exactamente. El shell ahora se ejecuta en una sesión separable, lo que significa que una vez que inicia el servidor, puede separarlo, cerrar la ventana del terminal y volver más tarde. Para ver lo que quiero decir, haz algo inofensivo como 'arriba'. Ahora que lo tienes en la pantalla, presiona 'CTRL-A', luego suéltalo y presiona 'D'. Observe el mensaje 'separado de'. Ahora ejecute 'ps -ef|grep top' y vea que todavía se está ejecutando. Bonito, ¿verdad? Para volver a conectarse, ejecutará 'screen -x' y volverá a adjuntarlo en esa misma sesión. Ahora puede salir de la parte superior y luego, si cierra la sesión de esa sesión, verá 'la pantalla está terminando'.
Entonces, juntemos todo eso para comenzar el juego. Tenga en cuenta que '-t Linux' solo le dice a la pantalla que use una configuración de TÉRMINO dada para cosas como colores y formato de caracteres especiales, nada más.
screen -t Linux xvfb-run --auto-servernum --server-args='-screen 0 640x480x24:32' wine /game/vrising/vrising_files/VRisingServer.exe -log
Esto iniciará el juego y puede dejarlo en ejecución, pruébelo intentando conectarse desde un sistema cliente.
Suponiendo que está en la misma LAN que el servidor y no hay un firewall configurado en la caja de Linux, inicie el juego V Rising y haga lo siguiente:
Jugar -> Jugar en línea -> Buscar servidores -> Mostrar todos los servidores y configuraciones -> Conexión directa
Se le pedirá que ingrese la información de IP/puerto. Solo la IP está bien. Si establece una contraseña en los archivos de configuración, ingrésela aquí para continuar. Si el juego comienza a cargarse, ¡enhorabuena!
Debería poder ver el mensaje de conexión emergente en la terminal del servidor y desplazarse. Ahora puede CTRL-A, D la sesión. Tu juego se está ejecutando
Paso 6: Cómo actualizar el servidor cuando sea necesario
Cuando necesite hacer algún mantenimiento en el sistema; actualización del juego, actualización del sistema operativo, lo que sea. Simplemente inicie sesión en su cuenta de servidor dedicada, ejecute 'screen -x' para conectarse a la sesión y luego CTRL-C para cerrar el juego. El comando que ejecutamos anteriormente para descargar el juego se ejecutará nuevamente aquí, se validará con los servidores de Steam y obtendrá cualquier actualización. Luego ejecute el comando xvfb-run nuevamente para iniciar el juego. Pedazo de pastel.
Siéntase libre de poner estos comandos en archivos de secuencias de comandos para que no tenga que buscar en el historial de shell o en un archivo txt guardado o algo para copiar/pegar. El mundo es tu ostra, disfrútalo.
Paso 7: Reglas de firewall y reenvío de puertos
La vida no estaría completa sin el dolor de cabeza de la seguridad, ¿verdad?
Afortunadamente puedo ayudar aquí también, también afortunadamente el juego no usa una tonelada métrica de puertos como algunos otros que he jugado. En cualquier caso, el archivo ServerHostSettings.json le brinda la pista principal aquí con los campos 'puerto' y 'queryport', pero no es todo lo que necesita saber.
Deberá aceptar/reenviar/etc. lo siguiente:
- PUD: 9876
- UDP y TCP: 9877
Con estos dos puertos abiertos y reenviando hacia/desde su servidor de juegos, amigos de todo el mundo pueden unirse a usted e incluso podrán encontrar su servidor en el área de búsqueda principal de la lista de servidores multijugador; usar algún identificador único en el nombre del servidor ayudará. ellos mucho allí 😉
Para un enrutador doméstico controlado por GUI, debería ser bastante fácil ingresar los números y deberá consultar su documentación para eso. Si tiene una puerta de enlace basada en Linux como la mía y necesita comandos directos de iptables, estos deberían ayudarlo, modifíquelos según sea necesario para su red doméstica. Estos están formateados a partir de un archivo de 'reglas' para un servicio de cortafuegos de Debian, pero puede simplemente poner 'iptables' delante de cada línea y el resto de todo ('-A' en adelante) funcionará bien. 10.89.0.200 es el servidor de juegos en mi LAN.
-A ENTRADA -i eth0 -p udp -m udp --dport 9876 -j ACEPTAR -A ENTRADA -i eth0 -p udp -m udp --dport 9877 -j ACEPTAR -A ENTRADA -i eth0 -p tcp -m tcp --dport 9877 -j ACEPTAR -A ADELANTE -d 10.89.0.200/32 -i eth0 -p udp -m udp --dport 9876 -j ACEPTAR -A ADELANTE -d 10.89.0.200/32 -i eth0 -p udp - m udp --dport 9877 -j ACEPTAR -A ADELANTE -d 10.89.0.200/32 -i eth0 -p tcp -m tcp --dport 9877 -j ACEPTAR
NOTA: voy a suponer que si está utilizando las reglas de iptables, también tiene IP MASQ configurado correctamente. UPNP sería un bono pero no requerido.
Eso es todo lo que estamos compartiendo hoy para este V Rising guía. Esta guía fue originalmente creada y escrita por KriegTigre. En caso de que no actualicemos esta guía, puede encontrar la última actualización siguiendo este liga.