<h1>Using MUX as a Standard<aclass="headerlink"href="#using-mux-as-a-standard"title="Permalink to this headline">¶</a></h1>
<p>Evennia allows for any command syntax. If you like the way DikuMUDs, LPMuds or MOOs handle things, you could emulate that with Evennia. If you are ambitious you could even design a whole new style, perfectly fitting your own dreams of the ideal game.</p>
<p>We do offer a default however. The default Evennia setup tends to <em>resemble</em><aclass="reference external"href="http://www.tinymux.org/">MUX2</a>, and its cousins <aclass="reference external"href="http://www.pennmush.org">PennMUSH</a>, <aclass="reference external"href="http://tinymush.sourceforge.net/">TinyMUSH</a>, and <aclass="reference external"href="http://www.rhostmush.org/">RhostMUSH</a>. While the reason for this similarity is partly historical, these codebases offer very mature feature sets for administration and building.</p>
<p>Evennia is <em>not</em> a MUX system though. It works very differently in many ways. For example, Evennia deliberately lacks an online softcode language (a policy explained on our <aclass="reference internal"href="Soft-Code.html"><spanclass="doc">softcode policy page</span></a>). Evennia also does not shy from using its own syntax when deemed appropriate: the MUX syntax has grown organically over a long time and is, frankly, rather arcane in places. All in all the default command syntax should at most be referred to as “MUX-like” or “MUX-inspired”.</p>
<divclass="section"id="documentation-policy">
<h2>Documentation policy<aclass="headerlink"href="#documentation-policy"title="Permalink to this headline">¶</a></h2>
<p>All the commands in the default command sets should have their doc-strings formatted on a similar form:</p>
<li><p>Angled brackets <codeclass="docutils literal notranslate"><spanclass="pre"><</span><spanclass="pre">></span></code> surround a <em>description</em> of what to write rather than the exact syntax.</p></li>
<li><p>*Explicit choices are separated by <codeclass="docutils literal notranslate"><spanclass="pre">|</span></code>. To avoid this being parsed as a color code, use <codeclass="docutils literal notranslate"><spanclass="pre">||</span></code> (this will come out as a single <codeclass="docutils literal notranslate"><spanclass="pre">|</span></code>) or put spaces around the character (“<codeclass="docutils literal notranslate"><spanclass="pre">|</span></code>”) if there’s plenty of room.</p></li>
<li><p>The <codeclass="docutils literal notranslate"><spanclass="pre">Switches</span></code> and <codeclass="docutils literal notranslate"><spanclass="pre">Examples</span></code> blocks are optional based on the Command.</p></li>
</ul>
<p>Here is the <codeclass="docutils literal notranslate"><spanclass="pre">nick</span></code> command as an example:</p>
<spanclass="sd"> account - alias an account</span>
<spanclass="sd"> clearall - clear all your aliases</span>
<spanclass="sd"> list - show all defined aliases (also "nicks" works)</span>
<spanclass="sd"></span>
<spanclass="sd"> Examples:</span>
<spanclass="sd"> nick hi = say Hello, I'm Sarah!</span>
<spanclass="sd"> nick/object tom = the tall man</span>
<spanclass="sd"></span>
<spanclass="sd"> A 'nick' is a personal shortcut you create for your own use [...]</span>
<spanclass="sd"></span>
<spanclass="sd">"""</span>
</pre></div>
</td></tr></table></div>
<p>For commands that <em>require arguments</em>, the policy is for it to return a <codeclass="docutils literal notranslate"><spanclass="pre">Usage:</span></code> string if the command is entered without any arguments. So for such commands, the Command body should contain something to the effect of</p>