/ 📋 Patch Notes
← Accueil
v1.1 2 avril 2026 ▸ Développer
v1.2 2 avril 2026 ▸ Développer
v1.2.1 2 avril 2026 ▾ Réduire
🆕 Nouveau projet — Pokémon (Bêta)
pokemon.html
Ajout d'un RPG solo inspiré de Pokémon, avec progression par le grind, capture de Pokémon sauvages et gestion d'équipe.
Démarrage
Choix du starter parmi Bulbizarre, Salamèche et Carapuce — stats et sprites récupérés depuis PokéAPI
Profil dresseur persistant via Firebase Firestore (pokemon_trainers)
Exploration & Combat
Rencontres aléatoires contre des Pokémon sauvages de niveau proche du joueur
Attaque normale, capacités apprises (apprentissage tous les X niveaux via PokéAPI), objets et fuite
Système de mana (MP) : les capacités consomment du MP, régénéré par l'attaque normale
Système de capture : taux basé sur les PV restants du Pokémon sauvage et le type de Ball utilisée
Changement de Pokémon en combat — l'adversaire profite du changement pour attaquer gratuitement
Progression
Gain d'XP et de PokéDollars à chaque victoire, avec chance de drop (Baie Oran, Éther)
Montée de niveau automatique avec apprentissage de nouvelles capacités
Équipe active de 6 Pokémon maximum, boîte de stockage illimitée
Interface
Statistiques (ATK / DEF / VIT) et badges de type colorés visibles pour les deux Pokémon en combat
Capacités affichées en section permanente (puissance, type physique/spéciale, coût MP)
Page équipe : badges de type, chips de stats, barre MP et liste des capacités connues pour chaque Pokémon
Boutique : Pokéballs (normale, Super, Hyper), potions, Rappel, Éther
index.html
Ajout de la carte Pokémon dans la section Jeux, avec badge Bêta
⚡ Système de Points d'Action (PA)
Anti-spam — Pokémon
Un système de Points d'Action limite la cadence des combats pour éviter le spam excessif.
Maximum de 500 PA par dresseur, régénération de 1 PA toutes les 4 minutes
Chaque combat coûte 2 PA — prélevés uniquement au premier coup porté (la fuite reste gratuite)
Affichage des PA sur le dashboard (avec compte à rebours avant le prochain PA) et dans l'écran de combat
Régénération calculée automatiquement à la reconnexion en fonction du temps d'absence
Persistance des PA et de la date de dernière régénération dans Firestore
🐛 Corrections de bugs
Pokémon
Correction : les boutons de capacité restaient désactivés au début d'un combat (rendu effectué avant l'activation des boutons)
Correction : le type du Pokémon actif n'était pas affiché si son profil était sauvegardé avant l'introduction du champ types — refetch automatique depuis PokéAPI au prochain combat
v1.2.2 3 avril 2026 ▾ Réduire
✨ Nouvelles fonctionnalités — Pokémon
Système d'échange entre joueurs
Les dresseurs peuvent désormais proposer et accepter des échanges de Pokémon en temps réel.
Nouvelle section Échanges accessible depuis le dashboard, avec badge de notification en temps réel indiquant les propositions en attente
Flux de création en 4 étapes : choix de son Pokémon → recherche du partenaire par nom → choix du Pokémon souhaité → confirmation
Échanges reçus (accepter / refuser) et envoyés (annuler) visibles avec statut en direct
Exécution via transaction Firestore atomique — aucun risque de perte de Pokémon en cas d'interruption
Le Multi-XP équipé sur un Pokémon échangé est automatiquement retiré et retourné à son propriétaire d'origine
Pokémon Shiny
Chaque Pokémon rencontré en exploration a une chance d'apparaître dans sa forme chromatique.
Taux d'apparition : 1 chance sur 500 à chaque rencontre sauvage
Bonus de stats de +10 % sur tous les attributs (PV, ATK, DEF, VIT, MP)
Sprites shiny récupérés depuis le dépôt officiel PokéAPI
Icône ✨ affichée sur les Pokémon shiny dans la boîte et lors des échanges
Migration automatique : les Pokémon existants reçoivent isShiny: false sans action requise
Objet Multi-XP
Nouvel objet disponible en boutique permettant de faire progresser un Pokémon passif pendant les combats.
Prix : 3 000 ₽ — à équiper sur un Pokémon de l'équipe active
Le porteur reçoit 50 % de l'XP de chaque combat, même sans combattre, à condition d'être vivant
Un seul Multi-XP actif à la fois — peut être déséquipé et rééquipé librement entre les combats
Si le porteur monte de niveau grâce au Multi-XP, le modal d'apprentissage de capacité s'ouvre normalement
Badge ⭐ Multi-XP affiché sur le Pokémon concerné dans la grille du dashboard
Système de rareté des rencontres
Les rencontres sauvages sont désormais réparties en trois niveaux de rareté.
Communs (89 %) — pool général Gen 1 (hors exclusions)
Semi-rares (9 %) — Bulbizarre, Salamèche, Carapuce, Pikachu, Évoli, Aérodactyl, Ronflex, Arcanine, Magikarpe
Rares (2 %) — Légendaires (Artikodin, Électhor, Sulfura, Minidraco, Draco, Mewtwo, Mew) avec message d'annonce spécial
Les troisièmes évolutions et les deuxièmes évolutions des starters sont exclues des rencontres sauvages — elles s'obtiennent uniquement par montée de niveau
Autres ajouts
Tri de la boîte de stockage : par défaut, niveau croissant / décroissant, type, nom, ou shiny en premier
Vente d'objets en boutique au prix de revente (50 % du prix d'achat)
Relâcher un Pokémon depuis la boîte, avec popup de confirmation (action irréversible)
Panneau admin : bouton pour redonner les PA maximum à tous les joueurs en une action (accès restreint à l'administrateur)
Cap de niveau à 100 — migration automatique des Pokémon existants dépassant ce seuil
🛡️ Sécurité & corrections
Achat et vente d'objets — anti-duplication
Les achats et ventes utilisent désormais des transactions Firestore atomiques : il est impossible de dupliquer des objets en ouvrant plusieurs onglets simultanément
L'état local est resynchronisé depuis Firestore après chaque opération
Échange — vérification des Pokémon
L'ID du Pokémon à chaque position est vérifié dans la transaction avant l'échange — si un Pokémon a été déplacé depuis la création de la proposition, l'échange est annulé avec un message explicite
Correction — vente Multi-XP
Correction d'une condition logique incorrecte qui permettait dans certains cas de vendre un Multi-XP même lorsqu'aucun exemplaire n'était disponible en stock