Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: How to use Movei as an automatic player in ICC

Author: Uri Blass

Date: 03:06:48 01/12/03

Go up one level in this thread


On January 12, 2003 at 05:47:57, Richard Pijl wrote:

>On January 12, 2003 at 05:08:42, Uri Blass wrote:
>
>>On January 11, 2003 at 19:20:23, Richard Pijl wrote:
>>
>>>>More details are that my moveiXX.exe is at the same directory as winboard.exe
>>>>I guess that it means that when I run it Movei can play automatically under
>>>>winboard.
>>>>
>>>>The second question is then how to stop it in that case and if there is a simple
>>>>way to play only one game not manually(I never played with it on ICC).
>>>>
>>>>Uri
>>>
>>>When you run it, winboard as well as a console window appears. Just close the
>>>console window. Then winboard won't be restarted if you quit it.
>>>
>>>Richard
>>
>>I thought that it is a simple task to play an automatic game on ICC because
>>I know that even non programmers do it but I see that it is not.
>>
>>I do not like all the technical stuff.
>>
>>Another question is how exactly to kibitz information in games in ICC
>>
>>Should I add in my program every time that I have new pv
>>printf("tellics kibitz mainline=%s\n",mainline);
>>
>>or maybe it is better to kibitz main line only when the depth is big enough or
>>the time is big enough?
>>
>
>What most people do is to kibitz only when the engine plays a move.
>
>To prevent human players to see kibitz lines I whisper when playing a human.
>You can tell the difference by looking at the command 'computer'. If you
>received that command you're playing a computer and should use the command
>'tellall <kibitzline>'. This line will be shown to all people looking at the
>game, including your opponent. If you did not receive the command 'computer' on
>game start, you should use 'tellothers <kibitzline>'. Now all that are observing
>see the line, but you and your opponent do not.
>
>>I am still not sure how to do it exactly.
>>I do not remember the main line as a string and here is my pv function.
>>
>>should  I add  printf("tellics kibitz mainline="); in the beginning of printpv
>>and add write information about the number of nodes only at the end of the pv or
>>maybe I should do it in a different way.
>>
>>Here is my code to print pv.
>>
>>k is the depth and x is the score.
>>
>>void printpv(int k,int x)
>>{
>>	int j;
>>	printf("%d %d %d %d",k, x, (get_ms() - start_time) / 10, nodes);
>>	for (j = 0; j < pv_length[0]; ++j)
>>		printf(" %s", move_str(pv[0][j].b));
>>	printf("\n");
>>	fflush(stdout);
>>}
>>
>
>I suppose that at the end of the search this info is still available, so you
>could do the following when playing a move:
>
>if (kibitzing) {
>   if (computer)
>      printf("tellall ");
>   else
>      printf("tellothers ");
>   printpv(k,x);
>}
>
>where kibitzing is a flag to turn kibitzing on or off
>where computer is a flag that specifies that you are playing a computer
>
>Perhaps you could replace printpv by a nicer kibitz version, but I think you get
>the idea here.
>
>Richard.

Thanks I will try to do it later.

1)I found a bug in my pondering that I need to correct and movei does not check
for the result when it ponders except after making a move.

There was a game in the winboard forum when movei won but I do not like that win
because movei should say a draw by the 50 move rule.

2)I am going to implement kibitzing also only after I see that I can play
without it in ICC.

Uri



This page took 0 seconds to execute

Last modified: Thu, 15 Apr 21 08:11:13 -0700

Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.