跳转到主要内容

外观

新手往往认为虚拟世界的外观非常重要;老手一般更关心别的特性。

虚拟世界通常分为两类:文字型(text-based,textual)与图形型(graphics-based,graphical)。前者用文字来描述地点、物件和其他玩家,后者用图片。

不过,这两个极端之间其实存在着一个渐变的谱系。要接入一个文字虚拟世界,玩家需要与它建立某种软件连接。这种连接可以是直接的(例如从控制台运行游戏服务器、在它的提示符下打字),也可以经由客户端间接建立。如果用到了客户端,它可能是哑客户端、智能客户端或定制客户端。

严格说来,哑客户端除了输入和输出什么也不做:它把输入交给服务器,再把服务器发回的内容原样输出。不过,真正这么“哑”的客户端很少——就连 telnet 也能处理退格之类的小编辑功能。哑客户端之所以不做多少事,是刻意为之,因为这样它们就能用于更多种用途。

即便用的是哑客户端——甚至根本不用客户端——虚拟世界也不必只是一堆没有生命的文字。服务器可以给单个字母、单词、句子和段落着色(通常使用大多数 PC 都支持的 ANSI 标准),让最终显示出来的内容更美观、也更有意义。

智能客户端是为某一类用途而设计的;在这里,指的就是文字虚拟世界。这类客户端提供额外的输入功能(例如宏或触发器)和管理输出的工具(例如本地日志和自动换行)。这些功能本来仍然可以在服务器端实现、配合哑客户端使用,但如今大多数服务器作者不再费这个劲,因为他们知道,现在已经有这么多 1 好客户端,人们几乎肯定会用上一个。

定制客户端只适用于与其共享协议的那一小部分虚拟世界(实践中通常只有一个)。客户端发给服务器的信息包描述的是输入内容,服务器发回来的信息包则告诉客户端该输出什么。输入协议通常并不太复杂,输出里却可以带有嵌入式代码,让客户端做出各种动作,比如切换字体、播放音效与音乐,或者显示图片。对文字虚拟世界来说,图片按定义就是静态的东西,这更像一本插图读物,而不是电影。不过,它也足以说明:一个基于文字的世界能走多远,同时仍然不会被归入图形化。

按经验法则,第一个时代和第二个时代的虚拟世界用哑客户端,第三个时代用智能客户端,第四个时代用定制客户端。

第五个时代(图形化)的虚拟世界也用定制客户端,只是显示信息的方式不同。客户端收到的信息包里含有可用来渲染场景的数据。这种渲染要么是 2D(网格化),要么是 3D(第一人称);不过,用某种立体设备给场景带来纵深感的“真正的 3D”,以及由它发展出的完全成熟的 VR,无疑都不算太远了。

因此,对一个既不了解也不关心底层机制的新手来说,一个有活动画面、一个没有,两者的差别相当清楚;说到底,这个新手当初之所以会被其中一个吸引、而不是另一个,很可能正是出于这个原因。但对老手来说——他们明白,无论用什么客户端,实现虚拟世界本身的根本机制都大同小异(这些机制都体现在服务器上)——图形化世界与文字世界的区别,主要在于界面(尽管这个界面问题并不算小)。