RoboChess Championships

In this Death Match, program a bot that defeats your opponent's bot in a game based on chess.

Designer(s): elara Match Type: DM (for 2 players)
Featured in: The Choice is Yours
Awards: Best Misc DM 2020

Strategy + Miscellaneous DM: RoboChess Championships

In the RoboChess Championships, players will create bots to play a game with each other, in a test of strategy and programming logic.


This DM will be a simple strategy game with a chesslike structure. The rules of the game are initially hidden, but will be revealed at the time of the DM. However, you will not be playing the game yourselves; instead, you will be writing bots that play the game for you.


A bot can do many things, but the most important factor is that the bot may only consider the current boardstate. For instance, it cannot choose its move based off of the previous move of the opponent. You may use a random number generator if you wish. No formal code is needed; however, some form of syntax or flow would be greatly appreciated.

(At the rules release, I will list a few valid and invalid programs for the actual game to help you understand this. Before then, you may ask me if a program would be considered valid for a game of your choosing.)


This will be a best-of-5 series of games. After 15 minutes of writing, players should send in the first version of their bots. I will go through the game, announcing each move until the game ends. (You will be able to see your opponent's moves here, but you won't know the code of the bot itself.) After the game is revealed, players have 10 minutes to make modifications to their bots, and then another round is played. There will be four such 10-minute blocks, and therefore 5 games played in total. The player that wins three games wins the series and thus the Death Match.


The player with the Advantage decides who goes first and who goes second. (This stays the same over all five games.)


======================================


Clarification/Amendment: If I've reached the end of a player's program and a move hasn't been determined, I will randomly select a move to play.


Clarification: The player with the Advantage should decide who starts within 10 minutes of rules release.

Clarification/Amendment: Do not write something that I would not be able to follow in my head. This shouldn't be an issue in most cases (and I'll accept something that isn't obviously trying to stretch this).


===========================================


This game is Breakthrough.

The game takes place on a 5x5 chessboard. Squares a1 through e1 have white pawns; squares a5 through e5 have black pawns.


Pawns move as they do in chess: A pawn may either move one square forward (towards the 5th rank for white, or towards the 1st rank for black), or capture diagonally forward. No other moves are allowed (you cannot move 2 steps on your first pawn move, for instance). A player must make a move on their turn.


The first player to have a pawn reach the opponent's 5th rank (the 1st rank for black) wins the DM. It is also possible for the board to be stalemated; that is, the current player is unable to make a move. In this case, the last player to move wins the DM.



Tags


Chess-like    (The game involves chess pieces in its design.)


Grid-based    (The game involves play on a grid.)


Miscellaneous    (The game tests a miscellaneous set of skills.)


Piece movement    (The game involves pieces moving on a board.)


Simultaneous    (The game involves players taking their turns simultaneously.)


Strategy    (The game tests the players' strategic & tactical abilities.)