Como configurar e administrar um servidor DayZ privado
Par Benjamin D. · PDG
· Mis à jour le 10 Gwengolo 2026 · Lecture 8 min
Sumário
Manter um servidor DayZ privado estável depende muito menos de sorte e muito mais do que está escrito no serverDZ.cfg. Esse arquivo controla nome, senhas, número de jogadores, verificação de assinaturas, ciclo de dia e noite e o carregamento da missão. Este guia mostra como ajustá-lo, mexer no loot pela economia central, aplicar whitelist e organizar mods sem quebrar a persistência.
serverDZ.cfg: a base técnica de um servidor DayZ privado
O serverDZ.cfg fica na raiz da instalação do DayZ Server e é lido no startup através do parâmetro -config=. A sintaxe é a mesma da família Real Virtuality/Enfusion: cada linha termina com ponto e vírgula, strings entre aspas duplas, e a classe Missions no final indica qual mapa será carregado.
hostname = "Chernarus Hardcore | PT-BR";
password = "";
passwordAdmin = "SenhaLongaEUnica_2024";
enableWhitelist = 0;
maxPlayers = 60;
verifySignatures = 2;
forceSameBuild = 1;
disableVoN = 0;
vonCodecQuality = 20;
disable3rdPerson = 1;
disableCrosshair = 1;
serverTime = "SystemTime";
serverTimeAcceleration = 8;
serverNightTimeAcceleration = 4;
serverTimePersistent = 1;
guaranteedUpdates = 1;
loginQueueConcurrentPlayers = 5;
loginQueueMaxPlayers = 500;
instanceId = 1;
storageAutoFix = 1;
steamQueryPort = 2305;
allowFilePatching = 0;
speedhackDetection = 10;
logAverageFps = 30;
logMemory = 30;
logPlayers = 30;
logFile = "server_console.log";
adminLogPlayerHitsOnly = 0;
adminLogPlacement = 1;
adminLogBuildActions = 1;
class Missions
{
class DayZ
{
template = "dayzOffline.chernarusplus";
};
};
Parâmetros que realmente mudam o comportamento
| Parâmetro | Efeito prático | Recomendação |
|---|---|---|
verifySignatures | Valida as chaves .bikey dos mods carregados | Sempre 2 |
forceSameBuild | Impede clientes com build diferente da máquina | 1 em ambiente estável |
allowFilePatching | Permite clientes com arquivos não assinados | 0, exceto em ambiente de teste |
instanceId | Define a pasta de storage da persistência | Alterar só quando quiser wipe controlado |
storageAutoFix | Repara arquivos de persistência corrompidos no boot | 1 |
loginQueueConcurrentPlayers | Quantos jogadores entram simultaneamente | 3 a 5 para evitar picos de CPU |
steamQueryPort | Porta de consulta do navegador de partidas | Precisa estar liberada, senão a máquina não aparece na lista |
Um detalhe que gera muito ticket: instanceId aponta para mpmissions/dayzOffline.chernarusplus/storage_1. Se você alterar esse valor, o mundo começa do zero (bases, veículos e loot persistente somem). Faça backup da pasta de storage antes de qualquer teste.
Quem administra a partir do painel Pterodactyl da Fly-Serv edita esse arquivo direto pelo gerenciador de arquivos, com console ao vivo para acompanhar o boot da economia; os detalhes técnicos da máquina de jogo estão na página de hospedagem DayZ. A referência oficial dos parâmetros está no wiki da Bohemia Interactive.
Loot, economia central e ciclo de dia e noite
Como o Central Economy decide o que aparece no chão
O loot não é definido no serverDZ.cfg. Ele vive na pasta mpmissions/dayzOffline.chernarusplus/db/, com quatro arquivos principais:
types.xml— quantidade, tempo de vida e categoria de cada item;economy.xml— liga ou desliga módulos (veículos, animais, loot dinâmico);globals.xml— limites globais, comoZombieMaxCounteCleanupLifetimeDefault;events.xml— helicrashes, veículos, spawn de animais e infectados especiais.
Uma entrada típica de types.xml:
<type name="M4A1">
<nominal>8</nominal>
<lifetime>7200</lifetime>
<restock>1800</restock>
<min>4</min>
<quantmin>-1</quantmin>
<quantmax>-1</quantmax>
<cost>100</cost>
<flags count_in_cargo="0" count_in_hoarder="0" count_in_map="1" count_in_player="0" crafted="0" deloot="0"/>
<category name="weapons"/>
<usage name="Military"/>
</type>
Interpretação rápida:
- nominal: alvo de unidades existentes no mapa ao mesmo tempo.
- min: piso que dispara o restock quando o total cai abaixo dele.
- lifetime: segundos até o item ser limpo se ninguém tocar nele.
- restock: tempo de espera antes de repor até atingir o nominal.
- flags: se o item conta quando está em mochila, base ou com o jogador — o campo
count_in_hoarder="0"é o que faz armas guardadas em base não bloquearem novos spawns.
Para deixar a partida mais dura, reduza nominal e min de armas militares e aumente restock. Para um ritmo mais rápido, faça o inverso e suba o lifetime de itens de sobrevivência. Depois de editar, reinicie a máquina: a economia só recarrega no boot.
Controlando o tempo de dia e noite
Três parâmetros comandam o relógio:
serverTime = "SystemTime";— usa a hora do sistema no start. Também aceita valor fixo, como"2024/06/12/09/00".serverTimeAcceleration— multiplicador geral (1 a 64).serverNightTimeAcceleration— multiplicador extra aplicado só à noite.
Com serverTimeAcceleration = 8, um dia completo de 24 h in-game passa em 3 h reais. Adicionando serverNightTimeAcceleration = 4, a noite corre 32× mais rápido (8 × 4), encurtando o período escuro para algo próximo de 20 minutos. É o ajuste mais usado por comunidades PvP que querem manter atmosfera noturna sem afastar jogadores casuais.
Já serverTimePersistent = 1 guarda a hora entre reinicializações. Sem isso, todo restart devolve o mundo à hora do sistema — o que costuma travar o mapa em eterno meio-dia se você reinicia a máquina sempre no mesmo horário.
Whitelist, acesso administrativo e moderação
Restringir a entrada
O parâmetro enableWhitelist = 1; ativa a filtragem nativa, que lê os SteamID64 autorizados a partir do arquivo de whitelist na pasta apontada por -profiles. O comportamento nativo é limitado e mudou entre versões; comunidades maiores costumam usar ferramentas de administração em mod (VPPAdminTools, Community Online Tools) ou um serviço de RCON externo, que permitem adicionar e remover jogadores sem reiniciar.
Alternativa mais simples para grupos fechados: definir password = "..." no serverDZ.cfg. Funciona bem para 20 ou 30 amigos, mas a senha circula rápido em Discord público — trate-a como algo descartável e troque a cada wipe.
RCON e BattlEye
A administração remota passa pelo BattlEye. O arquivo battleye/BEServer_x64.cfg (criado na pasta de perfis) define:
RConPassword SenhaRconLongaEAleatoria
RestrictRCon 0
RConPort 2306
Boas práticas que evitam dor de cabeça:
- senhas de admin e RCON diferentes, longas e geradas aleatoriamente;
passwordAdminnunca compartilhado com moderadores — dê acesso via sub-usuários do painel;- logs ligados (
-adminlog -netlog -dologs) para investigar duping e teleporte; - backup da pasta
storage_1antes de qualquer intervenção em base de jogador.
Se você opera a partir de uma máquina Linux própria, complemente com chaves SSH em vez de senha, ufw liberando apenas 2302-2305/UDP e a porta RCON, e fail2ban no serviço SSH. A proteção contra ataques volumétricos já é tratada na infraestrutura, mas o acesso administrativo é responsabilidade sua.
sudo ufw allow 2302:2305/udp
sudo ufw allow 22/tcp
sudo ufw enable
ssh-keygen -t ed25519 -C "admin-dayz"
Mods, desempenho e rotina de manutenção
Carregamento correto dos mods
Mods entram pela linha de comando, não pelo serverDZ.cfg. A ordem importa: frameworks como o CF vêm primeiro, dependências depois, e mods que alteram loot por último.
./DayZServer -config=serverDZ.cfg -port=2302 -BEpath=battleye \
-profiles=profiles -dologs -adminlog -netlog -freezecheck \
-mod="@CF;@Community-Online-Tools;@BuilderItems" \
-servermod="@ServerSideMod"
Checklist antes de subir a máquina:
- copiar todos os arquivos
.bikeydas pastaskeys/dos mods para a pastakeys/da raiz; - manter
verifySignatures = 2— sem a chave, o jogador leva kick do BattlEye; - mesclar os
types.xmldos mods viacfgeconomycore.xml, usando a tag<ce folder="...">, em vez de colar tudo no arquivo principal; - testar cada mod isoladamente quando a máquina não sobe: o console mostra a linha exata do XML rejeitado.
<economycore>
<ce folder="expansion_ce">
<file name="expansion_types.xml" type="types"/>
</ce>
</economycore>
Ajustes de desempenho
DayZ depende fortemente de frequência de clock por núcleo — daí a diferença sentida em CPUs Ryzen de alta frequência com armazenamento NVMe, já que a persistência faz muita escrita em disco. Do lado da configuração, três alavancas ajudam:
ZombieMaxCountemglobals.xml: reduzir de 1000 para 700 alivia a simulação em mapas grandes;IdleModeCountdown: mantém a economia em modo ocioso quando não há ninguém conectado;CleanupLifetime*: tempos menores para cadáveres e itens largados diminuem o volume da persistência.
Reinicializações programadas a cada 4 a 6 horas continuam sendo a rotina padrão: liberam memória, reciclam o loot e reduzem o risco de corrupção do storage. Combine isso com backups automáticos e você recupera um wipe acidental em minutos. A mesma lógica de arquivos XML e reinício programado vale para outros títulos de sobrevivência administrados no mesmo painel, como Servidor Project Zomboid ou Servidor Arma Reforger — a lista completa está em Todos os nossos servidores de jogos, e outros tutoriais no Blog da Fly-Serv.
Backup manual rápido
tar -czf backup_$(date +%F_%H%M).tar.gz \
mpmissions/dayzOffline.chernarusplus/storage_1 \
mpmissions/dayzOffline.chernarusplus/db \
serverDZ.cfg
Guarde pelo menos três gerações de backup e teste a restauração uma vez por mês. Backup que nunca foi restaurado é apenas uma suposição.
Fechando o ciclo
Dominar o serverDZ.cfg, os XML da economia central e a ordem de carregamento dos mods resolve 90% dos problemas do dia a dia. Documente cada alteração, teste uma variável por vez e mantenha backups antes de mexer na persistência. Com essa disciplina, sua comunidade ganha um mundo estável, com ritmo de loot e ciclo noturno ajustados ao estilo de jogo que você quer.
FAQ
Por que minhas alterações no types.xml não aparecem no jogo?A economia central só é lida durante o boot. Reinicie a máquina após editar o arquivo. Se ainda não funcionar, verifique o server_console.log: um erro de sintaxe XML faz o DayZ ignorar o arquivo inteiro e carregar valores padrão. Também confirme se o item não está sendo sobrescrito por um types.xml de mod declarado no cfgeconomycore.xml.
Mantenha serverTimeAcceleration em um valor moderado (6 a 10) e aumente apenas serverNightTimeAcceleration, que multiplica a velocidade somente no período escuro. Com aceleração 8 e noite 4, o multiplicador noturno efetivo é 32×. Ative também serverTimePersistent = 1 para que a hora não seja resetada a cada reinicialização.
Copie o arquivo .bikey de cada mod (dentro da pasta keys/ do próprio mod) para a pasta keys/ na raiz da instalação e reinicie. Nunca baixe verifySignatures para 0 como solução: isso abre espaço para arquivos modificados no cliente. Confirme ainda que os jogadores estão com a mesma versão do mod publicada na Workshop.