Skip to content
Strategy, host workflow14 min læsning
Strategy, Host workflow

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.
, The host's first principle

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

  • Navn, Hvad spillere ser på hubben og detaljesiden. 3–80 tegn, alt er tilladt.
  • URL slug, Path-delen efter /tournaments/, lowercase, cifre, bindestreger. Auto-foreslået fra navnet men editerbar. Skal være unik.
  • Format, Gen 9 OU, VGC 2026 Reg H, Gen 8 Ubers… Fastlagt ved oprettelse; kan ikke ændres senere.
  • Synlighed, Public (listet på hubben, alle kan joine) eller Private (invite-only via en genereret kode).
  • Bracket type, Single-elim, double-elim, round-robin eller Swiss. Se næste sektion for tradeoffsene.
  • Max spillere (valgfri), Soft cap på tilmeldinger. Lad være tom for intet cap. Double-elim kræver mindst 4 spillere.
  • Match-timer (valgfri), Minutter tilladt per match når begge spillere er kendt. Hvis deadline'en udløber, auto-disputes matchet og hosten træder ind.
  • Beskrivelse (valgfri), Fri tekst til regler, skema, team clauses, præmiepulje. Vises prominent på turneringssiden.

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.

Seeds tildeles automatisk i registreringsrækkefølge (FIFO) ved /start-tidspunktet.

Inden launch kan du manuelt omrokere via "Reseed" på turneringssiden. Nyttigt til at placere top seeds på modsatte sider af bracketet (klassisk pattern: 1 vs 8 i kvartfinalen, 2 vs 7, osv.).

In practice

For competitive Pokémon tournaments, seed by recent ELO ranking from the relevant ladder. For invitational events, use last tournament results. For casual events, random seeding is fine, keeps it fun.

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.

Check-in er en valgfri lock der tvinger spillere til at bekræfte attendance før launch. Nyttig til skemalagte events hvor du vil undgå no-shows i runde 1.

Check-in workflow

  1. Hosten klikker Open check-in på turneringssiden (kun under draft/registration).
  2. Registrerede spillere ser en Check me in-knap; klik flipper deres status fra registered til checked_in.
  3. Når hosten klikker Start, droppes enhver spiller der stadig er i registered (ikke checket ind) automatisk fra bracketet.
  4. Hosten kan også Close check-in når som helst for at deaktivere det igen uden at starte.

In practice

Check-in er off by default. Hvis du ikke åbner det, inkluderes alle registranter automatisk ved start.

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.

Klar til launch? Klik "Start tournament" (grøn knap, kun host). Engine'en gør så følgende:

What happens at start

  • Låser registreringer, ingen andre kan joine.
  • Tildeler endelige seeds (respekterer enhver manuel omrokering du har lavet).
  • Genererer runde 1-bracketet ifølge dit valgte format.
  • Auto-fremrykker byes (f.eks. for deltagerantal der ikke er potens af 2).

Turneringen rykker til "ongoing"-status, ingen flere tilmeldinger muligt. Spillerne får deres første modstander i deres notifikations-feed.

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.

Hver kamp følger en veldefineret livscyklus. Her er de statusser, du kan møde på bracketet:

The 6 match states

StateMeaning
pendingOprettet, venter på at begge spillere er kendt.
ongoingBegge spillere bekræftet, kampen er i gang på Showdown.
finishedVinder registreret, bracketet rykkede videre.
disputedEn spiller har flaggat kampen (eller deadline er udløbet). Hosten skal afgøre den.
forfeitedEn spiller gav op (selv-forfeit) eller blev DQ'et af hosten. Vinder registreret + rykker videre.
byeIngen modstander, spilleren går automatisk videre. Almindeligt i brackets uden potens af 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.

Dette er killer-featuren på Pokémon-siden, du vælger ikke vinderen manuelt. Når begge spillere er kendt:

Auto-report flow

  1. Spil matchet på Pokémon Showdown som normalt.
  2. Klik Save replay på Showdown til sidst, du får en replay URL.
  3. Åbn match-rummet i Pokékipe (klik på matchet i bracketet) og paste URL'en i Report result-feltet.
  4. Vi henter replay'et, verificerer at begge spillere matcher de forventede pseudoer og at formatet matcher, ekstraherer vinderen fra Showdown-loggen, og lukker matchet. Bracketet rykker automatisk frem.

Hvis de to spillere ikke er dem vi forventede (forkert replay, pseudo-mixup) eller hvis formatet ikke matcher, afvises reporten med en klar fejlbesked. I så fald, replay matchet eller fall back til "Host resolve" hvis hændelsen ikke kan løses.

In practice

Enten spilleren, eller organizeren, kan submitte reporten. Første gyldige vinder, double submissions er idempotente.

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

Hvis matchet er blokeret (no-show modstander, snyde-mistanke, server-issue, uenighed om resultatet), kan en spiller eller organizeren dispute det. Matchet flytter til `disputed` status med en fri-tekst reason. Det fryses så indtil organizeren arbitrerer via "Host resolve".

Forfeits

Brug dette når nogen skal trække sig ud eller ikke dukkede op. To varianter:

  • En spiller forfeit'er: de kan kun erklære deres modstander som vinder. Godt til self-withdrawal.
  • Hosten forfeit'er: vælger en af spillerne som vinder. Godt til DQ (regelbrud, harassment, osv.).

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.

Efter en dispute, eller simpelthen når auto-report ikke er tilgængelig, kan kun organizeren lukke matchet. Klik "Host resolve" i match-rummet, vælg vinderen blandt de to spillere, og det er gjort.

Resolution'en logges i auditet med dit user_id, timestamp og valgte vinder. Den er final: ingen undo (by design, hostens arbitrage er suveræn).

Format rule

Host-resolve rule, host calls are final within a tournament. Players who disagree can complain in chat but cannot override. This authority structure is what keeps tournaments runnable; ambiguity kills bracket flow.

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

Hvis turneringen har en konfigureret timer, får hvert match der bliver playable en deadline = now + timer. Et countdown-badge dukker op på matchet i bracketet og i match-rummet.

Når deadline'en udløber, auto-flagges matchet som disputed med reason `deadline_exceeded`. Organizeren skal så træde ind, forlænge via en fresh resolution, vælge en vinder, eller cancel.

Tournament chat

Hvert match har sit eget chat-rum, kun synligt for de to spillere og organizeren. Brug det til at koordinere timing, dele Showdown room URL'en, reporte et teknisk problem.

Beskeder dukker op i real time via server-sent events, ingen grund til at refreshe. Historik gemmes efter matchet slutter i op til 30 dage, til dispute-reference.

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).

For round-robin og swiss brackets viser et "Standings"-panel hver spillers position i real-time. Kolonnerne:

Standings columns

  • Wins, vundne kampe (inklusive byes og modtagne forfeits).
  • Losses, tabte kampe (inklusive selv-forfeits og DQ'er).
  • Played, totale lukkede kampe (ekskluderer byes).
  • Pending, kampe der stadig venter dig i denne runde.

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.

Double-elim brackets slutter med en grand final mellem upper bracket-mesteren (UB) og lower bracket-mesteren (LB). UB ankommer med 0 losses, LB med 1. Det er derfor systemet har en reset-mekanik.

Hvis UB-mesteren vinder grand final → turneringen slutter (stadig 0 losses). Hvis LB-mesteren vinder → et bracket reset-match oprettes automatisk. Begge spillere er nu på 1 loss hver. Den sande vinder af denne anden runde tager turneringen.

Worth knowing

Single-elim, Swiss, and round-robin don't have a grand-final special case. Standard final match decides.

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

Mens turneringen er i draft eller registration, kan organizeren klikke "Edit" på detaljesiden for at justere navn, slug, beskrivelse, synlighed, bracket, cap, datoer, og timer. Pokémon-formatet er bevidst ikke editerbart efter oprettelse, at ændre det ville invalidere auto-report-tjek.

Format rule

Cancel er tilgængelig når som helst undtagen efter turneringen er afsluttet. Flipper irreversibelt status til `cancelled`. Igangværende matches afbrydes, historik gemmes til reference, og deltagere får notifikation.

Audit trail

Hver følsom organizer-handling (start, resolve, forfeit, cancel, edit) logges i fanen "Audit". Kun synlig for organizeren. Indeholder action type, author, timestamp og details, nyttigt når en spiller indgiver et claim eller til post-mortem på en hændelse.

Where to go from here

Hosting is one half of the tournament loop. The other half is competing, see the player-side guides below.