我在一个周末交付了一款卡牌游戏
我开发了 Prší 的浏览器版本。这是一款捷克卡牌游戏。它是一个针对简单 AI 的 1v1 游戏。你可以使用鼠标或触摸进行游玩。
在这里游玩:https://czsoftcode.github.io/prsi/
大多数人称之为 vibe coding(氛围编程)。我并不认同。氛围编程通常意味着你描述一个应用,然后接受 AI 给你的任何结果。我使用了不同的方法。
我使用 Claude Code 通过 10 个明确的阶段来驱动构建。每个阶段都有特定的目标和可验证的输出。
这些阶段包括:
- 设置 Vite 和 TypeScript 脚手架
- 构建游戏引擎数据模型
- 添加基础动作和特殊卡牌
- 创建 AI 对手逻辑
- 构建 UI 和交互循环
- 运行 200 次端到端 AI 模拟
- 部署网站
在进入下一阶段之前,我会对每个阶段进行计划和审查。这保持了代码的整洁。我编写了大约 300 个单元测试。当 AI 犯错时,我的测试会立即发现它。
最难的部分不是代码,而是游戏规则。
- 堆叠 7:玩家可以堆叠最多四个 7,从而迫使对手抽取 8 张牌。
- 王后万能牌:王后会改变所需的花色。我必须确保引擎能正确处理这一点。
我还面临了一些技术障碍:
- 部署:由于路径错误,我的图片在 GitHub Pages 上失效了。我通过使用 Vite 的 base URL 解决了这个问题。
- 版本控制:在标记发布(tagging a release)后,我忘记更新
package.json了。
我保持了 AI 的简单性。它只进行合法移动。目标是实现一个正确的 AI,而不是一个聪明的 AI。我使用了 200 场模拟游戏来证明游戏总是以获胜或平局结束。
通过分阶段构建而不是依赖氛围(vibes),让我能够交付一个我真正理解的产品。
来源:https://dev.to/stkremen/i-shipped-a-card-game-in-a-weekend-but-i-didnt-really-vibe-code-it-34g9
