System Properties
基本信息
| 属性 |
值 |
| 实现类 |
net.sxmaa.headlessnh.IntegrationTestController |
| 配置形式 |
全部为 JVM system property(-Dheadlessnh.*) |
| 配置文件 |
无(没有 .cfg / .json) |
| 自省入口 |
IntegrationTestController.logSettings(),在 startGame 末尾调用 |
logSettings() 会把每个属性的解析后值连同来源一起打印:= <值> (system property "原始值") 或 = <值> (default)。
开关类
| 属性 |
类型 |
默认 |
作用 |
headlessnh.active |
boolean |
false(未设) |
命名反直觉:isActive() 返回 !Boolean.getBoolean(...),即未设即为激活;设成 true 反而整个自动化关闭 |
headlessnh.combined |
boolean |
false |
走多人 + 单人完整流程(Mode.COMBINED) |
headlessnh.singleplayer |
boolean |
false |
只走单人流程;combined 同时为 true 时被忽略 |
数值类
| 属性 |
解析方式 |
默认 |
单位 |
作用 |
headlessnh.connectRetries |
Integer.getInteger(..., 5) |
5 |
次 |
多人连接失败后的重试上限 |
headlessnh.delay.mainmenu |
Long.getLong(..., 500L) |
500 |
ms |
到达主菜单后等待稳定的时间 |
headlessnh.delay.serverjoin |
Long.getLong(..., 7500L) |
7500 |
ms |
进入多人世界后稳定的时间 |
headlessnh.delay.singleplayer |
Long.getLong(..., 7500L) |
7500 |
ms |
进入单人世界后稳定的时间 |
headlessnh.delay.cooldown |
Long.getLong(..., 0L) |
0 |
ms |
写完 marker 后再继续前的额外冷却 |
headlessnh.gate.timeout |
Long.getLong(..., 0L) |
0 |
ms |
等 gate 文件超时;≤0 表示无限等待 |
[!NOTE]
全部数值都走 getInteger / getLong 这类系统属性解析,不接受配置文件覆盖。服务器给客户端 JVM 传参时必须用 -D 而非服务端配置。
路径类
| 属性 |
解析方式 |
默认 |
作用 |
headlessnh.markerdir |
new File(configured),空串视作未设 |
Minecraft.mcDataDir |
所有 marker 与 gate 文件的写入目录 |
headlessnh.marker.mainmenu |
System.getProperty(..., MARKER_MAIN_MENU) |
.mainmenu.headlessnh |
主菜单 marker 文件名 |
headlessnh.marker.serverloaded |
同上 |
.serverloaded.headlessnh |
服务器加载 marker 文件名 |
headlessnh.marker.worldloaded |
同上 |
.worldloaded.headlessnh |
单人世界加载 marker 文件名 |
闸门类
| 属性 |
默认 |
作用 |
headlessnh.gate.mainmenu |
未设(emptyToNull) |
设为文件名则主菜单阶段阻塞等待 |
headlessnh.gate.serverloaded |
未设 |
设为文件名则服务器加载阶段阻塞等待 |
headlessnh.gate.worldloaded |
未设 |
设为文件名则单人世界阶段阻塞等待 |
焦点类
| 属性 |
类型 |
默认 |
作用 |
headlessnh.forcefocus |
boolean |
false(未设) |
为 true 时保留原版失焦开暂停菜单的行为;默认(未设)则抑制 |
相关条目