使用 AI 工具写一个《三国》网页游戏
这几个月 AI 发展势头惊人。我准备尝试用 AI 做点有趣的事情。回想小时候,写个好玩的游戏也算是梦想,所以这次准备用 AI 来全程写一个网页版游戏。
说干就干,先起个头。Prompt message 如下:
帮我在这个项目里面做一个网页版的《三国英杰传》,要求:1. 单机版可以玩2. 搭好网页版框架,可以存储,加载记录,可以通过注册登录账号来识别用户
Cursor 经过一番思考后,吭呲吭呲写完,给出了初版。界面如下(气势上有了):

点击“进入战场”,可以开始试玩。我方可以操纵绿色棋子,贴近敌方,进攻,并最终取得胜利。

鉴于这个版本比较粗糙,所以决定让 AI 改善玩家交互方式,继续提供 prompt message 如下:
修改玩家交互方式,1. 当没行动过的玩家被点击时,显示可移动区域。2. 当移动完后,自动在棋子旁边弹出菜单:发动攻击(如果和敌方相邻,则亮色,否则灰色),使用计策(如果和地方距离在2以内,则亮色,否则灰色),待机。玩家可以通过移动鼠标和键盘来选中执行哪个菜单3. 扣血时有比较牛叉的动画效果
中间也出现过一些问题,比如移动后的行动菜单被背景遮挡。交给 AI 很容易就解决了。
修复前:

修复后:

继续修改,改进游戏体验:
继续修改:1. 如果移动后有多个敌人可以被攻击或者使用计策,可以让玩家用鼠标或者方向键选择对哪个敌方进攻或者用计2. 如果点击了玩家后,不想移动,鼠标再次点击同一个地方时,会出现前面的菜单,代表不移动进攻或者用计或者休息。3. 如果出了菜单后玩家按“Esc”键或者点了鼠标右键,则这个棋子回到这回合初始状态
经过修改后,已经可以通过鼠标或者键盘选择要进攻或者用计的敌人。

继续修改,提供更丰富的游戏体验:
继续修改:1. 给单玩家或者敌人提供移动的动画2. 敌人或己方如果“死了”,需要提供渐渐消失的动画,并在游戏界面中显示“xxxx被斩于阵前”
效果还不错。当敌方被阵斩后,出现渐隐动画和提示文字“黄巾头目被斩于阵前”。

注意到敌方的行动是所有敌人同时完成行动,和战棋类游戏体验不符,所以继续修改用户体验:
继续修改,让敌方的移动是一个一个进行的,第一个行动完了,停2秒,然后是第二个敌人,然后第三个。。。以此类推
改完之后,游戏体验性大大提高。

到此为止,我没有手动写过一行代码,只是不停地在给 cursor 提需求。后续准备再多开点脑洞让 AI 继续帮我不知疲倦干活完成迭代。
游戏经过迭代后,玩法和用户体验也大大丰富。以下是初版和几轮需求迭代后的游戏玩法变化:
-
• 初始版本描述
-

• 迭代后版本描述

夜雨聆风