Skip to content
Strategy, host workflow14 min bacaan
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

  • Name, Apa yang player nampak pada hub dan page detail. 3–80 aksara, apa saja boleh.
  • URL slug, Bahagian path selepas /tournaments/, huruf kecil, digit, hyphen. Auto-suggest dari name tapi boleh diedit. Mesti unik.
  • Format, Gen 9 OU, VGC 2026 Reg H, Gen 8 Ubers… Tetap masa creation; tak boleh ditukar kemudian.
  • Visibility, Public (tersenarai pada hub, sesiapa boleh join) atau Private (invite-only via kod yang dijana).
  • Bracket type, Single-elim, double-elim, round-robin atau Swiss. Lihat seksyen seterusnya untuk tradeoff.
  • Max players (optional), Soft cap pada registration. Biarkan kosong untuk tiada cap. Double-elim perlu sekurang-kurangnya 4 player.
  • Match timer (optional), Minit yang dibenarkan per match sebaik kedua-dua player diketahui. Kalau deadline lepas, match auto-disputed dan host step in.
  • Description (optional), Teks free-form untuk rules, jadual, team clause, prize pool. Dipaparkan dengan jelas di page tournament.

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 diberikan auto mengikut urutan pendaftaran (FIFO) pada masa /start.

Sebelum lancar, anda boleh susun semula secara manual melalui "Reseed" di halaman kejohanan. Berguna untuk meletak top seed di sisi bertentangan bracket (corak klasik: 1 vs 8 di suku akhir, 2 vs 7, dsb.).

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 adalah lock optional yang force player confirm kehadiran sebelum launch. Berguna untuk event berjadual di mana anda nak elak no-show dalam round 1.

Check-in workflow

  1. Host klik Open check-in di page tournament (hanya semasa draft/registration).
  2. Player yang dah register nampak butang Check me in; klik flip status mereka dari registered ke checked_in.
  3. Bila host klik Start, mana-mana player yang masih registered (tak check in) auto-drop dari bracket.
  4. Host juga boleh Close check-in bila-bila masa untuk disable semula tanpa start.

In practice

Check-in off by default. Kalau anda tak buka, semua registrant automatik dimasukkan masa 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.

Sedia untuk lancar? Klik "Start tournament" (butang hijau, hos sahaja). Enjin kemudian:

What happens at start

  • Kunci pendaftaran, tiada orang lain boleh sertai.
  • Berikan seed akhir (hormati apa-apa susun semula manual yang anda buat).
  • Jana bracket pusingan 1 mengikut format pilihan anda.
  • Auto-maju mana-mana bye (cth. untuk bilangan peserta bukan kuasa-2).

Kejohanan beralih ke status "ongoing", tiada lagi pendaftaran. Pemain dapat lawan pertama dalam suapan notifikasi mereka.

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 perlawanan ikut kitaran hidup yang jelas. Ini status yang anda mungkin nampak pada bracket:

The 6 match states

StateMeaning
pendingDicipta, menunggu kedua-dua pemain dikenal pasti.
ongoingKedua-dua pemain disahkan, perlawanan sedang berlangsung di Showdown.
finishedPemenang direkod, bracket maju.
disputedSeorang pemain bendera perlawanan (atau tarikh akhir tamat). Hos mesti selesaikan.
forfeitedSeorang pemain mengalah (forfeit sendiri) atau di-DQ oleh hos. Pemenang direkod + maju.
byeTiada lawan, pemain auto-maju. Biasa dalam bracket bukan kuasa-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, anda tak pilih winner secara manual. Sebaik kedua-dua player diketahui:

Auto-report flow

  1. Main match dalam Pokémon Showdown macam biasa.
  2. Di hujung, klik Save replay dalam Showdown, anda dapat replay URL.
  3. Buka match room dalam Pokékipe (klik match dalam bracket) dan paste URL dalam kotak Report result.
  4. Kami fetch replay, verify kedua-dua player padan dengan pseudo yang dijangka dan format padan, extract winner dari Showdown log, dan tutup match. Bracket advance automatik.

Kalau dua player tu bukan yang kami jangka (replay salah, pseudo bercampur) atau format tak padan, report ditolak dengan mesej error yang jelas. Dalam kes tu, main semula match atau fall back ke "Host resolve" kalau insiden tak boleh dibetulkan.

In practice

Mana-mana player, atau organizer, boleh submit report. Yang valid dulu menang, double submission idempotent.

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 (opponent no-show, suspek cheating, isu server, tak setuju pada hasil), player atau organizer boleh dispute. Match bergerak ke status `disputed` dengan sebab free-text. Ia kemudian dibekukan sampai organizer arbitrate via "Host resolve".

Forfeits

Guna ini bila ada orang kena drop out atau tak muncul. Dua variant:

  • Player forfeit: mereka hanya boleh declare opponent sebagai winner. Bagus untuk self-withdrawal.
  • Host forfeit: pilih mana-mana player sebagai winner. Bagus untuk DQ (rule violation, harassment, dsb.).

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.

Selepas dispute, atau sekadar bila auto-report tak tersedia, hanya organizer boleh tutup match. Klik "Host resolve" dalam match room, pilih winner dari dua player, dan siap.

Resolution di-log dalam audit dengan user_id anda, timestamp dan winner yang dipilih. Ia final: tiada undo (by design, arbitrase host sovereign).

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

Kalau tournament ada timer yang dikonfigur, setiap match yang jadi boleh dimain dapat deadline = now + timer. Badge countdown muncul pada match dalam bracket dan dalam match room.

Bila deadline expired, match auto-flagged sebagai disputed dengan sebab `deadline_exceeded`. Organizer kemudian kena step in, extend via resolution baru, pilih winner, atau cancel.

Tournament chat

Setiap match ada chat room sendiri, visible hanya kepada dua player dan organizer. Guna untuk coordinate timing, share URL Showdown room, report masalah teknikal.

Mesej muncul real-time via server-sent events, tak perlu refresh. Sejarah disimpan selepas match tamat sampai 30 hari, untuk rujukan 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).

Untuk bracket round-robin dan swiss, panel "Kedudukan" tunjuk kedudukan setiap pemain masa nyata. Lajurnya:

Standings columns

  • Menang, perlawanan dimenangi (termasuk bye dan forfeit diterima).
  • Kalah, perlawanan dikalahkan (termasuk forfeit sendiri dan DQ).
  • Dimain, jumlah perlawanan ditutup (kecuali bye).
  • Tertunggak, perlawanan masih di hadapan anda pusingan 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 tamat dengan grand final antara champion upper bracket (UB) dan champion lower bracket (LB). UB sampai dengan 0 kalah, LB dengan 1. Sebab tu sistem ada mekanik reset.

Kalau UB champion menang grand final → tournament tamat (masih 0 kalah). Kalau LB champion menang → match bracket reset auto-create. Kedua-dua player sekarang masing-masing pada 1 kalah. Winner sebenar round kedua ni ambil tournament.

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

Sementara tournament dalam draft atau registration, organizer boleh klik "Edit" pada page detail untuk adjust name, slug, description, visibility, bracket, cap, date, dan timer. Format Pokémon sengaja tak boleh diedit selepas creation, ubah dia akan invalidate check auto-report.

Format rule

Cancel tersedia bila-bila masa kecuali selepas tournament tamat. Flip status secara irreversible kepada `cancelled`. Match berjalan diinterrupt, sejarah disimpan untuk rujukan, dan peserta dinotify.

Audit trail

Setiap aksi organizer yang sensitif (start, resolve, forfeit, cancel, edit) di-log dalam tab "Audit". Visible kepada organizer sahaja. Mengandungi jenis aksi, author, timestamp dan detail, berguna bila player file 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.