|
|
PC PROGRAM DEVELOPMENT: CREATION OF AN INDEPENDENT CAMELOT-PLAYING COMPUTER PROGRAM
A successful independent Camelot computer program contains three primary elements: 1. An effective interactive graphical user interface including the playing surface, the pieces, a timer, the means to electronically save games, etc. 2. Strict adherence to the playing rules. 3. An algorithm to perform an accurate evaluation of positions.
Following is an example of element #1, a listing of the necessary components of element #2, and a introductory examination of element #3.
GRAPHICAL USER INTERFACE
RULES TESTING
These are the thirty-nine components of Camelot rules that require testing:
RULES TESTS FOR KNIGHT AND MAN 1. A piece is allowed to Plain Move in any direction. 2. A piece is allowed to Canter in any direction. 3. Pieces cantered over are not removed. 4. A Canter is allowed to terminate even if further Canters are possible. 5. A Canter is allowed to change direction. 6. A Canter is allowed to continue if further Canters are possible. 7. A Circular Canter (a Canter that begins and ends on the same square) is not allowed. 8. A piece is allowed to jump in any direction. 9. Pieces jumped over are removed. 10. A Jump must continue if further jumps are possible. 11. A Jump is allowed to change direction. 12. A Circular Jump is allowed. 13. If a Jump is available, a capture somewhere during that move is forced (except if required to vacate Castle). 14. The game is won if two pieces enter the opponent’s Castle. 15. The game is won if a player with two or more pieces captures all of his opponent’s pieces. 15a. The game is not won if a player with two or more pieces captures all but one of his opponent’s pieces. 16. The game is lost if a player has no legal move and his opponent has two or more pieces. 16a. The game is not lost if a player has no legal move and his opponent has one piece. 17. The game is drawn if both players have no more than one piece. 17a. The game is drawn if both players have one piece. 17b. The game is drawn if one player has one piece, and the other player has no pieces. 18. A piece is not allowed to plain move into its own Castle. 19. A piece is not allowed to canter into its own Castle. 20. A piece is allowed to jump over an opponent’s piece into its own castle. 21. If a piece jumps over an opponent's piece into its own castle, and the piece is then next to an exposed enemy piece, the jumping must continue (out of its own castle) as part of that same move. 22. If a piece has jumped over an opponent's piece into its own Castle, and was unable to continue the jumping out of its own Castle as part of that same move, that piece must, on the next turn to move, immediately move out from its own Castle, with no exception. 23. A piece moving out from its own Castle must jump out, if possible, instead of plain-moving or cantering out. 24. A piece that has entered the opponent’s castle cannot move out. 25. A piece that has entered the opponent’s castle is allowed to move from one castle square to the other (designated a Castle Move) twice during a game.
RULES TESTS FOR KNIGHT, ONLY 26. If a Jump is available, the forced capture may be satisfied by a Knight’s Charge. 27. A Knight’s Charge is limited to first canter(s), then jump(s). 28. A Knight’s Charge is never forced. 29. If the canter of a Knight brings it next to an exposed enemy piece, it must jump either then or later in that move. 30. A Knight may charge in any direction. 31. Pieces jumped over during the jumping portion of a Knight’s Charge are removed. 32. The jumping portion of a Knight’s Charge is forced to continue if further jumps are possible. 33. The jumping portion of a Knight’s Charge is allowed to change direction. 34. The jumping portion of a Knight’s Charge is allowed to be circular. 35. A Knight is allowed to jump over an opposing piece into its own castle during the jumping portion of a Knight’s Charge. 36. A Knight is not allowed to canter into its own castle during the cantering portion of a Knight’s Charge. 37. If a Knight jumps over an opponent's piece into its own castle during the jumping portion of a Knight’s Charge, and the Knight is then next to an exposed enemy piece, the jumping must continue (out of its own castle) as part of that same move. 38. If a Knight has jumped over an opponent's piece into its own Castle during the jumping portion of a Knight’s Charge, and was unable to continue the jumping out of its own Castle as part of that same move, that Knight must, on the next turn to move, immediately move out from its own Castle, with no exception. 39. If a Knight has the opportunity to jump out from its own castle, it may, if it can, satisfy the obligation to capture by moving out with the cantering portion of a Knight's Charge instead.
POSITION EVALUATION
All suggestions regarding this element are welcome. Send them to Michael Nolan at: michael@worldcamelotfederation.com.
EVALUATION FACTORS
OBJECTIVE FACTORS:
1. Eliminating: The value of capturing all of the opponent's pieces while retaining at least two of your own pieces, i.e., winning the game.
2. Castling: The value of entering two pieces into opposing Castle, i.e., winning the game. It is actually disadvantageous, though, to castle only one of your pieces since it prematurely removes that piece from the action.
3. Stalemating: The value of stalemating your opponent while retaining at least two of your own pieces, i.e., winning the game.
SUBJECTIVE FACTORS:
4. Material: Valuing the worth of friendly forces compared to enemy forces. This value can only be calculated by determining the value of a Knight relative to a Man at any given point in the game, a variable dependent upon the changing total number of friendly uncastled pieces. The value of a Knight not only changes throughout the game; its exact value at the start of the game is unknown. That value can, however, be estimated at approximately 2.25 times the value of a Man. A detailed discussion of this issue can be found here.
5. Offensiveness: Valuing the proximity to the opposing Castle of your attacking pieces.
6. Defensiveness: Valuing the proximity to your own Castle of your own defensive pieces relative to the proximity of the opponent's attacking pieces.
7. Mobility: Valuing the number of squares controlled by your pieces.
8. Trading Down: Valuing the trading of pieces when ahead in material, and the avoidance of trading pieces when behind in material. A detailed discussion of this issue can be found here.
9. Centering: Valuing the proximity of your pieces to the center of the board.
10. Grouping: Valuing the proximity of your pieces (both Knights and Men) to each other.
11. Charging: Valuing the potential of your Knights to Charge, i.e., valuing the proximity of Knights to friendly pieces. This is in addition to the valuation given to Knights in Factor #10.
|