ladysisyphus writes that
Jesus has laser beams. As does
Aslan, which makes sense if you think about it.
It turns out that Macs have speech synthesis built in. It's not bad, and it's easily accessible to programmers. So I've spent an entertaining evening making my MUD client talk. That way, if the window is hidden, I still find out when someone interesting logs in. I've ended up using
MudWalker, a free, open source MUD client for Mac OS X. It's scriptable in
Lua, and helpfully provides a
speak function to Lua scripts. The thing prospective programmers will want to know is that your regular expression match groups (the things Perl would call
$1 and so on) are
arg[n] to the Lua scripts you can use to write triggers. For console use, I'd still recommend
Crystal as a good MUD client, but it turns out to be a bugger trying to get that to talk (Crystal is supposedly scriptable in Lua, but my attempts killed it).
Also been looking at
Twisted, Python's marvelous asynchronous
mouse organ networked application framework thingy. It seems that as well as being very clever, it's actually reasonably well documented these days. The
Perspective Broker and Avatar stuff seems to be a good fit for games where the players can write code which is not trusted by the system, since the choice of which methods allow remote access imposes some sort of
capability based access control. If I ever wrote a MUD in Python, something I've been threatening for some years now, Twisted would be the way forward (indeed, it was originally created to provide multiplayer interactive fiction in the form of
Twisted Reality, another addition to fine the fine Internet tradition of hugely ambitious, but largely unfinished, MUD servers).
It'd probably be easier just to do this in Java. Python's restricted execution stuff is not really there, so if you wanted to allow players to program (which I think is essential for holding people's interest once they've finished the game proper) you'd probably end up running untrusted code in another process and using PB to talk back to the server. Still, it's a nice dream. I saw that the author of MudWalker has got a
prototype MUD written in
E, the capability-based security language, which might well be worth a look too.
I remember it looking cool and hip and everything, but I never got around to actually using it for anything.