是否有推荐的博客或白皮书谈论使RPG游戏中的AI更加真实?(特别是反战。)
我知道必须有一些东西,但是我只发现有关AI背后算法的论文。我正在按照“这就是使计算机对手感到活着的东西”的思路看待更多。冒险,放松,撤退等...
这么多很棒的答案,我希望我可以接受其中几个。感谢大家!
是否有推荐的博客或白皮书谈论使RPG游戏中的AI更加真实?(特别是反战。)
我知道必须有一些东西,但是我只发现有关AI背后算法的论文。我正在按照“这就是使计算机对手感到活着的东西”的思路看待更多。冒险,放松,撤退等...
这么多很棒的答案,我希望我可以接受其中几个。感谢大家!
Answers:
差错 没有什么比能从15英里外爆头或总是选择完美的获胜策略的AI对手更糟糕的了。它打破了沉浸感,使您明显地在玩例行游戏。错误可以使AI看起来更人性化。
许多FPS游戏迫使AI的前几枪错过,并警告玩家该AI在那儿,然后才被击杀。
策略游戏有时可能会选择次优策略,或者在评估威胁时可能会故意忽略某些比例。
我玩过的一款赛车游戏计算了玩家在附近的时间,然后掷骰子使他面前的AI汽车转向不足或转轮胎。它以其逼真的AI受到赞誉。
但是,创建不完美的AI仍然是一个挑战。您必须以令人信服的速度犯下令人信服的错误,而不是一个接一个的做出完美的动作,直到犯下可笑的错误。这可能比玩一个完美的AI还要糟糕。例如,上面赛车AI的程序员花了很多时间来建模汽车转向不足的方式,以及AI产生令人信服的转向不足所需的输入。与往常一样,游戏测试至关重要。
这是一篇很好的文章,介绍了产生此类错误的原因:http : //www.gamasutra.com/view/feature/3947/intelligent_mistakes_how_to_.php
其他人则谈到了人工智能,逻辑,计划以及犯错的重要性。所有这些对于AI的发展都是有益的和有用的。
但是问题是关于什么使计算机对手感到生气,而这是无法通过AI实现的。事实并非如此。玩家不会根据自己的战略级别选择来判断游戏中的角色;他们根据小得多的东西来判断。
为了使计算机对手感到生气,您需要为对手提供一整套高质量的动画和声音(尤其是人声)。玩家看不到AI。他听不到,听不到,也不知道对手在想什么。完全通过角色上播放的动画以及角色所产生的声音(同样主要是声音)向玩家呈现“此角色是活的实体”的外观。
角色对他周围的刺激做出反应很重要;观察附近的事物,触摸附近的物体(适当时这样做),感到惊讶时惊呆,并在适当时表现出其他情感。
在谈论这些事情时,尽量减少重复很重要。如果角色每次攻击时都使用相同的“攻击”动画,那么他永远都不会活着。如果他在不执行任何其他操作时播放单个循环的“空闲”动画,则他将不会感到生气。如果他说两次相同的声音(尤其是连续地)打趣,那打破了关于角色还活着的幻想。
就是这样。如果您要使对手看起来还活着的对手确实出现在您的游戏中,那么您使他们看起来还活着的成功主要取决于显示给玩家的图形和声音。
如果您要使自己看起来像“活着”的对手实际上没有出现在游戏中(例如国际象棋和《星际争霸》中的情况),请随时忽略此答复;最好的选择是遵循以AI为中心的回复。
以下是一些简单的概念,可以使您的对手更加生动:
目的
给玩家某种方式来说明AI的“意图”。这可能很简单,例如让他们在尝试准确的爆头攻击之前大喊“质量胜过质量”,在试图落后于您时大喊“侧翼他”,或者在攻击主角之前大喊“带头,别无所求”。您还可以变得更加复杂,例如,让他们给队友一些手势语,然后改变这些队友的行为。
绝望
随着对手越来越接近死亡,您可以给他们一种绝望的感觉。在某些健康里程碑改变他们的策略。使他们的后期更加惊慌,承担更大的风险(去吃冰雹玛丽,而不是缓慢崩刃)。也在视觉上传达此信息(更夸张的动画,脉动的脉搏等)。
砰地出去。
给他们一个死亡,使与他们的战斗值得重复。咕unt咕animated地跳了起来。老板独白。如果这是一个骄傲的角色,请让他们拒绝给您杀戮,并对自己造成最后的伤害。你得到的漂移。
我确实建议这个Google IO谈论它是关于Google doodle pacman的。在cca 18:00,他们开始谈论吃豆人中鬼魂的性格。多么令人惊讶的是,您可以多么简单地将个性放入简单的路径查找中。
Google I / O 2011:Google吃豆人的秘密:游戏秀
整个视频值得一看。我真的推荐它。
我对这类博客一无所知,但由于战术回合制RPG是我继无赖类游戏之后的第二受欢迎的类型,因此,我将为您写一篇博客文章。从我的经验来看,在RPG或RTS中通常不让我感到战术AI的困难,而是相反:AI完全短视并且没有团队决策。人类永远不会这样玩。
那时,当我仍将JRPG视为游戏设计的巅峰之时,我曾尝试制作“典型的日本TRPG”,重点是基于战术回合制战斗,如《最终幻想战术》。与往常一样,它只是用于寻路和AI的技术演示,因此我将分享有关该主题的想法。
这些TRPG中的大多数对AI的关注并不多。玩家的乐趣不是来自复杂的战术或战略挑战,而是来自一般的耕种和以有趣的方式滥用AI。因此,它们的AI可以做任何人类都不会做的事情,这无关紧要。通常,拥有一个愚蠢的AI并使其与游戏设计保持平衡就足够了,它永远不需要预先看到一个以上的举动,而只使用最佳的短期举动即可。当然,它永远不会真实,但是谁在乎呢?这只是感觉不对,我想相信有可能通过与复杂的AI动作作斗争来创造乐趣,而不是依靠耕种和热轧。可能不必要,也很费时,但是可能。
回顾原始的《最终幻想战术》及其核心Mod FFT 1.3,我为玩AI的人性化和娱乐性设定了以下目标:
我以为我将以突发的行为来应对#1,以不同的性格和类似人的“半随机”策略选择来应对#2,将硬编码降至最低并进行仔细的测试来解决#3。
那么我在说什么这些行为,这是脚本化的一系列使用能力吗?加权列表中的顶级能力?不,我的想法是将所需的智力,性格类型和从当前可用的能力和武器衍生而来的角色结合在一起。您可以将这种组合描述为“愚蠢的狂暴伤害经销商”或“智能防御治疗师”。因此,诸如课程或职业之类的AI专业知识,例如使用弓箭射击带有一些预定义的通用射手能力组合(例如“瞄准”或“箭雨”)的弓箭手AI,在逻辑上出现了,而不是硬编码。
基本上,重要的是要发现并发挥以下作用:损坏经销商,损坏浸泡者,伤残者,小冲突者,治疗者,缓冲/解缓冲,作用区域;通常,一个角色将扮演其中至少两个角色。
为了从中获得战术上的乐趣,我们希望行为能够可靠地处理几种情况:
最简单的情况。许多弱小的妖精伏击了我们的英雄。感知到的威胁是显而易见的,地精会试图压倒玩家,使每个地精都具有愚蠢的疯癫性格和一些原始近战能力,感知到的弱点也很明显,例如将地精引诱到单个装甲和耐火的角色上,然后发射一系列火力基于AoE的广告朝着这个大方向发展。找到伤害浸透者,找到AoE'er,专门针对AoE'er伤害类型使用伤害浸透者,将伤害浸透者发送到地精团块,当小妖精围成一团时施放有害的AoE咒语。
通常情况下测试简单的团队互动。玩家遇到骑士,弓箭手,法师和牧师。现在,可感知的威胁变得更加复杂,可以进行各种交互。您已经可以看到可能的角色及其组合。牧师会buff and heal,法师会吐出复杂但破坏性很高的魔法物品,骑士会向某人收费或捍卫法师,弓箭手会通过狙击那些试图逃离他或使他的防御策略更加严密的人来帮助骑士,这将取决于骑士的选择。敌人的性格可以随机决定,将相同的遭遇变成独特的经历。玩家必须决定当前拥有的单位的最佳策略是什么,如果AI尝试在屏幕的另一侧做同样的事情,那将很有趣。
测试团队互动和战略计划的复杂案例。在一场战斗中,您面对一帮四名刺客(精明的小心伤害发动者+小兵)。数量不多,外表凶险的人,其可感知的威胁在于熟练而致命的攻击,而可感知的劣势在于,仅杀死一个刺客就很容易降低整体实力。因此,他们自然很聪明,他们使用彼此配合良好的能力,并且可以集中射击玩家最危险的角色。重伤者撤退,恢复生命并恢复战斗状态。显然,玩家将尝试首先对其中之一进行核对,而刺客将不得不对这种简单的策略进行反击,因此它将变得不那么占主导地位。
许多策略的确有困难。有几个敌人小队,每个小队长决定最佳的本地战术行动,然后选择最佳的全球战略决策,使所有小队受益。
不可能的情况。添加一名将军来决定一项策略,并让班组长尽最大可能地实施该策略。
已经有很多信件了,所以长话短说,实现是一团糟,我从来没有遇到过“困难的案例”,但是即使那样,这种有趣策略的方法还是可行的。我从FSM开始,但是不得不迅速放弃这种方法,它变成了混乱的状态,并且无法调试过渡。过了一会儿,我选择了基于半自主能力感知的角色,如“感知-思考-行动”范式中的行为树,以针对可能的个人动作,一种基于可能的个人动作影响团队可能的动作的全局策略,也是某些东西的混混版本就像N-Gram的统计预测一样。
这是怎么解决的?出人意料的是,AI甚至多次读了我的思想,但由于有足够多的令人信服的缺陷,我变得疲倦并放弃了它:
我想我的方法充其量是平庸的,即使不是绝对糟糕,而且AI还在不断发展,这是个马车和痛苦,但是即使那样,我还是有一些非常有趣的时间在与它对抗,就像在和一个分心的孩子一起玩一样。还是比战术食人魔好:)
不要总是让它以动作Y来响应动作X。在评估每个潜在动作时,会添加一个随机的软糖因子,因此AI不会总是选择相同的选项,而是会选择合理的选项。
评估攻击是否有合理的机会成功或至少造成有意义的伤害。太多的游戏只是编写了脚本化的攻击路线,人们可以学习并使用它们反复伏击AI。
我看到的很多建议是让AI以某种方式与玩家交流其“想法”。通常在第一人称射击游戏中,是让敌人(不切实际地)向玩家大喊他们的计划(例如“向他开枪!”,“他在那!”等等)。
归根结底,玩家知道他们正在与AI对抗,因此AI在没有事先通知玩家的情况下所做的任何聪明事都可以被视为作弊而被驳回。
通常,我们会想到“我们如何创建AI?”
这跳过了一个大问题,“什么是AI?”
我几年前观看了TED.com的演讲,它分享了一种非常有启发性的方法来定义人工智能。
如果您希望您的玩家感觉到敌人是“聪明的”,那么这将提供一个高级答案,从本质上讲是一种全新的思考人工智能的方式,即“预测能力”
http://www.ted.com/talks/jeff_hawkins_on_how_brain_science_will_change_computing.html
对我来说,“感觉活着”意味着角色扮演的角色与您在现实生活中的想法一样。
现实生活中的人们有需求,动机,恐惧和缺陷。他们会说话,如果是一群人,他们会互相反应,他们逃避是因为他们关心自己的生命。
如果他们是军事或训练有素的,他们有战术。
因此,也许您应该检查人类行为领域,而不是计算机科学领域。