Como rodar servidor dedicado de QuakeLive (SteamCMD)
O Steam Console Client, ou SteamCMD, é uma versão em linha de comando(command-line) para o cliente da Steam. Seu principal uso é instalar e atualizar vários servidores dedicados disponíveis na Steam usando uma interface de linha de comando. Ele funciona com jogos que usam o sistema de conteúdo SteamPipe(*). Hoje todos os jogos foram migrados em 2013 do obsoleto HLDSUpdateTool(Half-Life Dedicated Server Update Tool) para o SteamCMD.
* O SteamPipe é o novo sistema de distribuição de conteúdo da Steam. Ele altera a maneira como os jogos(incluindo servidores dedicados) são baixados, atualizados e armazenados. SteamPipe(https://developer.va.../wiki/SteamPipe).
- Mais info(suporte da Steam) > https://support.stea...=7388-QPFN-2491
Instalando e atualizando o SteamCMD
1- Crie uma pasta pra armazená-lo, pode ser num diretório principal como o "C:/" por exemplo. Nomeie esta pasta pra algo como "SteamCMD". Então, neste exemplo, ficará assim: "C:/SteamCMD".
2- Baixe o arquivo executável "steamcmd.exe"(https://steamcdn-a.a...er/steamcmd.zip). Ele está zipado, então extraia o executável dentro da pasta que vc já criou para este aplicativo.
3- Execute o arquivo "steamcmd.exe" e ele irá automaticamente baixar os arquivos necessários dentro da pasta que ele está armazenado(por isso a necessidade de já ter de antemão uma pasta pra ele!), sob a forma de um prompt(interpretador de linha de comandos, semelhante ao DOS do Windows) como na imagem acima.
O executável irá extrair 4 pastas: bin, logs, package e public. Mas ainda falta muito mais arquivos, então caso esteja tendo dificuldades em atualizar e obter todo o conteúdo do servidor dedicado por completo, clique com o botão direito do mouse encima do executável e selecione a opção "execute como administrador"(caso seu sistema operacional for um Win 8.1, por exemplo). E deixe o arquivo fazer o seu trabalho, onde ele finalmente irá atualizar os arquivos e baixar 7 arquivos ".DLL", 3 pastas novas(appcache, dumps e steamapps), e alguns arquivos ancestrais.
O prompt tem o comando "help", que fornece informações sobre alguns comandos de recursos úteis, como:
- Login: Loging in to Steam
- Scripts: Executing a sequence of commands via a script file
- Commandline: Executing commands directly via the OS command line
- Convars: Building Steam application content(only for licensed Steam application developers)
- App_update: Instala/atualiza uma aplicação Steam no local de sistemas dos arquivos(ex. servidores dedicados)
Vc pode também usar o comando "find <linha>" pra ver uma lista de todos os comandos e convars que contém ou referencia <linha>. Ex.: "find force_install_dir" aparecerá na linha abaixo a mensagem "force_install_dir <directory>"
Fazendo login no SteamCMD
Após todo esse processo, vc precisará fazer um LOGIN pra poder baixar os conteúdos dos arquivos de sevidores necessários pra determinado jogo, no caso aqui, o QuakeLive. Há 2 formas de fazer isso:
- Anonimamente(recomendadíssimo):
- Conta da Steam: Alguns servidores requerem que vc faça login da sua conta.
continua(caindo de sono)...
Baixando um app
1- Execute o steacmd.exe e faça o login anonimamente.
2- Configure o diretório(local pra armazenamento dos arquivos de servidor de determinado jogo) pra instalação dos app(use slashes pra Linux/OS X, e backslashes pra Windows), usando o comando "force_install_dir".
Ex.: Digite no prompt(ou seja, o SteamCMD em sí) "force_install_dir C:\SteamCMD\qlds".
3- Instale ou atualize o app usando o comando app_update, junto com o Steam Applocation ID do jogo.
Pra também validar o app, adicione o comando validate para o comando. Este comando checará todos os arquivos de servidor pra garantir que eles sejam compatíveis com os arquivos do SteamCMD. Útil pra caso vc pensar que alguns arquivos estão faltando ou estão corruptos.
Cuidado, pois este comando sobre-escreve qualquer arquivo que vc tenha alterado/customizado pelo arquivo padrão, podendo resultar em alguns erros indesejáveis(Ex. caso vc tenha personalizado seu próprio arquivo "mapcycle.txt", em jogos como Counter-Strike).Então é recomendável utilizar o comando validate só na instalação inicial do servidor, caso este esteja tendo alguns problemas.
Exemplo de como instalar e validar o servidor dedicado de QuakeLive(o Steam App ID dele é "282440"):
"app_update 282440 validate"
4- Agora saia do SteamCMD apropriadamente, com o comando "quit".
Servidores suportados pelo SteamCMD
Uma lista de servidores conhecidos que usam o SteamCMD pra instalar está disponível na página de Dedicated Servers List(https://developer.va...ed_Servers_List).
Note que qualquer comando extra precisa ser executado ANTES da linha app_update.
Obs.: Note também que o nome do QuakeLive não está na lista, hahaha.
Supostos problemas com servidor dedicado no Windows
De acordo com PredatH0r, o usuário do ESReality, ele diz no tópico sobre o assunto que o jogo não é oficialmente suportado(note que o nome do jogo não aparece na lista na página do Dedicated Servers List da Valve), e que ainda tem algumas limitações, como:
- Quando vc arrasta ou usa as barras de rolagem do servidor, o jogo congela.
- Server não baixa itens do workshop que vc coloca no workshop.txt(mas diz aos jogadores que eles precisam baixar isto)
- Eventualmente kicka os jogadores por mensagens de "unpure .pk3".
PredatH0r: "Eu tenho um script de início de servidor(https://pastebin.com/DmVz4HGg) que cuida do download do workshop da Steam, incrementa os números de porta para cada exemplo de servidor, e inicia steam_quakelive.exe + set dedicated 1.
Em seguida, crie um arquivo de texto steam_appid.txt com "282440" dentro nele."
Link da postagem: http://www.esreality...ide/#pid2780164
Links úteis:
Fonte original(Site da Valve) > https://developer.va...m/wiki/SteamCMD
Linux Dedicated Server install guide by Yakumo(ESReality) > http://www.esreality...-install-guide/
QL Linux Dedicated Server by Yakumo(Steam community) > https://steamcommuni...se&id=542966946
Wiki do Minqlx(Home oficial do mod) > https://github.com/M...ino/minqlx/wiki
https://adrenaline.u...w.594636/page-2
http://www.dxbr.net....t=134&view=next
tópico ainda em construção, porraaaaa!!!!