无头启动游戏:itch-setup --run-game 的用法
协议链接(itch:// 链接)再怎么自动化,都会弹一次确认对话框。想连确认都省掉——比如给启动器、脚本、桌面快捷方式调用——要走 itch-setup 的无头启动。
基本用法
# Linux
~/.itch/itch-setup --appname itch --run-game <游戏id>
# Windows
%LOCALAPPDATA%\itch\itch-setup.exe --appname itch --run-game <游戏id>
可选追加 --profile-id <用户id>,指定游戏时长记到哪个 itch.io 账号名下;不给的话,从已登录且拥有该游戏的账号里挑一个。
itch-setup 会借应用的那套 butler 组件按正常启动配置拉起游戏——启动目标、沙盒设置、manifest 声明的环境都生效——然后一直挂着直到游戏退出。应用自建的 Steam 快捷方式走的正是这条路。
使用前提
- 游戏已经安装。
--appname itch参数必须带上(它靠这个认出自己在管哪个应用)。
这些情况会退回应用界面
无头模式对三类游戏无能为力,会转手把请求交给应用窗口处理:
- 网页游戏(需要内置浏览器环境)。
- 需要先登录的启动流程。
- 还没安装的游戏——这时会打开安装对话框(应用没装的话连应用都先给你装上)。
实用场景
- 给某个游戏做一个双击即玩的桌面快捷方式。
- 在多工位电脑上用脚本批量拉起同一款游戏。
- 自己折腾第三方启动面板时的底层调用口。
找游戏 id
游戏 id 是 itch.io 的数字编号,在游戏的编辑页能看到,也可以通过开发者 API 查询(见 游戏内 API 集成)。