文档

支持

Multiplay Hosting

Multiplay Hosting

启动参数

Learn how launch parameters control command-line arguments passed to your game executable.
阅读时间3 分钟最后更新于 15 天前

启动参数是指游戏服务器在启动时接收到的变量。这些变量会在任何其他配置变量之前加载,与配置变量
server.json
文件
分开。启动参数非常适合用于加载服务器启动后需要立即访问的信息。
在以下场景下,您可能要使用启动参数而不是配置变量:
  • 初始化端口号。
  • 设置日志目录。
不过,在大多数情况下,更适合使用配置变量而不是启动参数。 必须将每个启动参数变量置于美元符号 (
$$
) 之间,每侧两个美元符号。例如,名为
port
的启动参数转换为
$$port$$
。以下代码片段提供了示例启动参数。
-port $$port$$ -queryport $$query_port$$ -log $$log_dir$$

服务器变量

与版本配置变量类似,您可以在启动参数中使用以下服务器特定变量。下表提供了示例服务器变量及其类型、描述和示例值。

变量

类型

描述

示例值

$$commandline$$
字符串在游戏服务器或应用程序启动时向其传递的一系列启动参数。
-config path/to/server.json
$$config_dir$$
字符串Unity 配置 server.json 所在的目录。
/mnt/unity/
$$fleetid$$
字符串服务器所属机群的 ID。
5050693b-0bea-4752-858b-52c074d485fa
$$game_exe$$
字符串版本可执行文件的名称。
server-linux
$$log_dir$$
字符串服务器应将日志文件发送到的目录。
/mnt/unity/logs/
$$file_dir$$
字符串服务器应将游戏文件发送到的目录。日志文件也可以写入到此处。
/mnt/unity/files/
$$machineid$$
整数运行服务器的机器的 ID。
123456
$$port$$
整数服务器为实现流量传输而应绑定的网络端口。
1234
$$query_port$$
整数服务器为实现查询协议流量传输而应绑定的网络端口。
5678
$$query_type$$
字符串服务器所运行版本支持的查询协议
sqp
$$serverid$$
整数服务器 ID。
123456
$$regionid$$
字符串服务器所在地区的 ID。
3d9e29e8-3bb3-4cab-9d11-b79c90d0934d
$$regionname$$
字符串服务器所在地区的名称。
North America
$$ip$$
字符串服务器的 IP(版本 4)地址。
1.2.3.4
$$ipv6$$
字符串服务器的 IP(版本 6)地址。
2001:db8:3333:4444:5555:6666:7777:8888
$$timestamp$$
字符串服务器启动时间的 UTC 时间戳。
1661430055

默认启动参数

以下各节分别展示了使用 Unity 创作的游戏和使用 Unreal 创作的游戏的默认启动参数。

Unity

对于通过 Unity 创作的游戏,默认启动参数包括
-nographics
-batchmode
-logFile
-nographics -batchmode -port $$port$$ -logFile $$log_dir$$/Engine.log

启动参数

描述

-nographics
运行不含图形的游戏可执行文件。
-batchmode
批处理模式运行 Unity。在批处理模式下,Unity 运行命令行参数,无需人机交互。
-logFile
指定服务器保存日志文件的位置。它可以接受使用与服务器 ID 相关的目录,并且可以包含版本配置变量
此外,启动参数还可以包含查询端口 (
queryPort
) 和查询协议 (
queryType
),具体取决于游戏。
-nographics -batchmode -logFile $$log_dir$$/Engine.log -queryPort $$query_port$$ -queryType $$query_type$$

Unreal

对于通过 Unreal 创作的游戏,默认启动参数包括
-log
-port
-log=$serverid.log -port=$$port$$

启动参数

描述

-log
指定服务器保存日志文件的位置。
-port
指定客户端可以用于连接游戏服务器的端口。
启动参数还可以包含查询端口 (
queryPort
) 和查询协议 (
queryType
),具体取决于游戏和您使用的 SDK。
-log=$serverid.log -port=$$port$$ -queryPort $$query_port$$ -queryType $$query_type$$