Skip to content

deck-optimizer is a Python module to support TCG deck buildin

License

Notifications You must be signed in to change notification settings

hasoya/deck-optimizer

Repository files navigation

deck-optimizer

PyPI version Python Versions Docker Publish pytest Upload Python Package Code Quality Coverage

deck-optimizer is a Python module to support TCG deck building especially Yu-Gi-Oh!. This module suggest the best combination of cards under given conditions.

Dependency

Use Docker or see requirements.txt.

Usage

Make config yaml file to describe the ideal hand. For example, if you want to draw at least one PSY-Framegear Gamma and keep PSY-Frame Driver in deck, your config file will be written as below.

num_hand: 5
num_deck:
  min: 40
  max: 60
condition:
  - name: Gamma
    min: 2
    max: 3
    require: 1
    exact: False
    in_hand: True
  - name: Driver
    min: 1
    max: 1
    require: 1
    exact: True
    in_hand: False

Then, run the app by following command.

docker pull ghcr.io/hasoya/deck-optimizer:v0.0.4
docker run -v /absolute/path/to/config/file:/config.yaml ghcr.io/hasoya/deck-optimizer:v0.0.4 -f /config.yaml

You will get the suggestion of deck composition and the probability of the ideal hand.

The best deck
  Total Num Deck: 40 Num Gamma in deck: 3 Num Driver in deck: 1
The probability of the ideal hand
  30.21%

About

deck-optimizer is a Python module to support TCG deck buildin

Resources

License

Stars

Watchers

Forks

Packages