The site has moved to a new server, and there are now some issues to fix. Please report anything needing fixing with a comment to the homepage.



The Chess Variant Pages




[ Help | Earliest Comments | Latest Comments ]
[ List All Subjects of Discussion | Create New Subject of Discussion ]
[ List Earliest Comments Only For Pages | Games | Rated Pages | Rated Games | Subjects of Discussion ]

Single Comment

Bachelor Chess. Win by mating your opponent, or marrying off your King. (7x6, Cells: 42) [All Comments] [Add Comment or Rating]
H. G. Muller wrote on 2022-10-21 UTC

The challenge in making an Interactive Diagram for this variant was to implement the unusual winning condition (marriage). The Diagram already supported winning conditions on a move with the royal piece to a certain area, by letting the user-supplied JavaScript function BadZone() return the value -1 for a move that goes there. (Where a return value 1 simply forbids the move.) This winning condition is a 'delayed one' (like baring), to ensure stepping into check with it can still be punished in the next ply.

I could have the routine test whether a Queen move lands to the friendly King, but then this mechanism should also be made to work for non-royal pieces. Perhaps this is the most flexible solution. But instead I tried to also implement user-defined 'immediate' winning conditions (like King capture), by having BadZone() return -2, and let King-captures-friendly-Queen return this value. (Forbidding friendly capture of all other piece types by returning 1.)

This also causes the one-ply delay required to test whether the Queen move was legal. But it had the side effect that the win can also be pre-empted by capturing the Queen on the next ply. When I thought about it, this seemed actually more logical. If there is no win when the King is killed before the marriage can be consumed, why should not the same be the case when the Queen dies? In view of the prospect of breeding a successor this should certainly be worse!?