Mode d'emploi
Gestion d'évènements sportifs — prise en main rapide
Démarrer un tournoi
- Allez sur Créer un nouveau tournoi pour définir le nom, la description et les paramètres (nombre de sets gagnants, points par set).
- Optionnel : importez un CSV de joueurs (voir le modèle proposé ci-dessous) ou utilisez le tournoi de test.
- Après création, vous recevez (si saisi) un lien par e‑mail pour retrouver facilement le tournoi.
Paramètres & configuration
Vous pouvez ajuster les paramètres du tournoi (sets gagnants, points par set, titre, description) dans la page Configuration.
Présence des joueurs
Utilisez la page Pointage pour marquer l'arrivée et le départ des joueurs. Cochez la case pour marquer un joueur présent, décochez-la pour annuler sa présence (sauf s'il est en jeu ou arrêté). Seuls les joueurs présents sont pris en compte pour les tirages au sort.
Joueurs
Gérez la liste des participants : vous pouvez ajouter un joueur (ligne « + »), importer un lot de joueurs via un fichier CSV, ou modifier les caractéristiques de certains joueurs.
- Genre et Niveau : menus déroulants (H/F pour le genre, 0-10 pour le niveau avec 5 par défaut)
- Simple : checkbox cochée (O) si le joueur joue en simple, décochée (N) sinon
- Début/Fin : rotations modifiables avec boutons fléchés ▲▼ (Fin doit être ≥ Début)
- Validation : cliquer sur « Valider » pour enregistrer les modifications de chaque ligne
Générer et valider des matchs
Depuis la page d'accueil, utilisez les boutons Tirer un double ou Tirer un simple pour créer une nouvelle rencontre.
L'algorithme sélectionne automatiquement les joueurs en rotation (ceux qui attendent depuis le plus longtemps), équilibre les niveaux, évite les répétitions, et privilégie le respect du ratio simples/doubles.
Dès qu'un match est terminé, saisissez les scores et cliquez sur Valider. Le système enregistre automatiquement les résultats et met à jour les statistiques (victoires, défaites, score).
🎲 Stratégie de tirage au sort
Algorithme de sélection des joueurs
L'application utilise un algorithme sophistiqué pour garantir des matchs équilibrés et une rotation équitable. Voici les étapes détaillées :
1. Sélection du joueur prioritaire
Principe clé : Pour assurer une rotation équitable, l'algorithme commence par identifier et choisir un joueur prioritaire qui n'a pas encore assez joué.
- Calcul du nombre de matchs : Pour chaque joueur présent et disponible, on calcule
Matchs joués + Rotation de début - Identification des prioritaires : On sélectionne tous les joueurs ayant le minimum de matchs
- Choix aléatoire : Parmi ces joueurs prioritaires, on en choisit un au hasard
- Garantie : Ce joueur sera obligatoirement inclus dans le match tiré (sauf impossibilité technique)
2. Évitement des répétitions
L'algorithme lit l'historique pour éviter de reformer les mêmes équipes ou confrontations :
- Pour les doubles : Identifie les paires de joueurs qui ont déjà été coéquipiers
- Pour les simples : Identifie les joueurs qui se sont déjà affrontés
- Priorisation : Les nouvelles combinaisons sont placées en premier dans la liste des matchs possibles
- Fallback : Si aucune nouvelle combinaison n'est possible, les anciennes sont utilisées pour ne pas bloquer le tirage
3. Génération des matchs possibles — Stratégie en cascade
L'algorithme utilise 4 stratégies par ordre de priorité décroissante, en explorant tous les écarts de score possibles pour chaque stratégie avant de passer à la suivante :
Stratégie 1 : Nouvelles combinaisons + Joueur prioritaire
- Utilise uniquement les paires/confrontations jamais jouées
- Le joueur prioritaire doit être inclus
- Explore les écarts de score de 3 jusqu'au maximum nécessaire
- Seuil réduit : 1 match possible suffit (plus facile à atteindre car contrainte forte)
- 🎯 Idéal : Rotation équitable + Nouvelles expériences
Stratégie 2 : Toutes combinaisons + Joueur prioritaire
- Utilise toutes les paires/confrontations (nouvelles et anciennes)
- Le joueur prioritaire doit être inclus
- Explore les écarts de score de 3 jusqu'au maximum nécessaire
- Seuil réduit : ¼ du minimum de matchs possibles
- 💡 Fallback 1 : Garantit la rotation même si répétitions nécessaires
Stratégie 3 : Nouvelles combinaisons sans contrainte prioritaire
- Utilise uniquement les paires/confrontations jamais jouées
- Aucune contrainte sur le joueur prioritaire
- Explore les écarts de score de 3 jusqu'au maximum nécessaire
- Seuil complet : minimum de matchs possibles configuré
- ⚠️ Fallback 2 : Privilégie les nouvelles expériences sur la rotation stricte
Stratégie 4 : Toutes combinaisons sans contrainte
- Utilise toutes les paires/confrontations (nouvelles et anciennes)
- Aucune contrainte sur le joueur prioritaire
- Explore les écarts de score de 3 jusqu'au maximum nécessaire
- Seuil complet : minimum de matchs possibles configuré
- 🔄 Fallback ultime : Assure qu'un match peut toujours être tiré
Détails techniques :
- Écart de score progressif : Pour chaque stratégie, l'algorithme commence avec un écart de 3 points, puis augmente progressivement (4, 5, 6...) jusqu'à trouver suffisamment de matchs équilibrés
- Arrêt dès succès : Dès qu'une stratégie trouve assez de matchs, l'algorithme s'arrête et choisit aléatoirement parmi ces matchs
- Doubles : Calcule l'écart entre la somme des scores des deux équipes (score paire A vs score paire B)
- Simples : Calcule l'écart entre les scores individuels des deux joueurs
4. Choix final aléatoire
- Parmi tous les matchs possibles respectant les critères ci-dessus, un match est choisi au hasard
- Cela garantit de la variété tout en respectant l'équité et l'équilibrage
- Fallback automatique : Si aucun match n'est trouvé avec le joueur prioritaire, l'algorithme essaie sans cette contrainte
5. Autres critères appliqués
- Respect du ratio simples/doubles : Les joueurs "Simple=O" sont orientés vers des simples s'ils n'ont pas atteint leur ratio cible
- Exclusion des joueurs en jeu : Seuls les joueurs disponibles (non en jeu) sont considérés
- Exclusion des joueurs sortis : Les joueurs ayant marqué leur départ ne sont pas tirés
- Seuils minimums : Les tirages ne sont possibles que si assez de joueurs sont disponibles (configurable), et qu'il y a suffisamment de matchs possibles (configurable)
Paramètres de configuration
Dans la page Configuration, vous pouvez ajuster ces paramètres pour chaque tournoi :
📊 Paramètres de jeu
- Nombre de sets gagnants : 1, 2 ou 3 sets pour gagner un match
- Points par set : 11, 15 ou 21 points par set
🎯 Seuils de tirage au sort
- Joueurs min pour doubles : nombre minimum de joueurs disponibles pour autoriser un tirage de double (défaut : 20)
- Matchs min pour doubles : nombre minimum de matchs possibles pour autoriser un tirage de double (défaut : 10)
- Joueurs min pour simples : nombre minimum de joueurs "Simple=O" disponibles pour autoriser un tirage de simple (défaut : 10)
- Matchs min pour simples : nombre minimum de matchs possibles pour autoriser un tirage de simple (défaut : 5)
⚙️ Options de jeu
- Autoriser simples mixtes (H-F) : permet ou interdit les matchs simples homme vs femme
- Ratio simples (%) pour joueurs simple : pourcentage cible de simples pour les joueurs marqués "Simple=O"
- 0% = uniquement des doubles
- 50% = autant de simples que de doubles (défaut)
- 100% = uniquement des simples
Indicateurs visuels
Dans la page principale (En cours), des couleurs facilitent la lecture :
Couleurs sur le Nom des joueurs :
- 🟧 Orange : joueur en jeu actuellement
- 🟦 Bleu : joueur prioritaire en rotation (attend depuis longtemps)
Couleurs sur le Ratio simples/doubles :
- 🟢 Vert : prochain match devrait être un simple
- 🟪 Violet : prochain match devrait être un double
Navigation :
- Les messages de confirmation ou d'erreur s'affichent temporairement (4 secondes) à côté des boutons d'action
- Le scroll automatique positionne la page sur "Rencontres en cours" après chaque action de tirage ou validation
Consulter l'historique & le palmarès
Accédez à la page Historique pour visualiser tous les matchs terminés. Vous pouvez modifier les scores ou supprimer un match.
La page Palmarès affiche le classement général de chaque joueur (nombre de victoires, défaites, score cumulé).
Format CSV pour l'import de joueurs
Le fichier CSV doit contenir une ligne par joueur, avec les champs séparés par des points-virgules :
NOM Prénom;Genre;Niveau;Simple
- NOM Prénom : nom complet du joueur
- Genre : H (Homme) ou F (Femme)
- Niveau : entier de 0 à 10 (plus le chiffre est élevé, meilleur est le joueur)
- Simple : O (joue en simple) ou N (ne joue qu'en double)
Exemple :
Dupont Jean;H;5;O Durand Marie;F;6;N Martin Pierre;H;4;O
Vous pouvez télécharger un fichier d'exemple : test.csv