我不是很确定有没有其他人处在同样的情况,我作为一个只使用 MacOS 的开发者最近要上傳 Windows 版本到 Steam,遇到的 tutorial 和文档都很缺乏或找不到有用的东西。

大多数我找到的 Steam 上传教程(几乎都是)都假设你在 Windows 上,并指向使用 SteamPipeGUI 工具,这是一个很合适的 .exe,但是却不能在macbook上运行,如果你是一个在Mac上工作的独立开发者,那么这里是如何使用 terminal 上的 steamcmd来进行上传的:

整个流程花了我几个小时来理解,但有一旦你知道它是怎么工作的,它绝不会花上超过5分钟。

无论如何,我都不是专家,如果你有任何评论或建议,不要吝啬!

  1. 从 Steamworks 下载 SDK:https://partner.steamgames.com/doc/sdk
  2. 使用你使用的游戏引擎,创建一个 Windows 版本,在游戏引擎中。
  3. 在 SDK 中找到 steamcmd。Steam SDK 已经包含 macOS 原生 steamcmd,你不需要安装任何额外的:

>> cd sdk/tools/ContentBuilder/builder_osx

4.第一次运行steamcmd,你很可能会遇到权限错误的情况:

>> ./steamcmd.sh
zsh:Permission denied: ./steamcmd.sh

5.修复它,并再次运行steamcmd:

>> chmod +x steamcmd.sh
>>./steamcmd.sh

6.让它自我更新。第一次启动会触发一个大尺寸的自我更新。你会看到数十万条断言警告滚动过去,这似乎是正常的,直到最后结束:

[ 0%] Checking for available update...
[ 0%] Downloading update (0 of 15,690 KB)...
[98%] Downloading update (15,690 of 15,690 KB)...
[----] Extracting package...
[----] Installing update...
[----] Cleaning up...
[----] Update complete, launching Steamcmd...

你会看到 Steam>提示符:

>>Steam Console Client (c) Valve Corporation - version 1769026246 -- type 'quit' to exit -- Loading Steam API...OK

7.登录。它会要求你输入密码,然后触发Steam Guard在你的手机上:

>>Steam>login your_username Logging in user 'your_username' to Steam Public... This account is protected by a Steam Guard mobile authenticator. Please confirm the login in the Steam Mobile app on your phone. Waiting for confirmation... Waiting for confirmation...OK

8.创建VDF配置。 如果你还没有,创建一个VDF文件,这告诉steamcmd要上傳什么。将其放置在sdk/tools/ContentBuilder/scripts/

"AppBuild"
{
"AppID" "YOUR_APP_ID"
"Desc" "your_game_v0.1"
"ContentRoot" "../content/"
"BuildOutput" "../output/"

`"Depots"`
`{`
 `"YOUR_DEPOT_ID"`
 `{`
  `"FileMapping"`
  `{`
   `"LocalPath"` `"your_game_folder/*"`
   `"DepotPath"` `"."`
   `"recursive"` `"1"`
  `}`
 `}`
`}`

}
你的 App ID 和 Depot ID 都在 Steamworks 里面,你的 SteamPipe 设置。

9.上传

>>Steam>run_app_build ../scripts/app_build_YOUR_APP_ID.vdf

你会看到它扫描并上传文件:

[2026-02-19 14:47:04]: Starting AppID 4149030 build (flags 0x0).
[2026-02-19 14:47:04]: Building depot 4149031... Building file mapping... Scanning content ... 26.2MB (17%) ... 52.3MB (35%) ... 80.1MB (53%) ... 130.2MB (87%) ... Uploading content .. 9.4MB (6%) .. 42.2MB (28%) .. 75.4MB (50%) .. 107.4MB (72%) .. 140.7MB (94%) . 146.0MB (97%)[ 2026-02-19 14:48:15]: Successfully finished AppID 4149030 build (BuildID 21997511).

10.上传之后,回到Steamworks:

  • 检查你的-build出现了吗:Steamworks > SteamPipe > Builds
  • 确保你的启动配置有正确的可执行文件名称。 我犯了一个错误,命名我的游戏时将其命名为“202509-RL-TC-prototype.exe“而不是“Ad-Iterum.exe“,然而修复只是改变 Unity 项目设置和 Steam 中可执行文件路径,自动处理,且安装之前版本的玩家不会遇到问题。
  • 发布任何挂起的变更,这不会发布你的游戏,我在这个时候很害怕,但一切都是好的。
  • 在你的目标分支(默认,Beta等)设置你的-build。

11.测试它。

正如我的情况一样,我没有 Windows 机器,所以无法测试,如果它实际上工作的。 但通过Steam Deck和proton,我只需要像其他游戏一样安装并运行它,它以完全正常的方式工作。

12.???

13.好利

如果你需要更新,只要将新的-build添加到 SDK 文件夹,更新VDF文件使用你的最新版本,并再次运行 run_app_build ../scripts/app_build_YOUR_APP_ID.vdf,新的-build会在builds部分出现,在他们中你可以选择你要做的stuff。

作为一个最终注记,这篇贴子绝不是一个规范的开发贴子而且很隐秘地做市场。如果你喜欢,那就去Steam上加入我的游戏 Ad Iterum 的 wishlist,一个grimdark Roguelike,你会吃掉你攻击的敌人来变异并求生。

希望这篇贴子能够帮助到有网上查阅的人们!