在各种类型的游戏中,有哪些AI设计技巧能避免玩家觉得AI太蠢?

0 条评论


  • 28

    不沉之默游戏是体验不同人生的最好方式

    Nitemage饕餮苏打汽水 等 28人赞同

    一直在做AI这方面的设计工作,个人总结下来一套AI系统至少要有两个层面:
    1. 动作层。比如说敌人要能跑能跳。

    2. 决策层。要有一个Brain来决定什么时候需要下命令让敌人去跑去跳。

    再往上还可以有群体决策,来决定复数敌人的整体行动和配合。

    要想使AI看起来不蠢,至少动作层需要过关,否则再好的戏也出不来。如果是比较大型的游戏,这本身就已经很复杂了,比如说如何跑到一个精确的位置,动作之间如何过渡,要不要加一些转向辅助等等。就不展开说了。

    题主主要关心的还是决策层。假定已经有了一个够用的动作层,可以实现大部分的目标,如何使玩家觉得AI不蠢呢?

    细分这个问题,首先,是要“玩家”觉得不蠢。毕竟我们应该最明白,游戏里的AI从根本上是要为玩家服务的,而不是像AlphaGo一样造出来挑战人类极限的。所以我们并不需要做一个真正“聪明”的AI(其实也做不到),AI的行为应该符合我们的常识,而不是寻找最优的解法。这个应该是AI的上限。

    然后是这个下限:“蠢”,在玩家眼里怎么样才算不蠢?相比现实世界,玩家对AI的某些行为有多大的容忍度?从最基本的行为层面上来看,需要这么几点:

    1. 对于玩家的行为,敌人要作出反应。比如被子弹打中后,敌人要知道躲,不能傻站着。

    2. 反应速度。太快了显得假,太慢了就显得蠢。

    3. 反应的多样性和决策。比如被打中后,敌人是找掩体还是打开护盾,还是发出警告呼唤伙伴等等。
    4. 一些自发的行为。比如巡逻时的路径和观察模式。

    5. AI的行为,需要给玩家留下对策的空间。建立一个玩家行动->AI针对->玩家再针对的循环。

    总结下来,玩家和AI之间,应该是一个博弈的关系,而不是一方对另一方的碾压。

    以上的设计要点,在不同类型的游戏中有不同的体现和侧重。比如FPS游戏中,动作层面上的被子弹击中的反应其实特别重要,是要优先于受创后的行为的。其实就是玩家更需要在开枪击中敌人后,可以立即得到反馈。再比如体育类游戏中,就更需要团队层面上的AI配合。

    而且在同一个游戏中,还要针对各种敌人建立尽量明显的AI差异,使玩家可以找到对不同敌人的不同对策。

    即使对同一个敌人,最好也要建立多个“玩家行动->AI针对->玩家再针对”的循环。用来避免单调,配合玩家的成长以及游戏的难度曲线。

    发布于 2017-05-25 19:01:58 7 条评论


  • 4

    Doom Liang我被折叠的回答,都是精华

    Doom Liang白源姬沉竹 等 4人赞同
    • 根据你想营造的情感体验情景设计对应的AI(这个一定要想明白)
      • 危机四伏:捅**,打不过会逃跑并把你引入陷阱的怪
      • 割草无双:正面肛,僵硬耿直
      • 阴险毒辣:You jump 我就 ↓+HP. Okay?
    • 合理结合游戏机制、场景环境元素
      • 机关(教学引导、用低成本做出高智能的用户体验)
      • 机制(盾反脚踢、屎块背刺)
    • 增加NPC之间的互动、耦合性
      • 杀手大光头
      • 盟军肛死队
      • 张小明举盾抗压,王二嘎盾后搓火球
    发布于 2017-05-25 15:16:38 0 条评论


  • 3

    为所欲为的紫国人

    非专业人士,作为一个普通玩家,我是认为想展示AI的话可以从怪物设计本身和场景下手。举个例子,塞尔达你把骷髅兵的头扔出去,它会拿回自己的头再来打你。那同样的可以设计一种水属性的怪,假设玩家有能让怪物持续燃烧的技能,并且玩家将这个技能丢向了这个怪,那这种怪会喷水清楚自己身上的火,这就显得聪明了一点,并不是单纯清除debuff,而是利用自己的特性为自己服务,只有它能做到。黑魂的怪会喝血也是一样,当玩家发现怪物会做了无脑对着自己砍以外的事,就会觉得这AI有点东西。至于场景,就是怪物会和场景活动,例如旁边有个大石头,怪物会扔过来砸你,如果怪物旁边有个洞穴里有同伴,怪物在半血以下就会去喊同伴来帮忙打你,或者是黑魂那种惯用的套路,会逃跑,把你引入其他怪物埋伏的地方,魂二的马雷达就是这方面玩到极致的角色。

    发布于 2019-10-09 15:42:30 0 条评论


  • 3

    Tdy

    沉竹饕餮梅利梅利 赞同

        在客观条件没有大突破(更先进的人工智能得到应用、硬件水平大幅提高等)的前提下,我认为一味地通过算法让AI提高“智商”并不是很好地办法。

        AI设计的出发点还是优化玩家的游戏体验,即使玩家的某些操作让AI做出了蠢事,但如果这件“蠢事”让玩家获得了好的体验,那就是没啥问题的设计。比如《黑魂3》里的新人杀手“太刀哥”,有一种邪道打法:玩家站在悬崖边的特定位置时,太刀哥攻击玩家会冲下悬崖摔死。相反的,如果一个看起来很“聪明”的AI,在某些情况下做出了让玩家体验很差的蠢事,哪么只有一件,玩家也会觉得很糟糕。  

        所以让一个总体上依然傻傻的AI,偶尔做出一个让人眼前一亮的聪明行为,可以更有性价比地改善玩家对AI智商的印象。这也更符合题目里“设计技巧”的含义。

    发布前手贱点到别的页面去了,后面的内容居然没自动保存上。难受……

      我总结了以下几点“设计技巧”或者说“设计方式”,主要针对解密类游戏:

    1. 把AI当成机关设计。我认为从游戏性角度看,关卡中一个会跑会打的AI单位和场景里的开关、传送门这类机关并没有本质的区别,无非是AI单位的行动规则更加复杂,以及击败后会有奖励之类的。我们可以在关卡里用飞行的齿轮机关代替来回行走攻击的怪物,也意味着我们可以设计一个怪物来代替开关和传送门。关键是AI的行为要像机关一样有规律可循,比如《小小盗贼》中的守卫,会在转身前敲三下地板,就好像一些按下按钮延时关闭的机关,会在时间结束前做出提示一样。哪怕是设计一个“无头苍蝇”,“沿着随机路径移动”也是他的规律。
    2. 让AI的反应符合直觉。一般情况下,最好让玩家看到AI就明白他是干嘛,除了靠美术动画解决之外,设计上也有一些技巧。不要让玩家对AI做出的反应产生不必要的期待,比如AI会对玩家的A行为作出a反应,那么玩家自然会认为AI也会对自己的B行为作出b反应,结果却不能……具体就不举例了,懂的自然懂。所谓期待越高,失望越大,这种落差会放大玩家对AI的坏印象。
    3. 制造惊喜。能够做好前两点,AI应该就显得没那么蠢了,而做好了这一点,可以让AI给玩家留下深刻印象,哪怕前两点做得不够完美。我认为能够让AI具有个性的并不是先进的算法,至少现在不行。因为当下最先进的人工智能也依然没能模拟出人情味。让AI具备个性,需要人为地给AI的行为规则添加特例,但切记这种特例是有益于玩家的游戏体验的,否则就不是制造惊喜,而是画蛇添足,制造惊吓了。
    4. 如果AI设计得缺陷或者BUG并不影响游戏体验,甚至能优化游戏体验,那就没有必要修正​​​​
    发布于 2017-05-29 14:05:17 0 条评论


  • 2

    冷筱华一个普通的蓝孩子

    歌德莱特Amaocteu 赞同

            我不是一个游戏工作者,只是一个玩家,所以以下内容我不确定是否能切实的实现。

            首先,我们要明确一个问题:为什么玩家会觉得AI蠢,这个蠢究竟体现在哪里?

            很显然,当我们玩家评价一个AI蠢的时候,参照的对象一定是“不蠢”的东西,比如人,比如更加优秀的AI。在这里我们仅讨论和人对比的情况,以及设计目的对玩家对AI期待的影响。

            我们先来讨论敌人类的AI,这种比较常见——比如CS中的ROBOT,比如MOBA中的人机,再比如DEAD CELLS(以下简写DC)中的小怪。以上三种是三种不同的敌人AI,他们的表现不同,但是都不会让人觉得蠢。相比MOBA的人机以及CS的ROBOT,DC中的小怪行为十分单一,但是我,以及我所知道的其他玩家从未有过“这些怪物好蠢啊”的想法,因为,这些怪物的设计目的就应该是这样的——让我们杀,或者杀死我们。我们从未想要要把他们和“聪明”联系起来。

            但是CS的AI不同。CS的AI的目的虽然也是被我们杀或者杀死我们,但是它要提供的不是一种单方面的可以用智慧和操作碾压的对手,而是可以与我们对等竞技的对象。也就是说,人对这种AI的认识就是,它应该和我一样——甚至比我更厉害。所以,如果CS中的AI也与DC中一样行为模式单一,就会被别人认为蠢。对于这种AI而言,前面不沉之默已经有了详细的叙述——群体策略之类的。(仰望AI大佬)

            MOBA中的AI其实和CS同属和玩家对等的AI,但是略有不同——对于这种AI来说,想要让人觉得不蠢,实力其实不是最关键的——关键是要“不蠢”。也就是,不会做出人明显不会做的事情——比如残血没治疗没闪现没无敌没队友越塔,比如不会没视野瞎进草丛=-=

            所以说,根据设计目的的不同,玩家会对不同种类的AI产生不同的心理预期。关键不是AI有多优秀,而是AI表现是否符合他们的定位。

            然后是路人类AI。这种AI其实=-=我感觉玩家并不会特别的觉得他们蠢,哪怕他们只会重复一句话,哪怕他们可以无限次的回答你的同一个问题——反而,如果对话不能反复进行,玩家反而会觉得很讨厌。不过为了提高难度或许确实可以这么做2333333。其实作为路人而言,我觉得老滚5的路人那样已经足够了。

            【托腮】随便瞎说,仅供参考(或许连参考价值都没有23333)。

    发布于 2017-06-04 11:41:18 3 条评论


  • 0

    茕碎快乐的看客,匠心的行者

    感觉从大道上面说来很多,但是从术上来说,AI就是拆分成无数个线性的选择逻辑项,当你拆分的越细那么AI就不会显得很蠢,所以一个就是你要能拆分关键选项,如体重,太胖移动慢,太瘦移动快这些,其次另一个就是有耐心把所有选择项再细分模仿玩家真实行为,所以AI的智能不仅仅是简单的代码,而是复杂的线性选择逻辑

    发布于 2017-08-22 11:06:46 0 条评论


  • 0

    Helix划水爱好者

    记得玩黑魂时碰见的会翻滚会磨刀会喝尿素瓶的怪给我一种ai很高的感觉 0.0

    发布于 2017-06-04 18:40:08 0 条评论


  • 0

    wvkmind虚伪不真实

    我有一个特别蠢的想法,让怪物根据世界升级(攻击类):

    1,数值成长,(根据玩家统计数据),现在有,不用说了。

    2,自主学习,根据玩家对自己进行的攻击,自己失败后,统计玩家操作数据(包括识别职业,按级所获技能),存储玩家套路,预防套路。自行组合攻击方式,验证成功效率(得让怪物有足够量的行为,并且行为不是一上来就有,是会逐步解锁)。

    3,以上都是废话。

    更新于 2017-05-26 15:54:23 0 条评论


  • 0

    粑粑一個普通的遊戲玩家

    我觉得避免玩家觉得AI太蠢是看玩家对NPC做了什么事,而NPC给玩家是啥反应。这样反应可以提升玩家对这款游戏的趣味性,反之就是觉得AI很蠢

    发布于 2017-05-25 17:51:44 0 条评论

  • 登录奶牛关账号即可参与讨论

{{question['follower_count']}} 个玩家关注

...

相关元素

相关问题

参加 GameJam 需要提前准备什么?

5人关注 1个回答

作为游戏开发者,如何正确的应对差评?

12人关注 3个回答

在游戏开发中该如何避免风险?

14人关注 5个回答

问题被以下收藏夹收录