- 桌面应用
- 游戏开发
【免费下载链接】gale
A modern mod manager for Thunderstore
Gale 是一款基于 Svelte 与 Tauri 构建的现代 Thunderstore 模组管理器,它的启动选项与自定义参数(custom args)功能可以让你完全掌控游戏的启动方式:选择游戏平台启动或直接运行、一次拉起多个游戏实例、追加命令行参数、设置环境变量,甚至用自定义命令包裹启动过程。本文带你逐一拆解这些启动设置的使用方法。
从哪进入启动相关设置
Gale 中与启动相关的操作集中在两个地方:
- 顶部工具栏的启动按钮:点击“Launch modded / Launch vanilla”直接启动游戏,按钮右侧的下拉箭头可切换启动“模组版”或“原版”(见 LaunchButton.svelte)。
- 设置页(Prefs):左侧导航栏最下方的齿轮图标,即 prefs 页面,里面包含启动模式、实例数量、自定义参数等全部选项。
启动模式:游戏平台启动 vs 直接运行
这是最核心的一个开关(LaunchModePref.svelte),对应源码中的LaunchMode枚举(见 mod.rs):
| 模式 | 说明 | 适用场景 |
|---|---|---|
| 游戏平台(Launcher) | 通过 Steam 等平台器启动游戏,例如某些游戏必须经由 Steam 运行 | 依赖平台校验的游戏(如在线功能) |
| 直接运行(Direct) | 直接执行游戏目录里的可执行文件 | 想绕过平台器、同时开多个游戏实例 |
选择“直接运行”后,Gale 会自动在游戏目录中查找可执行文件(优先浅层目录,排除crashpad_handler.exe等干扰项,逻辑见 find_executable)。
如何一键开启多实例启动
在“直接运行”模式下会解锁两个输入框:
- 实例数量:一次同时启动多少个游戏副本,比如开 3 个实例跑 3 个存档。
- 启动间隔:每个实例之间等待多少秒,避免同时拉起时抢占资源。
底层实现在 do_launch 中:按设置的间隔依次spawn多次。多开 Lethal Company 房间、Valheim 测试服务器?这里就是你的开关。
自定义启动参数:三合一的强大语法
“设置自定义启动参数”输入框(CustomArgsPref.svelte)不只是简单追加参数。解析规则在 custom_args.rs 中,支持三种写法,可以混用在同一行:
- 普通参数:空格分隔,直接追加到启动命令末尾,支持引号包裹含空格的值。 例如:
--foo bar "bar baz" - 环境变量:
变量名=值形式写在参数中,会自动作为环境变量注入。 例如:FOO=bar WINE=yes --baz - 命令前缀(%command% 占位符):在
%command%之前写的内容会成为包裹游戏的“前置命令”,适合通过 mangohud、自定义 wrapper 等工具启动。 例如:env -u DISPLAY mangohud --fps-limit=60 %command% --foo
几个实用示例:
- 限制帧率:
mangohud --fps-limit=60 %command% - 注入调试变量:
WINEDLLOVERRIDES="winemenubuilder.exe=d" --verbose - 追加游戏自身参数:
-nographics -fullscreen
⚠️ 注意事项:
%command%占位符只允许出现一次;参数解析在 Linux 上使用 shell 风格分词、在 Windows 上使用原生分词规则,含空格的内容请用引号包起来(详见 split/join)。
参数的生效顺序(launch_command):平台启动命令 → 模组加载器参数 → 游戏级自定义参数 →当前 Profile 的自定义参数,后者优先追加,方便你在不同 Profile 中为同一游戏准备不同的启动配置。
Steam 启动选项:弹框一键切换
如果你的游戏通过 Steam 启动,Gale 还能读取 Steam 本地保存的启动选项(Launch Options),在点击启动时弹出一个单选对话框供你直接切换(LaunchOptionsDialog.svelte),无需手动复制粘贴。
触发条件(LaunchButton.svelte)需同时满足:
- 启动模式为“游戏平台”;
- 平台为 Steam;
- 在设置中开启了“显示 Steam 启动选项”开关(prefs 页面)。
选项数据来自 Steam 的本地配置解析(parse_steam_launch_options),会自动跳过测试分支(Beta)选项。如果不需要每次启动都弹框,把该开关关闭即可,Gale 会直接沿用 Steam 当前生效的选项。
锦上添花:平台选择与游戏目录覆盖
在设置页的启动区域还有两项“隐藏利器”:
- 平台(Platform):一个游戏同时在多个平台安装时,可指定 Gale 使用哪个平台的安装路径(PlatformPref.svelte)。
- 游戏目录覆盖(Directory Override):Gale 找不到自动定位的安装目录时,手动指定游戏所在文件夹即可(路径选择逻辑见 PathPref.svelte 与 locate_game_dir)。
常见场景速查
| 我想…… | 怎么设置 |
|---|---|
| 不经过 Steam 直接启动游戏 | 启动模式改为“直接运行” |
| 同时开 3 个游戏实例 | 直接运行 + 实例数量 3 + 适当加大启动间隔 |
| 用 mangohud 限制帧率 | 自定义参数填mangohud --fps-limit=60 %command% |
| 启动时注入环境变量 | 自定义参数开头写KEY=value |
| 切换 Steam 的启动选项 | 开启“显示 Steam 启动选项”,启动时弹框选择 |
| 游戏装在非标准位置 | 设置“游戏目录覆盖” |
参考源码
- 启动核心逻辑:src-tauri/src/profile/launch/mod.rs
- 自定义参数解析:src-tauri/src/profile/launch/custom_args.rs
- 启动命令接口:src-tauri/src/profile/launch/commands.rs
- 启动模式设置组件:src/lib/components/prefs/LaunchModePref.svelte
- 自定义参数设置组件:src/lib/components/prefs/CustomArgsPref.svelte
- 设置页面:src/routes/prefs/+page.svelte
掌握以上内容,你就能针对每一款游戏、每一个 Profile 定制最合适的启动方式——从单开直跑到多开限帧,Gale 的启动系统都能轻松应对 🚀
- 桌面应用
- 游戏开发
【免费下载链接】gale
A modern mod manager for Thunderstore
相关推荐
deepin-wine启动参数详解:自定义WINEPREFIX与DEBUG选项
deepin wine启动参数详解:自定义WINEPREFIX与DEBUG选项 在Linux系统上运行Windows应用程序,deepin wine无疑是最佳选
构建工具包管理器开发工具Motrix启动参数详解:自定义配置与高级选项
Motrix启动参数详解:自定义配置与高级选项 引言:解锁Motrix的隐藏潜力 你是否曾遇到过这样的困境:想要让Motrix在启动时自动加载特定配置,却不知从
桌面应用网络后端elasticsearch-head命令行参数详解:自定义启动选项与配置
elasticsearch head命令行参数详解:自定义启动选项与配置 引言:解决Elasticsearch集群管理的配置难题 你是否在启动elasticse
数据可视化数据库客户端运维观测
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考