Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Clojure
Pull request Compare This branch is 43 commits behind reiddraper:master.

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
src/crosscram
test/crosscram/test
.gitignore
COPYING
README.md
project.clj

README.md

crosscram

Crosscram is a two-player perfect information game. This is a Clojure project for writing AI bots to play against each other:

$ lein run crosscram.samples.eager-walk crosscram.samples.random 13 13 100
Scores: {:bot-a 3, :bot-b 66, :draws 31}

The game is played on a two-dimensional board, much like Chess, Checkers or Go. The two players alternate turns until one player can no longer move, based on the game rules. Players place dominoes (2 x 1 pieces) on empty locations on the board. One player plays horizontal pieces, the other vertical. The game continues until one player can no longer make a move.

Here's an example game. In this example, the board is square, 4 x 4. The first player is playing as horizontal and the second as vertical.

# Empty game
[ ][ ][ ][ ]
[ ][ ][ ][ ]
[ ][ ][ ][ ]
[ ][ ][ ][ ]

# First move
[1][1][ ][ ]
[ ][ ][ ][ ]
[ ][ ][ ][ ]
[ ][ ][ ][ ]

# Second move
[1][1][ ][ ]
[2][ ][ ][ ]
[2][ ][ ][ ]
[ ][ ][ ][ ]

# Third move
[1][1][ ][ ]
[2][ ][ ][ ]
[2][ ][ ][ ]
[ ][ ][3][3]

# Fourth move
[1][1][ ][ ]
[2][ ][4][ ]
[2][ ][4][ ]
[ ][ ][3][3]

# Fifth move
[1][1][ ][ ]
[2][ ][4][ ]
[2][ ][4][ ]
[5][5][3][3]

# Sixth move
[1][1][ ][6]
[2][ ][4][6]
[2][ ][4][ ]
[5][5][3][3]

# The game is now over
# because the next player
# cannot play a horizontal
# piece

License

Copyright (C) 2012 Reid Draper and contributors

Distributed under the Eclipse Public License, the same as Clojure uses. See the file COPYING.

Something went wrong with that request. Please try again.