HOMEJOIN ICCHELPMEMBERS & ACTIVITIESCHESS.FMRESOURCESSTORE HOME JOIN ICC HELP MEMBERS & ACTIVITIES CHESS.FM RESOURCES STORE
menu

Right this minute there are 1842 members online, of whom 277 are grandmasters and other titled players.


up HELP Top

ICC members from all over the world play over 140,000 games every day!


Get a seven day FREE trial of ICC!

ICC Help: plugins

Contents:
1. What are plugins?
2. What plugins are available, and where can I get them?
3. How do I run plugins?
4. Security
5. Writing a plugin


1. What are plugins?

Blitzin 2, the ICC's interface software for Windows, supports helper applications called "plugins". A plugin is a separate program that is launched by Blitzin and communicates with Blitzin, but otherwise runs independently of it.

Plugins are intended to provide extra functionality that can be added to Blitzin by third-party programmers.


2. What plugins are available, and where can I get them?

Plugins are available at http://www.chessclub.com/resources/interface/blitzin2/plugins

Currently, there are six plugins available in that directory:

SpeakMove, which does voice synthesis for Blitzin. Author: Slimemold. See http://download.chessclub.com/blitzin2/plugins/SpeakMove Very cool. You'll need Blitzin 2.30 or higher to use this during a rated game. Current version is 1.2.

Logit, which logs games in PGN form, including variations and commentary. Author: fishbait. Current is 1.3 beta, no installer.

WoodIn, which gets moves from the DGT Electronic Board. Author: hajewiet@home.nl. See also http://www.dgtprojects.com. Current version is 3.00, released Feb 2004. Very cool! Best for playing slower games. Also has voice synthesis for moves, and can be used for that in place of SpeakMove even if you don't have the DGT board. You'll need Blitzin 2.30 or higher to use WoodIn during a rated game.

Broadcaster, which gets moves from a PGN file, and updates an examined game. E.g. this can be used with the DGT Electronic Board in conjunction with the Lost Boys software. Broadcaster is a beta release. Author: Slimemold.

ExtraButtons, which provides an extra set of user-configurable buttons, which appear as a floating toolbar. Author: Slimemold.

BettingBot Better, which makes it easy to bet chips on players in tournaments etc. See help BettingBot for a description of the betting game, but note that you don't need to learn the commands for it if you use this plugin to place your bets instead. Plugin author: Kewlper. BettingBot author: Kiebitz.

More plugins available elsewhere:

Two plugins by Mike Adams can be downloaded at http://www.lanternchess.com/blitzinplugins/ - Observer1 allows you to follow multiple people who are on your gnotify list or in a group like GM. You can specify how many boards you want to open, or a specific time control you want to follow like 3 0. Autogame will allow you to send an alias at the start or end of a game. You can use these aliases to send specific greetings after a game, or to turn kibs off and on before and after a game.

Plstat, which keeps track of your results and tells you how you scored against other players. You can read about it and download a copy at http://bgoeke.de/. Author: fledermaus

WinBoard Adaptor, lets you connect WinBoard-protocol-compatible chess engines to ICC via Blitzin. http://www.winboardadaptor.com Author: yruMyFoe

All plugins are provided as-is, with no warranty of any kind.


3. How do I run plugins?

Blitzin must know at run-time which plugins to run. Thus, it is necessary to specify the plugins on the Blitzin "command line". Some plugins come with installers which create an icon for you that will run Blitzin + the plugin. If not (or if you want to run two or more plugins simultaneously), then you'll want to make such an icon yourself. Here's how:

a. Create a copy of your Blitzin 2 icon: right-click on the icon and select Copy, then right-click on the desktop and select Paste. If you wish, you can also rename this new icon by right-clicking on it and selecting Rename.

b. Edit the icon's command line: right-click on the new icon, select Properties, click on the Shortcut tab, and go to the textfield labelled Target.

c. Specify the filename of the plugin: in the Target textfield, after c:\blitzin2\Blitzin2.exe (or similar), add a space, then add /plugin=filename.exe, or if there are spaces in the filename, add /plugin="file name.exe". This assumes the plugin is in the same directory as Blitzin 2; if not, you need to specify the full path as well, for example /plugin=c:\blitzin2\myplugins\filename.exe.


4. Security

A plugin, like all applications, is capable of doing mean and nasty things to your system. Do not run a plugin unless you trust the source.

IMPORTANT: On the other side of the security issue, Blitzin does not "trust" just any plugin. To prevent computer cheating all all communication from Blitzin to a plugin is suspended during a rated game, unless you have a (C) label on your account.

BlitzIn 2.30+ includes the ability to have "trusted" plugins, that can receive information while playing a rated game. This mechanism is used to allow the SpeakMove plugin to vocalize moves, tells, and kibitzes while playing. SpeakMove is available at http://download.chessclub.com/blitzin2/plugins/SpeakMove. WoodIn is also trusted.


5. Writing a plugin

A "Plugin Development Kit" is available at the plugin ftp site (http://www.chessclub.com/resources/interface/blitzin2/plugins). The sample code and communication code in the devkit is written in Microsoft Visual C++ (version 6). I doubt it is very portable to non-C languages, although you are welcome to try. If there is sufficient demand, I might compile the communication code as a DLL, for easier access by languages like Visual Basic.

Currently, the devkit simply contains example VC++ code for 2 simple plugins. To write your own plugin, you will need to copy IPCConduit.* and PluginUtil.* into your own project. Read PluginUtil.h for internal documentation. And see the main .cpp files in the two samples for examples of use.

Writing a plugin requires some familiarity with ICC's "datagram" protocol for server-to-client communication. This protocol is described at length in http://www.chessclub.com/resources/formats/formats.txt

Please do not ask us to solve your programming problems. Any questions can be asked to channel 126 (the programming channel). Questions about formats.txt or other ICC-specific issues can be addressed to Metamorphy, although you might try channel 2 or channel 126 first.

See also: Blitzin, programmers

 

logo About Us | Contact Us | Privacy Policy | Terms of Service

© Copyright 1995-2010 Internet Chess Club, Inc. All Rights Reserved.