Windrose: montando um servidor dedicado — instalação via Steam, SteamCMD, Docker e ajustes de dificuldade
Crédito: Playnews
Guia completo

Windrose: montando um servidor dedicado — instalação via Steam, SteamCMD, Docker e ajustes de dificuldade

Fabian Fabian Lainé
Siga-nos no

Resumo

Windrose oferece um servidor dedicado gratuito e bem equipado para manter sua tripulação unida durante o período de calmaria antes de Ashlands. Entre a instalação via SteamCMD, o Docker no Linux e os ajustes de dificuldade, veja como transformar seu mundo em uma instância persistente que roda 24 horas por dia, 7 dias por semana.

Windrose está passando pelo seu primeiro grande período de calmaria. A última correção, a versão 0.10.0.8, remonta a 8 de julho de 2026 e cabia em três linhas: projéteis que atravessavam os cascos a longa distância, uma localização japonesa aprimorada e um bug conhecido nas bordadas de proa. Quanto a Ashlands, a primeira grande atualização de conteúdo, a Kraken Express já havia avisado em 28 de abril que ela exigiria «pelo menos seis meses» de trabalho, e o diário de desenvolvimento de 1º de julho ainda não anunciou nenhuma janela de lançamento.

Em outras palavras: até o outono, o que vai manter sua partida viva é a sua tripulação. E a maneira mais confiável de manter um grupo unido em um survival que já ultrapassou os dois milhões de cópias vendidas é um servidor dedicado: um mundo que roda permanentemente, onde cada um se conecta quando quiser, sem depender da disponibilidade do host. A ferramenta é gratuita, já vem junto com o jogo e, desde o patch 0.10.0.7 de 25 de junho, também roda no Linux graças a uma imagem Docker oficial.

Um aviso de vocabulário antes de começar: o cliente de Windrose está traduzido para o francês (interface e legendas), mas toda a parte do servidor permanece em inglês. As chaves dos arquivos de configuração, o manual DedicatedServer.md que acompanha a ferramenta e a documentação online não possuem nenhuma versão em francês: os nomes de campos citados abaixo devem ser escritos exatamente como estão.

Obtendo o servidor: três caminhos, e um erro clássico

O servidor dedicado de Windrose é um executável autônomo, gratuito, que não exige possuir o jogo na máquina hospedeira. Três maneiras de obtê-lo, todas equivalentes:

  • A partir dos arquivos do jogo: abra a pasta de instalação, depois R5\Builds. A subpasta WindroseServer (ou WindowsServer na Epic Games Store e na Stove) é o servidor.
  • A partir da ferramenta da Steam: na sua biblioteca, mude o filtro de categoria para «Ferramentas», procure por Windrose Dedicated Server e instale-o como um jogo. É o caminho mais simples de manter atualizado.
  • Via SteamCMD: o método recomendado para uma máquina sem interface gráfica, um servidor remoto ou uma automação.

O erro que todo mundo comete na primeira vez: iniciar o servidor a partir da pasta do jogo. Isso não vai funcionar. A pasta presente na instalação desempenha um papel interno do lado do cliente, e o cliente encerrará o processo assim que o vir rodando. Copie-o primeiro para outro lugar do disco, em qualquer local fora da árvore de pastas do jogo, e trabalhe nessa cópia.

Para o SteamCMD, o identificador de aplicativo do servidor é 4129620 (o jogo, por sua vez, tem o 3041230). A sequência cabe em quatro comandos:

  • force_install_dir "C:\Game_Servers\Windrose_Server"
  • login anonymous
  • app_update 4129620 validate
  • quit

A conexão anônima é suficiente: nenhuma licença é necessária para instalar o servidor. Para atualizá-lo mais tarde, basta executar novamente app_update 4129620 validate, que só baixa novamente os arquivos modificados.

Primeira inicialização e código de convite

Dois executáveis convivem na pasta. StartServerForeground.bat abre um console onde os logs vão passando: é a inicialização a ser priorizada, nem que seja para diagnosticar uma falha, e fechar a janela encerra o servidor. WindroseServer.exe inicia o processo em segundo plano, sem retorno visual, e será necessário passar pelo gerenciador de tarefas para encerrá-lo.

Na primeira inicialização, o servidor gera automaticamente seus arquivos de configuração e exibe no console um código de convite de oito caracteres, do tipo f1014dc1. Se a linha passou rápido demais, é possível encontrá-lo em R5\ServerDescription.json. Basta colá-lo na tela de conexão a um servidor do cliente e depois transmiti-lo à sua tripulação.

Acampamento de jogador em Windrose com vários NPCs recrutados
Um servidor dedicado mantém o acampamento, os PNJs e a produção on-line mesmo quando ninguém está conectado. Crédito: Kraken Express.

ServerDescription.json: os campos que realmente importam

Esse arquivo único, na raiz da aplicação, controla o próprio servidor. Regra absoluta: só o modifique com o servidor desligado, caso contrário seus valores serão sobrescritos.

CampoFunção
InviteCodeSeis caracteres no mínimo, apenas números e letras, com diferenciação entre maiúsculas e minúsculas.
IsPasswordProtected / PasswordDevem permanecer coerentes: true com uma senha, false com um campo vazio. Caso contrário, comportamentos erráticos.
WorldIslandIdIdentificador do mundo carregado na inicialização. O campo a modificar para alternar entre vários mundos.
MaxPlayerCountJogadores simultâneos permitidos. Valor padrão: 4.
UserSelectedRegionSEA, CIS ou EU (que abrange Europa e América do Norte). Vazio, o servidor escolhe de acordo com a latência.
UseDirectConnectionfalse: protocolo ICE e serviços de conectividade da editora. true: o servidor abre seus próprios sockets.
DirectConnectionServerPortPorta da conexão direta, 7777 por padrão, a ser liberada em TCP e em UDP.
AutoLoadLatestBackupIfHasBrokenDeixar em true: restauração automática a partir de uma cópia íntegra caso um arquivo esteja corrompido.
CanLaunchMultipleServerInstancesDeixar em false. Duas instâncias no mesmo banco de dados são corrupção garantida.

Dois campos nunca devem ser tocados: PersistentServerId, identificador único da instância, e DirectConnectionServerAddress, reservado para uso futuro.

IP direto: quando e como

Por padrão, Windrose se apoia em seus próprios servidores de conectividade e atribui as portas dinamicamente, via travessia de NAT, o que pressupõe um roteador com UPnP ativo. Essa via falha em dois casos: um provedor de acesso que filtra os serviços do jogo, ou uma hospedagem autogerenciada atrás de um roteador recalcitrante. A conexão por IP direto, adicionada em meados de abril, serve como solução alternativa. Em rede local, ela não exige IP pública nem redirecionamento de porta: o anfitrião informa seu endereço local e sua porta, por exemplo 192.168.1.100:7777.

Na internet, é necessário um IP público — alguns provedores o cobram como opcional — e um redirecionamento em TCP e em UDP do roteador para a máquina anfitriã, por exemplo 203.0.113.25:17777 para 192.168.1.100:7777. Atenção: no IP direto, os códigos de convite deixam de funcionar, e um erro de senha ou uma divergência de versão leva de volta ao menu principal sem nenhuma mensagem. Se nada funcionar: verifique o endereço da máquina com ipconfig, abandone a porta 7777 por uma porta mais alta e menos disputada (17777, 27890, qualquer porta livre abaixo de 65000), desative temporariamente o firewall e o antivírus, e aguarde o servidor terminar de inicializar antes da primeira tentativa.

Linux e Docker: o caminho oficial desde 25 de junho

É o ponto que a documentação on-line ainda não incorporou: atualizada em 18 de maio, seu FAQ ainda responde "Somente Windows" sobre o suporte a Linux. O patch 0.10.0.7, publicado em 25 de junho de 2026, adicionou, no entanto, imagens Docker com suporte a um servidor Linux, sendo as instruções fornecidas no arquivo DedicatedServer.md entregue na raiz do servidor. A imagem pública windroseserver/windroseserver foi, aliás, atualizada em 8 de julho, em sincronia com a versão 0.10.0.8.

O princípio: baixar a imagem com docker pull windroseserver/windroseserver:latest, criar no host uma pasta destinada aos saves, colocar nela um ServerDescription.json preparado, e então iniciar o container com o usuário ue_user, com a porta 7777 exposta em TCP e UDP, e a pasta Saved e o arquivo de configuração montados como volumes. Dois valores são obrigatórios no arquivo: UseDirectConnection como true e DirectConnectionServerPort como 7777. O container, portanto, não é acessado por código de convite, mas por IP direto, no endereço atribuído ao container (127.0.0.1:7777 para um teste local). Se o caminho da sua pasta de saves contiver espaços, coloque-o entre aspas no comando.

No que diz respeito ao dimensionamento, a desenvolvedora publica recomendações sóbrias: 8 GB de memória RAM e 35 GB de SSD para dois jogadores, 12 GB para quatro, 16 GB para dez, em dois núcleos a 3,2 GHz. Se você hospedar e jogar na mesma máquina, conte com 24 GB no total, sendo 16 para o cliente e mais 8 para o servidor.

Ajustar a dificuldade: os números reais das três predefinições

É o recurso mais subestimado do servidor dedicado. Cada mundo possui seu próprio WorldDescription.json, armazenado em R5/Saved/SaveProfiles/Default/RocksDB_v2/<versão>/Worlds/<identificador do mundo>/, e esse arquivo expõe claramente o que está por trás das predefinições propostas na criação de uma partida.

ParâmetroEasyMediumHard
MobHealthMultiplier0,71,01,5
MobDamageMultiplier0,61,01,25
ShipsHealthMultiplier0,71,01,5
ShipsDamageMultiplier0,61,01,25
BoardingDifficultyMultiplier0,71,01,5
CombatDifficultyEasyNormalHard

Duas conclusões. Primeiro, a diferença entre Medium e Hard é assimétrica: os inimigos aguentam 50% mais dano, mas só batem 25% mais forte. Passar para difícil, portanto, alonga sobretudo os combates em vez de torná-los mais punitivos. Se você busca tensão em vez de desgaste, aumente o MobDamageMultiplier para 1,5 ou 1,75 deixando a vida em 1,0 — a faixa permitida vai de 0,2 a 5,0 para esses dois multiplicadores. Em seguida, o BoardingDifficultyMultiplier não afeta nem os danos nem a vida: ele define o número de marinheiros inimigos a serem derrotados para vencer um abordagem. É o parâmetro a reduzir se seus abordagens parecem longos sem serem difíceis.

Os dois parâmetros mais interessantes são os de escalonamento em cooperativo. Coop.StatsCorrectionModifier, em 1,0 por padrão, ajusta a vida dos inimigos e a velocidade com que eles perdem sua postura em função do número de jogadores conectados. Mas Coop.ShipStatsCorrectionModifier, por sua vez, vale 0,0 por padrão: os navios inimigos não se reforçam absolutamente nada quando sua tripulação cresce. Essa é a explicação mecânica da sensação de que o combate naval desmorona com três ou quatro jogadores, enquanto os confrontos a pé permanecem gerenciáveis. Aumentá-lo entre 0,5 e 1,0 reequilibra o mar sem mexer em terra firme.

Último ajuste a conhecer: EasyExplore. Seu nome é enganoso, é uma denominação herdada de versões antigas. Definido como true, ele desativa os marcadores do mapa que indicam locais de interesse e torna, portanto, a exploração mais exigente. O jogo o exibe sob o nome de exploração imersiva.

Exploração de um bioma de colinas em Windrose
Ativado, o parâmetro EasyExplore remove do mapa os marcadores de locais de interesse. Crédito: Kraken Express.

Modificar esse arquivo não basta: é preciso, em seguida, validar as alterações. Com o servidor desligado, abre-se um prompt de comando na raiz do servidor e executa-se o R5WorldDescriptionUpdater.exe, passando a ele o caminho completo do WorldDescription.json em questão. Sem essa etapa, seus valores não serão levados em conta na reinicialização.

Migrar uma partida solo para o servidor

Nada obriga a recomeçar do zero. Com tudo desligado e devidamente salvo, a transferência se resume a quatro gestos.

  • Localize seu mundo em %localappdata%\R5\Saved\SaveProfiles\<seu perfil>\. Dependendo se a migração de formato ocorreu ou não, ele está em RocksDB (formato antigo, anterior à versão 0.10.0.5.120) ou em RocksDB_v2_Backups. Já a pasta RocksDB_v2 serve ao funcionamento em execução: não se deve mexer nela.
  • Copie a totalidade da pasta que traz o identificador do mundo.
  • Cole-a na pasta Worlds do servidor, em R5\Saved\SaveProfiles\Default\, na subpasta correspondente à versão do jogo.
  • Preencha WorldIslandId, em ServerDescription.json, com o nome exato da pasta copiada.

Nunca renomeie uma pasta de mundo: o banco de dados se baseia nesses identificadores. E se a Steam propuser uma arbitragem entre salvamento local e salvamento na nuvem, escolha sempre o local — a nuvem da Steam provocou várias ondas de salvamentos corrompidos desde o lançamento, a ponto de o estúdio ter que adicionar um sistema de cópias de segurança automáticas.

A armadilha número um: a defasagem de versão

A Kraken Express insiste nesse ponto mais do que em qualquer outro, e com razão: a versão do servidor deve corresponder exatamente à do cliente. Uma discrepância nem sempre se traduz em uma recusa franca de conexão; ela também produz bugs difusos, difíceis de relacionar à sua causa. O reflexo a adotar após cada patch, por menor que seja, é executar novamente app_update 4129620 validate ou recuperar a pasta do servidor na nova instalação, e depois recolocar o conteúdo do antigo R5\Saved no novo.

Com um ritmo de correções que ficou lento — apenas três entre 18 de maio e 8 de julho — a manutenção continua leve. É até o argumento decisivo em favor do servidor dedicado neste momento: montado corretamente uma vez, ele vai se manter sem intervenção até Ashlands, e um mundo compartilhado que vive continuamente continua sendo a melhor razão para reabrir Windrose durante os meses de espera. Aproveite para aumentar a dificuldade e corrigir o desequilíbrio naval do cooperativo: é conteúdo novo sem precisar esperar uma única linha de nota de patch.

Compartilhar este artigo

Como você hospeda seu servidor Windrose?

Perguntas frequentes

É realmente necessário possuir Windrose para rodar um servidor dedicado?
Não, essa é a grande vantagem. O servidor é um executável autônomo, disponibilizado gratuitamente junto com o jogo ou obtido via SteamCMD, sem necessidade de nenhuma licença.
Por que meu servidor trava quando eu o inicio a partir da pasta do jogo?
Porque o cliente Windrose detecta o processo do servidor dentro da sua árvore de diretórios e o encerra automaticamente. Você precisa copiar a pasta WindroseServer para outro local no disco, completamente fora do diretório de instalação.
Qual identificador de app usar no SteamCMD?
4129620 para o servidor dedicado. O jogo sozinho tem o 3041230. Um único comando basta para as atualizações: app_update 4129620 validate.
Como funciona no Linux, na prática?
Baixe a imagem Docker windroseserver/windroseserver:latest, prepare um ServerDescription.json no seu host com UseDirectConnection definido como true e, em seguida, inicie o contêiner com os volumes corretos montados. Todos os detalhes estão no DedicatedServer.md, incluído com o servidor.
A conexão direta por IP é realmente melhor do que os códigos de convite?
Só se o seu NAT ou seu provedor arruinar o modo padrão. Ela exige um IP público e o redirecionamento de portas, mas contorna 90% dos problemas de conectividade. Em contrapartida, esqueça os códigos de convite, e as mensagens de erro ficam silenciosas.

Destaques

  • O servidor dedicado é gratuito, autônomo e não exige possuir Windrose na máquina host.
  • Nunca inicie o servidor a partir da pasta do jogo: copie-o para outro lugar antes, caso contrário o cliente o encerra imediatamente.
  • ServerDescription.json é seu centro de controle absoluto: sempre edite-o com o servidor desligado, senão suas alterações são sobrescritas.
  • A conexão direta por IP salva o dia quando o NAT/UPnP aprontam, mas ela elimina os códigos de convite.
  • O Docker funciona oficialmente desde o patch 0.10.0.7, com uma imagem atualizada a cada atualização importante.

Comentários

Nenhum comentário por enquanto. Seja o primeiro a comentar!

Deixar um comentário

Últimas notícias