客户端
TinTin++
一个有自己脚本语言的终端客户端,在每一个平台上都能跑,手机也不例外,并且有一个成文的屏幕阅读器模式。
https://tintin.mudhalla.net/ · Linux, macOS, Windows, Android, iOS
能力
在10项中,有7项依据项目自己的文档确定
逐项读自各项目自己的文档,而非由我们实测——客户端没有握手可供我们观测。“未知”表示我们查过,没能确定。它绝不表示“否”。
| 能力 | 有文档 | 来源 |
|---|---|---|
| screen reader | 有 | tintin.mudhalla.net |
| TLS | 有 | github.com |
| UTF-8 | 有 | github.com |
| MCCP | 有 | tintin.mudhalla.net |
| GMCP | 有 | tintin.mudhalla.net |
| MSDP | 有 | tintin.mudhalla.net |
| ATCP | 未知 | 我们没有找到 |
| MXP | 未知 | 我们没有找到 |
| MSP | 未知 | 我们没有找到 |
| scripting | 有 | github.com |
TinTin++ 是一个命令行客户端,GPL 3,发布活跃,而且它能跑的地方比这里的任何其他客户端都多——包括
Android 和 iOS。它的脚本语言是它自有的,很简练,能做的事情却很多;别的客户端在图形界面里做的相当
一部分事情,在这里是一行 #config。
MSSP 和 MSDP 的协议规范由同一位作者维护,这也是本节里那么多协议页面都引用同一个站点的原因。
无障碍
TinTin++ 有一个专门讲屏幕阅读器模式的手册页面(#config screen reader on,或者启动时加
-s)。启用它会做两件事:把念出来没有意义的视觉元素去掉或改掉,以及通过
MTTS 向服务器报告正在使用屏幕阅读器,这样游戏就可以调整自己的输出。
那是一个有文档的模式,不是与某个具体阅读器测试过的主张——那一页上没有点名任何产品。作为证据,它明 显弱于一个点名了自己配合哪些阅读器的客户端,也明显强于什么都没有。
表里写着未知的地方
MXP 和 MSP 在项目站点上都有社区脚本,而一个脚本不等于客户端支持某个协议——MXP 那个脚本直接 说了它未必能在每个 MUD 上工作。两者的原生支持都未能确立。ATCP 我们无论有无都没找到任何说法;顺 带一提,ATCP 大体上已被 GMCP 取代,而 GMCP 是 TinTin++ 支持的。
另见
- Blightmud 一个用 Rust 写的现代终端客户端,有 Lua 脚本、内置的文本转语音,以及一个会向服务器自报的屏幕阅读器模式。
- Mudlet 跨平台,用 Lua 编写脚本,也是本节中屏幕阅读器支持的文档写得最详尽的客户端。
- MSDP Mud Server Data Protocol——和 GMCP 干同一件事,用的是一种紧凑的二进制编码,外加一套 GMCP 所没有的发现机制。
- TTYPE and MTTS 客户端如何告诉服务器自己是什么、能做什么——包括在它愿意开口的时候,说出正有人在使用屏幕阅读器。