日期:2026-07-01(v4 开发工具台插入后更新) 作者:哈尼斯(独立第三方审计) 基线:v2-p0 完工,467 tests,3500 行源码 + 7900 行测试 详细差距分析:GAP-ANALYSIS.md GitHub Issues 总览:#108
| 层 | 能力 | 状态 |
|---|---|---|
| DSL 解析 | neon 围栏、块骨架、元数据 id、next 声明(←)、文本行、node in(→)、node echo(含拼接)、node next_id、node if(值匹配 + 表达式求值)、修饰器(@style / @bgm)、整行注释 | ✅ |
| 表达式 | simpleeval 沙箱、变量注入、13 内置函数、fallback 正则、自定义函数注册 | ✅ |
| 执行器 | Text/In/Echo/NextId/If/Decorator 全节点类型、NEXT 三阶段、块级作用域、跨块跳转、RouteEvt/ChapterEndEvt、target_id 校验、SaveCmd/LoadCmd 拦截 | ✅ |
| 进程协议 | 5 Cmd + 8 Evt + JSON 序列化 + multiprocessing.Queue | ✅ |
| GUI | PyQt6 MainWindow、PyQt6Sink/InputSink 适配、CLI 降级 | ✅ 骨架 |
| 章节管理 | ChapterManager 跨章节路由、load_chapter_safe、shared_state | ✅ |
| 存档 | SaveManager save/load/list/delete、GameState 序列化、slot 防穿越 | ✅ |
| 装饰器钩子 | @style / @bgm register + dispatch 框架 | ✅ 框架 |
- 表现层:对话框/打字机/选项按钮/立绘/背景/音频播放 — 全缺
- 交互层:命令解析/终端模拟 — 全缺
- 工具链:节点编辑器/实时预览/调试器/导出 — 全缺
目标:引擎"能玩"——对话框 + 选项 + 音频 + 立绘 + 存档截图。
| Issue | 任务 | 依赖 |
|---|---|---|
| #91 | v3-01 对话框 UI(打字机 + 名字标签 + 样式) | 无 ← 起点 |
| #92 | v3-02 选项按钮 UI(PromptInputEvt → 按钮) | #91 |
| #93 | v3-03 AudioManager 真实现(BGM/SE/Voice) | 无 ← 并行 |
| #94 | v3-04 立绘 + 背景图渲染 | #91 |
| #95 | v3-05 存档截图 + 存档列表 UI | #91 |
| #96 | v3-06 BackLog 历史回看 | #91 |
| #97 | v3-07 跳过/快进 | #91, #96 |
| #98 | v3-08 设置菜单 | #91, #93 |
| #99 | v3-09 集成测试 + 文档 | 全部 |
目标:引擎有自己的 IDE——节点编辑器 + DSL 双向同步 + 实时预览 + 调试器 + 导出。模仿 Unity 的可视化开发方式。
| Issue | 任务 | 依赖 |
|---|---|---|
| #109 | v4-01 节点图编辑器(剧情节点可视化 + 连线) | v3 完成 |
| #110 | v4-02 DSL 双向同步(节点图 ↔ neon 代码互转) | #109 |
| #111 | v4-03 实时预览(编辑器内嵌引擎 + 断点调试) | #109, #110 |
| #112 | v4-04 资源管理器(图片/音频/字体统一管理) | #93, #94 |
| #113 | v4-05 章节管理器 UI(项目结构 + 章节排序 + 路由图) | #109, #110 |
| #114 | v4-06 调试器(变量检查器 + 事件流 + 调用栈) | #111 |
| #115 | v4-07 项目导出(打包独立可运行游戏) | #113 |
| #116 | v4-08 编辑器主框架(工作台 + 菜单 + 插件系统) | 全部组件 |
| #117 | v4-09 集成测试 + 文档 | 全部 |
核心设计:
- 节点图 ↔ neon 代码双向同步(改图生代码,改代码更图)
- 实时预览内嵌引擎运行,断点单步调试
- 资源拖拽到节点自动生成装饰器
- 插件系统支持扩展
状态:暂不计划。v4 开发工具台完成后重新评估排期。当前不分配版本号。
| Issue | 任务 | 保留原因 |
|---|---|---|
| #100 | hacknet-01 终端模拟器 | 设计参考 |
| #101 | hacknet-02 命令解析器 + CommandRegistry | 设计参考 |
| #102 | hacknet-03 neon DSL 桥接 | 设计参考 |
| #103 | hacknet-04 虚拟文件系统 | 设计参考 |
| #104 | hacknet-05 虚拟网络 | 设计参考 |
| #105 | hacknet-06 进程模拟(PortHack) | 设计参考 |
| #106 | hacknet-07 邮件系统 | 设计参考 |
| #107 | hacknet-08 集成测试 + 文档 | 设计参考 |
| 阶段 | 工时 | 产出 |
|---|---|---|
| v3 AVG 闭环 | ~1.5 周 | 能在 PyQt6 窗口完整玩 chapter01 |
| v4 开发工具台 | ~2.5 周 | 有自己的可视化 IDE,能拖拽做剧情 |
| 合计(当前排期) | ~4 周 | 从测试框架到可玩+可编辑的完整引擎 |
| Hacknet 扩展(暂不计划) | ~2 周 | v4 完成后重新评估 |
Week 1-2: v3 AVG 闭环
├─ v3-01 对话框 + v3-03 音频(并行)
├─ v3-02 选项 + v3-04 立绘 + v3-05 存档截图
└─ v3-06~09 历史/快进/设置/收尾
Week 3-4: v4 开发工具台
├─ v4-01 节点图 → v4-02 双向同步 → v4-03 实时预览
├─ v4-04 资源管理 + v4-05 章节管理(并行)
├─ v4-06 调试器
├─ v4-07 项目导出
└─ v4-08 主框架整合 + v4-09 收尾
(暂不计划)Hacknet 扩展
└─ v4 完成后重新评估
哈尼斯 · 2026-07-01