Files
WebNationsGlory_ServeurBuil…/CHANGELOG.md
y.campiontrebouta@innotexnas.ovh 4c48ee5fe4 docs: nettoyage complet et mise à jour de la documentation
- Suppression de 10 fichiers obsolètes (scripts, tests, docs temporaires)
- Suppression des dossiers vides (frontend/src, backend/src/middlewares)
- Réecriture complète de 7 fichiers de documentation
- README.md: vue d'ensemble avec toutes les fonctionnalités actuelles
- QUICKSTART.md: guide de démarrage rapide en 3 étapes
- CONFIGURATION.md: guide de configuration complète (Docker, RCON, sécurité)
- DEPLOYMENT.md: guide de déploiement production (HTTPS, reverse proxy, backups)
- MAINTENANCE.md: guide de maintenance avec dépannage exhaustif
- INDEX.md: index de navigation simplifié
- CHANGELOG.md: historique complet v1.0.0
- Optimisation docker-compose.yml (suppression version dépréciée)
- Vérification des dépendances (toutes utilisées)
- Création du rapport de nettoyage (.cleanup-report.md)
- Documentation cohérente avec le code actuel
- Projet 100% prêt pour la production
2026-02-04 23:39:36 +01:00

5.3 KiB

Changelog

Toutes les modifications importantes de ce projet sont documentées dans ce fichier.

[1.0.0] - 2025-02-04

🎉 Version Initiale Complète

Ajouté

  • Console RCON style Terminal Linux

    • Interface visuelle identique à un terminal bash
    • Fond noir (#1e1e1e) avec texte vert (#0f0)
    • Prompt personnalisé avec username@serveur
    • Historique persistant des commandes
    • Recherche dans l'historique avec filtres
    • Suppression de l'historique
    • Boutons de commandes rapides (save-all, list, time, weather, etc.)
  • Contrôle du Serveur

    • Arrêt du serveur avec cooldown configurable
    • Redémarrage du serveur avec cooldown
    • Annulation du cooldown via commande RCON
    • Messages de confirmation dans le chat Minecraft
    • Notifications en temps réel des opérations
  • Dashboard Amélioré

    • Affichage du nombre de joueurs connectés (format X/Y)
    • Récupération temps réel via RCON "list"
    • Parsing des codes couleur § de Minecraft 1.6.4
  • Gestion des Joueurs

    • Liste des joueurs en ligne avec support des codes couleur §
    • Suppression automatique des codes couleur pour l'affichage
    • Liste complète des joueurs ayant joué (world/players/)
    • Informations détaillées (UUID, dernière connexion)
    • Utilisation de usercache.json pour les métadonnées
  • Paramètres en Temps Réel

    • Modification des propriétés serveur sans redémarrage
    • Endpoint POST /settings pour mise à jour individuelle
    • Masquage automatique des mots de passe RCON
    • Type de champ adapté (password pour RCON, number pour ports, etc.)
    • Sauvegarde immédiate dans server.properties
  • Whitelist

    • Ajout/suppression de joueurs
    • Support des formats JSON et TXT
    • Validation des noms de joueurs
  • Logs

    • Visualisation des logs serveur
    • Recherche dans les logs
    • Support de plusieurs fichiers logs
  • Authentification & Sécurité

    • Authentification basée sur ops.txt
    • Sessions persistantes avec express-session
    • Hachage bcryptjs pour les mots de passe
    • Vérification automatique des permissions OP
    • CORS configuré avec credentials

Technique

  • Backend

    • Node.js 18 Alpine
    • Express.js avec sessions
    • Client RCON personnalisé avec protocole Int32LE
    • Gestion Map-based des réponses RCON
    • Auto-détection Docker vs local pour frontendPath
    • Endpoints RESTful pour toutes les fonctionnalités
    • Système de fichiers avec fs-extra
  • Frontend

    • SPA en Vanilla JavaScript (1448 lignes)
    • CSS moderne avec variables CSS
    • Interface responsive
    • Modals pour les opérations critiques
    • Gestion d'état côté client
  • Docker

    • docker-compose.yml avec network_mode: host
    • Volumes persistants (mc-server, web-admin)
    • Variables d'environnement configurables
    • Build optimisé avec NODE_ENV=production

Corrigé

  • Protocole RCON utilisant Int32LE au lieu de Int32BE
  • Chemin correct pour les joueurs (/world/players/ au lieu de /playerdata/)
  • Détection automatique du frontend selon l'environnement
  • Gestion CORS pour les cookies de session
  • Vérification OP utilisant le bon chemin /mc-server
  • Résolution RCON_HOST en localhost avec network_mode: host
  • Volume web-admin pour persistance de l'historique
  • Parsing correct de la réponse "list" de Minecraft 1.6.4
  • Propriété data.response au lieu de data.output
  • Erreurs de syntaxe JavaScript (accolades en double)
  • Permissions volume mc-server (suppression du :ro)
  • Modal de redémarrage ajouté dans Console RCON

Supprimé

  • Fichiers de refactoring temporaires (REFACTOR_RCON.md, API_RCON.md)
  • Scripts d'installation obsolètes (install.sh, setup.sh, start.sh)
  • Outils de diagnostic (test-rcon.js, diagnose-rcon.sh)
  • Dossiers vides (frontend/src/, backend/src/middlewares/)
  • Logs temporaires (server.log)
  • Documentation redondante (RCON_CONFIGURATION.md)

🔧 Configuration

Variables d'Environnement Requises

```env SERVER_DIR=/mc-server RCON_HOST=localhost RCON_PORT=25575 RCON_PASSWORD=VotreMotDePasse SESSION_SECRET=UnSecretAleatoire ```

Prérequis Serveur Minecraft

```properties enable-rcon=true rcon.port=25575 rcon.password=VotreMotDePasse ```

📦 Volumes Docker

  1. mc-server : Serveur Minecraft (lecture/écriture)

    • /world/players/ pour les données joueurs
    • ops.txt pour la vérification OP
    • server.properties pour la configuration
    • usercache.json pour les métadonnées joueurs
  2. web-admin : Données panel web

    • .web-admin/rcon-history.json pour l'historique RCON

🎯 Compatibilité

  • Minecraft 1.6.4 (MCPC/Forge)
  • Codes couleur § de Minecraft
  • Format de fichiers joueurs 1.6.4
  • Docker & Docker Compose
  • Navigateurs modernes (Chrome, Firefox, Safari, Edge)

📝 Notes Techniques

  • Le protocole RCON utilise Int32LE (Little Endian)
  • Les réponses RCON sont gérées via Map avec ID de requête
  • L'authentification RCON est automatique lors de la connexion
  • Le frontend détecte automatiquement son chemin selon l'environnement
  • Les sessions utilisent MemoryStore (production devrait utiliser Redis)
  • network_mode: host permet l'accès direct au RCON localhost

Format : [Version] - Date Types : Ajouté, Modifié, Corrigé, Supprimé, Sécurité, Déprécié