标签与版本兼容

Steam 创意工坊标签与版本兼容管理

创意工坊项目需要让玩家容易找到,也需要在游戏更新后保持可用。本页说明 Steam Workshop 标签、游戏分支与 Mod 版本的配置方式,适合负责游戏内容生态及上传工具的开发者。

创作者发布内容后,玩家通过 Steam 工坊获取内容并由游戏加载

使用标签帮助玩家筛选

上传工具可以通过 ISteamUGC::SetItemTags 为项目设置开发者定义的标签。默认情况下,游戏提交的标签会显示在工坊主页供玩家筛选。开发者也可以在 Steamworks 的 Workshop → Tags 中指定展示的标签、分类标题及仅管理员可见的标签。

用于筛选的配置标签必须与游戏上传的标签名称完全一致。为避免同一概念出现多个拼写,建议先制定稳定的标签表,再让上传工具从固定选项中选择;修改标签时同时考虑旧项目是否需要更新。键值标签可由 AddItemKeyValueTag 添加,并可通过查询条件筛选,适合机器可读的分类信息。

官方标签页说明,一旦有项目以某个标签上传,该标签就会加入工坊,无法从工坊标签集合中删除。若只想让玩家看到选定的标签,应配置展示列表与分类;这与更新某个项目自身的标签是不同的操作。

默认更新与分支版本

默认情况下,订阅者下载项目的最新版本,后续更新也会传播给现有订阅者。复杂 Mod 可能与不同游戏构建不兼容,自动更新可能影响游戏体验或存档。Steamworks SDK 1.60 起,工坊支持将项目版本标记为适用于特定 Steam 游戏分支或分支范围。

先在 SteamPipe → Builds 中按从旧到新的顺序整理游戏分支,再在工坊配置中启用 Enable Game Branch Versions 并发布设置。分支顺序影响最小值和最大值所表达的范围,因此维护旧版本时应保持清晰的命名与顺序。

为项目声明兼容范围

创作者可以在工坊项目历史页面配置各项目版本适用的游戏版本;上传工具也可在提交更新时调用 ISteamUGC::SetRequiredGameVersions,设置最小和最大分支。同一个分支可同时作为最小值和最大值,表示仅支持该分支;省略一端则向该方向的更旧或更新分支延伸。若未指定范围,Steam 视为支持所有游戏构建。

当多个项目版本都支持玩家当前的游戏分支时,Steam 下载其中最近上传的版本。这个匹配机制依赖创作者或工具填写准确的支持范围,不能替代实际兼容性测试。游戏更新进入公开版前,先在测试分支提供构建,让 Mod 作者验证并更新声明,是减少兼容问题的实用途径。

检查并提示玩家

游戏可以使用 ISteamApps::GetCurrentBetaName、GetNumBetas 和 GetBetaInfo 了解分支;查询订阅项目后,可用 GetNumSupportedGameVersions 和 GetSupportedGameVersionData 读取其声明的支持范围。若发现不兼容,向玩家说明可能受到影响的项目,并让玩家自行决定下一步。

在玩家选择切换时,ISteamApps::SetActiveBeta 可请求切换分支。官方文档说明这一操作会退出当前游戏、切换并安装目标分支内容,然后重新启动游戏,因此界面应提前告知玩家并留出保存进度的机会。

参考 Steam Workshop Item Tags、Steam Workshop Item Versioning 及 ISteamUGC 参考。