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
- Name, Yang player lihat di hub dan halaman detail. 3–80 karakter, bebas apa aja.
- URL slug, Bagian path setelah /tournaments/, huruf kecil, angka, hyphen. Auto-suggest dari name tapi bisa diedit. Harus unik.
- Format, Gen 9 OU, VGC 2026 Reg H, Gen 8 Ubers… Fixed saat pembuatan; gak bisa diubah kemudian.
- Visibility, Public (terdaftar di hub, siapa aja bisa join) atau Private (invite-only lewat kode yang di-generate).
- Bracket type, Single-elim, double-elim, round-robin atau Swiss. Lihat section berikutnya untuk tradeoff-nya.
- Max players (optional), Soft cap pada registrasi. Kosongkan untuk tanpa cap. Double-elim butuh minimal 4 player.
- Match timer (optional), Menit yang dialokasikan per match begitu kedua player diketahui. Kalau deadline lewat, match auto-dispute dan host yang turun tangan.
- Description (optional), Teks bebas untuk aturan, jadwal, klausa team, prize pool. Ditampilkan menonjol di halaman turnamen.
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.
Seed di-assign otomatis sesuai urutan registrasi (FIFO) pas waktu /start.
Sebelum launch, lo bisa reorder manual via "Reseed" di halaman turnamen. Berguna buat naro top seed di sisi bracket yang berlawanan (pola klasik: 1 vs 8 di perempat final, 2 vs 7, dst).
In practice
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 adalah lock opsional yang memaksa player konfirmasi kehadiran sebelum launch. Berguna untuk event terjadwal di mana kamu mau hindari no-show di round 1.
Check-in workflow
- Host klik Open check-in di halaman turnamen (hanya saat draft/registration).
- Player yang terdaftar lihat tombol Check me in; klik flip status mereka dari registered ke checked_in.
- Saat host klik Start, player yang masih registered (belum check in) auto-drop dari bracket.
- Host juga bisa Close check-in kapan aja untuk mematikannya lagi tanpa start.
In practice
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.
Siap launch? Klik "Start tournament" (tombol ijo, host doang). Terus engine-nya:
What happens at start
- Lock registrasi, nggak ada yang bisa join lagi.
- Assign seed final (ngehormatin reorder manual yang udah lo lakuin).
- Generate bracket round 1 sesuai format yang lo pilih.
- Auto-advance bye apa pun (misalnya buat jumlah peserta non-power-of-2).
Turnamen pindah ke status "ongoing", nggak ada sign-up lagi. Player dapet lawan pertama mereka di feed notifikasi.
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.
Setiap match ngikutin lifecycle yang jelas. Berikut status-status yang bakal lo lihat di bracket:
The 6 match states
| State | Meaning |
|---|---|
pending | Dibuat, nunggu kedua player diketahui. |
ongoing | Kedua player udah konfirmasi, match jalan di Showdown. |
finished | Pemenang tercatat, bracket lanjut. |
disputed | Player nge-flag match (atau deadline expired). Host harus resolve. |
forfeited | Player nyerah (self-forfeit) atau di-DQ host. Pemenang tercatat + lanjut. |
bye | Nggak ada lawan, player otomatis lanjut. Sering kejadian di bracket non-power-of-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.
Ini killer feature di sisi Pokémon, kamu nggak pilih winner manual. Begitu kedua player diketahui:
Auto-report flow
- Main match di Pokémon Showdown seperti biasa.
- Di akhir, klik Save replay di Showdown, kamu dapat URL replay.
- Buka match room di Pokékipe (klik match di bracket) dan paste URL-nya di box Report result.
- Kami fetch replay-nya, verifikasi kedua player cocok dengan pseudo yang diharapkan dan format-nya cocok, ekstrak winner dari log Showdown, dan close match-nya. Bracket maju otomatis.
Kalau kedua player bukan yang kami harapkan (salah replay, pseudo ketuker) atau format-nya nggak cocok, report ditolak dengan pesan error yang jelas. Dalam kasus itu, ulang match-nya atau fallback ke "Host resolve" kalau insidennya nggak bisa di-fix.
In practice
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
Kalau match diblok (lawan no-show, dugaan cheating, masalah server, gak sepakat soal hasil), player atau organizer bisa dispute. Match pindah ke status `disputed` dengan reason teks bebas. Kemudian di-freeze sampai organizer arbitrase via "Host resolve".
Forfeits
Pakai ini kalau ada yang harus drop out atau gak muncul. Dua varian:
- Player forfeit: cuma bisa nyatakan lawannya sebagai winner. Cocok untuk self-withdrawal.
- Host forfeit: pilih salah satu player sebagai winner. Cocok untuk DQ (pelanggaran aturan, harassment, dll.).
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.
Setelah dispute, atau cukup saat auto-report gak tersedia, cuma organizer yang bisa close match. Klik "Host resolve" di match room, pilih winner dari dua player, selesai.
Resolusi di-log di audit dengan user_id, timestamp, dan winner yang dipilih. Final: gak ada undo (by design, arbitrase host bersifat sovereign).
Format rule
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
Kalau turnamen punya timer yang dikonfigurasi, setiap match yang jadi playable dapat deadline = now + timer. Badge countdown muncul di match di bracket dan di match room.
Saat deadline lewat, match auto-flag jadi disputed dengan reason `deadline_exceeded`. Organizer kemudian harus turun tangan, perpanjang via resolusi baru, pilih winner, atau cancel.
Tournament chat
Setiap match punya chat room sendiri, visible hanya untuk dua player dan organizer. Pakai untuk koordinasi waktu, share URL room Showdown, report masalah teknis.
Pesan muncul real time via server-sent event, gak perlu refresh. Riwayat disimpan setelah match berakhir sampai 30 hari, untuk referensi 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).
Buat bracket round-robin dan swiss, panel "Standings" nunjukin posisi tiap player secara real-time. Kolom-kolomnya:
Standings columns
- Wins, match yang dimenangin (termasuk bye dan forfeit yang diterima).
- Losses, match yang kalah (termasuk self-forfeit dan DQ).
- Played, total match yang udah closed (nggak termasuk bye).
- Pending, match yang masih nunggu di round ini.
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.
Bracket double-elim berakhir dengan grand final antara juara upper bracket (UB) dan juara lower bracket (LB). UB datang dengan 0 loss, LB dengan 1. Itu kenapa sistem punya mekanik reset.
Kalau juara UB menang grand final → turnamen selesai (tetap 0 loss). Kalau juara LB menang → match bracket reset otomatis dibuat. Kedua player sekarang sama-sama 1 loss. Winner sejati round kedua ini ambil turnamen.
Worth knowing
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
Selama turnamen masih draft atau registration, organizer bisa klik "Edit" di halaman detail untuk adjust name, slug, description, visibility, bracket, cap, tanggal, dan timer. Format Pokémon sengaja gak bisa diedit setelah pembuatan, mengubahnya akan invalidate cek auto-report.
Format rule
Audit trail
Setiap aksi organizer yang sensitif (start, resolve, forfeit, cancel, edit) di-log di tab "Audit". Visible hanya untuk organizer. Berisi tipe aksi, author, timestamp, dan detail, berguna saat player ajukan claim atau untuk post-mortem insiden.
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.