tkMOO-light

Frequently Asked Questions

See also the FAQs available elsewhere

Questions

error on Macintosh OS 9x, can't find tcl8.3

Before you install tkMOO-light you should ensure that any existing copies of Tcl/Tk have been removed from your system. To do this, use the VISE uninstaller that comes with the Tcl/Tk system. After uninstalling you *must* restart your Macintosh, to ensure that the uninstalled files are properly removed.

installing tkMOO-light on Mac OS X

A Mac OS X version of Tcl/Tk doesn't exist yet, but you can still use the client if you install the Xfree86 X11 graphics system. You can find more details here:

how do I use MCP local edit?

You still need to set your MOO options to tell the MOO to send you MCP information when it performs certain tasks. For example MCP local editing requires that you to do the following:
    @editopt +local
    @clientopt +edit 
    @clientopt +mcp-edit
Thereafter you should be presented with whatever passes for a local editor session in your client when you type:
    @edit me
After all this, MCP editing mode only works if your client has established an MCP authentication key with the server.

100% CPU usage on Solaris?

Applications using the current versions of Tcl/Tk can consume 100% of the CPU when configured to use threads, a form of multiprocess support on the Solaris OS. Some binary installations of Tcl/Tk available for the Solaris platform are compiled with threading enabled. Download Tcl/Tk for UNIX and then build and install it yourself, with thread support disabled. tkMOO-light doesn't require thread support, so it'll work fine on the newly installed Tcl/Tk.

getting through a firewall

Q: "I'm sitting behind a firewall. How can I connect to a site outside the firewall and still use the client?" A: Use the Connections->Open dialogue and enter the host name and port number of your firewall:
	Host:  your.firewall.com	Port: 23
You should then see the firewall's prompt. At the prompt enter the commands you normally type to get to your chosen M**:
	prompt> connect jhm.ccs.neu.edu 1709
You should now see the M**'s login screen. Enter your character's login id and password, and you're in!

using jtext

Q: "how do I get jtext support?"
A: on a JHCore MOO, like JHM or Meadow you need to type
	@set-jtext-form tkmoo
Thereafter commands like 'help' will be displayed using different fonts for headers and links. jtext is only available for JHCore MOOs.

You can turn jtext off with a command like:

	@set-jtext-form linemode

error messages

Q: "the client popped up a dialog box containing the words:
	... message '...' not authenticated by key ...
What does this mean?"
A: Your client received an XMCP/1.1 message that had the wrong authentication key. This happens if you've not set a working authentication key value, so you probably tried using a desktop or whiteboard before the key was set. Use the command '@xmcp_challenge' on the XMCP/1.1 Feature Object (xfo) to set a new value for the key.

You can add the '@xmcp_challenge' command to your worlds.tkm file for the MOO you're connecting to. Then the client will automatically type '@xmcp_challenge' for you each time you connect to the MOO.

Q: "I tried using the desktop and the MOO printed out the following message:

        bad caller[_perms()].
    
What does this mean?"
A: This message gets printed for two reasons. Either you tried using an object that you weren't authorised to use, eg: an object that you didn't own and which would have sent messages to someone other than yourself. Alternatively this message appears if the XMCP/1.1 object suite has not been properly ported to a MOO. The XMCP/1.1 Driver and XMCP/1.1 Feature Object are linked to each other by special properties on the objects. See About XMCP/1.1 for more information on installing these objects.

how do I turn MCP on?

JHCore's MCP requires you to provide an authentication key which the server uses to tag any information it sends from Server to Client. If you don't set the key then JHCore will refuse to speak MCP to you. You need only set the key once, usually at the beginning of the session, for it to work. If you disconnect and then connect again then you will have to set the key again. You can set your .authentication_key value by typing:
    #$#authentication_key 123456789
The string '123456789' is the key. The #$#auth... message is normally sent automatically by the Client when it sees the Server send some magic token. JHCore sends:
    #$#mcp version: 1.0
to the Client when you connect. A client like tkMOO-light detects this, chooses an authentication key and sends the #$#aut.... message in response.

Some MOOs correctly send information to the client to let it establish the key, but sometimes the MOO needs a little prompting. If you're a programmer then you can try adding the following line to the Connection script for the world you're connecting to:

    ;;notify(player, "#$#mcp version: 1.0")

can tkMOO-light do multimudding?

No. At present it isn't possible to connect to more than one server using a single instance of the tkMOO-light program. If you want to connect to 2 or more servers at the same time you need to start up seperate instances of tkMOO-light.