# 名字问题

LLMS 索引： [llms.txt](/dvw/llms.txt)

---

在虚拟世界里，你被一个个体所代表，你代表着一个个体，或者你就是那个个体。世界的虚构设定也许会装作不是这样，比如允许蜂巢式心智（例如蚁巢）或者共享心智的伴侣（例如特威德顿和特威德迪），但这些只是故作姿态。你与一个单一的、有知觉的游戏对象相关联：你的角色 [^75]。为了让人们能在交谈与命令中提到你的角色，这个角色必须有一个标签，换句话说，一个名字。

《MUD1》允许玩家使用相同的名字，只要他们不同时在线。这很快就带来了认错人的问题（以及程度稍轻的冒名顶替问题）。只允许某个特定名字的一个人在任一时刻身处虚拟世界，这也解决不了问题：玩家可能因此发现自己被关在门外。最终采用的办法是：在整个虚拟世界里，任何一个名字只允许有一个实例。偶尔还是会出问题：一个角色被杀之后，还没等原来的玩家缓过来重返世界，就有人把它的名字抢走了；但这只是零星的个别事件，可以由管理员逐案处理。

总的来说，今天的虚拟世界仍然是按这个思路设计的。两个同名角色 [^76] 不应被允许同时进入一个虚拟世界，是有实现层面的理由的（这会让解析与通信容易得多）；而就连离线的角色也不允许重名 [^77]，本质上是一项客户关系上的要求（尽管它还有别的好处，比如有助于培养身份感）。

玩家数量庞大的虚拟世界很快就会用光像样的名字。当然，这不是只有虚拟世界才有的问题——URL、AOL 账号名和 Hotmail 电子邮箱地址的情况要糟得多——但这并不意味着它不算问题。《网络创世纪》（Ultima Online）的设计者预见到名字会供不应求，于是决定允许重名。为了不让玩家被关在门外，同名的人可以同时游玩。随之而来的，是冒名顶替和沟通方面的种种弊病。在保留重名的前提下，这两者都是可以解决的，但只有靠破坏沉浸的方案才行。紧随其后出现的图形化虚拟世界没有再犯同样的错误，从一开始就采用唯一的名字。

当然，这仍然意味着名字供不应求：如果你有 40 万名玩家，他们就需要 40 万个名字（如果还有多个角色，就需要更多）。一个显而易见的折中办法，是把唯一性限制在服务器集群范围内（也就是限制在某个单一实例／分片内）。有 40 台服务器，玩家的想象力只需要凑出 1 万个不同的名字，这就好处理得多了。诚然，在别的服务器上，可能有人正好也用着你的名字，但你的朋友们都在这台服务器上。

怎么选名字？如果能让玩家自己选名字，他们对角色的认同感会更强；起名是玩家就自己的虚拟身份所要做的第一个、也可以说是最重要的决定。不过，如果放手让他们随便起，又可能烦人地破坏虚构设定（精灵罗宾汉驾到）。这是个问题：随便挑一个允许自由起名的虚拟世界，里面很可能就有人叫“甘道夫”——不管这世界是什么题材。

前面暗示过的一个办法，是采用限制性的命名政策。管理员审核将要采用的名字。在角色扮演要素很强的虚拟世界里，这既可行又非常有效，因为玩家为了解释自己的角色为什么叫这个名字，必然要把这个角色充实起来。但这同时也是一道进入门槛：如果有人想玩你的虚拟世界，却发现光等你批准角色名字就要拖上 10 分钟，他们就会去别的没有这 10 分钟延迟的地方。对每天都有成千上万新手涌入的虚拟世界来说，这种做法实施起来也贵得离谱。

既要保留一点选择余地，又要限制玩家随便取个糟糕名字的自由，一个办法是使用名字列表。做法是给玩家列出一份名字清单，比如 10 个或 20 个可用名字，让他们挑一个。如果这些都不太合适，或许可以再给一份清单，直到所有选项都用完为止。玩家仍然可以选择自己输入一个自由形式的名称，然后等待审核，但他们不必这么做。

名字列表的生成办法有好几种。最显而易见的一种是随机生成。这种办法必须做得好才管用：《无尽的任务》（EverQuest）试过，但它的随机生成做得不好，也就没管用。

另一种办法是利用虚拟世界的背景来给出可选的名字。纸笔角色扮演游戏里有时会用到这一套。其想法是：角色的名字由若干音节拼成，这些音节在角色的族人所讲的某种古代语言里各有含义。典型的安排是一个开头音节、一到多个中间音节，以及一个收尾音节。于是，一个精灵可能选“Ard-la-shi-sa”，意思是“树-沉默之灵”；而一个矮人（用的是一套不同的音节与一套表面上的含义）可能挑“Khad-rak-uz”，意思是“石-强须”。设计者设计起来、玩家玩起来都很有意思，但你得当心——有一次，我就用这类办法凑出了 Fu-qu-az-ole。

利用这类伪文化式的名字含义，就有可能重新引入一点点非唯一命名。如果按角色的种族／职业／性别／其他什么给玩家配一个姓氏，那么他们也许就能选用与另一个姓氏不同的人相同的名字。如果厄克·狼头和厄克·锐矛同时在线，部落里的其他成员，或者与他们大致处于同一地点的人，都可以只管他们叫厄克。只有当另一个部落的人想特指其中一位而不是另一位时，才需要（以形容词的方式）用上姓氏。这是个很巧妙的办法，既留出一定程度的选择自由，又维护了虚拟世界的体面。

名字是一种指称，但并不是唯一的指称。嘿，你认识那位在 1800 年代初征服半个欧洲的、矮个子、有魅力的法国将军吧？当然认识——他是拿破仑·波拿巴。不过，我并没有先告诉你他的名字，你就已经知道他是谁了，对吧 [^78]？有一种主张认为，虚拟世界应当允许对角色作这种相对描述，而且在真正有人把你介绍给某人（或者由某个已经“认识”他的人告诉你他是谁）之前，应当优先采用这种描述。其理由是：在现实世界里，人们不会把自己的名字纹在额头上到处走，因此虚拟世界里的角色也不该如此。反方的论点是：不得不一直用“高个子陌生人”来称呼某人，会妨碍互动——哪怕它最终会促成人们互相询问名字，从而更多地互动。和许多现实与虚拟之争一样，双方都有道理，最终要由设计者决定，在自己的虚拟世界里想怎么处理这种局面。大多数人选择了直接显示名字的做法，因为这对新手更友好。如果有人抱怨，他们总能编出一套虚构设定来把事情圆过去（“所有玩家角色按定义都是英雄，所以也都很有名，所以每个人早就知道别人是谁了”）。

相对名字说明了一点游戏设计者常常忘记的事：名字归个人所有，却由其他所有人使用。如果“高个子陌生人”不肯告诉我他的名字，我大可以决定管他叫瘦竹竿：我可以给别人起名字。在《MUD1》里，杀手型玩家会给自己取像 Mmnmnnmn 这样难打的名字，好让人们很难对他施法、偷他的东西等等。我用代词绕开了这个麻烦，不过代词本身也不是没有问题。尤其是，你可能打了“sleep him”这样的命令，可就在你按下回车的那一刻，一个朋友出现了，把“him”的绑定对象换掉了。《MUD2》加入了为玩家和物体创建同义词的功能，于是只要你（或者任何其他人）打上“syn Mmnmnnmn as ‘Mm’”，此后就可以把 Mmnmnnmn 称为 Mm。

不过，为什么止步于此呢？为什么不允许玩家互相加注呢？大多数人看到的是“Jay 说：‘你好’”；你看到的则是“无聊的讨厌鬼 Jay 说：‘你好’”。

这就引出了玩家如何为自己加注的问题。


[^75]: 也可以说是化身或者 persona（化身人格），但在不涉及沉浸问题的讨论里，这些说法一般都让位于“角色”。
[^76]: 实际上还更强一些：任何两个对象都不应当同名（标识符）。
[^77]: 名字不必完全相同才会“冲突”，只要相似到一眼看去可能把一个当成另一个就够了。
[^78]: 就算我说了，你也该在历史课上更用心一点。
