Check out Grant Acedrex, our featured variant for April, 2024.


[ 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

Pandemonium (Surajang修羅場). Capablanca chess + Crazyhouse.[All Comments] [Add Comment or Rating]
H. G. Muller wrote on Sun, Jul 25, 2021 12:42 PM UTC in reply to Daphne Snowmoon from 11:55 AM:

The rule that a Pawn dropped on 2nd rank regains his double push makes it a case of location-dependent moving, rather than an initial move. Position-dependent moving is not directly supported by the Interactive Diagram, but if can be emulated through automatic promotion: define multiple piece types for the piece with the variable move (all using the same symbol), and automatically 'promote' any of these types to the type that has the move belonging to the square they land on. This can be done by a user-supplied JavaScript function WeirdPromotion(). I did that in the Diagram I recently made for The Consuls.

In this case you would need two Pawn types, where only type 2 has the double push (and only type 1 promotes according to the normal mechanism on reaching the zone). Type 2 would always change into type 1 when it moves; both types would change into type 1 or 2 when they are dropped, depending on where they are dropped.

To make the promotion choice dependent on other pieces present on the board is problematic. The function WeirdPromotion() can also be used to veto promotions that would otherwise be possible. But the Diagram currently doesn't keep track of how many pieces of each type there are on the board. So it would have to scan the entire board to detect whether the proposed promotion piece is already there. This is possible, but would slow down the AI a lot. (But the AI currently cannoot handle games with drops anyway, so perhaps this is not a problem.)