Chess960 on my variant ICS!

Discussion of anything and everything relating to chess playing software and machines.

Moderators: hgm, Rebel, chrisw

User avatar
hgm
Posts: 27796
Joined: Fri Mar 10, 2006 10:06 am
Location: Amsterdam
Full name: H G Muller

Chess960 on my variant ICS!

Post by hgm »

I have now also implemented FRC on my variant ICS. Tonight I will leave it on, with two FRC engines logged in: DanaSah and Glaurung. (That would be from around 11 pm, which is 17:00 EST.)

Feel free to use the server for FRC or other games, against my drones or amongst yourself; caparandom should also work (but I did not provide any opponents for that). To start an FRC game, use

match <opponent> 5 0 u fr

(or whatever time-control you prefer). I guess FRC should work without problems on the (bug-fixed) WinBoard 4.3.15m. If it gives problems, a newer alpha version (being more variant-tolerant, as it uses the long-algebraic notation the ICS sends for every move, rather than the SAN the ICS sends, as I am not sure the disambiguation of the ICS for variants with strangely moving pieces is already perfect) can be downloaded from:

http://home.hccnet.nl/h.g.muller/ICSclient.zip

The IP address of my server is 80.100.28.169, (to be used in the WinBoard -icshost option), the -icshelper (if you want to use any) is timeseal.
User avatar
slobo
Posts: 2331
Joined: Mon Apr 09, 2007 5:36 pm

Re: Chess960 on my variant ICS!

Post by slobo »

hgm wrote:I have now also implemented FRC on my variant ICS. Tonight I will leave it on, with two FRC engines logged in: DanaSah and Glaurung. (That would be from around 11 pm, which is 17:00 EST.)

Feel free to use the server for FRC or other games, against my drones or amongst yourself; caparandom should also work (but I did not provide any opponents for that). To start an FRC game, use

match <opponent> 5 0 u fr

(or whatever time-control you prefer). I guess FRC should work without problems on the (bug-fixed) WinBoard 4.3.15m. If it gives problems, a newer alpha version (being more variant-tolerant, as it uses the long-algebraic notation the ICS sends for every move, rather than the SAN the ICS sends, as I am not sure the disambiguation of the ICS for variants with strangely moving pieces is already perfect) can be downloaded from:

http://home.hccnet.nl/h.g.muller/ICSclient.zip

The IP address of my server is 80.100.28.169, (to be used in the WinBoard -icshost option), the -icshelper (if you want to use any) is timeseal.
Hi Harm,

I have a few questions:

- what is the difference between two WB versions, 13/01/2009 22:48 and 14/01/2009 17:32 ? Both of them work on FICS but nether of them is able to reproduse FRC castling move. Wich one is the WinBoard 4.3.15m version?

- is it possible to put your server as one of ICS options witin winboard.ini?

- are commands on your server equal as those to FICS?

- what does "u" mean in "match <opponent> 5 0 u fr" ("fr" must be fischer random).

- is it possible to reduce the fairymax search deep within winboard.ini?

like: "/firstChessProgramNames={"fmax /sd=3" /fd="Fairy-Max" "

It´s al for the moment.
"Well, I´m just a soul whose intentions are good,
Oh Lord, please don´t let me be misunderstood."
User avatar
hgm
Posts: 27796
Joined: Fri Mar 10, 2006 10:06 am
Location: Amsterdam
Full name: H G Muller

Re: Chess960 on my variant ICS!

Post by hgm »

slobo wrote:Hi Harm,

I have a few questions:

- what is the difference between two WB versions, 13/01/2009 22:48 and 14/01/2009 17:32 ? Both of them work on FICS but nether of them is able to reproduse FRC castling move. Wich one is the WinBoard 4.3.15m version?
You can identify the version in the "help->about" menu. The one that says 4.3.15m will be 4.3.15m. The other will probably say 4.3.15k, but if it came from the ICSclient package it is not: I just forgot to update the version number when I compiled it. It is an alpha version of 4.3.16, and it should be slightly smarter in parsing the ICS move, in particular in variants that it does not know. (Old WB parsed the SAN move, but if the ICS says Le3 because a "Lion" moves to e3, and there are two Lions on the board, but WB des not know how a Lion moves, it has a problem. This problem is solved by having WB look at the long-algebraic move L/g3-e4 which the ICS also sends.)
- is it possible to put your server as one of ICS options witin winboard.ini?
It could be added in the iscNames menu of the WB start-up. But this is just a temporary address, only for testing.
- are commands on your server equal as those to FICS?
They say this is the server that FICS originally started with. But they might have evolved as well, and in a different direction. I never played on FICS, and hardly know any of the ICS commands.
- what does "u" mean in "match <opponent> 5 0 u fr" ("fr" must be fischer random).
"u" stands for "unrated". I don't think guests can play rated games, and initially when I tried it crashed the server. This seemed to be due to an installation problem, though: somehow it could not find the file with player ratings. So I ignored it. Since a few days the server no longer complains at start-up that it could not find the player database, so rated games might actually work now.

"fr" is indeed short for "fischerandom". The latter should work too. I use the same variant names on the server as WB does, but I defined shortcuts as well:

zh = crazyhouse
bh = bughouse
gc = gothic
sj = shatranj
ca = capablanca
sg = shogi
su = super
xq = xiangqi
fr = fischerandom
cr = caparandom
km = knightmate
- is it possible to reduce the fairymax search deep within winboard.ini?

like: "/firstChessProgramNames={"fmax /sd=3" /fd="Fairy-Max" "
This is the right idea, but the wrong option. (/sd = /secondDirectory). The option you need is /searchDepth or /depth. This also limits the opponent to 3 ply, though. Unless the opponent is a human, of course. :lol:
User avatar
slobo
Posts: 2331
Joined: Mon Apr 09, 2007 5:36 pm

Re: Chess960 on my variant ICS!

Post by slobo »

I tried to reduce fmax´s strength but neither
/firstChessProgramNames={"fmax /depth=3" /fd="Fairy-Max"
nor
/firstChessProgramNames={"fmax /searchDepth=3" /fd="Fairy-Max"
did work.
"Well, I´m just a soul whose intentions are good,
Oh Lord, please don´t let me be misunderstood."
User avatar
hgm
Posts: 27796
Joined: Fri Mar 10, 2006 10:06 am
Location: Amsterdam
Full name: H G Muller

Re: Chess960 on my variant ICS!

Post by hgm »

OK, I will check it. The sd parameter is understood in the WB interface, but perhaps there is a bug in the search where it should look for it.
User avatar
hgm
Posts: 27796
Joined: Fri Mar 10, 2006 10:06 am
Location: Amsterdam
Full name: H G Muller

Re: Chess960 on my variant ICS!

Post by hgm »

OK, the ICS is up and running. FRC seems to work; I played bullet games between Glaurung and DanaSah for several hours, and there did not seem to be any problems.

Even Superchess and Courier seem to be working now, but there still are problems with promotions if Fairy-Max: in Superchess it cheats by always promoting to Queen, even when this is not allowed because it still has its Queen (a so called documented limitation. :lol: ). In Courier I am not sure what is wrong, but after the opponent promotes Fairy-Max does not accept moves with the promotion piece. None of this can be blamed on the server.

Apart from Glaurung and DanaSah in FRC mode, I did leave Fairy-Max on for all the other variants (in so far it knows them).

Type "boards" to see which categories the variant server supports, or "board <category>" to see what sub-categories.

Of course you can also log your own engine on to the server as a drone; "variant normal" is still fully supported by the server!
Dave Acevedo

Re: Chess960 on my variant ICS!

Post by Dave Acevedo »

Currently at FICS Fischer Random is playable. Before the server will accept an FR game however "iset wild" and "iset fr" must be entered once for each logon session. The UCI engine option "UCI_Chess960" does not need modification. What I do not know is if "iset" is needed for the Variant server.
Dave Acevedo

Re: Chess960 on my variant ICS!

Post by Dave Acevedo »

Just returned from the Variant server and played engine FRC successfully. No "iset" is needed nor was -zippyVariants "fischerandom,normal" with the Winboard_F Gold package.

In fact nothing worked until I removed these.
But again, the UCI engine option UCI_Chess960 true/false needs no modification.
User avatar
hgm
Posts: 27796
Joined: Fri Mar 10, 2006 10:06 am
Location: Amsterdam
Full name: H G Muller

Re: Chess960 on my variant ICS!

Post by hgm »

Thanks for testing the variant ICS! The server seems to support "iset", (at least, there is "help" about it), but there don't seem to be any ivariables.

I am not sure why "iset wild" is required on FICS, I never tried to play FRC on FICS. On ICC with WB 4.3.14 it was not needed.

-zippyVariants should not affect "outgoing calls"; it is only used to decide how the bot reacts to a challenge. (And in WB 4.3.15 I check both if the variant is in the zippyVariants list and in the variants supported by a protocol-2 engine).

It is strange that giving the zippyVariants seemed to wreck things: I had "fischerandom" in the zippyVariants list on Linux (Glaurung) and Windows (DanaSah), to allow people to challenge them. There might have been a typo. I think that "fischerandom" is in the default list of zippyVariants (like every variant ICC that ICC supports) for WB 4.3.15.
User avatar
hgm
Posts: 27796
Joined: Fri Mar 10, 2006 10:06 am
Location: Amsterdam
Full name: H G Muller

Re: Chess960 on my variant ICS!

Post by hgm »

slobo wrote:I tried to reduce fmax´s strength but neither
/firstChessProgramNames={"fmax /depth=3" /fd="Fairy-Max"
nor
/firstChessProgramNames={"fmax /searchDepth=3" /fd="Fairy-Max"
did work.
OK, now I see. The placements of the quotes are wrong. The way you did it makes the /depth=3 part of the engine command line, i.e. an option to the engine. But it must be an option to WinBoard; WB will relay it to the engines through the WB protocol sd 3 command (not as a command-line option). So you should have written

/firstChessProgramNames={"fmax" /depth=3 /fd="Fairy-Max"

where in fact the quotes are superfluous, as there are no options on the fmax command line.

Note that WB always sends sd N to both engines, in reaction to a /depth=N option. If you want to play two engines against each other, and limit the depth of only one of them, you should use the InitString to transmit the command. E.g.:

/firstInitString="new\nrandom\nsd 3\n"

so the sd 3 will be piggy-backed to any new command. The InitString can be specified for each engine separately.