Configurar mi servidor de ArmA 3

De Nitradopedia ES
Saltar a: navegación, buscar
Arma3 wiki.jpg

Renta tu propio servidor prepagado de ArmA 3 aqui nitrado.net

Introducción

Este articulo cubre las diferentes configuraciones para el archivo de configuracion de un servidor en ArmA 3 (server.cfg). Esto se localiza en la ruta "arma/config/server.cfg" en tu servidor de juego y puede ser editado mediante el navegador de archivos (localizado bajo las herramientas en la interfaz web) o via FTP.

Configuración de servidor

Configuración de Servidor
Parámetro Default Descripción
passwordAdmin = "xyzxyz"; "" Contraseña para proteger el acceso del administrador.
password = "xyz"; "" Contraseña necesaria para conectarse al servidor.
serverCommandPassword = "xyzxyz"; "" Contraseña requerida por la sintaxis alternativa de serverCommand server-side scripting.
hostname="My Server"; UNKNOWN Nombre del servidor visible en el navegador del juego.
maxPlayers = 10; 64(DS) El número máximo de jugadores que pueden conectarse al servidor. El número final será el menor entre el número dado aquí y el número de ranuras de misión.
motd[]= {"Welcome to my server.", "Hosted in the net."}; {} Mensaje de bienvenida de dos líneas. La coma es el separador de "nueva línea".
admins[] = {"<UID>"}; {} Los clientes de la lista blanca pueden usar #login sin contraseña. Ver Administrador conectado
headlessClients[] = {"<IP>"}; {} IPs de clientes sin cabeza. Se permiten múltiples conexiones y direcciones en el caso de más de un Headless Client. Ver Arma 3: Headless Client
localClient[] = {"<IP>"}; {} Indica clientes con ancho de banda ilimitado y latencia casi nula. Ver Arma 3: Headless Client
Comportamiento del Servidor
Parametro Default Descripcion
voteThreshold = 0.33; UNKNOWN No permite la duplicación de IDs de juego. El segundo jugador con un ID existente será expulsado automáticamente. 1 significa activo, 0 deshabilitado.
voteMissionPlayers = 3; UNKNOWN Comienza la votación de la misión cuando se conecta X númeroDeJugadores.
kickduplicate = 1; UNKNOWN No permite la duplicación de IDs de juego. El segundo jugador con un ID existente será expulsado automáticamente. 1 significa activo, 0 deshabilitado.
loopback = true; false Añadiendo esta opción se forzará al servidor a entrar en modo LAN. Esto permitirá que varias instancias locales del juego se conecten al servidor con fines de prueba. Al mismo tiempo, evitará que todas las instancias no locales se conecten.
upnp = true; false Crea automáticamente el mapeo de puertos en el router habilitado para UPNP/IGD. Esta opción permite crear un servidor detrás de NAT (el router debe tener IP pública y soportar el protocolo UPNP/IGD). Leer más Protocolo de control de dispositivos estandarizados Internet Gateway Device (IGD).

Si está activada, esta configuración puede retrasar la puesta en marcha del servidor en 600s (tiempo de espera UDP estándar de 10 minutos) si se bloquea en el cortafuegos o un mal enrutamiento, etc. Por lo tanto, en este caso se recomienda desactivarlo.

allowedFilePatching = 0; 0 Impedir o permitir el parcheo de archivos para los clientes (incluyendo el HC)
  • 0 es sin clientes
  • 1 es sólo clientes sin cabeza
  • 2 es todos los clientes
allowedLoadFileExtensions[] = {"sqf","txt"}; UNKNOWN Sólo permite cargar archivos con extensiones listadas a través del comando loadFile. No listar ninguna extensión significa que todo está permitido. Definir la configuración como arrays vacíos significa que no se permite nada.
allowedPreprocessFileExtensions[] = {"sqf","sqs"}; UNKNOWN Sólo permite cargar archivos con extensiones listadas a través del comando loadFile. No listar ninguna extensión significa que todo está permitido. Definir la configuración como arrays vacíos significa que no se permite nada.
allowedHTMLLoadExtensions[] = {"htm","html"}; UNKNOWN Sólo permite cargar archivos y URLs con extensiones listadas a través del comando htmlLoad. No listar ninguna extensión significa que todo está permitido. Definir la configuración como arrays vacíos significa que no se permite nada.
allowedHTMLLoadURIs[] = {"http://arma3.com"}; UNKNOWN Sólo permite cargar archivos de los URIs y URLs listados a través del comando htmlLoad. Comentar si no se utiliza. Puede usar += para añadir a la lista existente. No listar ninguna extensión significa que todo está permitido. Definir la configuración como arrays vacíos significa que no se permite nada.
filePatchingExceptions[] = {"123456789","987654321"}; {} Los IDs de Steam incluidos en la lista blanca permiten el parcheo de archivos
disconnectTimeout = 5; 90 Tiempo de espera del servidor antes de desconectar al cliente tras la pérdida de la conexión de tráfico activa, rango de 5 a 90 segundos.
maxdesync = 150; UNKNOWN Valor máximo de desincronización hasta que el servidor echa al usuario
maxping= 200; UNKNOWN Valor máximo de ping hasta que el servidor patee al usuario
maxpacketloss= 50; UNKNOWN Valor máximo de pérdida de paquetes hasta que el servidor echa al usuario
kickClientsOnSlowNetwork[] = { 0, 0, 0, 0 }; UNKNOWN Define si {<MaxPing>, <MaxPacketLoss>, <MaxDesync>, <DisconnectTimeout>} serán registrados (0) o expulsados (1)
enablePlayerDiag = 1 0 Define si {<MaxPing>, <MaxPacketLoss>, <MaxDesync>, <DisconnectTimeout>} serán registrados (0) o expulsados (1)
callExtReportLimit = 1000; 1000 Si la callExtension iniciada por el servidor tarda más que el límite especificado en milisegundos, la advertencia se registrará en el archivo .rpt del servidor y se reflejará en el resultado de la devolución de la extensión.
kickTimeout[] = { {0, -1},{1, 180},{2, 180},{3, 180} }; UNKNOWN kickTimeout[] = { {kickID, timeout}, ... };

kickID (tipo para determinar el origen de la expulsion, por ejemplo, admin o votekick, etc.)

  • 0 - expulsion manual (patada de voto, patada de administrador, detección de fuerza bruta, etc.)
  • 1 - expulsion de conectividad (ping, timeout, packetloss, desync)
  • 2 - Expulsion de BattlEye
  • 3 - expulsion inofensiva (addons erróneos, tiempo de espera de steam o comprobaciones, firmas, contenido, etc.)

timeout = en segundos cuánto tiempo hasta que el jugador expulsado puede volver

  • >0 segundos
  • -1 hasta missionEnd
  • -2 hasta serverRestart
votingTimeOut = 60; 60 Tiempo de espera de la votación
votingTimeOut[] = {60, 90}; {60, 90} Tiempo de espera de la votación {ready, notReady}
roleTimeOut = 90; 90 Tiempo de espera para la selección de roles
roleTimeOut[] = {90, 120}; {90, 120} Tiempo de espera para la selección de roles {ready, notReady}
briefingTimeOut = 60; 60 Tiempo de espera de la sesión informativa
briefingTimeOut[] = {60, 90}; {90, 120} Tiempo de espera de la sesión {ready, notReady}
debriefingTimeOut = 45; 45 Tiempo de espera de la sesión informativa
debriefingTimeOut [] = {60, 60}; {90, 120} Tiempo de espera del informe {listo, noListo}
lobbyIdleTimeout = 300; 300 Tiempo de espera del lobby

Independientemente de establecer lobbyIdleTimeout en el archivo de configuración, será al menos

MAX(votingTimeout, lobbyTimeout, briefingTimeout, debriefingTimeout) + 5 segundos por defecto, esto hace que haya 300 segundos de tiempo para la gente en el lobby y 95 en roleTimeout o pantalla de briefing

missionsToServerRestart = 8; UNKNOWN Número de veces que se produce el missionEnd antes de que el servidor inicie el reinicio del proceso (utiliza los parámetros de la línea de comandos de inicio de sesión, no se puede combinar con `missionsToShutdown` )
missionsToShutdown = 8; UNKNOWN Número de veces que missionEnd ocurre antes de que el servidor inicie el cierre del proceso (tiene el mismo comportamiento que el ajuste llamado `missionsToHardRestart`)
autoSelectMission = true; false Cuando se activa, el servidor inicia automáticamente la siguiente misión en el ciclo de misiones y espera a los jugadores en la selección de roles. Esto permite la información completa de la misión en el navegador del servidor y luego resulta en el filtrado adecuado de los servidores. Esta es una variante menor (recortada) del parámetro de línea de comandos de inicio del servidor -autoInit. Podría colisionar con las misiones vinculadas a la campaña / necesitar un ciclo de misiones, etc.
randomMissionOrder = true; UNKNOWN Cuando se activa, el servidor de inicio aleatorio / siguiente selección con una de las misiones de la lista de rotación de la misión. ( ajuste va fuera(antes) Clase de misión {}; )
disableChannels[] = { {0,false,true} }; {} disableChannels[] = { {channelID, text, voice}, ... }>;
  • ChannelID : Número - utilice un solo dígito de (0 a 6) para definir el channelID. Por defecto: No hay restricción a ningún canal, con el chat de texto/von establecido en falso.
  • text : Booleano - use true para deshabilitar el uso del chat de texto para el channelID definido. Por defecto: false
  • voice : Booleano - use true para deshabilitar el uso del chat de voz (VON) para el channelID definido. Por defecto: false

Lista de ID de canales:

  • 0 = Global
  • 1 = Lateral
  • 2 = Comando
  • 3 = Grupo
  • 4 = Vehículo
  • 5 = Directo
  • 6 = Sistema

Las misiones que utilizan Description.ext#disableChannels anulan cualquier ajuste de disableChannels[] en el server.cfg.

Otras Opciones
Parametro Default Descripcion
verifySignatures = 2; 2 Activa o desactiva la verificación de la firma de los complementos.
  • Verificación deshabilitada = 0.
  • 1 Volverá a ser por defecto 2
drawingInMap = false; true Activa o desactiva la posibilidad de colocar marcadores y dibujar líneas en el mapa.
disableVoN = 1; 0 Activa o desactiva la Voz sobre Red. (Voice Over Net)
vonCodecQuality = 10; 3 Defines VoN codec quality. Value range is from 1 to 20.
  • Since 1.62 supports range 1-20
  • Since 1.64 will support range 1-30
  • 8kHz is 0-10, 16kHz is 11-20, for 21-30 it is 32kHz for SPEEX codec and 48kHz for OPUS codec.
vonCodec = 1; 0 Defines VoN codec type. Value range is from 0 to 1.
  • Since Arma 3 update 1.58 supports value 1
  • Value 0 uses older SPEEX codec, while 1 switches to new IETF standard OPUS codec.
skipLobby = false; false Si es verdadero, el jugador que se une se saltará la selección de rol. Sólo se utiliza si no se ha definido ningún ajuste de Misión, Campaña o Configuración skipLobby (Ver Description.ext#skipLobby).
allowProfileGlasses = false; true Si es falso, las gafas establecidas en el perfil del jugador serán ignoradas. Sólo se utiliza si no se ha definido ningún ajuste de Misión, Campaña o Configuración allowProfileGlasses (Ver Description.ext - allowProfileGlasses)
zeusCompositionScriptLevel = 0; 1
  • 0: todos los scripts están prohibidos
  • 1: sólo se permiten los atributos (incluidos los atributos personalizados añadidos por los mods)
  • 2: todos los scripts están permitidos, incluyendo los scripts de inicio

Sólo se utiliza si no se ha definido el ajuste de Misión, Campaña o Configuración zeusCompositionScriptLevel (Ver Description.ext - zeusCompositionScriptLevel).

logFile = "server_console.log"; UNKNOWN Permite la salida de la consola del servidor dedicado en un archivo de texto. La ubicación predeterminada del registro es la misma que la de los volcados de fallos y otros registros. (Configuración local) Tenga en cuenta que esto no cambia la ubicación del archivo "net.log", que se activa con la opción de línea de comandos -netlog.
doubleIdDetected = "command"; "" Ver Scripts del lado del servidor
onUserConnected = "command"; ""
onUserDisconnected = "command"; ""
onHackedData = "command"; ""
onDifferentData = "command"; ""
onUnsignedData = "command"; ""
onUserKicked = "command"; ""
regularCheck = "command"; ""
BattlEye = 1; 1 Activa o desactiva el motor antitrampas BattlEye. Requiere que BattlEye esté instalado en el servidor y que los clientes se unan al servidor.
timeStampFormat = "none"; "" Establece el formato de marca de tiempo utilizado en cada línea del informe en el archivo RPT del lado del servidor. Los valores posibles son "ninguno", "corto", "completo".
forceRotorLibSimulation = 0; 0 Impone el modelo de vuelo avanzado en el servidor. 0 (depende del jugador). 1 - AFM forzado, 2 - SFM forzado.
persistent = 1; 0 La misión sigue funcionando cuando todos los clientes se desconectan. La activación de la opción de persistencia hará que las misiones que tienen respawn base o instantáneo sigan funcionando después de que todos los jugadores se hayan desconectado. Los otros tipos de respawn no harán que una misión sea persistente. El tipo de respawn que utiliza una determinada misión se establece en su Description.ext.
requiredBuild = xxxxx; UNKNOWN Versión mínima requerida del cliente. Los clientes con una versión inferior a requiredBuild no podrán conectarse. Si requiredBuild se establece en un número grande, como requiredBuild = 999999999; por ejemplo, se reducirá automáticamente a la versión actual del servidor.
statisticsEnabled = 1; 1 Permite excluir el análisis de Arma 3 para el servidor utilizando 0
forcedDifficulty = "regular"; "" Impone la dificultad seleccionada en el servidor. forcedDifficulty = "<difficultyClass>";
  • Si se pasa como parámetro Recruit, Regular o Veteran, las opciones de dificultad particulares se tomarán de data config, de la clase CfgDifficultyPresets.
  • Si se pasa como parámetro Custom, las opciones particulares se tomarán de la clase CustomDifficulty del perfil del servidor (sólo Custom se guarda en el perfil).
  • Si el ciclo de la misión está definido en el server.cfg, la dificultad establecida en el ciclo de la misión anula la dificultad establecida por el parámetro forcedDifficulty
missionWhitelist[] = {"intro.altis"}; {} Limita las misiones disponibles para el administrador para el cambio de misión. Ver Arma 3: MP Mission Names para una lista completa.
steamProtocolMaxDataSize = 1024; UNKNOWN Límite para la longitud máxima de los paquetes de Steam Query. Aumentar este valor es peligroso ya que puede hacer que el servidor de Arma 3 envíe paquetes UDP de un tamaño superior a la MTU. Esto hará que los paquetes UDP se fragmenten, lo que no es compatible con algunos routers antiguos. Pero aumentando esto se arreglará el límite de longitud de la lista de mods en Arma 3: Launcher.
class AdvancedOptions
{
    LogObjectNotFound = true; // Logging enabled
    SkipDescriptionParsing = false; // Parse description.ext
    ignoreMissionLoadErrors = false; // Do not ingore errors
};
true/false/false 2.02
  • LogObjectNotFound - False para omitir el registro de mensajes "Server: Objeto no encontrado".
  • SkipDescriptionParsing - Verdadero para omitir el análisis de description.ext/mission.sqm. Se mostrará el nombre del archivo pbo en lugar del nombre de la misión configurada. OverviewText y demás no funcionarán, pero cargar la lista de misiones es mucho más rápido cuando hay muchas misiones

2.04

  • IgnorarErroresDeCargaDeMisiones - Cuando se establece en true, la misión se cargará sin importar la cantidad de errores de carga. Si se establece en false, el servidor abortará la carga de la misión y volverá a la selección de misiones
armaUnitsTimeout = 30; 30 Define el tiempo que el jugador estará atascado conectándose y esperando los datos de armaUnits. El jugador será notificado si el tiempo de espera transcurre y no se reciben datos de las unidades

Más información

Para más información, consulta la wiki de ArmA 3 server.cfg