๐ฎ RCA Launcher
A beautiful, feature-rich terminal-based Minecraft launcher with Microsoft authentication, multi-account support, gradient UI, and full multilingual support.
Made with โค๏ธ by D3xts โ Discord: deryu.c
โจ Features
๐ Microsoft Authentication
- Secure login via Microsoft OAuth Device Code Flow
- No passwords stored โ uses official Microsoft/Xbox/Minecraft token chain
- Displays a one-time code and URL for easy browser-based login
- Tokens are saved locally for seamless re-login
๐ฅ Multi-Account Support
- Add unlimited Microsoft accounts
- Full account management panel:
- Add new accounts at any time
- Remove individual accounts
- View details (username, UUID, token preview)
- When launching Minecraft with multiple accounts, the launcher prompts which account to use
- Single account? It launches instantly โ no extra steps
๐ Minecraft Launch & Management
- Automatic Java detection & installation โ downloads the correct JVM runtime for each version
- Automatic game file installation โ downloads and verifies Minecraft versions on the fly
- Themed progress bars โ gradient-colored download/install progress
- In-game controls while Minecraft is running:
- Kill โ terminate the running instance
- Restart โ stop and relaunch instantly
- Auto-detects when Minecraft closes on its own
๐ฆ Version Selector
- Supports 35+ Minecraft versions from
1.16to1.21.11 - Organized by major version groups (
1.21.x,1.20.x,1.19.x, etc.) - Visual indicator showing the currently selected version
- Version preference is saved and persisted across sessions
๐จ 30 Color Themes
Choose from 30 gradient themes that affect the entire UI โ banner, menus, progress bars, separators, and more:
| Cyan / Purple | Light Blue / Blue | Purple / Pink | Blue / Purple |
| Pink / Purple | Red | Green | Yellow |
| Purple | Orange | Ice Blue | Red / Yellow |
| Green / Yellow | Red / Orange | Blue / Cyan | Pink / Orange |
| Green / Cyan | Purple / Blue | Yellow / Green | Orange / Red |
| White / Gray | Neon Green / Blue | Neon Pink / Cyan | Sunset |
| Ocean | Forest | Lava | Midnight |
| Cotton Candy | Aurora |
Each theme features a two-color gradient applied across the entire interface. Theme names are fully translated in all supported languages.
๐ 7 Languages
Full multilingual support with 80+ translated strings per language:
| Language | Code |
|---|---|
| ๐ฌ๐ง English | en (default) |
| ๐ฎ๐น Italiano | it |
| ๐ซ๐ท Franรงais | fr |
| ๐ช๐ธ Espaรฑol | es |
| ๐ฉ๐ช Deutsch | de |
| ๐ท๐บ ะ ัััะบะธะน | ru |
| ๐จ๐ณ ไธญๆ | zh |
Everything is translated: menus, settings, error messages, prompts, theme names, account management, and more. Language preference is saved and loaded automatically.
๐ Polished Terminal UI
- ASCII art banner with gradient coloring
- Fade-in animations on first load
- Typing effect for initialization text
- Gradient menu items โ each option smoothly transitions between theme colors
- Themed separators and borders throughout the interface
- Color-coded log messages:
[INFO],[ OK ],[WARN],[FAIL],[WAIT],[PLAY],[DOWN] - Full ANSI true-color (24-bit RGB) support with Windows compatibility
๐พ Persistent Preferences
All settings are saved to ~/.minecraft_launcher/prefs.json:
- Selected Minecraft version
- Active color theme
- Language preference
- Active account index
Account data is stored separately in ~/.minecraft_launcher/auth.json with backward compatibility for older single-account format.
๐ Requirements
- Python 3.10+
- A terminal with true-color (24-bit) ANSI support (Windows Terminal, iTerm2, most modern Linux terminals)
- A Microsoft account with Minecraft: Java Edition
Dependencies
pip install mcauth3 minecraft-launcher-lib
| Package | Purpose |
|---|---|
mcauth3 |
Microsoft โ Xbox โ Minecraft authentication |
minecraft-launcher-lib |
Minecraft version install, Java runtime management, launch command generation |
๐ Quick Start
# Clone the repository
git clone https://github.com/Dxxts/PythonMinecraftLauncher.git
cd Launcher
# Install dependencies
pip install mcauth3 minecraft-launcher-lib
# Run the launcher
python Launcher.pyOn first launch you'll see the guest menu โ press 1 to authenticate with your Microsoft account.
๐๏ธ Project Structure
RCA-Launcher/
โโโ Launcher.py # Main launcher application
โโโ translations.py # All translations (7 languages, 80+ keys)
โโโ README.md # This file
Runtime files (created automatically)
~/.minecraft_launcher/
โโโ auth.json # Account credentials (multi-account)
โโโ prefs.json # User preferences (version, theme, language)
๐ฅ๏ธ Menu Overview
Guest Menu
[1] Microsoft Auth
[2] Exit
โโโโโโโโโโโโโโโโโ
SETTINGS
[T] Change theme
[L] Change language
Logged-In Menu
[1] Launch Minecraft
[2] Select version
[3] Open .minecraft folder
[4] Account management
[5] Logout
[6] Exit
โโโโโโโโโโโโโโโโโ
SETTINGS
[T] Change theme
[L] Change language
Running Menu (while Minecraft is open)
[1] Kill Minecraft
[2] Restart Minecraft
Account Management
[A] Add account
[R] Remove account
[D] Account details
[0] Back to menu
๐ง How It Works
-
Authentication โ Uses Microsoft's Device Code Flow via
mcauth3. You visit a URL, enter a code, and the launcher receives your Minecraft access token. -
Version Management โ
minecraft-launcher-libhandles downloading game files, assets, libraries, and the correct Java runtime for each version. -
Launch โ The launcher generates the full Java command with your credentials and spawns Minecraft as a subprocess, monitoring its PID.
-
Multi-Account โ Accounts are stored as a JSON array. When multiple accounts exist, the launcher presents a selection screen before launch. Each account is identified by UUID to prevent duplicates.
-
Theming โ All colors are computed at runtime using linear RGB interpolation between two theme endpoints. Every UI element (banner, menus, progress bars, separators) uses the active gradient.
-
Translations โ A key-value system in
translations.pymaps string keys to translations in all 7 languages. Thet()function resolves the current language at runtime with English fallback.
๐ค Contributing
Contributions are welcome! Here are some ways you can help:
- ๐ Add a new language โ Add entries to
translations.pywith a new language code - ๐จ Create new themes โ Add a new entry to the
THEMESdict inLauncher.pyand its translations - ๐ Report bugs โ Open an issue with steps to reproduce
- โจ Suggest features โ Open an issue with your idea
๐ License
This project is open source and available under the MIT License.
โ ๏ธ Disclaimer
This is an unofficial, community-made launcher. It is not affiliated with or endorsed by Mojang Studios or Microsoft. Minecraft is a trademark of Mojang Studios. You must own a legitimate copy of Minecraft: Java Edition to use this launcher.