Didn’t you want to let your favourite engine play chess automagically, with some real opponents? Are you bored to be beaten by it? Do you want to see it beat someone else? Do you want to test your own opening book?
The last question was my initial reason to try something out.
First I thought I should register a “computer” account at FICS the free internet chess server. This is my favourite site to play chess at.
But they don’t want many computers at this site, because it might bother human players. And they have strict rules for registered computers. As far as I could find out this applies not to unregistered users aka “guests”. With a guest account you can’t get a ranking number, but this is no problem. And I decided to let the engine play real fast games at the speed of 0 minutes and 4 seconds time increment or 1 Minute and 1 second increment. This speed is fun to watch and there are NO computers available at this speed, but a lot of humans want to play that fast. So we have a “win – win” situation. And it should be OK with the FICS-Team.
You will need icsdroneng for connecting the engine to FICS. icsdrone was originally written by: Henrik Gram and then further improved by Michel Van den Bergh. Thanks a lot.
As I didn’t want to call icsdrone with the many options on the commandline often, I used to put everything in a script:
#!/bin/bash icsdrone \ -handle YourComputerPal\ -owner okoli \ -program "polyglot /home/oliver/chess/polyglot/stockfish.ini" \ -timeseal ./timeseal \ -book /home/oliver/chess/bookmaking/2010-09-18_gambit_rep/2010-09-18_Gambit_repertoire.bin \ -feedback on \ -easyMode off \ -pgnFile fics_matches_gambit.pgn \ -loginScript login.script
What does it do? So first it logs into the chess server with the (guest) handle: YourComputerPal. We want to tell everybody that it is a computer don’t we? And next I specify the owner. This will make it nicer to view the games later on. We load the (linux) timeseal, that will prevent loosing on time. And then we load our own book. That was essential for me. Also we can log the games to a .pgn file.
The login script has some special commands, that we want our icsdrone to execute on the server:
set 0 lala set 1 This is a stockfish 2.0.1, with limited search depth set 2 It has an opening book for playing gambit lines set 3 For comments or complaints message the owner okoli set sendgameend say Thanks for the game!\nseek 1 1 m\n seek 0 4 m seek 1 1 m
This will set some information to the finger dialog of YourComputerPal on the server and tell icsdrone to be polite and say “Thanks for the game!” after every game. Also there is specified to seek games of “1 1” and “0 4” time control. Of couse you have to adjust this to your needs, but you should now know how to set things up for icsdoneng. If you need more help, there is an excellent manpage.
If you have a registered account and the “-owner” option set, your icsdrone will welcome you, if you login. If you type “follow Icsdrones-handle”, you will watch all games your computer plays on FICS.