我想我学会快速打字的第一个词——我是说真的快——是“火球”。
像我们大多数人一样,我的打字生涯始于“一指禅”技术,使用食指并将视线集中在键盘上,以便找到我需要的字母。 这项技术不允许你同时阅读和写作; 你可以称之为半双工。 打 cd 和 dir 还可以,但要在这个游戏中领先则远远不够。 特别是如果这个游戏是 MUD(泥巴游戏)。
使用多人地下城的游戏
MUD 是多人地下城(multi-user dungeon)的缩写。 或者多人领域(multi-user domain),取决于你问谁(以及何时)。 MUD 是基于文本的冒险游戏,例如 Colossal Cave Adventure 和 Zork,你可能在第 2 季 第 1 集的 命令行英雄 中听说过。 但是 MUD 有一个额外的转折:你不是唯一玩它的人。 它们允许你与其他人组队来对付特别讨厌的野兽、交易商品和结交新朋友。 它们是现代大型多人在线角色扮演游戏 (MMORPG)(如 Everquest 和 World of Warcraft)的伟大祖先。 而且,对于一个有抱负的命令行英雄来说,他们提供了一种现代游戏仍然不具备的体验。
我的“家庭 MUD”是 NyxMud,你可以通过 telnet 连接到 nyx.cs.du.edu 的 2000 端口来访问它。 这是我掌握的第一个命令行。 在很多方面,它让我成为英雄——或者至少扮演其中一个角色。
NyxMud 的一个特殊品质是,每次你连接玩游戏时,你都会从一个空的库存开始。 你收集的金币仍然存在于你上次的会话中,但你辛辛苦苦获得的武器、盔甲或魔法物品都不存在。 因此,在每次会话结束时,你都必须返回商店出售所有东西……并且你只能获得你所支付的一小部分。 如果你被杀死,第一个遇到你死尸的玩家可以拿走你拥有的一切。

这显示了巫师私人工作室中的一段源代码。
这使得游戏极具粘性。 出售一切然后退出是一件可怕的事情,从财政角度来说。 这意味着你的会话必须是有利可图的。 如果你在购买和出售装备之间没有通过掠夺和任务赚取足够的金币,那么下次玩的时候你就无法装备自己。 如果你死了,情况会更糟:你可能会发现自己用一把菜鸟剑杀死粘液球,以便凑够足够的金币来购买更好的装备。
我从来不想通过出售装备来“支付商店税”,这意味着很多深夜,并且早上生物课睡觉。 每位现代游戏设计师都希望你说,“我现在不能吃晚餐,爸爸,我必须继续玩,否则我就有大麻烦了。” NyxMud 让我沉迷其中,以至于我在几十年前就说了这句话。
因此,当需要“施放火球”或面临迫在眉睫的灾难性死亡时,我被迫学习如何正确打字。 这也迫使我采取一种社交方式来玩游戏——有朋友在身边击退清道夫让我可以在我死后找回我的装备。
命令行英雄都有一些共同点:他们与他人合作并且打字速度非常快。 NyxMud 训练我做了这两件事。
从游戏玩家到创作者
从任何标准来看,NyxMud 都不是最大的 MUD。 但它仍然是一个广阔的世界,充满了数百个区域和数十个史诗般的冒险,每一个都是为玩家晋升的不同级别量身定制的。 随着时间的推移,很明显,并非所有这些区域都是由同一个人创建的。 “用户生成内容”这个词尚未发明,但这个概念即使对我年轻的心灵来说也很简单:整个世界是由一群人,其他玩家创造的。
一旦你完成了每个具有挑战性的任务并达到 20 级,你就会成为一名巫师。 这是一种奇异点,超越了它,存在着只有少数人知道的现实。 在学校的午休时间,我的朋友们会思考巫师的力量; 你看,我们知道巫师可以创造房间、野兽、物品和任务。 我们知道他们可以随意杀死玩家。 我们对他们的力量一无所知。 整个事情都笼罩在神秘之中。
在我们这群高中朋友中,埃迪是第一个成为巫师的人。 他的炫耀和嘲讽让我们进入了加速状态,贾里德很快也加入了。 我是最后一个,但只晚了一两天。 现在已经过去了 25 年,让我们称之为三方平局吧。 我们发现它和我们想象的差不多。 我们可以创造房间、野兽、物品和任务。 我们可以杀死玩家。 哦,我们可以隐身。 在 NyxMud 中,仅此而已。

这显示了巫师的私人工作室。
巫师使用了创造魔杖,这是由准(Quasi,发音与“crazy”相同)发明的物品,他是伟大的巫师。 由于运行它的 Nyx 系统的管理员制定的严格政策,只有他才能访问引擎的代码。 因此,他创造了一个复杂的魔法对象,允许用户生成新的游戏元素。 当调用这个魔杖时,巫师会通过一个基于菜单的工作流程来创建房间和对象、建立任务目标和设计可怕的怪物。
拥有那根神奇的魔杖就足够了。 我立即开始工作,在一系列岛屿上创建新的土地和宏伟的冒险,每个岛屿都有不同的异国情调的气候和主题。 我在隐形状态下悬停,从我的想象中产生的野蛮野兽会一次又一次地杀死勇敢的冒险家,我从中获得了极大的乐趣。 但看到玩家在经过一场艰苦的战斗后坚持下来,知道我调整并调整了我的任务使其恰好在可能的范围内,这甚至更好。
被这个精英创作者群体接受是我年轻生活中更有意义和令人满意的时刻之一。 每个新的巫师都必须通过我的测试,花费无数的时间和不眠之夜,就像我一样,才能完成我之前的巫师的任务。 我通过奉献和贡献证明了我的价值。 这只是一场游戏,但它也是一个社区——我遇到的第一个社区,也是让我看到一个运行良好的 精英管理 可以有多么强大的社区。
从创作者到程序员
NyxMud 基于 Lars Pensjö 创建的 LPMud 代码库。 LPMud 不是第一个开发的 MUD 软件,但它包含一个非常重要的创新:它允许玩家从游戏中编写游戏代码。 它通过将mudlib(包含所有内容和面向用户的功能)与driver(充当 mudlib 的实时解释器并提供对基本网络和存储资源的访问)分开来实现这一点。 这种架构意味着 mudlib 可以由几乎不受信任的人(例如,像我这样的玩家)即时编辑,他们可以增强游戏体验,而不会对运行它的服务器造成任何特别有害的事情。 driver 提供了一个“气隙”。
这个气隙对于 NyxMud 来说是不够的; 只有当一个人可以被信任编写所有代码时,它才被允许存在。 在大多数 LPMud 系统中,成为巫师的玩家可以使用 ls、cd 和 ed 来遍历 mudlib 和修改文件,所有这些都来自他们无数次用于施放火球和饮用药水的同一个命令行。 Quasi 不遗余力地修改 Nyx mudlib,这样巫师就无法携带一整套锋利的工具在系统中乱窜。 创造魔杖就此诞生。
作为一个没有玩过任何其他 MUD 的巫师,我并没有错过我从未拥有的东西。 此外,当时我没有办法访问任何系统——Nyx 上禁用了 telnet,这是我与互联网的唯一连接。 但我确实可以访问 Usenet,它为我提供了 The Totally Unofficial List of Internet Muds。 显然,还有更多的 MUD 世界供我发现。 我阅读了我能找到的所有关于 mudlib 的文档,并接触到了一些 LPC,这是一种用于创建新内容的利基编程语言。
我说服了我的父亲为我的未来进行投资,支付了Netcom的shell账号费用(还记得Netcom吗?)。通过这个账号,我可以连接到任何我想玩的MUD游戏。在一些强烈的推荐下,我选择了 Viking MUD。它至今仍然存在。那是一个真正的MUD,是最前沿的,它展示了用代码构建一个宇宙的真正潜力,而不是魔法棒那种有限的菜单系统。但老实说,我作为一个玩家并没有取得太大的进展。我真正想学的是如何编程,而不是花费数小时用新手剑击杀史莱姆。
根据Lauren P. Burka的Mud Timeline,在1992年2月到8月之间有一个非常短暂的时间窗口,那是一个完美的地方让我进行探索。Mud Institute(简称TMI)是一个非常特别的MUD,旨在教授人们如何用LPC编程,照亮mudlib最黑暗的角落。它为所有申请者提供了即时的全能权力,并建立了一个社区来发展新一代的LPMuds。

这是我第一次接触C编程,因为LPC本质上是C的一种变体,它共享相同的类型、控制结构和语法。它是带有训练轮的C,专为快速创建内容而设计,但也允许程序员开发复杂的游戏场景(如果他们有足够的能力)。我一直看到键盘上的花括号,现在我知道它是用来做什么的了。我唯一能记住创造的是一台特殊的自动售货机,有点受到创造魔杖的启发,它可以当场创造你选择的怪物。
TMI并不是一个长期存在的现象;事实上,它几乎在我有机会发现它之前就消失了。它很快就放弃了它的教育章程,尽管它的努力最终通过发布MudOS取得了成果——它仍然通过其现代后代FluffOS延续着生命。但这是关于一个高度特定主题的知识宝库!登录后,我立即获得了一整套开发人员工具、一个教学材料库和大量有趣的示例代码供我学习。
我从未和任何人交谈或寻求任何帮助,我也不需要这样做。社区已经发布了足够的资源供我自己入门。我能够在奇幻电脑游戏的背景下,在没有教科书或老师的情况下,学习结构化编程的基础知识。因此,我在技术领域拥有了漫长而(大部分)令人满意的职业生涯。
电影《梦幻之地》中的台词“如果你建造它,他们就会来”对于社区来说几乎肯定是不真实的。 The Mud Institute的人们建立了伟大社区的基础,但我不能说他们成功了。他们没有成为一个广为人知的巫师学校——事实上,很难找到关于TMI的任何信息。如果你建造它,他们可能不会来;即使他们来了,你仍然可能失败。但它仍然完成了一件美妙的事情,这是它的创造者从未想到的:它激发了我对编程的热情。
要了解更多关于游戏玩家到程序员的现象及其对开源社区文化的影响,请查看Command Line Heroes第二季的第1集。
4 条评论