Systems as packages
Chargen, scenes, boards and jobs come as packages. Installing one takes seconds from the admin pages, with no install script to paste into the game. See what it will change first, and roll it back if you change your mind.
A one-click installer sets up a rented server. The first visitor claims the admin account, then picks staff roles and the systems the game needs.

Staff write the game’s setting, rules and guides in the browser, and visitors can read them before they make a character.

Systems as packages
Chargen, scenes, boards and jobs come as packages. Installing one takes seconds from the admin pages, with no install script to paste into the game. See what it will change first, and roll it back if you change your mind.
Backups while people play
Copy the live world without stopping the game, on a schedule if you like.
Updates keep players connected
Restarting the game server for an update doesn’t drop anyone.
Roles, not one wizard bit
Give a staffer the jobs queue or the wiki without giving them the whole game. See roles.
Players and coders carry on as they are.
Commands and softcode
SharpMUSH runs PennMUSH commands and softcode, and coders can write it from their client as before. The differences are listed.
Clients
Any MU* client connects over telnet, with MXP, Pueblo and GMCP for the clients that use them.
Bring your game
Import a PennMUSH, TinyMUX or RhostMUSH database with its mail. Code from TinyMUX and RhostMUSH is rewritten where it can be, and the import lists every change for you to check.
Character profiles from your own sheets
The website’s character list and profile pages are answered by softcode on the game’s HTTP
handler, so they show your game’s own sheet, fields and groups. json_fill() fills a JSON
template kept in an attribute, and named arguments (%<name>) and
chain() keep that code short.
Forms written in softcode
Chargen, applications and staff requests can be forms on the website,
written in softcode the way a +command is, or put together in the portal’s App Builder.
@http lets the same code call outside web services.
Layouts in the game's look
box(), fields(), datatable() and gauge() describe a display once. Each player sees it
drawn in the game’s layout theme at their own screen width, and a
screen reader reads it in order. See visual layouts.
Plugins for the rest
When softcode isn’t enough, a C# plugin adds commands, functions and services to the server, without a fork.
Their own client or a browser, on a computer or a phone. Scenes logged as they pose. One account for all their characters. Screen-reader support in both.
Staff pick the portal’s theme, and each player can choose their own.



