制作秘密无竞争的游戏AI是否不道德?


121

在几款游戏中,AI旨在让玩家在不了解的情况下获得轻松的时光。第一次出现时可能有0%的几率被击中,敌人让您不转身就可以潜入它们,或者当玩家受伤或重新启动几次后降低难度。

如果在棋盘游戏或运动结束时被告知人类没有尽最大努力,我会感到不高兴。

人工智能是否存在相同的道德规范?

编辑就像标题一样,我主要关心的是玩家看不见障碍,例如,在玩射击游戏时,可以合理地期望玩家知道AI具有虚假的反应时间和较差的目标,但是我的问题是关于隐藏一些东西,例如敌人没有使用最好的武器,或者在玩家被保险后降低了他们的难度。


14
我觉得罗恩·吉尔伯特(Ron Gilbert)的1989年《 为什么冒险游戏》很有趣,即使您使用的是另一类游戏。的原则,例如"the object of these games is to have fun""the player needs to know that she is achieving""as a rule, adventure games should be able to be played from beginning to end without "dying" or saving the game if the player is very careful and very observant"应该非常适用于设计认可-包括那些“让”的玩家获胜。
Tobia Tesan '17

35
“如果在棋盘游戏或体育运动结束时,我被告知人类没有尽最大努力,我会被冒犯。” 但这仅适用于力量大致相等的对手。人工智能和人类是如此不同,很难比较。让我们下棋。如果我得罪了,每当计算机象棋算法没有尽最大努力时,我都会每一次都输掉。
Trilarion

17
您应该重新考虑哪个答案才是好答案...
Olivier Dulac

5
大多数AI都不容易被击败。例如,为什么马里奥的敌人会有预设的移动方式?这使它们更容易被击败!作为一名球员,对我而言,关键不在于我是否击败了最艰难的人工智能。这是我是否受到足够的挑战,以及我是否仍然可以获胜。如果挑战太小或太大,那就不再有趣了。
jpaugh

3
它不完全是AI,但是在原始的Minesweeper(以及之后的大多数/所有版本)中,只有您单击第一个方块之后才生成地雷。这实际上使您不可能在首次尝试时单击地雷。我认为这是良好游戏设计理念的完美体现。第一次单击后,如果您单击一个地雷,则会输掉游戏。但是,在您无法采取任何措施之前,先失去一次点击根本就不好玩。无论乐趣来自于极限挑战还是其他来源(例如故事),您的头等大事应该始终是玩家的享受。
CGriffin

Answers:


42

您想用AI完成什么?

如果您的游戏试图讲故事,那么调整AI以使您获得要讲的故事是合理的。

如果您希望玩家从克服障碍或击败对手中获得成就感,那么让控制AI投掷游戏就可以避免这种情况-您需要AI真正成为它所呈现的威胁。


24
尽管对于许多棋盘游戏来说,您几乎都需要掌握AI,但是如果您现在不插入一些人为错误,那么它们将是无与伦比的。
立方

19
优秀的国际象棋AI已超越特级大师20多年了。自2年前以来,围棋机器人就已经超越了“普通”专业水平,我相信自那时以来,围棋机器人也有所进步,更不用说相对简单的游戏了,例如Reversi,人类玩家在这种游戏中已经有近40年没有竞争了。最近,甚至像《反恐精英》或《星际争霸2》之类的动作游戏也都具有专业水平的机器人。是的,这是您应该考虑的问题。
立方

5
@Cubic:象棋和围棋之类的游戏是很少见的例外。如果您想发布波多黎各之类的流行策略游戏的仿制产品,或者您要发布自己的全新TBS,则不会在游戏中包含现成的专家级AI,而您不太可能写一个。哎呀,即使有国际象棋,如果您编写自己的AI,您也可能不会击败专家。
排除和冒犯

9
编写自己的AI?那是缺少重点。国际象棋很可能是人类写出击败人类的AI的最后一场比赛。AlphaGo基于强化学习,因此没有理由认为RL不适合其他棋盘游戏。
MSalters

3
@MSalters:如果AI的最新进展将带入一个世界,人们可以轻松制作出出色的游戏AI,那就太好了。但这不是我们现在生活中的用词。而且,在IIRC中,人们在AI的最后六打突破中说的都是一样的。
排除和冒犯

240

游戏AI几乎总是非竞争性的,因为如果AI确实尽最大努力赢得胜利,那么它通常将是无与伦比的。AI不受限于反射,准确性,感知,疲劳或计算能力等人类限制。因此,当赢得胜利时,没有人会机会。

让我们以第一人称射击游戏类型为例。这个答案大部分应该适用于大多数其他类型。也有例外。例如,AI在击败非常复杂的战略游戏时很难击败人类。许多实时和基于回合的4X策略游戏都作弊很多,以使AI玩家具有挑战性。但是,涵盖每种游戏类型都会使答案的范围太大。因此,让我们关注FPS类型。

完美玩法的AI会在第一帧中以您的角色可见单个像素的情况下以完美的精度拍摄您。与作弊者对战时,有时您会在多人游戏中遇到这种情况。他们被称为瞄准机器人,没有人喜欢与他们对战,因为这非常令人沮丧。

但是,实际上,这样一种完美瞄准的AI是最容易编程的AI:

if (lineIsUnobstructed (this.position, player.position)) {
     rotateTowards (player.position);
     shoot();
}

因此,完美玩法是默认行为。人为的弱点,如注意力不集中,感知受限,反应迟钝和瞄准不准确,是您作为游戏开发人员需要故意进行编程的事情。而且您通常需要花费很长时间来调整这些方面,直到敌人的举止既有道理又能为玩家提供适当数量的挑战。“适量的挑战”有多少挑战?非常有趣的问题,但不在此问题的范围内。

还请记住,出于叙述的原因,大多数单人游戏本质上都是不对称的。玩家和AI对手通常没有相同的目标,拥有不同的可用工具,甚至往往不受相同的游戏机制约束。单个玩家角色在一个关卡中面对数十个或数百个对手的情况并不少见。当每个对手都和球员一样出色时,这将是不可能的。但是大多数游戏都在出售权力幻想。该玩家应该是一个坏蛋动作英雄,可以单枪匹马击败一支小部队。这通常是玩家购买第一人称射击游戏时所期望的体验。这意味着为了给玩家一个“公平”的挑战,您需要使单个敌人相对虚弱和愚蠢。

现在,关于“玩家输了时我应该让游戏变得更轻松吗?”这个问题。。也许吧,也许不是。当许多玩家在挑战赛中屡屡失败后,确实确实感到自负,然后突然变得轻松多了,挑战就消失了。因此,您可能想避免这种情况,至少不问玩家是否需要帮助。

但是许多游戏都非常成功地运用了一种叫做橡皮筋的技术根据玩家过去的成功情况来调整未来的遭遇难度。有时,您甚至可以在游戏虚构中自然地做到这一点。


5
AI确实做到了“尝试最难获胜”,但只能达到其编程设定的水平。一个6岁的打袜子的人可能会“尽力而为”,但不会打败更高级的球员。我可以对AI进行编程以模拟松鼠,并且它可以完美地表现为(作为松鼠),但无法在国际象棋上击败您。这不会使AI失败。
Tim Holt

2
您可以在难度设置菜单中选择“自适应难度”复选框。您可以让玩家配置一定范围的难度,这样它就不会完全适应性强,如果他们玩得足够好,玩家也不会总是开始输钱。
彼得·科德斯

3
@TimHolt我认为编程最好的AI(即真正努力争取在计算上可行的AI的AI)与笨拙的AI(仍在尽力而为)(这是一台计算机)之间是有区别的,但不一定赢。
Nic Hartley

8
我认为,关于“尝试”人工智能的含义的语义论点毫无意义且毫无意义。很明显,在上下文中正确的解释是什么,而重点就在于该解释。对已经使用的OP重新赋予单词含义只会导致对单词含义的争论(在这种情况下,就是口语化),而不是真正具有洞察力的内容。
AlexanderJ93年

9
@ AlexanderJ93我不知道。诺维格经典教科书的第2章明确提到,为智能代理定义性能度量是非可选的,即代理需要最大化的性能。显然,在游戏中您想要最大化的是:fun
Tobia Tesan '17

46

游戏的AI是游戏整体设计的一部分。最终,您创建的AI需要补充游戏设计。

如果您的游戏旨在创造具有挑战性的竞争环境,那么“完美”的AI可能是一件好事。同时,您必须考虑一些非常重要的事情:

人类不是计算机

即使没有作弊,在许多竞争性游戏中,制作可以毫不费力地击败任何人的AI也不难。人工智能不必读取玩家输入即可拥有比任何人都更快的反应时间。如果玩家采取的动作具有任何视觉暗示,则AI有权根据您的“尽其所能”规则,使用微小的视觉差异来对正在发生的事情做出完美反应。

为了使这项工作有效,您必须更改游戏本身的性质。对于人与人的游戏,由于考虑了人的反应时间,因此可能使所有用于快速攻击的预告动画看起来都非常不同。但是对于计算机来说,这样的游戏非常容易。他们可以立即做出完美反应。

因此,在格斗游戏中,如果一台完美的计算机能够快速移动,并且您用比帧移动更多帧的任何东西进行攻击,则计算机会击中您。这是一个复杂的猜谜游戏,玩家必须预测彼此的动作,这会变成输给计算机的人类。

如果您想要拥有完美的AI,则需要构建一款可以使AI完美发挥且仍然失败的游戏。这不是一件容易的事,而且在很多类型中都行不通。这只有在AI必须做出反应但没有足够时间来做出反应的情况下才会发生。就像RTS游戏中存在隐藏的信息。真正的完美比赛需要完美的知识,但这是无法实现的。因此,计算机将必须满足“就我所知,完美发挥”的条件。因此,它可以被愚弄。

但是即使在这样的游戏中,计算机的速度也使它们在任何容易理解的信息情况下都具有优势。它们可以完美地微化,将每个单元定位到最大效果。依此类推。

基本上,大多数为人类制作的游戏都是为人类制作的,而不是为计算机制作的。

这不是“道德”问题。这是关于游戏是为谁制作的,以及AI对手的目的是什么的问题。


4
如果AI可以完美发挥并且仍然会失败,那么完美发挥的人也可能会失败。那也不理想。而是,您想要一款具有足够复杂性和/或隐藏信息的游戏,以至于无法确定或不切实际的策略。这就是为什么直到最近人们仍然在国际象棋和围棋上击败计算机的原因。计算机无法完全分析所有可能的移动,因此必须依靠启发法,就像人类依赖直觉一样。

3
@Ray:“ 如果AI能够完美发挥并且仍然失败,那么一个完美发挥的人也可能会失败。这也不理想。 ”“完美”在这里是“在所讨论的游戏范围内”。我以RTS为例,因为该类型经常使用《战争迷雾》,这会使您一无所知。没有完善的知识,就无法拥有真正的完美游戏。您只能在自己了解的范围内进行“完美”的演奏。
Nicol Bolas

2
@Ray也许十年前是正确的,但现在情况并非如此:我们已经为所有7件及更少的残局预先计算了解决方案表。一旦少于8件,那170TB表中的某处就会有明显的最佳移动。
TemporalWolf

3
策略游戏的AI比“据我所知完美”差得多。是的,他们拥有完美的微观技巧,这对大多数玩家来说都是一个巨大的挑战,但是他们也非常灵活地对待自己的剧本,并且对非常规的策略反应不佳。例如,在《魔兽争霸3》中,您可以用一个工人击败最难的AI,因为AI根本无法应付塔楼袭击。它不理会建造塔的工人,直到为时已晚,然后继续浪费自己的部队与那些塔,而不是占领敌方基地。
杜尔坎

6
这非常。作为轶事,我和我的朋友们在几台计算机上毫无问题地玩着RTS(国家崛起)。然后我的朋友修改了它,使人口上限从200增至2000,即使是3个人对1台计算机,同一台计算机也将我们杀了。我们人类一次控制更多单位的收益越来越少,而计算机却没有。
法夸德勋爵(Lord Farquaad)

26

作为序言,我将把道德与作弊联系起来。如果您被骗了,您会感到不道德的事情发生了。

简而言之,要使您的AI行为可接受,请使其模仿的行为可信。人们不会被可信的行为所欺骗,而是会被难以置信/不切实际的行为所欺骗。如此可信,您就不会有道德问题。

另外,在考虑您的问题时,请查看AI的含义:这是人工IntelliGENCE而非人工IntelliGENT。智力是获得和应用知识和技能的能力。智能是通常具有高智能的东西。换句话说,仅仅因为某物具有智能并不意味着它是智能的。松鼠具有智能,但是(按人类标准)它不是智能的。

最后,将AI与实际游戏机制分开做出决策,并且不要让AI违反规则。最后一点可能很难解释,因此这里是一个示例...

枪支与AI的范例

您的AI并不是在模拟枪支及其发射方式,而是在模拟枪支背后的思维(或机器)。

枪支本身是由代码管理的,该代码通过考虑射程,武器精度,距离上的分布图案,射手的姿势,射手是否在移动,射手的技能等来计算射门是否命中。它是在模拟机械和物理现实。如果这样做,则会破坏可信度。

但是拿着枪的东西呢?由AI管理。它对喷枪的实际工作方式没有影响。仅使用枪支。

因此,考虑到枪支的已知行为,请问自己为什么 AI在第一次射击时可能会错过。然后,使您的AI行为反映出会导致第一次失手的原因。是因为它模拟了一个低技能的对手,他从臀部开火而没有瞄准?是因为AI在移动时出于恐慌射击了第一枪吗?是因为对手的武器质量低下吗?是因为对手还有很长的路要走吗?

如果您的AI模拟了这类“为什么”的事情,那么您已经创建了一个AI,它在射击和错过时表现良好。没有人会被这种AI欺骗。

枪支场景和AI示例

考虑一个您偷偷摸摸并使AI对手感到惊讶的场景。当他们向后奔跑时,它们会突然跳起来向你开火-因此,基本上,你的射击代码将使他们击中第一杆的机会很小。假设玩家知道是什么原因导致投篮不准确,他们会认为这种失误非常可信且可以接受。

但是如果您愿意,AI可能会说:“好吧,我需要增加击中的几率。我该怎么做...好吧,我可以停止移动。我可以蹲下。我可以用瞄准具瞄准我的武器,而不是从瞄准具射击臀部。” 然后,AI开始改变其发射方式,对手开始变得更好。那就是智能向智能迈进。

当然,那个对手非常聪明的版本不会惊慌,并且会立即采取最有效的行动。他们可能很快就跪下来瞄准目标,并大大增加了击球的机会。

枪支和AI示例摘要/结论

基本上,这是针对涉及射击的AI而言,AI的“技能水平”围绕着它能以多快的速度来尽一切可能来优化其准确性。SUPER哑巴AI永远不会弄清楚它,在跑步和移动时总是从臀部射击。更智能的AI越来越多地优化准确性。真正智能的AI会立即尽其所能来优化准确性。


19

是。AI应该保持在其设定的水平。

国际象棋AI每次都会击败我们所有人,这取决于我们将其调整到我们认为令人愉悦的事物。我永远不会希望AI在看到自己要赢时会愚弄自己,或者弹出窗口说“ 25岁以下的队友,你希望我在国际象棋比赛中表现得更好吗?”。只是打我,直到我厌倦了超越我的水平。

别以为让对手全力以赴与AI无关。


10
@ mr23ceec Chess比文明之类的回合制策略游戏复杂得多,引入的变量越多,人工智能竞争就越困难。当您引入建筑物,技术,单元组合,地图位置等内容时,对于一个想法(它只能遵循预编程的脚本)来说,处理起来实在太多了。oyu在国际象棋中有什么?64个空格,6个不同的片段并定义了运动模式。在《文明》中,十转后还会继续发生。我从未听说过您提到的一般游戏,也没有Google对此找到任何信息。介意分享链接?
杜尔坎

1
让我想起了马克·罗斯沃特(Mark Rosewater)从坑里出来的故事:i.imgur.com/AvQrRTO.jpg
corsiKa

3
我不太明白这个答案。您似乎在说动态困难AI是不道德的,应该解决AI困难。固定难度不一定是最佳的,但是仍然应该有不同的难度预设。这只是变成一个手动校准过程,以找出我应该将ChessBot AI设置为多高的水平,以给我带来挑战,但仍然有获胜的机会。为什么自动调整难度不如手动调整理想?这样会更准确,也不会那么乏味。
核王

2
非常同意这个答案。秘密地改变AI的难度就是欺骗,这是不道德的。如果玩家选择难度7,他应该总是会获得难度7。同样,这个答案与动态难度也不矛盾。如果玩家按照方法X选择了动态难度,那么他应该总是得到并且只有那个。我要购买的产品我想成为控制我购买的产品的人。
何塞·安东尼奥·杜拉·奥尔莫斯

1
可能值得注意的一件事是,国际象棋基本上是一种“对称”游戏。机械上,国际象棋AI扮演着与人类玩家相同的角色。这对我们对人工智能的期望产生了影响。
排除和冒犯

12

我会说不。对我来说,游戏是最重要的娱乐产品。他们想为特定的受众提供一种体验。因此,这一切都取决于您想要获得什么样的体验以及要针对哪些受众。以像Cuphead这样的新游戏为例。这款游戏是为希望游戏变得艰难而无情的人而制作的。如果游戏死了X次(直到现在我已经死了255次),然后又哑了下来,那么这种类型的玩家就会感到难过。然后,自动降低休闲玩家的难度可能会帮助他们在游戏中取得进步,并通常会有更好的时间。因此,结论是:“了解您的听众”。


7
我玩一些挑战游戏。我玩一些沉浸式故事的游戏并克服挑战。有些游戏我都想要。
韦恩·维尔纳

即使在Cuphead中,敌人也不会专注于跟踪您并专门杀死您。相反,它们以您可以记住的可预测模式进行攻击。
凯西

11

尝试与您的约会对象或孩子一起参加一项体育运动。在这两种情况下,您可能最终都独自玩了这项运动,因为您没有为他们取乐。

人工智能一词有点误导。默认情况下,AI由完全了解规则和游戏状态的计算机运行,因此AI会确切知道该怎么做以及何时打败玩家。

这不好玩。

AI 的智能部分必须变得愚蠢,足以向玩家挑战并保持他们的游戏状态。

这是一个挑战,这就是游戏设计师存在的原因。


您可以与孩子们竞争,他们不会在您玩的游戏中投票。
PStag

3
@PStag同意,这样做有正确的方法,而且有错误的方法。我不会与孩子们尽力而为:)
亚历山大·瓦兰科特

9

最终,人工智能的作用是帮助产生值得一提的,有意义的体验。伊恩·莱恩·戴维斯(Ian Lane Davis)博士在一些访谈中谈到了这一点,即人工智能的作用令人信服地失去了。PCAuthority访谈(您提到的机制是游戏的说服力不强的示例,而是选择了一种廉价,简便的方法为玩家赢得胜利。)

来自同一次采访:

您的AI对手就像聪明的代理人一样,是戏剧和紧张的工具。

在电影,书籍,电视节目中,作为观众,我们想要的是与主角抗争的机会,但只是到了某一点。然后,我们希望好人获胜。敌人越接近胜利,收益就越大。

目标始终是娱乐。


1
这整个问题使我联想到原始的《半条命》。他们继续大声交流,并透露自己的“计划”(在玩家侧翼等),这在当时使玩家对高级AI印象深刻,而实际上,这是非常愚蠢的。:)
JanErikGunnar

9

您的AI的目标不应该是取胜,而应该是提供令人愉悦的游戏。这种享受的一部分在于受到挑战。我在拼字游戏中的处理方法有两个方面:首先,针对符合人类词汇水平的戏剧。在几款游戏中,等级匹配会有所改善,但您也可以在早期的游戏中对飞行进行很好的估计。在Scrabble中,您将需要一个按阅读年龄分类的词典,尽管作为后备,使用大语料库确定使用的单词频率是一个合理的近似值。其次,使用最初模仿人类的游戏结构-例如,与偶然的人类玩家相比,计算机通常会进行更多的并行游戏(我假设我们不是在玩世界级的专家)。但是,随着针对特定对手的经验增加,然后,您开始使用一些不使用它们的技巧,但是他们偶尔会使用,目的是为人类提供一个模仿和改善自己的游戏的范例。

您的AI成功与否取决于人类返回复赛的频率。您对代码的满意度应该来自于它如何像人一样而不是像机器一样玩。这可以通过设置在线竞赛来进行测试,其中人类不知道他们是在玩其他人类还是在玩机器。(有限的图灵测试)

我一直将这种编码方式称为“人为愚蠢”,而不是AI :)

我完全不认为这是不道德的。相反,我认为使用计算机算法的全部资源来击败人类是不道德的-就像使用计算机在线玩Scrabble来找到得分最高的游戏一样。

“简化”算法的另一种方法是在AI播放器的功能上设置真正的人为限制-再次以Scrabble为例,而不是提供固定的词汇量,您可以让AI播放器通过阅读互联网来学习其词汇量文章,您可能会限制它的存储容量,以便它必须仔细选择哪些单词值得记住。绝对没有不道德的问题,它达到了使游戏更具人性化的目的-例如,消除了计算机的优势,即完全了解哪些单词是有效的词典单词以及哪些单词在被人类对手演奏时应该受到挑战。


5

为何需要愚弄计算机对手有几个原因。

Philipp已经提到了保持乐趣的部分,但是另一个值得一提的是平衡计算机对手的不公平优势。

我们无法制作出像玩家一样玩的真正AI。我们今天面对的计算机对手(即使被称为AI)也没有像人类一样分析渲染的游戏图像来寻找要拍摄的东西。他们也不必在桌子表面上移动物理对象来指示需要转动。

实际上,大多数计算机对手都对他们有利。他们知道每个玩家的确切位置,他们的身高,该敌人类型/角色模型的理想爆破点所在,拥有枪支,他们只能告诉“在此坐标处射击”,这是准确的命中率,等等。为了使游戏公平,您现在必须近似人类的局限性。

因此,“哑巴”的很大一部分对于简单地为按不同规则进行比赛的对手创造公平的游戏是必要的。

如果您已经这样做了,那么这只是一小步,可以应用更多的修改以增强叙事效果,并使事情更具娱乐性。

另一方面是大多数游戏运行的时间表加快。在长达四个小时的比赛中,您是狙击手。学习如何精确地射击枪需要更长的时间。在森林中追踪动物所花费的时间比花费的时间更长。一款出色的游戏可以在使游戏变得微不足道的情况和必须参加多年的警察学院之间找到适当的平衡。

因此,取决于这些选择是否合适,取决于游戏的对象和对象。例如,许多大型游戏确实不是单一游戏。他们将更多的游戏合并为一个游戏,以吸引尽可能广泛的受众,并赚取足够的钱来收回专业表演/配音,有声,记分和质感游戏的巨额前期成本。

因此,您将拥有想要与其他玩家竞争的玩家,他们只关心战斗机制。有些人只想体验一个互动的故事,发现他们之间的战斗比较繁琐,还有一些人主要是在寻找手工游戏或资源管理或贸易模拟。

要在这里找到最佳位置,您必须为每种类型的玩家提供挑战,但还必须保持足够的简单性,以使其他玩家类型可以忽略那些(对他们而言)不良的机制,或者在完成游戏时完成游戏在他们身上不好。

在单人游戏中,这通常是通过允许以一种技艺高超的技工来弥补另一名技工的赤字(即制作出超凡的装甲并使战斗变得更容易),或者通过设置难度来打开/关闭让您讨厌的零件。

在多人游戏中,这实际上是不可能的,因此您需要匹配具有类似等级/装备的玩家,并为整个比赛调整难度。

但是,这些都是“超越表格”的技巧。每个玩家都会获得“秘密双重伤害的最后一颗子弹”,并且可以利用它。大多数人对“ 50%命中率”的可能性确实是错误的直觉理解是错误的,他们将通过告诉他们将百分比“翻译”为他们的“语言”来帮助他们。如您所说,关于“秘密”把戏是什么?

好吧,如果一个游戏像国际象棋,并且被告知一套规则,但实际上那些规则是谎言,那将是欺骗。

但是,我最近在阅读过有关游戏开发人员使您感觉更好的技巧的文章中,没有一款游戏真的是那样的。大多数游戏都是讲故事的游戏,或者以唤起某种情绪或感觉而闻名的游戏。在这种情况下,显示100%在数学上正确的健康条会使游戏变得不那么令人兴奋。

这就像一个魔术:玩家期望得到一种幻觉,所以我认为将其给予他们是公平的。这也像魔术一样,因为有些人仍然想相信存在真正的魔术,并且在发现魔术之后会感到失望。


4

当人类的对手没有尽最大的努力时,您会被冒犯,因为它居高临下。AI不能屈服,但您可能会认为AI的开发人员可以。但是这里有两个区别:

  1. 除非开发人员需要深度学习才能使AI匹配人类,否则开发人员和玩家永远不可能平等地匹配,除非开发人员需要深度学习才能使AI匹配人类。在这种情况下,AI总是尽最大努力。
  2. 除非开发人员只为您制作游戏,否则他们会迎合许多玩家(通常是某些类型的玩家),因此无法对您的个人技能水平做出假设。

这也适用于关卡设计。您可能会认为,如果开发人员以明显的提示让您满意,那是屈服的,但这只会使游戏变得无聊。同样,如果很难,需要毫秒级的反射,那么它可能会令人沮丧,令人无聊。

它减少到人类之间总是存在的同一问题。如果您参加了一项名为“婴儿足球”的运动,那么您就不会因为游戏的发明者而特别冒犯您,因此不会被游戏的发明者冒犯。同样,“炮兵足球”在相反的方向上也一样。

要使攻击等同于IMO,就必须有人类参与,例如,让您获胜的多人游戏对手。


4

在创建游戏时,您想要的是创造一种体验,而不是在技术上/机械上“公平”的AI。

在某些游戏中,如果玩家的健康状况很差,他们的命中率就会比平常高出几倍。该技工被有意实施,以创造在战斗中幸存下来的体验。游戏设计师希望您有一个肾上腺素激增,即使您受到的打击比您应有的要多一两个。在游戏中实现类似的东西绝对不道德。

相同的概念通​​常适用于AI。您可以设计游戏规则,但更重要的是,您可以完全控制体验。如果使AI忽略了您附近的运动或使他们错过了前几枪而改善了游戏体验,那么请务必使其无罪。

如果您的游戏前提/设计围绕无情的AI进行,那么您将需要确保这对玩家来说是一种有趣而积极的体验。如果不是这样,您可以调整其他机制以使其更具吸引力。我能想到的一些例子是为玩家提供优于AI的其他优势,例如更健康,更快,更强的伤害或更好的武器装备。这些将弥补无情的AI和玩家之间的技能差距。


4

你需要退后一步,寻求目的

在比赛中,目的是找出谁更好。这就是为什么不尽力而为是与提高性能的药物一样的作弊方式:它破坏了目标。

电脑游戏中AI的目的是娱乐和挑战玩家。完美的AI会让玩家觉得自己确实完成了某件事,因此应该感到困难。这可以通过调整难度级别以使其恰到好处来实现 -不太容易,也不太难。或是通过作弊,通过使AI具有适应性,或通过许多我们不知道的技巧而知道。

这里没有道德问题。播放器与使用CGI或舞台魔术师一起观看电影时所受的欺骗一样多。他希望这款游戏能够使他开心,并且即使它的某些细节并不完全诚实,只要它能交付,就不会有人被欺骗。但是魔术师和电影都不是。


4

不,这既不道德,也没有必要

实际上,这里没有“道德”,只是有趣。

就是说,在理想的世界中,完全没有必要使其完全没有竞争力。为AI提供与玩家完全相同的工具。这意味着游戏代码中的清晰分隔。例如,它应该不了解您作为人类无法知道的项目/演员的任何信息。

然后为您的AI编写代码,以便像人类玩家一样见证它,从而推断出它需要了解的有关当前情况的一切。人工智能应该对自己所看到的内容做出自己的内部世界表示。令人费解的是,在某些时候您必须做出补偿,即AI必须对模拟UI中的某些文本表示进行OCR并不明智。但是,应该让它“仅”看到您作为人类也可以通过用户界面看到的与游戏中实体有关的事实,这应该很简单。

显然,AI只能向您的实体提供相同的命令,并且在任何其他方面也必须遵守相同的规则。理想情况下,您将通过游戏客户端也使用的相同网络代码来运行它(附加的限制是您确保它不会“了解”您的(以人类为目标的)客户端通过网络交付的内容,但尚未通过用户界面显示。

我向您保证,这将使AI变得足够复杂,以至于使它变得愚蠢是您最小的问题。如果你设法它程序,以便它可以以一种有意义的方式打球,这可能感觉真棒。

这还将为您提供将AI调整到对玩家而言有趣的水平的所有工具。给它一个人为的反应时间,使其忘记或误记信息(例如,对其“记住的”值进行轻微的混淆或随机抖动)。对抗会产生现实错误的AI可以解决您的问题,因为AI可以非常有竞争力,并且通过错误仍然可以克服。

许多年前,我在游戏《 Angband》(Nethack风格的Moria的后裔)中曾经见过这种方法。由于该游戏是单人游戏,因此它不是与人类对战的AI,而是模拟人类对战的AI 。那时的维护者(如果我没记错的话,是“ Ben” soandso)实际上是按照我的描述进行的;他在AI的第二个数据集中模拟了实际游戏的整个数据结构。AI仅“知道”它实际见证过的事物(包括怪物属性等)。非常令人印象深刻。

不用说,我再也没有见过这样的方法,至少没有使我能认出它-任何计算机游戏中的所有“ AI”总是愚蠢和愚蠢,可预测,规则非常明显,强制执行作弊给对手一个机会,更糟的是。

TL; DR:在理想世界中,不应出现此问题;在现实世界中,获得有趣的AI来工作对程序员来说是足够的挑战。


2

本质上,作为对手的AI的绝对质量实际上取决于游戏的类型,开发游戏内AI所花费的时间以及AI背后的CPU功率/分配周期。

在像Chess这样的简单棋盘游戏上,家用计算机驱动的AI总是会取胜,因为它可以比人类以往任何时候都更好地处理动作,并且这样做的算法是众所周知的。

分别在街机射击游戏(大多数FPS游戏)上,AI可以具有完美的瞄准(假定诸如弹丸速度>>>玩家速度之类的东西)和完美的“视觉”,在这种情况下,您还可能遇到AI只会消失的情况假设游戏中的资源甚至位于AI与玩家之间,那么玩家便退出了游戏。另一方面,例如,将视觉识别插入FPS AI中,您很快就会遇到实际的处理问题,而玩家突然成为最爱(目前!)。

在RTS上,无论是否遵循规则,运行在普通PC上的AI都可以是优劣。游戏的复杂性决定了平衡AI是否需要障碍,或者是否必须“欺骗”才能提供不错的挑战。“复杂的棋盘游戏”(基于回合的战略游戏,例如《文明》,但也可以[在家用PC上使用一段时间])和某些其他类型的游戏,例如飞行和赛车模拟器,也是如此,在这些类型中,人工智能的优势–几乎可以即时反应时间,出色的数字处理能力,完美的记忆力以及对周围环境的全面了解–可能会因游戏机制的复杂性而黯然失色。

事实是,在类似于人为限制的家用计算机上运行的具有公平竞争性的Standard-Game-AI(例如,AI看到/听到了您会看到/听到的东西)几乎总是会超越简单的棋盘游戏而输给玩家(目前) !)。另一方面,简化规则,添加额外的游戏知识(例如,AI始终知道周围的环境,包括您所在的位置),紧缩力和AI的开发时间,人类最终可能会输掉游戏。

总的来说,我认为道德问题是无关紧要的,并且具有误导性。与AI玩电脑游戏的目的不是赢或输,而是享受体验。为此,就平衡而言,添加AI /玩家障碍/奖金通常比制作不同级别的AI容易得多。


2

来自维基词典:

人非圣贤孰能

对我而言,适当的游戏AI的最理想(也是最难实现)特征之一就是能够像我们(人类)一样犯错误。

因为我们做错了,默认情况下。默认情况下,AI不会。为游戏AI赋予这种固有的人类“品质”将大大有助于消除被“欺骗”的感觉(无论是赢还是输)。

这也将是一个合适的AI要通过图灵测试就需要掌握的特质:如果无法显示出“制造”人类的“能力”(或类似人的错误。


2

敌方AI为您提供了更多简便方法。

命中动画后嘲讽动画。这使玩家可以完成眩晕动画并为自己的攻击做好准备。关闭嘲讽然后使玩家昏迷非常容易。

反复使用可以抵抗的攻击(或躲避并让敌人敞开,以免造成伤害)。在cr脚的掩护射击者中,这是敌人从掩体中出来让你击中它们的方法。竞争情报不会选择这类攻击。可以用plot固定它。

电报移动(结束),以便玩家有机会做出反应。此结束动画是难度缩放的非常重要的部分,尤其是在基于反应的战斗中。

使敌人难以对抗很容易。但是很难使它成为具有挑战性却又有趣的敌人。部分原因是使敌人做出愚蠢的举动,并让玩家完全获胜。


2

不,通常不是这样-作为游戏开发人员,您正在设计一种交互式体验,而AI的行为方式取决于您尝试创建的体验类型。作为一个反例,考虑你是能够实现的AI,这将是所处的环境无与伦比任何地球上的人类。你应该做吗?“笨拙” AI以使游戏真正可玩是否不道德?不道德的事情是利用您的球员;但这-这只是通常的游戏设计。
让我为您打开一罐蠕虫:请访问此Twitter线程

PS注意,不过,有些游戏玩家不会以这种方式看到事物。他们甚至可能会生气。但这源于他们对游戏开发和AI工作方式的误解。这不会使这种做法不道德。


1

我会说这取决于玩家。

就我个人而言,我习惯于使机器人变得更加愚蠢或不熟练(有时甚至兼而有之)。对于我来说,很难记住一个机器人遇到“公平”困难的游戏,而且我不希望它们如此,因为我知道它们的局限性。

如果游戏足够流行,最后还会注意到许多这样的“调整”。

我想告诉玩家“难度改变”还是更好的,而且我知道这样做的游戏。


0

由您的问题编辑所激发的替代答案更多是关于设计的。

您在编辑中说过...

...我的主要关注点是让障碍物对玩家隐藏,例如,在玩射击游戏时,可以合理地期望玩家知道AI具有虚假的反应时间和较差的目标,但是我的问题是关于隐藏诸如此类的东西的游戏当玩家被保险时,他们不会使用最好的武器或降低难度。

真正的问题在这里

这里真正的问题是关于设计,而不是道德。错误的设计正在使某些东西看起来“不道德”。您正在尝试解决的问题是平衡玩家技能与对手的游戏挑战。

一款游戏故意“阻碍”了要与玩家技能保持平衡的挑战,采取了过于简单的设计方法来试图平衡玩家技能和对手的挑战。因此,这样做并非不道德,这只是一个糟糕的设计。

假设玩家遇到了一个强大的大对手,对他们来说太难了。这意味着,要么玩家已经深入游戏中的某个区域,对他们来说就算太多(想想卡萨多雷斯,如果您从《辐射:内华达州》的《 Goodsprings》中北上时),或者设计师在知道了对手之后就将其与挑战者抗衡播放器尚未准备好。

您如何从设计角度解决这个问题?简单。您不会让玩家面对对他们来说太难的对手。您可以在对手之间设计明显的区分,而区分的一部分就是对手的技能。而且您可以使游戏不断进步,以至于玩家很难(但并非不可能)过快地超越他们的头脑。

这基本上就是Flow在游戏设计中的全部思想。

三个食人魔的例子

想象一下,您的游戏中有3种食人魔:一个有点弱的食人魔,会用棍子向您挥舞;一个中等级别的食人魔,它的树枝较大;以及一个大食人魔的人,有着一个大木棍。

如果您是新手,没有获得新的生命值,盔甲等,小食人魔将不得不击中您4-5次才能杀死您。但是,一旦您达到更高的水平,他就很难对您做任何事情。

中级食人魔可以1-2次击杀初学者,但是如果您是高级,则需要4-5。

巨大的食人魔可以一击就杀死您,但如果您的等级更高,则可以杀死4-5。

所有食人魔总是确定它们是否以相同的方式命中。他们如何确定自己是否命中永远不会改变。没有人为的低(或高)反应时间,也没有人为的低(或高)损害。他们就是他们。

解决方案

如果玩家的等级较低,则只能将它们置于食人魔之下。也许时不时给他们一个中级食人魔作为挑战。或一起几个食人魔。切勿将它们与巨大的小食人魔,多种媒介或巨人对抗,因为它们会死。

如果它们是中级,则将它们与中级食人魔放在一起,并放一些低级食人魔,仅用于“乐趣”。也许有一大堆小孩子使它变得更有趣。切勿将它们与一堆中级食人魔或巨型食人魔对抗,因为它们会死。

只有高水平才能与食人魔抗衡。也许不时地给他们一些中级食人魔,或者是一个巨大的食人魔,里面有一群小食人魔,或者其他一些东西来挑战。切勿将它们与一堆巨大的食人魔对抗,因为它们会死。

使用这种方法,您无需再“阻碍”任何事情,因为玩家将永远不会看到可能需要削弱的东西。

如果低水平的玩家真的愿意深入游戏中,遇到巨大的食人魔,那就让他们死掉-他们应得的。


感谢您的回应,但在您的orge示例中似乎无法解决您所指的修改,向玩家展示他们无法克服的巨大食人魔并使他们失败是透明的。玩家只有在正确的等级上击败大型食人魔。例如,如果不是代替玩家升级而是使他们变得更强壮,而又不知道离开玩家以为自己只是成为了一个更加熟练的玩家,那将是秘密的。
PStag
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.