1978·传奇故事

从代码实验到虚拟帝国:MUD如何用文字建造了MMORPG的第一座城堡

1978年,在英格兰埃塞克斯大学的一间昏暗机房里,一个名叫Roy Trubshaw的计算机系学生敲下了一行改变游戏史的代码。他原本只想完成一项编程练习——让多人同时“进入”一个文字冒险世界。但他不知道,这个名为MUD(Multi-User Dungeon)的“作业”,将催生一个价值千亿美元的产业,定


从代码实验到虚拟帝国:MUD如何用文字建造了MMORPG的第一座城堡

1978年,在英格兰埃塞克斯大学的一间昏暗机房里,一个名叫Roy Trubshaw的计算机系学生敲下了一行改变游戏史的代码。他原本只想完成一项编程练习——让多人同时“进入”一个文字冒险世界。但他不知道,这个名为MUD(Multi-User Dungeon)的“作业”,将催生一个价值千亿美元的产业,定义网络社交游戏的底层逻辑,并让“地牢管理员”成为互联网上第一个虚拟职业。从一次无心的技术实验,到一场席卷全球的文化革命,MUD的故事比任何奇幻小说都更传奇。

第一章:深夜机房里的“编程练习”

1978年的计算机世界,与今天截然不同。DEC PDP-10大型机占据了整间屋子,通过分时系统连接着几十个笨重的终端。学生们需要抢时间上机,因为每个账户每周只有几小时的CPU配额。就在这种资源极度匮乏的环境下,21岁的Roy Trubshaw陷入了一场“无聊的焦虑”。

他痴迷于当时流行的单机文字冒险游戏《Adventure》和《Zork》——玩家通过输入“向北走”“拿剑”等指令探索地下城。但一个念头始终折磨着他:“为什么只能一个人玩?如果我能让朋友们同时进入同一个世界,会发生什么?”

Trubshaw找到室友Richard Bartle,后者是科幻迷兼游戏疯子。“我想做一个‘多人版’的冒险游戏,”Trubshaw在凌晨三点的泡面香气中说道,“但技术上有个大问题——PDP-10的内存只有256KB,还得为每个连接的用户分配独立状态。”

Bartle问:“那你怎么解决同步问题?”

“用‘共享内存’加‘轮询’,”Trubshaw眼睛发亮,“每个用户的操作被拆成指令包,服务器按顺序处理,然后广播结果。但最要命的是,我根本不知道怎么写网络代码——我们连TCP/IP协议都还没见过。”

实际上,当时的网络环境堪称蛮荒。埃塞克斯大学内部有一个基于DECNET协议的局域网,但数据传输极不稳定。Trubshaw不得不自己设计一套基于“数据报”的通信协议:当玩家输入一条指令,终端会将字符流发送到PDP-10的前端处理器,再由主服务器解析并更新世界状态。“这就像用摩斯密码指挥一支军队,”他后来回忆,“每一条‘你死了’的消息,都可能因为丢包而变成‘你活’。”

更大的挑战来自游戏设计本身。单机冒险游戏是线性的,但多人世界需要处理玩家间的交互——A攻击B时,B应该能反击;C偷了D的宝物,D可以追C到地图另一端。Trubshaw和Bartle花了三个月定义“世界规则”:他们用Lisp-like语言编写了游戏引擎,将房间、物品、怪物定义为对象,用属性(如“可攻击”“可拾取”)和行为(如“移动”“战斗”)构建逻辑。这实际上是最早的“面向对象编程”雏形,比Smalltalk语言普及还早两年。

1978年圣诞节前夕,第一版MUD在PDP-10上成功运行。它只有20个房间,4种怪物,玩家可以输入“kill goblin”(杀地精)或“say hello”(说你好)。Trubshaw后来回忆,第一个测试用户是Bartle,他在终端前坐了6小时,直到机房管理员锁门才离开。“他出来时眼睛充血,但一直在笑:‘我在里面建了一座桥,然后被一条龙吃了。’”

第二章:一夜之间,虚拟社会诞生了

MUD上线后,迅速在埃塞克斯大学内部传播。学生们挤在终端前,排队等待登录。很快,一个意想不到的问题出现了:玩家开始“违反规则”。

有人故意挡在狭窄的走廊里,不让别人通过;有人反复杀死新手玩家,抢走他们的装备;还有人在地图上乱写乱画(通过“say”命令刷屏)。Trubshaw和Bartle意识到,单机游戏的“规则”在多人环境中完全不够用——你需要的是社会契约

“我们当时没有‘管理员’概念,”Bartle说,“但玩家开始自发组织:几个老玩家成立了‘秩序骑士团’,专门追捕恶意PK的玩家。他们甚至自己编写了‘法典’,用游戏内的‘note’命令张贴在公共区域。”

这催生了历史上第一个“地牢管理员”(Wizard)角色。Trubshaw在代码中埋下了一个后门:输入特定密码的用户可以进入“神模式”,能够瞬移、创造物品、甚至让玩家复活。他原本只打算自己用,但后来不得不把“神权限”给了几个可靠的老玩家。“他们成了虚拟世界的法官、警察和造物主,”Bartle说,“有个管理员每天花4小时处理玩家纠纷,比上课还认真。”

商业上的转折发生在1980年。一位名叫John Pritchett的英国商人无意中体验了MUD,立即意识到它的商业价值。“你们应该把这个东西卖出去,”他对Trubshaw说,“每个人都会想玩。”

Trubshaw当时面临毕业,对商业化毫无兴趣。但Pritchett说服了他:MUD可以部署在CompuServe这样的商业网络上,按小时收费。1980年,MUD以“British Legends”的名字在CompuServe上线,成为第一个商业化的多人在线游戏。收费模式是每小时12美元(相当于今天的40美元),即便如此,服务器依然被挤爆。

然而,真正的爆发来自代码的开源。1981年,Trubshaw将MUD的源代码上传到ARPANET(互联网前身)的FTP站点,并附上一句:“随意修改,但请保留我的名字。”这个决定改变了历史——全球各地的程序员开始下载、修改、重新部署MUD。到1984年,仅美国就有超过200个MUD变体,包括以《龙与地下城》为背景的“DikuMUD”、以科幻为背景的“TinyMUD”,以及后来影响深远的“LPMUD”。

“我们当时完全没意识到这是在‘开源’,”Trubshaw后来苦笑,“只是觉得代码放着也是浪费,让别人玩玩怎么了?”但正是这种“浪费”,让MUD的基因渗透到后来的每个MMORPG中。1997年的《网络创世纪》(Ultima Online)直接致敬了MUD的“技能成长”系统;2004年的《魔兽世界》中的“副本”概念,最初源自MUD里“只能进入一次的特定房间”设计。

第三章:虚拟世界的第一份遗产

MUD的遗产远不止游戏本身。它无意中定义了互联网的社交形态:玩家开始在MUD里举办婚礼、建立教堂、甚至组织议会。1985年,哈佛大学的研究者发现,MUD玩家在虚拟世界中的社交行为与真实世界高度相似——他们会形成等级制度、建立信任网络、甚至发展出“经济系统”(用金币换装备)。这直接催生了后来的“虚拟社会学”研究。

技术层面,MUD的“状态同步”方案成为所有实时多人游戏的基础。当你在《英雄联盟》里看到队友移动时,服务器处理的逻辑与1978年的MUD如出一辙:客户端发送指令,服务器计算并广播结果。Trubshaw当年为了解决“网络延迟”而设计的“乐观锁”机制(允许客户端先显示动作,再与服务端核对),至今仍是游戏开发的标准做法。

更深远的影响在于“用户生成内容”。MUD的管理员(Wizard)可以修改世界,这种“玩家即创作者”的理念直接影响了《第二人生》(Second Life)和《我的世界》(Minecraft)。Bartle后来写道:“MUD本质上是一个‘沙盒’,我们只是提供了砖块,玩家自己建起了城市。”

但商业化之路并非一帆风顺。1981年的CompuServe版本虽然盈利,但Trubshaw和Bartle只拿到了微薄的分成——他们签了一份“每用户每小时0.5美元”的合同,但CompuServe用“运营成本”为名扣除了大部分收入。“我们每人大概赚了3000美元,”Bartle说,“足够买一辆二手车,但不够买房子。”这个教训后来成为游戏开发者争取“分成透明化”的经典案例。

评论

MUD的故事揭示了一个反直觉的真相:最具颠覆性的创新,往往诞生于“不务正业”的编程练习中。Trubshaw和Bartle从未想过创造产业,他们只是想解决一个具体问题——让朋友能一起玩游戏。这种“问题驱动”的创新模式,天然地避开了商业规划的短视,也正因如此,MUD的架构至今仍被沿用。

更深层的启示在于“开放”的力量。如果Trubshaw当年选择闭源并申请专利,MUD可能只是一个英国大学的内部玩具。但他选择公开代码,让全球开发者共同完善,最终催生了整个MMORPG品类。这比开源运动(1998年)早了整整17年——在那个代码被视为商业机密的年代,Trubshaw的“随意修改”更像是一种天真的慷慨,却意外地创造了最大价值。

商业史上,MUD提醒我们:早期市场的“规则”远未固化,先行者的最大优势不是技术,而是对“新可能性”的感知。Trubshaw和Bartle没有试图“预测”未来,他们只是建造了一个足够开放的平台,然后让用户自己定义未来。这种“放手”的智慧,或许是MUD留给数字时代最珍贵的礼物。

参考资料

相关软件

同时代故事 · 1978s

一个数学家的商业赌注:高德纳如何用十年时间,以“完美主义”颠覆出版业
1977年,斯坦福大学计算机系教授高德纳(Donald Knuth)拆开一封信,里面是《计算机程序设计艺术》第二卷的出版社校样。他盯着那些歪歪扭扭的数学符号、参差不齐的行间距,以及排版软件对希腊字母的粗暴处理,愤怒地砸了一下桌子。这位当时已凭借三卷巨著享誉学术界的计算机科学家,在那一刻做出一个疯狂的
数字排版的神谕:当一位计算机科学家决定挑战三千年印刷传统
1977年的一个深夜,斯坦福大学计算机科学系教授高德纳(Donald Knuth)暴躁地翻着刚送到的《计算机程序设计艺术》第二版校样。这位现代算法之父凝视着书页上那些歪歪扭扭的数学公式——积分号像被压扁的蜗牛,求和符号的上下标挤成一团,希腊字母的间距毫无美感可言。他猛地合上书,对妻子说:“我要暂停写
被遗忘的“C语言指令”:Bill Joy如何在深夜重构Unix交互的底层逻辑
1978年深秋的伯克利,窗外的加州阳光早已被深夜的寒气吞没,计算机实验室里只有一台PDP-11/70的屏幕荧光在跳动。一个瘦削的年轻人蜷缩在键盘前,他的手指正在疯狂地敲击着历史命令——不是通过鼠标,而是凭借记忆重复输入长串的“ls -la”、“cd /usr/bin”、“cc -o hello he
比尔·乔伊的叛逆:C Shell如何从学生项目变成Unix世界的规则破坏者
1978年,加州大学伯克利分校的一间逼仄的机房里,一个24岁的研究生正对着电传打字机屏幕大发雷霆。比尔·乔伊(Bill Joy)刚刚又一次按下了键盘上的向上箭头,期待看到自己上一个命令——结果什么也没发生。Bourne shell,这个当时Unix世界的标准交互界面,拒绝记住他做过的任何事。每次他都