#HELPS 0 IMC~ IMC - InterMUD Communications Protocol IMC is a protocol which allows you to chat with people from other MUDs. IMC2 is primarily populated by Diku derived MUDs. A MUD must apply for a connection to the IMC2 network. The I3 network is primarily populated by LP derived MUDs. It can be simply configured and connected to without applying. The main difference between the two networks is in protocol structure. Currently, there is limited support for cross-network traffic. This includes some channels, private tells, and mudlists from either network. This may or may not be expanded in the future. See also: IMC2 and INTERMUD3 ~ 0 IMC2~ IMC2 was created by Oliver Jowett (oliver@randomly.org), aka Nemon and Spectrum. IMC2 1.00 through 2.00 Gold was co-created by Gregor Moody, aka Shogar. IMC2 1.00 through 1.03 Gold was co-created by Peter Keeler, aka Scion Altera. IMC2 2.00 Gold was co-created by Kratas. IMC2 3.10 MUD-Net was created by Orion and Roger Libiez, aka Samson. IMC2 1.00 through 2.00 is packaged and exclusively distributed by Anthony R. Haslage, aka Ntanel StormBlade via the World IMC Network. IMC2 3.10 is available for distribution from www.mud2mud.net. The following is a list of the user level commands commonly available to players on IMC enabled muds. Note: You will need to meet the mud's minimum level requirement before being able to access IMC. You will be notified upon reaching the appropriate level. imcchanlist: Lists the current channels on IMC and the levels at which they can be used. If you are able to see the output, then you can more than likely tune in to at least one channel. imclisten [channel]: Lists the channels you are currently tuned in to. If a channel name is specified, then the command toggles the channel on or off for you. imclist: Lists the muds which are currently connected to the IMC network. See these general commands: IMCBEEP, IMCCHANLIST, IMCFLAGS, IMCLIST, IMCLISTEN, IMCREPLY, IMCTELL, IMCLOCATE, IMCFINGER, IMCQUERY, IMCWHO, and IMCIGNORE See these administrative commands: IMC, IMCCOMMAND, IMCDENY, IMCBLOCK, IMCPING, IMCSETUP, IMCSOCKETS, IMCSTATS, and IMCCONFIG ~ 0 IMCBEEP~ Syntax: imcbeep person@mud - "beep" a player over IMC Sends a short sound tone to the person on the target mud. If their terminal program supports it, it will make an audible beep to get their attention. If you don't get a response, don't keep beeping. The person may be busy or away and spamming them will only tick them off as well as possibly leading to your IMC priviliges being revoked. See also: IMC and IMC2 ~ 0 IMCCHANLIST~ Syntax: imcchanlist - list all known IMC channels imcchanlist (channel) - list details on one IMC channel IMCCHANLIST displays information on channels active on IMC. Without arguments, it will produce a display similar to: Name Local name Owner Level Policy Hub6:PlayerChat pchat Samson@Alsherok 10 open Hub6:MusicChat mchat Samson@Alsherok 10 open hub2:PoliticCha polchat Trax@FE 101 open Hub6:CodeChat cchat Samson@Alsherok 101 open hub9:IMCChat ichat Trax@FE 101 open Hub6:mud2mud im2m Samson@Alsherok 113 private This shows the channel's network name (eg. hub9:IMCChat), the local name eg ichat - which can be used as an abbreviation in IMCSETUP, and which is also the command to speak on that channel), the owner of the channel (eg. Trax@FE), and the channel's policy. Briefly, channel policies available in version 3.10 are: open, closed, and private. Open channels can be seen and used by anyone meeting the mud's minimum level for IMC. Closed channels can be seen by anyone, but may only be used by the list of invited users. Private channels can only be seen and used by the list of invited users. If a channel is not configured locally, it will have (not local) for its local name. If a channel is configured locally, but is not actually active on IMC, it will have an Unknown flag on it. IMCCHANLIST with a channel name will provide detailed information on that channel. For example: Channel hub9:IMCChat: Local name: ichat Regformat : &R[&Yichat&R] &C%s: &c%s Emformat : &R[&Yichat&R] &c%s %s Socformat : &R[&Yichat&R] &c%s Level : 101 Policy : Open -- Open to all muds Owner : Trax@FE Operators : Samson@Alsherok Invited : Excluded : This displays the channel name, local name, policy and owner, as above. It also displays: - The minimum level needed on your mud to see the channel - The format for displaying messages from the channel. These can contain any color codes etc. that your mud uses. Regformat is the string displayed when someone speaks normally on the channel - the first %s is replaced by their name, the second %s by what they say. Emformat is a similar string for emotes. Again the first %s is their name, the second %s the text of their emote. Socformat is a similar string for emotes. Except there is only one %s and is the format used to send socials to the network. - Any operators for the channel. This can only be changed by the owner of the channel. Operators can modify the 'invited' and 'excluded' fields via the IMCSETUP command. - The invited and excluded people on the channel. See also: IMC, IMCSETUP, IMCCOMMAND ~ 0 IMCCOMMAND~ Syntax: imccommand (command) (channel) [(data..)] Common commands: create (channel) - create a channel refresh (channel) - refresh channel data list [(channel)] - list available commands destroy (channel) - destroy a channel policy (channel) (policy) - change channel policy addop (channel) (name) - add a channel operator removeop (channel) (name) - remove an operator invite (channel) (name) - add an invited name uninvite (channel) (name) - remove an invited name exclude (channel) (name) - exclude a name unexclude (channel) (name) - remove an exclusion IMCCOMMAND is used to send commands to a channel daemon elsewhere on IMC. It directly affects the channel itself - any changes made here will affect all muds using the channel. Since the actual commands are interpreted by the channel daemon, not your mud, what is available may vary. To get a list of available commands, use IMCCOMMAND list (nodename) for public commands, or IMCCOMMAND list (node:channel) to see what commands you have for that channel. IMCCOMMAND refresh asks the daemon to refresh your mud's information for a channel, if it ever gets out of sync. Asking for a refresh of nodename:* will refresh all channels on that daemon. IMCCOMMAND create creates a new channel, with you as the owner. IMCCOMMAND destroy destroys a channel. You must own the channel. IMCCOMMAND policy changes the basic policy of the channel. You must be the owner. IMCCOMMAND addop/removeop add and remove operators from a channel. You must be the owner, and specify the operator's full user@mud name. IMCCOMMAND invite/uninvite/exclude/unexcluded modify the invite and exclude lists for a channel. You must be the owner or an operator on the channel. Either a full user@mud or a simple 'mud' name (no @) can be specified. See also: IMC, IMCCHANLIST ~ 0 IMCCONFIG~ Syntax: imc (field) [value] Configuration info for your mud. Changes save when edited. You may set the following: Connect : Connects the mud to IMC. Disconnect : Disconnects the mud from IMC. Showconfig : Displays your current configuration. Localname : The name IMC knows your mud by. Autoconnect: Toggles automatic connection on reboots. Logging : Toggles the logging of IMC information to the mud's logs. Minlevel : Sets the minimum level IMC can see your players at. Adminlevel : Sets the level at which administrative commands can be used. Infoname : Name of your mud, as seen from the imcquery info sheet. Infohost : Telnet address of your mud. Infoport : Telnet port of your mud. Infoemail : Email address of the mud's IMC administrator. InfoWWW : The Web address of your mud, cannot contain tildes. InfoDetails: SHORT Description of your mud. Connectname: Name of the hub your mud connets to IMC on. Connectaddr: DNS or IP address of the hub you mud connects to. Connectport: Port of the hub your mud connects to. Connectpwd1: Client password for your mud. Connectpwd2: Server password for your mud. The localname command set the IMC name of -your- mud. Use with care. See also: IMC ~ 0 IMCDENY~ Syntax: imcdeny (player) - see a players current IMC flags imcdeny (player) +(channel) - set 'allow' flag on a player imcdeny (player) -(channel) - set 'deny' flag on a player imcdeny (player) =(channel) - reset allow/deny flags on a player This command allows you to view or change a players IMC channel priviliges. In all cases (channel) can be the name of an IMC channel (IMCINFO, ICE, etc) or 'IMCTELL' or 'IMCBEEP'. Setting the allow flag for a channel allows that player to see and use that channel, regardless of their level. This can be used, for example, to give mortals with coding experience access to rcode. Setting the deny flag for a channel prevents that player from using or seeing that channel, even if their level normally allows them to. This can be used as a penalty for players who abuse the IMC channels or IMCTELL/IMCBEEP. Resetting the allow/deny flags simply clears them, using only the player's level to determing whether they can use the channel. See also: IMC ~ 0 IMCFINGER~ Syntax: imcfinger (person@mud) - get information about a player Requests information about a specific person on the target mud. The mud will either respond with information they feel is appropriate, or with a message saying finger is not supported. When used with the bridge, typing imcfinger (mud@i3) will produce a who listing of the target mud. See also: IMC and IMC2 ~ 0 IMCFLAGS~ Syntax: imcflags - display your current IMC channel state imcflags +(chan) (setting) - turn on an IMC channel imcflags -(chan) (setting) - turn off an IMC channel Displays your status flags for IMC. Chan settings are: imcinfo IMC imctell imcbeep imcinvis all Using +(chan) turns the flag on, -chan turns the flag off. Setting the IMCINVIS flag will make you invisible to the IMC network. This means nobody can see you using tells, beeps, locates, whos, or fingers. You will still be visible if you use a public channel. The imcinfo or IMC flags are channels which the various hubs put status reports onto. They can be spammy at times; you may want to turn off imcinfo and IMC for this reason. See also: IMC and IMC2 ~ 0 IMCIGNORE~ Syntax: imcignore - list current ignores imcignore add <target> - add entry to ignore list imcignore delete <target> - remove entry from ignore list The IMCIGNORE command blocks all messages specifically directed toward an individual user and is your first line of defense against an annoying pest. You can specify individual users, or an entire mud using wildcards like so: imcignore pest@mud imcignore *@mud imcignore pest@* Before going to the mud's administration with a complaint, try this first. If the particular person you are attempting to ignore continues to cause problems or is becoming a nuisance to the mud in general, advise your mud administration to seek the use of an IMCBLOCK command against them. Be prepared to justify this with a good reason and provide any documentation of any incidents your administrators ask for. See also: IMC ~ 113 IMCBLOCK~ Syntax: imcignore - list current ignores imcignore add <mudname> - add mud to ignore list imcignore delete <mudname> - remove mud from ignore list The IMCBLOCK command is used to stop an individual user, or an entire mud from sending any traffic to your mud at all. This is your second line of defense in the event individual user-level ignores fail to do the job adequately for you. This is a somewhat drastic measure and should only be used in elevated cases. In general it is best to have documented cases of problems with individual users on your mud before resorting to this. All incoming traffic from the offending mud is simply dropped and no further action taken on the packets. If this level of action fails to stop the problems you are having, document the incidents and proceed to the next level and seek assistance from the hub administrator of the hub you are connected to. They will be able to direct you further, and can issue blocks at the hub level if need be. See also: IMC ~ 0 IMCLIST~ Syntax: imclist - get a list of active muds on IMC imclist direct - get a list of directly connected muds imclist config - see the local IMC config imclist routes - See the current routes for everyone. 'IMCLIST' lists active muds on IMC. It lists all the muds which this mud knows about on the IMC network, and when they were last heard from. The 'route' section is mainly for diagnostics, and indicates the route that your mud will send packets via to get to another mud. 'IMCLIST direct' shows direct connections from your mud to other muds. This option will only display the Hub your mud is connected to, and is more or less obsolete. 'IMCLIST config' shows the local IMC configuration and state. See also: IMC and IMCQUERY ~ 0 IMCLISTEN~ Syntax: imclisten - display current channel status imclisten (localname) - toggle a channel IMCLISTEN lets you show and toggle which channels you are listening to. Without arguments, it will show you the channels you belong to; with an argument, it will turn that channel on or off. Any channels you listen to must be locally configured first - see IMCSETUP. IMCCHANLIST can be used to see available channels. See also: IMC, IMCCHANLIST and IMCSETUP ~ 0 IMCLOCATE~ Syntax: imclocate (person) - find a player on IMC Sends a request out to all muds on the IMC network looking for the specified player. If they are online and visible, a response will be sent back indicating this. See also: IMC and IMC2 ~ 0 IMCPING~ Syntax: imcping (mud) IMCPING allows you to trace connectivity of another connection from your own. As shown in the example below, you are given the amount of time in milliseconds as well as the send and return paths. This example is a ping from FE to Alsherok. FE: 500ms round-trip-time. Return path: FE!hub9!Hub6 Send path: Alsherok!Hub6!hub9 Keep in mind that the reported times may not be an actual representation of how long the trip really took since this also counts the length of the idle time the code took to process it. See also: IMC and IMC2 ~ 0 IMCQUERY~ Syntax: imcquery (mud) (command) - ask for information from a mud IMCQUERY is similar to IMCWHO, except it requests different information from a mud. Each mud differs in what information it supplies. Typically at least the following are supported: help - this list who - who listing info - mud information list - active IMC connections direct - direct IMC connections config - local IMC configuration istats - network traffic statistics finger xxx - finger player xxx wizlist - Immortal list See also: IMC and IMC2 ~ 0 IMCSETUP~ Syntax: imcsetup setlocal (channel) (localname) - locally configure a channel IMCSETUP delete (localname) - delete a channel IMCSETUP rename (oldname) (newname) - rename a channel IMCSETUP regformat (localname) (format) - change channel talk format IMCSETUP emoteformat (localname) (format) - change channel emote format IMCSETUP socformat (localname) (format) - change channel social format IMCSETUP level (localname) (level) - set channel level IMCSETUP allows you to change the local configuration of an ICE channel. None of these commands have a lasting effect on the channel's configuration on other muds. IMCSETUP setlocal configures a channel. It connects the specified channel (of the form nodename:channelname) to a local name. For example: IMCSETUP setlocal Hub:IMCChat imcchat. The local name is also the command used to speak on the channel. When the channel is configured, default values are filled in for regformat, emoteformat, socformat and level. IMCSETUP delete removes this link. It does not affect the channel itself; it just deletes the local configuration link for the channel. IMCSETUP rename changes the local name of a channel. It does not affect the channel name itself for other muds - just the command used locally to access it. IMCSETUP regformat, emoteformat and socformat change how a channel is displayed locally. Each format string must have exactly two %s's within it, except socformat, (this is checked for) - the first will be replaced by the speaker's name, the second by whatever they say or do. Regformat is used for normal speech, emoteformat is for emotes and socformat is for socials. IMCSETUP level sets the minimum level necessary on your mud to hear or use the channel. See also: IMC, ICE and IMCCHANLIST ~ 0 IMCSOCKETS~ Syntax: imcsockets - display IMC socket usage IMCSOCKETS displays the current connection state for the direct IMC connections that your mud has. The various fields are: Desc : the system-level descriptor used for this connection Mud : which site this connection is for State : how far through the connection process this connection is: - connecting: waiting for the other end to accept our TCP connection - wait1: waiting for the password from an incoming client - wait2: waiting for the server to respond to our password - connected: the connection is completely 'up' Inbuf : size of data waiting in the input queue for the connection. Outbuf: size of data waiting in the output queue for the connection. Spam1 : spam-protection counter Spam2 : spam-protection counter Note: This command now only shows you the data for your connection to the hub. No other muds will be listed since this ability was removed for 3.10. See also: IMC ~ 0 IMCSTATS~ Syntax: imcstats - displays useful statistics IMCSTATS shows some useful statistics about how much traffic your mud is generating due to IMC. Compression support was removed for 3.10 so those statistics will always show 0. See also: IMC, IMCLIST and IMCQUERY ~ 0 IMCTELL IMCREPLY~ Syntax: imctell (person@mud) (message) - send a 'tell' to another player Syntax: imcreply (message) - send a 'tell' to the last player to send you a IMCTELL imctell Name:MUD@I3 (message) - Sends a tell to a person on the I3 network. IMCREPLY will work on either a normal IMCTELL or one forwarded by the bridge. A private message can be sent from you to a person on another mud. To send a reply to someone who sent you a tell, simply use the IMCREPLY command with your message. Due to certain conditions within the network, your conversations COULD be monitored, so don't send anything critical, like passwords or credit card numbers ( or anything else you don't want to risk being snooped ), over an IMCTELL. See also: IMC and IMC2 ~ 0 IMCWHO~ Syntax: imcwho (mudname) - ask for a who listing from another mud imcwho i3 - Shows I3 network mudlist. Requests a list of the current players on the target mud. Invisble players will not be displayed. You should use the mud abbreviation listed in 'IMCLIST' when issuing a IMCWHO. See also: IMC and IMC2 ~ 0 $~ #$