GameKnot related: About conditional moves
« Back to forum
FromMessage
salsa19
14-Apr-18, 15:21

About conditional moves
Greetings!

I would like to start by saying that if this subject has been discussed before, I sincerely apologize for bringing it up again; I couldn't find the courage to go over every thread of this forum to check. So feel free to delete this thread if the subject has been discussed/explained before.

Now onto my question:

I was wondering about the possibility of implementing a [any move] option in the "Conditional Moves* interface. To elaborate : an option to trigger a conditional move answering any move your opponent might make. For instance, in certain chess scenarios leading to a mate or a certain position, there are times when your opponent has multiple *possible* moves, though the move he will choose has little to no incidence on your answer. For example, in this game (I am playing white)



my opponent has a few choices as to where he will move his king, although this will have no bearing as to my own moves (moving to promote my C pawn).

This is a specific example in a game I am currently playing and may seem trivial, but I have encountered similar situations before, sometimes with way more options open to my opponent but that would all lead to the same move being played by me.

So this got me at times wishing there was an "any move" option to tick for such cases, instead of having to enter a distinct conditional move for every possibility.

Thank you for taking the time to read.
evader23
15-Apr-18, 09:44

It has been brought up and as far as I know gameknot has been made aware. But as far as I know it has fallen on def ears. I would like that option as well. There have been more than once that I have had mate in one regardless of what my opponent does but he has about 10 leagal moves. I don't want to program all 10.

So gameknot if you are listening I second the motion for anymove cond.

Thanks
ketchuplover
15-Apr-18, 12:53

I second his second.
Gameknot.com
15-Apr-18, 13:12

There are several issues with a wildcard ("any move") option when entering conditional moves which influenced our decision not to implement them a long time ago. Two main problems: it is not possible to check the validity of any subsequent moves on the chessboard (due to possible checks and/or blocked pieces). Also it is very risky overall, since you might be overlooking a particular simple move, which might not be very powerful or decisive, but that needs to be countered immediately, lest risking losing the entire game. We'd rather not implement something that is equally likely to save you a bit of time, and to make you lose a game due to a very simple mistake.
evader23
15-Apr-18, 13:51

Thanks gameknot for the response. I figured it was something technical and you weren't just ingnoring us. That you letting up know what the problem is on it
lord_shiva
25-Apr-18, 10:34

Writing Chess Code
I wrote a program to play chess once. The program cheated, by permitting illegal moves. It was really difficult to nail down all the possibilities.

So I can certainly appreciate the effort required to implement new features. The "ANY" move would be difficult to implement, and only rarely come into play. If you don't want to program all the possibilities, enter the two or three most likely moves.
lord_shiva
06-May-18, 04:13

Any vs OTB
Suppose you have a white king and pawn on the same diagonal and your opponent has a king, pawn, and bishop the color of your king's square. You propose moving the pawn two squares regardless of what black does (any) but this is illegal if you overlook black moving the bishop to put you in discovered check.

If you set up this conditional, it is a specific move you are exploring. GK gives you information it is illegal. OTB you can make this move, punch the clock, and lose (illegal move forfeiture).

ANY would provide information GK would not normally have given you. In other words, the engine's rejection of your proposal supplies information (your opponent can make a move you have not considered) you would not have received using regular conditionals.

While you know you would not invoke ANY if there were illegal responses, not all GK players have your skill level.
stalhandske
07-May-18, 22:39

I agree with shiva (and GK) in this matter. Relative to the (rather limited) benefits of having an "ANY" option, I agree that the work to achieve it is far too extensive (and costly).
myrydin
08-May-18, 03:55

I agree. Just try entering the move you think your opponent is most likely to make. In the diagram, that will be h3.
yokenster
18-Oct-18, 22:25

Slightly off topic
In Salsa 19's example his opponent should've had the common courtesy to resign such a hopelessly lost position. Its been my experience that the player with the distinct advantage is usually making the conditionals and his or her opponent is delaying the inevitable loss; hoping by some miracle for a time out. It's infuriating, I was taught as a child that chess was a "gentleman's game". Respect is given to your opponent, and there is no reason to waste time on a lopsided affair. Back on topic; Its time consuming but in the above example I would have programmed all of black's possible moves with white's pawn promotion as the end result, followed immediately by putting the black pieced player on my ignore list.
lord_shiva
19-Oct-18, 00:08

Programming
Black has five options. All five can be programmed and accepted without that much work, given the beauty of GK's implementation. I've done more than that.
lord_shiva
19-Oct-18, 00:10

Four
I miscounted--in the example black has four legal moves. Right?

If black had a rook there would be many more, but some are more obvious than others.