ONITalk 是《缺氧》(Oxygen Not Included)的上下文感知复制人对话模组。复制人会根据当前工作、环境、压力、呼吸状态、近期共同经历和殖民地事件生成简短台词;台词同时显示在头顶气泡和可拖动、可缩放的半透明聊天历史窗口中。
ONITalk 只生成文本,不控制复制人,也不修改游戏模拟。远程模型不可用时会自动回退到内置离线台词。
- 完整版:
1.0.0(2026-08-02) - 最近实测游戏版本:
U59-744825 - 支持基础游戏与 Spaced Out!
- 界面与台词语言:英语、简体中文、西班牙语
- 下载:ONITalk-v1.0.0.zip · SHA-256
- 许可证:MIT License
- 原生闲聊、压力、缺氧和环境状态触发,并过滤睡觉、如厕等不合理场景;
- 最多三句的受控双向连续对话;
- 按殖民地 GUID 隔离的关系、行动和重大事件记忆;
- 本地相关性检索和 Token 预算,不为记忆选择额外调用模型;
- 可拖动、缩放、最小化和清空的半透明聊天历史窗口;
- 固定跟随复制人的头顶气泡,支持暂停冻结、相邻气泡错层、时长、大小和透明度调整;
- 受保护的默认提示词,以及可选的自定义风格指令和本地预览;
- 远程请求失败后的离线回退和有上限的指数退避;
- 长期记忆查看、导出和双重确认清空;
- 英语、简体中文和西班牙语界面,生成台词严格跟随所选界面语言;历史混合语言内容只作为事实参考。
以下功能图均为专门新建的 ONITalk QA 测试存档的 1920×1080 Steam F12 JPEG 实机截图;没有加载或修改玩家原有存档。512×512 PNG 主预览图是仅使用这些实机截图制作的宣传合成图,不是额外游戏功能截图。
| 头顶气泡与聊天历史 | 长期记忆库 |
|---|---|
| 记忆注入预览 | 服务商与气泡设置 |
|---|---|
模组选项提供统一的服务商、Endpoint、模型和 API Key 配置面板。内置预设包括:
- DeepSeek、OpenAI、OpenRouter、Google Gemini、SiliconFlow;
- Ollama、阿里云百炼/通义千问、Groq;
- Anthropic Claude 的 OpenAI 兼容层;
- 自定义 OpenAI Chat Completions 兼容接口;
- 完全不发送网络请求的离线台词。
选择预设会填写推荐的 Endpoint 和模型,但不会锁定配置。服务商的模型名、接口兼容性和计费规则可能随时变化,预设也不代表所有服务商都已使用真实账号逐一实测。1.0.0 的自动检查覆盖统一请求构造、鉴权差异、错误回退和配置迁移;OpenAI GPT-5 预设使用 max_completion_tokens 并省略不兼容的 temperature 参数。DeepSeek 已完成真实远程生成验收。使用其他服务商前,请在选项中核对其当前文档并点击“验证配置”。
Ollama 和离线台词无需 API Key。自定义本地接口是否需要 Key 取决于该服务本身;云端服务通常需要有效 Key。
- 按 安装与升级 安装 ONITalk,并在游戏“模组”页面启用。
- 完全重启游戏,在主菜单打开“模组”,找到 ONITalk 并点击“选项”。
- 选择界面语言和服务商。离线台词或 Ollama 可不填 Key;云端服务填写 Key 后点击“验证配置”。
- 进入殖民地。附近复制人满足触发、距离和冷却条件后会开始对话。
连续对话和高频测试模式会增加请求次数及费用。正常游玩时建议关闭高频测试模式。
聊天历史窗口只保留当前游戏会话的内容,可以拖动、从右下角缩放、最小化和清空。位置与尺寸按屏幕比例保存在本机配置中。
头顶气泡每帧跟随复制人位置和镜头缩放:
- 暂停游戏时冻结显示倒计时;
- 长台词按长度延长,最大显示时长受限;
- 相邻气泡会自动纵向错层;
- 复制人离开屏幕或切换世界时气泡会隐藏;
- 可在局外模组选项中关闭气泡,或调整时长、背景不透明度和整体大小。
ONITalk 会按殖民地 GUID 保存有限的关系、行动和重大事件记忆,不同存档不会混用。
- 高频低价值行为(如睡觉、如厕、开门)不会记录;
- 单块砖、梯子、线缆和管道等零散施工先在后台累计,达到阈值后才形成低权重摘要;
- 切换殖民地、卸载场景或清空记忆时会取消正在生成的对话;旧异步结果会按会话、轮次和殖民地 epoch 复核,不会显示或写入新存档;
- 点击聊天窗口标题栏的“忆”可查看上一次请求选中的记忆和评分;
- 点击“库”可查看计数和摘要、导出完整记忆,或经两次确认后清空;
- 导出不含 API Key,但可能包含殖民地名称、复制人名称和生成台词,请按私人数据保管。
当前行动和事件记忆仍保留部分历史语言相关分类字符串。1.0.0 会在注入英语或西班牙语提示词时翻译已知结构文本,但尚未迁移到跨语言稳定事实 ID;中途切换语言可能使旧事实的检索或显示不完全一致。该 schema 升级列入 post-1.0 路线。
配置通常位于:
Documents\Klei\OxygenNotIncluded\mods\config\ONITalk\ONITalk.json
API Key 输入框只在界面中遮挡显示;Key 仍会以明文保存在该文件及配置备份中。使用远程模型时,复制人姓名、状态、触发原因、上一句台词、本地选中的记忆摘要和自定义风格提示词可能发送到所选 Endpoint。ONITalk 不运营中转服务器,也不收集遥测。
带 API Key 的请求只允许 HTTPS 或本机回环地址。费用、数据保留和可用性遵循所选服务商的规则。公开日志或配置前请阅读 隐私与网络请求。
需要 Windows、PowerShell 5.1+、.NET 8 SDK 和本机《缺氧》游戏文件。
powershell.exe -NoProfile -ExecutionPolicy Bypass -File .\scripts\doctor.ps1
powershell.exe -NoProfile -ExecutionPolicy Bypass -File .\scripts\build.ps1构建会运行核心与本地化检查,并使用本机当前游戏程序集生成 artifacts\ONITalk\ONITalk.dll。发布包由固定白名单构建,并执行敏感信息扫描和 SHA-256 校验。
关闭游戏后运行:
powershell.exe -NoProfile -ExecutionPolicy Bypass -File .\scripts\install-local.ps1不要同时启用 Steam 创意工坊版和 mods\Local\ONITalk 本地版。PLib Core/UI/Options 4.25.0.0 以 MIT 许可随 ONITalk 分发,许可与修改说明包含在发布文件中。
ONITalk 以 MIT License 发布。PLib、Harmony 及游戏本身的权利归各自作者所有,详见 第三方许可说明。本项目与 Klei Entertainment 无隶属关系。