PedaloLauncher/README.md
VIDOKS 8bafe167ac Initial commit - PedaloLauncher with Microsoft Auth
- Modern Microsoft OAuth2 authentication
- Always-available connect button (never gets disabled)
- Dynamic port allocation (25565-25575) for Edge compatibility
- Auto-connect to PEDALO server (pedalo.vidoks.fr:25565)
- Dark theme UI with modern design
- Version management with auto-download
- Fixed browser closure handling

Features:
 Button always clickable - no more gray/disabled state
 Compatible with Microsoft Edge, Chrome, Firefox
 Automatic port conflict resolution
 Clear error messages and user guidance
 Professional launcher interface

Ready for PEDALO server deployment!
2025-09-05 02:00:17 +02:00

70 lines
2.5 KiB
Markdown

# Minecraft Launcher
Launcher Minecraft personnalisé avec authentification Microsoft moderne et connexion automatique au serveur PEDALO.
## Fonctionnalités
- 🔐 **Authentification Microsoft** avec OAuth2 moderne
- 🎮 **Connexion automatique** au serveur PEDALO (pedalo.vidoks.fr:25565)
- 📦 **Gestion des versions** Minecraft avec téléchargement automatique
- 🎨 **Interface moderne** avec thème sombre
- 🔄 **Bouton de connexion toujours disponible** - cliquez autant de fois que nécessaire
- 🌐 **Compatible avec tous les navigateurs** (Edge, Chrome, Firefox)
## Installation
### Prérequis
- Java 8 ou supérieur
- Connexion Internet
- Compte Microsoft avec Minecraft Java Edition
### Utilisation
```bash
java -jar MinecraftLauncher.jar
```
## Structure du Projet
```
MinecraftLauncher/
├── src/com/minecraftlauncher/
│ ├── Main.java # Point d'entrée
│ ├── auth/
│ │ └── ModernAuthManager.java # Authentification Microsoft OAuth2
│ ├── game/
│ │ └── GameLauncher.java # Lancement du jeu
│ ├── model/
│ │ └── Account.java # Modèle de compte utilisateur
│ └── ui/
│ ├── LauncherFrame.java # Interface principale
│ ├── VersionsTabDialog.java # Dialogue de versions
│ ├── InstalledVersionsDialog.java # Dialogue versions installées
│ └── DarkThemeUtils.java # Utilitaires thème sombre
├── lib/ # Bibliothèques (Gson)
├── MANIFEST.MF # Manifeste JAR
└── MinecraftLauncher.jar # Exécutable final
```
## Développement
### Compilation
```bash
javac -cp "lib/*" -d build src/com/minecraftlauncher/*.java src/com/minecraftlauncher/*/*.java
jar cfm MinecraftLauncher.jar MANIFEST.MF -C build .
```
### Authentification Microsoft
Le launcher utilise l'API OAuth2 v2.0 de Microsoft avec :
- Client ID : `54fd49e4-2103-4044-9603-2b028c814ec3`
- Port local dynamique (25565-25575) pour éviter les conflits
- Gestion automatique des timeouts et fermetures de navigateur
### Fonctionnalités Spéciales
- **Bouton toujours disponible** : Plus de blocage si le navigateur se ferme
- **Port dynamique** : Trouve automatiquement un port libre
- **Messages informatifs** : Indique clairement l'état de l'authentification
- **Compatibilité Edge** : Gestion spéciale pour Microsoft Edge
## Auteur
Développé avec l'aide de Claude Code (Anthropic)