如何通过 BuildPatch Tool 为 Epic Games Store 上传游戏
在进行了与好几个不同开发者的合作之后,发现大家对于 Epic Games 官方的 BuildPatch Tool 的使用起来还是普遍存在理解问题的。在这里给大家做一个简单的梳理。
本指南针对 BuildPatch Tool 1.6.0 版本,由于 Epic Games 可能会对这个工具进行更新,使用前请注意版本号。
⚒️ 开始前的准备
在开始前,你需要保证你拥有:
- 可以上传到该项目 Binary 的权限(简单来说就是你有权限能把包传到 Epic Games 上头去)
- 一台能够联网访问 Epic Games 的电脑
在保证拥有权限与 Epic Games 后台均可访问之后便可以进行后续操作。
下载并解压 BuildPatch Tool 压缩包
Windows 系统的电脑上下载 BuildPatch Tool 压缩包(虽然它自带了 Linux,macOS 与 Windows 的支持,但请不要尝试在 macOS 上使用它…毕竟官方文档都只考虑了 Windows,能好用到哪去🙅♂️🙅♂️🙅♂️)
上传信息准备
在完成上传之后你需要首先找到 Build Patch Tool Credentials,这相当于 Epic 给你准备的一个传包专用的账号密码组合。你可以在 Epic Games 后台的具体项目页面 > Product Settings (在侧边栏上) > BPT Credentials 上获得
在这里我们假定拿到的 BPT Client ID 为 randomID
,BPT Client Secret 为 mima12345
请拿小本本记好这两个值,等会要考!
1. 访问后台管理包文件的页面
随后通过Epic Games 后台的具体项目页面 > Epic Game Store(在侧边栏上) > Artifacts and Binaries 访问管理包文件的后台页面。
在这个页面和整个 Epic Games 后台上可以看到他们家特色的三个沙盒结构,分别为:Dev,Stage,Live。
在我理解中,你可以认为 Dev 为开发者自己使用的生产环境,进行开发调试和配置设置的部分,在准备妥当之后,开发者或发行商可以将 Dev 沙盒内的设置推送到 Stage 进行测试。 在确定无误之后,便可以进行审核请求,要求 Epic Games Store 对游戏内容与商店页面进行最后审核。在审核通过后,你即可通过推送 Live 沙盒进行对用户的全量发布
请注意:在没有确认具体发售时间的情况下,Epic Games Store 的后台只会将游戏以即将发布的模式进行预发布。在确认了具体发售时间之后,Epic Games Store 团队将会对所有的游戏设置进行进一步的游戏审核(一般为3-5个工作)。
在 Dev 的 Tab 下,找到最右侧的三个小点,在弹出的二级菜单中点击 Manage Artifact.
在出现的新页面中,点右侧的 Instructions
然后点击中间的 Command line template for this artifact,你的剪贴板上就会自动获取以下的内容,拿个记事本记录一下!
注意!由于我们遇到的很多人都有填错的部分,所以请尽情的使用它来获得对应的命令并让它自动填一部分(准确来说三个)的信息。能不要自己填的就一定不要自己填!!
BuildPatchTool.exe -OrganizationId="<组织的ID号,你将会自动获得>" -ProductId="<产品的ID号,你将会自动获得>" -ArtifactId="<Artifact 的ID号,你将会自动获得>" -ClientId="<YourClientId>" -ClientSecret="<YourSecret>" -mode=UploadBinary -BuildRoot="<LocationOfLocalBuild>" -CloudDir="<YourCloudDir>" -BuildVersion="<YourBuildVersion>" -AppLaunch="<AppToRun>" -AppArgs="<LaunchArguments>" -FileAttributeList="<LocationOfAttributesFile>" -FileIgnoreList="<LocationOfIgnoreFile>"
2. 准备剩余的上传信息
接下来的事情就变的简单起来了。你必须填写内容为:
- ClientId 与 ClientSecret:还记得开头 Build Patch Tool Credentials 嘛,狠狠地用起来!这里我们用我们假定的 BPT Client ID
randomID
,BPT Client Secretmima12345
- BuildRoot:填写你的包的所在地址。举个例子
D:/MyGmame/
- CloudDir:虽然官方文档说这是选填,但不幸的是其实它是个必填项目,你可以写一个类似于你包所在位置下的一个位置。 举个例子
D:/MyGmame/Cache/
- BuildVersion: 填写你的游戏版本号。举个例子
1.0.0
- AppLaunch: 填写你的游戏的启动项目。举个例子
gamelauncher.exe
- AppArgs: 填写启动游戏时需要使用的额外命令行,可以为空。这里我们使用空。
于是组装之前在记事本上记录的内容,就能获得完整的使用命令:
BuildPatchTool.exe -OrganizationId="<组织的ID号,你将会自动获得>" -ProductId="<产品的ID号,你将会自动获得>" -ArtifactId="<Artifact 的ID号,你将会自动获得>" -ClientId="randomID" -ClientSecret="mima12345" -mode=UploadBinary -BuildRoot="D:/MyGmame/" -CloudDir="D:/MyGmame/Cache/" -BuildVersion="1.0.0" -AppLaunch="gamelauncher.exe" -AppArgs="" -FileAttributeList="" -FileIgnoreList=""
拿出你喜欢的命令行工具进行使用吧!
🕺 开始上传!
如果看到如下的代码的话就代表着一件事情,恭喜你上传成功!
🙅♂️ 常见问题
1. 路径写法:该命令可接受的写法如下,请注意写绝对路径而非相对路径。
-BuildRoot="D:/MyFolder/"
-BuildRoot=D:\MyFolder\
-BuildRoot=D:\MyFolder
-BuildRoot=D:/MyFolder/
-BuildRoot=D:/MyFolder
-BuildRoot="D:\MyFolder\\"
2. 常见报错 - CloudDir, BuildRoot, ArtifactId, BuildVersion, AppLaunch, and AppArgs are reguired parameters
基本是因为在填上传参数的时候少写了一个导致,请注意 CloudDir 参数必填而不是官方文档说的选填项目。 此外还有一个常见问题是由于参数前少写了“-”符号导致的,请注意不要缺了漏了。
👿 史蒂文的牢骚话
说实话自从 Epic Games 上了 Now On Epic Program 和各种针对开发者的让利反馈活动之后, 对于 Epic Games 这样进入单机游戏市场的搅局行为我是非常赞赏的(多点不一样的平台和对开发者的让利活动,谁不喜欢呢)
但实际上 Epic Games 经过了差不多一两年的优化之后,整个平台还是不够好用,各种奇怪的设计和非常难用的后台总给人一种“活该《堡垒之夜》启动器”的狗血感!!!
可长点心吧!!