Skip to content

创意工坊与自发行发布指南 ​

TransBox 支持两条分发路径:

  1. Steam 创意工坊(Steam 版):内置 创意工坊中心 (Workshop Hub),浏览订阅与一键发布均在客户端完成。
  2. 自发行 / 本地扩展(无 Steam 或 TRANSBOX_DISTRIBUTION=selfpub 构建):不初始化 Steamworks、不扫描工坊目录;插件靠 Zip + 本地扩展目录安装。自发行版账号/授权 UI 位于客户端 src/transbox/ui/qml/selfpub/(License / AccountCenter 等),与工坊上传无关。

有 Steam 时优先用工坊;面向非 Steam 用户或内网时用本地目录分发。


1. 创意工坊中心概览 ​

通过 TransBox 客户端可随时呼出工坊中心独立窗口:

  • 入口 1:在主窗口快捷菜单中点击 「创意工坊中心」;
  • 入口 2:打开 设置中心 → 扩展工坊,点击顶部的 「创意工坊中心」 按钮。

窗口提供三大核心面板:

  1. 浏览工坊 (Browse):在线搜索、官方标签分类筛选、分页浏览、查看海报与详情、一键订阅与实时下载进度显示;
  2. 我的订阅 (My Subscriptions):集中管理本机已订阅的所有 MOD,展示文件大小、更新状态、一键重新下载、打开本地文件目录或取消订阅;
  3. 发布与更新 (Publish & Update):本地插件目录自动元数据提取、官方标签智能映射、预览图配置、全新发布与增量版本更新(回填 Published File ID)、5 阶段进度实时反馈。

2. 上传前自检 ​

技术性检查(目录结构 / id / version / entrypoint / 体积 / 图标 / locales) 已统一在 打包与体积上限 § 打包前自检,本节只列发布专属的几项:

  • [ ] 工坊封面图:preview.png / preview.jpg,16:9 或 4:3,建议 < 1 MB
  • [ ] 编码:源码与数据文件统一 UTF-8
  • [ ] 无硬编码凭据:API Key / 私钥 / 本机绝对路径一律走 config_schema 让用户填
  • [ ] 本地验证:已放进 extensions/ 并在客户端启用,各项功能无报错

3. 客户端内一键上传与发布流程 ​

打开 创意工坊中心 → 发布与更新 (Publish) 标签页,只需极简的三步即可完成发布:

选择本地插件目录 ──▶ 客户端自动解析 mod.json ──▶ 选择预览图并核对标签 ──▶ 点击上传 (全新发布/增量更新)

第一步:选择内容文件夹(自动解析元数据) ​

  1. 在「内容文件夹」一栏点击右侧的 「浏览...」 按钮;
  2. 选择你本地已开发测试完毕的插件文件夹(根目录包含 mod.json);
  3. 客户端智能自动填充:
    • 自动读取并填入插件标题(英文环境优先读取 name_en,否则读取 name);
    • 自动提取描述文本(优先读取 description_en 或 description);
    • 自动映射官方「内容类型」标签(如 asr → ASR Engines,theme → Themes,assistant → AI Assistant 等);
    • 自动检测 supports_glossary 属性,若声明为术语友好则自动勾选 「术语友好 (Glossary-ready)」 能力标签;
    • 自动在工坊元数据中注入 id=<插件ID>,方便社区索引与依赖管理。

第二步:配置预览图与更新说明 ​

  1. 预览图:点击「预览图」右侧的 「浏览...」 按钮,选择准备好的封面海报图片(支持 .png, .jpg, .jpeg, .webp);
  2. 核对类型与标签:检查下拉框中的「内容类型」是否匹配。如果你的插件针对专有名词或术语库做了优化,确认勾选「术语友好」;
  3. 更新说明 (Change Note):填写本次发布或版本更新的简要说明(例如 v1.0.0 首次发布,支持双向流式翻译)。

第三步:全新发布 vs 增量更新 ​

根据你的发布诉求处理 「Published File ID」 字段:

A. 首次发布新物品(全新发布) ​

  • 保持「Published File ID」一栏完全留空;
  • 确认标题、描述、预览图无误后,点击 「上传到创意工坊」 按钮;
  • 客户端底层将自动调用 Steamworks ISteamUGC.create_item() 创建全新的工坊物品,并自动将其与你的 Steam 账号绑定。

B. 更新已有物品(增量更新版本) ​

  • 点击「Published File ID」右侧的「选择...」按钮;
  • 客户端会弹出 「我发布的物品」 弹窗,并自动列出你账号下曾经发布的所有 TransBox 工坊条目;
  • 可在搜索框中快速过滤标题或 ID,点击对应条目即可一键回填 Published File ID(亦可直接手动粘贴已有 ID);
  • 填写本次修改的「更新说明」,点击 「上传到创意工坊」。Steam 会直接就地更新现有工坊物品,保留原有的订阅数、评论与点赞!

多语言自由编辑与 Steam 全语言槽同步(国际化架构) ​

TransBox 面向全球开发者开放,无论是中文母语、英语母语、日语母语还是其他语种的开发者,均可享受到如 Steam 网页后台般强大的多语言发布体验:

1. Steam 后台风格的语言下拉切换 ​

在发布表单的「编辑语言」下拉菜单中,支持实时切换 简体中文、English、日本語、繁體中文、한국어、Français、Deutsch、Español、Русский 等官方标准语言:

  • 已配置标记 (●):下拉列表中,凡是 mod.json 中已声明或开发者已输入内容的语言项,末尾均带有醒目的 ● 标记(例如 English (英语) ●、简体中文 ●);
  • 独立分别编辑:切换语言后,标题与描述输入框自动展示对应语言槽的文案,开发者可分别精心润色各语种的介绍;
  • 从默认语言一键复制:若尚未为某小语种撰写翻译,可点击右侧的 「从默认语言复制」 按钮快速填入基础文案。

2. 插件母语自适应与智能归槽 ​

选择插件文件夹后,客户端智能解析引擎会自动进行语言探测:

  • 英语开发者编写的纯英文 mod.json,自动归入 English 语言槽;
  • 日语开发者编写的日文 mod.json,自动归入 日本語 语言槽;
  • 中文开发者编写的插件,自动归入 简体中文 语言槽;
  • 若声明了 name_en / name_ja 或 locales/*.json,自动填充到对应的多个语言槽中,并高亮指示。

3. 发布时全语言槽一次性自动同步 ​

点击「上传到创意工坊」后:

  1. 客户端首先以当前主编辑语言完成文件包、预览图和标签的主提交;
  2. 随后底层全自动以毫秒级轻量发起增量更新,依次为所有已配置的语言槽(如英语、日语、中文等)调用 Steamworks ISteamUGC::SetItemUpdateLanguage 写入 Steam 官方对应的语言槽(不重复上传大文件包,每个语言槽耗时仅 0.2 秒);
  3. 上传完成直观提示:上传成功(已同步 简体中文、英语、日本語 等多语言)!

效果:无论来自哪国的玩家打开 Steam 创意工坊,都能看到以他们母语呈现的专业插件标题与介绍!作者完全无需在网页后台繁琐切换与重复操作!


4. 上传状态与 5 阶段进度指示 ​

点击上传后,客户端会提供清晰的平滑进度条与阶段状态提示:

阶段状态名称内部权重说明
Stage 1准备配置 (Prepare Config)0% ~ 15%初始化 Steam UGC 会话,锁定物品句柄与多语言配置
Stage 2准备内容 (Prepare Content)15% ~ 30%校验本地目录结构与数据完整性,准备文件索引
Stage 3上传内容 (Upload Content)30% ~ 85%将插件代码与资源增量推送到 Steam CDN 存储库
Stage 4上传预览图 (Upload Preview)85% ~ 95%上传并部署工坊卡片海报与缩略图
Stage 5提交更改 (Commit Changes)95% ~ 100%提交事务,更新工坊版本号并刷新物品状态

如果这是你的 Steam 账号第一次在 TransBox 创意工坊发布作品,Steam 可能会要求签署《Steam 创意工坊分发协议》。 此时客户端会智能感知该状态,提示 needsLegal: true 并自动唤起 Steam 覆盖页面直达工坊协议签署界面。点击同意后即可正常向社区公开!

查看工坊物品 ​

上传成功后,界面会显示高亮的成功状态与分配的物品 ID。作者可在浏览器或 Steam 客户端中进入物品主页,完善长图排版、添加更多游戏截图、调整公开范围(可先设为「仅好友可见」进行灰度验证,确认无误后再改为「公开」)。


5. 玩家侧订阅与即时热生效机制 ​

TransBox 实现了无感丝滑的插件安装与自动热重载链路:

工坊中心点击「订阅」
        │
        ▼
Steam 底层多线程下载(客户端实时显示百分比进度)
        │
        ▼
Steam 触发 ItemInstalled 事件回调
        │
        ▼
TransBox 自动刷新插件注册表 (无需重启软件,立即可用!)
  1. 工坊中心一键订阅:
    • 玩家在「工坊中心 → 浏览工坊」中点击任意卡片的 「订阅」 按钮;
    • 客户端立即触发下载任务,并在卡片和「我的订阅」页面实时展示下载百分比与文件尺寸;
  2. 全自动热重载生效:
    • 物品下载完毕后,系统通过底层事件回调自动捕获安装通知,并执行 refreshPlugins();
    • 无需重启 TransBox!对于词库、主题或 AI 助手等插件,直接进入对应设置面板即可发现已就绪,一键开关启用。

6. 自发行与本地扩展目录分发 ​

Steam 不可用、内网离线,或用户装的是自发行版时,走本地扩展目录:

  1. 一键导出:设置 → 扩展工坊 → 插件卡片「导出」→ 得到 transbox_mod_<id>_v<version>.zip
  2. 手动打包:Zip 根下直接是 mod.json(勿多包一层空文件夹)
  3. 用户安装:扩展工坊 →「打开本地 MOD 目录」→ 解压进去 → 刷新

扫描目录、三种渠道对比、体积上限见 发布渠道 与 打包与体积上限。

Steam 工坊并未取消——Steam 渠道仍完整保留;自发行只是另一条不依赖 Steam 的产品线。 插件作者可同时提供工坊物品与 Zip。


7. 常见问题与发布排查 (FAQ) ​

Q: 上传时提示 Steam UGC 不可用 或 Steam 未登录? ​

A:TransBox 的工坊中心基于原生 Steamworks API。请确保在运行 TransBox 时,你的桌面端 Steam 客户端处于登录运行状态。

Q: 为什么更新插件后,玩家没有自动更新? ​

A:

  1. 每次更新内容时,建议同步递增 mod.json 中的 version 字段(如 1.0.1);
  2. 在工坊中心发布页务必通过「选择...」回填正确的 Published File ID,切勿直接空白上传(空白会创建全新物品,导致原有订阅者无法收到更新);
  3. Steam 会在后台自动为订阅者推送最新更新;玩家亦可在客户端「我的订阅」面板手动点击「刷新」或「检查更新」。

Q: 怎样为工坊物品设置支持的语言标签? ​

A:在 mod.json 中配置 supported_langs: ["zh", "en", "ja"]。工坊中心在解析元数据时会自动识别语言支持范围,方便多语种玩家搜索与匹配。

Q: 没有 Steam 也能装别人的插件吗? ​

A:可以。让作者导出 Zip,解压到 %APPDATA%/transbox/extensions/(或应用旁 extensions/),在扩展工坊点刷新即可。自发行版同样支持该路径;创意工坊订阅仅 Steam 版可用。

TransBox - 赋能全人类无界限跨语言交流