ISteamUGC::BInitWorkshopForGameServer:设置服务器工坊目录
BInitWorkshopForGameServer 用于让游戏服务器为工坊内容指定存储目录,尤其适合同一安装目录启动多个服务器实例。本页面向 Steamworks 游戏和工具开发者,说明接口声明、参数、返回方式以及与工坊内容生命周期相关的注意事项。
函数声明
客户端通过初始化成功后的 SteamUGC() 接口访问;游戏服务器使用服务器上下文的 SteamGameServerUGC()。以下声明按本次核对的官方接口整理,编译时应以项目实际使用的 SDK 头文件为准。
bool BInitWorkshopForGameServer( DepotId_t unWorkshopDepotID, const char *pszFolder );
参数
| 参数 | 类型 | 方向与含义 |
|---|---|---|
unWorkshopDepotID |
DepotId_t |
输入:游戏服务器使用的 depot ID。 |
pszFolder |
const char * |
输入:保存工坊内容的目录绝对路径。 |
返回值与完成方式
返回 bool;true 表示设置成功。若调用方不是游戏服务器,或工坊内容正在更新,则返回 false。
调用规则与排查
在发送任何 UGC 命令之前调用,并传入服务器 depot ID 和目标文件夹的绝对路径。每个实例应管理自己的目录,并检查进程能否访问该路径。返回 false 后不要假设新的目录已经生效。
使用场景
例如,一台主机运行两个服务器实例时,运营者可以分别配置各自的内容目录,并在每个进程发出其他工坊请求前设置。应确保部署脚本提供正确的 depot 标识和绝对路径;如果设置失败,记录实例和目录信息,再检查调用身份与更新状态。
相关接口
DownloadItem。回调、状态与类型参考整理了相关结构体和枚举,适合在处理结果时对照使用。
资料依据:Steamworks ISteamUGC:BInitWorkshopForGameServer。资料核对日期:2026 年 11 月 4 日。