【生活娱乐赛道】渊索寓言 Demo——AI 驱动的互动文字冒险游戏
标签: 生活娱乐
0. 打个招呼 
我是谁: 一个刚接触 vibe coding 不久的本科大学生,对 AI 的未来充满好奇与信心。
我是怎么用 TRAE 把 Demo 做出来的:
说实话,在遇到 TRAE 之前,我就有过很多策划想法在脑中浮现过。我试过自己学编程,但是很快我就放弃了——一是过程十分枯燥繁琐,二是不知道怎么把一堆文件组织成一个完整的产品。
TRAE 的出现改变了很多事。我把想法撰写成文本丢给它,说"帮我把这个做成可运行的程序",它就开始快速地撰写代码、搭架构。我只需要检查输出的程序哪部分代码存在漏洞,哪里的功能不符合预期,反馈给它就能进行修改。
从几个月前刚上手 TRAE 以来,我陆续在它的帮助下尝试了多个项目,从2D射击小游戏到Hermes部署,“渊索寓言”是我最为成熟且满意的项目之一。
当然,这个过程也不全是一帆风顺。设置系统的字体和颜色修改死活不成功,我和 AI 来回调试了 8 轮,最后发现是 Python 浅拷贝污染了默认配置——这种 bug 如果没有 AI 帮我逐层排查,我真的很难找到。
TRAE 帮我跨过的最大的坎,是"从 0 到 1"。它让我意识到,vibe coding 不是"让 AI 全包",而是"我说想法,它写代码,我审查调整"——就像结对编程,只不过我的搭档是一个不知疲倦的 AI。
1. Demo 简介 
是什么: 一款基于 Python + PyQt5 构建的 Windows 桌面应用程序,搭配 DeepSeek API 实现实时 AI 驱动的互动文字冒险游戏。用户创建故事世界设定后,AI 扮演 Game Master 实时推进剧情,每局都是独一无二的冒险。
面向谁:
-
互动叙事爱好者——喜欢文字冒险游戏、TRPG、互动小说的玩家
-
创意写作者——有故事想法但不会编程的人
-
AI 内容体验者——想亲身感受大模型叙事能力的好奇者
主要功能:
功能一:种子编辑器——从零创建故事世界
设定类型、风格、语调、世界观、主角等细节。支持自定义输入和 AI 自动生成两种模式。创建完成后可导出为加密种子文件分享给朋友。
功能二:AI 叙事引擎——实时生成独特剧情
基于 DeepSeek API 流式输出,支持多选 / 单选 / 简答 / 自由意志四种题型。上帝模式可强制干预故事走向。
功能三:记忆链系统——长篇不丢上下文
自动记录重要事件锚点,定期回溯提醒 AI 保持剧情一致性。同时维护 HP / MP / 物品背包 / 角色信息等完整 RPG 状态系统。
2. Demo 创作思路 
灵感来源:
在接触过角色扮演游戏和互动小说后,我产生了一个想法——一种不需要游戏主持人,不需要写代码,只要一个想法就能开启的独一无二的冒险。大语言模型的出现让这一切成为了可能,于是我决定用 Trae 把这个想法变成现实。这是我第一次尝试使用 vibe coding 开发开源项目,从零到完整产品,全程与 AI 协作完成。
想解决的问题:
-
内容重复: 传统文字冒险分支有限,通关即弃;AI 实时生成,每局独一无二
-
创作门槛: 创作互动故事需要编程 + 叙事双技能;种子编辑器零门槛,AI 辅助生成
-
长篇失忆: AI 聊天推进故事容易丢失前文;记忆链自动回溯,保持剧情一致
-
互动单一: 只能选 A/B 或自由输入;多选 / 单选 / 简答 / 自由四种题型
为什么做这个方向:
我最开始选择了桌面应用 + DeepSeek API 的技术路线,而非 Web 端方案。文字冒险游戏需要沉浸式的全屏阅读体验,桌面端能提供更稳定的窗口管理和更流畅的流式输出效果;DeepSeek API 性价比高且中文能力出色,非常适合中文叙事场景。架构上采用分层设计,Prompt 工程层独立于 UI 层,未来可以轻松替换前端或接入其他 AI 模型。
3. Demo 体验地址 
您可以通过以下两种方式体验:
方式一:交互式 HTML 演示版本
渊索寓言-Web体验版.html (144.1 KB)
方式二:GitHub 开源仓库
运行方式:git clone → pip install -r requirements.txt → 配置 DeepSeek API Key → 双击 启动游戏.bat
4. TRAE 实践过程 
整个项目是我的一次 vibe coding 实践,全程在 Trae SOLO 模式中完成。以下列举其中的 5 个关键开发阶段:
步骤 1:从策划文档到可运行原型
把游戏策划文档和 DeepSeek API 文档交给 TRAE IDE,AI 阅读后生成了项目骨架。初版包含主窗口、种子编辑器、AI 客户端和基础游戏循环。随后修复了 QUrl 导入错误、stream_chat 方法名不一致等启动崩溃问题,并完成了警告窗口重写、开始菜单左右布局、设置对话框搭建等 UI 初版改造。
Session ID:.995522232212592:0435b2fef151b5cd1b32b06505cf1260_69f714ae8a14f6ca6a38a448.69f77fcfed1d4481d8a30c2c.69f77fcfc281b253c5d3224f:Trae CN.T(2026/5/4 01:03:11)
步骤 2:设置系统深度调试(踩坑最深的阶段)
设置窗口的"字体大小"“UI 颜色”"分辨率"修改始终不生效,反复调试了 8 轮以上。核心问题包括:
-
DEFAULT_CONFIG.copy()是浅拷贝,嵌套 dict 被_deep_update篡改污染 -
app.setFont()只设置默认字体,已有 widget 不会自动更新——需要手动刷新 -
QScrollArea 内部 viewport 阻断 QSS 样式级联,尝试了 5 种方案才最终解决
等等
Session ID:.995522232212592:8980924b17c380ac651c99cc489677e8_69f714ae8a14f6ca6a38a448.69f79705ed1d4481d8a3176a.69f79705c281b253c5d3225d:Trae CN.T(2026/5/4 02:42:13)
步骤 3:架构重构(Phase 1-3)
项目早期代码耦合严重,AI 分析后建议分三个阶段重构:
-
Phase 1: 拆分
config.py为config/defaults.py+config/theme_manager.py,建立分层目录 -
Phase 2: 引入 Pydantic 在数据入口做边界校验,不改动现有 dataclass
-
Phase 3: 修复重构后
stream_chat→chat_stream方法名不一致导致游戏无法启动
Session ID:.995522232212592:95764d17076acff41c8817a305db2393_69f714ae8a14f6ca6a38a448.69f7ad2bed1d4481d8a31a4f.69f7ad2ac281b253c5d32266:Trae CN.T(2026/5/4 04:16:43)
步骤 4:种子编辑器与游戏 UI 打磨
种子编辑器从简陋表单进化为分类导航 + 自定义输入的专业界面:
-
新增 AI 生成种子功能:输入故事简短描述后 AI 自动填充所有字段
-
游戏主界面:故事面板增加滚动条、答题卡区域支持切换题目
-
流式输出优化:输出过程中用波浪闪烁条带代替 JSON 原文
等等
Session ID:.995522232212592:5ab0086f25aad5100a6a517e8ab02294_69f714ae8a14f6ca6a38a448.69f84d5566ffbc2c8c7e5f76.69f84d5472c2e07627ed1cfe:Trae CN.T(2026/5/4 15:40:05)
步骤 5:核心功能实现——加密、记忆链、上帝模式
-
种子加密: AES 加密分享,未输密码时栏目锁定
-
记忆链系统: 自动记录事件锚点,定期回溯提醒 AI 保持剧情一致
-
上帝模式: ESC 菜单中的强制干预指令
等等
Session ID:.995522232212592:1869bd51381f3479585cf636b6533914_69f714ae8a14f6ca6a38a448.6a11e586ed28964f6caa5631.6a11e5860eb95238404052db:Trae CN.T(2026/5/24 01:36:06)
5. 踩坑复盘 
坑一:配置改了不生效——原来是"假复制"
设置窗口里改了字体大小,点确认后没变化,改回去再改还是不行。跟 TRAE 来回折腾了好久,最后发现 Python 的 .copy() 只是复制了最外层,里面的嵌套内容还是指向同一份。也就是说我改的"副本"其实改的是"原件"。换成深度复制后就正常了。这种坑不踩一次真的不知道。
坑二:AI 偶尔"话多"导致程序崩掉
DeepSeek 大部分时候乖乖返回 JSON,但偶尔会在前面加一句"好的,这是你的故事:"之类的话,程序解析 JSON 直接炸了。后来在 Prompt 里加了更严格的约束,代码里也加了容错——先提取 JSON 部分再解析,双保险。
坑三:改了名字忘了改"电话簿"
重构的时候 AI 把一个方法名改了,但调用它的地方没跟着改,结果一启动就崩。这种"改了一头忘了另一头"的问题,在 vibe coding 里特别容易遇到——因为你是用自然语言指挥的,AI 不一定每次都能顾全所有关联。教训就是:重构后一定要整体跑一遍。
6. 后续规划 
-
SVG 图片支持: AI 在适当回合返回 SVG 矢量图(场景/物品/地图),增强沉浸感
-
多语言支持: 英文、日文等多语言界面与叙事
-
提示词优化: 持续迭代 Prompt 工程,支持自定义模板
-
种子市场: 社区种子上传、评分、推荐生态
-
多模型接入: 接入 GPT、Claude 等,自由切换引擎
-
分支可视化: 树状图展示剧情分支,支持回溯重选







