I'm helping my dog vibe code games
Momo 的游戏开发之旅:用狗狗的敲击创造游戏
引言
作者分享了他利用 Claude Code 和一只名叫 Momo 的 9 磅小猎犬 (cavapoo) 开发游戏的经历。最初的灵感源于一次偶然的事件,Momo 在作者的键盘上敲击,并意外地输入了一些内容。作者决定探索如何利用这些随机输入,并最终创造出一个完整的游戏。
项目概览
整个系统由以下几个部分组成:
- 输入设备: Momo 使用蓝牙键盘,键盘通过 Raspberry Pi 5 连接到 DogKeyboard 应用。
- DogKeyboard 应用: 一个用 Rust 编写的小程序,负责过滤掉特殊按键 (如 Esc、Tab、Windows 键) 并将剩余的按键事件转发给 Claude Code。
- Claude Code: AI 模型,负责根据 Momo 的输入生成游戏代码。
- 奖励机制: 当 Momo 输入足够多的字符时,DogKeyboard 会触发智能宠物喂食器,给予 Momo 奖励。
- 游戏引擎: 所有游戏均使用 Godot 4.6 引擎,并使用 C# 语言编写游戏逻辑。
提示词设计
为了让 Claude Code 理解 Momo 的输入,作者设计了一个特殊的提示词,将 Claude 设定为一个能够理解神秘指令的“古怪的视频游戏设计师”。该提示词强调即使输入看起来是无意义的,也应该将其视为有意义的游戏设计指令。
工具和技术栈
- Godot 4.6: 游戏引擎,选择 Godot 的原因在于其文本格式的场景文件,方便 Claude Code 直接读取和编辑。
- Raspberry Pi 5: 用于路由键盘输入和控制宠物喂食器。
- DogKeyboard (Rust): 负责过滤按键和触发奖励。
- Claude Code: AI 模型,负责游戏开发。
- Aqara C1 智能宠物喂食器: 用于自动奖励 Momo。
- 自动化反馈工具: 包括截图工具和输入模拟器,帮助 Claude Code 测试和改进游戏。
训练 Momo
作者花费了两周时间训练 Momo,通过奖励的方式让她学会用爪子敲击键盘。最初,Momo 对键盘感到困惑,但通过持续的奖励和引导,她逐渐学会了攻击键盘并产生输入。
游戏示例
Momo 创造了许多游戏,包括:
- DJ Smirk: 一个通过敲击键盘产生不同音调的体验游戏。
- Munch: 一个收集食材的竞争游戏。
- Zaaz: 一个解谜游戏,需要引导画笔在网格中移动。
- The Oracle Frog of Rome: 一个避免巨型章鱼并收集金链子的游戏。
- Octogroove: 一个需要配合节奏敲击鼓点的音乐游戏。
- Ewe Heard Me!: 一个牧羊游戏,需要将羊赶入围栏。
- Quasar Saz: Momo 最近创作的游戏,玩家扮演角色使用宇宙萨兹 (一种乐器) 对抗腐败的声音。
结论
作者认为,Momo 的游戏开发项目证明了,AI 辅助开发的瓶颈不在于创意,而在于反馈循环的质量。通过构建完善的反馈机制,即使是随机的输入也能转化为可玩的游戏。作者鼓励大家尝试利用类似的工具和技术,来探索 AI 辅助开发的可能性。
链接
- YouTube 视频: https://youtu.be/8BbPlPou3Bg
- 游戏下载: https://github.com/cleak/quasar-saz/releases/tag/v1.1 (推荐版本) 和 https://github.com/cleak/quasar-saz/releases/tag/v1.0 (Momo 版本)
- 代码仓库: https://github.com/cleak/tea-leaves
- DogKeyboard: https://github.com/cleak/DogKeyboard