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

Re: [computer-go] finishing game on KGS



I feel your pain ...

But you are probably making a lot of extra work for yourself.   You
should be designing your code in modules.   You should make these
basic pieces:

   1. A piece that does nothing but play GO.
   2. A piece that serves as your local user interface.
   3. A piece that understands NNGS.

Piece 1,  the GO engine doesn't have a user interface nor does it
know how to play on NNGS.

Piece 2,  probably doesn't know much about go other than perhaps how
to make legal moves and draw pretty boards and stones.   

Piece 3 is an expert at knowing NNGS.   Piece 3 knows little about
how to play GO.

Anyone  in the  world can  build piece  2 or  3 and  your  engine will
automatically  work with  it.  YOU  have  already built  piece 3,  but
nobody  else can  use  it.  If  you  get disgusted  with your  program
because it  stinks and  decide to  rewrite it, then  you also  have to
rewrite 1, 2 and 3.   You should only have to rewrite 1.

You don't even have to write piece 2,  because it has already been written.
You can use someone elses interface.

A good example  of how this works, is Bill  Shuberts interface to KGS.
If your  program talks GTP,  you can play  on KGS without  writing any
code.


- Don




   Date: Wed, 21 Jul 2004 10:20:35 -0700 (PDT)
   From: "R. Zhou" <shanleqi@xxxxxxxxxxxxxxxxx>
   Content-Type: text/plain; charset=us-ascii

   --- Don Dailey <drd@xxxxxxxxxxxxxxxxx> wrote:

   > GTP is not  a user interface like NNGS  or IGS is. 
   > It is  a tool that
   > can be used  to build such an  interface between
   > NNGS or IGS  and a GO
   > program.   

   I think those stuff connecting Go program and NNGS is
   acting like GTP. For GoWind to play in NNGS, I had to
   deal with those stuff. For GoWind to play in KGS, I
   had to deal with GTP. I have similar but double work
   here. The main different things are to add a "=" and
   an extra empty line when the command is sent out!

   > 
   > So NNGS is like  a pedal, it is designed for humans.

   Why not treat Go program as human?

   > 
   > GTP and  NNGS are not  competing protocols.  

   I think GTP and those stuff I mentioned earlier are
   competing.

   I am stubbon :)

   By the way, Thanks also to Persson. His idea to add
   opponent to the text file is good to me, althrough in
   this case there seems no way to actively change the
   opponent. 

   Ruhai





   __________________________________
   Do you Yahoo!?
   Vote for the stars of Yahoo!'s next ad campaign!
   http://advision.webevents.yahoo.com/yahoo/votelifeengine/

_______________________________________________
computer-go mailing list
computer-go@xxxxxxxxxxxxxxxxx
http://www.computer-go.org/mailman/listinfo/computer-go/