Skip to content

mgoadric/cardstock

Repository files navigation

RECYCLEd CardStock V2.0

slider-1

Project Goals

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 abstracting and refactoring CardStock to allow for new game functionality and setting up a modular system for a tournament of AI players. Please post any issues you find.

Games

There are currently 70+ games coded in RECYCLE, a mixture of classic and modern games, categorized by genre:

Please check the wishlist for games that we would love to have implemented in Recycle. Pull requests are welcome and encouraged!

Requirements

Setup

  1. Install .NET Install Tool Extension
  2. Get .Net Core 10.0
  3. Install C# Dev Kit Extension
  4. Open CardStock folder in the project using Visual Studio Code.

Usage

  1. Open the CardStock subdirectory
  2. Write up your game in RECYCLE in the games subdirectory.
  3. Alter the Program.cs class to specify the name of your game.
  4. Run the program in either Release or Debug mode.
    1. For Release mode, in the terminal type "dotnet run --configuration Release"
    2. Choose "Release Mode" to only see the results, or "Debug Mode" to see all game actions (better logs in the future).
  5. Analyse your results (found in the output subdirectory) with the Jupyter Notebooks in the Analysis directory.

References

Citation

To cite this project, please use the following reference

@article{Bell_Goadrich_2016,
         title={Automated Playtesting with RECYCLEd CardStock},
         author={Bell, Connor and Goadrich, Mark},
         journal={Game & Puzzle Design},
         volume={2}, number={1},
         year={2016}, pages={71–83}}

About

RECYCLEd CardStock : A General Game Playing Engine for Card Games

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 7