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

Re: [computer-go] Wishlist for playing programs on KGS

On Thu, 2005-10-13 at 10:55 +1300, Peter McKenzie wrote:
> My feeling is that we are getting carried away with all this
> flexibility. 
> Top priority should be a simple way of exiting after the current game.
> I believe that the idea of sending a command, via chat text, is a
> solution that will satisfy this requirement for most people.
> This functionality should reside in kgsGTP for two reasons:
> 1) It is the natural place for it.  Most (all?) other logic regarding
> dis/connecting to the server and selecting games to play currently
> resides in kgsGTP.
> 2) If the option of forwarding the command to the engine is used, then
> the engine author would have to implement the logic to:
>  a) parse the command
>  b) somehow authenticate the command (i.e. check the user)
>  c) update some internal "last game" state to indicate that it should
> exit after the current game
>  d) exit when a clear_board command is received and the engine is in a
> "last game" state (see (c))
> This logic would end up being implemented in the vast majority of
> engines.  To my way of thinking it is less than ideal that all engine
> authors have to do this, when it could have been simply solved once in
> kgsGTP.
> If a command is added which allows direct communicaiton with the
> engine then that is great too.  But I think it is of secondary
> importance.
> cheers,
> Peter

I think you maybe only want a way to stop the engine after a game. But I
have gotten many requests from other users for a way to query the engine
of information while it is running. The way I see it, this solves two
problems at once. Yes, it would be some more work for the engine authors
who only want to be able to shut their engine down at the end of a game,
but I have trouble believing much more (how much? one line to detect a
shutdown request; one to set a flag; one to check the flag after a game
ends - three lines of code maybe?) So in the end, it just seems to make
sense to push all such decisions down into the engine, where people can
do whatever they like.

computer-go mailing list