Half-Life Guide

HLDS como abrir un servidor Half-Life for Half-Life

HLDS como abrir un servidor Half-Life

Overview

Hola, en esta guia voy a describir como es el proceso para crear un servidor publico de Half-Life.Tambien, voy a tratar de hacer un resumen de la guia de https://developer.valvesoftware.com y explicar porque comunmente no funciona.(Recomendable): El HLDS (Half-Life Dedicated Server) es un programa gratuito y no hay necesidad de “usar cracks o keys” por lo tanto no hay que descargarlo en paginas no oficiales de Steam. Agrega esta guia a tus favoritas para tenerla a mano, nunca se sabe cuando puede hacerte falta.Si te interesa el juego desde hace mucho y nunca entendiste sobre estos temas, quizas lo logres en esta guia.

Primer paso: Conectividad

Antes de empezar con la guia, tienen que tener en cuenta que necesitan abrir puertos en su modem. (Si solo lo quieren LAN o ya tienen los puertos abiertos, pueden saltear esta parte de la guia y seguir. Si quieren que sea un servidor publico, sigan esta parte)

Como la variedad de modems es tan extensa, no hay forma de explicar en una guia como es el paso a paso de todos ellos. Pero la mayoria tienen un sistema muy sensillo de configuracion y voy a dejar algunas pistas para que sea mas intuitivo a la hora de ponernos a configurarlo.

-Quiero que recuerden que, el servidor no tiene addons o plugins de terceros. (todavia). por ese motivo la guia posiblemente se complique para los que se acostumbraron a la administracion con amxmodx o miniAG u otros.

Lo primero que voy a explicar es esta info sobre los puertos que usa el servidor:

Originally posted by developer.valvesoftware.com:

The ports HLDS officially requires are:

27015 UDP (game transmission, pings)
27015 TCP (RCON)
27020 UDP (HLTV transmission)
26900 UDP (VAC service)

El puerto 27015 en udp, es el que usa el server y los jugadores. Cuando abrimos el Half-Life nuestro cliente usa ese puerto, pero si lo tenemos ocupado (por ejemplo con el hlds abierto) nos va a usar otro ej: 27018 (automaticamente). cuando pasa esto, el juego funciona normalmente pero si lo abrimos primero antes que el server, nos tira un error. Por eso, hay que ejecutar el hlds antes que el juego.
O para evirtar el conflicto podemos poner -port 27018 en el acceso directo del hl o tambien

port 27018

en sus cfg o en consola.
O bueno, tambien se puede cambiar el puerto del servidor pero para que sea mas clara esta parte de la guia vamos a usar el mismo 27015 siempre para el server.

El 27015 (tcp) es para usar las funciones rcon (es el mismo puerto pero con otro protocolo), que sirve para enviar comandos a distancia.
Parece que no, pero es muy ultil, en especial si vamos a querer abrir el servidor en una notebook y administrarlo desde otra pc dentro del juego. o con un software de terceros como HLSW [www.hlsw.net]. A proposito, es una buena herramienta para servidores, tambien hay otras apps gratiutas para android y son muy faciles de usar.
(esos rumores de que usar RCON lo hace vulnerable a ataques o hacks son mentira. Pero, si, hay un problema cuando se usa amxmodx y otro plugin mas, pero como es problema de los “nosteam”, no voy a alargar mas la guia con eso. nosotros vamos a jugar legal). (El amxmodx es legal, el problema es “el otro” :v)

27020 UDP (HLTV transmission)
Seguro todos lo saben pero, ¿Que es hltv? es un programa que simula ser un jugador pero en realidad es un espectador XD y graba demos desde todas las perspectivas. No hace falta abrir el puerto al menos que quieran usarlo como retrasmisor. (Tenia la funcion principal de usarse como retrasmisor para no llenar de espectadores al server. pero hoy en dia es para trollear y grabar demos.)

26900 UDP (VAC service)
No se si este servicio sigue vigente, pero si no les cuesta nada, abranlo.

Y bien, eso es todo lo que tienen que saber sobre los puertos, les voy a dejar unas screens sobre como deberia quedarles para que puedan configurar su enrutador. realmente es facil pero en cada enrutador es distinto.


Algo que deben saber y tenerlo en cuenta, es la direccion ip local Se puede apreciar en la screen la direccion default que tenemos todos, pero por si acaso, la forma de saberla es:

Tecla windows+R > cmd > en la consola tipeamos: ipconfig y verificamos la parte IPv4 y esa es nuestra ip local.

La direccion ip local tambien nos va a servir para conectarnos nosotros mismos al servidor. Y aunque estemos en otra computadora, en LAN, no vamos a ver nuestro servidor en la lista de internet. solo en la lista “servidores lan”. Pero, si, va a ser visible para los demas, (en teoria).

Podemos consultar con un amigo de steam si le es visible, por si tenemos dudas, y recuerden que aveces tarda algunos segundos demas en ser visible. no mas de 2 minutos, dependiendo del servicio de steam.
(si la direccion o el puerto es incorrecto el server no va a ser publico, pero si funcionara en lan y talvez si no lo verificamos con otra pc con otra conexion u algun amigo, no nos vamos a dar cuenta si es visible o no.)
Tambien existe una api de steam que verifica esto, pero creo que aun no hace falta explicar eso.

Segundo paso: Instalacion

Para proceder con la Instalacion, tenemos que conocer esta herramienta que nos ofrece steam:

Originally posted by developer.valvesoftware.com:

SteamCMD

El SteamCMD (también conocido como consola del cliente de Steam) es una versión de comandos del cliente de Steam. Su uso principal es instalar varios servidores dedciados con una interfaz de líneas de comando. Funciona con juegos que utilicen un sistema de contenido SteamPipe. Todos los juegos han migrado su antiguo sistema HLDSUpdateTool a SteamCMD.

Nota: Es una consola

Originally posted by developer.valvesoftware.com:

Descargar SteamCMD

Windows
1. Crea una carpeta para SteamCMD.
Por ejemplo

C:steamcmd

2. Descarga SteamCMD para Windows: [link]
3. Extrae el archivo ZIP en una carpeta.

Lo siguiente es la instalacion del servidor:
voy a reescribir el texto original, porque al parecer el traductor que usaron les fallo y tiene algunos errores.

  • Identificación de SteamCMD
    Una vez abierta la consola, tenemos que logear para descargar algo. para eso escribimos

    login anonymous
  • Descargar una aplicación (HLDS)

    1. Una vez identificados como anonymous. Vamos a establecer donde queremos instalar la carpeta del servidor, de lo contrario la carpeta default es C: y se van a descargar TODOS los archivos sueltos en C: y va a ser tremendo ponerlo en orden. lo digo por experiencia :V
    Para eso simplemente escribimos

    force_install_dir nombre de carpeta

    Pero por seguiridad vamos a usar una carpeta dentro de SteamCMD y para eso ponemos:

    force_install_dir ./HLDS/

    2. El HLDS tiene un bug y es un caso especial por eso escribimos la linea:

    app_update 90 -beta beta validate

    Y aqui es donde esta el bug, una vez termine la descarga e instalacion, escribimos la misma linea de nuevo para verificar los archivos. si es necesario lo hacemos hasta 3 veces pero si tenemos suerte en la primera va a descargar todos los archivos, quizas ya este solucionado el problema.

    3. Salimos de SteamCMD con el comando:

    quit

    Tambien cerramos Steam.

    En el caso de algun problema de algun tipo de archivo perdido, en steamcmd, tipeamos

    validate

    Pero solo en caso de que nos de error Steamcmd por alguna razon.

    Originally posted by developer.valvesoftware.com:

    Validation will overwrite any files that have been changed. This may cause issues with customized servers. For example, if you customize mapcycle.txt, this file will be overwritten to the server default. Any files that are not part of the default installation will not be affected.

    Antes de empezar a customizar el servidor, tenemos que tener en cuenta que una futura validacion o actualizacion de los archivos, nos puede cambiar toda la configuracion por el remplazo de los archivos. ej mapcycle, server.cfg, etc. (A tener en cuenta). Por eso recomiendo que ya no vamos a usar mas el SteamCMD (almenos que el hlds este desactualizado) y vamos a “cortar” la carpeta HLDS para llevarla otro lugar, como el desktop y asi empezamos con la configuracion que deseamos.

Existe la forma automatizada, donde ejecutamos un bat y listo, pero si por alguna razon hay un error por distintas causas(y los hay muy seguidos), el steamcmd va a tirar error y no vamos a saber porque, porque se va a cerrar. por eso esta es la forma mas facil al fin y al cabo.

Eso es todo, ya tenemos nuestro servidor, solo nos queda por abrir el hlds.exe y ver como funciona. En la casilla game tiene que aparecer Half-Life y en mapa crossfire o elijan algun otro, de lo contrario el servidor queda en standby. no deberia pero por si acaso pongan map crossfire en la consola del server y listo.
En el espacio de jugadores maximos; en base al promedio de computadoras e internet de hoy en dia, creo que hasta 14 jugadores pueden poner. luego configuran los rates en server pero en otra guia lo voy a explicar mejor.
Los demas espacios ya saben que poner, ya estan entrenados! jaja salu2.

Recuerden que pueden hacerle un acceso directo a hlds.exe con una linea de comandos:

-high -console -game valve -port 27015 +ip 192.168.1.2 +maxplayers 10 +sv_lan 0 +map crossfire

-console Abre el servidor en modo consola, mas rapido y menos ram.
El servidor se abre con prioridad alta, con -port establecemos el puerto default, y verificamos la ip local con +ip (si usamos wifi es normal que se cambie) y cuando eso pase, el servidor se va a cerrar instantaneamente.
Nota: si se cambia nuestra ip local debido a nuestra configuracion del modem, los puertos que habiamos abierto anteriormente, no van a existir porque los establecimos para una direccion ip determinada. Resultado: servidor LAN
En la mayoria de los casos pueden reiniciar el modem y generalmente el primer dispositivo conectado al modem es el que va a tener la ip default que habiamos puesto, en pocas palabras, desactiven el wifi para abrir el servidor.

Problemas comunes

En la primera ejecucion, podemos encontrarnos con algunos problemas comunes, generalmente se usan accesos directos para abrir el servidor mas rapidamente, por eso no se notan estos errores.

Seguramente cuando tengan el Servidor directo de fabrica y lo abran, les va a aparecer algo asi:

Cuando pasa esto, no hace falta seleccionar el game, se supone que ya esta en Half-Life pero por alguna razon no lo dice. por eso no tocamos nada ahi porque sino se va a deseleccionar.
-La seleccion de mapa tampoco se puede seleccionar pero es normal
Lo que vamos a hacer es cambiar lan por internet y poner una contraseña rcon. y listo.

Una vez abierto, si lo tenemos en español seguramente va a quedarse chica la interfaz, por eso la agrandamos un poco para ver la consola y deberia quedar asi:

Como podemos ver el server esta en stand-by como supuse que quedaria en una parte de la guia, lo que vamos a hacer es sensillamente poner un map y listo:

Siempre que abran un servidor, ese mensaje de steam quiere decir que en teoria esta funcionando y es visible en la lista de servidores.
-Para evitar estos pasos podemos crear un aceso directo con estos parametros:

-high -console -game valve -port 27015 +maxplayers 10 +sv_lan 0 +map crossfire

Se va abrir automaticamente en modo consola:

Pueden notar un pequeño error con un archivo cfg, pero es normal, eso sucede porque viene preeconfigurado y ejecuta esas cfg, que por ahora no existen porque todavia no banneamos a nadie, esos archivos se crean en el momento que baneamos a un jugador o su ip.
Recuerden que el servidor esta de fabrica! Disfruten.

SteamSolo.com