Run a Tournament on Pokékipe
Pokékipe's tournament engine runs the full host workflow — bracket creation, seeding, check-in, match management, dispute handling, standings — without you leaving the site. This page is the end-to-end host workflow, in 12 steps, with the engine UI as the active tool.
Bracket types
Single-elim, double-elim, Swiss, round-robin
Cost
Free — no player count cap
Match flow
Auto-report + dispute → host-resolve
Audit
Full trail of host actions, transparent
A clean tournament feels boring to host: matches resolve themselves, disputes are rare, standings publish on schedule. That "boring" outcome is the result of disciplined setup. Spend 20 min configuring; save 2 hours of mid-tournament chaos.
At a glance
Hosting a tournament is a 12-step workflow. The first 4 steps happen pre-tournament (configure, seed, check-in, start). The next 7 happen during play (match lifecycle, auto-report, disputes, host-resolve, deadlines, chat, standings). The last 3 close it out (grand final, edit/cancel, audit).
- Pre-tournament (Steps 1-4)Configure → Seed → Check-in → Start
- During play (Steps 5-10)Match lifecycle, auto-report, disputes, host-resolve, deadlines, standings
- Close-out (Steps 11-12)Grand final (DE), edit/cancel, audit trail
- Bracket typesSingle-elim, double-elim, Swiss (Pokémon Champions standard), round-robin
- Match statespending → ongoing → finished | disputed | forfeited | bye
- Dispute flowMismatched auto-reports → disputed → host-resolve final ruling
Step 1 — Create the tournament
Open the tournament engine, click "Create." The form has 8 fields — name, slug, format, visibility, bracket, max players, timer, description. Each one matters; spending 5 min here saves issues later.
The 8 fields
- Nom — Ce que les joueurs voient sur le hub et la page détail. 3–80 caractères, tout est permis.
- Slug d'URL — La partie après /tournaments/ — minuscules, chiffres, tirets. Pré-rempli à partir du nom mais éditable. Doit être unique.
- Format — Gen 9 OU, VGC 2026 Reg H, Gen 8 Ubers… Fixé à la création ; impossible à changer ensuite.
- Visibilité — Public (listé sur le hub, tout le monde peut rejoindre) ou Privé (sur invitation via un code généré).
- Type de bracket — Single-elim, double-elim, round-robin ou Swiss. Voir la section suivante pour les arbitrages.
- Nombre max de joueurs (optionnel) — Limite douce sur les inscriptions. Vide = pas de limite. Le double-elim exige au moins 4 joueurs.
- Timer de match (optionnel) — Minutes allouées par match une fois les deux joueurs connus. Si la deadline passe, le match est auto-contesté et l'organisateur prend la main.
- Description (optionnel) — Texte libre pour les règles, le planning, les team clauses, les lots. Affiché en évidence sur la page du tournoi.
Step 2 — Seed the bracket
Seeding determines who faces whom in round 1. Higher seed = better matchup against lower-seeded players. Pokékipe auto-seeds by ELO if available; you can also manually arrange.
Les seeds sont assignés automatiquement à l'ordre d'inscription (FIFO) au moment du /start.
Avant de lancer, vous pouvez ré-ordonner manuellement via « Re-seeder » dans la page du tournoi. C'est utile pour placer les têtes de série en opposés du bracket (pattern classique : 1 vs 8 en quart, 2 vs 7, etc.).
Step 3 — Run check-in
Check-in is the window between "tournament published" and "bracket starts." Players confirm presence; no-shows get auto-removed. Skipping check-in = bracket starts with absent players, who get assigned forfeits.
Le check-in est un verrou optionnel qui force les joueurs à confirmer leur présence avant le lancement. Utile pour les événements programmés à l'avance où vous voulez éviter les no-shows en round 1.
Check-in workflow
- L'organisateur clique sur Ouvrir le check-in sur la page du tournoi (uniquement en draft/inscriptions).
- Les joueurs inscrits voient un bouton Me check-in ; cliquer fait passer leur statut de inscrit à checked_in.
- Au clic sur Démarrer, tout joueur encore en inscrit (non-checked) est auto-retiré du bracket.
- L'organisateur peut aussi Fermer le check-in à tout moment pour le désactiver sans démarrer.
Step 4 — Start the bracket
Once check-in closes, click "Start." The engine generates round 1 matches based on seeds, notifies players, and starts the match timer. From here, the tournament is live.
Prêt à lancer ? Cliquez « Démarrer le tournoi » (bouton vert, host uniquement). Le moteur exécute alors :
What happens at start
- Verrouille les inscriptions — plus personne ne peut rejoindre.
- Assigne les seeds finaux (en respectant votre réordonnancement manuel).
- Génère le bracket du round 1 selon le format choisi.
- Avance automatiquement les byes (ex : effectifs non puissance de 2).
Le tournoi passe en statut « en cours », plus aucune inscription possible. Les joueurs reçoivent leur premier adversaire dans leur flux de notifications.
Step 5 — Match lifecycle
Every match in the bracket goes through a defined sequence of states. Knowing the states means knowing what action is required at each point.
Chaque match suit un cycle de vie bien défini. Voici les statuts que vous pouvez voir sur le bracket :
The 6 match states
| State | Meaning |
|---|---|
pending | Créé, en attente que les deux joueurs soient connus. |
ongoing | Les deux joueurs confirmés, match en cours sur Showdown. |
finished | Vainqueur enregistré, bracket avancé. |
disputed | Un joueur a flag le match (ou la deadline a expiré). L'organisateur doit trancher. |
forfeited | Un joueur a abandonné (auto-forfait) ou a été DQ par l'organisateur. Vainqueur + avance. |
bye | Pas d'adversaire — le joueur avance automatiquement. Fréquent dans les brackets non puissance de 2. |
Step 6 — Auto-report results
Auto-report is the standard match-resolution flow: both players submit the result; if reports match, the match auto-finalizes. Disagreement flips the match into disputed state for host-resolve.
C'est la feature phare côté Pokémon — vous ne choisissez pas manuellement le gagnant. Une fois les deux joueurs connus :
Auto-report flow
- Jouez le match sur Pokémon Showdown normalement.
- À la fin, cliquez Save replay sur Showdown — vous obtenez une URL de replay.
- Ouvrez la salle de match sur Pokékipe (clic sur le match dans le bracket) et collez l'URL dans Reporter le résultat.
- On fetch le replay, vérifie que les deux joueurs correspondent aux pseudos attendus et que le format colle, extrait le gagnant depuis le log Showdown, et clôt le match. Le bracket avance automatiquement.
Si les deux joueurs ne sont pas ceux attendus (mauvais replay, confusion de pseudo) ou si le format ne colle pas, le report est rejeté avec un message d'erreur clair. Dans ce cas, re-jouez le match ou passez en « Résoudre (host) » si l'incident ne peut pas être corrigé.
Step 7 — Disputes & forfeits
When auto-report fails (mismatched results), the match goes into disputed. Forfeit is when a player no-shows or concedes mid-match. Both end up at host-resolve.
Disputes
Si le match est bloqué (adversaire absent, suspicion de triche, problème serveur, désaccord sur le résultat), un joueur ou l'organisateur peut le contester. Le match passe en statut `disputed` avec un motif libre. Il est alors gelé jusqu'à ce que l'organisateur tranche via « Résoudre (host) ».
Forfeits
À utiliser quand quelqu'un doit abandonner ou qu'un joueur ne s'est pas présenté. Deux variantes :
- Un joueur forfait : il ne peut déclarer que son adversaire comme vainqueur. Parfait pour un retrait volontaire.
- L'organisateur forfait : choisit l'un des deux joueurs comme vainqueur. Parfait pour DQ (règlement enfreint, harcèlement, etc.).
Step 8 — Host resolve
Host resolve is where the host (or co-host) makes the final call on a disputed match. Replay evidence, screenshots, witness reports — all considered, but the host decides. The decision is logged in the audit trail.
Après une contestation — ou simplement quand l'auto-report n'est pas possible — seul l'organisateur peut fermer le match. Cliquez « Résoudre (host) » dans la salle de match, choisissez le vainqueur parmi les deux joueurs, et c'est plié.
La résolution est loggée dans l'audit avec votre user_id, l'horodatage et le winner choisi. Elle est finale : il n'y a pas de undo (par design — l'arbitre du host est souverain).
Step 9 — Deadlines & chat
Match deadlines and tournament chat are the two communication tools that keep play moving. Use deadlines aggressively (slow players slow the whole bracket); use chat to broadcast announcements.
Match deadlines
Si le tournoi a un timer configuré, chaque match prêt à jouer reçoit une deadline = maintenant + timer. Un badge compte-à-rebours apparaît sur le match dans le bracket et dans la salle de match.
Quand la deadline expire, le match est automatiquement flaggé comme contesté avec motif `deadline_exceeded`. L'organisateur doit alors intervenir — soit prolonger via une nouvelle résolution, soit désigner un vainqueur, soit annuler.
Tournament chat
Chaque match a sa propre salle de chat, visible uniquement par les deux joueurs et l'organisateur. À utiliser pour coordonner l'horaire, envoyer l'URL du salon Showdown, reporter un problème technique.
Les messages apparaissent en temps réel via server-sent events — pas besoin de rafraîchir la page. L'historique est préservé après la fin du match jusqu'à 30 jours, pour référence en cas de dispute.
Step 10 — Standings & publication
Standings auto-update as matches finish. Once the final match resolves, standings are locked and the tournament is closed. Publication makes the bracket + standings publicly visible (or private depending on config).
Pour les brackets round-robin et swiss, un panneau « Classement » affiche en temps réel la position de chaque joueur. Les colonnes :
Standings columns
- Victoires — matchs gagnés (byes et forfaits reçus inclus).
- Défaites — matchs perdus (auto-forfaits et DQs inclus).
- Joués — matchs totaux clôturés (hors byes).
- Restants — matchs encore à venir ce round.
Step 11 — Grand final (double-elim only)
In double-elim, the grand final is special: the upper-bracket finalist has bracket advantage. If the lower-bracket finalist wins game 1, the bracket resets — they must win twice. Pokékipe handles this automatically.
Les brackets double-elim se terminent par une grande finale entre le champion upper bracket (UB) et le champion lower bracket (LB). Le UB arrive avec 0 défaite, le LB avec 1. C'est pourquoi le système gère un mécanisme de reset.
Si le champion UB gagne la grande finale → le tournoi est fini (il reste à 0 défaite). Si le champion LB gagne → un match bracket reset est automatiquement créé. Les deux joueurs sont maintenant à 1 défaite chacun. Le vrai gagnant de cette seconde manche remporte le tournoi.
Step 12 — Edit, cancel, audit trail
Tournaments aren't immutable post-creation — edits before start are free; mid-bracket edits are constrained. Cancellation is final. Every host action is logged in an audit trail for transparency.
Edit + cancel
Tant que le tournoi est en draft ou inscriptions, l'organisateur peut cliquer « Éditer » sur la page détail pour ajuster le nom, le slug, la description, la visibilité, le bracket, le cap, les dates et le timer. Le format Pokémon est volontairement non modifiable après création — le changer invaliderait les validations d'auto-report.
Audit trail
Chaque action sensible de l'organisateur (démarrage, résolution, forfait, annulation, édition) est loggée dans l'onglet « Audit ». Visible par l'organisateur uniquement. Contient le type d'action, l'auteur, l'horodatage et les détails — utile en cas de réclamation d'un joueur ou de post-mortem d'un incident.
Where to go from here
Hosting is one half of the tournament loop. The other half is competing — see the player-side guides below.
- Tournaments FAQ — /faq/tournaments for the entry-point Q&A on the engine (what is it, can I use it, public vs private).
- Bo3 strategy — Bo3 Tournament Strategy for how to PLAY (vs. host) a Bo3.
- Match preparation — Match Preparation Workflow for player-side prep.
- Pokémon Champions — Pokémon Champions Era covers where Reg M-A community tournaments run.
- Live tools — Tournament engine, Pokémon Champions hub, your account.