4个版本
0.0.70 | 2021年5月4日 |
---|---|
0.0.69 | 2021年4月26日 |
0.0.68 | 2021年3月24日 |
0.0.67 | 2021年3月23日 |
0.0.66 |
|
1147 在 WebAssembly
26 每月下载量
在 riichi-tools-cli 中使用
1MB
7K SLoC
riichi-tools-rs
用Rust编写的立直麻将工具库,主要用于作为WASM组件。
从许多其他麻将工具中汲取了灵感,如 https://euophrys.itch.io/mahjong-efficiency-trainer,http://tenhou.net/2/,http://kobalab.net/majiang/dapai.html 等。
该库的展示/前端可以在 https://riichi.harphield.com/tools/ 找到
立直和乌 guti 模式
提供了两种立直和乌 guti 计算的实现。默认的实现较慢,但不使用任何查找表,因此生成的二进制文件较小:非常适合WASM。
另一种是从 Spines.Mahjong 移植的,速度要快得多,但二进制文件较大。
您可以通过在 cargo.toml 中启用功能来启用快速模式
riichi-tools-rs= {version= "0.0.70",features= ["fast_shanten"] }
路线图
- 南4模拟器
- 一个你在最后一轮尝试获胜的游戏 [完成] [已移至单独的项目,riichi-tools-wasm]
- 手牌分析
- 13张牌的立直 [完成]
- 14张牌的立直,带有完整的手牌指示 [完成]
- 乌 guti,牌接受 [完成]
- 完整手牌(14张牌)的手牌价值 + 形状 [完成]
- 可能的结局的手牌价值 + 形状 [完成]
- 以上所有功能也适用于带叫牌的手牌 [完成]
- 规则变体(天凤 vs WRC vs 麻将魂等)
- 表格分析
- 安全牌
- 等待概率百分比
- 回放分析
- 天凤回放解析
- 麻将魂回放解析
- 弃牌评分
手牌表示解析
Hand::from_text()
方法接受以下格式的字符串表示
- 1-9 m, s 或 p 表示万、筒、条
- 0 m, s 或 p 是红五(目前支持主要处于WIP状态)
- 1-7 z 表示面子,其中
- 1 = 东
- 2 = 南
- 3 = 西
- 4 = 北
- 5 = 白龙
- 6 = 绿龙
- 7 = 红龙
- 开放形状
- (XYZCI) 是鸡,其中XYZ是连续数字,C是颜色(m, p, s)和I是叫牌的牌索引(0-2)。
- (pXCIr) 是 pon,其中 X 是 0-9,C 是颜色(m、p、s、z),I 是被呼叫玩家的索引(1 = shichou,2 = toimen,3 = kamicha)。如果 pon 有红色的 5,则表示将使用
0
- 例如 (p0m2)。如果是被呼叫的红色 5,则添加 r - (kXCIr) 是闭坎或大明的(开叫坎)。应用相同的规则,但 I 是可选的 - 如果不可用,则该坎被视为闭坎。
- (sXCIr) 是守明的(加坎)。应用与大明的相同规则。
一些示例
123m44456888s678p
456s11133z(456m1)(456p0)
4z(p1z1)(k2z)(s3z3)(p6z2)
依赖关系
~4–14MB
~145K SLoC