Skip to content

Latest commit

 

History

History
127 lines (94 loc) · 10.8 KB

README.en-US.md

File metadata and controls

127 lines (94 loc) · 10.8 KB

MajsoulMax-rs

en cn

This project is inspired by MajsoulMax

Unlock all characters, skins, and decorations in Mahjong Soul, using a man-in-the-middle attack based on hudsucker. Supports both the web version and the PC/Android client.

Also capable of sending real time Mahjong Soul game data to Japanese Mahjong Assistant mahjong-helper, but does not support game log analysis.

This tool is completely free and open-source. If you paid for it, you've been scammed!

🤔 Why Reinvent the Wheel?

🥰 Advantages

  • This project is written in Rust, which offers better performance and smaller size compared to Python (the Python version often suffers from high latency and poor user experience).
  • Utilizes multi-threaded asynchronous processing to improve performance.
  • Natively supports multiple platforms including Windows, Linux, macOS, and Android; just download and run the binary.
  • Supports the Android client (via Termux and NekoBox).

🥲 Disadvantages

  • Unlike mitmproxy, hudsucker does not support upstream proxies and requires the help of Clash.
  • Cannot dynamically update lq.rs, requiring recompilation.

🧭 Current Mahjong Soul Versions (Updated in Real Time)

CHINESE ENGLISH JAPANESE

📢 Before You Start

Note: Unlocking characters is only effective locally; others will still see your original character and emojis.

Warning: The official may detect and ban your account! Any consequences are the responsibility of the user! Using this script implies agreement to this term.

✈️ Telegram Channel & Group

频道 https://t.me/Mahjong_Soul交流 https://t.me/Mahjong_Soul_Chat

You can click the images to join or scan the QR codes.

🥰 Current Features

The program consists of two parts: mod and helper, which are a combination of Mahjong Soul mod_plus and mahjong-helper-mahjong-mitmproxy.

The default configuration enables helper and disables mod. To customize, modify the mod_switch and helper_switch in .\liqi_config\settings.json.

mod Features

  • Unlock all characters and skins.
  • Unlock all decorations.
  • Unlock all voices (announce yakus).
  • Unlock all titles.
  • Unlock all loading CGs.
  • Unlock all emojis (not recommended).
  • Force enable convenient hints.
    • Due to Mahjong Soul's own code restrictions, the Throne Room cannot enable convenient hints normally, thus, entering Throne Room matches will change the top-left corner to "Jade Room". Please note, this is not a BUG!
  • Support for favorite characters.
  • Customizable names.
  • Display player's server.
  • TODO...

helper Features

🧐 Instructions for Use (Windows)

  1. Modify the configuration:
    • Follow program prompts and personal needs.
    • In liqi_config/settings.json, set the universal settings including toggles for Helper and Mod—modSwitch and helperSwitch, 0 is off, 1 is on.
    • In liqi_config/settings.mod.json, set the Mod-specific settings.
  2. Start the program by running the executable file.
  3. Start the game, either the web version or the client/Steam version.
    • For the web version (limited to Chrome/Edge):
      • Disable all Mahjong Soul related plugins and scripts in the browser, completely disable or uninstall any proxy-related plugins (e.g., Proxy SwitchyOmega).
      • Enter the game normally once using the browser.
      • Close all browser windows, check with Task Manager to ensure no processes remain.
      • Copy and paste the shortcut for Chrome or Edge to create a duplicate, right-click the shortcut duplicate, go to Properties -> Target, and add a space followed by --proxy-server=127.0.0.1:23410 --ignore-certificate-errors https://mahjongsoul.yo-star.com/ after the target (modify the URL if playing on other servers).
    • For the client/Steam version:
      • Launch to the login screen, do not log in.
      • If automatically logged in, click the settings in the top right of the game to log out and return to the login screen.
      • Run Proxifier and configure it:
        • Profile > Proxy Servers > Add
        • Address: 127.0.0.1
        • Port: 23410
        • Protocol: HTTPS
        • After filling out, click Check to ensure you see a green Test passed under Test 1, ignore the rest.
        • OK
      • Profile > Proxification Rules > Add
        • Name: Choose any name.
        • Enabled: ✅
        • Applications: Fill according to the application you use to run the game, e.g., for the Steam client enter jantama_mahjongsoul.exe.
        • Action: Proxy HTTPS 127.0.0.1
        • OK
  4. Log in to the game and enjoy.

Instructions for macOS and Linux are similar.

For the Android version, assuming you are technically proficient, only key terms are provided here: Termux, NekoBox, effective only on game route 1.

🤔 Q&A

  1. Why are liqi and lqc.lqbin updated automatically? What if the update fails?
    • liqi:
      • Consists of 3 files including liqi.json and its derivatives liqi.proto and liqi.desc, used for parsing Mahjong Soul protobuf messages.
      • If the update fails, message parsing might fail (e.g., new event messages).
    • lqc.lqbin:
      • Used to obtain all characters, decorations, and game items.
      • If the update fails, new items (like new characters, items) may not be retrievable.
    • If auto-update fails, download manually from AutoLiqi > Releases and replace the same name files under ./liqi_config.
  2. How to enable a proxy simultaneously?
    1. Use Clash Verge.
    2. Disable the system proxy, enable service mode, and Tun mode.
    3. (Optional) Enable LAN connection; go to system settings > network > proxy, turn on "Use a proxy server", fill in the address and port (default is http://127.0.0.1 and 7897), make sure to prefix the address.
  3. Other questions? Join our Telegram group linked above.

🛠️ Development Dependencies