![[Imagen: left4dead2server.png]](https://kadargogaming.com/tutoriales/servidorl4d2/left4dead2server.png)
El proceso de creación de un Servidor Left 4 dead 2 de Steam no es complicado. Solo require mucha atención para no confundirnos en algun paso.
Descarca de los archivos del servidor:
Este proceso es el mismo para todos los juegos con Source Engine Games. Si ya tienes los archivos del servidor o has instalado un SRCDS a través de SteamCMD antes y sabes cómo descargar los archivos del servidor, puedes saltarte esto.
Steam utiliza ahora SteamCMD (antes HLDSUpdateTool) para descargar los archivos del servidor.
Descarga SteamCMD para Windows desde el sitio oficial -----> SteamCMD
Una vez que hayas descargado SteamCMD, extrae el archivo steamcmd.exe a una carpeta de la unidad de tu PC o Servidor.
Nota: Esta guía utilizará el directorio por defecto de la raíz del disco duro: E:\
Esto facilita el envío del comando de directorio ya que es más corto.
Sin embargo, se puede pegar texto a los avisos de CMD haciendo click con el botón derecho del ratón en la ventana de CMD:
![[Imagen: server1.jpg]](https://kadargogaming.com/tutoriales/servidorl4d2/server1.jpg)
Ejecute el steamcmd.exe para instalar los archivos de la herramienta, el diálogo aparecerá instalando los archivos:
![[Imagen: server2.jpg]](https://kadargogaming.com/tutoriales/servidorl4d2/server2.jpg)
Nota: No instales los archivos del servidor dentro de la carpeta de SteamCMD.
Mientras SteamCMD está descargando la herramienta, sigue adelante y configura el directorio de tu servidor.
Esta guía utiliza la raíz de un disco duro: E:\L4D2
Nota: El uso de la raíz de un disco duro facilita la navegación a través de las estructuras de archivos y la ejecución de comandos de cambio de directorio (cd) en SteamCMD, sin embargo, recuerda que puedes pegar tu directorio del servidor en el indicador si decides colocarlo junto a la carpeta del juego Left 4 Dead 2 en tu directorio de cliente de Steam:
Mientras SteamCMD está descargando la herramienta, sigue adelante y configura el directorio de tu servidor.
Esta guía utiliza la raíz de un disco duro: E:\L4D2
Nota: El uso de la raíz de un disco duro facilita la navegación a través de las estructuras de archivos y la ejecución de comandos de cambio de directorio (cd) en SteamCMD, sin embargo, recuerda que puedes pegar tu directorio del servidor en el indicador si decides colocarlo junto a la carpeta del juego Left 4 Dead 2 en tu directorio de cliente de Steam:
E:Archivos de programa (x86)\Steam\SteamApps\common\Left 4 Dead 2 Dedicated Server
Puedes crear una carpeta en cualquier lugar excepto dentro de la carpeta de SteamCMD.
Una vez que SteamCMD haya completado la descarga de sus archivos, el cuadro de diálogo tendrá el siguiente aspecto:
![[Imagen: server3.jpg]](https://kadargogaming.com/tutoriales/servidorl4d2/server3.jpg)
Left 4 Dead 2 utiliza el APPID 222860, puedes iniciar sesión de forma anónima para descargar los archivos del servidor (ver todos los ID de las aplicaciones aquí):
login anonimous
![[Imagen: server4.jpg]](https://kadargogaming.com/tutoriales/servidorl4d2/server4.jpg)
Tiempo de diversión!
Suponiendo que ya ha creado su carpeta del servidor (E:\L4D2) envíe lo siguiente:
force_install_dir E:\L4D2
ENTER
app_update 222860 validate
ENTER
![[Imagen: server5.jpg]](https://kadargogaming.com/tutoriales/servidorl4d2/server5.jpg)
Nota: Usa el directorio de tu servidor!
Nota: Aquí hay una lista de todos los ID de aplicación de Steam como referencia para instalar otros juegos de servidor.
Este proceso es el mismo para todos los servidores de juegos, sólo tienen un ID de aplicación diferente (único)
Esto puede tomar algún tiempo para descargar todos los archivos necesarios, cuando se completa:
![[Imagen: server6.jpg]](https://kadargogaming.com/tutoriales/servidorl4d2/server6.jpg)
Envía el comando de salida y pulsa Enter:
quit
De este modo, concluye el proceso de obtención de los archivos del servidor.
Redireccionamiento de puertos
Hay muchos recursos por ahí para el reenvío de puertos. Esta guía está dirigida a los servidores que están alojados en un proveedor o sistema distinto al cliente del juego. Esta guía funcionará para servidores de escucha (los servidores de escucha son servidores alojados en el mismo ordenador en el que juegas)
Aquellos que creen un Servidor de Escucha se encontrarán con problemas de Reenvío de Puertos, que si sabes cómo acceder al panel de control de tu router, es una solución fácil. Para aquellos que no estén familiarizados con el proceso, por favor, utilicen Google y otros recursos como los que aparecen a continuación para obtener ayuda en el reenvío de sus puertos.
Si alojas tu servidor en un proveedor de servidores de juegos (GameServers, VPS (Servidor Privado Virtual como NFOServers) o un host por el que realmente pagas, entonces no necesitas preocuparte por esto ya que tu proveedor debería tener todos los puertos reenviados automáticamente dependiendo del servidor que estés alojando. Por defecto el puerto de L4D2 es el 27015 sin embargo puede tener un rango de 27015-27020 o más.
Puertos necesarios para Steam
Puerto Foward www.portforward.com
Compruebe si sus puertos están abiertos www.canyouseeme.org
Configuración del servidor (server.cfg)
El archivo cfg es el que contiene la configuración (en forma de cvars) de su servidor.
Por defecto el server.cfg no existe después de instalar y crear su servidor. Deberá crear uno:
Este es un server.cfg estándar de L4D2
Este es un server.cfg avanzado de L4D2
Nota: Asegúrese de que este archivo tenga como nombre "server.cfg" si decide descargarlos e instalarlos en su servidor.
El archivo server.cfg debe estar ubicado en:
E:\L4D2\left4dead2\cfg\server.cfg
Cree este archivo utilizando el bloc de notas, simplemente haga clic con el botón derecho en la carpeta y seleccione Nuevo⇒Documento de Texto. No le pongas ningún nombre todavía; sólo crea un archivo de texto en blanco.
Para una lista completa de L4D2 Cvars, vea esto
Para una lista de archivos de texto de todos los Cvars de L4D2 vea esto.
Una de las cosas más importantes a tener en cuenta al escribir el server.cfg es la sintaxis. En realidad es muy simple.
// <--significa que el servidor ignorará todo lo que esté detrás de // en esa línea, así que si quieres dejar de usar una variable, pon // delante de ella - esto se conoce comúnmente como "comentar", que le dice al servidor que ignore ese comando/cvar.
Cada variable tiene que ser puesta en su propia línea, o de lo contrario no será leída/ejecutada y la consola del servidor puede reportar un error al respecto para que puedas acotar el problema.
Si tienes espacios en alguna parte (el nombre del servidor por ejemplo), asegúrate de escribirlo entre comillas.
hostname "Use quotes with spaces"
A continuación, algunas explicaciones sobre las variables más importantes:
sv_maxupdaterate 100:
Esta variable establece la cantidad máxima de actualizaciones que el servidor enviará a cada cliente por segundo. Si la estableces en 100, tu servidor funcionará de forma óptima porque el tickrate ajusta automáticamente este valor. Tener un tickrate de 33 hará que esta variable sea también de 33. Por lo tanto, una configuración de 100 para esta variable es más o menos una "talla única".
sv_minupdaterate 20:
Esta variable es lo contrario de maxupdaterate. Durante los años que he estado alojando servidores, he descubierto que cuando las actualizaciones caen por debajo de 20 por segundo, los clientes empiezan a experimentar lag. Es por eso que establecemos esto a 20; al igual que maxupdaterate, este valor se ajusta a todos los servidores.
sv_maxrate:
Esta variable es probablemente la que más influye en la calidad del rendimiento del servidor. Es la cantidad máxima de datos enviados a un cliente por segundo. Si no tienes una gran conexión, puedes ajustar esta variable para que tu servidor funcione perfectamente. Como he explicado anteriormente, esto tiene que ver con los maxplayers del servidor. Para calcular esta variable usamos una fórmula; es simple y 90% precisa.
Ejemplo del Server.cfg
Cita:hostname "Your Server Name Here"
rcon_password yourpass
// This states how players should contact you
sv_contact your@email.com
// # of rounds to play (versus)
mp_roundlimit 2
// Use a search key to find the server in the lobby
//sv_search_key ""
//sv_tags ""
// STEAM GROUP
sv_steamgroup GROUPIDHERE
//FRIENDLY FIRE 1=ON 0=OFF
sm_cvar survivor_friendly_fire_factor_easy 1
sm_cvar survivor_friendly_fire_factor_expert 1
sm_cvar survivor_friendly_fire_factor_hard 1
sm_cvar survivor_friendly_fire_factor_normal 1
// CHEAT/CONFIG
sv_lan 0
sv_cheats 0
sv_consistency 1
sv_maxcmdrate 101
sv_maxrate 30000
//MOTD
motd_enabled 1
//GAME MODE
sv_gametypes "coop, versus, mutation"
sm_cvar mp_gamemode coop
//DIFFICULTY
z_difficulty Impossible
//LOBBY CONNECT
sv_allow_lobby_connect_only 0
//BEBOP
//l4d_maxplayers "8"
//sv_maxplayers "8"
//sm_cvar l4d_maxplayers "8"
//sv_visiblemaxplayers "-1"
//sm_cvar l4d_survivor_limit "8"
//sm_cvar sv_removehumanlimit "1"
//Game Settings
mp_disable_autokick 1 //(command)prevents a userid from being auto-kicked (Usage mp_diable_autokick )
sv_allow_wait_command 0 //default 1; Allow or disalow the wait command on clients connected to this server.
sv_alternateticks 0 //defulat 0; (singleplayer)If set, server only simulates entities on even numbered ticks.
sv_clearhinthistory 0 //(command)Clear memory of server side hint displayed to the player.
sv_consistency 0 //default 1; Whether the server enforces file consistency for critical files
sv_pausable 0 //default 0; is the server pausable
sv_forcepreload 1 //default 0; Force server side preloading
sv_pure_kick_clients 0 //default 1; If set to 1, the server will kick clients with mismatchng files. Otherwise, it will issue a warning to the client.
sv_pure 0 //If set to 1, server will force all client files execpt whitelisted ones (in pure_server_whitelist.txt) to match server's files.
//If set to 2, the server will force all clietn files to come from steam and not load pure_server_whilelist.txt. Set to 0 for disabled.
// Communication
sv_voiceenable 1 //default 1; enable/disable voice comm
sv_alltalk 1 //default 0; Players can hear all other players' voice communication, no team restrictions
// Logging
log on //Creates a logfile (on | off)
sv_logecho 0 //default 0; Echo log information to the console.
sv_logfile 1 //default 1; Log server information in the log file.
sv_log_onefile 0 //default 0; Log server information to only one file.
sv_logbans 1 //default 0;Log server bans in the server logs.
sv_logflush 0 //default 0; Flush the log files to disk on each write (slow).
sv_logsdir logs //Folder in the game directory where server logs will be stored.
// Bans
// execute banned.cfgs at server start. Optimally at launch commandline.
exec banned_user.cfg //loads banned users' ids
exec banned_ip.cfg //loads banned users' ips
writeip // Save the ban list to banned_ip.cfg.
writeid // Wrties a list of permanently-banned user IDs to banned_user.cfg.
//Network Tweaks - Increase network performance
rate 10000 //default 10000; Max bytes/sec the host can recieve data
sv_minrate 15000 //default "5000"; Min bandwidth rate allowed on server, 0 = unlimited
sv_maxrate 30000 //default "0"; Max bandwidth rate allowed on server, 0 = unlimited
sv_mincmdrate 20 //default 0; This sets the minimum value for cl_cmdrate. 0 = unlimited [cevo=67]
sv_maxcmdrate 33 //default 40; (If sv_mincmdrate is > 0), this sets the maximum value for cl_cmdrate. [cevo=101]
Ahora, después de haber creado con éxito su archivo server.cfg, al ejecutar el comando:
exec server.cfg
En la consola del servidor o cuando ejecutas e inicia el servidor no debería aparecer:
couldn’t exec server.cfg
error de retorno dentro de la consola!
Feliz personalización y configuración del servidor!
//PIPE-BOMB DURATIONsm_cvar pipe_bomb_timer_duration "10"
Mensaje del día (MOTD)
Cada vez que un jugador entra en un servidor de Left 4 Dead online, una pantalla de mensaje del día le da la bienvenida. Hay un MOTD por defecto, pero si estás pagando por tu propio servidor, probablemente quieras personalizarlo. Esta guía te mostrará cómo hacerlo.
En primer lugar, vamos a ver la pantalla MOTD real:
Hay dos secciones que puedes personalizar: el banner del anfitrión en la parte superior y el mensaje del día que ocupa la mayor parte de la pantalla en la parte inferior. Estas dos secciones son en realidad sólo páginas web (archivos html), que pueden ser introducidas en los archivos del servidor o alojadas en tu propio servidor web/anfitrión web. Los dos archivos para controlar estas secciones son "host.txt" para el banner del host, y "motd.txt" para el MOTD. Puedes encontrarlos en el directorio L4D de tu servidor en l4d/left4dead/. Ten en cuenta que este NO es el mismo directorio que el archivo server.cfg que utilizas para cambiar la configuración del servidor. El archivo server.cfg se encuentra en l4d/left4dead/cfg/.
El banner de host y el MOTD por defecto se ejecutan desde los servidores web de Valve. Los archivos host.txt y motd.txt por defecto sólo contienen una línea que es una URL del sitio web que deseas que se muestre. Puedes utilizar este método si tienes tu propio alojamiento o puedes simplemente rellenar el archivo .txt con código HTML. Si tienes varios servidores con el mismo banner, es mejor usar el alojamiento web para que sólo tengas que cambiar el banner en un solo lugar.
Una cosa muy importante que hay que tener en cuenta sobre el banner MOTD y el del host es que cambian de tamaño dependiendo de la resolución a la que esté funcionando el reproductor. Los siguientes valores están en píxeles, puedes hacer clic en las resoluciones de pantalla para ver cómo se ve el MOTD en esa resolución:
La relación entre la anchura y la altura del banner del anfitrión es de 5:1, y la relación entre la anchura y la altura es de 2:1. Tienes dos opciones con el banner anfitrión: o lo haces de un tamaño grande y lo recortas para la gente con resoluciones más bajas (que es lo que creo que hace Valve), o puedes usar algo de CSS en tu código HTML para redimensionar automáticamente el banner sin importar la resolución que esté usando el jugador. Este es el método que utilizamos nosotros, y es un pequeño y sencillo truco.
El código de esa página web es el siguiente (ejemplo):
<html>
<head><title>Server L4D2 Kadargo Gaming</title></head>
<body style="margin:0px;padding:1px;background:#000 000;">
<img src="http://motd.kadargogaming.com/l4d2/motd.png" style="width:100%;height:100%;" />
</body>
</html>
Eso es todo. El título no aparece en ninguna parte, así que no es importante. El estilo del cuerpo es para asegurarse de que la imagen aparece en la parte superior izquierda, con un píxel de relleno, y un color de fondo para cuando la imagen se está cargando. La etiqueta de la imagen tiene un estilo de 100% de ancho y alto. Si vas a esa página en tu navegador, se verá muy mal. Pero como sabes de sobra que cada resolución tiene una proporción de 5:1 para el banner del host, siempre se verá bien y tendrá las mismas proporciones. Un pequeño error: en 1920×1080, cuando entras por primera vez en el juego a veces el banner tiene un tamaño extraño (imagen). Esperemos que esto se arregle.
La sección MOTD es lo mismo que el banner del anfitrión - puede ser un archivo HTML alojado (coloca la URL en una sola línea en la parte superior del archivo .txt) o puedes poner el código HTML directamente en el archivo de texto. Todo lo que tenemos es una simple imagen de fondo con algo de texto centrado, puedes verlo/ver la fuente aquí si necesitas un ejemplo.
Si tu MOTD no aparece, puede que tengas que poner motd_enable 1 en tu server.cfg.
Lanzamiento del Servidor
Comandos del lanzamiento del Servidor en el archivo de atajo:
E:\L4D2\srcds.exe -console -game left4dead2 -ip TUIPLOCAL +port 27020 +hostip TUIPPUBLICA +maxplayers 8 +exec server.cfg +map c2m1_highway
![[Imagen: server7.jpg]](https://kadargogaming.com/tutoriales/servidorl4d2/server7.jpg)
Nota: exec es un parámetro muy útil que permite ejecutar un archivo cfg específico cuando se lanza un servidor, además del archivo server.cfg.
Explicando los parámetros:
El número de jugadores es obvio y está ajustado a 8. Para los modos Hunted y Panic puedes tener hasta 16.
Aunque el mapa es un cvar debe ser configurado durante el lanzamiento, de lo contrario el servidor no está listo para aceptar conexiones. Actualmente hay 13 mapas (basados en el modo de juego):
Cita:c1m1_hotel
c1m2_streets
c1m3_mall
c1m4_atrium
c2m1_highway
c2m2_fairgrounds
c2m3_coaster
c2m4_barns
c2m5_concert
c3m1_plankcountry
c3m2_swamp
c3m3_shantytown
c3m4_plantation
c4m1_milltown_a
c4m2_sugarmill_a
c4m3_sugarmill_b
c4m4_milltown_b
c4m5_milltown_escape
c5m1_waterfront
c5m2_park
c5m3_cemetery
c5m4_quarter
c5m5_bridge
//l4d_farm01_hilltop
//l4d_farm02_traintunnel
//l4d_farm03_bridge
//l4d_farm04_barn
//l4d_farm05_cornfield
//l4d_smalltown01_caves
//l4d_smalltown02_drainage
//l4d_smalltown03_ranchhouse
//l4d_smalltown04_mainstreet
//l4d_smalltown05_houseboat
//l4d_airport01_greenhouse
//l4d_airport02_offices
//l4d_airport03_garage
//l4d_airport04_terminal
//l4d_airport05_runway
//l4d_hospital01_apartment
//l4d_hospital02_subway
//l4d_hospital03_sewers
//l4d_hospital04_interior
//l4d_hospital05_rooftop
//l4d_vs_hospital01_apartment
//l4d_vs_hospital02_subway
//l4d_vs_hospital03_sewers
//l4d_vs_hospital04_interior
//l4d_vs_hospital05_rooftop
//l4d_vs_farm01_hilltop
//l4d_vs_farm02_traintunnel
//l4d_vs_farm03_bridge
//l4d_vs_farm04_barn
//l4d_vs_farm05_cornfield
El IP debe ser tu ip interna (ip del ordenador en el que alojas el servidor).
El puerto es obviamente el puerto (o uno de los puertos) que has abierto con el reenvío de puertos.
El parámetro de consola permitirá que su servidor se ejecute en una interfaz de texto estilo cmd/línea de comandos. Esto es lo que la mayoría de la gente hace. Yo solía usar la interfaz GUI en el pasado (los buenos tiempos de CSS) pero no lo he intentado desde entonces. Ni siquiera estoy seguro de que siga funcionando.
Importante: Si mueves tus archivos bat fuera de la carpeta serverroot necesitas proporcionar la ruta completa del srcds.exe. Como norma, buscará el archivo exe en la carpeta desde la que se ejecuta el archivo bat.
El parámetro game le dice al ejecutable qué juego debe alojar. Acepta una ruta de acceso a gameinfo.txt (se puede encontrar en la subcarpeta Left 4 Dead 2) o puedes descargar este con valor preestablecido desde aqui.
sv_lan definirá si su juego sólo está disponible en su propia red local o a través de Internet. Debe ser puesto a 0 a menos que usted esté planeando ejecutar sólo un servidor local. Normalmente este parámetro es 0 por defecto pero me han dicho que puedes tener problemas para ver el servidor online si no lo especificas.
Script de reinicio automático, en caso de que tu Servidor se cierre solo, (opcional):
Cita:srcds
echo (%time%) srcds started.
start /wait srcds.exe -console -game left4dead2 +maxplayers 8 -ip TUIPLOCAL +port 27020 +hostip TUIPPUBLICO +map c2m1_highway
echo (%time%) WARNING: srcds closed or crashed, restarting.
goto srcds
NOTA: Sustituye el directorio srcds y los IP por las tuyos y salvalo INICIAR SERVIDOR L4D2.BAT
![[Imagen: server8.jpg]](https://kadargogaming.com/tutoriales/servidorl4d2/server8.jpg)
Y es todo, ya cuentas con tu Server Left 4 Dead 2 "VANILLA".
Instalación de SourceMod y METAMOD
Nota: Si deseas dejar tu Server "Vanilla" (sin mods), hasta aqui concluye este tutorial para ti. Si deseas tener tu Servidor que sea MOD, puedes continuar con este tutorial.
Descarga las últimas versiones de SourceMod y MetaMod desde sus sitios oficiales en los links siguientes:
SourceMod
METAMOD
Esta modificación se le instalan PLUGINS, en este caso para el juego LEFT 4 DEAD 2 serían llamado MODS. Si necesitas plugins, te recomendamos que vayas al sitio oficial y le heches un vistazo pero presta mucha atención y para que se te haga mas comodo y facil, te recomendamos que tradusca la la pagina de ellos y leas claramente para que funciona cierto plugin y si lo deseas o necesitas. Tambien presta atención a los comentarios de cada plugin, ya que hay muchos que estan desactualizados y/o causan problemas con Servidores.
Para descargar plugins desde el sitio oficial dale click al vinculo de abajo:
Descarga de plugins para L4D2
Como instalar plugins en L4D2
Te recomendamos que periodicamente actualizes los archivos SourceMod y METAMOD, reemplazando los archivos.
Y es todo por el momento, esperamos que te haya trabajado. Si tienes problemas, no dejes de dejarnos tu comentario.
Kadargo Gaming