ISteamUGC::SetItemsDisabledLocally:设置项目的本地禁用状态
SetItemsDisabledLocally 用于批量设置工坊项目在本机是否禁用,适合制作游戏内 Mod 开关。本页面向 Steamworks 游戏和工具开发者,说明接口声明、参数、返回方式以及与工坊内容生命周期相关的注意事项。
函数声明
客户端通过初始化成功后的 SteamUGC() 接口访问;游戏服务器使用服务器上下文的 SteamGameServerUGC()。以下声明按本次核对的官方接口整理,编译时应以项目实际使用的 SDK 头文件为准。
bool SetItemsDisabledLocally( PublishedFileId_t *pvecPublishedFileIDs, uint32 unNumPublishedFileIDs, bool bDisabledLocally );
参数
| 参数 | 类型 | 方向与含义 |
|---|---|---|
pvecPublishedFileIDs |
PublishedFileId_t * |
输入:包含要设置的项目 ID 的数组。 |
unNumPublishedFileIDs |
uint32 |
输入:ID 数组中的元素数量。 |
bDisabledLocally |
bool |
输入:true 为本地禁用,false 为取消本地禁用。 |
返回值与完成方式
返回 bool,true 表示设置成功。调用方提供项目 ID 数组与数组中的元素数量。
调用规则与排查
本地禁用与取消订阅不同。默认情况下,GetNumSubscribedItems 和 GetSubscribedItems 会排除这些项目;要在管理界面列出它们,应把对应函数的 bIncludeLocallyDisabled 设为 true。修改完成后重新获取列表及状态。
使用场景
例如,玩家暂时关闭一个已安装的 Mod 时,游戏传入该项目 ID 并设置禁用。之后普通订阅枚举默认不再返回它,但管理页面仍可选择包含禁用项,使玩家能恢复使用。实际是否卸载已加载内容,由游戏自身的资源管理逻辑决定。
相关接口
GetNumSubscribedItems、GetSubscribedItems。回调、状态与类型参考整理了相关结构体和枚举,适合在处理结果时对照使用。
资料依据:Steamworks ISteamUGC:SetItemsDisabledLocally。资料核对日期:2026 年 11 月 4 日。