In multiplayer online games, a MUSH (a backronymed variation on MUD most often expanded as Multi-User Shared Hallucination, though Multi-User Shared Hack, Habitat, and Holodeck are also observed) is a text-based online social medium to which multiple users are connected at the same time. MUSHes are often used for online social intercourse and role-playing games, although the first forms of MUSH do not appear to be coded specifically to implement gaming activity. MUSH software was originally derived from MUDs; today's two major MUSH variants are descended from TinyMUD, which was fundamentally a social game. MUSH has forked over the years and there are now different varieties with different features, although most have strong similarities and one who is fluent in coding one variety can switch to coding for the other with only a little effort. The source code for most widely used MUSH servers is open source and available from its current maintainers.
This article needs additional citations for verification. (January 2007)
A primary feature of MUSH codebases that tends to distinguish it from other multi-user environments is the ability, by default, of any player to extend the world by creating new rooms or objects and specifying their behavior in the MUSH's internal scripting language. Another is the default lack of much player or administrative hierarchy imposed by the server itself.
The programming language for MUSH, usually referred to as "MUSHcode" or "softcode" (to distinguish it from "hardcode" – the language in which the MUSH server itself is written) was developed by Larry Foard. TinyMUSH started life as a set of enhancements to the original TinyMUD code. "MUSHcode" is similar in syntax to Lisp. Most customization is done in "softcode" rather than by directly modifying the hardcode.