[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Bug in GNUChess 5.04

From: Simon Waters
Subject: Re: Bug in GNUChess 5.04
Date: Fri, 17 May 2002 15:29:56 +0100

Denis Bernard wrote:
> > 'rating' is designed for working with the Internet chess server,
> > where the program adjusts it's play marginally.
> Ok, but it really seems to be broken ;)

I'll have a look. I think rating is suppose to set the rating in
PGN game headers, and make the program play better book openings
against stronger opponents. 

I think I changed the default book behaviour, which might have
made it do nothing by default.

The choice of playing the best 1, 2, 3 moves from opening book
in any position is fairly naive unless we exclude lines where
players won inspite of their first 14 moves, rather than because
of them. GMs win a lot of the games they play badly in my
experience ;)

> Why not letting the user choose which openings he wants and doesn't want like 
> in pharaon (see attached z_style.txt), or like in crafty's secondary opening 
> book (books.bin), or even a mix of the two ? This way, the user could use 
> GNUChess to learn some specific or exotic openings. Anyway, I think that it 
> should be user configurable in a plain text file.

Sounds like nice feature for tournament use. Not sure how many
dedicated home users will use it versus forcing the computer
into a specific line via the GUI.

> Yes my chess really needs to be improved (my programming is fine ;) My goal 
> is to adjust the play level of the software to play challenging games (I 
> don't want to loose always ;) reather than exploiting flaws in the software. 
> To achieve this, I'd like a 'human undertandable' option to tear down 
> GNUChess' strength by specifying an approximative ELO (or glicko) à la Delfi 
> (but aven at 1200 ELO, Delfi is too strong for me). This could, perhaps, be 
> achieved by internally modifying other settings like depth, limiting book's 
> use, and so on... This can take a while to fine-tune. Anyway, I'll give it a 
> try and keep you informed.

No one seems happy with ELO based weakening of their chess

I suspect it is a user interface thing. 1600 players will expect
to beat a program claiming to play at 1300 in strength, but if
you call the levels {stupid, easy, club, match} people will only
be upset if they get beat by "stupid", and they probably won't
complain ;)

> Attached is also a patch that allows to compile GNUChess under cygwin without 
> using cygwin's DLL (using native Windows calls) to facilitate binary distros 
> and reduce system load under some crapy OS.
> The patched files are:
> - cmd.c: that's the same patch as before, not cygwin related
> - config.ac: checks for cygwin and tweaks some options
> - common.h: added defs for structs timeval and timezone if they were not 
> found in system includes
> - util.c: added the function gettimeofday for systems without it.
> There is a drawback to this: when you'll implement analysis and ponder modes 
> (when ? ;), if you don't use threads to check for user input, you'll 
> certainly have to implement raw I/O with read/select (the most 
> natural/portable way under UN*X), but under Windows only the cygwin layer 
> supports select() on pipes and ttys. So without using cygwin's DLL, some more 
> code to handle Windows lacks will be needed (about 50 lines).

Thanks, I'll look at merging it.

I assume most of the magic is from the "-mno-cygwin" setting,
and the rest is just scaffolding?

I have committed tentative changes to the CVS head for the line
length problem. I have varied slightly from your original patch,
as I think you assumed that there was a reason for the buffers
to be twice as big as the limits, which is a reasonable
assumption, but omits the facts that I was the last one to touch
on this code, and I stopped as soon as the program stopped
crashing on any line longer than 63 characters.

It fixed my problem with "setboard"!

My Chess is better than my C.

We've had the thread v nonthreads discussion and Lukas has sent
me the magic patch to sort out input using threads, and I have
done far too little with it, fortunately Lukas has been busy
moving to America and hasn't hassled me too much about it ;)

  Thanks again,


PS: Things that I should know but don't;

Does anyone use UNIVERSAL?
How does Tim use build his copy of GNU Chess for distribution?

reply via email to

[Prev in Thread] Current Thread [Next in Thread]