BackDrops  Views  Lego  Megabloks  Puzz3D  Compilers  MUDs

CGMud Client

On this page:

  • General information
  • Installing the CGMud client on Linux
  • Installing the CGMud client on Windows
  • General usage of the CGMud client
  • Playing the game
  • Downloads
  • General Information

    As mentioned in the top CGMud page, the CGMud client is a Java application. That means that you need to have a Java interpreter on your system in order to be able to run it. If you know you have a Java system, which should be true for most Windows users, skip the following paragraph.

    NOTE: October 22, 2003. I've been seeing failed connection attempts on the custom client port for several months now. I don't know if that is people trying to use the Java client, or whether people are trying to use other MUD clients to connect to that port. Only the Java client, and a Mac OS/X client by Marn, can use that port. Others should use one of the telnet ports (16666 for Unix-style telnet clients, 16668 for dumb telnet-like programs that don't do any of the protocol, or 16669 which ought to work reasonably with clients designed for LPMuds). Since the Java client is quite old now, its possible that it isn't working properly with newer Java implementations. Let me know if that is happening to you, and I'll add a note here.

    There are several different Java interpreters for most systems. Some, if not all (I just don't know) Microsoft Windows systems come with a Java interpreter installed as part of Internet Explorer. The official site for Java material is here. The CGMud client requires only Java 1.1 technology - it does not require or use newer 1.2 or 1.3 features. Sun's JDK (Java Developers Kit) page for Java 1.1 is here. This page contains download links for versions for Solaris, Linux and Windows. A page full of information on other ports is here.

    Installing the CGMud client on Linux

    First, make sure you have an appropriate JDK installed on your system, and setup so that you can find the "java" interpreter. As an example, I have Sun's JDK 1.1.7 installed in "/usr/local/java", so my "java" is in "/usr/local/java/jdk117_v3/bin/java". The normal way of running the interpreter from a command line is to simply specify the name of the Java class containing the "main" entry point. Environment variable CLASSPATH is used to direct the interpreter to another location to find the classes in. The interpreter also lets you specify Java "environment" values on that command line. The CGMud client uses one of those to tell it where to find the client-side images from the image archive. The client also accepts a couple of command line flags, and requires the name of the server and the port number to connect to. See the section below for details. For convenience, I recommend putting this into a simple shell script. Here is the version in my personal bin directory:
    #! /bin/sh
    cd /home/cg/MUD/Client
    CLASSPATH=cgmud.jar java -DImageDir=Images cgmud.main.Main -f mud.graysage.com 16667
    
    You can grab this and put it into a file called "cgmud" in your home directory. Then, just change the "/home/cg/MUD/Client" to be a path to where you have put the CGMud client stuff, and you should be ready to go, by simply typing "cgmud" into a shell. For example, if you have put the CGMud client files (the ".jar" file and the directory of images) into a directory called "cgmud" in your home directory, and your home directory is "/nfs/users/fred", then you would just need to change the "cd" line to be:
    cd /nfs/users/fred/cgmud
    

    Installing the CGMud client on Windows

    Most windows systems will already have a Java interpreter installed. It will be somewhere like "C:\System\Windows\java.exe". If its not there, use the "Find File" tool to try to find it. I don't know when this became common, but I'd guess it is present on Windows 98, Windows NT and Windows 2000. It might not be present on Windows 95 - can someone check for me? I've just learned that since Microsoft has failed in its attempt to control Java, and has invented their own replacement, that they will not be including a Java interpreter by default with Windows XT. Some installations of Windows 2000 may not have a Java interpreter, also. So, some Windows users may have to download and install a Java interpreter. Like the Linux version, it can be downloaded from this JavaSoft page.

    Like on Linux, you can setup the CGMud client to run from a shell (command window or CLI). Those that wish to do that should know enough to be able to do it themselves, using the information in the Linux section. If you normally use the desktop you should be able to install an icon on the desktop that will startup the CGMud client. The procedure is something like this (I don't have a Windows machine to try this on, so if this is wrong or misleading, someone please correct me):

    Note that you must use the exact spelling and capitalization shown for the various parameters (not strictly true, but unless you know which ones don't matter, just make everything exactly as given). I'm told that at least some Windows versions will find the java.exe program for you, as soon as you setup a shortcut to use it. So, you can skip the first step, and just start off by creating a shortcut on the desktop.

    You should now be able to activate (normally double-click) the new icon to run the CGMud client. You should likely rename the shortcut to be something like "CGMud".

    General usage of the CGMud client

    The CGMud client must be told the name of the machine on the internet to connect to, and the number of the "port" on that machine to use. I'm running a CGMud server on "mud.graysage.com", so you will normally use that as the name of the machine to connect to. That server has a Java client connection ready on port 16667. So, that is why in the above installation examples, I used those values. If the client is working fine for you at this point, you can probably skip the next paragraph, which gets a bit technical.

    In general, the shell usage line for the Java interpreter is like:

    java -Dvar=value ... classpath-to-main parameters ...
    
    i.e. some settings for Java environment variables, followed by the name of the 'main' function to run, relative to the CLASSPATH, and then followed by any parameters the specific program needs. The Windows form gets the "CLASSPATH" from the "-cp" parameter, and the Linux form gets it from a shell environment variable. In the case of the CGMud client, you are required to specifiy the name of the machine to connect to, and the port on that machine to connect to.

    On startup, the CGMud client should present a window something like this: => .
    This is a simple window with a prompt and input area at the bottom, and an output area occupying most of the window. The initial prompt will be "Enter character name:". With some Java machines, the initial output window is either not present, or is very small, or is too high. This can make it impossible to read any error messages from the client or server during the inital connection. I haven't found an elegant fix for this, but I did find a hack that seemed to work. This is the '-2' flag that builds the initial interface twice, and then discards the first one. Any Java gurus who can fix it will be heartily thanked. If you have problems of this kind, and are having trouble logging in to the MUD, check here.

    Note that clicking *in* the text output window puts Java's idea of that window's cursor at the point at which you click. From then on, Java will want to keep that point visible, and so the window will stop scrolling. Manually scroll to the bottom and click at the end to unfreeze it. Note also that, depending on your system settings, etc., it may be necessary to hit your "Num Lock" key to get the numeric keypad to work with the CGMud client.

    Asside from the required server name and port number, there are some flags that can be given to the CGMud client. These must be given before the server name and port number.

    Playing the game

    Like most MUDs and adventure games, the standard CGMud scenario should be fairly easy to play. A certain amount of help is available in the game itself, and more is available here, which is a very old version of some documentation for beginning users. After you are accustomed to the system, you might want to try some online building, which everyone can do in the "Playpen" (on the west side of the south street). Documentation on that is here.

    Some quick, short notes for those who don't want to read more:

    If you enter a combat zone:

    Downloads

    There are 3 archives here that you can download. To play the game you only need the first one. The second contains some images that the client can use, but is not necessary - the game will use alternate, generated graphics if you do not have the images, or if the CGMud client can't find them. You don't need the third unless you are a programmer and want to look at the Java source-code for the client.

    cgmud.jar This file is a "jar" (Java ARchive) file. It contains the Java bytecode for the CGMud client. You need to download this to your local computer. You should not change the name of the file, and you should likely put it in a directory of its own, typically called "cgmud". If you are using Netscape as your browser, do *not* simply click on the link to the "jar" - Netscape will try to run it as a Java Applet (which is the form of Java that browsers use), and will fail. Instead, hold down a shift key, and then click on the link - Netscape will ask you where you want to put the file, and will not try to run it. I can't test with Internet Explorer, but I'm told it doesn't do that, although it may depend on system and user settings.
    Images.zip This ZIP file contains the images that the CGMud client will attempt to use, as directed by the scenario running on the server. If you don't have the images, or the CGMud client can't find them, the scenario will generate alternate graphics where needed, or simply not show anything. Simply download this file, and unzip it in the directory you created for the CGMud client (typically called "cgmud"). The unzip will create a directory called "Images", and put the images there. The graphics here are very poor - I welcome improved versions. Basically, the graphics were originally done (some by me, a non-artist programmer, and some by others) for the old Amiga system, and so they are only 160x100 in resolution, and use only 32 colours. The Java CGMud client uses 320x256 (or 320x200, depending on the panel) for graphics, and has 256 colours available, so much better images are possible.
    ClientSource.zip This zip file contains the Java sources to the CGMud client. It is not used when playing the game. The sources are useful only to those who want to see how the client works, or who want to try to improve the client.
    AmigaClient.zip This zip file contains the source to the old Amiga client, written in my Draco programming language. Only extreme geeks will want to look at this, although, buried in it, is information on how to add more functionality to the Java client.


    Up  CGMud Home  MUD Home  Home