1. 挑选要保存的内容
只保存版本、背包种子、箱内数量、任务状态;位置读档后回安全起点。列出不保存的临时信息:路径、粒子、界面文字。
阶段 5 / UNIT 29 / 5 OF 6
关掉游戏再打开,什么应该记得,什么不必记得?
用JSON保存必要状态,检验异常文件并避免损坏当前进度。
建议180分钟 · 可拆3次60分钟跨运行恢复进度;缺失或损坏存档不崩溃、不篡改当前状态。
先完成上一阶段作品。准备电脑、鼠标、Godot 4.6.1标准版与纸笔。没带电脑的伙伴可以先做预测和纸面设计,再轮换亲手操作。
下载起步工程下载参考完成工程两个包保留同一套可读的学习脚手架,lesson.gd中的LEVEL控制已启用的能力。打开对应脚本、解释并修改本课函数,再启用新进度;只改等级数字不算完成。没有新功能的设计、试玩与导出课,用作品修改和记录体现进展。
解压到不同文件夹,导入project.godot,打开main.tscn运行。手机用于阅读课程,Godot工程需在电脑打开。每包README包含本课任务;优先继续自己的工程,起步包用于补课与恢复。
只保存版本、背包种子、箱内数量、任务状态;位置读档后回安全起点。列出不保存的临时信息:路径、粒子、界面文字。
LEVEL改为5;F5写入user://fanpu-course-单元号.json,F9读取。user://是这台设备当前用户的应用数据目录,不是网站服务器,也不会自动跨设备同步。
在save_game中看FileAccess.open、空值检查、JSON.stringify。load_game先检查文件存在和能否打开,再解析;不能把任何文本都当有效进度。
valid_save检查字典、字段、整数、范围与总量一致,再修改游戏数据。用备份文件实验损坏JSON、缺字段、负数;无效时提示并保留当前状态。不要改系统文件。
收两颗→F5→R重置→F9读回;退出重开再读。完成任务后保存、重启读回,不能再次领取。R不删除磁盘档,F5会覆盖本课自己的旧档,实验前复制备份。
位置:systems.gd:valid_save。下面来自参考工程,依赖工程内已有节点与变量;不要把同名函数重复粘贴。先指出输入、条件与变化,再比较自己的版本。
func valid_save(d: Variant) -> bool:
if not d is Dictionary:
return false
for key in ["version","seed","stock","quest"]:
if not d.has(key) or not (d[key] is float or d[key] is int):
return false
if not is_finite(float(d[key])) or float(d[key]) != floor(float(d[key])):
return false
if d.version != 1 or d.seed < 0 or d.seed > 3 or d.stock < 0 or d.stock > 3 or d.quest < 0 or d.quest > 2:
return false
return d.seed + d.stock == (0 if d.quest == Quest.DONE else 3)基础:跨运行恢复进度;缺失或损坏存档不崩溃、不篡改当前状态。
挑战:设计显式版本迁移:遇到不同version先提示,而不是偷偷猜字段。
留下:保存前后数据对照、三类坏档测试。
我原先预测____;我实际观察____;我只改变了____;再次验证的结果是____。
在项目菜单打开用户数据文件夹,确认当前工程对应的单元号。
解析成功不代表业务有效,要继续检查范围与守恒。
可以把本课问题“关掉游戏再打开,什么应该记得,什么不必记得?”交给AI,请它用例子解释或提出测试情况。给出实际节点名和错误原文,每次只采纳一项修改并运行验证。不要把整份工程、家庭信息或账号口令交给AI。
每个孩子贡献当天真正用过的三个英文词,例如 save · load · data。先共同回忆一段真实经历,再借助AI写成短故事,大家核对、听读、表演或配图。另留15—20分钟,允许先用中文表达。
本课重点:用JSON保存必要状态,检验异常文件并避免损坏当前进度。以“跨运行恢复进度;缺失或损坏存档不崩溃、不篡改当前状态。”判断是否可以继续。7—15岁混龄约15人时,可结成2—3人伙伴组,大小伙伴轮换操作者与观察者,大孩子通过解释帮助伙伴成长;每个人都要留下自己的操作或判断证据。
先确认基础,再进入挑战。首次接触的孩子可以口述、画图和修改一个参数;熟练者解释规则、设计反例并协助调试。不以输入英文的速度分高低。若基础未完成,下次继续,不压缩休息赶进度。
| 分钟 | 学习节奏 |
|---|---|
| 0—10 | 观察作品、说预测 |
| 10—25 | 土星老师拆解一个关键概念 |
| 25—50 | 第一次动手与验证 |
| 50—60 | 离屏休息,可在此结束第一次学习 |
| 60—80 | 完成基础任务,轮换操作 |
| 80—90 | 离屏休息 |
| 90—110 | 边界测试与伙伴反馈 |
| 110—120 | 保存进度与离屏休息 |
| 120—145 | 第二次实验或整合 |
| 145—155 | 离屏休息 |
| 155—175 | 独立试玩与复测 |
| 175—180 | 整理记录与下一步 |
课间走出创生空间即可进入凡朴农场。在约定的活动范围内,可以休息、自由探索草坪菜地,或由土星老师即兴组织观察与小游戏。英语回顾和农场活动另行安排,不挤占必要的动手时间。