{"id":16719262,"url":"https://github.com/reiddraper/crosscram","last_synced_at":"2025-10-31T14:30:36.954Z","repository":{"id":138990642,"uuid":"3989382","full_name":"reiddraper/crosscram","owner":"reiddraper","description":null,"archived":false,"fork":false,"pushed_at":"2014-08-17T19:54:53.000Z","size":224,"stargazers_count":3,"open_issues_count":0,"forks_count":4,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-02-14T22:43:07.206Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Clojure","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/reiddraper.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"COPYING","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2012-04-11T02:30:44.000Z","updated_at":"2018-02-05T14:28:52.000Z","dependencies_parsed_at":"2023-03-13T10:52:23.735Z","dependency_job_id":null,"html_url":"https://github.com/reiddraper/crosscram","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/reiddraper%2Fcrosscram","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/reiddraper%2Fcrosscram/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/reiddraper%2Fcrosscram/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/reiddraper%2Fcrosscram/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/reiddraper","download_url":"https://codeload.github.com/reiddraper/crosscram/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":238945642,"owners_count":19556701,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-10-12T21:41:15.654Z","updated_at":"2025-10-31T14:30:36.900Z","avatar_url":"https://github.com/reiddraper.png","language":"Clojure","funding_links":[],"categories":[],"sub_categories":[],"readme":"# crosscram\n\n[Crosscram](http://en.wikipedia.org/wiki/Domineering) is a two-player\n[perfect information](http://en.wikipedia.org/wiki/Perfect_information) game.\nThis is a Clojure project for writing AI bots to play against each other:\n\n```bash\n$ lein run crosscram.samples.eager-walk crosscram.samples.random 13 13 100\nScores: {:bot-a 3, :bot-b 66, :draws 31}\n```\n\nThe game is played on a two-dimensional board, much like Chess, Checkers\nor Go. The two players alternate turns until one player can no longer\nmove, based on the game rules. Players place dominoes (2 x 1 pieces)\non empty locations on the board. One player plays horizontal pieces,\nthe other vertical. The game continues until one player can no longer\nmake a move. The last player able to make a move is the winner.\n\nHere's an example game. In this example, the board\nis square, 4 x 4. The first player is playing as horizontal\nand the second as vertical.\n\n    # Empty game\n    [ ][ ][ ][ ]\n    [ ][ ][ ][ ]\n    [ ][ ][ ][ ]\n    [ ][ ][ ][ ]\n\n    # First move\n    [1][1][ ][ ]\n    [ ][ ][ ][ ]\n    [ ][ ][ ][ ]\n    [ ][ ][ ][ ]\n\n    # Second move\n    [1][1][ ][ ]\n    [2][ ][ ][ ]\n    [2][ ][ ][ ]\n    [ ][ ][ ][ ]\n\n    # Third move\n    [1][1][ ][ ]\n    [2][ ][ ][ ]\n    [2][ ][ ][ ]\n    [ ][ ][3][3]\n\n    # Fourth move\n    [1][1][ ][ ]\n    [2][ ][4][ ]\n    [2][ ][4][ ]\n    [ ][ ][3][3]\n\n    # Fifth move\n    [1][1][ ][ ]\n    [2][ ][4][ ]\n    [2][ ][4][ ]\n    [5][5][3][3]\n\n    # Sixth move\n    [1][1][ ][6]\n    [2][ ][4][6]\n    [2][ ][4][ ]\n    [5][5][3][3]\n\nThe game is now over because the next player cannot play a horizontal piece.\n\n## License\nCopyright (C) 2012 Reid Draper and\n[contributors](https://github.com/baznex/crosscram/graphs/contributors)\n\nDistributed under the Eclipse Public License, the same as Clojure uses.\nSee the file COPYING.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Freiddraper%2Fcrosscram","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Freiddraper%2Fcrosscram","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Freiddraper%2Fcrosscram/lists"}