From 8af2e51321d456c7c337b98a5c9f5d92e9e45a81 Mon Sep 17 00:00:00 2001 From: M_Viper Date: Tue, 28 Jul 2026 21:00:59 +0000 Subject: [PATCH] README.md aktualisiert --- README.md | 156 +++++++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 155 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index e5f888b..d5534a3 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,156 @@ -# Viper-Network-Launcher +
+Viper-Network Logo + +# Viper-Network Launcher + +**Ein instanz-basierter Minecraft-Launcher für Windows – à la MultiMC / Prism.** + +Verwalte beliebig viele isolierte Minecraft-Instanzen mit eigener Version, eigenen Mods und eigenem Java – lade Mods per Ein-Klick von Modrinth, melde dich mit deinem Microsoft-Konto an und spiele. + +![Version](https://img.shields.io/badge/version-0.6.0-2b8bff) +![Platform](https://img.shields.io/badge/platform-Windows%20x64-2b8bff) +![Electron](https://img.shields.io/badge/Electron-28-2b8bff) +![License](https://img.shields.io/badge/license-MIT-e23a3f) + +
+ +--- + +## ✨ Features + +| Bereich | Funktion | Status | +|---|---|---| +| **Instanzen** | Anlegen, Bearbeiten, Duplizieren, Löschen – jede Instanz ein isolierter Ordner | ✅ | +| **Instanzen** | Eigenes Icon (Emoji-Set **oder** eigenes Bild) | ✅ | +| **Versionen** | Minecraft-Version aus dem offiziellen Mojang-Manifest wählen (Release/Snapshot) | ✅ | +| **Java** | Automatische Erkennung installierter Java-Versionen (Adoptium, Oracle, Zulu, Corretto, Microsoft …) | ✅ | +| **Java** | Passende Java-Version wird automatisch pro Minecraft-Version gewählt | ✅ | +| **Mods** | Modrinth-Browser mit **Ein-Klick-Installation** in die Instanz | ✅ | +| **Login** | Offizieller Microsoft-Login (Device-Code-Flow) mit **Mehrkonten-Verwaltung** | ✅ | +| **Start** | Vanilla-Download (Client, Libraries, Natives, Assets) & Start | ✅ | +| **Loader** | **Fabric** & **Quilt** installieren & starten | ✅ | +| **Loader** | **Forge** & **NeoForge** | ⏳ in Arbeit | + +--- + +## 🚀 Installation & Start + +**Voraussetzungen:** [Node.js](https://nodejs.org/) 18+ und ein installiertes **Java** (JRE/JDK; für moderne Versionen Java 21). + +```bash +# Abhängigkeiten installieren +npm install + +# Launcher starten +npm start +``` + +### Windows-Installer bauen + +```bash +npm run build +``` + +Erzeugt einen NSIS-Installer (`.exe`) im Ordner `dist/` (electron-builder, x64). +Für ein Icon der gebauten `.exe` lege `src/assets/icon.ico` (256×256) ab. + +--- + +## 🎮 Bedienung + +1. **+ Neue Instanz** → Name, Minecraft-Version und optional einen Mod-Loader (Fabric/Quilt) wählen. +2. Instanz anklicken → Detailansicht mit **▶ Spielen**, **🧩 Mods**, Bearbeiten, Ordner, Duplizieren, Löschen. +3. **🧩 Mods** → Modrinth durchsuchen und mit einem Klick installieren (passend zu Version + Loader). +4. **👤 Anmelden** (oben rechts) → Microsoft-Konto hinzufügen (mehrere möglich, aktives Konto spielt). +5. **▶ Spielen** → Der Launcher lädt alles Nötige und startet Minecraft mit deinem Konto. + +> 💡 **Parallel spielen:** Konto A aktivieren → starten → Konto B aktivieren → starten. Jeder Start ist ein eigener Prozess, so laufen mehrere Clients mit verschiedenen Accounts gleichzeitig. + +--- + +## 🔐 Microsoft-Login einrichten + +Der Launcher bringt bereits eine **eingebaute Azure-App-ID** mit – Endnutzer müssen nichts eintragen und melden sich einfach mit ihrem eigenen Microsoft-Konto an. + +> ⚠️ **Wichtiger Hinweis zur Freischaltung:** Seit 2024 müssen **neu registrierte** Azure-Apps von Microsoft/Mojang freigeschaltet werden, bevor sie sich bei den Minecraft-Diensten anmelden dürfen. Bis zur Freigabe endet der Login mit `Invalid app registration (403)`. Die Freischaltung wird über das offizielle Formular **[aka.ms/mce-reviewappid](https://aka.ms/mce-reviewappid)** beantragt. Der Launcher-Code ist vollständig – sobald die App-ID freigeschaltet ist, funktioniert der Login ohne weitere Änderungen. + +**Eigene Azure-App verwenden (optional):** In den ⚙ Einstellungen lässt sich eine eigene Client-ID hinterlegen. Anforderungen: +- Kontotyp: **Nur persönliche Microsoft-Konten** +- Authentifizierung → **„Öffentliche Clientflows zulassen" = Ja** +- Freischaltung über [aka.ms/mce-reviewappid](https://aka.ms/mce-reviewappid) + +Der Login nutzt ausschließlich den offiziellen Microsoft-OAuth-Flow (echtes Konto, Spielbesitz vorausgesetzt). Ein Offline-/„Cracked"-Login wird **bewusst nicht** angeboten. + +--- + +## 🗂️ Projektstruktur + +``` +Viper-Network/ +├─ package.json # Metadaten, Scripts, electron-builder-Konfig +└─ src/ + ├─ main.js # Electron-Hauptprozess: Fenster, IPC + ├─ preload.js # sichere Bridge (contextIsolation) + ├─ renderer.js # UI-Logik + ├─ index.html # Oberfläche + ├─ styles.css # Design (Logo-Farbwelt: Blau/Rot/Silber) + ├─ store.js # Persistenz: Instanzen, Einstellungen, Mods, Bilder + ├─ services.js # Java-Scan, Mojang-Versionen, Modrinth + ├─ launcher.js # Download-/Start-Pipeline (Client/Libs/Natives/Assets) + ├─ loaders.js # Mod-Loader (Fabric/Quilt) + ├─ auth.js # Microsoft-Login + Mehrkonten + └─ assets/ + └─ logo.png # App-Logo +``` + +### Datenspeicherorte + +Alle Nutzerdaten liegen unter `%APPDATA%\Viper-Network\` (im Dev-Modus `%APPDATA%\viper-network\`): + +| Pfad | Inhalt | +|---|---| +| `instances//instance.json` | Metadaten der Instanz | +| `instances//mods.json` | installierte Mods | +| `instances//minecraft/` | Spielverzeichnis (Saves, Configs, `mods/`) | +| `settings.json` | globale Einstellungen | +| `accounts.json` | angemeldete Microsoft-Konten (Tokens lokal) | +| `shared/{versions,libraries,assets}` | von allen Instanzen geteilte Spieldateien | +| `mc-versions.json` | zwischengespeicherte Mojang-Versionsliste | + +--- + +## 🛠️ Technik-Stack + +- **[Electron](https://www.electronjs.org/) 28** – Desktop-App (plain, ohne Bundler) +- **Node.js** – Datei-, Netzwerk- und Prozess-Handling +- Reines **HTML / CSS / JavaScript** im Renderer (contextIsolation aktiv, kein Node im UI) +- **electron-builder** – Windows-Installer (NSIS) + +**Genutzte APIs/Dienste:** +- [Mojang / Piston Meta](https://piston-meta.mojang.com/) – Versionen, Client, Libraries, Assets +- [Modrinth API](https://docs.modrinth.com/) – Mod-Suche & -Download +- [Fabric Meta](https://meta.fabricmc.net/) / [Quilt Meta](https://meta.quiltmc.org/) – Loader-Profile +- Microsoft Identity Platform + Xbox Live + Minecraft Services – Login + +--- + +## 🗺️ Roadmap + +- [ ] Forge & NeoForge (Installer mit Prozessoren) +- [ ] „Starten als [Konto]" direkt an der Instanz +- [ ] Loader-Versionsauswahl im Dialog +- [ ] Skins/Avatare in der Kontoliste +- [ ] Instanz-Gruppen & Sortierung +- [ ] Import/Export von Instanzen (Modpacks) + +--- + +## ⚖️ Rechtliches + +Dieses Projekt steht in **keiner** Verbindung zu Mojang, Microsoft oder Xbox und ist kein offizielles Produkt. +„Minecraft" ist eine Marke von Mojang AB. Für die Nutzung ist ein **rechtmäßig erworbenes** Minecraft (Java Edition) sowie ein gültiges Microsoft-Konto erforderlich. + +## 📄 Lizenz + +MIT © Viper-Network