On Fri, 2006-12-29 at 15:49 -0500, Don Dailey wrote:
> I agree with you.   Weston's post convinced me that the program should
> know
> in advance what the handicap is to be and thus sending consecutive
> genmove
> commands is not really correct technically speaking.
> 
> I don't like implied compensation, but apparently it is popular and KGS
> does it.   However,  CGOS won't be doing it.  
> 
> I am really torn about this,  but in the end I don't want to implement
> something I consider slightly broken just because another server does
> it.
> 
> I think currently this falls under the category that you need to tell
> your program (via a command line parameter or config file) what the 
> rules of compensation are.   The rules for CGOS will be that komi
> by itself tells you everything you need to know about compensation.
> 
> - Don

Revised proposal:
-----------------

Extend gtp by 'rules' command

If program supports rules command (seen from list_commands):

rules cgos
komi <includes compensation if any>
place_free_handicap or set_free_handicap
<normal play>

If program does not support rules command:
komi <includes compensation if any>
genmove black or play black
<normal play>


Reasons:
This should solve all compatibility problems and also make existing
programs that implement komi, genmove and play correctly work without
any modification while still allowing those that want to support more
advanced handicap handling. Those that do handle place_free_handicap at
KGS with implied compensation but don't support rules command would
still work correctly at KGS and CGOS. If program replies with '?' error
to rules command, then either abort or fall back to 'no rules supported'
method.


About compensation in this proposal: should work whether it is included
or not.

Compensation for handicap 2 and bigger: seems more compatible with
rulesets being used.

No compensation: a bit more elegant in some sense.

Whatever is decided, CGOS rules should be defined somewhere reasonably
rigorously.


Extra stuff not part of proposal:
---------------------------------

Alternative is to define many gtp commands like
suicide 0|1
superko none|psk|ssk|nsk
scoring area|territory
Umm... seki_scoring, bent_four, repetition_result,
more_than_2_passes_allowed, etc.. might be needed for completeness ;-)

Actually we could even go with rules command initially and later add
above like commands.

It would work like this:
rules cgos
Engine can reply 3 ways:
? No idea about these rules and I don't know more specific commands

= OK #I know these rules already

? define #please send me above gtp define rules commands

(Should last one be '=' or '?' ?)

-- 
Aloril <[EMAIL PROTECTED]>
_______________________________________________
computer-go mailing list
computer-go@computer-go.org
http://www.computer-go.org/mailman/listinfo/computer-go/

Reply via email to