给大家介绍一款功能强大但比较难用的抽卡模拟器,或者叫概率计算器,dl, md, 实卡都适用。
使用方法
1. 创建一个yaml文件,里面格式如下
deck:配置牌组
size: 牌组卡牌总数
cards:定义卡片
卡牌名: 每张卡名字任意
count: 重复次数(默认一张),-1代表根据牌组卡牌总数自动计算(只能有一个-1),
attribute: 一个列表,定义赋予该卡的属性(标签)
属性内容自定义,例如怪兽卡、魔法卡,本家卡、泛用卡、手坑等等,均用字符串表示
注意卡牌总数不要超过之前定义的size
classes: 定义卡片的类型,每个class是一个类型,格式为
类型名: 条件1 条件2 条件3 ...
每个条件之间是逻辑与(&&)关系
每个条件的格式必须是以下一种:
1. 牌组(deck)中定义的卡牌名
2. 定义在当前class之前的类型名 (例如class1已经定义,当前在定义class2,则定义class2时可以引用class1)
3. a:属性 -> 要求该类型包含某种特定的属性
4. A:属性(模糊匹配) -> 要求该类型包含某种特定的属性,后面的表达式可以带*(匹配任意个任意字符)或?(匹配一个任意字符)
5. !条件 -> 逻辑取反(要求后面跟的条件为假)
simulate: 模拟器配置
count:模拟次数
start_card: 初始手牌为多少张卡(默认5)
turns: 模拟多少回合 (默认5)
tests:列举想要关注的主题(例:展开、阻抗),每个主题之间互不相干
主题名: 列举当前主题希望得到的手牌组合,每个组合之间是逻辑与(||)关系
组合名: 定义一种希望满足的条件,列举需要的手牌
- 手牌类型1 (引用deck定义的卡牌名或classes定义的类型名)
...
(注:当一张卡牌匹配了一种手牌类型之后,这张卡牌不会被用于匹配其他手牌类型,列举在前的手牌类型具有更高的优先级)
注:文档里请只写半角字符(不要写中文不然可能出错)
例
deck:
size: 40
cards:
w-red:
count: 3
attribute: ['M', 'low', 'witches',