服务器工具启动器服务器列表百科 登录 Discord 聊天 下载
百科目录

DayZ 服务器全部参数

全部命令行参数和 serverDZ.cfg 设置项,附默认值,并说明每一项实际改变了什么。

98 个参数

命令行

这些参数在 Windows 系统中传递给 DayZServer_x64.exe,在 Linux 系统中传递给 ./DayZServer。顺序无关紧要。启动只需要 -config 和 -profiles,其余都是调优。

参数 取值 默认值 作用
-config file path - 指定要读取的配置文件。没有它,服务器会以默认值启动,并忽略你在 serverDZ.cfg 中写的所有内容。这是配置“不起作用”最常见的原因。
-profiles folder path - 日志、崩溃转储和 BattlEye 文件夹的存放位置。请指向一个你能访问的文件夹:.RPT 就保存在这里,没有它你只能盲目排查问题。
-port number 2302 游戏端口。Steam 查询端口在配置文件中单独设置。两者不是一回事,把它们搞混,正是运行中的服务器在服务器浏览器里看不到的原因。
-mod paths separated by semicolons - 客户端模组。玩家必须拥有完全相同的一组模组,否则无法加入。示例:-mod=@CF;@BuilderItems。
-serverMod paths separated by semicolons - 仅服务器端模组。玩家不会下载,也不需要它们。反作弊和管理工具通常放在这里,而不是 -mod 里。
-mission mission path - 要加载的任务,例如 -mission=mpmissions/dayzOffline.chernarusplus。通常改在配置文件中通过 class Missions 块设置。
-cpuCount core count all cores 服务器可以使用的核心数。适用于多台服务器共用一台机器的情况。设置得比机器实际拥有的核心数还多,没有任何好处。
-doLogs - - 启用日志记录本身。没有它,配置中的 logAverageFps、logMemory 和 logPlayers 设置都不起作用。
-adminLog - - 写入管理员日志:连接、死亡、命中,以及 adminLog* 设置开启的其他内容。
-netLog - - 记录网络流量。开销很大:排查不同步问题时打开,排查完关掉。
-freezeCheck - - 如果服务器卡死超过五分钟,就停止服务器并写入转储。如果你遇到原因不明的无声卡死,值得开启。
-filePatching - - 允许引擎加载未打包的散装文件,而不是 PBO。仅用于开发。注意:官方百科把这个参数描述反了,好像它强制只用 PBO。那是 -noFilePatching 的含义,而这个错误被抄进了很多教程。
-noFilePatching - - 强制只使用 PBO,不加载散装文件。在当前版本中是多余的,因为除非你主动开启,文件修补本来就是关闭的,但它无害,在启动脚本里仍很常见。
-limitFPS number - 限制服务器 FPS。一定要设置。没有上限时,DayZ 会每秒渲染数千帧,白白烧掉一整个核心。100 是常用值,完全够用;百科规定该值上限为 200。不要设得比 100 低太多:服务器的 tick 频率取决于这个数值,上限太紧会让所有人的游戏体验变差。
-storage path - 把持久化存档文件夹移到别处。当你把存档放在单独的磁盘上时很方便。
-scrAllowFileWrite 已废弃 - - 过去用于允许模组脚本写入文件。它来自 1.0 之前,据报告已经不再起作用,但仍被到处复制进启动脚本。官方参数列表中没有它。
-BEpath path - BattlEye 文件夹所在的位置。一台机器上有多台服务器时需要它,否则它们会共用一份 BattlEye 配置并互相覆盖。
-newErrorsAreWarnings 已废弃 1 - 本意是把致命脚本错误变成警告。教程里经常提到,但官方参数列表中没有它,我们也没找到任何来源证实它在 DayZ 中有效果。请视为未经证实。

名称与访问

以下所有内容都位于 serverDZ.cfg 中。语法为 名称 = 值;,字符串用双引号,分号不能省略。值得了解的一点:DayZ 没有附带参考配置,所以这里称为默认值的大多是文档中的示例值,而不是某行缺失时引擎回退使用的值。

参数 取值 默认值 作用
hostname string "" 服务器浏览器中显示的名称。保持简短,把有用的词放在前面:列表会截断过长的名称,而且没人会搜索你的装饰性括号。
password string "" 加入服务器的密码。留空表示公开。
passwordAdmin string "" 游戏内 #login 命令的密码。设置得长一些,并且绝不要与加入密码相同:这个密码能控制服务器。
description string "" 在服务器详情中显示的简短文字。
motd[] array of strings {} 每日消息,会输出到聊天中。写法为 motd[] = {"第一行","第二行"};。
motdInterval seconds 1 消息各行之间的延迟。关于这是行与行之间的间隔,还是整条消息重复之间的间隔,各来源说法不一;按行间间隔理解即可。
enableWhitelist 0 / 1 - 只允许白名单文件中列出的 Steam ID 进入。在名单为空时开启它,会把所有人挡在外面,包括你自己。
maxPlayers number 60 槽位数量。直接决定内存占用,所以在配置较弱的机器上调高它,等于用稳定性换来一个没人会填满的数字。
MaxPing milliseconds 300 Ping 高于此值的玩家会被踢出。注意它以大写字母开头,这和几乎所有其他设置都不同。设得太严,你会失去那些距离远但完全能正常游戏的玩家。
loginQueueConcurrentPlayers number 5 同时处理登录的人数。防止重启后大量玩家同时重连时服务器卡住。
loginQueueMaxPlayers number 500 等待队列最多能排多长,超过后拒绝新的连接。
respawnTime seconds 5 玩家死亡后,要等待多久才能开始新角色。
disableBanlist true / false false 让服务器不再读取 ban.txt。
disablePrioritylist true / false false 让服务器不再读取 priority.txt,这个文件允许特定玩家跳过登录队列。
disableMultiAccountMitigation true / false false 仅限主机:关闭多账号防护。在 PC 上没有作用。
pingWarning milliseconds 200 玩家开始看到黄色警告时的 Ping 值。
pingCritical milliseconds 250 警告变成红色时的 Ping 值。它低于踢出阈值,让玩家在被踢出之前有机会注意到。

游戏规则

参数 取值 默认值 作用
disable3rdPerson 0 / 1 - 设为 1 表示仅限第一人称。这是决定服务器定位的硬性选择:1PP 和 3PP 吸引的是不同的玩家,之后再切换会让你失去原有的玩家。
disableCrosshair 0 / 1 - 移除准星。
disablePersonalLight 0 / 1 1 移除跟随每个角色的微弱光晕。如果保留它,夜晚就不再黑暗。
lightingConfig 0 / 1 / 2 - 0 是较亮的夜晚,1 是黑暗的夜晚,2 是 Sakhal 专用版本。只有当你真的希望玩家需要光源时才选 1。
enableDebugMonitor 0 / 1 1 在屏幕角落显示角色状态面板。它默认开启,所以在角色扮演服务器上,这通常是你第一个要关掉的东西。
disableBaseDamage 0 / 1 - 设为 1 后,围栏和瞭望塔无法被摧毁。
disableContainerDamage 0 / 1 - 设为 1 后,帐篷、桶、箱子和航海箱无法被摧毁。
disableRespawnDialog 0 / 1 - 隐藏重生选择对话框。主要用于只有一种固定出生方案的服务器。
disableVoN 0 / 1 - 关闭游戏内语音。
vonCodecQuality 0–20 20 语音质量。数值越高越清晰,占用的带宽也越多。官方页面的上限是 20,社区配置中能见到 30。

时间与天气

参数 取值 默认值 作用
serverTime "SystemTime" or "YYYY/M/D/H/M" "SystemTime" 游戏内的起始时间。"SystemTime" 使用机器的时钟,也可以固定为指定时间:"2026/7/1/9/0"。
serverTimeAcceleration 0.1–64 1 游戏内时间流逝加快的倍数。设为 12 时,一整天两小时就过完。官方百科列出的默认值是 1,而服务器自带的文件里设的是 12,所以请检查你的文件里实际写的是什么。
serverNightTimeAcceleration 0.1–64 1 仅作用于夜晚的额外倍数。用它可以实现白天长、夜晚短,而不是让所有时间都加速。
serverTimePersistent 0 / 1 - 在重启之间保留时间,让世界不会每次都跳回早晨。

持久化存档

这是大家最先弄坏的部分。一旦出错,玩家就会丢失基地和帐篷,而这是社区唯一不会原谅的错误。

参数 取值 默认值 作用
instanceId number 1 该服务器拥有的存档文件夹。两台服务器使用同一个 ID,会争抢同一组存档文件。给每个实例分配各自的 ID。
shardId string "" 把在私有 Hive 上共享角色的服务器归为一组。六个字符。只要设置了任何值,服务器就会从 Community 标签页中消失。000 到 099 这个范围属于官方服务器:用了其中的值,你的服务器将无法启动。
storageAutoFix 0 / 1 1 启动时检查存档文件,并用空文件替换损坏的文件。这是修复,而不是抢救:损坏的数据就此丢失。无论如何都要做好备份。
lootHistory number 1 每个实例保留多少个持久化历史文件,每次保存时轮换。它已从官方文档中删除,但仍出现在流传的配置文件里。
storeHouseStateDisabled true / false false 不再保存房屋门的状态。这是应对持久化问题的变通办法。它已从官方文档中删除,各来源甚至对它的默认值都说法不一。

完整性与可见性

参数 取值 默认值 作用
steamQueryPort number 2305 Steam 用来查询服务器信息的端口。如果你的服务器在运行,却始终不出现在服务器浏览器里,首先要检查的就是它和防火墙。示例中通常是 2305,但也会出现 Steam 惯用的 27016:并没有公认的统一默认值。
verifySignatures 2 2 根据签名密钥校验模组的 PBO。只支持值 2,不要设置其他值。
forceSameBuild 0 / 1 1 要求客户端版本与服务器版本一致。保持开启:版本不一致会产生谁都无法复现的错误。
allowFilePatching 0 / 1 1 允许以 -filePatching 启动的客户端连接,也就是说它们可以加载散装文件。默认值为 1,即允许。在正式运营的服务器上,值得有意识地把它关掉。
shotValidation 0 / 1 1 服务器端射击校验。保持开启。
clientPort number 2304 强制指定客户端连接时使用的端口。
steamProtocolMaxDataSize 1.22 number - 允许更大的 Steam 协议数据包,让装了大量模组的服务器仍能出现在启动器中。仅限 PC。
guaranteedUpdates 1 1 网络协议设置。只有 1 是有效值,它的存在是出于历史原因。

日志

log* 设置需要在命令行中加上 -dologs,adminLog* 设置需要 -adminlog。缺少它们时,这些值会被读取,然后被悄悄忽略。

参数 取值 默认值 作用
timeStampFormat "Full" / "Short" "Short" .RPT 文件中的时间戳格式。
logFile file name "server_console.log" 把控制台输出保存到文件中,与其他日志放在一起。
logAverageFps seconds 1 多久写入一次服务器平均 FPS。要发现正在慢慢垮掉的服务器,这是最有用的一个数字。
logMemory seconds 1 多久写入一次内存占用。
logPlayers seconds 1 多久写入一次已连接的玩家数量。
serverFpsWarning number, minimum 11 15 服务器 FPS 低于该值时触发警告。可以作为服务器不堪重负的早期信号。
adminLogPlayerHitsOnly 0 / 1 - 1 只记录对玩家的命中。0 记录所有内容,包括动物和感染者,会把有用的行淹没在噪声里。
adminLogPlacement 0 / 1 - 记录物品的放置,例如陷阱和帐篷。
adminLogBuildActions 0 / 1 - 记录基地建设:建造、拆除、摧毁。如果你预计会有关于突袭的纠纷,值得开启。
adminLogPlayerList 0 / 1 - 每隔几分钟写入一份带位置的玩家列表。

网络与性能

这些网络范围值决定服务器在玩家周围多远的范围内保持物体活跃。调高它们会增加每一个客户端的 CPU 负载和流量,所以一次只改一个,并留意 FPS 日志。

参数 取值 默认值 作用
networkRangeClose meters 20 装有物品的近距离物体的生成距离,例如背包。
networkRangeNear meters 150 附近库存物品的生成距离。消失距离大约再远百分之十。
networkRangeFar meters 1000 所有非库存物品的生成距离。
networkRangeDistantEffect meters 4000 远距离效果的范围,目前指声音。这就是枪声能传那么远的原因。
defaultVisibility meters 1375 服务器对地形可视距离设定的上限。客户端要求更少就给更少;要求更多则被限制在这里。
defaultObjectViewDistance meters 1375 对物体的同样上限。
simulatedPlayersBatch number 20 每帧模拟多少名玩家。调低它能提升服务器 FPS,代价是响应变慢。
multithreadedReplication 0 / 1 1 把复制分配到多个线程。线程数来自 dayzSettings.xml 中的 maxcores 和 reservedcores,而不是这里。
speedhackDetection 1–10 1 加速外挂检测的灵敏度:1 最严格,10 最宽松。设得太严,会把只是网络卡顿了一下的玩家踢出。

物体批量发送

在 1.25 中加入,用来防止客户端一进入热闹区域,服务器就用大量物体创建把它淹没。默认值是合理的;只有当你在追查某个具体的卡顿,并准备好测量结果时,才去改动它们。

参数 取值 默认值 作用
networkObjectBatchCompute 1.25 number 1000 一个服务器帧内检查创建和删除列表中的多少个物体。
networkObjectBatchSendCreate 1.25 number 10 每帧最多发送多少个物体用于创建。取代了旧参数 networkObjectBatchSend 的一半。
networkObjectBatchSendDelete 1.25 number 10 删除方面的同类设置。旧参数的另一半。
networkObjectBatchLogSlow seconds 5 遍历一个气泡区域允许花费的时间,超过后会被记录为缓慢。
networkObjectBatchEnforceBandwidthLimits 1.25 0 / 1 - 开启基于带宽的物体创建限制器。补丁说明称它默认关闭,而百科示例中是 1:请检查你的文件里实际写的是什么。
networkObjectBatchUseEstimatedBandwidth 1.25 0 / 1 - 0 使用自上一帧以来实际发送的数据量,1 使用粗略估算。推荐使用 0。
networkObjectBatchUseDynamicMaximumBandwidth 1.25 0 / 1 1 1 让限制值成为当前可发送量的一个比例,0 让它成为绝对上限。
networkObjectBatchBandwidthLimit 1.25 decimal 0.8 限制值本身。开启动态模式时是 0 到 1 之间的比例,否则是一个以千计的绝对数值。

并不存在的参数

这些参数出现在论坛上流传的配置和托管面板中。有些曾经存在过,有些从来没有存在过。它们都做不到旁边注释所承诺的事,而一行不起作用的配置比没有这一行更糟:你以为某项已经配置好了,实际上并没有。

参数 取值 默认值 作用
networkObjectBatchSend 已废弃 number - 在 1.25 之前真实存在,之后被拆分为 networkObjectBatchSendCreate 和 networkObjectBatchSendDelete。更早的配置中仍然带着它,而服务器会忽略它。
steamport 已废弃 number - 这不是 DayZ 的参数,尽管很多配置里都有它,旁边的注释还承诺它能让服务器出现在 Steam 列表中。真正起这个作用的是 steamQueryPort。
BattlEye 已废弃 0 / 1 - 官方列表中没有它。BattlEye 由启动参数 -BEpath 和 BEServer_x64.cfg 控制,而不是这里。设置 BattlEye = 0 并不能关闭它。
disableThirdPerson 已废弃 0 / 1 - 一个拼写错误,至少在一个热门参考网站上流传。正确的名称是 disable3rdPerson,拼错的那一行会被悄悄忽略,于是你的第一人称服务器在不知不觉中仍然是第三人称。
MaxBandwidth 已废弃 number - 来自 Arma 2 的 basic.cfg,是 DayZ Mod 时代的产物。独立版 DayZ 没有这个设置。MinBandwidth、MaxMsgSend、MaxSizeGuaranteed、MaxSizeNonguaranteed、MinErrorToSend 和 MinErrorToSendNear 也一样:它们同属一个家族,没有一个应该出现在 serverDZ.cfg 中。
storageAutoDestroyFlags 已废弃 - - 它和 storageAutoDestroyInterval 一样,只出自一篇机器生成的教程,别无来源。没有官方出处,也没有其他证实。不要把它写进你的配置。
enableMouseAndKeyboard 已废弃 - - 某家托管服务商在宣传文案中把它说成主机跨平台联机的开关。官方列表中没有它,其他地方也没有证实。

任务

参数 取值 默认值 作用
class Missions block - 要运行的任务文件夹,以块的形式写在文件末尾:class Missions { class DayZ { template="dayzOffline.chernarusplus"; }; };。模板名必须与 mpmissions 中的文件夹完全一致,这里的一个拼写错误,就是服务器启动后却什么都不做的原因。
enableCfgGameplayFile 0 / 1 - 启用 cfggameplay.json,耐力、建造规则以及许多其他玩法设置都在这个文件里。没有它,该文件会被完全忽略。

没有匹配的结果。试试更短的词,筛选也会搜索描述内容。

可直接复制的配置

把它保存为 serverDZ.cfg,放在服务器可执行文件旁边,然后用 -config=serverDZ.cfg -profiles=profiles 启动。它可以直接运行 Chernarus。一定要在启动命令中加上 -limitFPS=100:没有上限时,服务器会烧掉一个核心去渲染没人看的帧。首先修改名称和管理员密码:名称是我们的,因为文件是我们写的,而下面的密码只是占位符,不是真正的密码。

serverDZ.cfg
hostname = "dz.arbat16.com";     // 服务器名称。改成你自己的
password = "";                       // 加入密码。留空表示公开
passwordAdmin = "CHANGE_ME";         // #login 的管理员密码。启动前修改
description = "";                    // 服务器详情中的简短文字

maxPlayers = 60;                     // 槽位。数值越高,内存占用越大
enableWhitelist = 0;                 // 1 只允许 whitelist.txt 中的 ID 进入

// --- 完整性 ------------------------------------------------------------
verifySignatures = 2;                // 只支持 2
forceSameBuild = 1;                  // 客户端版本必须与服务器一致
allowFilePatching = 0;               // 0 拒绝加载散装文件的客户端
shotValidation = 1;                  // 服务器端射击校验
speedhackDetection = 1;              // 1 最严格,10 最宽松

// --- 游戏规则 ----------------------------------------------------------
disable3rdPerson = 0;                // 1 让服务器仅限第一人称
disableCrosshair = 0;
disablePersonalLight = 1;            // 没有这一项,夜晚永远不会黑
lightingConfig = 0;                  // 0 较亮的夜晚,1 黑暗,2 Sakhal
enableDebugMonitor = 0;              // 角落里的状态面板
disableBaseDamage = 0;               // 1 让围栏无法被摧毁
disableContainerDamage = 0;          // 1 让帐篷和桶无法被摧毁
disableRespawnDialog = 0;

disableVoN = 0;                      // 游戏内语音
vonCodecQuality = 20;                // 0 到 20,越高越清晰

// --- 时间 --------------------------------------------------------------
serverTime = "SystemTime";           // 或者固定为:"2026/7/1/9/0"
serverTimeAcceleration = 6;          // 一整天四小时过完
serverNightTimeAcceleration = 4;     // 夜晚过得更快
serverTimePersistent = 1;            // 重启后保留时间

// --- 持久化存档 --------------------------------------------------------
instanceId = 1;                      // 这台机器上的每台服务器都需要各自的值
storageAutoFix = 1;                  // 用空存档替换损坏的存档
respawnTime = 5;

// --- 端口 --------------------------------------------------------------
steamQueryPort = 2305;               // 服务器浏览器中的可见性取决于它

// --- Ping 与负载 -------------------------------------------------------
pingWarning = 200;
pingCritical = 250;
MaxPing = 300;                       // 超过此值玩家会被踢出
serverFpsWarning = 15;

loginQueueConcurrentPlayers = 5;
loginQueueMaxPlayers = 500;
simulatedPlayersBatch = 20;
multithreadedReplication = 1;

// --- 消息 --------------------------------------------------------------
motd[] = {"Welcome.","Rules are in Discord."};
motdInterval = 300;

// --- 日志 --------------------------------------------------------------
timeStampFormat = "Short";
logFile = "server_console.log";
logAverageFps = 60;                  // 需要在命令行中加上 -doLogs
logMemory = 60;
logPlayers = 60;

adminLogPlayerHitsOnly = 0;          // 需要在命令行中加上 -adminLog
adminLogPlacement = 1;
adminLogBuildActions = 1;
adminLogPlayerList = 0;

// --- 网络气泡 ----------------------------------------------------------
networkRangeClose = 20;
networkRangeNear = 150;
networkRangeFar = 1000;
networkRangeDistantEffect = 4000;

defaultVisibility = 1375;
defaultObjectViewDistance = 1375;

// --- 运行哪张地图 ------------------------------------------------------
// 没有这个块,服务器会启动,然后什么都不做
class Missions
{
    class DayZ
    {
        template = "dayzOffline.chernarusplus";
    };
};

以及启动它的命令行

命令行
DayZServer_x64.exe -config=serverDZ.cfg -profiles=profiles -port=2302 -limitFPS=100 -doLogs -adminLog -freezeCheck