Page 3 of 3

Re: WB protocol: describing how a piece moves

Posted: Wed Oct 16, 2013 10:54 pm
by rtitle
BTW, a variant that I enjoy playing is Abbot's Ultima ( http://www.chessvariants.org/other.dir/ultima.html ). In that variant, the pieces all have different capture methods - only the King retains its chess capture method of "replacement".

Zillions of Games can play Ultima, but not very well. I don't know of any others. Anyone know of an engine that can play Ultima better?

My chess engine is written in a way such that it's generalizable to variants, but at the moment it only supports standard chess. When I say "generalizable" I don't mean it takes as input a game description language like ZOG does, just that it is written in an object-oriented way such that one could easily modify the program (i.e. create new derived classes of Piece, Direction, CaptureMethod, etc) such that it would play variants. On the other hand, it's enough work just getting it to play classic chess well.

Rich

Re: WB protocol: describing how a piece moves

Posted: Wed Oct 16, 2013 11:35 pm
by Greg Strong
Check out my program, ChessV. It fully supports Ultima (including the checkmate victory condition that Zillions cannot.)

http://samiam.org/chessv/

It is a Windows combined gui/engine although you can use it as a winboard engine with some doing.

Re: WB protocol: describing how a piece moves

Posted: Thu Oct 17, 2013 6:16 am
by hgm
Nebiyu also plays Ultima, using the WinBoard Alien Edition as GUI. I host a package that budles WinBoard and Nebiyu at http://hgm.nubati.net/WinBoard-Nebiyu.exe . (It is a pretty old version of Nebiyu, however. I guess updating that package is long overdue...) It even contains a special piece font for Ultima, that WinBoard uses for displaying the pieces. (I hate it when things that move like a Queen, are displayed as a Knight...)

Image

Image

Re: WB protocol: describing how a piece moves

Posted: Thu Oct 17, 2013 7:55 am
by hgm
@Marcel:

After a night's sleep it suddenly dawned on me that the command you are looking for (getting the list of moves) already exists in WB protocol. It is called book.

When you for instance start Fruit under Polyglot, and click the Book... item in the Engine menu, a nice list of all the legal move in that position pops up. WinBoard got that list from the engine (Polyglot, in this case).

It displays them as SAN, which is how it received them. But of course Polyglot also understands SAN, so you can feed the moves back to the engine without interpreting them.

The desired command has thus been existing for a long time already!