PennMUSH Webclient

  • Hello PennMUSH Wizards,

    In case you hadn't heard, the latest github version of PennMUSH now supports webclients connecting directly from a user's web browser using HTML/Javascript and websockets. Your website can use the simple example client to allow guests to connect, or you can create a completely unique client made of HTML/CSS and controlled using Javascript. I have provided an example client javascript library that implements xterm256 color. With wizard or pueblo powers you can enhance your room parents and +sheet commands with safely embedded HTML and clickable "Pueblo"-like command links only seen by webclients. It is also possible for the MUSH to send JSON to the clients, telling clients to show popup dynamic maps, status displays or anything else you could imagine displaying in a web page using information from the MUSH.

    My example client can be found at

    Any updated PennMUSH can quickly and easily integrate the example client into their own website to allow guests to try out the game with full xterm256 color support. There is no complicated setup like a Flash client, and users connect from their own IP address allowing sitelock rules to remain effective.

    Any games with a skilled HTML/Javascript wizard that are interested in extending the example client to uniquely support their game, please contact me and I will help you get started. Softcode wizards can see 'help websockets' for more information on the new functions added to send HTML and JSON, along with the existing Pueblo functions that still work.


  • Great to see the use of HTML5 web clients on the rise all over the hobby! :) This looks like a nice and useful addition.

  • Damn... I have a hate on for Penn because I hate the channel commands requiring = or + on them all the time, but being able to do a webclient is a good way forwards for the game I think!

  • @lithium You do realize that Penn's comsys can be configured to work like MUX channels now?

  • @grapenut Thank you for releasing this. We gave it a go as soon as we saw that it was out and it was very easy to do the basic setup. Haven't figured out anything more to do with it yet but just having a good webclient where guests connect from their own IP is very beneficial.

  • @nymeria I'm so glad you like it!

    You'll need to be good with Javascript in order to do much else with the minimal example client. I kept the HTML/CSS very basic so you can copy and paste it into your own website. A little spit and polish on the styling will go a long way towards blending with your theme.

    I've been working on a more advanced example that's bundled with a window manager to allow for multiple panels, e.g. a detachable channel window or a dynamic map. I hope to make it a little more straight forward for MUSH Wizards to use JSON to drive those displays without needing to know any Javascript.

    I'm also looking to make it more mobile-friendly with better CSS. I'm very much open to ideas and suggestions for improvement!

  • @rnmissionrun said in PennMUSH Webclient:

    @lithium You do realize that Penn's comsys can be configured to work like MUX channels now?

    Yes I do know this, but rarely does anyone /do/ this.

    So every time I am on a Penn I am always ARGGHHH!

  • @lithium
    Penn also has MUX-style channels as a default option now. Like, I don't think it requires any extra set up; it's just part of the core, and should just straight-up work with addcom or @clist and such.

Log in to reply