Proxyos Weekly 054
Laurence-042
- One minute read - 155 wordsTL;DR 概览
第一章进入实测,其中一半已完成测试。第二章的重构计划已经完成
本期目标
- 把 demo 从 alpha 打磨到 beta
- 第一章
- 【低优先级】xterm 的 col 似乎计算不太对劲,有时候一行末尾的字只显示了一半,需要看下 xterm 实现,必要的话进行修复
- 【低优先级】xterm 的 cursor_pos 在 cursor 不在视野内时返回末行 pos 是个 bug,而且在外面基本没法绕,只能修 xterm
- 重新实现第一章的系统
- 细化报错反馈机制,在玩家输错的情况下让安全内核通过确认变量存在性来帮助快速定位问题
- 需要添加 exception 转译,把异常翻译成人话,避免 indent 和 not defined 之类的搞晕玩家(而且说实话它们确实对初学者不友好)
- 优化第一章的文案,使其更加贴合新的系统
- 完成第一章的测试和润色
- 第二章
- 将编程手册提前到第二章开始,而不是第一个任务完成后
- 调整文案以适应安全内核的角色调整
- 将安全内核结合内部编辑器作为小黄鸭提示来避免卡关
- 优化剧本系统架构,使存档系统以其为核心,每个 Event 完成后才存档,以此保证 Trigger+Actions 组成的 Event 的原子性
- 第一章
- beta 打磨完成后
- 开个 itch
- 琢磨下宣传
进展速记
本期假设 / 预期
预期:
这一期的重点是完成第一章,第一章已经折腾好几期了
结果:
实际上出了些意外,临时去忙了家事,没有搞定
但反而提前把第二章的重置计划做完了
本期确定性变化
新增:
- 进一步增强表现力,为内部编辑器添加了诸如多NPC发言、进度提示、多段不可见代码、自动执行初始代码等多项功能
- 制定了第二章里安全内核、内部编辑器的职责迁移计划,并完成了相关的模块重构
变更:
- 调整第一章叙事节奏,进一步压平认知负载曲线
- 将随InternalEditor的debug系统彻底通用工具化,这可以让项目分层更清晰
- 优化了lesson02的演出,现在看起来完成度更高了,而且可以借其系统实现更多复杂的表现
- 将部分SideEffect从ipc实现切换成LessonStep实现,提供更好的可复用性,并简化python侧代码以及与其对接的godot侧代码
- 为lesson02的彩蛋解法添加了更丰富的文本,提前透露安全内核的非标特性
- 现在可以复制InternalEditor里的各种文本了
修复:
- 修复InternalEditor里Editable代码段会遮盖Readonly代码段的第一个字符的bug
删除:
主要进展内容/本期关键判断点
我做出了哪些「如果错了也要付代价」的判断?
Copilot好像在大改
比如付款日重置quota改成了每月1号重置,虽然不清楚以后会咋样,但这确实让我在之前的付款日(也就是前天)到下个月1号间可以肆意挥霍quota,我得趁此机会把复杂的系统变更都做了,因此提前开始了第二章的重构
虽然没有完成预期的第一章测试,但是后续路应该会平一些
安全内核与内部工具在之后的定位
在旧剧本里,安全内核只是在“转译”游戏世界的编程范式到python时添加自己的见解、抱怨、提示。这在之前感觉还够,但是现在有了内部编辑器后,就觉得很挫了
而活泼的新安全内核和内部编辑器在第一章结束后应该何去何从确实成了个问题,而这个问题我前几期完成剧本大纲修改时并没有解决,而是留了下来
当时我觉得必须让玩家逐渐从内部编辑器迁移到vs code,但不能剥夺玩家用内部编辑器的权力。可是我实现内部编辑器并检查教学计划后发现,内部编辑器会极大限制教学形式,会和“真实编程”产生隔阂。同时,因为不确定什么时候玩家彻底放弃内部编辑器,我也没法确定一个具体的阶段来做超出内部编辑器能力的谜题。
我思考后意识到,不剥夺玩家用内部编辑器的权力就会导致后续谜题难以展开,玩家也会难以迁移到真实编程环境解决现实世界的编程问题。但不能彻底剥夺,否则会引起玩家的抗拒情绪。
一个不能用来完成编程任务的编程工具,其最大的功能我想就是提供算法演示。因此我决定把内部编辑器作为一种“通过演示核心算法来提示过关思路的工具”,让玩家卡关的时候在内部编辑器里得到核心算法的演示,这样玩家只需要理解算法并将其迁移到自己当前的任务里就可以
同时,更加活泼的安全内核十分适合成为一个类似桌宠的存在,玩家可以通过与安全内核桌宠互动来更多了解游戏世界观、并在卡关时通过安全内核桌宠来调出内部编辑器看“安全内核写的核心算法代码”
通过这种方式,既能让玩家和安全内核建立更深的连接,为后续的情感做铺垫,又能提供之前一直缺失的兜底防卡关机制,还能避免玩家因为被强行剥夺能力带来的不满,一箭三雕!
瓶颈与问题清单
哪些问题还没解,但也许我已经知道“它们不是什么”?
下期计划
- 把 demo 从 alpha 打磨到 beta
- 第一章
- 【低优先级】xterm 的 col 似乎计算不太对劲,有时候一行末尾的字只显示了一半,需要看下 xterm 实现,必要的话进行修复
- 【低优先级】xterm 的 cursor_pos 在 cursor 不在视野内时返回末行 pos 是个 bug,而且在外面基本没法绕,只能修 xterm
- 完成第一章的测试和润色
- 第二章
- 将编程手册提前到第二章开始,而不是第一个任务完成后
- 调整文案以适应安全内核的角色调整
- 将安全内核结合内部编辑器作为小黄鸭提示来避免卡关
- 优化剧本系统架构,使存档系统以其为核心,每个 Event 完成后才存档,以此保证 Trigger+Actions 组成的 Event 的原子性
- 第一章
- beta 打磨完成后
- 开个 itch
- 琢磨下宣传
试玩版
暂缓,第一次上传需要做好准备,等进入 beta 阶段再说