Abi (abigailb) wrote,

I finally started work on the web mud client today. This has gone better than I expected. I am able to load up a web page, type a command into a box, press a button, and then have it log in to the mud as a user, do that command, and send the result back for display in the HTML page, which displays with formatting as it would have done in a telnet.

I am declaring victory for today.

The big missing thing is that each time I do a command it logs me in and out, so we need some kind of persistent server-side process that maintains the connection. This will probably be a Comet-style hidden-IFrame thingy, so it can asynchronously send the output of other people's commands to you. The tricky bit will be synchronising this and the HTTP POSTs we'll be sending on each command - which will either involve doing a lot of HTTP server wrangling, or possibly just some backend changes to the MUD to allow transient connections to provide an auth cookie and a command, and have the output sent to them, which might be easier. Also there is the issue of ordering to consider: for the moment I might just make it not possible to execute a command until the answer for the previous command has come back, which will probably not be ideal for production use but will do.

Eventually I'll make some significant changes to the mud's output backend to make the output we can display in the browser nicer: we have an internal formatting markup that I can just dump out directly, which can provide richer information than just the ANSI escape codes (like, it knows the difference between a playername and something that happens to be in bright cyan). Also we can annotate the bits that actually need to be in >pre;< (ASCII art, tables), and then have the prose be in a proportional font. (maybe tables can end up being actual HTML tables, that sort of thing.)

But for now I just need to get the Comet bit working.
Tags: chrysalis, mud

  • (no subject)

    Eoin Colfer to write 6th Hitchhiker's novel! Eep! Unsure this should happen at all. Can we trust this man? A few days ago there was a Douglas…

  • (no subject)

    Harry Enfield as Dirk Gently. I'm not quite sure how I feel about that. Robert Duncan (Gus out of Drop the Dead Donkey) will make a superlative…

  • (no subject)

    Apparently this year's Big Brother will be set Outside of the Asylum (see explanation). Not fair.

  • Post a new comment


    Anonymous comments are disabled in this journal

    default userpic

    Your reply will be screened

    Your IP address will be recorded