Configuração de servidor dedicado
"Você é tão pequeno! É muito engraçado!" Este artigo ou seção é um esboço. Logo, não está completo. Você pode ajudar a Wiki do Team Fortress expandindo o artigo original (em inglês). |
Índice
Instalação
Instalação de Servidor com base em Windows
Para um guia passo a passo sobre a criação de um servidor dedicado windows, veja Servidor dedicado Windows
Este pequeno tutorial lhe guiará em como criar um Servidor Dedicado para Team Fortress 2 em um computador com Windows. Uma das primeiras ferramentas, que é também uma das mais importantes para isto, é a Ferramenta de Atualização de Servidor Dedicado de Half-Life (chamado em inglês de Half-Life Dedicated Server Update Tool ou Steamcmd). o Steamcmd é um aplicativo que vai instalar completamente a última versão de conteúdo de servidor para seu computador. Se ele já estiver instalado ao iniciar o Steamcmd, a ferramenta irá atualizar a instalação de Servidor Dedicado atual para a versão mais recente.
Você pode baixar o Steamcmd no site: http://media.steampowered.com/installer/steamcmd.zip (em inglês)
Ao baixá-lo, execute a ferramenta com um prompt de comando e um instalador irá aparecer para te guiar na instalação inicial. Para poupar tempo e banda-larga durante o download de arquivos, é recomendado que você instale a Steamcmd na pasta principal de uma instalação de Servidor Dedicado de Half-Life já existente.
Para informações de instalação mais detalhadas, visite https://forums.srcds.com/viewtopic/5439 (em inglês)
MdD
A MdD (ou MOTD, em inglês) é a "mensagem do dia". Esta é a mensagem que aparece ao conectar com sucesso ao servidor. A MdD pode ser uma mensagem simples ou uma página da web complexa. Para modificar a mensagem, entre na pasta orangebox/tf e edite o texto nos arquivos motd.txt e motd_text.txt (o segundo arquivo é usado para jogadores que desabilitaram MdD's de HTML no jogo).
Os dois arquivos tem limites, com o primeiro limite sendo que o arquivo não pode ter mais de 1 kilobyte de tamanho (aproximadamente 1536 caracteres). O arquivo motd_text.txt, por outro lado, irá carregar qualquer HTML como se fosse um navegador da internet básico.
Um jeito de ultrapassar os limites de arquivo (como o limite de tamanho) é colocar um link para um arquivo .html hospedado na web. POr exemplo, colocar este código como seu arquivo motd.txt: https://www.your-clan-website.com/motd.html irá mostrar o arquivo motd.html.
Para um tutorial em como criar uma MdD que caiba na quadro negro, visite https://www.specialattack.net/node/39 (em inglês)
https://hlds101.com/configuring.htm (em inglês)
https://www.counterwiki.com/index.php/Motd.txt (em inglês)
Lista de Mapas
A Lista de Mapas é um arquivo usado para listar todos os mapas que podem ser jogados no servidor. Se você quiser usar um plugin de votação de mapas personalizado, lembre-se de colocar o nome tanto no arquivo maplist.txt e na lista de votação para que ele funcione corretamente. SRCDS (sigla inglesa para Source Dedicated Server ou Servidor Dedicado Source) permite que você edite esta lista de mapas jogáveis, encontrada em orangebox/tf/maplist.txt, facilmente.
Para adicionar mapas customizados, coloque o arquivo .bsp no diretório orangebox/tf/maps e então encontre o arquivo maplist.txt em orangebox/tf/maplist.txt nos diretórios do servidor e então adicione seu nome em uma nova linha na lista (ao listar nomes de mapas, use o mesmo nome do arquivo .bsp, sem contar a extensão .bsp).
Prevenção de Trapaças
Antitrapaça
Valve Antitrapaça irá automaticamente detectar e banir usuários utilizando programas para jogar num servidor de forma injusta (exemplos como speed hacking, aimbots e em alguns casos extremos, o uso de comandos relacionados a sv_cheats, como noclip). Valve Antitrapaça está habilitada por padrão em todos os servidores e precisa de um administrador para que ela seja desativada ao adicionar a linha de comando -insecure às opções de início.
Configurações de Servidor
Fora de um servidor sem Valve Antitrapaça, o primeiro modo de se proteger de trapaças é a variável do servidor (comando do console) sv_pure. Esta variável controla o local de onde o cliente obtém as informações e age como um modo de restringir quais arquivos e conteúdo podem ser modificados/substituídos do lado do jogador. Isto pode ser explorado por jogradores se não for configurado corretamente. Há a opção (não é vital) de definir essa variável como 1 ou 2 se não quiser qualquer forma de trapaça nos seus servidores. Por padrão, sv_pure está definido como 0, o que não restringe nada. Os possíveis valores são 0, 1 e 2, que são explicados individualmente abaixo.
- sv_pure = 0
- Permite que o cliente especifique a localização de QUALQUER arquivo de jogo. Um cliente poderia usar arquivos modificados para ganhar uma vantagem injusta ao fazer coisas tais como mudar os modelos do inimigo para que usem cores brilhantes, fazer paredes invisíveis, adicionar algo que indique onde está a inteligência ou qualquer coisa que você pode imaginar. Valve Antitrapaça não pode proteger contra tais tipos de exploits porque eles não modificam o processo do jogo em si. O que os clientes podem fazer está por conta do servidor.
- sv_pure =1
- Restringe onde o cliente pode obter informações baseado em uma lista branca (lista de conteúdo permitido) A lista padrão ainda permite o uso de modelos de jogador customizados, bem como exploits em potencial como texturas brilhantes para jogadores.
- sv_pure = 2
- Força o cliente a ignorar TODO o conteúdo de usuário, o forçando a usar a informção definida pelo Steam. Apesar de ser o modo mais seguro, sv_pure 2 irá impedir todos os modelos/skins customizados, assim como sprays customizados.
Para maiores informações em servidores sv_pure, incluindo informação no formato da lista branca, veja Pure Servers na comunidade de desenvolvedores da Valve.
Vários servidores geralmente rodam o comando sv_pure com o calor 1 junto com uma lista branca modificada seja para habilitar arquivos de conteúdo que são difíceis ou impossíveis para usar como trapaça ou remover a habilidade de jogadores usarem seus próprios modelos.
Plugins Externos
Vários Plugins/Addons Externos fornecem uma proteção a mais contra jogadores mal-intencionados. Veja SRCDS Hardening no site alliedmods.net (em inglês) para mais informações e plugins adicionais.
Opções da Linha de Comando
Command Line Options na comunidade de desenvolvedores da Valve
Jogo Rápido
Jogo Rápido permite que servidores sejam disponíveis pelo botão de “Começar a jogar” no menu principal. Há um artigo sobre como preparar seu servidor para o Jogo Rápido num artigo do Suporte Steam que pode ser encontrado aqui. (em inglês)
Exemplo de um arquivo Server.cfg para servidor dedicado TF2
// Configurações Gerais // // Nome de host do servidor hostname seuservidor.com Servidor de TF2 // Modifica o máximo de jogadores mostrado para os clientes sv_visiblemaxplayers 24 // Número máximo de rodadas jogadas antes de mudar de mapas mp_maxrounds 5 // Ativação da trava da diferença de tempo quadro-a-quadro host_framerate 0 // Ativação do estado de pausa do servidor setpause 0 // Controla onde o cliente receberá conteúdo // 0 = qualquer lugar, 1 = qualquer lugar na lista branca, 2 = somente conteúdo oficial sv_pure 0 // Se o servidor pode ser interrompido sv_pausable 0 // Tipo de servidor 0=internet 1=lan sv_lan 0 // Se o servidor força a consistência de arquivo para arquivos críticos sv_consistency 1 // Coleta as estatísticas de uso de CPU sv_stats 1 // Execute comando de usuários banidos // exec banned_user.cfg exec banned_ip.cfg writeid writeip // Contato & Região // // Email de contato para o dono do servidor sv_contact emaildochefao@google.com // A região na qual este servidor se encontra. // -1 é o mundo, 0 é a costa leste dos EUA, 1 é a costa oeste dos EUA // 2 América do Sul, 3 Europa, 4 Ásia, 5 Austrália, 6 Oriente Médio, 7 África sv_region 2 // Configurações Rcon // // Senha para autenticação rcon rcon_password minhasenha // Número de minutos para banir usuários sem autenticação rcon sv_rcon_banpenalty 1440 // Número máximo de vezes que um usuário pode falar na autenticação rcon antes de ser banido sv_rcon_maxfailures 5 // Configurações de RegistrosLog Settings // // Habilita registros de arquivo, console e udp < on | off >. log on // Registra informação de servidor num só arquivo. sv_log_onefile 0 // Registra a informação do servidor no arquivo de registros. sv_logfile 1 // Registra bans de servidor nos registros do servidor. sv_logbans 1 // Mostra informações de registro no console. sv_logecho 1 // Configurações de Taxas // // Limite de taxa de quadros fps_max 600 // Taxa de bandalarga mínima permitida no servidor, com 0 == ilimitada sv_minrate 0 // Taxa de bandalarga máxima permitida no servidor, com 0 == ilimitada sv_maxrate 20000 // Atualizações mínimas por segundo permitidas pelo servidor sv_minupdaterate 10 // Atualizações máximas por segundo permitidas pelo servidor sv_maxupdaterate 66 // Configurações de Download // // Permita aos clientes o envio de arquivos de customização sv_allowupload 1 // Permita aos clientes que baixem arquivos sv_allowdownload 1 // Tamanho de arquivo máximo permitido para envio, em MB net_maxfilesize 15 // Balanceamento de Time // // Permitir balanceamento de times mp_autoteambalance 1 // Tempo depois dos times ficarem desbalanceados para tentar mudar jogadores. mp_autoteambalance_delay 60 // Tempo depois dos times ficarem desbalanceados para mostra um aviso de balanceamento mp_autoteambalance_warning_delay 30 // Times estão desbalanceados quando um time tem tantos jogadores a mais que o outro (0 desativa esta checagem) mp_teams_unbalance_limit 1 // Tempos de Jogo e Rodada // // Habilita cronômetros de espera entre rodadas. ATENÇÃO: Definir isto para zero irá causar um bug com tempo de preparação, que poderá ser modificado para 5:20 (5 minutos e 20 segundos) em alguns servidores! mp_enableroundwaittime 1 // Tempo após vencer uma rodada para reinício de rodada mp_bonusroundtime 8 // Se não for zero, a rodada atual será reiniciada para o número de segundos mp_restartround 0 // Habilita morte súbita mp_stalemate_enable 1 // Tempo limite (em segundos) para a rodada de empate. mp_stalemate_timelimit 300 // Tempo de jogo por mapa em minutos mp_timelimit 35 // CVARS de Cliente // // Restringe modos de espectador a jogadores mortos mp_forcecamera 0 // Habilita se o servidor permite o modo de espectador ou não mp_allowspectators 1 // Habilita sons de pegadas mp_footsteps 1 // Habilita trapaças de jogo sv_cheats 0 // Após tantos segundos sem receber uma mensagem do cliente, o cliente será expulso sv_timeout 900 // Tempo máximo que um jogador poderá ficar parado (em minutos), deverá ser equivalente a sv_timeout mp_idlemaxtime 15 // Como lidar com jogadores parados 1=definir como espectador 2=expulsar mp_idledealmethod 2 // Tempo (em segundos) entre diferentes usos do spray decalfrequency 30 // Comunicações // // Habilita configurações de voz sv_voiceenable 1 // Jogadores podem ouvir todos os outros, não importa o time. 0=desligado 1=ligado sv_alltalk 0 // Quantidade de tempo que os jogadores podem conversar após o jogo acabar mp_chattime 10 // Habilita modo de festa // tf_birthday 1
Addons/Mods Populares
Proteção Extra
- DoS Attack Fixer for TF2 (em inglês) – Um plugin de servidor usado para impedir ataques de Negação de Serviço.
- DBlocker (em inglês) - DBlocker é um plugin anti-trapaça.
Geral
- Metamod:Source (em inglês) - Base de vários outros plugins
- Event Scripts (em inglês) - Um ambiente de scripts poderoso
Gerenciamento de Admin
- Mani's Admin-Plugin (em inglês)
- SourceMOD (em inglês) - Também providencia uma enorme plataforma de scripts para outros plugins
- beetlesmod (em inglês)