#terminal #terminal-game #game #simulation

bin+lib prisoner

A library for simulating "The Prisoner's Dilemna"

7 unstable releases

0.6.3 Feb 15, 2024
0.6.2 Nov 17, 2023
0.6.0 Jun 10, 2022
0.5.0 Jun 10, 2022
0.3.0 Jun 9, 2022

#340 in Games

MIT license

21KB
358 lines

example workflow Crate docs.rs

prisoner

A library for simulating "The Prisoner's Dilemna". Also comes with a main.rs to play with.

Provides enums for Choice and Outcome, these are all you really need to play the game. The public function determine will give you a result. The Outcome enum also provides methods for calculating a score. It supports the classic reward mechanism (0, -1, -2, -3) reward based scoring system, and an algebraic return (ie T > R > P > S). Currently does not implement Ord.

Usage

main.rs shows how to use clap generate a CLI. This is also the entry point for the docker container.

prisoner 0.5.0
Ian Cullinane <ian@iancullinane.com>
A library for simulating "The Prisoner's Dilemna"

USAGE:
    prisoner [OPTIONS] --players <PLAYERS>

OPTIONS:
    -h, --help                 Print help information
    -p, --players <PLAYERS>    
    -r, --rounds <ROUNDS>      
    -V, --version              Print version information

Dependencies

~5.5MB
~100K SLoC