如何将启动器与Steam集成

运行机制

您可以在Steam中将游戏与启动器集成,这样可以通过艾克索拉启动器来推广您的其他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. PreparingSteam文件夹中创建一个新文件夹。
  2. 将游戏编译版本复制粘贴到该文件夹
  3. 游戏 > 编译版本 > 可执行文件部分设置游戏可执行文件的名称(Windows / macOS),并指定游戏可执行文件的相对路径。

注:
指定游戏可执行文件时应指定扩展名。

  1. 将独立启动器安装程序(Windows / macOS)复制粘贴到installer文件夹。
  2. 将Steam配置文件复制粘贴到PreparingSteam文件夹。
  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。在生成版本路径字段中,指定PreparingSteam和游戏编译版本及启动器安装程序。

    1. 单击上传,然后等待上传结束。

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

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

    1. 前往tools/scripts文件夹
    2. 创建一个名为appbuild<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. 复制PrepairingSteam目录的内容并将它们粘贴到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. 单击立即将生成版本设置上线

      本文对您的有帮助吗?
      谢谢!
      我们还有其他可改进之处吗? 留言
      非常抱歉
      请说明为何本文没有帮助到您。 留言
      感谢您的反馈!
      我们会查看您的留言并运用它改进用户体验。
      为此页面评分
      为此页面评分
      我们还有其他可改进之处吗?

      不想回答

      感谢您的反馈!
      上次更新时间: 2023年4月5日

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

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