Mmucl is a mud client written in tcl/Tk. Tcl is a scripting language and Tk is its toolkit for building graphical interfaces.
Mmucl comes with three interfaces. Two, xmmucl and winmmucl, are graphical interfaces using Tk, and one, cmmucl, is a console interface. Xmmucl is a floating tool bar that uses an xterm to display mud output. Winmmucl provides its own window to display output in.
On unix systems the Makefile installs three scripts, xmmucl, winmmucl, and cmmucl to start the three different Mmucl interfaces. On mac and windows machines the startup script is start_winmmucl.tcl. (Only winmmucl will work on those platforms.)
The scripts that start Mmucl can take the following two command line arguments: -safe makes the user interpreter a safe interpreter. (Read your tcl documentation on safe interpreters for more information.) -exec arg ?arg ...? executes the given tcl script in the mmucl interpreter. To load your favorite character, Dave, automatically in xmmucl you might use "xmmucl -exec charload Dave".
When Mmucl starts it checks to see if you have a file called mmucl.rc located in the directory .mmucl off of your home directory. (Mmucl determines the home directory by checking the HOME environment variable. You can "#echo $env(HOME)" in Mmucl to check it.) Mmucl.rc is evaluated as a tcl script in the user interpreter. All of the Mmucl procedures are available to it. It can be used to add all kinds of useful things to Mmucl. Look at the sample mmucl.rc for examples of what you can do.
Xmmucl and winmmucl use the .Xdefaults style file, mmuclGui.conf, to configure fonts and many other aspects of their graphical interfaces. MmuclGui.conf should be located where you installed Mmucl. In Mmucl type "#echo $env(MMUCL_DIR)" to see where that is. The file itself contains instructions on its modification.
Mmucl is a mud client. It's basic function is to get send input from the user to the mud, the server, and to display output from the mud to the user. Telnet performs the that basic task well enough, but real mud clients add all sorts of enhancements. Common enhancements include performing an action when a specific pattern is found in mud output and shortcuts for executing complicated commands on the mud.
The user interacts with Mmucl primarily through a command line. The command line is used to either send text to the mud, evaluate a tcl script, or execute an alias. The command line undergoes interpretation through parse.
Executing a tcl procedure is fairly simple. Just type "#command ?arg ...?" to execute command. To make an alias for "t" that sends "tell" followed by any arguments given to the alias to the mud you would type: "#alias t {mudputs "tell %0"}". The second argument to alias is itself a tcl script!
The best way to learn what Mmucl has to offer is to read the documentation provided on the various Mmucl procedures and take a look at the documentation on tcl provided.