如何将启动器与Steam集成

运行机制

跨平台流程

您可以在Steam中将游戏与启动器集成,这样可以通过艾克索拉启动器来推广您的其他Steam游戏。

启动器集成到Steam后,将以独立应用程序的形式在用户首次启动Steam时安装到用户计算机中。启动器后续行为取决于其启动方式:

  • 通过Steam启动:
    • 启动器仅显示在发布商帐户中指定了Steam AppID的游戏。
    • Buy按钮前往游戏在Steam应用程序中的页面。
    • 安装按钮通过Steam SDK在Steam应用程序中发起游戏安装。
    • 启动器将用户跳转到Steam进行游戏内购买。
    • 如在具体游戏的启动器项目设置中启用了商店并提供了其Steam AppID,启动器将从Steam检索该游戏可售DLC的信息并在艾克索拉启动器商店中为这些DLC创建商品卡片。用户点击Buy按钮后将跳转到该商品在Steam应用程序中的页面。
    • 艾克索拉登录管理器使用从Steam获得的用户数据在艾克索拉生态系统中自动创建一个用户帐户。这样您就能在发布商帐户的艾克索拉登录管理器数据库中看到所有启动器用户。用户在Steam之外打开启动器及通过艾克索拉启动器商店进行游戏内购买时可使用同一个帐户。因此,即使从Steam启动,也可以使用艾克索拉API方法通过艾克索拉启动器检查购买的商品的用户所有权。
    • 如用户点击的是游戏上的Play按钮,而不是点击触发启动器打开的游戏,则启动器关闭,所选游戏在后台在Steam中启动。启动器立即启动该游戏而不显示启动器UI。用户关闭该游戏后,显示启动器UI。

  • 以独立应用程序的形式通过启动器可执行文件或桌面快捷方式启动:
    • 启动器显示添加到该启动器项目的所有游戏,无论是否指定了游戏的Steam AppID。
注:
在发布商帐户中,只能为每个游戏选择一种启动方式:通过Steam或独立启动。如希望这两种方式都对用户提供,需在发布商帐户中创建两个项目,然后将它们添加到启动器。
    • 艾克索拉启动器商店显示通过发布商帐户添加到该商店的游戏内商品。
注:
如通过Steam商店和艾克索拉启动器商店销售相同的商品,按照Steam政策的要求,其价格必须相同。
    • 启动器可访问通过Steam安装到本地的游戏的信息。如通过Steam分发的游戏已安装到本地,则Buy按钮替换为Play按钮。用户点击Play按钮后,启动器通过Steam重新启动。

前提条件

要设置Steam集成,您需要:

  • Steam AppID
  • 在Steamworks中有帐户和游戏
  • 用于在Steam上发布的游戏编译版本
  • 已在发布商帐户中完成配置的现成启动器

您可以在Steamworks中的游戏管理面板中找到您的Steam AppID。前往Steamworks > 应用管理部分,可在项目名称旁边看到。

集成步骤

设置Steam平台并下载文件

  1. 发布商帐户中打开您的项目。
  2. 在侧边栏中单击启动器
  3. 在仪表板中找到所需启动器,然后单击编辑启动器
  4. 前往设置部分,然后单击Steam平台Logo旁边的设置
  5. 输入您的Steam Web API密钥
  6. 输入游戏的Steam Web API密钥。
  7. 单击下载启动器host文件下载适用于Windows或macOS的LauncherHost.zip压缩包。
  8. 单击下载配置下载游戏的配置文件。
  9. 前往启动器行为选项卡,选择用户从Steam运行游戏时启动器的行为(可选):
    • 运行启动器(默认)
    • 运行游戏
注:
无论选择如何,启动器在关闭游戏后仍会显示。
  1. 前往用户登录选项卡,选择一种登录方式(可选:)
    • 通过Steam帐户自动登录(默认)。
    • 通过登录管理器小组件手动登录。小组件使用创建启动器时选择登录管理器项目。

生成并下载启动器安装程序

请参考指南来生成并下载启动器安装程序。

准备用于Steam的游戏编译版本

  1. LauncherHost.zip压缩包(应在步骤1下载)解压到任意目录。该压缩包包含PreparingSteam目录,用于为游戏准备一个上传到Steam的启动器。对于Windows,文件夹结构为:
    • LauncherHost.exeLauncherHost工具的可执行文件
    • Qt5Core.dllvcruntime140-140_1.dllmsvcp140-140_1.dllLauncherHost.exe工具的服务库
    • installer — 启动器安装程序的文件夹
  1. 对于MacOS,文件夹结构为:
    • LauncherHostLauncherHost工具的可执行文件
    • FrameworksLauncherHost工具库的系统文件夹
    • installer — 启动器安装程序的文件夹
  1. GameBuild文件夹中创建一个新文件夹。
  2. 将游戏编译版本复制粘贴到该文件夹
  3. 游戏 > 编译版本 > 可执行文件部分设置游戏可执行文件的名称(Windows / macOS),并指定游戏可执行文件的相对路径。
注:
指定游戏可执行文件时应指定扩展名。
  1. 将独立启动器安装程序(Windows / macOS)复制粘贴到installer文件夹。
  2. 将Steam配置文件复制粘贴到GameBuild文件夹。
  3. 如果游戏已经在Steam上,请将LauncherHost.exe文件名替换为游戏的可执行文件的名称。可在游戏管理面板应用程序和程序包 > 所有应用程序 > Steamworks管理 > 安装 > 常规安装部分的可执行文件字段中找到。
注:
如不想更改可执行文件的名称,可将LauncherHost.exe文件的名称替换为游戏的可执行文件的名称以便调试集成时使用。
  1. 游戏管理面板中启用使用ISteamApps::GetLaunchCommandLine()
  1. 单击准备发布检查您的作品是否与其他用户的作品存在冲突。

将Windows游戏编译版本文件上传到Steam

  1. 登录Steamworks并下载Steamworks SDK
  2. 解压缩SDK压缩包。

  1. 前往steamworks_sdk_151\sdk\tools文件夹并解压缩SteamPipeGUI工具以将游戏编译版本上传到Steam。

  1. 运行SteamPipeGUI工具。

  1. 在设置窗口填写以下字段:
    1. 应用ID字段中,指定游戏的Steam AppID。
    2. 编译版本描述字段中,输入该编译版本的简短描述以便在您的Steam管理面板中认出它。
    3. Steamworks SDK ContentBuilder路径字段中,指定Steamworks SDK ContentBuilder的路径。
    4. Steam登录Steam密码字段,输入您的Steamworks登录名和密码。
    1. 单击添加Depot。在生成版本路径字段中,指定GameBuild和游戏编译版本及启动器安装程序。
    1. 单击上传,然后等待上传结束。

将macOS游戏编译版本文件上传到Steam

  1. launcher.dmg复制粘贴到GameBuild/installer
  2. hostArgs.json复制粘贴到GameBuild文件夹。
  3. 将文件上传到Steam:
    1. 打开解压缩的SteamSDK文件夹

    1. 前往tools/scripts文件夹
    2. 创建一个名为app_build_<steam_id>.vdf的vdf脚本,其中<steam_id>是您项目的Steam ID和以下内容(将第3行的xxxxxx替换为Steam ID,第11行的yyyyyy替换为Depot ID - 此为Steam ID + 1:
Copy
Full screen
Small screen
    
    
    	"AppID" "xxxxxx" // your AppID
    	"Desc" "This is a simple build script 1" // internal description for this build
    
    	"ContentRoot" "../content/" // root content folder, relative to location of this file
    	"BuildOutput" "../output/" // build output folder for build logs and build cache files
    
    	"Depots"
    	{
    		"yyyyyy" // your DepotID
    		{
    			"FileMapping"
    			{
    				"LocalPath" "*" // all files from contentroot folder
    				"DepotPath" "." // mapped into the root of the depot
    				"recursive" "1" // include all subfolders
    			}
    		}
    	}
    }
    
      1. 保存更改
      2. 复制GameBuild目录的内容并将它们粘贴到tools/ContentBuilder/Content文件夹
      3. 在终端控制台中,前往tools/ContentBuilder/builder_osx文件夹
      4. 调用./steamcmd.sh命令开始初始化和配置。
      5. 调用以下命令运行将编译版本上传到Steam服务器的脚本:
    Copy
    Full screen
    Small screen
      cmd.sh +login <username> <password> +run_app_build_http ../scripts/app_build_{Steam_id}.vdf
      

      在Steamworks上发布游戏编译版本

      1. 前往Steamworks中的游戏管理面板
      2. 单击Steamworks管理打开应用程序管理页面

      1. 前往SteamPipes > 生成版本部分。

      1. 创建新分支或使用默认分支。
      2. 通过编译版本ID、上传日期或描述找到上传的编译版本,并将该版本放在分支中。
      3. 单击预览更改预览您的更改。
      4. 单击立即将生成版本设置上线
      本文对您的有帮助吗?
      谢谢!
      我们还有其他可改进之处吗? 留言
      非常抱歉
      请说明为何本文没有帮助到您。 留言
      感谢您的反馈!
      我们会查看您的留言并运用它改进用户体验。
      上次更新时间: 2024年9月19日

      发现了错别字或其他内容错误? 请选择文本,然后按Ctrl+Enter。

      报告问题
      我们非常重视内容质量。您的反馈将帮助我们做得更好。
      请留下邮箱以便我们后续跟进
      感谢您的反馈!