Reply
 
LinkBack Thread Tools Display Modes
  #1   Report Post  
Old May 8th 04, 11:27 AM
Sam
 
Posts: n/a
Default ICS commands/protocol

Does anyone know where I can find the data string structure as used by ICS?

For example (from a telnet session)...


chess%
12 r----r-k pp--p--p ---p-p-P --qPn-p- --b----- --N--P-- PP-Q--P- --KR-B-R
W -
1 0 0 0 0 0 81 yetic meirke 0 4 0 31 32 155 141 19 P/f7-f6 (0:08) f6 0
chess%
12 r----r-k pp--p--p ---p-p-P --qPn-p- --B----- --N--P-- PP-Q--P- --KR---R
B -
1 0 0 0 0 0 81 yetic meirke 0 4 0 31 29 149 141 19 B/f1-c4 (0:08) Bxc4 0


I can suss out the board (assuming first character is a8) and the move
notation (2 types) is clear to me, time taken for move, player's handles,
and whether 'tis white's move or black's. Anyone know the rest of the
fields?

Also what are the commands on ICS for stuff like draw, resign, here is my
move? Is there a protocol of some sort like always sending the entire board
as it is likewise received (above)?

Any help most appreciated...


  #2   Report Post  
Old May 8th 04, 05:49 PM
Tommy
 
Posts: n/a
Default ICS commands/protocol


"Sam" wrote

Does anyone know where I can find the data string structure as used by

ICS?
....
I can suss out the board (assuming first character is a8) and the move
notation (2 types) is clear to me, time taken for move, player's handles,
and whether 'tis white's move or black's. Anyone know the rest of the
fields?

Also what are the commands on ICS for stuff like draw, resign, here is my
move? Is there a protocol of some sort like always sending the entire

board
as it is likewise received (above)?


Well my program has been playing for several days on freechess.org
(ics-like) and it has played hundreds of games completely autonomously. I
did not implement the ICS protocol, I implemented the win/xboard protocol
and I use winboard as the "middletier" between my engine and ICS. Xboard has
a "utility" called zippy which is already built-in all new versions of
winboard:

winboard.exe -zp -ics -icshost freechess.org -fcp
"tomchess -winboard" -zippyGameEnd='seek 0 2\nseek 0 5\nseek 1 21\n'

the above line is the line that makes all that possible... you open winboard
with ics support using zippy calling my engine (tomchess) with the -winboard
switch (this opens a special version that implements the xboard protocol).
Finally the last switch makes, after every game, 3 new seeks.

The wiboard protocol is trivial to implement and you can find all the infos
at: http://www.tim-mann.org/xboard/engine-intf.html
The only thing that i have not implemented yet is the possibility of
restoring adjourned games. It is easy, but i do not feel like it now.

Also, by implementing the winboard protocol, you can easily play you engine
against all other winboard compatible engines.

Hope this helps,

Tommy

  #3   Report Post  
Old May 9th 04, 12:51 PM
Marcel van Kervinck
 
Posts: n/a
Default ICS commands/protocol

Sam wrote:
Does anyone know where I can find the data string structure as used by ICS?


For example (from a telnet session)...



chess%
12 r----r-k pp--p--p ---p-p-P --qPn-p- --b----- --N--P-- PP-Q--P- --KR-B-R
W -
1 0 0 0 0 0 81 yetic meirke 0 4 0 31 32 155 141 19 P/f7-f6 (0:08) f6 0
chess%
12 r----r-k pp--p--p ---p-p-P --qPn-p- --B----- --N--P-- PP-Q--P- --KR---R
B -
1 0 0 0 0 0 81 yetic meirke 0 4 0 31 29 149 141 19 B/f1-c4 (0:08) Bxc4 0



I can suss out the board (assuming first character is a8) and the move
notation (2 types) is clear to me, time taken for move, player's handles,
and whether 'tis white's move or black's. Anyone know the rest of the
fields

?

Did you try 'help style12' on ICC?
It explains all.

Marcel
-- _ _
_| |_|_|
|_ |_
|_| Marcel van Kervinck
Reply
Thread Tools
Display Modes

Posting Rules

Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On



All times are GMT +1. The time now is 07:19 AM.

Powered by vBulletin® Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.
Copyright 2004-2019 ChessBanter.
The comments are property of their posters.
 

About Us

"It's about Chess"

 

Copyright © 2017