# Mahjong — Cross-Platform
Ultimate Edition
A modern, highly polished, and cross-platform Mahjong Solitaire/Pairs game built with Python and Pygame. It features fluid particle physics,
lightning victory effects, dynamic grid scaling, a localized AppData persistence system, and a flexible layout system that adapts to any monitor resolution.
This repository provides **ready-to-run, standalone executable binaries** for Windows, macOS, and Linux. No Python installation or setup is required.
---
## 🌟 Key Features
* **Massive Image Variety:** Ships with a database of **220 images** that are completely randomly selected and mixed at the start of each level,
making every single playthrough unique.
* **16 Native Languages:** Full localized support for **16 different languages** using a robust Unicode system font fallback system
(guaranteeing zero rendering issues or broken glyphs on Windows, Mac, or Linux).
* **4 Distinct Difficulties:**
* **Easy:** 8 Pairs (4×4 Grid)
* **Medium:** 16 Pairs (4×8 Grid)
* **Hard:** 25 Pairs (5×10 Grid)
* **EXPERT:** 40 Pairs (8×10 Grid)
* **1 & 2 Player Modes:**
* *Single Player:* Traditional time-attack and click-efficiency mode.
* *2-Player Couch Co-Op:* An active turn-based duel mode with dynamic colored HUD tracking and customizable score points.
* **Immersive Sound Design:** Adaptive volume scaling with background tracks and feedback sound effects.
---
## 🛠 Supported
Languages
The game interface can be toggled instantly between the following 16 languages:
* German (*Deutsch*), English, French (*Français*), Spanish (*Español*), Italian (*Italiano*), Portuguese (*Português*),
Dutch (*Nederlands*), Polish (*Polski*), Russian (*Русский*), Ukrainian (*Українська*), Turkish (*Türkçe*), Hungarian (*Magyar*),
Czech (*Čeština*), Swedish (*Svenska*), Romanian (*Română*), and Greek (*Ελληνικά*).
---
## 🚀 How to Download
and Run (Pre-Built Binaries)
Go to the **Releases** section on GitHub and download the appropriate package for your operating system.
### 🪟 Windows
1. Download and extract the Windows ZIP archive.
2. Open the folder and double-click `mahjong.exe` to play.
### 🍏 macOS
1. Download the macOS `.dmg` file.
2. Double-click the `.dmg` file to mount it, then drag the `Mahjong` application into your **Applications** folder.
3. Launch the game from your Applications folder or Launchpad.
*(Note: Depending on your system security settings, you may need to right-click the app and select "Open" the first time
to bypass the macOS Gatekeeper warning).*
### 🐧 Linux
1. Download and extract the Linux archive.
2. Mark the binary as executable (`chmod +x mahjong`) and run it via terminal or desktop environment.
---
## 🎮 How to Play
1. Run the game (it automatically starts in a borderless/native full-screen container matched to your display architecture).
2. Choose your **Game Mode** (1 Player or 2 Players) and **Difficulty Level** in the main menu.
3. Use your **Mouse Left-Click** to turn over the tiles and match identical pairs.
4. **Volume Control:** Press `+` / `-` on your keyboard during gameplay to adjust sound levels on the fly.
5. Press `ESC` to go back to the menu or exit, and `SPACEBAR` to restart from the victory screen.
---
## 📁 Repository
Structure
The portable applications are self-contained. For transparency, the build architecture includes:
```text
├── mahjong.exe / .dmg / binary # Ready-to-run game file
├── mahjong_config.json # Configuration definitions (JSON standard)
├── 001.wav # Match sound effect
├── 002.wav # Victory background music track
└── bild/ # Directory containing the 220 PNG tile images
📝 License
This project is open-source and free to distribute.