如何为游戏打上 Steam DRM 保护


🧐 什么是 Steam DRM

Steam DRM 是 Steam 平台的重要工具之一,其主要作用为校验玩家是否在 Steam 平台上进行了购买,以此保障游戏开发者权益。在完成了 Steam DRM 打包后,若玩家双击游戏,游戏将会在进行运行前进行启动 Steam 进行身份校验以此保护游戏免受盗版问题。

但请各位注意,Steam DRM 并非解决盗版问题的良方。由于Steam DRM 给游戏将会带来的仅为最基础的游戏保护,它将会能够避免你开发完成的游戏在没有任何保护的情况下轻轻松松地复制走,而非提供绝对的游戏保护。

🤔 Steam DRM 命令 drm_wrap

Steam DRM 包含在了 Steam CMD 的命令之中,Steam DRM 打包命令代码 drm_wrap,该命令的组成部分为

drm_wrap [appid] [无 DRM 保护的源游戏执行文件] [打包完毕后的游戏执行文件] [打包工具] [flags]

各项目的含义为:

获得 Steam CMD

访问 Steamworks Documentation 文档库,在 Steamworks SDK 页面下找到 Download the latest version of the Steamworks SDK。

你也可以不用找,直接点击这里下载 SDK 文件

image.png

下载完成进行解压后,你就可以得到完整的 Steam 开发工具,而 Steam CMD 则位于 /sdk/tools/ContentBuilder/builder文件夹中

image.png

🛠️ Steam DRM 打包使用示例

下面演示的是使用 Steam DRM 新版本标准模式下进行打包的方式, 头一次使用时有两个组成部分:

1. .bat文件创建

打开文本编辑应用(记事本或 Visual Studio Code 等任意代码编辑器),复制粘贴如下内容并保存至任意地址。

复制粘贴前你需要注意的内容为:

在进行了以上内容选择后,drm.bat 文件内容如下,并保存到 ContentBuilder 文件夹中

builder\steamcmd.exe +login steamaccount steampassword +drm_wrap 480 "F:\game\game.exe" "F:\game\game.exe" drmtoolp 0

image.png

drm.bat 放到 ContentBuilder 文件夹中才可以保障该命令能够正常运行,若放到其他文件夹下则需要更改 builder\steamcmd.exe 的部分

Tip: 你也可以在这一串文字后加上 +quit来自动关闭窗口,但这一操作将不会给你带来诸如账号密码错误等任何错误反馈信息,你可以在确认以上指令可以正常继续后加上自动关闭的功能。

2. 双击 drm.bat

如果你看到如下反馈,则证明该打包工作成功完成了!恭喜!

image.png

🍎补充内容:为 macOS 游戏添加 DRM

上文所提及的 Steam DRM 工具并不适用于所有平台和所有的游戏执行文件,如果需要对 macOS 系统上的游戏添加 DRM, 可以调用以下两个 API 实现 Steam DRM 的主要功能

需要参考的 API 有:

后续步骤

在完成 DRM 打包后,接下来的操作便是进行游戏包上传了,关于游戏上传的部分你可以参考