mu*index
阅读方式
纯文本
主题

参考

代码库是什么,客户端做什么,协议又意味着什么。由人手写,与爬虫一同存放在代码仓库里——这不是维基,本页上也没有任何可编辑的东西。这里的每一个数字都是另一回事:它取自目录,每次加载页面时都重新算出。

从这里开始

  • 如何连接 一个主机、一个端口,加上 telnet。游戏页面上那个地址是什么意思,以及拿它来做什么。
  • MUSH、MUD、MUCK、MOO——这些词是什么意思 四个词对应四种传统,没有一个是题材类型。它们真正告诉你的是什么。
  • 你想找的是协作扮演 如果你想要的是和别人一起写场景,这里是一条捷径——该找哪些代码库、哪种客户端不会跟你作对,以及第一晚会是什么光景。

代码库

  • AresMUSH 一个用 Ruby 写成的现代扮演服务器,自带 Web 前端和场景工具,而不是靠 softcode 写出来的。
  • CircleMUD 文档写得完善到足以拿来教学的 DikuMUD 衍生代码库。被派生的次数多得惊人;至今仍在运行。
  • CobraMUSH 一个 PennMUSH 分支,有自己的分部(division)与权限模型。部署量不大,仍在应答。
  • CoffeeMUD 一个用 Java 写的 MUD 服务器,拥有我们探测过的一切当中最大的一份 MSSP 报告,协议面也宽得反常。
  • DikuMUD 战斗类 MUD 家族的根。等级、职业、装备和区域文件——以及一份塑造了整整一代衍生代码库的许可协议。
  • Evennia 一个 Python 框架,而不是一个做好的游戏。两个 Evennia 游戏之间,可能除了管道什么都不共享。
  • FluffOS 仍在维护的 MudOS 后继者,也是幸存的 LPMud 游戏大多所用的驱动。游戏是用 LPC 写的,不是用 C。
  • MOO 面向对象,完全从内部编辑,与其说是游戏引擎,不如说同样是一个研究与教学平台。
  • MUCK TinyMUD 的一支后裔,有自己的类 Forth 游戏内语言,社群文化也与 MUSH 那一边不同。
  • PennMUSH 部署最广的 MUSH 服务器。softcode、一段很长的发布史,以及在我们的调查中仅有的两个既回应 MSSP 又回应登录前 WHO 的代码库之一。
  • RhostMUSH 一个以精细的权限模型和庞大的内置函数集著称的 MUSH 服务器。没有 MSSP;会回应登录前的 WHO。
  • ROM Merc 最有名的后代,也是九十年代很大一部分 MUD 所建立在其上的战斗引擎。
  • SMAUG 一个为大型主题世界打造的 Merc 衍生版本,有神祇、位面,以及规模数倍于其上游的区域集。
  • tbaMUD CircleMUD 仍在维护的延续,也是“我今天想开一个 Diku 风格的 MUD”这个问题的常规答案。
  • TinyMUSH MUSH 一脉的祖先,至今仍有游戏在跑。它让这个爬虫明白了:自己发出的协商字节,会毁掉它接下来发送的那条命令。
  • TinyMUX 另一个大牌 MUSH 服务器。softcode 与 PennMUSH 的接近到足以让人争论不休,完全没有 MSSP,而登录前的 WHO 是好用的。

客户端

  • Atlantis 一个只跑在 macOS 上的客户端,活得久,在 beta 里也待得久。它的脚本功能有文档说明已经不能用了,这是本节里唯一一个诚实的“否”。
  • BeipMU 一个瞄准这个爱好中 MUSH 那一边的 Windows 客户端,输出窗口有屏幕阅读器支持,走的是 Pueblo 而不是 MXP。
  • Blightmud 一个用 Rust 写的现代终端客户端,有 Lua 脚本、内置的文本转语音,以及一个会向服务器自报的屏幕阅读器模式。
  • Mudlet 跨平台,用 Lua 编写脚本,也是本节中屏幕阅读器支持的文档写得最详尽的客户端。
  • MUSHclient 老牌的 Windows 客户端。五种脚本语言,一套承载了它大部分协议支持的插件架构,以及一段已经放缓的发布史。
  • Potato MUSHclient 一个为 MUSH 玩家写的跨平台 Tcl/Tk 客户端。编码支持不错,而它的整套文档对大多数协议只字未提。
  • TinTin++ 一个有自己脚本语言的终端客户端,在每一个平台上都能跑,手机也不例外,并且有一个成文的屏幕阅读器模式。
  • TinyFugue 经典的 UNIX 终端客户端。上游自 2007 年起就没有再发布过;一个仍在维护的分支把它带了下去。
  • VIP Mud 一个从头为盲人玩家打造的商业 Windows 客户端。它点名了七款屏幕阅读器——却几乎没有公布任何关于协议支持的内容。

协议

  • ATCP GMCP 的前身。带外数据,载荷格式更松散,如今大体已被取代,仍有一直没把它删掉的服务器在继续协商它。
  • CHARSET RFC 2066 里用来商定编码的 telnet 选项。一个游戏中带重音符号的名字能完好走完全程,靠的就是它;而它缺席时,一些细微的故障也由此而来。
  • GMCP Generic Mud Communication Protocol——与文本并行的结构化 JSON 消息,也是当下多数客户端所面向的带外通道。
  • MCCP 流压缩。开销小、部署广,也是本项目历史上最有教益的那个 bug 的来源。
  • MSDP Mud Server Data Protocol——和 GMCP 干同一件事,用的是一种紧凑的二进制编码,外加一套 GMCP 所没有的发现机制。
  • MSP MUD Sound Protocol——服务器点名一个声音文件,客户端把它放出来。古老、简单,也很容易与另外两样东西弄混。
  • MSSP Mud Server Status Protocol——一个游戏如何向爬虫讲述自己。它报告的一切都是自述而非实测,本站把这两者分得清清楚楚。
  • MXP MUD eXtension Protocol——嵌在文本流里的类 HTML 标记,带来可点击的链接、图片和表单。规范写得详尽,实现却参差不齐。
  • Pueblo 更早的那套“在 MUD 里用 HTML”的方案,出自同名的客户端。MUSH 那一侧的客户端仍在支持它,它也经常被人与 MXP 弄混。
  • TLS 加密的连接。通常是另开一个端口,而不是协商式的带内升级;它也是本站唯一一项靠亲自连上去、而不是靠开口询问来核实的能力。
  • TTYPE and MTTS 客户端如何告诉服务器自己是什么、能做什么——包括在它愿意开口的时候,说出正有人在使用屏幕阅读器。