猫史档案馆


【教程贴】如何在贪吃猴中制作简易AI

用户:Chengxuyee_已退Chengxuyee_已退查看:4 回复:5 评论:4 创建时间:2020-08-03T12:49:10


  大家好我是编程中手。emotion_星能猫_hi(还是那个已经腻了的台词,却想不起来其他的了)。今天我要教大家怎样制作模板贪吃猴中的简易AIemotion_编程猫_厉害了好,接下来开始我们的

 A I 三 部 曲

第一步:准备工作

  首先,我们进入kitten。center_image

点击“新建”。center_image

选择模板“贪吃猴”。center_image

这样子,我们就进入贪吃猴模板中啦!emotion_编程猫_点赞

第二步:分析已有积木。

虽说你可能已经迫不及待想做AI了,但是我们还需要分析一下模板里已有积木可以实现什么功能。这里我将会把所有角色积木的注释以图片展示。center_image

center_imagecenter_imagecenter_imagecenter_imagecenter_imagecenter_imagecenter_imageemotion_编程猫_厉害了

第三步:制作AI

  接下来就要正式开始制作AI啦!emotion_星能猫_yeemotion_雷电猴_疑问首先,我们需要复制一个闪电猴角色。选中“闪电猴”并右键,点击复制。center_image

更改“闪电猴(1)”的名字,改成“AI猴”center_image

接下来,需要更改一下数据了。把变量“得分”改成“闪电猴得分”,并且新建变量“AI猴得分”center_image

随后,删除积木,只保留这些:center_image

(别忘了把“当作为克隆体启动时”中的“闪电猴得分”改成“AI猴得分”emotion_雷电猴_嗯嗯

接下来我们就需要自己写代码啦~

首先为了分辨闪电猴与AI猴,我们需要把AI猴的颜色换一换。emotion_编程猫_嗨起来在外观模块中找到“将 颜色 特效设置为 10”积木。center_image

拼接“当开始被点击”积木,并修改数值为“150”center_image

现在,我们已经能将闪电猴与AI猴分辨开来了。(大家有没有发现,身体也同样变色了呢?)我们运行一下试试。center_image

可是AI猴还不能自动吃电池。所以现在我们要给他加上这个功能。上图。

center_image

这个积木可以让AI猴根据自身xy坐标与电池xy坐标的情况进行转向。我们运行试试。center_image

这里产生了一个bug。AI猴在与电池的y坐标相等后,却没有进行上下移动,一直在左右转。(AI猴:好晕emotion_编程猫_紧张)这是怎么回事?emotion_雷电猴_疑问难道转弯积木除了差错?问题就出再这块积木上center_image

这里是“移动3步”,而不是“移动1步”。也就是说,AI猴必须初始   x坐标0 - 电池x坐标 是3的倍数   才可以上下转弯,否则就会一直“兜圈子”。这里需要更改一下移动积木。center_image

有点看不清哈,可以按ctrl+鼠标滚轮 放大缩小

这样,我们的AI就做完啦!emotion_编程猫_嗨起来

拓 展

一.胜负判定

  现在,我们要做一个胜负判定。如果闪电猴的分数先等于30,那么就闪电猴赢。如果AI猴的分数先等于30,那么就AI猴赢。添加角色“胜利”‘失败’

center_image  删除声音“糟糕了”,添加声音“成功”,“失败”(最短的那两个)center_image

在成功失败角色中编程。center_imagecenter_imagecenter_imagecenter_image

这样子,作品就能判断胜负了。

二.降低难度。

  不知大家有没有觉得AI猴太厉害了。这里就把他的技巧降低一点,让它每5秒出错一次。让AI猴每隔一段时间就误转向。但是,经过思考可以想到,直接编写错误转向积木是不行的,因为上面的转弯积木在重复执行。所以我们需要在AI猴错误专项时,设置一个变量来声明在错误转向,提醒正确转弯的积木先停止运行一段时间center_imagecenter_imageemotion_编程猫_点赞

三.循环播放音乐

  现在,我们看看背景里有什么积木吧。center_image

大家有没有发现一个问题,这里并没有循环播放音乐。有时候玩到一半就没音乐了。所以这里要让它循环播放。center_image

  好啦,本期教程就结束啦。顺带一说,作者把本教程的AI和拓展全都放到一个作品里发布了哦,你们可以去看看。(作品内积木包含注释)链接:https://shequ.codemao.cn/work/55830334。拜拜~

 


回复

上一页1 页 / 共 1下一页
ZNS_RemytowerJimmyZNS_RemytowerJimmy

沙发

点赞0


评论


Chengxuyee_已退Chengxuyee_已退

dd

点赞0


评论


BCX知足的铁奥SDBCX知足的铁奥SD

emotion_good

点赞0


评论


BCX知足的铁奥SDBCX知足的铁奥SD

厉害厉害!!!

 

点赞0


评论


LogicMLogicM

我还以为是GameAI。。。

点赞0


评论