[Home] [Downloads] [Search] [Order] [Support] [Help/forum]

MUSHclient plugins

What are plugins?

Plugins are self-contained collections of related triggers, aliases, timers, variables and script routines. They are distributed as a single file, and installed by simply clicking on 'add' in the plugins dialog (see screen shot below).

They are intended to allow the distribution of extensions to MUSHclient functionality in a simple way, without having to have complex instructions about amending script files, adding triggers and so on.

Plugins can also save their 'state' (ie. remember variables) so that variables that are set in one session will be remembered in another. This happens on a per-plugin, per-world basis.

You can try the plugins below, and if you don't like them simply click on 'remove' in the plugin dialog box, to remove the plugin from your world.


List of available plugins

Name * Description Version Date
AFK_timer Once installed, this plugin will automatically set you AFK (away from keyboard) after the defined interval elapses (default of 5 minutes).

You should edit the plugin and customise it for the time interval you want, the exact "afk" command to send (default is "afk"), and to define the message the MUD sends when you become AFK, and not AFK any more.
1 Sat 08 Oct 2005
ANSI_Log Once installed, this plugin will log player commands, and output from the MUD, to the current log file using ANSI colour sequences.

As far as possible, the plugin will try to match the colours on the output lines to existing ANSI codes (this may fail if you are using MXP and the MUD sends non-ANSI colours).

It then generates the appropriate ANSI code and writes it to the log file.

The trigger and alias in the plugin set the "omit from log" flags so the lines are not logged twice.

They are set to "keep evaluating" so that other triggers and aliases are still processed.
1 Fri 25 Jul 2003
AutoHealer This plugin is an advanced version of your basic autosipper. It will do what others do for you - drink health and mana elixirs, or eat moss, when your health/mana falls below a certain level relative to the maximum. The main advantage of this particular system is that it doesn't depend on balance triggers and, thus, is very difficult to break. It doesn't care whether you were asleep last time you tried drinking an elixir, or you had anorexia, with a minor adjustment it won't even care if you are badly lagged. There's a drawback to this though - Stupidity can cause you to miss sips, but if you keep track of your afflictions and know enough scripting for Mushclient, you can include a check for Stupidity in the AutoHeal sub to double sip or eat. For usage and tuning details see plugin description, or type 'AutoHealer:help' after installing it.

Read the help or description before using.

For more information about this plugin, see:

http://achaea.mc0wnage.com/forums/viewtopic.php?t=72

Author: Keldar
1.4 Sun 21 Dec 2003
Calendar

Implements a todo list and events list using a database

This plugin:

  • Lets you add 'to do' items
  • View outstanding 'to do' items, and ones already done
  • Lets you mark items as done
  • Add events
  • View all or future events, or events in the next 14 days
  • Modify or delete events

See description inside the plugin for more details.

If you have trouble getting it to work you may need to download:

For a more detailed discussion about problem-solving this plugin see the forum posting Calendar - todo list, events

1.1 Sat 16 Nov 2002
Chat

This provides a "command-line" interface to the chat system.

You need MUSHclient version 3.37 or higher to use it.

For a detailed description of the chat system, including using this plugin, see The MUSHclient Chat System.

1.2 Sat 26 Apr 2003
Chat (Lua version)

This provides a "command-line" interface to the chat system.

You need MUSHclient version 3.72 or higher to use it.

For a detailed description of the chat system, including using this plugin, see The MUSHclient Chat System.

If you are using the default 'Lua sandbox' you will need to enable a couple of functions in the 'os' table for this to work ...

In MUSHclient's File menu -> Global Preferences -> Lua, find the line:


  os = nil        -- no operating system calls

and change it to:


  local old_date, old_locale = os.date, os.setlocale -- save
  os = {}  -- make empty table now
  os.date, os.setlocale = old_date, old_locale -- restore
1 Wed 21 Dec 2005
CheckAttribute For use on a MUSH - lets you grab an attribute, and check for the number of each type of bracket in it (brace, round, square).

Usage: check object/attribute

eg. check me/describe
1 Thu 15 Jul 2004
ColourNote This sends a coloured message to the world window.

eg.

world.CallPlugin "8f86e2da6eea3806f1836050", _
"colournote", _
"~R red ~G green ~B blue ~RG red-on-green"
1 Wed 23 Oct 2002
Copy_Output This plugin fixes a problem, where if you have the Global Option set "all typing goes to command window", you cannot select text in the output window and press Ctrl+C to copy it.

Once installed, the plugin intercepts Ctrl+C, and if it finds selected text in the output window, copies that to the clipboard, otherwise it defaults to the normal behaviour (that is, copying from the command window).
1 Sat 16 Feb 2008
Editor For use on a MUSH - lets you grab an attribute, edit it in a notepad window, and then press Shift+Ctrl+S to send it back to the MUSH.

Usage: edit object/attribute

eg. edit me/describe
1 Wed 06 Aug 2003
EQHit EQHit is designed to help you minimize equipment loss from damages during battle. It logs all damage to your eq and optionally notifies you when to remove the piece of eq that is about to scrap. This plugin is designed for the Realms of Despair MUD, but it can probably be customized for other MUDs very easily.

Written by Poromenos.
1.3 Tue 22 Jul 2003
Grab For use on a MUSH - lets you grab an attribute, edit it in the command window, and then press <enter> to send it back to the MUSH.

Usage: grab object/attribute

eg. grab me/describe
1 Thu 14 Nov 2002
HathcockReflexes

Triggers and aliases, for the use in the realms of Achaea and Aetolia.

This is a list of all the aliases that my system uses through MUSHclient. There are alot of them, but don't worry, most you may never use, I tried to put the more important ones near the top and place them all in their groups.

For a detailed description of them, see forum posting with alias listing.

Author: Hathcock

1 Mon 12 Apr 2004
Health Bar Shows your current HP, Mana, and Movement points in a colour "health bar" at the bottom of the MUSHclient window (using the InfoBar).

It should work under SMAUG once you customise your prompt, eg.

prompt <%h/%H hp %m/%M m %v/%V mv>
fprompt <%h/%H hp %m/%M m %v/%V mv>

For other MUDs your customisation may be different, or you can edit the plugin and change the trigger match (about line 4).
1.1 Mon 28 Apr 2003
Hyperlink_URL Detects text starting with HTTP:xxx and makes that part into a hyperlink.

Limitations -

1. Only detects one per line

2. The rest of the line will be shown in white on black - other colours will be discarded.
1 Fri 25 Jul 2003
Hyperlink_URL2 Detects text starting with HTTP:xxx and makes that part into a hyperlink.

Limitation: The hyperlink (http://xxx) part must all be the same colour (that is, in the same style run)


This is an improved version of the Hyperlink_URL plugin. This one is written in Lua and preserves the colours in the original line.
1 Thu 06 Apr 2006
Idle_Message Sends a message to the MUD (once) after you are idle for a nominated amount of time.


You can specify the time as hours, minutes, or seconds, like this:

OnIdle 30 say Gone AFK <-- after 30 seconds
OnIdle 1 20 say Gone AFK <-- after 1 minute 20 seconds
OnIdle 1 10 20 say Gone AFK <-- after 1 hour, 10 minutes, 20 seconds
1 Thu 29 Aug 2002
JScript_Version Displays the current version of JScript you are using.

Type: "scriptversion" once you have installed it.
1 Fri 15 Nov 2002
Level_Timer Once installed, this plugin will time how long it takes you to level.

The first time you level it simply notes when it happened. Subsequent times it will display how many days, hours and minutes it took to level.

You will need to adjust the trigger match line (4th line) to correspond to what you see on your MUD when you level. For instance, if you see something like:

You gain 234 experience points. You are now level 23.

Then the level message would be:

You gain * experience points. You are now level *.
1 Fri 25 Jul 2003
msp

Adds some MSP (MUD Sound Protocol) support to MUSHclient.

This is implemented by using a trigger to match on the !!SOUND commands used by MUDs to send MSP sounds.

You need to manually obtain the sound files, see this forum posting for more details: Doing MSP (MUD Sound Protocol) with MUSHclient .

1 Fri 09 Aug 2002
MudDatabase

Demonstrates accessing a database from a plugin in MUSHclient.

This plugin:

  • Creates the database if required
  • Creates the table if required
  • Lets you add or delete records
  • Lists records
  • Executes any SQL statement
  • Executes any SQL query
  • Lets you change to any database
  • Detects errors and displays them in white-on-red
See description inside the plugin for more details.
1.4 Sun 10 Nov 2002
Multiple_Send This plugin lets you send a command to one or more worlds, or all worlds, like this:

#all say Goodnight All <-- sends to all open worlds
#1 say Hi everyone <-- sends to world #1
#123 say Follow Me <-- sends to worlds #1, #2 and #3
1 Wed 28 Aug 2002
MUSH_teleport This lets you maintain a list of destinations of interest to teleport to and go to them by name. This is intended for MUSHes but could be adapted for other MUD types.

eg. addtel town_square 1862

Then later on ...

teleport town_square

The purpose of this is to work around the problem on MUSH (and similar) servers that places are referred to in the database by number, not name.
1.2 Sun 22 Sep 2002
NewActivity Lets you switch to the next world which has new activity (new output from the MUD) by just typing "na". 1 Sun 27 Oct 2002
PerlScript_Version Displays the current version of Perlscript you are using.

Type: "scriptversion" once you have installed it.
1 Mon 28 Apr 2003
Plugin_list Lists installed plugins. 1 Mon 03 Jun 2002
Plugin_Summary Produces a short list (summary) of installed plugins. 1 Mon 12 Aug 2002
Python_Version Displays the current version of Python you are using.

Type: "scriptversion" once you have installed it.
1 Sat 26 Apr 2003
Random_Socials This is for SMAUG or similar MUDs that have a "socials" command.

Every 10 seconds it has a 20% chance of displaying a social chosen at random from the list.

If it does not have a list of socials it automatically builds one by doing a "socials" command.
1.1 Thu 08 Aug 2002
Reconnecter This plugin will automatically reconnect you when you are disconnected, at a user-configurable interval (say, every 5 seconds).

Version 2 rewritten in Lua, to be more useable under Linux.
2 Wed 12 Dec 2007
Repeat_Command This plugin lets you repeat a command to the MUD by putting #x in front of it, for example:

#6 kick kobold


To use, simply install.

Note that the default speedwalk string in MUSHclient is also "#", so if you have speedwalks enabled you will get an error message about "invalid direction in speedwalk".

To fix this, either disable speedwalks, or make the speedwalk string something else (eg. ##).
1 Sun 17 Feb 2008
Sample_plugin Example of writing a plugin. 1 Thu 06 Jun 2002
sapi_speaker Once installed, this plugin will automatically speak text arriving from the MUD using SAPI (Speech Applications Programming Interface).

The speech API seems to come installed as standard with Windows XP. I can't say for sure where to get it if it isn't, but I would try a search for SAPI on the Microsoft site.

See this forum post for a bit of a discussion:

http://www.gammon.com.au/forum/?id=7767

Once installed you can type "jfw" to toggle speaking off and on.
1 Fri 13 Apr 2007
Scan Does a "scan" every 5 seconds. 1 Sun 04 Aug 2002
ScoreChecker Example of a plugin that checks for stats rolled, and replies "N" (to reject them) until a specified level of Str, Dex, Int, Wis, Cha and Con are rolled. 1 Tue 05 Nov 2002
ShowActivity This automatically updates the Info Bar every 2 seconds to show the names of worlds with new activity. 1 Tue 23 Mar 2004
SMAUG_automapper_helper This plugin (attempts to) detect room names as you walk around in SMAUG, and if found, and the automapper is active, adds them to the automapper as a comment. 1 Tue 20 Aug 2002
Status_Bar_Prompt This plugin demonstrates using the "partial line" feature introduced in version 3.44 of MUSHclient to extract your status (hit points etc.) from a prompt line, before a newline is received from the MUD. 1 Wed 03 Mar 2004
Super Health Bar Shows your current HP, Mana, and Movement points in a separate Visual Basic program that shows each value in a separate progress control. For more details, see:

http://www.gammon.com.au/forum/?bbsubject_id=3128&page=1

It should work under SMAUG once you customise your prompt, eg.

prompt <%h/%H hp %m/%M m %v/%V mv>
fprompt <%h/%H hp %m/%M m %v/%V mv>

For other MUDs your customisation may be different, or you can edit the plugin and change the trigger match (about line 4).

The Visual Basic program (source included) can be downloaded from:

http://www.gammon.com.au/mushclient/HealthBar.zip


It may not work correctly if you don't have the VB DLLs - getting it to work reliably is currently a work-in-progress.

WARNING - because of the above (see the forum message for more details) this plugin should be considered a beta test plugin - do not use while you are connected to worlds if you are worried about MUSHclient, or your PC, crashing. :)
1 Sat 16 Aug 2003
TargetSwitch Lets you switch targets in a fight.

Enter "t1 = name" to specify a target (you can have up to 9 targets) and then choose one (eg. type "t1" on its own).

Then, entering "kick", "punch" or "stab" will attack the specified target.
1 Tue 05 Nov 2002
Timer This simple plugin shows an "elapsed time" timer on the status bar. It can be reset by typing "resettimer" so that you can use it to time any general event. 1 Wed 03 Mar 2004
VBscript_Version Displays the current version of VBscript you are using.

Type: "scriptversion" once you have installed it.
1 Fri 15 Nov 2002

* See below for downloading instructions

Magnum has also released some plugins at Magnum's World - MUDs.


How to download a plugin

To download a plugin, right-click on the plugin name above, and then select "Save file as" or "Save target as" (depending on your browser) to save the plugin file to disk.

Then put the downloaded file into the MUSHclient "plugins" directory.


How to install a plugin

Go to MUSHclient's File menu, select 'Plugins' (Shift+Ctrl+P), and then click on the 'Add' button. Choose the appropriate plugin file from the file browser.


How to write your own plugin

As far as possible, test the plugin by adding triggers, aliases, timers, variables and scripts in the normal MUSHclient GUI interface. Then when you are ready, go to MUSHclient's File menu, select 'Plugin Wizard' (Shift+Ctrl+Alt+P). You will see a dialog box like this one ...

Callbacks

MUSHclient will call certain routines inside your plugin script if they are present at predetermined times. See the forum posting Plugin callbacks for more details about when this happens.


What's all this XML stuff?

MUSHclient world files, and plugin files, are now stored in the industry-standard XML format. This makes it easy to read them, and maintain lists of things (eg. lists of triggers, lists of variables). You don't need to be an XML expert to use plugins, the plugin wizard will generate the necessary codes. When amending a plugin just stick to the basic XML structure you find, and it should continue to work OK.


More information

For more discussions about plugins, see the Plugins section of the MUSHclient forum.


[Back] [Home]

Written by Nick Gammon - 5K

Comments to: Gammon Software support
[RH click to get RSS URL] Forum RSS feed ( http://www.gammon.com.au/rss/forum.xml )

[Best viewed with any browser - 2K]    [Internet Contents Rating Association (ICRA) - 2K]    [Web site powered by FutureQuest.Net]