CardStock is a General Game Playing engine for card games implemented in C#. Games are written in RECYCLE, a card game description language, and then simulations are run with random, simple, and complex AI players. CardStock can then analyze the games to determine heuristics about the games such as fairness, decisiveness, drama, or clarity, and generate transcripts of each simulation for further study.
We are currently in the process of abstracting and refactoring CardStock to allow for new game functionality and setting up a modular system for a tournament of AI players. Please check back for further progress on these issues.
There are currently 41 games coded in RECYCLE
- Press Your Luck
- Fishing
- Stealing Bundles (2-5p)
- Shedding
- Comet (2p)
- Crazy Eights (4p)
- Sane Eights (4p)
- Simon's Cat (4p)
- Adding
- Caterpillar (2p)
- Ninety Eight (4p)
- Draw and Discard
- Golf (2p)
- Lost Cities (2p)
- Spite and Malice (2p)
- Trick Taking
- Agram (2-5p)
- California Jack (2p)
- Duck Soup (2p)
- German Whist (2p)
- Hearts (3-5p)
- Omnibus Hearts (4p)
- Broken Hearts (4p)
- Pure Hearts (4p)
- Grey Lady (4p)
- Black Maria (4p)
- Spot Hearts (4p)
- Knaves (3-4p)
- Polignac (4p)
- Shasta Sam (4p)
- Sheepshead (5p)
- Cheesheads (5p)
- Spades (4p)
- Slobberhannes (4p)
- The Bottle Imp (3-4p)
- Whist (4p)
- Catch and Collect
- Enchère (3p)
- GOPS (2p)
- Go Fish (2p) limited deck
- Turn the Tide (3p)
- Unique
- Visual Studio (tested on Mac in https://www.visualstudio.com/vs/visual-studio-mac/)
- Open "CardStockXam.sln" project.
- Write up your game in RECYCLE.
- Alter the Program.cs class to specify the name of your game.
- Run the program in either Release or Debug mode.
- Choose "Release Mode" to only see the results, or "Debug Mode" to see all game actions (better logs in the future).
- The Shape of Card Games Blog
- ReadTheDocs.io
- Automated Playtesting with RECYCLEd CardStock, Connor Bell and Mark Goadrich, Game & Puzzle Design Journal, Vol 2, Issue 1, July 2016
- Quantifying the Space of Hearts Variants, Mark Goadrich and Collin Shaddox, Advances in Computer Games 2021, November 2021