Proxyos Weekly 028
TL;DR 概览
本期目标
- 写个玩家操作手册过一下第二章的代码能力
- 尽量补全相关功能
进展速记(Changelog)
本期假设 / 预期
我当时以为世界是怎样的? 这个预期中,哪一条被证伪 / 被削弱 / 被确认?
本期有点尴尬,github-copilot在本期第一天休息的时候折腾奇奇怪怪小项目的时候额度用光了,导致本期只有一天施工
所以本期的主要任务会是排查第二章能力,为下一期提供信息。预计脚本执行还得包一层,然后加上任务对轻聊的前后回调
……缺的比想象得多,下期好好肝吧
本期确定性变化
哪些东西现在「更确定」或「被明确否定」了? “确认 X 不可行” “删掉 Y 抽象” “意识到 Z 是伪问题”
新增:
变更:
- 整理了序章、第一章、第二章的剧本
- 优化第二章的剧本,现在幽灵进程的身份更明朗了
修复:
删除:
主要进展内容/本期关键判断点
我做出了哪些「如果错了也要付代价」的判断?
Proxyos Weekly 027
TL;DR 概览
第一章搞定了。接下来是第二章了
本期目标
- 完成第一章测试
- 第六节
- 过渡到第二章
进展速记(Changelog)
本期假设 / 预期
我当时以为世界是怎样的? 这个预期中,哪一条被证伪 / 被削弱 / 被确认?
TMD这已经是拖了三期了,再拖下去天理不容了!
把上期遗留的代码检视完,修掉明显的bug,把图用新的结构重新录一下,然后就赶紧把过渡段处理好。别TM给自己上强度了
过渡完之后如果还有时间,那就按照上期说的那样写个玩家操作手册过一下第二章的代码能力,然后根据结果安排下期计划
……又给自己上强度了,主要是检视的时候发现了不少可能给以后埋雷的实现缺陷,然后一个个修
之前过渡到第二章的脚本在新的布局模式下没法用了,换了新的逻辑
本期确定性变化
哪些东西现在「更确定」或「被明确否定」了? “确认 X 不可行” “删掉 Y 抽象” “意识到 Z 是伪问题”
新增:
- ANORA 新增了回放到特定关键帧的IPC命令
- 为啥我之前TMD把第六节的任务定义漏了……已添加
- 启动动画
变更:
- ANORA 的回放进度条现在再次平滑移动了
- ANORA 的复制粘贴机制现在更健壮了,必要时用户甚至可以用这个功能导出部分图
- ANORA 的边禁用机制得到了修正,被禁用的边会被视为存在但不会被用于传递数据
- 优化了第六节的文案,现在它对于新人来讲应该更好理解了
- 优化了节点架构,现在整体逻辑更加清晰且具有可扩展性
修复:
- ANORA 部分节点类型可能因为时序问题无法正常注册
- 第一章的等待用户确认机制可能会出现用户连按好几次Enter导致缓冲区中的Enter被后续多个等待确认依次消费,进而导致确认被跳过
删除:
主要进展内容/本期关键判断点
我做出了哪些「如果错了也要付代价」的判断?
Proxyos Weekly 026
TL;DR 概览
本期目标
- 修好剩下的 bug
- 需要有一个机制来等 ANORA 的 IPC 加载后再跑 IPC,否则启动 ANORA 后立刻用 IPC 加载回放会因 ANORA IPC 未加载而被忽略
- 完成第一章测试
- 第六节
- 过渡到第二章
进展速记(Changelog)
本期假设 / 预期
我当时以为世界是怎样的? 这个预期中,哪一条被证伪 / 被削弱 / 被确认?
- 理想情况是预计使用半天修好 BUG,然后半天搞定第一章,接下来的一天主要用于处理第二章的轻聊测试。但是我觉得这个 bug 没那么好修,可能得改一堆东西
- 确实……我寻思还是一步到位比较好,所以我要去重构整个 Godot 和 Python 的交互逻辑,以为未来的 Python http 请求玩法铺路
后来发现还是缺东西……又在补功能
Proxyos Weekly 025
TL;DR 概览
真是充实的一天呢,一堆优化和 bug 修复。至于测试进度……显然测出了很多问题
本期目标
- 完成第一章测试
- 第五节
- 第六节
- 过渡到第二章
- 修 ANORA
- 单步调试功能需要做对应调整
- 似乎有个偶现的无法重复录制的问题
- 添加边选中逻辑
- 多选拖动功能表现异常
进展速记(Changelog)
本期假设 / 预期
我当时以为世界是怎样的? 这个预期中,哪一条被证伪 / 被削弱 / 被确认?
- 够呛能干完
- 确实没干完
本期确定性变化
哪些东西现在「更确定」或「被明确否定」了? “确认 X 不可行” “删掉 Y 抽象” “意识到 Z 是伪问题”
新增:
- ANORA 添加节点 resize 功能
- ANORA 为边的选中添加视觉反馈
- ANORA 优化边的样式,便于区分数据方向
变更:
- ANORA 单步调试时会忽略延迟(毕竟用户已经在手动控制什么时候执行下一个了)
- ANORA 增加节点的最小尺寸,避免过度缩小
- ANORA 优化状态管理,使用事件维护状态,使数据流动方式更统一
- 基本重构了 Middleware 机制,同时也和 UTF8StreamDecoder 一起作为独立模块分离出了 Terminal,整体职责更清晰,性能也得到了些许提升
- UTF8StreamDecoder 会先检查末尾三字节,避免因为让 godot 的 get_string_from_utf8 直接解析出现错误提示
- ANORA 优化事件管理,现在更不容易漏改东西了
修复:
- ANORA 单步状态未被正常同步
- ANORA 在步进执行过程中再次步进导致状态异常
- ANORA 因为节点添加 resizer 时打破了单根节点组件的规律,事件被绑到了不该绑的地方
- ANORA 导出录制结果时没有重置状态,导致 UI 仍然显示录制中的状态,但实际上没有录制器在工作,以至于再次点击导出时无法正常导出
- ANORA 多选节点拖放时,只有一个节点的位置正常更新
- ANORA 分配器内部状态更新异常导致无法接受新输入且始终输出同一个值
- Terminal 的 Middleware 机制存在问题,BetterProcess 在某些情况下会将一次
print(..., flush=True)的内容分成两次返回,导致 Niddleware 的 marker 被截到两次输出里,进而导致 Middleware 未正确处理标记
删除:
主要进展内容/本期关键判断点
我做出了哪些「如果错了也要付代价」的判断?
Proxyos Weekly 024
TL;DR 概览
本期目标
- 完成第一章打磨
- 第五节
- 第六节
- 过渡到第二章
- 完成第一章测试
- 第五节
- 第六节
- 过渡到第二章
进展速记(Changelog)
本期假设 / 预期
我当时以为世界是怎样的? 这个预期中,哪一条被证伪 / 被削弱 / 被确认?
- 第一章核心 bug 已修复,主要打磨内容是调整文本和图表现。考虑到加上本期就是一整周了,应该能搞定文本和图表现。音效、视觉效果等发 demo 前统一处理
- 实际上在打磨到需要更复杂输入数据的第五节时,发现 ParamNode 大小不能很好地显示其内容,于是临时加了功能
- 问题大了去了!详情见
主要进展内容/本期关键判断点一节的 ANORA 相关段落
本期确定性变化
哪些东西现在「更确定」或「被明确否定」了? “确认 X 不可行” “删掉 Y 抽象” “意识到 Z 是伪问题”
Proxyos Weekly 023
TL;DR 概览
BUG好多!全在修BUG了
本期目标
完成第一章打磨
- 第三节
- 第四节
- 第五节
- 第六节
- 过渡到第二章
完成第一章测试
- 第三节
- 第四节
- 第五节
- 第六节
- 过渡到第二章
进展速记(Changelog)
本期假设 / 预期
我当时以为世界是怎样的? 这个预期中,哪一条被证伪 / 被削弱 / 被确认?
第一章核心bug已修复,主要打磨内容是调整文本和图表现
- 确实,虽然还是修了些bug,但主要是可维护性优化之类的细节
- 但我高估了自己的文学功底,所以打磨返工了好几次
ANORA的子图抽象功能在第一章不进行介绍,使用节点增删、加载不同图的方式来介绍函数
- 这个路子是对的,本期一些优化实际上也是为了这个考虑的
本期确定性变化
哪些东西现在「更确定」或「被明确否定」了? “确认 X 不可行” “删掉 Y 抽象” “意识到 Z 是伪问题”
新增:
变更:
- 优化 ANORA 的回放系统,提高逻辑复用度
- ANORA 回放的
定位到关键帧操作从定位到关键帧起始后改为定位到关键帧结束后 - 优化第一章Python脚本和Godot的交互机制,使用更统一的MiddleWare机制而非直接在输出里找特定字符串
- 逻辑图加载的触发下发给脚本,来提供更精细地控制
修复:
ANORA 的“播放到末尾”会导致从头开始播放
Proxyos Weekly 022
TL;DR 概览
BUG好多!全在修BUG了
本期目标
- 完成第一章打磨
- 完成第一章测试
进展速记(Changelog)
本期假设 / 预期
我当时以为世界是怎样的? 这个预期中,哪一条被证伪 / 被削弱 / 被确认?
- 我只需要打磨文本、调整一些逻辑图并重新录制即可
- 实际上出了巨量影响体验的问题。虽然在当前阶段不影响,但之后迟早会影响。所以就修了……然后修完一个发现还有,修完一个又发现还有
本期确定性变化
哪些东西现在「更确定」或「被明确否定」了? “确认 X 不可行” “删掉 Y 抽象” “意识到 Z 是伪问题”
新增:
- ANORA 现在支持通过拖动节点条目到图上来添加节点,而非只能通过点击节点条目来添加
- ANORA 现在支持使用 Shift 多选节点,而非只能框选
- ANORA 现支持将录制文件作为逻辑图导入
- ANORA 的核心节点的 UI 已适配
- ANORA 自动布局功能已上线
- ANORA 节点执行状态标记更加全面
变更:
- 优化 ANORA 的节点样式相关架构,使其更容易集中配置
- 优化 ANORA 的回放关键帧聚合逻辑,避免间隔 5ms 的事件被分到不同的关键帧中
- 优化 ANORA 的回放系统,提高逻辑复用度
修复:
- WebView 没有正确释放输入焦点,导致点击网页部分后游戏其他部件无法接受输入
- 改了 Godot-WRY,看了下我俩月前的另一个 bug 修复的 pr 还没合进去,估计作者弃坑了
- 流式解码没正确实现,导致当一个汉字编码后的字节被分两次输出时,解码会异常
- 当焦点在Terminal主视图里时,输入字母会直接聚焦到命令输入 input 并输入字母,但如果输入 Enter 的话只会聚焦到 input 但不会发出 Enter
- 创建 WebView 时 WebView 会立刻拿到 focus,打断 Tereminal 操作
- ANORA 添加节点后视图没有更新,直到做出选中一个节点/拖动一个节点之类的操作
- ANORA 添加边失败(之前为了将ANORA图和底层VueFlow解耦时的重构引入)
- ANORA 分支工作异常(之前将无数据的标识从 undefined 切换成单独 flag 时的重构引入)
- 【放弃修复】当极短时间内Notification被调用两次时,两次通知会重叠在一起
- 经确认,这个问题时 element-plus 的实现存在问题
- 只有两个 Notification 在同一迭代被调用时才会出现这个问题,即使两个 Notification 串联且全自动运行(只隔一个迭代),两次通知也会正常一上一下
- 考虑到修复成本极高而游戏体验影响不大,不进行修复
- ANORA 的录制只能执行一次
- ANORA 的录制文件加载无法通过 UI 触发只能通过 IPC 触发
- ANORA 的回放结束后再次点击播放,回放会从头开始,但是进度条卡在末尾
删除:
主要进展内容/本期关键判断点
我做出了哪些「如果错了也要付代价」的判断?
Proxyos Weekly 021
TL;DR 概览
本周完成了预定的 Terminal 修复和 轻聊 的最小实现。轻聊仍需打磨,目前打磨进度来到了第一章的一半
本期目标
- 修好 Terminal
- 实现 轻聊
进展速记(Changelog)
本期假设 / 预期
我当时以为世界是怎样的? 这个预期中,哪一条被证伪 / 被削弱 / 被确认?
我之前认为,我通过先前的 准备完善的剧情文案 - 要求AI按指定架构生成框架 - 调整细节 - 要求AI按文稿填充 的工作流可以在我完成轻聊的文案和核心特性(玩家编写自定义脚本完成文本处理)之后几乎一步到位完成设计
但实际上出现了不少问题,导致重做了好几次
- claude将轻聊作为茶馆的一部分实现了,而不是作为单独的应用实现
- 因为 轻聊 和 茶馆 的语义类似
- 先前实现的内容中有玩家编写程序来增强玄云观的论坛的先例
- claude分别提供了两个版本的文案,分别是自定义脚本处理前和处理后预期的
- 它没有理解这个项目的核心就是让玩家在做中学,使用了常见的类owell游戏里那种“完成任务后自然变化”的结构
本期确定性变化
哪些东西现在「更确定」或「被明确否定」了? “确认 X 不可行” “删掉 Y 抽象” “意识到 Z 是伪问题”
Proxyos Weekly 020
TL;DR 概览
本周进度比预计的快,敲定了第二章剧情以及网页部分的实现,也初步重构了项目UI方式。准备文稿-要求AI按指定架构生成框架-调整细节-要求AI按文稿填充 这个工作流比我想象得更顺。
本期目标
- 敲定茶馆论坛和玄云观论坛的风格并进行实现
- 进一步优化第二章剧情
- 思考当前界面如何进行优化
- 这个 UI 是“世界的一部分”,还是“玩家的工具”?
进展速记(Changelog)
本期假设 / 预期
我当时以为世界是怎样的? 这个预期中,哪一条被证伪 / 被削弱 / 被确认?
本期确定性变化
哪些东西现在「更确定」或「被明确否定」了? “确认 X 不可行” “删掉 Y 抽象” “意识到 Z 是伪问题”
新增:
- 茶馆论坛
- 玄云观论坛
- 新的主UI
变更:
- 对第二章剧情进行优化,在保持玩家激励的同时避免叙事上过于夸大玩家作用导致后续难以保持激励
- 归档了旧的类win11桌面UI,改成了更接近专用client的UI
修复:
删除:
主要进展内容/本期关键判断点
我做出了哪些「如果错了也要付代价」的判断?
工作流优化
在序章和第一章时期,我更倾向于使用下面的流程来使用 AI
- 根据剧情大概走向确定需要的模块
- 编写对应模块的产品文档和设计说明书
- 要求 AI 对照文档完成实现
- 细化剧情并根据剧情编写游戏内容
但准备第二章剧情的那个阶段中,我在休息日里折腾了 Silly Tavern,并在 类脑ΟΔΥΣΣΕΙΑ 这个把 ST 玩出花的 Discord 服务前里看到了“要求AI根据剧情生成 UI”的神奇操作。
Proxyos Weekly 019
TL;DR 概览
第二章剧情细节、激励点设计、谜题设计都完成了,理论上绝大部分内容都可以复用现有逻辑完成,只需要让脚本执行机制更自由些
本期目标
- 细化第二章剧本,使其足以确认我需要实现哪些机制
- 思考当前界面如何进行优化
进展速记(Changelog)
本期假设 / 预期
我当时以为世界是怎样的? 这个预期中,哪一条被证伪 / 被削弱 / 被确认?
- 我应该可以很容易地把之前在PureWriter里写的故事稿转化成剧本
- 实际上其颇为自嗨,需要做很多润色来插入激励点,并让整体风格、设定一致
- 我可以模仿win11搞UI
- 实际上因为编程内容需要使用外部编辑器,这个游戏需要使用窗口化执行,而这个和类win11的UI是有很大冲突的,我可能需要重做UI设计
本期确定性变化
哪些东西现在「更确定」或「被明确否定」了? “确认 X 不可行” “删掉 Y 抽象” “意识到 Z 是伪问题”
新增:
- 第二章剧本
变更:
- 调整先前的故事脉络,使其激励点布局更合理
- 调整部分故事内容,使其更加真实也更加符合世界观
修复:
删除:
- 当前的UI确实不能接受,接下来两期需要想一个方案出来
主要进展内容/本期关键判断点
我做出了哪些「如果错了也要付代价」的判断?
大部分剧情初稿都有重做
先前第二章的剧情是
- 玩家因为神秘人的帮助修好了ProxyOS
- 神秘人建议玩家去论坛找更靠谱的防护套件
- 玩家在论坛找到了玄云观的招新信息
- 玩家通过测试开始作为外包人员接玄云观派的活,在这个过程中训练编程技能并逐渐与这个世界产生联系
- 玩家发现了轻聊,并按照其文档实现了一个消息处理器,得以看到已死用户与其好友看似正常的聊天中的隐藏信息,进而卷入纷争中,进入第三章
这个剧情我写得很嗨,但是实际上其几乎把能踩的坑全踩了一遍
- 神秘人的动机不明确,而且在论坛实际上也找不到防护套件(防护套件很难嵌入到游戏玩法里)
- 玩家没有足够的动力去找玄云观
- 玩家一直在做低级劳动,缺乏成就感
- 外包任务里的编程教学颇有一种说教感
- 让玩家自己写完整程序写不出来,但是让其补全又不符合世界观设定,还导致玄云观逼格下降
- 通过接活来了解世界太慢了,那样的话三章就已经是完整游戏了,第四章就没有啥新机制了
- 很难保证玩家会去折腾轻聊
所以现在剧情改成了