AmigaMUD, Copyright 1997 by Chris Gray CGMud, Copyright 2001 by Chris Gray The 'smud' Client Program The smud program is a simple text-only client for use with a CGMud server running on the same machine. It can be run only from a shell since it relies on standard input and output working. Smud is good for quick runs since it is much smaller than the full 'CGMud' client program. Smud can also be valuable on a system with limited memory. I typically use Smud for compiling the standard scenario, with smud - use value as an inactivity timeout. If no user input occurs after the given interval (which is given in minutes), then the client will be disconnected from the server. Unfortunately, since there is no way to abort a system read request, smud itself cannot exit until its pending read request returns. Using the -p flag allows the timeouts to work correctly, but at the expense of continual extra system load. -f - the given decimal number is passed to "mud.library" to control some client caching. There must be no spaces between the 'f' and the value. The value is the sum of the following: 1 - cache procs. smud will cache the definitions (but not the bodies) of builtin and user procs in the CGMud language. This saves refetching them when parsing procs (such as after editing one). 2 - cache symbols. smud will cache the values of symbols that it has fetched from the server. Again, this cuts down on communications when parsing CGMud procs. Note that both of these flags increase the amount of memory consumed by smud. This memory is not freed until smud exits. The default value of 'FLAGS' is 3, i.e. both caches on. Note that this is the opposite of the default for the full MUD client program (old AmigaMUD only). -F - tells smud to force the use of the "TCP_NODELAY" TCP protocol option, even if the target server is remote. -N - use as the name of the character for the first playing session, rather than prompting for a name. -W - use as the password for the first playing session. If it is incorrect, it counts as the first attempt, and only two attempts remain. This is normally used in conjunction with -N, but can be used without it. Smud is able to start up an external editor for editing strings and CGMud procedures, just like the full Amiga MUD program. It also does this based on the "MUDEDITOR"/"EDITOR" environment variables and will default the editor name to be "vi". If a scenario uses the enquiry routines to ask about the nature of the effects available on a smud client, it will reply with all empty and zero values.