A resposta rápida
Espere. Um servidor Rust novo passa até dez minutos gerando o mapa e a NAV mesh antes de aceitar conexões, e o processo recomeça do zero toda vez que o servidor é reiniciado. Acompanhe o console RCON se quiser ver o progresso em vez de ficar adivinhando.
Pontos principais
- O servidor parece online porque o processo está rodando. Ele só não está pronto.
- A geração leva até 10 minutos, mais tempo em um tamanho de mundo grande.
- Reiniciar para tentar resolver é a única coisa garantida a estender a espera.
- Mudar a seed ou o tamanho do mundo aciona o mesmo processo de novo.
- O RCON mostra a etapa, então você não precisa ficar esperando na fé.
O que o servidor está fazendo
Iniciar um servidor Rust novo é um momento empolgante, e é frustrante quando a coisa que você acabou de pagar não te deixa entrar. A boa notícia é que isso é uma espera, não um defeito.
Na primeira inicialização, o servidor precisa construir duas coisas antes que qualquer um possa jogar nele:
- O mapa
- O terreno em si, gerado a partir da sua seed e do tamanho do mundo. Nada existe até isso terminar.
- A NAV mesh
- A camada de pathfinding que animais e NPCs usam para se mover pelo terreno. Ela não pode ser construída até o terreno existir, então roda depois, não junto.
Juntas, essas etapas podem levar até 10 minutos, dependendo da configuração do servidor e de quão grande é o mundo que você pediu. O processo do servidor fica ativo o tempo todo, e é exatamente por isso que parece que algo está errado. Ele está online. Só ainda não terminou.
Não reinicie. Reiniciar abandona o trabalho em progresso e recomeça a geração do zero. Quase todo relato de um servidor que "nunca termina de gerar" acaba sendo um servidor que foi reiniciado duas ou três vezes por alguém tentando ajudar o processo.
O que aciona uma regeneração
A primeira inicialização é o caso óbvio, mas não é a única vez que você vai encontrar essa espera. Qualquer mudança que invalide o mundo existente força uma reconstrução.
- A primeira inicialização de um servidor totalmente novo.
- Mudar a seed do servidor. Uma seed diferente é um mundo diferente.
- Mudar o tamanho do mundo. Mesmo motivo, e tamanhos maiores demoram mais para construir.
- Um wipe que limpa o mapa. O terreno precisa voltar antes que qualquer um possa pousar nele.
Vale a pena planejar isso se você roda um servidor que as pessoas esperam que esteja disponível. Mudanças frequentes de mapa significam quedas frequentes, e se você pretende manter o servidor consistentemente online, o momento de experimentar com seeds é antes de contar para alguém sobre ele, não em uma sexta-feira à noite.
Acompanhando o progresso
Você não precisa ficar sentado atualizando a página na esperança. Estas duas opções mostram em que etapa o servidor realmente está:
- O console RCON embutido no seu painel de controle. Nada para instalar, e suficiente para distinguir geração de um problema de verdade.
- Um cliente RCON externo para mais visibilidade e gerenciamento. Recomendamos o RustAdmin ou o BattleMetrics.
Nosso guia de ferramentas de admin para servidor Rust compara essas e as outras opções em mais detalhes, incluindo quais são gratuitas.
Como evitamos que isso deixe todo mundo lento
A geração do mapa é uma carga de trabalho pesada e majoritariamente de thread única, que pode manter um núcleo de CPU perto da utilização total durante toda a execução. Em uma máquina compartilhada, isso é um problema para todo mundo, não só para o servidor fazendo o trabalho.
Nossa plataforma lida com isso detectando quando uma nova seed ou tamanho de mundo foi definido e vinculando aquele servidor a um núcleo de CPU dedicado durante a geração. O trabalho pesado fica isolado em vez de poder vazar pela máquina toda.
O resultado é que um vizinho gerando um mapa de tamanho de mundo 6.000 não produz picos de lag no seu servidor, e o seu não produz picos no dele. Isso não torna a geração mais rápida, só impede que ela seja um problema para todo mundo.
Quando não é a geração do mapa
Se você realmente deixou o servidor em paz por 15 minutos e ainda não consegue entrar, é razoável começar a procurar em outro lugar.
- Incompatibilidade de versão
- Depois de uma atualização do Rust, o cliente e o servidor precisam estar na mesma versão. Se o servidor não atualizou, nenhum método de conexão vai funcionar.
- Endereço errado
- Confira as informações de conexão no seu painel de controle em vez do endereço que você anotou antes, principalmente se o servidor foi reconstruído.
- Reiniciado no meio da geração
- Confira a saída do RCON. Se ela estiver de novo numa etapa inicial, algo o reiniciou e o relógio zerou.
- Um erro de configuração travando a inicialização
- A saída do console normalmente vai indicar isso. Uma linha malformada em
server.cfgpode travar uma inicialização de um jeito que parece muito com uma espera longa.
Se você já passou por tudo isso, abra um ticket com a saída do RCON anexada. O texto do console é o que transforma uma conversa de suporte de tentativa e erro em uma solução.