只有NPC的游戏没有意义
2020-05-25郁喆隽
郁喆隽
如果你觉得全世界只有自己有自主意识,而其他人都是没有自主意识的NPC,首先需要问的是:NPC和非NPC的本质区别是什么?这其实也在问,我和一个程序、几行代码的区别在什么地方?
哲学家笛卡尔就思考过这样的问题。当时,已经出现了“自动机”,也就是能够做出一些固定动作的机器装置,如布谷鸟钟、八音盒。甚至传说有日本工匠可以做出在扇面上用毛笔写出一整首诗的机械人。不过,自动机的动作都是由工匠设定好的,例如八音盒的音乐是储存在打孔纸带或者带有凸起的音筒上,如果不更换音筒,它永远只能“演奏”同一首乐曲。NPC与自动机非常类似,它能够做出的动作和讲的话,很容易被穷尽。
笛卡爾得出的结论是,人和其他动物乃至机器最大的区别有两点:一是语言能力,二是学习能力。NPC也可以和你对话,但是它的句子非常有限,多交流几次就会重复。此外,人因为有学习能力,可以做到以前做不到的事,例如学会骑车、说外语。这些能力并不是由人的“硬件”(生理条件)所设定的。虽然在绝大多数情况下,一个人会做什么是可以预测的,但是因为人有自我意识,所以总是可以在最后一刻说“不”,或者改变原先的决定。你发现游戏里的NPC做出过一些出乎意料的事情吗?如果有的话,是不是程序里的bug呢?当然,最近几年,人工智能也初步具备了学习能力,但是它们都有特定的学习目标:AlphaGo会下围棋,但不会游泳;波士顿动力的机器狗会识别环境自动走路,但不会开车……
有人问,我自己会不会是NPC呢?或者试着证明一下,我不是一个程序设定的NPC。这个问题很让人头疼。笛卡尔会说,我有心灵活动,这是我自己非常清楚的事情。《爱丽丝梦游仙境》里的铁皮人苦苦寻找的就是一颗心,能够体验喜怒哀乐、爱恨情仇。
NPC存在的前提是有人(更加准确地说是“智能者”、程序员)设计、创造了它。程序员为什么要创造NPC呢?在人类的电子游戏中,NPC可以充当背景,串联起故事线,或者成为人类玩家的辅助。换言之,NPC是出于一定的游戏目的而被创造的。反过来说,NPC都要执行一定的功能,否则就没有必要。所以,如果你觉得自己是一个NPC,那么你在执行什么功能呢?这场游戏中的玩家又是谁呢?假设一个没有玩家只有NPC的游戏,是没有意义的。