Mahjong Learner / 麻将学习室
An offline Tkinter desktop application for learning four-player riichi mahjong. The interface is primarily Chinese, with Japanese mahjong terminology.
Install and run
python -m pip install mahjong-learner
mahjong-learner
Alternatively use python -m mahjong_learner. Run mahjong-learner --help
for direct tool shortcuts, for example mahjong-learner --tool point-drill.
Python 3.10 or newer, Tcl/Tk, and a graphical desktop are required.
On Windows, use a Python installation that includes Tcl/Tk. Linux users may
need their distribution's python3-tk package. This is not a browser or
headless application. The release was verified on Windows with Python 3.12.
PyTorch is a runtime dependency for the existing four-player game engine;
the download can be large even though no trained weights are distributed.
Nine tools
- Four-player east-round game against rule-based AI.
- AI spectator mode with pause and speed controls.
- Tile-efficiency practice with discard and acceptance analysis.
- Hand score calculator with waits, yaku, han, fu, and payments.
- Fu calculation practice.
- Yaku identification quiz.
- Point calculation practice: han/fu, dealer/non-dealer, ron/tsumo, answer explanations, and session accuracy statistics.
- Seventeen-step mahjong.
- Two-player wait-guessing game inspired by Ten, using the rules shown in the application rather than claiming a complete manga reproduction.
Scoring does not use kiriage mangan: 3 han 60 fu and 4 han 30 fu remain below mangan. Point drills use four-player payments, zero honba, and no riichi sticks. The rules are project-specific and are not a certified tournament ruleset.
Data and model files
The package contains the local tile artwork and works offline after installation.
No trained .pt checkpoints, local credentials, or user practice data are included.
Missing neural checkpoints use the existing rule-based AI strategies.
Tile artwork comes from FluffyStuff/riichi-mahjong-tiles and is dedicated to the
public domain under CC0; see the bundled THIRD_PARTY_NOTICES.txt.
0.1.1
The hand calculator now supports separate dora and ura-dora indicator inputs, with tile previews, removal, clearing, and undo. Enter indicators, not the actual bonus tiles. Ura-dora scores only with closed-hand riichi or double riichi. Known indicators count toward the four-copy limit and reduce remaining waits and acceptance counts. Ordinary dora and ura-dora appear separately in the score.
0.1.0
First PyPI release: nine desktop tools, shared scoring and rule fixes, light UI theme, responsive layouts, and local point-calculation exercises.
Metadata
Release files for mahjong-learner 0.1.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| mahjong_learner-0.1.1.tar.gz | 1.8 MB | Without provenance | Details for mahjong_learner-0.1.1.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| mahjong_learner-0.1.1-py3-none-any.whl | Python 3 | none | any | Details for mahjong_learner-0.1.1-py3-none-any.whl |
Total release size: 3.7 MB
Release files / mahjong_learner-0.1.1.tar.gz
| Download URL | mahjong_learner-0.1.1.tar.gz |
|---|---|
| Size | 1.8 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
6f55d89e361534fd2a1dcba5cef3c0a5bf34c2e3a9eefe80a6d83bac54e883b8
|
|
BLAKE2b-256 checksum How to use checksums |
057abda3fa49044850de3f5a2876ade14898768a1e197f048427480014130b93
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.9
|
Release files / mahjong_learner-0.1.1-py3-none-any.whl
| Download URL | mahjong_learner-0.1.1-py3-none-any.whl |
|---|---|
| Size | 1.9 MB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
43e8959454a63d29fe30513cae66f03afab3e8049fb745d8b6383f75c6840013
|
|
BLAKE2b-256 checksum How to use checksums |
aae5abe86bcbc27391cbde6825ccd20d587ac0c7a1ca3f3f48862177ba4f3618
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.9
|
Security for mahjong-learner 0.1.1
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.