697 lines
38 KiB
Markdown
697 lines
38 KiB
Markdown
---
|
||
课时: 5
|
||
主题: 自然语言驱动开发
|
||
核心能力: [提问力, 共创力]
|
||
核心工具: [穹狼 Code / Trae]
|
||
时长: 90分钟
|
||
透明化层级: 结果层
|
||
适用路线: 共享
|
||
---
|
||
|
||
### 1. 课程目标
|
||
|
||
**知识目标:**
|
||
- 理解"一句话需求"的威力与局限:一句话可以让AI生成可玩游戏,但一句话的质量决定游戏质量
|
||
- 理解"最小可玩单元(MVP)"概念:先做出最核心的玩法,再逐步添加功能
|
||
- 知道"需求→生成→验收"是游戏开发的基本循环
|
||
|
||
**能力目标:**
|
||
- 能用一句自然语言描述清楚一个游戏的核心玩法,并让AI生成可运行的代码(提问力)
|
||
- 能判断AI生成的游戏是否"可玩",并描述问题让AI修复(共创力)
|
||
- 能区分"核心玩法"和"锦上添花的功能",做出优先级判断(拆解力萌芽)
|
||
|
||
**情感目标:**
|
||
- 体验"一句话变出游戏"的震撼与成就感——从"认知"跃迁到"创造"
|
||
- 建立"先做出来再说"的行动力心态,不怕不完美
|
||
- 激发个性化创造欲望:每个人做不同的游戏,我的想法值得被实现
|
||
|
||
---
|
||
|
||
### 2. 核心概念与误概念预设
|
||
|
||
**核心概念认知层级:**
|
||
|
||
| 层级 | 本课目标 | 对应活动 |
|
||
|------|---------|---------|
|
||
| 识别层 | 能看到"一句话→可玩游戏"的效果 | 教师演示一句话魔法 |
|
||
| 理解层 | 能理解"核心玩法"和"额外功能"的区别 | MVP概念讲解与讨论 |
|
||
| 应用层 | 能自己写出一句话需求,让AI生成可玩游戏 | 学生自选游戏创作 |
|
||
| 迁移层 | 能对自己的游戏进行验收,发现问题并迭代修复 | 审查与修复环节 |
|
||
|
||
**典型误概念表:**
|
||
|
||
| 编号 | 误概念 | 正确认知 | 诊断方式 | 纠正策略 |
|
||
|------|--------|---------|---------|---------|
|
||
| M1 | **一句话就能做出完美游戏** | 一句话能做出"能玩"的游戏,但"好玩"需要多轮迭代 | 观察学生对第一次生成结果的反应——是否以为"做完了" | 引导学生试玩后发现问题,建立"先能玩→再好玩"的认知 |
|
||
| M2 | **游戏一定要很复杂才好玩** | 最经典的游戏往往玩法简单(贪吃蛇、打地鼠、猜数字),核心玩法清晰才是关键 | 学生选题时是否描述了过于复杂的游戏(如"做个3D射击游戏") | 用"最小可玩单元"概念引导简化,展示简单但好玩的案例 |
|
||
| M3 | **我不会做游戏,游戏太难了** | 你已经会跟AI合作了——做游戏和做网页一样,都是"告诉AI你要什么" | 观察学生听到"做游戏"时是否表现出畏难情绪 | 教师演示:一句话就出来了,跟之前做网页一样简单 |
|
||
| M4 | **要先想好所有功能再开始做** | 先做最核心的一个玩法(MVP),确认能玩了再加功能 | 学生是否在描述需求时列了一大堆功能 | 引导学生砍到只剩一个核心动作:"玩家要做的那一件事是什么?" |
|
||
| M5 | **AI生成的游戏一定能玩** | AI可能生成不能运行、有Bug或玩法不对的游戏,需要你验收 | 学生是否不试玩就说"好了" | 强制要求"自己玩三遍再说完成" |
|
||
|
||
---
|
||
|
||
### 3. 教学准备
|
||
|
||
**工具与环境:**
|
||
- AI编程工具(穹狼 Code / Trae,学生已在L03完成配置)
|
||
- DeepSeek模型(通过选定工具接入,建议使用慢思考模型做游戏生成)
|
||
- 教师演示电脑+投影
|
||
- 每位学生一台电脑,浏览器可正常打开本地HTML文件
|
||
|
||
**教学资源:**
|
||
|
||
#### 教师演示用游戏——"打地鼠"(教师提前用AI生成并验证可玩)
|
||
|
||
教师使用的一句话提示词:
|
||
```
|
||
做一个网页版打地鼠游戏,9个洞,地鼠随机冒出来,点到加分。
|
||
```
|
||
|
||
预期效果:一个3x3的网格,地鼠随机出现在某个格子里,玩家用鼠标点击地鼠得分,页面上显示当前分数。
|
||
|
||
> 教师备注:提前用AI生成这个游戏,确认能玩。如果AI生成的版本有小问题(比如地鼠冒出太快或太慢),保留这些问题,课堂上作为"验收发现问题"的素材。
|
||
|
||
#### 备选演示游戏(如果打地鼠效果不理想)
|
||
|
||
```
|
||
做一个网页版猜数字游戏,电脑随机想一个1到100的数字,我来猜,每次告诉我猜大了还是猜小了。
|
||
```
|
||
|
||
#### 学生游戏方向参考表(投影展示,帮助学生选择)
|
||
|
||
```
|
||
┌─────────────────────────────────────────────────────┐
|
||
│ 游戏灵感墙 │
|
||
│ │
|
||
│ 反应类:打地鼠、接水果、躲避障碍、点击变色方块 │
|
||
│ 猜谜类:猜数字、猜颜色、记忆翻牌 │
|
||
│ 动作类:贪吃蛇、弹球、飞机躲子弹 │
|
||
│ 策略类:井字棋、石头剪刀布、扫雷 │
|
||
│ 创意类:画板涂鸦、节奏点击、表情包生成器 │
|
||
│ │
|
||
│ 也可以做你自己想的任何游戏! │
|
||
└─────────────────────────────────────────────────────┘
|
||
```
|
||
|
||
#### "我的游戏验收单"模板(投影或打印)
|
||
|
||
```
|
||
┌──────────────────────────────────────────┐
|
||
│ 我的游戏验收单 │
|
||
│ 姓名:___________ 游戏名:___________ │
|
||
│ │
|
||
│ 1. 我的一句话需求:__________________ │
|
||
│ 2. 核心玩法验收(自己玩3遍): │
|
||
│ □ 游戏能正常打开 │
|
||
│ □ 核心操作有反应(点击/按键/移动) │
|
||
│ □ 游戏规则能跑通(能赢或能输) │
|
||
│ 3. 发现的问题:__________________ │
|
||
│ 4. 我跟AI说了什么来修复: │
|
||
│ _________________________________ │
|
||
│ 5. □ 能玩了! □ 还有问题,继续修 │
|
||
└──────────────────────────────────────────┘
|
||
```
|
||
|
||
**教师备课体验任务:**
|
||
|
||
1. 用"一句话"提示词生成至少3个不同的小游戏(打地鼠、猜数字、贪吃蛇),记录哪些能一次成功
|
||
2. 体验"做个游戏"这种模糊指令的翻车效果,准备好坏对比素材
|
||
3. 确认每台电脑的AI工具正常运行,浏览器能打开本地HTML文件
|
||
|
||
---
|
||
|
||
### 4. 教学流程
|
||
|
||
**第一幕:联系 (Connect) — 10分钟** 🔗
|
||
|
||
**【环节】阶段跃迁导入 (4分钟)**
|
||
|
||
**师:** 同学们好!在开始今天的课之前,我想跟大家说一件事。前四节课,我们做了很多了不起的事——我们认识了AI怎么想、学会了怎么跟AI说话、用AI做了自己的网页、还学会了翻车怎么修。给自己鼓个掌!
|
||
|
||
**师:** 但是——前四节课我们做的都是什么?网页。自我介绍网页、个人主页。好不好看?好看。但好不好"玩"?
|
||
|
||
**生:** 不好玩 / 没什么好玩的 / 就是看的
|
||
|
||
**师:** 对!网页是用来"看"的。但今天开始,我们要做一个用来"玩"的东西——【停顿,环顾全班】——游戏!【诊断点:观察学生听到"游戏"时的反应——兴奋?惊讶?怀疑?】
|
||
|
||
**【分支A】若学生非常兴奋:**
|
||
**师:** 我就知道你们会有这个反应!但先别急,你们猜猜看,做一个游戏需要多长时间?
|
||
|
||
**【分支B】若学生表现出怀疑("我们能做游戏吗?"):**
|
||
**师:** 你的怀疑很正常!做游戏听起来很难对吧?但还记得第三课吗——你以为做网页也很难,结果呢?一段话就出来了。今天做游戏也是一样的。
|
||
|
||
**【分支C】若有学生表现出畏难(误概念M3的早期表现):**
|
||
**师:** 有些同学可能觉得"做游戏太难了吧"。别担心!今天你会发现,做游戏比你想的简单得多。你只需要做一件事——说一句话。
|
||
|
||
**【环节】一句话悬念 (6分钟)**
|
||
|
||
**师:** 我现在要给你们表演一个魔术。不需要任何准备,不需要写代码,我就用一句话——只用一句话——变出一个可以玩的游戏。你们信不信?【制造认知悬念】
|
||
|
||
**生:** 不信!/ 怎么可能!/ 真的假的?
|
||
|
||
**师:** 那你们看好了。我现在打开AI编程工具,我只说这一句话——
|
||
|
||
【教师在投影上打开AI编程工具,切换到慢思考模型,输入:】
|
||
|
||
```
|
||
做一个网页版打地鼠游戏,9个洞,地鼠随机冒出来,点到加分。
|
||
```
|
||
|
||
**师:** 就这一句话。24个字。现在我们等AI工作……
|
||
|
||
【等待AI生成代码,大约20-30秒。教师可以在等待时和学生互动:】
|
||
|
||
**师:** 在AI工作的时候,你们猜猜它能做出来吗?能做出来的举手?不能的举手?
|
||
|
||
【AI生成完成,教师打开预览】
|
||
|
||
**师:** 来,看!【打开浏览器预览生成的游戏】
|
||
|
||
【教师现场试玩:点击冒出的地鼠,分数增加】
|
||
|
||
**师:** 它真的做出来了!一个可以玩的打地鼠游戏!谁想上来试试?【请一位学生上台试玩】
|
||
|
||
**生:** (试玩)哇!真的能玩!
|
||
|
||
**师:** 一句话,24个字,一个可以玩的游戏。这就是"自然语言驱动开发"——你用人话说需求,AI帮你做出来。酷不酷?【诊断点:观察全班反应,是否被震撼到,还是觉得"就这?"】【识别层】
|
||
|
||
**【分支A】若全班被震撼:**
|
||
**师:** 这就是你们今天要学的魔法!而且今天不是做打地鼠——每个人做自己想做的游戏!
|
||
|
||
**【分支B】若有学生说"但这个游戏很简单啊/不好看":**
|
||
**师:** 观察力很强!没错,它确实很简单,可能也不够好看。但关键是——它能玩!这就引出了今天的第一个重要概念。
|
||
|
||
**【分支C】若有学生说"那如果我想做更复杂的游戏呢":**
|
||
**师:** 好问题!今天我们先学会用一句话做出"能玩"的版本,下节课再学怎么在这个基础上加功能。一步一步来!
|
||
|
||
---
|
||
|
||
**第二幕:建构 (Construct) — 65分钟** 🛠️
|
||
|
||
**【分段一:一句话魔法——理解一句话的威力与局限】(15分钟)** ✨
|
||
|
||
**预设误概念:**
|
||
- M1:一句话就能做出完美游戏
|
||
- M3:我不会做游戏,游戏太难了
|
||
|
||
**讲解与演示 (Teach & Demo):**
|
||
|
||
**师:** 刚才大家看到了一句话的威力。但我要问一个问题——我那句话是随便说的吗?我们来分析一下。
|
||
|
||
【投影展示教师的提示词】
|
||
|
||
```
|
||
做一个网页版打地鼠游戏,9个洞,地鼠随机冒出来,点到加分。
|
||
```
|
||
|
||
**师:** 这句话虽然短,但它包含了什么信息?大家帮我拆一拆。【诊断点:学生能否识别出一句话里的关键信息】【理解层】
|
||
|
||
**【分支A】若学生能指出"打地鼠""9个洞""随机冒出""点到加分":**
|
||
**师:** 非常好!你看,虽然只有一句话,但关键信息都有了——游戏类型(打地鼠)、游戏场景(9个洞)、核心动作(地鼠随机冒出来)、得分规则(点到加分)。这四个信息就够AI做出一个能玩的游戏了。
|
||
|
||
**【分支B】若学生只说出"打地鼠"但说不出其他:**
|
||
**师:** "打地鼠"是游戏类型。但光说"做个打地鼠游戏"够不够?——可能不够,AI不知道有几个洞、地鼠怎么出现、怎么计分。所以我还说了"9个洞""随机冒出""点到加分"。
|
||
|
||
**【分支C】若学生沉默:**
|
||
**师:** 我来带你们拆。"打地鼠游戏"——这告诉AI做什么类型的游戏。"9个洞"——告诉AI游戏长什么样。"地鼠随机冒出来"——告诉AI游戏怎么运行。"点到加分"——告诉AI计分规则。四个关键信息,组成一句话。
|
||
|
||
**师:** 现在我来做一个对比实验。如果我只说——"做个游戏"——你们猜AI会做出什么?
|
||
|
||
**生:** 不知道!/ 可能什么都做!/ 可能做个很奇怪的!
|
||
|
||
**师:** 对!还记得第二课和第四课学的吗?模糊指令会导致什么?
|
||
|
||
**生:** 翻车!
|
||
|
||
**师:** 没错!所以"一句话魔法"不是随便一句话——是一句包含关键信息的话。你的一句话里至少要说清楚:**你要做什么游戏、核心玩法是什么**。
|
||
|
||
**师:** 我来对比一下好的一句话和坏的一句话——
|
||
|
||
**坏:** "帮我做一个好玩的游戏" → AI不知道做什么,完全靠猜
|
||
|
||
**好:** "做一个网页版贪吃蛇游戏,用方向键控制蛇移动,吃到食物蛇变长,撞到墙就结束" → 游戏类型、操作方式、核心规则全说清了
|
||
|
||
**师:** 秘诀就是——说清楚"玩家要做的那一件事"。打地鼠——点击。贪吃蛇——控制方向。猜数字——输入数字。这"一件事"就是游戏的灵魂!
|
||
|
||
**学生实践 (Practice):**
|
||
|
||
**师:** 现在轮到你们了!但先别急着让AI做,我们先练习"写一句话"。在纸上或者打字写下你想做的游戏的一句话描述。不需要完美,但要包含:
|
||
1. 游戏类型/名字
|
||
2. 核心玩法(玩家要做什么)
|
||
|
||
给你们3分钟。如果想不到做什么游戏,看看屏幕上的"游戏灵感墙"!
|
||
|
||
【投影展示游戏灵感墙】
|
||
|
||
【教师巡场观察,重点关注:】
|
||
- 谁在发呆想不出来 → 过去聊:"你平时爱玩什么游戏?""你最喜欢的游戏是什么?"帮助聚焦
|
||
- 谁写了特别复杂的需求(误概念M4)→ 先不打断,等进度同步时处理
|
||
- 谁写了特别模糊的需求 → 轻声提醒:"玩家要做的那一件事是什么?"
|
||
|
||
**进度同步 (Checkpoint):**
|
||
|
||
**师:** 好,时间到!谁来念念你写的一句话?【请3-4位学生分享】【诊断点:学生的一句话是否包含游戏类型和核心玩法,是否过于模糊或过于复杂】【应用层】
|
||
|
||
**【分支A】若学生的一句话清晰且合理(如"做一个接水果游戏,水果从上面掉下来,我左右移动篮子去接"):**
|
||
**师:** 非常好!你说清楚了游戏类型、核心操作、游戏规则。这句话交给AI,它就知道该做什么了!
|
||
|
||
**【分支B】若学生的一句话太模糊(如"做一个好玩的游戏"):**
|
||
**师:** "好玩"是你的目标,但AI不知道什么叫"好玩"。你心里想的是什么游戏?是那种点点点的?还是移来移去的?还是猜谜的?——好,那我们把这个具体说出来。
|
||
|
||
**【分支C】若学生的需求太复杂(如"做一个有角色升级、装备系统、多关卡的RPG游戏")(误概念M2/M4的表现):**
|
||
**师:** 哇,你的想法很宏大!但我先问你一个问题——如果这个游戏只能有一个功能,你最想保留哪个?是角色移动探索?还是打怪物?还是收集装备?——对,先抓住最核心的那一个,今天先把它做出来。其他功能下节课再加!
|
||
|
||
**师:** 好,大家注意听!刚才有同学的描述很长很复杂,有同学的很简短。今天我们的目标是——先做出一个"能玩"的版本,不需要完美,不需要功能多。这就引出了今天最重要的概念——
|
||
|
||
---
|
||
|
||
**【分段二:我的游戏——一句话变现实】(20分钟)** 🎮
|
||
|
||
**预设误概念:**
|
||
- M4:要先想好所有功能再开始做
|
||
- M2:游戏一定要很复杂才好玩
|
||
- M1:一句话就能做出完美游戏
|
||
|
||
**讲解与演示 (Teach & Demo):**
|
||
|
||
**师:** 在你们开始做之前,我要教一个超级重要的概念。大家看——
|
||
|
||
【在白板上画一个简单的图】
|
||
|
||
```
|
||
┌───────────┐
|
||
│ 最终梦想版 │ ← 计分+倒计时+动画+音效+关卡+排行榜
|
||
├───────────┤
|
||
│ 好玩版本 │ ← 计分+倒计时+简单动画
|
||
├───────────┤
|
||
│ 能玩版本 │ ← 核心玩法能跑通 ★ 今天的目标!
|
||
└───────────┘
|
||
```
|
||
|
||
**师:** 做游戏就像盖楼。你不能直接盖第十层,得先盖第一层。这个"第一层"有一个专业的名字,叫**最小可玩单元**——英文缩写MVP。"最小"就是最简单的,"可玩"就是能玩起来的,"单元"就是最核心的一个功能。【诊断点:学生是否理解MVP的含义】【理解层】
|
||
|
||
**师:** 拿打地鼠举例。打地鼠的MVP是什么?不是漂亮的画面,不是音效,不是倒计时。MVP是——"地鼠冒出来,我点它,能得分"。就这一个核心循环。
|
||
|
||
**师:** 你们想做的游戏,MVP是什么?就问自己一个问题——**玩家需要重复做的那一件事是什么?**
|
||
- 贪吃蛇:控制蛇吃食物
|
||
- 猜数字:输入数字看大了还是小了
|
||
- 接水果:左右移动接住水果
|
||
- 井字棋:轮流下棋判断输赢
|
||
|
||
**师:** 想清楚这一件事,你的一句话就写对了。好,现在——动手!
|
||
|
||
**学生实践 (Practice):**
|
||
|
||
**师:** 打开你的AI编程工具,把你的一句话需求输入进去!注意几个事项:
|
||
|
||
1. **用慢思考模型**——做游戏比较复杂,用慢模型质量更高
|
||
2. **一句话要包含核心玩法**——不要只说"做个游戏"
|
||
3. **生成完了要自己试玩!**——不要看一眼就说"好了",你要亲自玩至少3遍
|
||
4. **如果一次生成不成功,不要慌**——翻车了我们修就是了,第四课学过的!
|
||
|
||
开始!给你们12分钟。
|
||
|
||
【学生操作,教师巡场。重点关注:】
|
||
|
||
【教师巡场检查清单:】
|
||
- 游戏成功能玩 → 点赞,提醒"自己玩三遍检查"
|
||
- 生成了但不能玩 → 安慰"翻车正常!一会儿我们来修"
|
||
- 还没输入提示词 → 帮助聚焦,用游戏灵感墙引导
|
||
- 提示词太复杂 → 引导简化到MVP
|
||
- 3分钟屏幕没变化 → 主动过去了解情况
|
||
|
||
**进度同步 (Checkpoint):**
|
||
|
||
**师:** 好,暂停一下!我来做一个小调查。游戏能打开的举手!好。能打开而且核心玩法能玩的举手!好。觉得自己的游戏已经很完美的举手?【诊断点:检查全班完成度,以及学生是否有验收意识(误概念M5——是否不试玩就说"完成了")】
|
||
|
||
**【分支A】若大部分学生游戏能玩:**
|
||
**师:** 太棒了!你们刚才做了一件了不起的事——用一句话做出了一个可玩的游戏。但我问你们——你们的游戏好玩吗?有没有什么地方觉得不对?
|
||
|
||
**【分支B】若不少学生游戏有问题(打不开/不能玩):**
|
||
**师:** 没关系!翻车是正常的。还记得第四课学的Bug描述三要素吗?"我做了什么→我以为怎样→实际怎样了"。一会儿我们就来用这个技能修复游戏!
|
||
|
||
**【分支C】若有学生的游戏效果超出预期(很精美/很完整):**
|
||
**师:** 哇!你的一句话描述得非常好,AI理解得很到位!一会儿你来给大家分享你的一句话是怎么写的。
|
||
|
||
---
|
||
|
||
**【分段三:审查与修复——我的游戏能玩吗?】(15分钟)** 🔧
|
||
|
||
**预设误概念:**
|
||
- M5:AI生成的游戏一定能玩
|
||
- M1:一句话就能做出完美游戏
|
||
|
||
**讲解与演示 (Teach & Demo):**
|
||
|
||
**师:** 现在到了非常关键的一步——验收!做游戏和做网页不一样。网页你看一眼就知道好不好看。但游戏你必须要**玩**才知道行不行。
|
||
|
||
**师:** 我来示范怎么验收一个游戏。回到我的打地鼠——
|
||
|
||
【教师打开自己的打地鼠游戏,现场试玩,故意找出问题】
|
||
|
||
**师:** 我来验收三件事——
|
||
|
||
**验收第一关:能打开吗?** 打开浏览器……好,游戏界面出来了。过!
|
||
|
||
**验收第二关:核心操作有反应吗?** 地鼠冒出来了……我点击……分数变了!过!
|
||
|
||
**验收第三关:游戏规则能跑通吗?** 嗯……地鼠一直在冒,我一直在点。但我发现一个问题——这个游戏没有结束!它永远不会停!【教师现场发现这个"Bug"】
|
||
|
||
**师:** 看到了吗?AI做出来的游戏"能玩",但不"完整"。它缺了一个"游戏结束"的条件。这是不是Bug?——严格来说不算Bug,但它让游戏不完整。这就是为什么我们需要验收!
|
||
|
||
**师:** 现在我要用第四课学的技能来修复这个问题。我跟AI说——
|
||
|
||
```
|
||
游戏需要加一个30秒倒计时,时间到了就显示"游戏结束"和最终得分。
|
||
```
|
||
|
||
【教师现场演示修复过程】
|
||
|
||
**师:** 看!AI加上了倒计时。我再试玩一遍……30秒到了……"游戏结束,你的得分是12"!完美!这就是一轮完整的"需求→生成→验收→修复"循环。
|
||
|
||
**师:** 现在看这张验收单——【投影展示验收单模板】——你们要对自己的游戏做同样的事。三关验收:
|
||
1. 能打开吗?
|
||
2. 核心操作有反应吗?
|
||
3. 游戏规则能跑通吗?
|
||
|
||
发现问题就用Bug三要素告诉AI修复。我们第四课学过的——"我做了什么→我以为怎样→实际怎样了"。
|
||
|
||
**学生实践 (Practice):**
|
||
|
||
**师:** 现在你们有10分钟。任务是:
|
||
|
||
1. **自己试玩自己的游戏至少3遍**
|
||
2. **按验收单三关检查**——能打开?操作有反应?规则能跑通?
|
||
3. **发现问题就用Bug三要素描述,让AI修复**
|
||
4. **修复后再玩一遍确认**
|
||
|
||
如果你的游戏一开始就不能打开或完全不能玩——别慌!跟AI说"我的游戏打不开/点了没反应,请帮我检查修复"。AI会帮你找到问题的。
|
||
|
||
开始!
|
||
|
||
【教师巡场重点:】
|
||
- 认真试玩并发现问题 → 鼓励审查意识
|
||
- 不知道怎么描述问题 → 提醒Bug三要素
|
||
- 游戏问题太大 → 帮助判断是重新生成还是修复
|
||
- 修了一个又出新问题 → 鼓励"这就是迭代!"
|
||
- 已修复完毕 → 引导思考MVP是否完成
|
||
|
||
**进度同步 (Checkpoint):**
|
||
|
||
**师:** 时间到!我来做一个调查。修复了至少一个问题的举手!修复了两个以上的举手!有没有人发现游戏完全没问题不用修的?【诊断点:验证学生是否真正进行了验收,还是"看了一眼就说OK"】【应用层】
|
||
|
||
**师:** 谁来分享一下你发现了什么问题、是怎么告诉AI修的?
|
||
|
||
【请1-2位学生分享修复经历】
|
||
|
||
**【分支A】若学生能用三要素描述Bug并成功修复:**
|
||
**师:** 太棒了!你用了第四课学的Bug三要素精确地描述了问题,AI一下就听懂了。看到了吧——学过的技能在这里直接就用上了!
|
||
|
||
**【分支B】若学生描述Bug时很模糊("游戏不对"):**
|
||
**师:** "不对"——具体哪里不对呢?你点了什么?以为会发生什么?实际发生了什么?——对,这样说AI就能帮你了。
|
||
|
||
**【分支C】若有学生的游戏反复修不好:**
|
||
**师:** 有时候修来修去越修越乱,这时候不如退一步——重新用一句清晰的话描述你的游戏,让AI重新做一次。这不是"失败",这是"策略调整"!
|
||
|
||
---
|
||
|
||
**【分段四:最小可玩单元——确认核心玩法】(15分钟)** ⭐
|
||
|
||
**预设误概念:**
|
||
- M4:要先想好所有功能再开始做
|
||
- M2:游戏一定要很复杂才好玩
|
||
|
||
**讲解与演示 (Teach & Demo):**
|
||
|
||
**师:** 经过前面的修复,现在大部分同学的游戏应该都能玩了。我来问一个关键问题——你的游戏的"最小可玩单元"是什么?就是那个"玩家重复做的一件事"?
|
||
|
||
【请3-4位学生快速回答】
|
||
|
||
**师:** 非常好。你们的回答就是你们游戏的MVP——最小可玩单元。现在我要你们做一个判断——你的MVP完成了吗?
|
||
|
||
【在白板上展示MVP验收标准】
|
||
|
||
```
|
||
MVP验收三问:
|
||
1. 玩家能做那"一件事"吗?(操作响应)
|
||
2. 做了那件事有反馈吗?(得分/变化/提示)
|
||
3. 游戏有开始和结束吗?(完整循环)
|
||
```
|
||
|
||
**师:** 我用打地鼠举例。
|
||
1. 玩家能点击地鼠吗?——能!MVP的操作OK。
|
||
2. 点了有反馈吗?——分数增加了!MVP的反馈OK。
|
||
3. 有开始和结束吗?——刚才修复了,加了30秒倒计时,时间到了显示最终得分。MVP的循环OK。
|
||
|
||
**师:** 三个都OK,我的打地鼠的MVP就完成了!注意——我没有加音效、没有加动画、没有加关卡、没有加排行榜。那些都是"锦上添花"的,下节课再说。今天只要MVP完成就是胜利!
|
||
|
||
**师:** 现在你们来判断自己的游戏。【诊断点:学生能否判断自己的MVP是否完成,是否能区分"核心玩法"和"额外功能"】【理解层】
|
||
|
||
**学生实践 (Practice):**
|
||
|
||
**师:** 给你们8分钟,做两件事:
|
||
|
||
**任务一:** 用MVP三问检查你的游戏。如果有一项没过关,跟AI说让它补上。
|
||
- 操作没反应 → 告诉AI"点击/按键没有反应,请修复"
|
||
- 没有反馈 → 告诉AI"做了操作但看不到变化,需要加上计分/提示"
|
||
- 没有结束 → 告诉AI"游戏一直不会结束,请加上结束条件"
|
||
|
||
**任务二:** 在验收单上填写你的游戏信息。特别注意"我的一句话需求是什么"——把你最终用的那句话写下来。
|
||
|
||
【教师巡场重点:】
|
||
- MVP三问全部通过 → 恭喜,引导填写验收单
|
||
- 还缺一两项 → 帮助优先补齐最关键的
|
||
- 在加额外功能 → 温柔拉回"先确认MVP三问OK再美化"
|
||
- 反复有问题 → 协助用保底提示词(猜数字)
|
||
|
||
**保底方案——如果有学生的游戏始终做不出来:**
|
||
```
|
||
做一个猜数字游戏。电脑随机想一个1到100的数字,玩家输入猜的数字,提示猜大了或猜小了,猜对了显示"恭喜"和猜了几次。
|
||
```
|
||
> 这个游戏是最简单的交互游戏,AI几乎100%能正确生成。教师可以在学生遇到困难时提供这个保底选项。
|
||
|
||
**进度同步 (Checkpoint):**
|
||
|
||
**师:** 好,最后的调查!MVP三问全部通过的举手!好,大多数同学都通过了。还有一两个没通过的也没关系——你已经知道哪里差了,下节课继续完善。
|
||
|
||
**师:** 我来问一个重要的问题——今天你们每个人做的游戏都不一样。有人做了打地鼠,有人做了猜数字,有人做了贪吃蛇,有人做了接水果。但你们用的方法是一样的。什么方法?【诊断点:学生能否归纳出今天的方法论】【迁移层】
|
||
|
||
**【分支A】若学生能说出"一句话描述→AI生成→自己试玩→发现问题修复":**
|
||
**师:** 完美!你总结了今天最核心的方法——用一句话说清楚需求,AI帮你做,你来验收和修复。这个方法不管做什么游戏都通用!
|
||
|
||
**【分支B】若学生说"用AI做游戏":**
|
||
**师:** 对,但更准确地说——你告诉AI做什么(需求),AI做出来(生成),你检查能不能玩(验收),有问题就告诉AI修(迭代)。这四步就是做任何软件的基本流程!
|
||
|
||
**【分支C】若学生说不出来:**
|
||
**师:** 我帮你们总结——今天的核心方法是四个字:"说→做→验→修"。你说需求,AI做出来,你验收,有问题就修。这个循环我们从第三课就开始走了,今天只是从"网页"升级到了"游戏"!
|
||
|
||
---
|
||
|
||
**第三幕:反思 (Contemplate) — 10分钟** 🤔
|
||
|
||
**【环节】成果展示 (6分钟)**
|
||
|
||
**师:** 展示时间到!今天每个人做的游戏都不一样,我请3位同学来展示。展示的时候,不只是让大家玩你的游戏——你还要回答两个问题:
|
||
|
||
1. **你的一句话需求是什么?**
|
||
2. **你修复了什么问题?**
|
||
|
||
谁愿意第一个上来?
|
||
|
||
【优先选择:一位MVP完整的、一位经历修复的、一位创意独特的。每人2分钟展示。】
|
||
|
||
**师:** 对展示的同学,大家说说你觉得最酷的一点。
|
||
|
||
**【环节】互评与讨论 (4分钟)**
|
||
|
||
**师:** 今天大家做了各种各样的游戏。我来问一个问题——你觉得今天最有成就感的时刻是什么?【诊断点:学生的成就感来源——是"AI帮我做了"还是"我让AI做出了我想要的"】【迁移层】
|
||
|
||
**【分支A】若学生说"看到游戏能玩的时候":**
|
||
**师:** 对!那种"一句话变出游戏"的感觉是不是很爽?这就是"创造"的快乐——你有一个想法,然后它变成了现实。
|
||
|
||
**【分支B】若学生说"修好Bug的时候":**
|
||
**师:** 你知道吗?专业的游戏开发者说,修好一个Bug比写新代码还有成就感!你已经有了游戏开发者的心态。
|
||
|
||
**【分支C】若学生说"看到别人玩我的游戏的时候":**
|
||
**师:** 这就是"产品设计师"的快乐——你做出来的东西有人用、有人玩。这种感觉以后会越来越强!
|
||
|
||
**师:** 还有一个重要的发现——今天你们每个人做的游戏都不一样!没有两个人做了同样的游戏。这说明什么?
|
||
|
||
**生:** 每个人想法不一样!
|
||
|
||
**师:** 对!AI是工具,但创意是你的。AI不会自己想"我要做一个什么游戏"——是你告诉它的。你是设计师,AI是程序员。记住这个关系!
|
||
|
||
---
|
||
|
||
**第四幕:延续 (Continue) — 5分钟** 🚀
|
||
|
||
**【环节】抽象总结 (3分钟)**
|
||
|
||
**师:** 今天我们学了两个超级重要的东西。
|
||
|
||
**第一个:一句话魔法。** 用一句包含核心玩法的话告诉AI,它就能做出可玩的游戏。好话要说清楚:做什么游戏、玩家做什么、规则是什么。
|
||
|
||
**第二个:最小可玩单元(MVP)。** 先做出最核心的玩法,确认"能玩",再慢慢加功能。先有一楼,再盖二楼。
|
||
|
||
**师:** 这两个概念不只做游戏用。以后做任何项目都可以:先用一句话说清楚核心功能,先做出最小可用版本,再迭代。这就是"自然语言驱动开发"!
|
||
|
||
**【环节】下节预告 + 5分钟挑战 (2分钟)**
|
||
|
||
**师:** 下节课预告——今天你们做出了游戏的MVP,能玩了但还不够好玩。下节课我们要在今天的游戏基础上做"升级"——加计分系统、加倒计时、加动画反馈、加难度变化!你的游戏会从"能玩"变成"好玩"。所以今天做的游戏千万别删了!
|
||
|
||
**师:** 本周的5分钟挑战来了!
|
||
|
||
**5分钟挑战:** 找一个你平时经常玩的游戏(手机游戏、电脑游戏、或者课间玩的游戏都行),想一想——这个游戏的"最小可玩单元"是什么?如果只能保留一个核心玩法,你会保留哪个?
|
||
|
||
把你的分析发到班级群:
|
||
1. 游戏名称
|
||
2. 核心玩法(一句话描述)
|
||
3. 如果只保留MVP,哪些功能可以先不要?
|
||
|
||
**师:** 下节课开始前,我们会看看谁的分析最到位!回去好好想想。下课!
|
||
|
||
---
|
||
|
||
### 5. AI助教使用指南
|
||
|
||
**教师演示用提示词:**
|
||
|
||
**1. 课堂演示——一句话生成打地鼠:**
|
||
```
|
||
做一个网页版打地鼠游戏,9个洞,地鼠随机冒出来,点到加分。
|
||
```
|
||
|
||
**2. 课堂演示——修复打地鼠(加倒计时):**
|
||
```
|
||
游戏需要加一个30秒倒计时,时间到了就显示"游戏结束"和最终得分。
|
||
```
|
||
|
||
**3. 好坏一句话对比演示:**
|
||
|
||
坏的一句话(故意模糊):
|
||
```
|
||
帮我做一个好玩的游戏
|
||
```
|
||
|
||
好的一句话:
|
||
```
|
||
做一个网页版贪吃蛇游戏,用方向键控制蛇移动,吃到食物蛇变长,撞到墙就结束。
|
||
```
|
||
|
||
---
|
||
|
||
**学生保底提示词:**
|
||
|
||
**如果学生想不出做什么游戏:**
|
||
```
|
||
做一个猜数字游戏。电脑随机想一个1到100的数字,玩家输入猜的数字,提示猜大了或猜小了,猜对了显示"恭喜"和猜了几次。
|
||
```
|
||
|
||
**如果学生的游戏完全不能运行:**
|
||
```
|
||
我的游戏打不开/点了没反应。请帮我检查代码,修复所有错误,确保游戏能正常运行。
|
||
```
|
||
|
||
**如果学生不知道怎么描述修复需求:**
|
||
```
|
||
我的游戏有一个问题:
|
||
我做了什么:[描述你的操作]
|
||
我以为会怎样:[描述你期望的效果]
|
||
实际怎样了:[描述实际发生了什么]
|
||
请帮我修复这个问题。
|
||
```
|
||
|
||
---
|
||
|
||
**进阶提示词(学有余力的学生):**
|
||
|
||
```
|
||
给我的[游戏名]加上以下功能:
|
||
1. 页面顶部显示当前得分
|
||
2. 加一个"重新开始"按钮
|
||
3. 游戏结束时显示最终得分
|
||
```
|
||
|
||
---
|
||
|
||
### 6. 教师指南
|
||
|
||
**本课技术备注:**
|
||
|
||
1. **关于游戏类型的AI生成成功率:** 不同类型的游戏,AI生成的成功率差异较大。以下是经验参考:
|
||
- **高成功率**(推荐):猜数字、石头剪刀布、井字棋、记忆翻牌、打地鼠、简易计算器游戏
|
||
- **中成功率**(可能需要一两轮修复):贪吃蛇、接水果、弹球、躲避游戏、点击反应测试
|
||
- **低成功率**(可能需要多轮修复或简化需求):横版卷轴、射击类、复杂物理模拟、多人对战
|
||
|
||
如果学生选了低成功率的游戏类型,建议引导他们先从核心玩法的最简版本开始,或切换到高成功率的游戏作为保底。
|
||
|
||
2. **HTML游戏的技术实现(教师理解用):** AI通常用HTML+CSS+JS生成网页游戏。常用技术:DOM操作(元素出现/消失)、Canvas画布(自由绘制类游戏)、定时器(控制游戏节奏)、事件监听(响应点击/按键)。教师不需要向学生解释这些。
|
||
|
||
3. **常见游戏Bug:** 点击无响应(事件监听问题)、游戏不会结束(缺少结束条件)、分数不计算(变量更新问题)、画面异常(CSS布局问题)、游戏太快/太慢(定时器间隔问题)。所有问题都可通过Bug三要素描述后让AI修复。
|
||
|
||
4. **单文件策略:** 本课游戏全部是单文件index.html(内联CSS/JS),浏览器直接打开即可运行。如果IDE内置预览操作异常,改用独立浏览器窗口打开。
|
||
|
||
**常见问题 FAQ:**
|
||
|
||
| 学生问题 | 应对方式 |
|
||
|---------|---------|
|
||
| "我想做XXX游戏但不知道怎么描述" | "这个游戏里,玩家要做的那一件事是什么?就把这件事说出来就行了。" |
|
||
| "AI做的游戏画面好丑" | "今天我们的目标是'能玩',不是'好看'。好看是下一步的事。先确认核心玩法OK了!" |
|
||
| "我想加音效/动画/关卡" | "好想法!但今天先确保MVP完成。把你的想法记下来,下节课我们就专门做这些升级!" |
|
||
| "游戏完全不能玩,白屏了" | "别慌!跟AI说'我的游戏打开是白屏,请帮我检查并修复所有错误'。如果还是不行,我们可以换一个更简单的游戏先试。" |
|
||
| "我想做和XXX同学一样的游戏" | "可以做同类型的,但要加你自己的创意!比如他做了打地鼠,你也可以做,但你的地鼠可以是别的东西——比如打星星、打emoji!" |
|
||
| "做完了,可以做第二个游戏吗?" | "当然可以!但先确认你第一个游戏的MVP三问全通过了。如果通过了,去挑战第二个游戏吧!" |
|
||
| "我想做3D游戏/多人对战游戏" | "想法很棒!今天先做简单版本——3D先做成2D的,多人先做成人机的。以后学更高级的技术!" |
|
||
|
||
**课堂风险预案:**
|
||
|
||
| 风险 | 预案 |
|
||
|------|------|
|
||
| AI服务不可用 | 使用教师提前生成好的3-4个游戏HTML文件,让学生在已有游戏基础上体验"验收→修复"流程(手动修改提示词让AI修复的环节改为教师统一演示) |
|
||
| 学生进度差异过大 | 快的学生引导做第二个游戏或帮助慢的同学;慢的学生使用保底提示词(猜数字),确保人人有可玩作品 |
|
||
| 某学生的游戏反复生成失败 | 提供保底游戏选项(猜数字),或让该学生在教师的打地鼠基础上做修改体验迭代流程 |
|
||
| 学生沉迷玩游戏不做验收 | 设置明确的时间节点和任务:"玩三遍之后必须在验收单上写下发现的问题" |
|
||
| 全班游戏选题同质化(都做打地鼠) | 鼓励差异化:"做同类型可以,但必须有你自己的变化——比如打的不是地鼠是别的东西,或者规则不一样" |
|
||
|
||
---
|
||
|
||
### 7. 5分钟日常AI挑战
|
||
|
||
**本周挑战:MVP侦探**
|
||
|
||
找一个你平时经常玩的游戏(手机游戏、电脑游戏、桌游、或者课间玩的游戏都行),分析它的"最小可玩单元"。
|
||
|
||
把你的分析发到班级群:
|
||
1. **游戏名称**:你分析的是什么游戏?
|
||
2. **核心玩法**:用一句话描述玩家重复做的那一件事
|
||
3. **如果只保留MVP**:哪些功能必须保留?哪些可以先不要?
|
||
|
||
**示例:** 王者荣耀 → 核心玩法:控制英雄移动和释放技能击败敌方 → 必须保留:英雄移动、技能、攻击判定 → 可以先不要:皮肤、排行榜、商城
|
||
|
||
**评选标准:** 核心玩法找对了吗?MVP取舍合理吗?下节课展示"本周最佳MVP侦探"。
|
||
|
||
---
|
||
|
||
### 8. 拓展任务
|
||
|
||
**拓展一(推荐):第二个游戏**
|
||
|
||
如果你今天的第一个游戏MVP已经完成,试试用一句话做第二个完全不同类型的游戏。对比两次的体验:
|
||
- 哪个游戏的一句话写得更好?为什么?
|
||
- 哪个游戏AI一次就做对了?哪个需要修复?
|
||
- 你觉得什么样的一句话最容易让AI做出能玩的游戏?
|
||
|
||
**拓展二(挑战):反向工程**
|
||
|
||
找一个你觉得很简单的手机小游戏(比如Flappy Bird、2048、Chrome断网小恐龙),尝试用一句话告诉AI做一个类似的。记录:
|
||
- 你的一句话是什么?
|
||
- AI做出来了吗?和原版差多远?
|
||
- 你怎么修改描述让它更接近原版?
|
||
|
||
**拓展三(创意):给家人做个游戏**
|
||
|
||
用一句话做一个小游戏,发给爸爸妈妈或其他家人玩。问他们:
|
||
- 你觉得这个游戏好玩吗?
|
||
- 你觉得最大的问题是什么?
|
||
- 收集家人的反馈,下节课我们会用这些反馈来改进游戏!
|