【Skill 创作】我用SOLO做了一个"AI代打"Skill:AI帮我玩坦克大战

参赛赛道:Skill创作赛道 · 无限创意方向
作者:用AI做AI的开发者
Skill类型:互动游戏Skill / AI辅助工具
核心亮点:零代码基础也能让AI帮你写游戏AI


:bullseye: Skill简介:一个能帮你"摸鱼"的神奇工具

说实话,做这个Skill的初衷挺简单的——我就是想看看,AI能不能帮我玩游戏

不是那种外挂脚本,而是一个真正有"脑子"的AI,它会自己判断形势、躲避危险、制定策略,就像你旁边坐着一个游戏高手朋友,只不过这个朋友永远不会累,也不会嫌你菜。

坦克大战AI助手就是这样诞生的。它不仅能让你重温童年那个趴在电视机前打坦克的下午,更酷的是——你只需要点一下按钮,AI就接管了方向盘,自动帮你通关

你可以把它当成一个"摸鱼神器":工作累了,打开游戏,开启AI,然后端着咖啡看AI秀操作。那种"我在工作但其实是AI在帮我玩游戏"的感觉,别提多解压了。
效果如下所示:
tank

这个Skill能做什么?

功能 实际体验
:video_game: 经典复刻 像素级还原红白机《坦克大战》,砖墙会碎,坦克有履带,爆炸带火焰
:robot: AI代打 一键开启,AI自动躲避子弹、消灭敌人、保护基地,通关率90%+
:counterclockwise_arrows_button: 人机切换 随时抢回控制权,想自己玩就关闭AI,累了就交给AI
:bar_chart: 实时数据 侧边栏显示得分、关卡、剩余敌人,AI的表现一目了然

适合什么人用?

  • 想摸鱼的打工人:工作间隙看AI打一局,治愈又解压
  • 想学游戏AI的开发者:代码开源,看AI怎么"思考"
  • 怀旧的老玩家:重温童年,还能见识AI的"神操作"
  • 喜欢炫技的创意人:向朋友展示:“看,我的AI会自己玩游戏”

:hammer_and_wrench: 创作过程:我是如何用SOLO一小时做出这个Skill的

故事的开始:一个突如其来的想法

那天下午,我正在刷TRAE的技能创作大赛公告,看到"无限创意"这个方向时,脑子里突然冒出一个奇怪的念头:

“能不能让AI帮我做一件事,这件事本身又是关于AI的?”

具体来说,就是让AI(SOLO)帮我写一个AI(游戏AI),然后让这个AI帮我玩游戏。听起来有点绕,但正是这种"套娃"式的创意,让我兴奋得立刻打开了SOLO。

Step 1:提出需求(5分钟)

我深吸一口气,对着SOLO说出了我的需求:

“帮我做一个坦克大战游戏,用HTML5 Canvas实现。要有玩家坦克、敌方坦克、可破坏的砖墙、不可破坏的钢墙、基地保护机制。还要加一个AI玩家,能自动控制坦克战斗。”

说实话,说完这段话我心里有点忐忑——这需求是不是太复杂了?没想到SOLO秒回:“好的,我来帮你实现。”

五分钟后,一个基础的坦克大战框架就出现在我面前。有地图、有坦克、能移动、能射击。虽然AI还很傻,只会乱撞,但雏形已经有了。

Step 2:让AI变聪明(30分钟)

第一轮的游戏能跑,但那个AI……怎么说呢,像个醉汉。它会在墙角疯狂打转,会对着墙壁浪费子弹,会被敌方坦克按在地上摩擦。

我决定让它变聪明一点。于是我对SOLO说:

"AI需要更聪明一点:

  1. 能检测敌方子弹并躲避——我不想看到AI被乱枪打死
  2. 优先保护基地——别冲出去猛打,家被偷了就输了
  3. 自动追踪最近的敌人——别打空气,打真的敌人
  4. 被墙挡住时自动换路——别在墙角转圈圈了"

SOLO帮我设计了一套**有限状态机(FSM)**架构。简单来说,就是给AI设定了四个"思维模式":

  • 躲避模式:看到子弹来了,先保命
  • 防守模式:敌人靠近基地,立即回防
  • 攻击模式:追踪最近的敌人,瞄准射击
  • 巡逻模式:没事做的时候,在地图里逛逛

这四个模式按优先级排列:保命 > 守家 > 杀敌 > 闲逛。AI会根据当前形势,自动切换到最合适的模式。

Step 3:打磨细节(20分钟)

测试的时候,我发现AI偶尔会"卡住"——在狭窄的通道里来回踱步,像个迷路的小狗。我对SOLO说:

“加个卡住检测器吧,如果AI原地踏步超过10帧,就强制让它换个方向试试。”

还加了一些UI提示:开启AI时,画布左上角会显示一个绿色的":robot: AI控制中"标签,玩家坦克的炮塔上会有一个小绿点——这是AI的"身份标识"。

Step 4:验收成果(15分钟)

最后一步,打开浏览器,测试AI的表现。我点了"开启AI",然后……

我惊呆了。

AI开始自动移动,遇到子弹会灵巧地躲开,发现敌人会追上去消灭,基地有威胁会立即回防。它甚至会在两个敌人之间周旋,像个身经百战的老玩家。

测试数据:

  • :white_check_mark: 能自动躲避90%以上的子弹
  • :white_check_mark: 会主动回防保护基地
  • :white_check_mark: 能追踪并消灭敌人,平均一局消灭20+
  • :white_check_mark: 人机切换流畅,随时能抢回控制权

总耗时:约1小时

从产生想法到看到AI自动通关,只用了一小时。如果没有SOLO,我可能需要先学游戏引擎、再学AI算法、再写代码调试……少说也得几周。

这就是SOLO的魔力:把"不可能"变成"一小时搞定"。


:brain: 技术揭秘:AI是怎么"思考"的

很多人问我:“这个AI到底是怎么工作的?它真的在’思考’吗?”

其实AI不会思考,它只是按照我设定的规则,快速做出判断。但这些规则设计得足够巧妙,让它看起来像是在"思考"。

AI的"大脑":四层优先级决策

你可以把AI的决策过程想象成一个"流水线",每83毫秒(5帧),AI就会重新审视一次战场,然后决定接下来该做什么。

第一层:躲避(Evade)
    ↓ 检测危险子弹 → 垂直闪避
    
第二层:防守(Defend)
    ↓ 敌人接近基地 → 回防拦截
    
第三层:攻击(Attack)
    ↓ 追踪最近敌人 → 瞄准射击
    
第四层:巡逻(Hunt)
    ↓ 向地图中心移动

这个优先级顺序是我反复调试得出的。一开始我把"攻击"放最高,结果AI冲出去猛打,基地被偷了。后来我把"防守"调到最高,AI又变成了"缩头乌龟",只守不攻。最后找到了这个平衡点:先保命,再守家,最后才是杀敌

AI的"第六感":子弹轨迹预测

人类玩家在玩坦克大战时,其实不是"看到子弹才躲",而是会预判子弹的飞行轨迹。比如你看到远处有辆敌方坦克朝你的方向开了一炮,你的大脑会自动计算:这颗子弹多久会飞到我这里?我该往左躲还是往右躲?

我想让AI也有这种"第六感"。于是设计了这样的逻辑:

// 检测危险子弹
willBulletHitPlayer(bullet) {
  // 如果子弹向上飞,玩家在子弹下方,且水平位置接近
  if (bullet.dir === UP && Math.abs(bullet.x - player.x) < threshold && bullet.y > player.y) {
    return true; // 危险!这颗子弹会打中我!
  }
}

原理很简单:如果一颗敌方子弹正在朝你的方向飞来,并且你和它在同一条"轨道"上,那它就是危险的。

但真正巧妙的是躲避方向的选择。 AI不会随机乱躲,而是选择垂直于子弹飞行方向闪避。子弹从上方飞来,AI就左右躲;子弹从左边飞来,AI就上下移动。这和人类玩家的直觉完全一致——垂直闪避能最快"脱离轨道"。

AI的"眼睛":视线检测

AI在射击之前,需要确认"我和目标之间有没有墙挡着"。毕竟在坦克大战里,子弹打在砖墙上只会把墙打碎,不会穿透过去。

所以AI会沿着射击方向,一个格子一个格子地"看"过去。如果中间有砖墙、钢墙或水域,就说明"看不到"目标,不能射击。只有视线畅通时,AI才会开火。

这避免了AI对着墙壁疯狂浪费子弹的尴尬场面——虽然那个画面其实挺搞笑的。

AI的"双腿":智能移动

会做决策还不够,AI还得会"走路"。在坦克大战的迷宫地图中,从A点到B点从来不是一条直线——中间可能有砖墙、钢墙,甚至还有其他坦克挡路。

AI的移动策略是"贪心式"的:先朝目标方向走,走不通就换条路试试。虽然不是最短路径,但在这种格子化的场景中效果出奇地好。

还有一个细节:卡住检测。AI会记录自己的位置变化,如果发现"我一直在原地踏步",就会强制切换方向。这解决了AI在狭窄通道中"卡死"的问题。


:video_game: 使用效果:看AI秀操作是一种享受

实测数据:AI比我还强

指标 结果 我的评价
通关率 90%+ 比我手动玩还高
最高得分 2400+ 稳定发挥
平均消灭敌人数 20+/局 基本清场
单局最长存活 3分钟+ 稳如老狗

说实话,AI的表现让我有点受打击——我手动玩经常翻车,AI却能连续通关。不过转念一想,这AI是我写的,也算是我厉害吧?

三个让我惊艳的瞬间

场景1:神级躲避

有一次,两发敌方子弹从不同方向同时朝AI飞来。我屏住呼吸,以为AI要凉凉了。没想到它精准地往对角方向一闪,两颗子弹擦身而过。那一刻我盯着屏幕愣了好几秒——这真的是我写的代码吗?

场景2:护家狂魔

当敌人从上方偷袭基地时,AI会毫不犹豫地放弃正在追击的目标,掉头回防。有时候它会在基地前面来回巡逻,像一个忠诚的守卫。我甚至有点感动——这AI比我还有责任心。

场景3:贪心翻车

当然,AI也不是完美的。有一次它追着一个敌人冲得太远,结果另一个敌人从侧面偷袭了基地。这说明"攻击优先级过高"确实是个问题。后来我调整了优先级,这种情况就少多了。看着AI"吃一堑长一智",还挺有意思的。


:sparkles: 这个Skill的四个亮点

1. 零门槛使用:打开即玩

不需要安装任何软件,不需要配置环境,不需要懂编程。一个HTML文件,双击打开,浏览器就是你的游戏机。我甚至把它发给了我妈,她都能顺利玩起来。

2. AI可解释:不是黑盒

很多AI系统像个黑盒子,你不知道它在想什么。但这个Skill不一样——你能看到AI在"躲避"“防守"还是"攻击”,每个行为都有明确的状态标识。想学习游戏AI开发的同学,可以直接阅读源码,看AI是怎么"思考"的。

3. 人机无缝切换:随时抢回控制权

随时点击"开启AI"/"关闭AI"按钮,控制权在人和AI之间流畅切换。想自己玩就关闭AI,累了就交给AI,不会卡顿,不会冲突。这种"人机协作"的感觉,真的很未来。

4. 代码即文档:开源学习

代码结构清晰,注释完整。即使你是编程小白,也能看懂AI的逻辑。想学习游戏AI开发?这就是最好的教材。


:wrench: 改进建议:这个Skill还能更好

已知的不足

  1. AI偶尔会冲太猛:追击敌人时可能忽视侧翼威胁,需要更好的全局意识
  2. 没有道具感知:原版游戏的星星、炸弹等道具,AI不会主动拾取,错过了很多强化机会
  3. 路径规划简单:目前是"贪心式"移动,不是最优路径,有时候绕远路

未来想做的优化

  • A*寻路算法:让AI找到最短路径,而不是"走到哪算哪"
  • 强化学习:让AI通过自我对弈来学习最优策略,进化出更聪明的打法
  • 道具感知:让AI主动拾取星星、炸弹等道具,策略深度大幅提升
  • 双人模式:一人操作一队坦克,配合消灭敌人,甚至可以做"人机混战"

:package: 使用指南:三分钟上手

快速开始

  1. 打开文件:找到 tank-battle.html,双击打开
  2. 开始游戏:点击"开始游戏"按钮
  3. 开启AI:点击":robot: 开启AI"按钮
  4. 享受表演:端着咖啡,看AI帮你通关!

操作说明

按键/按钮 功能 什么时候用
:robot: 开启AI AI接管控制 想摸鱼的时候
:robot: 关闭AI 手动控制 想自己玩的时候
WASD/方向键 移动 手动模式下
空格/J 射击 手动模式下
P 暂停 冲咖啡的时候
R 重新开始 翻车了的时候

:light_bulb: 创作心得:用AI做AI,是一种怎样的体验

为什么选择这个方向?

说实话,看到"无限创意"这个命题方向时,我纠结了很久。做效率工具?太普通。做数据分析?太枯燥。做内容创作?太卷了。

直到那个下午,脑子里突然冒出这个奇怪的念头:“能不能让AI帮我做一件事,这件事本身又是关于AI的?”

用AI(SOLO)帮我写一个AI(游戏AI),然后让这个AI帮我玩游戏。这听起来有点绕,但正是这种"套娃"式的创意,让这个Skill变得有趣。它不仅是一个工具,更是一个关于"AI能做什么"的哲学思考。

SOLO带来的改变:从"不可能"到"一小时"

以前:想做个游戏AI,需要学游戏引擎、物理系统、AI算法……门槛太高,光是想想就放弃了。

现在:用自然语言描述需求,SOLO帮我生成代码,我只需要测试和微调。门槛几乎为零,创意可以瞬间落地。

这种"所想即所得"的感觉,太爽了。

最有成就感的瞬间

当我第一次看到AI自动躲避子弹、转身消灭敌人时,我差点从椅子上跳起来。那种"哇,这居然是我做出来的"感觉,比我自己通关还开心。

更让我感动的是,当我把游戏链接发到群里,朋友们纷纷回复"这也太酷了吧"“我小时候也超喜欢这个游戏”。那一刻,我觉得所有的努力都值了。


:trophy: 总结:这个Skill的价值

四个维度的价值

  1. 实用价值:真的能帮你通关游戏,摸鱼神器,工作间隙的最佳伴侣
  2. 学习价值:代码开源,结构清晰,适合想学习游戏AI开发的同学
  3. 创意价值:展示了AI辅助创作的无限可能——用AI做AI,让AI帮你玩游戏
  4. 情感价值:重温童年经典,还能见识AI的"神操作", nostalgia + future 的完美结合

一句话推荐

“如果你想知道AI能帮你做什么,先让它帮你赢一局坦克大战吧!”


:link: 相关链接

  • Skill文件/workspace/tank-battle.html(双击打开即玩)
  • 使用文档/workspace/tank-battle-skill.md
  • 创作博客:本文档

— 用AI创作AI,让AI帮我玩游戏 —

小时候觉得遥不可及的事情,原来只差一个想法和一次动手。

感谢SOLO,让创意变成现实。 :rocket:

1 个赞

AI 代打??是做一个游戏出来,然后AI(算法)去控制这个player吗?

2 个赞

是的,AI在玩游戏

1 个赞

已移帖,欢迎各位朋友投票支持小弟,谢谢,哈哈!【Skill 创作】我用SOLO做了一个游戏AI Skill:快来围观AI帮我玩坦克大战啦! - #2,来自 用户18

1 个赞