设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 3116|回复: 10
打印 上一主题 下一主题

[讨论] 请教AI回避弹幕的算法?

[复制链接]

Lv3.寻梦者

梦石
0
星屑
2650
在线时间
1050 小时
注册时间
2015-11-1
帖子
271
跳转到指定楼层
1
发表于 2017-6-6 11:32:06 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
请问大家有没有研究过弹幕游戏,毕竟这里看到还是有不少东方爱好者。

有人对花映冢中,敌方AI可以一定程度自动躲避弹幕的算法有所研究吗?

能否请教一下大致上应该怎么实现吗?

Lv5.捕梦者 (管理员)

老黄鸡

梦石
0
星屑
41121
在线时间
7568 小时
注册时间
2009-7-6
帖子
13498

开拓者贵宾

2
发表于 2017-6-6 11:58:34 | 只看该作者
http://video.tudou.com/v/XMjEyMzk5OTUwNA==.html

很久很久以前自己做过一个红魔乡的躲避AI(外挂形式
不过严格上来讲不算AI,而是辅助,因为不是完全由AI操作,是根据弹幕的方向和坐标来预估接下来的位置,从而进行本机的微调。
大体移动还是靠人……
RGDirect - DirectX驱动的RGSS,点我了解.
RM全系列成套系统定制请联系QQ1213237796
不接受对其他插件维护的委托
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
12157
在线时间
4435 小时
注册时间
2014-4-11
帖子
5955

开拓者

3
发表于 2017-6-6 11:59:53 | 只看该作者
那种游戏一般敌人都是规则式行动的。

不知道这样做可以不可以。
把敌人做两层,外面一层打中不受伤,判断回避
里面那层打中受伤
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
1624
在线时间
1609 小时
注册时间
2007-8-28
帖子
3253

第3届短篇游戏大赛主流游戏组冠军第1届Title华丽大赛新人奖

4
发表于 2017-6-6 20:06:24 | 只看该作者
本帖最后由 柳之一 于 2017-6-6 20:21 编辑

“”无敌“”算法:当玩家按下发射弹药键的时候,此瞬间弹道盘面已知,弹道轨迹都是函数,敌方unit自己的体积和移动速度可以算出安全空间,甚至5秒后的安全位置,直到当前盘面不能完全闪避,就根据伤害权重来选择最小伤害的移动路径,或者使用自己的闪避技能。


补充:
但是这样损耗机器性能,总打不到敌人也窝火。

敌人unit肯定有碰撞检测,假设是一个 半径1cm的圆环Collider,撞击这个圆环就会收到伤害,那么给unit再加上一个外圈Collider,半径是5cm,这个当做敌人警戒视野,当进入碰撞器时(即进入警戒视野的时候),unit开始移动,避开此子弹的轨迹。好处是,半径越小,给计算机带来的负担也小,但是敌人也越傻。半径大,敌人也越来越聪慧。这个半径值恐怕就是楼主说的一定程度。


综合结论:
小兵战的时候,半径小一些。boss战的时候大一些就行。

评分

参与人数 1星屑 +10 收起 理由
 眠  + 10 感谢你的解答。

查看全部评分

“我推荐你一个游戏吧,avg的,剧情特感人”
“我擦,都是文字图片的游戏有啥好玩的,连个战斗都没有!”
“我推荐你一个游戏吧,rpg的,战斗也新颖”
“我擦,怎么米有作i弊器?“
”你不是喜欢战斗么?”
“不,我是剧情党!!”

继续阅读请点击
http://rpg.blue/blog-53316-10027.html
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
2650
在线时间
1050 小时
注册时间
2015-11-1
帖子
271
5
 楼主| 发表于 2017-6-10 06:03:17 | 只看该作者
fux2 发表于 2017-6-6 11:58
http://video.tudou.com/v/XMjEyMzk5OTUwNA==.html

很久很久以前自己做过一个红魔乡的躲避AI(外挂形式

这个效果在我的想象中,会不会产生一种身体与大脑的行动不一的不协调感呢?因为每次移动,实际的结果可能是被修正过的,反而会产生使人混乱的感觉。
不过不实际操作过的话也许也无法明白。
我特意观察了视频,修正看起来是无时无刻都在进行的,还是说那个高频的自机晃动是操作者的习惯吗?
作为一个辅助,这个的利弊大概因人而异。
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
2650
在线时间
1050 小时
注册时间
2015-11-1
帖子
271
6
 楼主| 发表于 2017-6-10 06:08:38 | 只看该作者
yang1zhi 发表于 2017-6-6 11:59
那种游戏一般敌人都是规则式行动的。

不知道这样做可以不可以。

唔 第一点在早期的梦幻小妖精中,应用倒是很明显。

另外,我不是太读懂你的建议。

点评

不叠在一起也可以,反正就是让一个先被打中判断距离  发表于 2017-6-10 08:16
就是两个敌人叠在一起啊,一个体型大的,一个体型小的。体型大的作为小的感知范围用,不做伤害计算。  发表于 2017-6-10 08:13
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
2650
在线时间
1050 小时
注册时间
2015-11-1
帖子
271
7
 楼主| 发表于 2017-6-10 06:15:16 | 只看该作者
柳之一 发表于 2017-6-6 20:06
“”无敌“”算法:当玩家按下发射弹药键的时候,此瞬间弹道盘面已知,弹道轨迹都是函数,敌方unit自己的体 ...

十分感谢你的回复。

第一个算法看到的时候,就感觉到这是我想要的最优解思路。最近一直没有什么时间去完善,本来还打算迟点放上一下生存测试的结果。

碰撞其实就用一般的方形就好了。
除了内部一个代表自机,在外部也加一个代表警戒距离。

进入警戒的敌弹,才过一次AABB检测。

负荷也大为减少。

我用的不是UNITY,不知道引擎的思路是否不太一样。

回复 支持 反对

使用道具 举报

Lv5.捕梦者 (管理员)

老黄鸡

梦石
0
星屑
41121
在线时间
7568 小时
注册时间
2009-7-6
帖子
13498

开拓者贵宾

8
发表于 2017-6-10 23:00:39 | 只看该作者
 眠  发表于 2017-6-10 06:03
这个效果在我的想象中,会不会产生一种身体与大脑的行动不一的不协调感呢?因为每次移动,实际的结果可能 ...

自机晃动是个判定BUG,不过影响不了太多。
RGDirect - DirectX驱动的RGSS,点我了解.
RM全系列成套系统定制请联系QQ1213237796
不接受对其他插件维护的委托
回复 支持 反对

使用道具 举报

Lv5.捕梦者

梦石
0
星屑
33111
在线时间
5104 小时
注册时间
2012-11-19
帖子
4878

开拓者

9
发表于 2017-6-13 10:38:50 | 只看该作者
侦测全屏子弹轨迹来决定运动方向实现回避,如果这样判断的敌人太多的话,貌似会很卡。也可以侦测距离本单位一定范围内的子弹要好点。
再说,如果是100%的精确规避,除非无缝弹幕无法规避,平时的时候每发子弹都打不中敌人,那也没有玩的意思了。
可以模糊判断,一定几率“马虎”了,不执行规避;一定几率“计算错误”,规避失败;或者减小侦测范围,躲过第一发子弹,但被第二发子弹命中。
xp vx va mv  va mz 各类型脚本/插件定制
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-9-27 07:17

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表