Linux GSM: Creación de un servidor de Call of Duty 2 con mods en OVH Debian VPS

Instalando el servidor de CoD2 con LinuxGSM

Me he encontrado con un error al ejecutar

./cod2server install Instalando Call of Duty 2 Server ================================= verificando cod2-lnxded-1.3-full.tar.xz con MD5...OK extrayendo cod2-lnxded-1.3-full.tar.xz...tar (child): xz: Cannot exec: No such file or directory tar (hijo): Error no recuperable: saliendo ahora tar: El hijo ha devuelto el estado 2 tar: Error no recuperable: saliendo ahora FAIL

Para solucionar esto tuve que instalar xz-utils:

apt-get install xz-utils

Después de esto volví a ejecutar la instalación:

./cod2server install

Todo fue como la seda.

¿Necesitas un servidor para alojar tu servidor de juegos Palworld? ¡ Compra en Ionos!

Modificando el servidor de CoD2 con LinuxGSM y zPAM

Quería instalar el mod zPAM en mi servidor. Aparentemente LinuxGSM no soporta mods. Así que hay que seguir un camino complicado.

El mod que elegí es el zPAM v3.1 beta6 porque parece bien hecho, actualizado, mantenido y especialmente de código abierto.

Esto es lo que tuve que hacer

sudo su - cd /home/cod2server/lgsm/config-lgsm/cod2server nano common.cfg

Este archivo de configuración nos permite sobrescribir los ajustes emitidos por la configuración por defecto del servidor.

He añadido aquí algunas líneas como esta

defaultmap="mp_burgundy" maxplayers="16" startparameters="+set sv_punkbuster 1 +set fs_basepath ${serverfiles} +set fs_game "mods/zpam310_beta6" +set dedicated 2 +set net_ip ${ip} +set net_port ${port} +set sv_maxclients ${maxplayers} +exec ${servercfg} +map ${defaultmap}"

Luego, con mi usuario cod2server:

sudo su - cod2server ./cod2server restart

Si esto no funciona puedes intentar editar el archivo "_default.cfg" en su lugar. Inicialmente pensé que tenía que hacerlo, pero luego descubrí que "common.cfg" superará las configuraciones provenientes de "_default.cfg" así que para evitar problemas seguí ese camino. Mejor no editar las configuraciones por defecto si es posible.

"_default.cfg" es la configuración por defecto cargada para nuestro servidor CoD2. Los comentarios en el archivo dicen que se sobrescribirá automáticamente pero no parece hacerlo.

La parte importante es

set fs_game "mods/zpam310_beta6" (o cualquier carpeta para habilitar tu mod) set sv_punkbuster 1 (o poner "0" si quieres deshabilitarlo)

Actualizando Punkbuster

Pues en este servidor Linux me encontré con un problema con Punkbuster ya que, al habilitarlo, el servidor me pateaba al jugar en el gameserver porque las versiones de Punkbuster entre cliente y servidor no coincidían.

Además, aparentemente el servidor instalado por LinuxGSM estaba ejecutando una versión antigua de PB.

Hace años era posible actualizar automáticamente el punkbuster ejecutando pb_sv_update en la consola del servidor. Pero esto ya no funciona porque EvenBalancce, la empresa que hizo PB, ya no da soporte para CoD2. Lo mismo para los archivos del cliente entonces, el programa PB Setup fue una vez utilizado para mantener el servicio actualizado, pero esto ya no se puede hacer, al parecer.

La única forma que encontré fue actualizar manualmente los archivos PB tanto del cliente como del servidor.

Tuve que confiar en lo que encontré online, por supuesto, pero parece que funcionó.

Archivos del servidor Linux Punkbuster

Encontré los archivos en el sitio web de PBBans. Ni idea de si los archivos se puede confiar, le di una oportunidad ya que esto es sólo una prueba de instalación VPS. He subido los archivos en este sitio web y se pueden encontrar aquí:

Así que volví a mi VPS, si ejecuta los siguientes comandos como root tendrá que cambiar los propietarios y grupos con chown después.

Cuidado porque hay 2 carpetas "pb" diferentes, no me preguntes por qué.

  • /home/cod2server/.callofduty2/pb - la correcta
  • /home/cod2server/serverfiles/pb - la incorrecta, si subes los archivos aquí no tienen efecto en el servidor, al menos en mi caso.

Ahora puedes ejecutar los siguientes comandos:

cd /home/cod2server/.callofduty2 cp pb pb_backup (copia la carpeta original como copia de seguridad) cd pb wget -O pb.zip https://www.gaminghouse.community/uploads/cod2/cod2_linux.zip unzip pb.zip -d pb2 (descomprime los archivos en otro directorio sólo para estar seguro) mv pb2/* ./ (mueve los archivos pb2 a pb)

si ejecutaste wget como root, tendrás que cambiar el propietario de la siguiente manera

chown -R cod2server:cod2server ./

(eventualmente haz lo mismo en pb_backup)

si quieres puedes eliminar pb2:

rm pb2

si todavía eres root, haz

su - cod2server ./cod2server restart

Los archivos de Punkbuster deberían estar ahora actualizados. Puedes conectarte a tu servidor y ver si recibes mensajes de error.

Archivos de cliente Punkbuster para Windows

Puedes descargar los archivos para Windows desde nuestro sitio web:

Cargando un archivo de configuración de Punkbuster para tu servidor

Si estás intentando configurar el zPAM como yo, la carpeta correcta, como he mencionado antes, donde poner el pbsvuser.cfg (o el archivo que sea) es "/home/cod2server/.callofduty2/pb" (en mi caso, por supuesto).

Entonces puedes editar tu common.cfg (ver arriba) para añadir un comando como "+exec {$systemdir}/pb/pbsvuser.cfg" en la línea de inicio.

startparameters="+set sv_punkbuster 1 +set fs_basepath ${serverfiles} +set fs_game "mods/zpam310_beta6" +set dedicated 2 +set net_ip ${ip} +set net_port ${port} +set sv_maxclients ${maxplayers} +exec ${servercfg} +map ${defaultmap} +exec {$systemdir}/pb/pbsvuser.cfg"

Configuración de pb_sv_guidrelax

He buscado en línea y esto es lo que he encontrado:

Esta configuración se añadió a la versión 1.011 del servidor para establecer opciones para el sistema de guid bloqueado. Este ajuste es acumulativo basado en sumar los valores para las condiciones deseadas: 1=Guía UNKN, 2=Guía WRONGIP, 4=Guía DUPLICADA. El valor actual por defecto para este ajuste es 7 (1+2+4) lo que significa que PB no pateará (relajará el pateo) para ninguno de los tres casos. Recomendamos patear para al menos UNKN guids. A continuación se muestran las posibles combinaciones:

  • 0 = Pateará TODOS (UNKN guid, ip guid incorrecta y guid duplicado)
  • 1 = Expulsión por IP incorrecta y guía duplicada.
  • 2 = Patada para UNKN guid, y guid duplicado.
  • 3 = Expulsión por guía duplicada.
  • 4 = Expulsión por UNKN guid y ip guid incorrecta.
  • 5 = Expulsión por IP incorrecta.
  • 6 = Expulsión por UNKN guid
  • 7 = No patear por UNKN guid, ip guid incorrecta y guid duplicado (no patear a nadie).

ejemplo: pb_sv_guidrelax 7 prevendra que tu servidor patee jugadores usando las mismas cd keys o usando cd keys crackeadas.

Instalando el cliente SFTP para navegar archivos más fácilmente

Con el fin de navegar por los archivos del servidor con facilidad decidí instalar un servidor SFTP en mi Debian VPS. Seguí esta guía de vitux.com. Quizás por mi falta de experiencia pero también tuve que instalar "ufw" para abrir los puertos TCP 20 y 21 para permitir conexiones SFTP.

Básicamente instalé el paquete vsftpd de Debian y lo habilité con systemctl. Si sigues la guía mencionada todo debería funcionar bien.

Luego, por supuesto, utilicé Filezilla como cliente en mi PC para conectarme y explorar archivos y carpetas.

Conclusiones

Este fue un trabajo bastante duro pero era la primera vez que lo intentaba y también fue divertido e interesante.

Déjame saber en los comentarios si esto funcionó para ti, o envíame un correo electrónico si necesitas ayuda. También puedes encontrarme en Steam o Discord.

Artículos relacionados:

Deja un comentario

Todos los comentarios estarán sujetos a aprobación después de ser enviados. Es posible que se publiquen después de varias horas.

Puedes usar un apodo al azar, es útil para que al menos pueda responder a tus comentarios. Y si eliges enviar tu correo electrónico, puedes recibir una notificación cada vez que responda a tu comentario.

Aún no se han escrito comentarios sobre este artículo. ¡Sé el primero en compartir tu opinión!

*