我使用 AI 在 ~30 天内创建了一个类似 GTA 的游戏,欢迎您来玩 Temu GTA 😂 玩游戏这里: https://gta.nitzan.games 过去一个月,我一直在使用 Astra 来创建 Grand Total Anarchy,一个完全在浏览器中运行的类似 GTA 的游戏。我提供了方向,请求了特性,玩了游戏,并给出了反馈。 Astra 写了所有的代码,创建了艺术品,实现了游戏玩法,测试了它,甚至制作了宣传片。 我们最终创建了以下内容: * 🌎 一个大型连接的岛屿,拥有城市,乡村,机场和军事基地。 * 🚗 37 个车辆模型,包括汽车,摩托车,公交车,直升机和飞机。 * 🔫 武器,战斗和五级警察追捕。 * 📖 一个 31 章的故事剧情,关于拯救您的阿姨 Rosa 的车库。 * 🚕 打车,送披萨,公交车路线和其他活动。 * 🚶 行人,具有日常活动和行为。 * 🎮 多人模式死亡竞赛,具有车辆和武器。 这是我如何创建它的。 该项目最初是一个更小的驾驶沙盒。 我们没有要求 Astra 在一口气中建造一个完整的 GTA 游戏,而是将其扩大到大约一个月。 我使用我的 Data-Oriented Design 技能,它基于我的即将出版的 Manning 书籍的架构。 它指导 AI 将数据,逻辑和呈现分开,使用数组和索引而不是复杂的对象层次结构,避免在游戏循环中分配。 有一致的架构是非常重要的,因为项目的增长。 否则,添加新特性很容易将代码库变成一团糟。 工作流程基本上是: 1. 描述我想要的特性或区域。 2. 请 Astra 计划和实现它。 3. 请 Astra 运行自动化测试并在实际浏览器中查看结果。 4. 我自己玩它并提供反馈。 5. 重复。 这个过程中的一大部分是让 Astra 负责测试自己的工作,而不是仅仅写代码。 例如,这些是您可以使用的示例提示(这些是示例提示,而不是我的原文): 对于初始游戏: > 使用 Three.js 构建一个类似 GTA 的驾驶沙盒。 以一个小的可玩城市,一个可以走路的角色和可以偷车并驾驶的汽车开始。 使用 Data-Oriented Design 技能进行架构。 保持开发过程中保持可玩性。 添加特性时: > 实现特性,然后在浏览器中测试游戏。 捕获截图,检查结果,识别问题,修复它们并重复。 不要仅仅因为代码可以运行就认为特性就完成了。 扩展世界时: > 使用不同的邻里,道路,标志和活动扩展地图。 确保所有内容都连接到一个连续的世界。 测试车辆导航,行人路径,碰撞和摄像机行为。 测试现有系统时: > 为游戏玩法系统(包括任务,车辆,损伤,保存/加载和多人模式)创建自动化测试。 测试成功和失败路径。 修复测试过程中发现的问题,并验证现有特性仍然正常工作。 继续迭代是最重要的部分。 Astra 建立了自动化模拟测试,使用 Playwright 与游戏交互,捕获截图并查看自己的结果。 我可以专注于玩游戏并决定哪些需要改进。 即使宣传片也完全由 Astra 制作! 它创建了一个系统来阶段和捕获游戏场景,控制摄像机,使用 Python 生成音频,并使用 FFmpeg 组装所有内容。 截图是实际的游戏渲染,而不是 AI 生成的视频。 现在,让我们进行现实检查。 我把它称为 Temu GTA 的原因是 😂 游戏具有惊人的功能,但仍然缺乏很多磨合度。 驾驶,战斗,动画,AI 和任务都需要更多的工作。 有一个特性被实现了和有一个感觉良好的特性之间存在很大差距。 然而,仍然很惊人的是,AI 可以在您给出明确的方向,一致的架构和测试自己的工作的方式下创建多少内容。 而且我认为这就是它的吸引力所在。 您不需要要求 AI 建造一个完整的游戏。 从一个小的可玩游戏开始,给它工具和架构来保持代码的可管理性,并从那里扩展。 尝试一下 Temu GTA: https://gta.nitzan.games 我很想知道您的意见,特别是哪些工作得很好,哪些仍然感觉像来自 Temu。 😂
我用 AI 在 ~30 天内打造了一款令人惊讶的 GTA 式游戏。欢迎来认识 Temu GTA。
评论 (0)