💾 Archived View for republic.circumlunar.space › users › dbane › gemlog › 2021-10-17.gmi captured on 2024-05-12 at 16:00:08. Gemini links have been rewritten to link to archived content
⬅️ Previous capture (2022-03-01)
-=-=-=-=-=-=-
Long, long ago I used to play btmux and that got me curious enough to learn the software and even submit a few patches. In many ways, there is an alternate universe where the most popular application-level protocol for the Internet is derived from MUDs rather than HTTP.
I find some features of these servers interesting:
Here I give some opinions on code I've looked into. Note that there are many more systems I never learned. However, consider this a hint as to where to start; it's best to avoid going down one of the many, many dead ends that have been written over the nearly 40 years of MUD development.
I've gone through a sequence of reading & learning from the source code of several different projects. After all this my current favourite is ToastCore/ToastStunt. Rather a fundamental redesign, this is an incremental addition to LambdaMOO, which is probably the most popular "serious" MUD server. ToastStunt is popular (for a MUD) and well-maintained. You can log into ChatMUD to see a live instance.
My current favourite client is rmoo. It implements MCP local editing which is very nice for editing MOO code. Also extensible in ELisp, but I haven't got that far yet.
Most MUDs use the telnet protocol, i.e. IAC WILL/WONT, state machines, etc. I looked into some extensions layered on top of this:
I've been playing with software like this for some time. Here are notes on alternatives that I rejected. This section can be skipped.
Then I started trying to use Emacs more, which led me to