On-line engine blitz tourney September

Discussion of chess software programming and technical issues.

Moderators: hgm, Rebel, chrisw

Joost Buijs
Posts: 1563
Joined: Thu Jul 16, 2009 10:47 am
Location: Almere, The Netherlands

Re: On-line engine blitz tourney September

Post by Joost Buijs »

chrisw wrote: Sun Sep 20, 2020 2:07 am Yes, good tournament. I liked the random Doors quotes from one the engine authors. Mine started well, never a good idea in a Swiss because the middle was pretty bad but then with a minor recovery at the end. I must get myself a book.
Your engine did very well, there were at least 8 engines on big hardware, so 50% score is not bad at all.
The Doors quotes, this must have been Henk (Skipper), I've always been a Doors fan too.

The server runs in a Hyper-V virtual machine, which is not optimal, next time I want to use a dedicated machine. I still have to fix the server software, it is very vulnerable to bad input and there are other issues too, but you know how it goes, it is not very important, if it works it works, and I'd rather spent my time on more interesting things.
Bjoern
Posts: 14
Joined: Mon Sep 26, 2016 8:59 pm

Re: On-line engine blitz tourney September

Post by Bjoern »

Using xboard on Linux to connect to a Chess Server
+ avoid broken Pipe Error

Took me quite some time to figure it out, but this is how I got it working

Just replace "Feligres"/"Feligres-0094.o" etc. with your engine.

1. Install Polyglot

2. Set-up Ini-Files

2a) in the file ~/.xboardrc

in the section:
-firstChessProgramNames {fairymax
"Fruit 2.1" -fcp fruit -fUCI
"Feligres" -fcp /home/Engines/Feligres-0094.o -fUCI
"Crafty" -fcp crafty
"GNU Chess" -fcp gnuchess
}

add << "Feligres" -fcp /home/Engines/Feligres-0094.o -fUCI >>

2b) create inifile: ~/.polyglot/Feligres.ini

[PolyGlot]
EngineCommand=/home/Engines/Feligres-0094.o
EngineDir=/home/Engines


3. Connect to Server

xboard -zp -ics -icshost nightmare-chess.nl -fe Feligres -autoKibitz -fUCI -icshelper "/home/Engines/openseal.o" -keepAlive 1

Hope this helps...
Ras
Posts: 2487
Joined: Tue Aug 30, 2016 8:19 pm
Full name: Rasmus Althoff

Re: On-line engine blitz tourney September

Post by Ras »

jdart wrote: Sun Sep 20, 2020 3:12 amThe only problem with icsdrone is, it is really hands-off once it connects the engine to the server. You need a second, non-computer account to control it.
That's a problem as of now, plus that I wouldn't be able to watch the game with a hands-off script.

Bjoern wrote: Sun Sep 20, 2020 8:24 am Using xboard on Linux to connect to a Chess Server
+ avoid broken Pipe Error

Took me quite some time to figure it out, but this is how I got it working
Thanks for the ideas. At least, I realised that timeseal isn't included in the xboard package so that I had to add that manually. The timeseal program is set to be executable, and I can invoke it in the shell. That's a step forward, but doesn't solve the problem yet.

I tried to use your setup with the polyglot ini file, but that also failed with broken pipe. The engine name in the program matches the entry name used in .xboardrc.

xboard -zp -ics -icshost nightmare-chess.nl -fe CT800 -fUCI -icshelper /opt/chess/timeseal -autoKibitz -keepAlive 1 &
xboard: Error writing to ICS: Broken pipe (lots of these)
Segmentation fault (core dumped)

Same when using it this way:
xboard -zp -ics -icshost nightmare-chess.nl -icshelper /opt/chess/timeseal -fUCI -fcp /opt/chess/engines/CT800_V1.41 -fd /opt/chess/engines/ -autoKibitz -keepAlive 1 &

I tried disabling the UFW firewall on the PC, but that didn't change anything.

However, I can use my UCI engine under xboard directly and conduct a match e.g. against Fairymax. The UCI/Polyglot part works even without the Polyglot ini file (Polyglot is installed of course).

My xboard version is 4.9.1 (under Mint 20).
Rasmus Althoff
https://www.ct800.net
Modern Times
Posts: 3546
Joined: Thu Jun 07, 2012 11:02 pm

Re: On-line engine blitz tourney September

Post by Modern Times »

It is certainly possible, I used to run Gaviota many years ago in HG's tournaments from xboard on a Linux box. But Miguel gave me the scripts etc so I don't have any knowledge of the technicalities.
Bjoern
Posts: 14
Joined: Mon Sep 26, 2016 8:59 pm

Re: On-line engine blitz tourney September

Post by Bjoern »

Too bad, looks I missed something I configured and cannot remember...

My xboard is also 4.9.1 (ubuntu 18)

Further ideas:
a) Did you check that the engine starts up - (Task visible ?)
b) try to use it without timeseal

c)
One important point I remember was that the Polyglot.ini File needs to be the Engine name from
UCI output id name <<Feligres>> so Feligres.ini in ~/.polyglot/Feligres.ini

Else it did not work....

Maybe worth a try...
Ras
Posts: 2487
Joined: Tue Aug 30, 2016 8:19 pm
Full name: Rasmus Althoff

Re: On-line engine blitz tourney September

Post by Ras »

Bjoern wrote: Sun Sep 20, 2020 1:58 pm a) Did you check that the engine starts up - (Task visible ?)
Yes, also with plausible memory footprint. I don't think I have a Polyglot issue because I can do local Xboard engine matches with my engine. Also, the "engine output" window lists the correct engine name so that UCI communication works.
b) try to use it without timeseal
That was a hot one! Now I get the login in the chat window! I also tried making a symlink from /usr/local/bin/timeseal to my timeseal binary so that "which timeseal" shows it's in the search path, and I tried calling xboard with "timeseal" only, i.e. not with the full path. Still the same problem.

OK, so it looks like I have a timeseal problem. Executing it on the shell gives:

Code: Select all

Timeseal (FICS/GICS) v1.0 - programmed by Henrik Gram.

  Syntax: "timeseal server-address server-port [-p port#]"
File size: 166372

Do you have a different one? I got mine from https://www.unix-ag.uni-kl.de/~chess/so ... index.html (Linux ELF).
Rasmus Althoff
https://www.ct800.net
Joost Buijs
Posts: 1563
Joined: Thu Jul 16, 2009 10:47 am
Location: Almere, The Netherlands

Re: On-line engine blitz tourney September

Post by Joost Buijs »

Ras wrote: Sun Sep 20, 2020 3:28 pm
Bjoern wrote: Sun Sep 20, 2020 1:58 pm a) Did you check that the engine starts up - (Task visible ?)
Yes, also with plausible memory footprint. I don't think I have a Polyglot issue because I can do local Xboard engine matches with my engine. Also, the "engine output" window lists the correct engine name so that UCI communication works.
b) try to use it without timeseal
That was a hot one! Now I get the login in the chat window! I also tried making a symlink from /usr/local/bin/timeseal to my timeseal binary so that "which timeseal" shows it's in the search path, and I tried calling xboard with "timeseal" only, i.e. not with the full path. Still the same problem.

OK, so it looks like I have a timeseal problem. Executing it on the shell gives:

Code: Select all

Timeseal (FICS/GICS) v1.0 - programmed by Henrik Gram.

  Syntax: "timeseal server-address server-port [-p port#]"
File size: 166372

Do you have a different one? I got mine from https://www.unix-ag.uni-kl.de/~chess/so ... index.html (Linux ELF).
Linux ELF should work.

You have to give it the server-port as command line parameter 'timeseal nightmare-chess.nl -p 5000', but my guess is that xboard should do that for you.

The timeseal decoder I use on the server is: Linux-ELF-2.4, File size seems to be 334028

I got it from the repo: https://github.com/ddugovic/capablanca
Ras
Posts: 2487
Joined: Tue Aug 30, 2016 8:19 pm
Full name: Rasmus Althoff

Re: On-line engine blitz tourney September

Post by Ras »

Joost Buijs wrote: Sun Sep 20, 2020 3:55 pmYou have to give it the server-port as command line parameter -p 5000, but my guess is that xboard should do that for you.
xboard doesn't accept the -p parameter, BUT! I found out that xboard doesn't seem to do the DNS resolution either, and timeseal needs the IP, not the server name. If I put the IP of the server instead of the server name into the xboard command, I get to the login, and xboard doesn't crash!

However, when I enter my username, the login refuses that:
Sorry, names can only consist of lower and upper case letters. Try again.
My username has only these letters, so that doesn't make sense?
Rasmus Althoff
https://www.ct800.net
Joost Buijs
Posts: 1563
Joined: Thu Jul 16, 2009 10:47 am
Location: Almere, The Netherlands

Re: On-line engine blitz tourney September

Post by Joost Buijs »

No it doesn't make sense, somehow xboard sends garbage that is not recognized by the server, it could be a problem with timeseal though because it encrypts the data flow between the server and the client.

Try the timeseal from the HGM Capablanca repo, that one should work.

The server has a problem with malformed input too, it crashes when you send garbage to it, this might explain the broken pipe. This is still something that need to be fixed, it's very old code and such a mess that it will take a lot of time to find out what the culprit is. I'd rather spent my time on other things.
Ras
Posts: 2487
Joined: Tue Aug 30, 2016 8:19 pm
Full name: Rasmus Althoff

Re: On-line engine blitz tourney September

Post by Ras »

Joost Buijs wrote: Sun Sep 20, 2020 4:19 pmTry the timeseal from the HGM Capablanca repo, that one should work.
That doesn't work, probably because it's the decoder - I need the matching other side, i.e. the encoder.
Rasmus Althoff
https://www.ct800.net