kirito 发表于 2014-6-2 20:48:57

关于电脑AI的一系列问题j

最近在做一种类似dota的地图,大部分都完成了,放到U9上让玩家去玩反应都还好。有个玩家提出个建议,让我加入AI,可以让刚下的玩家先和电脑对战熟悉技能及其其他。我遇到了以下几个问题,求大神帮忙解决:1、无法将电脑玩家添加到玩家组
2、无法让电脑在酒馆中选英雄或者创建英雄给电脑
3、无法让电脑对敌对英雄释放技能
4、无法让电脑进行补兵(包括反补和正补)
5、无法让电脑购买装备
6、无法将所有英雄添加进单位组

xiaojiao 发表于 2014-6-2 23:23:54

完全一无所有啊.
1.选取所有玩家 条件有个判定玩家控制者.应该没问题吧..
2.把所有英雄单位编号 .随机创建个电脑.
3.这个就比较复杂了.技能都要记录 条件判断什么的麻烦死你.还要附加英雄自己学习技能.
4.小兵受到伤害,判断小兵目前生命值 然后动作好像有个 发布攻击命令的吧.
5.目前类似地图是根据 电脑 的钱 和 英雄 然后删除 物品 和创建 物品 来完成的.
6.其实单位组什么的玩家组什么的没有很大必要(个人感觉) 我一般是 玩家变量(数组) 循环数解决. 单位也一样.
另外期待楼下专业人士解答.

chyj4747 发表于 2014-6-3 07:55:04

LZ你的“无法让电脑xx”是“不知道怎么让电脑xx”的意思么……不然我怎么觉得是你的魔兽或者WE有问题啊。。

玩家一共就12个,循环一下判断下是不是电脑然后用变量或者玩家组记下来,然后每过一段时间对记录的玩家进行操作,比如跑去线上、回家买东西等,当然这些要各种条件判断,比如钱够了并且兵线位置靠前这种
上面是大环境的操作,细节方面比如学技能、买什么装备这种,可以用一个没事件的触发准备好(比如判断下等级然后学个技能),然后给电脑选了英雄再注册事件(比如注册升级事件),一般来说不同英雄有不同打法,所以最好每个英雄准备一套触发器,当然有部分通用的或者类似的可以合并
买装备什么的直接加物品给电脑就行了,不用去发什么购买命令,相应的价格直接从电脑的钱里扣
补刀和放技能我个人觉得正反做法都可以,正着做就是开个计时器判断英雄周围情况如何,比如判断到有个残血小兵那么就A掉,反着做就是任意单位被攻击什么的(或者自己写任意单位受伤)判断下周围有没有电脑的英雄,然后叫电脑英雄过来补刀

我记得网上有不少dota类AI的教程的啊,演示也有,LZ可以搜下,有些讲思路的,LZ要是看不懂J的话可以看思路然后自己写

kirito 发表于 2014-6-6 19:14:47

...多谢楼上和楼上上了   貌似懂了点 。。。   大概的思路是有了    试试吧

kirito 发表于 2014-6-7 00:53:20

刚刚尝试了    但是还不成功我用了单位池给电脑创建英雄能够实现,但是我还遇到以下两个问题,请大神再来帮助:
1、无法在酒馆中禁用掉已经给电脑创建的英雄
2、电脑会重复创建同一个英雄,我用了“从单位池中移除最后创建的单位也不行。”
总的来说没办法捕捉用单位池给电脑创的英雄。
页: [1]
查看完整版本: 关于电脑AI的一系列问题j