2hours.gg/

Servidores de jogos por hora. Pague só quando jogar.

Como configurar um servidor Counter-Strike 2 privado e vanilla

Quase todo guia de servidor CS2 na internet é na verdade um guia de MatchZy: um plugin completo de partida competitiva, rounds de faca e um monte de config. Aqui é o contrário. Você quer um servidor dedicado CS2 privado para você e seus amigos, puro vanilla, sem plugins. A configuração é bem mais curta do que a internet faz parecer, e tudo se resume a uma coisa que a maioria esquece: o login token agora é obrigatório.

Primeiro: o token GSLT (não é opcional)

O CS2 não aceita conexões em um IP público sem um Game Server Login Token (GSLT). Esse é o motivo mais comum de um servidor novo "subir bem, mas ninguém consegue entrar". Pegue um de graça:

  • Vá até a página Steam Game Server Account Management (steamcommunity.com/dev/managegameservers).
  • Crie um token para o app ID 730 (Counter-Strike 2). Você recebe uma string longa de volta.
  • Ele fica vinculado à sua conta Steam. Um token por servidor. Não compartilhe; um token vazado pode fazer os servidores da sua conta serem banidos.

Instale o servidor

O servidor dedicado CS2 é o app 730 (o mesmo do jogo). Instale-o com o SteamCMD:

./steamcmd.sh +login anonymous \
  +app_update 730 validate \
  +quit

Login anônimo funciona; você não precisa ter o jogo na conta do servidor. A config fica em:

<install>/game/csgo/cfg/server.cfg

Um server.cfg vanilla

Cole isto, mude os três valores marcados com CHANGE ME. Sem plugins, sem MatchZy.

// --- Identity ---
hostname "My Private CS2 Server"          // CHANGE ME
sv_setsteamaccount "YOUR_GSLT_TOKEN"      // CHANGE ME - the token from above

// --- Lock it down ---
sv_password "friends-only"                // CHANGE ME - join password
rcon_password "pick-a-long-secret"        // admin console over RCON

// --- Vanilla behaviour ---
sv_cheats 0
sv_pure 1
sv_lan 0
mp_autoteambalance 1
mp_limitteams 2

// --- A sane private match ---
mp_maxrounds 24
mp_roundtime 1.92
mp_freezetime 15
mp_warmuptime 30
sv_alltalk 0
sv_deadtalk 1

Essa é uma config competitiva privada completa. O modo de jogo e o mapa inicial NÃO estão aqui: o CS2 define isso na linha de lançamento, porque game_type e game_mode precisam ser conhecidos antes de o mapa carregar.

A linha de lançamento

Inicie o servidor a partir da pasta de instalação. Note que agora é o binário cs2 com -dedicated, não mais o srcds_run:

./game/bin/linuxsteamrt64/cs2 -dedicated \
  -ip 0.0.0.0 -port 27015 \
  +game_type 0 +game_mode 1 \
  +map de_dust2 \
  -maxplayers 10 \
  +exec server.cfg
  • game_type 0 + game_mode 1 é o Competitivo 5v5 padrão. Veja a tabela abaixo para os outros modos.
  • map de_dust2 é o mapa inicial. Qualquer mapa oficial funciona (de_mirage, de_inferno, cs_office…).
  • exec server.cfg roda suas cvars, incluindo sv_setsteamaccount, antes de os jogadores se conectarem.
  • A porta 27015 é a porta do jogo e das consultas A2S. Abra-a no seu firewall (UDP + TCP).

Os pares game_type / game_mode

O CS2 não tem uma única cvar de "modo". Cada modo é um par de dois números:

game_type  game_mode   Mode
    0          0        Casual
    0          1        Competitive (5v5)
    0          2        Wingman (2v2)
    0          3        Hostage / Casual (cs_ maps)
    1          0        Arms Race
    1          1        Demolition
    1          2        Deathmatch

Trocar o game_type em um servidor ativo é instável no CS2, então escolha seu modo na linha de lançamento e reinicie o processo para mudar. Trocar só o mapa (changelevel de_mirage) dentro do mesmo modo é tranquilo.

Carregando um mapa da workshop

Mapas da workshop não são um argumento de lançamento. Você os carrega em tempo de execução com host_workshop_map e o workshop ID do mapa, e o servidor baixa e o hospeda. Adicione -disable_workshop_command_filtering à linha de lançamento primeiro, depois no console do servidor (ou via RCON):

host_workshop_map 3070315466

O número é o ID da URL da página da workshop. O primeiro carregamento puxa o mapa da Steam, então dê um tempo. Essa é a pegadinha do CS2 em que todo mundo tropeça: colocar o nome de um mapa da workshop depois de +map na linha de lançamento não faz nada; tem que ser host_workshop_map.

Mantendo privado

Com o sv_password definido, só quem digita a senha consegue se conectar. Compartilhe o IP do seu servidor e a senha com o seu grupo e peça para usarem o console: connect your.server.ip:27015; password friends-only. Uma senha também mantém o servidor fora do pool público de quick-play, que é o que você quer para uma partida privada.

Veja também

← Voltar para todos os guias