← Blog

Cómo configurar un servidor DayZ paso a paso

Par Benjamin D. · PDG

· Mis à jour le 6 de septiembre de 2026 · Lecture 9 min

Índice

La configuracion servidor DayZ se juega en tres frentes: el archivo serverDZ.cfg, los mods del Workshop y los XML de la economía central. Dominar esos tres bloques marca la diferencia entre un mundo estable y una partida con loot fantasma, reinicios sucios y persistencia rota. Aquí tienes los parámetros que realmente cambian el comportamiento del mundo y cómo tocarlos sin romper nada.



Configuracion servidor DayZ: anatomía de serverDZ.cfg

serverDZ.cfg vive en la raíz de la instalación del servidor y se carga con el parámetro -config=. Es un archivo de texto plano con sintaxis tipo Arma: cada línea acaba en punto y coma, las cadenas van entre comillas y los bloques class se cierran con llaves. Un error de sintaxis impide el arranque y suele quedar registrado en server_console.log.

Bloque base recomendado

hostname = "Chernarus | Loot x2 | ES";
password = "";
passwordAdmin = "CambiaEstoYa_2024!";
enableWhitelist = 0;
maxPlayers = 60;

verifySignatures = 2;
forceSameBuild = 1;
disableVoN = 0;
vonCodecQuality = 20;
disable3rdPerson = 0;
disableCrosshair = 0;

serverTime = "SystemTime";
serverTimeAcceleration = 8;
serverNightTimeAcceleration = 4;
serverTimePersistent = 1;

guaranteedUpdates = 1;
loginQueueConcurrentPlayers = 5;
loginQueueMaxPlayers = 500;
instanceId = 1;
storageAutoFix = 1;
respawnTime = 5;

allowFilePatching = 0;
simulatedPlayersBatch = 20;
multithreadedReplication = 1;
speedhackDetection = 1;

networkRangeClose = 20;
networkRangeNear = 150;
networkRangeFar = 1000;
networkRangeDistantEffect = 4000;
defaultVisibility = 1375;
defaultObjectViewDistance = 1375;

pingWarning = 200;
pingCritical = 250;
MaxPing = 300;
serverFpsWarning = 15;

logAverageFps = 1;
logMemory = 1;
logPlayers = 1;
logFile = "server_console.log";
adminLogPlayerHitsOnly = 0;
adminLogPlacement = 1;
adminLogBuildActions = 1;

class Missions
{
    class DayZ
    {
        template = "dayzOffline.chernarusplus";
    };
};

Qué hace cada parámetro crítico

ParámetroEfecto realNota de campo
verifySignaturesExige firma .bikey válida para cada mod cargadoMantenlo en 2; si un jugador no puede entrar, casi siempre falta la key en keys/
forceSameBuildObliga a la misma build del clienteEvita crasheos tras un parche de Bohemia
serverTimeAccelerationMultiplicador del ciclo día/noche8 = día de 3 h reales; combínalo con serverNightTimeAcceleration
serverTimePersistentGuarda la hora entre reiniciosCon 1, si reinicias de madrugada el mundo sigue de noche
allowFilePatchingPermite clientes con -filePatchingDéjalo en 0 salvo en entorno de pruebas
networkRange*Distancias de replicación de redBajarlos alivia CPU y ancho de banda en partidas de 80+ jugadores
storageAutoFixRepara entradas corruptas de persistencia al arrancarImprescindible en mundos con muchas bases
instanceIdIdentifica la carpeta storage_XCambiarlo equivale a un wipe limpio sin borrar archivos

La contraseña de administración de serverDZ.cfg no es la de RCON. BattlEye usa su propio archivo BEServer_x64.cfg dentro de la carpeta battleye, con RConPassword y RestrictRCon. Usa contraseñas largas y distintas en ambos, y no reutilices la de tu panel.

Si prefieres delegar la infraestructura y dedicar el tiempo a los XML, el alojamiento servidor DayZ de Fly-Serv despliega la instancia al instante sobre Ryzen de alta frecuencia y NVMe, con panel Pterodactyl, copias automáticas y anti-DDoS activo por defecto.



Mods del Workshop: descarga, orden de carga y firmas

DayZ carga mods por línea de comandos, no desde el archivo de configuración. El servidor Linux se descarga con la app 223350 y los mods con la 1042420 (o 221100) vía SteamCMD.

Descarga con SteamCMD

steamcmd +force_install_dir /home/dayz/server \
  +login anonymous \
  +app_update 223350 validate \
  +quit

# Ejemplo: CF (Community Framework), ID 1559212036
steamcmd +force_install_dir /home/dayz/workshop \
  +login TU_CUENTA \
  +workshop_download_item 221100 1559212036 \
  +quit

Los mods del Workshop requieren una cuenta Steam que posea DayZ; el login anónimo solo sirve para los binarios del servidor. Tras la descarga, enlaza o copia la carpeta al directorio del servidor con nombre @NombreMod:

ln -s /home/dayz/workshop/steamapps/workshop/content/221100/1559212036 \
      /home/dayz/server/@CF

# Copiar las claves de firma
cp /home/dayz/server/@CF/keys/*.bikey /home/dayz/server/keys/

Línea de arranque

./DayZServer \
  -config=serverDZ.cfg \
  -port=2302 \
  -BEpath=battleye \
  -profiles=profiles \
  -mod="@CF;@Community-Online-Tools;@BuilderItems" \
  -serverMod="@AdminToolsServerSide" \
  -dologs -adminlog -netlog -freezecheck -cpuCount=4

Reglas de oro con los mods

  • Orden de carga: las dependencias van primero. @CF casi siempre encabeza la lista; después los frameworks (por ejemplo, sistemas de vehículos o de armas) y por último los mods de contenido que los usan.
  • -mod vs -serverMod: lo que va en -mod debe estar también en el cliente. -serverMod es exclusivo del servidor (herramientas de administración, anticheat propio) y no obliga al jugador a descargar nada.
  • Claves: con verifySignatures = 2, cada mod de -mod necesita su .bikey en keys/. Si tras actualizar un mod los jugadores reciben rechazo de firma, vuelve a copiar la key: cambian con frecuencia.
  • types.xml de mods: muchos mods traen su propio types.xml dentro de extras/. No lo pegues en el archivo vanilla; regístralo como archivo adicional en cfgeconomycore.xml (ver siguiente sección).
  • Linux y mayúsculas: el sistema de archivos distingue mayúsculas. Renombra en minúsculas o usa la herramienta de conversión recursiva si el mod referencia rutas internas en minúscula.

En un panel Pterodactyl toda esta operativa se resuelve desde el gestor de archivos y la consola en vivo: subes el @mod, ajustas la variable de arranque con la lista de mods y reinicias. La consola te muestra en directo cualquier Cannot open file o error de dependencia. Este flujo es idéntico al que usamos en otros títulos con Workshop, como el Servidor Arma Reforger o el Servidor Project Zomboid.



Tasas de loot y economía central (CE)

En DayZ el loot no es aleatorio puro: lo gobierna la Central Economy, un conjunto de XML dentro de mpmissions/dayzOffline.chernarusplus/db/. El archivo estrella es types.xml.

Estructura de una entrada en types.xml

<type name="M4A1">
    <nominal>12</nominal>
    <lifetime>7200</lifetime>
    <restock>1800</restock>
    <min>6</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="1"/>
    <category name="weapons"/>
    <usage name="Military"/>
    <value name="Tier4"/>
</type>
EtiquetaSignificadoConsejo práctico
nominalCantidad objetivo del ítem en el mundoEs el multiplicador real de loot. Doblar el loot = doblar nominal, no otra cosa
minUmbral que dispara el reabastecimientoMantén min por debajo de nominal (regla habitual: 50-70 %)
lifetimeSegundos que el ítem sobrevive en el sueloSubirlo mucho satura la CE y llena el mundo de basura
restockEspera antes de volver a generar tras caer bajo min0 = reaparición inmediata cuando hay hueco
flags count_in_*Si el ítem cuenta estando en mochilas, bases o jugadoresCon count_in_player="0", lo que llevan los jugadores no frena el respawn
usage / valueZonas y tiers donde puede aparecerTier1 es costa, Tier4 zonas militares del norte
delootSolo aparece en eventos dinámicosCon 1, no verás el ítem en edificios normales

No edites el types.xml vanilla: usa archivos personalizados

Cada parche de Bohemia sobrescribe la misión. Registra tus cambios en cfgeconomycore.xml y sobrevivirás a las actualizaciones:

<economycore>
    <ce folder="custom">
        <file name="mi_loot.xml" type="types"/>
        <file name="mod_armas_types.xml" type="types"/>
    </ce>
</economycore>

Crea la carpeta custom/ dentro de la misión y coloca allí los XML. Las entradas repetidas sobrescriben a las vanilla, y las nuevas se añaden. Si un mod define armas, este es el sitio para su types.xml.

Otros archivos que tocan el loot

  • cfgspawnabletypes.xml: define con qué accesorios y munición aparece cada arma o vehículo.
  • events.xml: eventos dinámicos (helicópteros estrellados, coches, animales, infectados). Ajusta nominal, min y lifetime por evento.
  • cfgeventspawns.xml: coordenadas exactas donde puede aparecer cada evento.
  • cfglimitsdefinition.xml y cfgrandompresets.xml: tiers, usages y presets de contenido.
  • globals.xml: variables globales como CleanupLifetimeDeadPlayer o TimeLogin.

Un error frecuente: multiplicar por diez todos los nominal. La CE tiene un límite de objetos gestionables y el resultado es caída de FPS del servidor, spawns tardíos y logs llenos de advertencias. Sube el loot por categorías (munición y comida sí, armas de Tier4 con moderación) y revisa *_CE.log tras cada cambio. La documentación de referencia está en el wiki oficial de Bohemia Interactive.



Mundo persistente, almacenamiento y mantenimiento

La persistencia se guarda en mpmissions/dayzOffline.chernarusplus/storage_1/, donde el número corresponde a instanceId. Dentro encontrarás data/ (archivos .bin con edificios, vehículos y contenedores) y players.db (personajes, inventario y posición).

Qué borrar según el tipo de wipe

ObjetivoAcción
Wipe total del mundoEliminar la carpeta storage_1 completa (o cambiar instanceId)
Resetear solo personajesBorrar players.db con el servidor parado
Limpiar bases construidasBorrar data/building_*.bin y los archivos de tipos asociados
Reiniciar la economía sin perder basesBorrar data/types.bin y data/dynamic_*.bin

Haz siempre una copia antes. Con el servidor detenido, un tar comprimido tarda segundos:

cd /home/dayz/server/mpmissions/dayzOffline.chernarusplus
tar -czf ~/backups/storage_$(date +%F_%H%M).tar.gz storage_1/

Ciclo de reinicios

DayZ acumula memoria y degrada el rendimiento en sesiones largas. Un ciclo de 4 a 6 horas es el estándar de la mayoría de comunidades: mantiene los FPS del servidor estables, refresca los eventos dinámicos y da a la CE margen para reabastecer. En Pterodactyl esto se programa con una tarea que envía un aviso por RCON, espera y reinicia. Nunca mates el proceso en caliente: kill -9 es la causa número uno de storage corrupto y bases desaparecidas.

Diagnóstico rápido de problemas habituales

  • El loot no reaparece: revisa min y nominal, y comprueba en *_CE.log si hay entradas rechazadas por nombre de clase inexistente.
  • Los jugadores se caen al conectar: desajuste de mods o de build. Verifica que la lista de -mod coincide y que forceSameBuild = 1.
  • Las bases desaparecen tras el reinicio: apagado sucio o storageAutoFix desactivado; recupera desde la copia más reciente.
  • Lag de red con muchos jugadores: baja networkRangeFar y defaultObjectViewDistance, y reduce simulatedPlayersBatch si la CPU va justa.
  • Picos de latencia externos: los ataques volumétricos se filtran en la infraestructura; en el equipo remoto refuerza con claves SSH, ufw y fail2ban.

Si administras varias comunidades a la vez, la lógica de XML, persistencia y tareas programadas se repite en casi todos los títulos de supervivencia; puedes ver el resto de títulos disponibles en Todos nuestros servidores de juegos y más guías técnicas en el Blog de Fly-Serv.



Conclusión

Ajustar DayZ es un trabajo iterativo: cambia un bloque, reinicia, lee los logs y mide. Empieza por serverDZ.cfg, añade mods de uno en uno con sus claves y trabaja el loot desde archivos personalizados en custom/. Con copias frecuentes y un ciclo de reinicios ordenado, tu mundo persistente aguantará parches, bases y temporadas completas sin sobresaltos.



FAQ

¿Cómo duplico las tasas de loot sin romper la economía central?

Multiplica por dos el valor nominal de las categorías que te interesen y ajusta min a un 50-70 % de ese nuevo nominal. Hazlo en un archivo propio dentro de custom/ registrado en cfgeconomycore.xml, nunca sobre el types.xml vanilla. Reinicia, juega media hora y revisa el log *_CE.log en busca de advertencias antes de subir más.

Los jugadores reciben error de firma tras actualizar un mod, ¿qué reviso?

Casi siempre falta la clave nueva. Vuelve a copiar los .bikey de @Mod/keys/ a la carpeta keys/ del servidor y borra las claves antiguas del mismo mod. Comprueba también que la versión descargada por SteamCMD coincide con la del Workshop y que el nombre de la carpeta @Mod respeta mayúsculas y minúsculas en Linux.

¿Puedo resetear las bases construidas sin borrar los personajes?

Sí. Detén el servicio, haz una copia de storage_1 y elimina únicamente los archivos data/building_*.bin junto con data/types.bin. Deja intacto players.db: los personajes conservarán inventario y posición. Arranca con storageAutoFix = 1 para que se regeneren los índices y revisa la consola durante el primer minuto.