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.
Use Docker or see requirements.txt.
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%